MultiAgentDecisionProcess
|
JointPolicyDiscretePure is represents a pure joint policy for a discrete MADP. More...
#include <JointPolicyDiscretePure.h>
Public Member Functions | |
virtual JointPolicyDiscretePure * | Clone () const =0 |
Returns a pointer to a copy of this class. More... | |
virtual Index | GetActionIndex (Index aI, Index domainI) const =0 |
Returns the action index for domainI for agent aI. More... | |
double | GetActionProb (Index agentI, Index domI, Index aI) const |
Returns the probability that the policy specifies action aI for domain index domI for agentI. More... | |
const Interface_ProblemToPolicyDiscretePure * | GetInterfacePTPDiscretePure () const |
Return pointer to the Interface_ProblemToPolicyDiscretePure. More... | |
boost::shared_ptr< const Interface_ProblemToPolicyDiscretePure > | GetInterfacePTPDiscretePureShared () const |
virtual Index | GetJointActionIndex (Index i) const =0 |
Returns the jaI taken by this policy for joint domain index johI. More... | |
virtual Index | GetJointActionIndex (LIndex i) const =0 |
Returns the jaI taken by this policy for joint domain index johI. More... | |
double | GetJointActionProb (Index i, Index ja) const |
Returns the probability that the policy specifies joint action a for domain index i. More... | |
double | GetJointActionProb (LIndex i, Index ja) const |
Returns the probability that the policy specifies joint action a for domain index i. More... | |
JointPolicyDiscretePure () | |
default Constructor - constructs empty policy More... | |
JointPolicyDiscretePure (const Interface_ProblemToPolicyDiscretePure *pu, PolicyGlobals::PolicyDomainCategory idc) | |
(default) Constructor More... | |
JointPolicyDiscretePure (const I_PtPDpure_constPtr &pu, PolicyGlobals::PolicyDomainCategory idc) | |
JointPolicyDiscretePure (const JointPolicyDiscretePure &a) | |
Copy constructor. More... | |
virtual JointPolicyDiscretePure & | operator= (const JointPolicyDiscretePure &o) |
Copy assignment operator. More... | |
virtual void | RandomInitialization ()=0 |
Randomly initialize the joint policy. More... | |
virtual void | RandomInitialization (Index agentI)=0 |
Randomly initialize the policy for agentI. More... | |
virtual void | SetAction (Index agentI, Index domainI, Index aI)=0 |
Sets the policy for agentI to domainI->aI. More... | |
void | SetInterfacePTPDiscretePure (Interface_ProblemToPolicyDiscretePure *pu) |
Sets the planning unit for this joint policy. More... | |
virtual std::string | SoftPrint () const =0 |
Prints a description of this JointPolicyPureVector to a string. More... | |
virtual std::string | SoftPrintBrief () const =0 |
Prints a brief description to a string. More... | |
virtual boost::shared_ptr < JointPolicyPureVector > | ToJointPolicyPureVector () const =0 |
virtual | ~JointPolicyDiscretePure () |
Destructor. More... | |
Public Member Functions inherited from JointPolicyDiscrete | |
virtual PolicyDiscrete * | GetIndividualPolicyDiscrete (Index agI) const =0 |
return pointer to individual policy of agent agI More... | |
const Interface_ProblemToPolicyDiscrete * | GetInterfacePTPDiscrete () const |
return a pointer to the referred Interface_ProblemToPolicyDiscrete. More... | |
boost::shared_ptr< const Interface_ProblemToPolicyDiscrete > | GetInterfacePTPDiscreteShared () const |
return a shared pointer to the referred Interface_ProblemToPolicyDiscrete. More... | |
size_t | GetNrDomainElements (Index agentI) const |
Returns the number of policy domain elements for agent agentI. More... | |
PolicyDomainCategory | GetPolicyDomainCategory () const |
returns the Category of the domain over which the indices of this policy are specified. More... | |
JointPolicyDiscrete () | |
default constructor creates an empty policy More... | |
JointPolicyDiscrete (const Interface_ProblemToPolicyDiscrete *pu, PolicyGlobals::PolicyDomainCategory idc) | |
(default) Constructor More... | |
JointPolicyDiscrete (const I_PtPD_constPtr &pu, PolicyGlobals::PolicyDomainCategory idc) | |
JointPolicyDiscrete (const JointPolicyDiscrete &a) | |
Copy constructor. More... | |
virtual JointPolicyDiscrete & | operator= (const JointPolicyDiscrete &o) |
Assignment operator. More... | |
Index | SampleJointAction (Index i) const |
Returns a sampled joint action. More... | |
Index | SampleJointAction (const std::vector< Index > &Is) const |
Returns a sampled joint action. More... | |
void | SampleJointActionVector (Index i, std::vector< Index > &jaVec) const |
Returns a sampled joint action. More... | |
void | SampleJointActionVector (const std::vector< Index > &Is, std::vector< Index > &jaVec) const |
Returns a sampled joint action. More... | |
void | SetInterfacePTPDiscrete (const Interface_ProblemToPolicyDiscrete *p) |
sets the pointer to the Interface_ProblemToPolicyDiscrete. More... | |
void | SetInterfacePTPDiscrete (I_PtPD_constPtr p) |
sets the shared pointer to the Interface_ProblemToPolicyDiscrete. More... | |
void | SetPolicyDomainCategory (PolicyDomainCategory idc) |
sets the category of the domain over which the indices of this policy are specified. More... | |
virtual | ~JointPolicyDiscrete () |
Destructor. More... | |
Public Member Functions inherited from JointPolicy | |
size_t | GetDepth () const |
Returns the depth of the joint policy. More... | |
size_t | GetNrAgents () const |
Returns the number of agents for which the joint policy is defined. More... | |
JointPolicy (size_t nrAg) | |
Constructor, initializes the depth to the maximum horizon. More... | |
JointPolicy (const JointPolicy &o) | |
copy constructor: More... | |
virtual bool | operator< (const JointPolicy &o) const =0 |
less-than operator. More... | |
virtual JointPolicy & | operator= (const JointPolicy &o) |
copy assignment operator More... | |
virtual void | Print () const |
Prints a description of a joint policy to cout. More... | |
virtual void | SetDepth (size_t d) |
Sets the depth of the joint policy. More... | |
virtual | ~JointPolicy () |
Destructor. More... | |
Additional Inherited Members | |
Protected Attributes inherited from JointPolicy | |
size_t | _m_nrAgents |
some other numbers we cache: More... | |
JointPolicyDiscretePure is represents a pure joint policy for a discrete MADP.
The number of pure joint policies as represented by this class is finite.
|
inline |
default Constructor - constructs empty policy
JointPolicyDiscretePure::JointPolicyDiscretePure | ( | const Interface_ProblemToPolicyDiscretePure * | pu, |
PolicyGlobals::PolicyDomainCategory | idc | ||
) |
(default) Constructor
JointPolicyDiscretePure::JointPolicyDiscretePure | ( | const I_PtPDpure_constPtr & | pu, |
PolicyGlobals::PolicyDomainCategory | idc | ||
) |
JointPolicyDiscretePure::JointPolicyDiscretePure | ( | const JointPolicyDiscretePure & | a | ) |
Copy constructor.
|
inlinevirtual |
Destructor.
|
pure virtual |
Returns a pointer to a copy of this class.
Implements JointPolicyDiscrete.
Implemented in JointPolicyPureVector, JointPolicyPureVectorForClusteredBG, PartialJointPolicyPureVector, and PartialJointPolicyDiscretePure.
Referenced by BayesianGameWithClusterInfo::ConstructExtendedBGWCI().
|
pure virtual |
Returns the action index for domainI for agent aI.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
Referenced by BayesianGameCollaborativeGraphical::ComputeValueJPol(), GeneralizedMAAStarPlannerForDecPOMDPDiscrete::ConstructExtendedJointPolicy(), GeneralizedMAAStarPlannerForFactoredDecPOMDPDiscrete::ConstructExtendedJointPolicy(), BayesianGameForDecPOMDPStage::ConstructExtendedPolicy(), GetActionProb(), JointPolicyPureVectorForClusteredBG::RecursivelyFillPolicyForAgent(), JointPolicyPureVectorForClusteredBG::RecursivelyPrintPolicyForAgent(), JointPolicyPureVectorForClusteredBG::StartRecursiveConstructionPerAgent(), JointPolicyPureVectorForClusteredBG::StartRecursiveSoftPrintPerAgent(), and FSAOHDist_NECOF::Update().
Returns the probability that the policy specifies action aI for domain index domI for agentI.
Required by JointPolicyDiscrete.
Implements JointPolicyDiscrete.
References GetActionIndex().
|
inline |
Return pointer to the Interface_ProblemToPolicyDiscretePure.
References JointPolicyDiscrete::GetInterfacePTPDiscrete().
Referenced by JointPolicyPureVectorForClusteredBG::SoftPrint(), and JointPolicyPureVectorForClusteredBG::SoftPrintBrief().
|
inline |
Returns the jaI taken by this policy for joint domain index johI.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
Referenced by ValueFunctionDecPOMDPDiscrete::CalculateVsjohRecursively(), BayesianGameIdenticalPayoffInterface::ComputeValueJPol(), BayesianGameIdenticalPayoff::ComputeValueJPol(), and GetJointActionProb().
Returns the jaI taken by this policy for joint domain index johI.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
Returns the probability that the policy specifies joint action a for domain index i.
Required by JointPolicyDiscrete.
Implements JointPolicyDiscrete.
References GetJointActionIndex().
Returns the probability that the policy specifies joint action a for domain index i.
Required by JointPolicyDiscrete.
Implements JointPolicyDiscrete.
References GetJointActionIndex().
|
virtual |
Copy assignment operator.
Reimplemented in JointPolicyPureVector, and JointPolicyPureVectorForClusteredBG.
References JointPolicyDiscrete::operator=().
Referenced by PartialJointPolicyDiscretePure::operator=(), and JointPolicyPureVector::operator=().
|
pure virtual |
Randomly initialize the joint policy.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
|
pure virtual |
Randomly initialize the policy for agentI.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
|
pure virtual |
Sets the policy for agentI to domainI->aI.
Implemented in JointPolicyPureVector, and PartialJointPolicyPureVector.
Referenced by BayesianGameForDecPOMDPStage::ConstructExtendedPolicy().
|
inline |
Sets the planning unit for this joint policy.
References JointPolicyDiscrete::SetInterfacePTPDiscrete().
|
pure virtual |
Prints a description of this JointPolicyPureVector to a string.
Implements JointPolicy.
Implemented in JointPolicyPureVector, JointPolicyPureVectorForClusteredBG, and PartialJointPolicyPureVector.
Referenced by JointPolicyPureVectorForClusteredBG::StartRecursiveConstructionPerAgent(), and FSAOHDist_NECOF::Update().
|
pure virtual |
Prints a brief description to a string.
Implemented in JointPolicyPureVector, JointPolicyPureVectorForClusteredBG, and PartialJointPolicyPureVector.
|
pure virtual |
Implemented in JointPolicyPureVector, JointPolicyPureVectorForClusteredBG, and PartialJointPolicyPureVector.