MultiAgentDecisionProcess
Release 0.2.1
|
JointPolicy is a class that represents a joint policy. More...
#include <JointPolicy.h>
Public Member Functions | |
virtual JointPolicy * | Clone () const =0 |
Returns a pointer to a copy of this class. | |
size_t | GetDepth () const |
Returns the depth of the joint policy. | |
size_t | GetNrAgents () const |
Returns the number of agents for which the joint policy is defined. | |
JointPolicy (size_t nrAg) | |
Constructor, initializes the depth to the maximum horizon. | |
JointPolicy (const JointPolicy &o) | |
copy constructor: | |
virtual JointPolicy & | operator= (const JointPolicy &o) |
copy assignment operator | |
virtual void | Print () const |
Prints a description of a joint policy to cout. | |
virtual void | SetDepth (size_t d) |
Sets the depth of the joint policy. | |
virtual std::string | SoftPrint () const =0 |
Prints a description of a joint policy to a string. | |
virtual | ~JointPolicy () |
Destructor. |
Protected Attributes | |
size_t | _m_nrAgents |
some other numbers we cache: |
Private Attributes | |
size_t | _m_depth |
The depth of this joint policy. |
JointPolicy is a class that represents a joint policy.
It contains the notion of the depth of a policy: a positive number that specifies for how many time steps this policy is specified. I.e., if depth < horizon, the object represents a partially specified policy (specified for time steps 0,...,depth-1)
Definition at line 42 of file JointPolicy.h.
|
inline |
Constructor, initializes the depth to the maximum horizon.
Definition at line 65 of file JointPolicy.h.
|
inline |
copy constructor:
Definition at line 70 of file JointPolicy.h.
|
inlinevirtual |
Destructor.
Definition at line 92 of file JointPolicy.h.
|
pure virtual |
Returns a pointer to a copy of this class.
Implemented in JointPolicyDiscrete, and JointPolicyDiscretePure.
|
inline |
Returns the depth of the joint policy.
Definition at line 83 of file JointPolicy.h.
References _m_depth.
Referenced by GMAA_MAAstar::ConstructAndValuateNextPolicies(), GMAA_kGMAA::ConstructAndValuateNextPolicies(), GeneralizedMAAStarPlannerForDecPOMDPDiscrete::ConstructExtendedJointPolicy(), BayesianGameForDecPOMDPStage::ConstructExtendedPolicy(), JPPVIndexValuePair::JPPVIndexValuePair(), PartialJPPVIndexValuePair::PartialJPPVIndexValuePair(), GeneralizedMAAStarPlanner::Plan(), PartialJPDPValuePair::SoftPrintBrief(), and JPPVValuePair::SoftPrintBrief().
|
inline |
Returns the number of agents for which the joint policy is defined.
Definition at line 88 of file JointPolicy.h.
References _m_nrAgents.
|
inlinevirtual |
copy assignment operator
Definition at line 74 of file JointPolicy.h.
References _m_depth, and _m_nrAgents.
|
inlinevirtual |
Prints a description of a joint policy to cout.
Definition at line 100 of file JointPolicy.h.
References SoftPrint().
Referenced by ValueFunctionDecPOMDPDiscrete::CalculateV0RecursivelyCached(), ValueFunctionDecPOMDPDiscrete::CalculateV0RecursivelyNotCached(), JESPExhaustivePlanner::ExhaustiveBestResponse(), JESPExhaustivePlanner::Plan(), JESPDynamicProgrammingPlanner::Plan(), GeneralizedMAAStarPlanner::Plan(), and SimulationDecPOMDPDiscrete::RunSimulations().
|
inlinevirtual |
Sets the depth of the joint policy.
Definition at line 85 of file JointPolicy.h.
References _m_depth.
Referenced by GeneralizedMAAStarPlannerForDecPOMDPDiscrete::ConstructExtendedJointPolicy(), and BayesianGameForDecPOMDPStage::ConstructExtendedPolicy().
|
pure virtual |
Prints a description of a joint policy to a string.
Implemented in JointPolicyDiscretePure.
Referenced by Print().
|
private |
The depth of this joint policy.
The depth of the policy is the number of stages for which it specifies actions. It ranges from:
0 (the empty policy),
1 (a policy specified only for ts=0),
: MAXHORIZON (a policy specified for all stages, the default value).
Definition at line 55 of file JointPolicy.h.
Referenced by GetDepth(), operator=(), and SetDepth().
|
protected |
some other numbers we cache:
Definition at line 59 of file JointPolicy.h.
Referenced by GetNrAgents(), JointPolicyDiscrete::JointPolicyDiscrete(), operator=(), and JointPolicyDiscrete::SampleJointActionVector().