63 size_t depth = jpolPrevTs->
GetDepth();
87 const vector<size_t>& nrOHts = bg_ts->
GetNrTypes();
90 cout <<
"Constructed BG:"<<endl;
100 bool carry_over =
false;
105 cout <<
"starting on solution of BG for t="<<ts<<
" with nrJPols="
109 ss <<
"GMAA::NextExact_ts" << ts;
113 double maxLBv = -DBL_MAX;
115 double newPastReward = 0.0;
126 for(
Index jt = 0; jt < nrJT ; jt++)
133 f += jt_prob * jt_util;
141 double discT = pow(discount , (
double)(ts) );
142 double discounted_F = discT * f;
144 double v = pastReward_prevTs + discounted_F;
146 double discounted_r = discT * r;
149 cout <<
"v = pastReward_prevTs + g^t * f = "
151 << pastReward_prevTs<<
" + "
152 << discounted_F <<
" "
153 <<
"(g^t * f ="<<discT <<
" * " << f <<
")"
157 newPastReward = pastReward_prevTs + discounted_r;
167 jpolBG, nrOHts, firstOHtsI);
196 bestLBjpolBG = jpolBG;
202 cout <<
"GMAA_MAAstar::ConstructAndValuateNextPolicies"<<
203 " Last time step, found tight bound: "<<
204 "found value v="<<v<<
", parent (upperbound) value="<<
209 carry_over = ++jpolBG;
232 cout <<
"Solved BG for t="<<ts<<
". Max. expected value (including "
233 <<
"true expected reward up to this ts:"<<pastReward_prevTs<<
") is:"
244 poolOfNextPolicies,
bool are_LBs,
double bestLB)
252 while(!poolOfNextPolicies->
Empty())
253 poolOfNextPolicies->
Pop();