33 #define DEBUG_MADP_DSTATES 0
40 ,_m_initialStateDistribution(0)
48 ,_m_initialStateDistribution(0)
65 throw(
E(
"MADPComponentDiscreteStates::SetInitialized problem has 0 states"));
73 for(vector<double>::const_iterator it=
95 throw(
E(
"MADPComponentDiscreteStates::SetInitialized initial state distribution is not a valid probability distribution"));
127 for(
Index i=0; i < nrS; i++)
140 cout <<
" MADPComponentDiscreteStates::SetUniformISD - ERROR can't"<<
141 "set uniform init. state distr., when not initialized! (don't know how many state yet...)";
158 throw E(
"MADPComponentDiscreteStates::SetISD(StateDistribution* p) dynamic cast failed");
165 throw E(
"MADPComponentDiscreteStates::SetISD - ERROR: nrStates don't match!");
180 throw E(
"MADPComponentDiscreteStates::GetStateIndexByName - not initialized!");
182 vector<StateDiscrete>::const_iterator it =
_m_stateVec.begin();
183 vector<StateDiscrete>::const_iterator last =
_m_stateVec.end();
186 string s2 = (*it).GetName();
189 return( (*it).GetIndex() );
195 ss <<
"GetStateIndexByName - state \"" << s <<
"\" not found." << endl;
207 ss <<
"MADPComponentDiscreteStates::GetInitialStateProbability("<<
208 sI<<
") - Error: not initialized. " <<endl;
212 if(sI < _m_initialStateDistribution->size() )
219 ss <<
"MultiAgentDecisionProcess::GetInitialStateProbability - ERROR GetInitialStateProbability: index out of bounds";
229 ss <<
"MADPComponentDiscreteStates::PrintInitialStateDistribution("<<
230 ") - Error: not initialized. " <<endl;
239 vector<StateDiscrete>::const_iterator it =
_m_stateVec.begin();
240 vector<StateDiscrete>::const_iterator last =
_m_stateVec.end();
243 ss << (*it).SoftPrint();
255 ss2 <<
"MADPComponentDiscreteStates::SoftPrint("<<
256 ") - Error: not initialized. " <<endl;
261 ss <<
"Initial state distr.: ";
272 ss <<
"MADPComponentDiscreteStates::SampleInitialState()" <<
273 " - Error: not initialized. " << endl;
277 double randNr=rand() / (RAND_MAX + 1.0);