MultiAgentDecisionProcess
POSGDiscreteInterface Class Referenceabstract

POSGDiscreteInterface is the interface for a discrete POSG model: it defines the set/get reward functions. More...

#include <POSGDiscreteInterface.h>

Inheritance diagram for POSGDiscreteInterface:
[legend]

Public Member Functions

virtual POSGDiscreteInterfaceClone () const =0
 Returns a copy of this class. More...
 
virtual void CreateNewRewardModelForAgent (Index agentI)=0
 Creates a new reward model mapping. More...
 
virtual double GetRewardForAgent (Index agentI, Index sI, Index jaI) const =0
 Return the reward for state, joint action indices. More...
 
virtual void SetRewardForAgent (Index agentI, Index sI, Index jaI, double r)=0
 Set the reward for state, joint action indices. More...
 
virtual void SetRewardForAgent (Index agentI, Index sI, Index jaI, Index sucSI, double r)=0
 Set the reward for state, joint action , suc. state indices. More...
 
virtual void SetRewardForAgent (Index agentI, Index sI, Index jaI, Index sucSI, Index joI, double r)=0
 Set the reward for state, joint action, suc.state, joint obs indices. More...
 
virtual ~POSGDiscreteInterface ()
 Destructor. More...
 
- Public Member Functions inherited from MultiAgentDecisionProcessDiscreteInterface
virtual const ActionGetAction (Index agentI, Index a) const =0
 Return a ref to the a-th action of agent agentI. More...
 
virtual bool GetEventObservability () const
 Whether observation models are P(o|s,a) or P(o|s,a,s'). More...
 
virtual double GetInitialStateProbability (Index sI) const =0
 
virtual StateDistributionGetISD () const =0
 Returns the complete initial state distribution. More...
 
virtual const JointActionGetJointAction (Index i) const =0
 Return a ref to the i-th joint action. More...
 
virtual const JointObservationGetJointObservation (Index i) const =0
 Return a ref to the i-th joint observation. More...
 
virtual const std::vector
< size_t > & 
GetNrActions () const =0
 Return the number of actions vector. More...
 
virtual size_t GetNrActions (Index AgentI) const =0
 Return the number of actions of agent agentI. More...
 
virtual size_t GetNrJointActions () const =0
 Return the number of joint actions. More...
 
virtual size_t GetNrJointActions (const Scope &agScope) const =0
 Get the number of joint actions the agents in agScope can form. More...
 
virtual size_t GetNrJointObservations () const =0
 Return the number of joint observations. More...
 
virtual const std::vector
< size_t > & 
GetNrObservations () const =0
 Return the number of observations vector. More...
 
virtual size_t GetNrObservations (Index AgentI) const =0
 Return the number of observations of agent agentI. More...
 
virtual size_t GetNrStates () const =0
 Return the number of states. More...
 
virtual const ObservationGetObservation (Index agentI, Index a) const =0
 Return a ref to the a-th observation of agent agentI. More...
 
virtual const
ObservationModelDiscrete
GetObservationModelDiscretePtr () const =0
 Returns a pointer to the underlying observation model. More...
 
virtual double GetObservationProbability (Index jaI, Index sucSI, Index joI) const =0
 Return the probability of joint observation joI: P(joI|jaI,sucSI). More...
 
virtual double GetObservationProbability (Index sI, Index jaI, Index sucSI, Index joI) const
 
virtual OGetGetOGet () const =0
 
virtual const StateGetState (Index i) const =0
 Returns a pointer to state i. More...
 
virtual TGetGetTGet () const =0
 
virtual const
TransitionModelDiscrete
GetTransitionModelDiscretePtr () const =0
 Returns a pointer to the underlying transition model. More...
 
virtual double GetTransitionProbability (Index sI, Index jaI, Index sucSI) const =0
 Return the probability of successor state sucSI: P(sucSI|sI,jaI). More...
 
virtual Index IndividualToJointActionIndices (const Index *AI_ar) const =0
 Returns the joint action index that corresponds to the array of specified individual action indices. More...
 
virtual Index IndividualToJointActionIndices (const std::vector< Index > &indivActionIndices) const =0
 Returns the joint action index that corresponds to the vector of specified individual action indices. More...
 
virtual Index IndividualToJointActionIndices (const std::vector< Index > &ja_e, const Scope &agSC) const =0
 indiv->joint for a restricted set (Scope) of agents More...
 
virtual Index IndividualToJointObservationIndices (const std::vector< Index > &indivObservationIndices) const =0
 Returns the joint observation index that corresponds to the vector of specified individual observation indices. More...
 
virtual Index IndividualToJointObservationIndices (const std::vector< Index > &jo_e, const Scope &agSC) const
 indiv->joint for a restricted set (Scope) of agents More...
 
virtual const std::vector
< Index > & 
JointToIndividualActionIndices (Index jaI) const =0
 Returns a vector of indices to indiv. More...
 
virtual std::vector< IndexJointToIndividualActionIndices (Index ja_e, const Scope &agSC) const =0
 joint->indiv for a restricted set (Scope) of agents More...
 
virtual const std::vector
< Index > & 
JointToIndividualObservationIndices (Index joI) const =0
 Returns a vector of indices to indiv. More...
 
virtual std::vector< IndexJointToIndividualObservationIndices (Index jo_e, const Scope &agSC) const
 joint->indiv for a restricted set (Scope) of agents More...
 
virtual Index JointToRestrictedJointActionIndex (Index jaI, const Scope &agSc_e) const =0
 Converts a global joint action index jaI to a restricted joint action index ja_e, for agents scope agSc_e Returns a vector of indices to indiv. More...
 
virtual Index JointToRestrictedJointObservationIndex (Index joI, const Scope &agSc_e) const
 Converts a global joint observation index joI to a restricted joint observation index jo_e, for agents scope agSc_e Returns a vector of indices to indiv. More...
 
virtual Index SampleInitialState () const =0
 Sample a state according to the initial state PDF. More...
 
virtual Index SampleJointObservation (Index jaI, Index sucI) const =0
 Sample an observation - needed for simulations. More...
 
virtual Index SampleJointObservation (Index sI, Index jaI, Index sucI) const
 
virtual Index SampleSuccessorState (Index sI, Index jaI) const =0
 Sample a successor state - needed by simulations. More...
 
virtual std::string SoftPrint () const =0
 Prints some information on the MultiAgentDecisionProcessDiscreteInterface. More...
 
virtual std::string SoftPrintState (Index sI) const =0
 
virtual ~MultiAgentDecisionProcessDiscreteInterface ()
 Destructor. More...
 
- Public Member Functions inherited from MultiAgentDecisionProcessInterface
virtual const ScopeGetAllAgentScope () const =0
 
virtual size_t GetNrAgents () const =0
 Return the number of agents. More...
 
virtual std::string GetUnixName () const =0
 Returns the base part of the problem filename. More...
 
virtual ~MultiAgentDecisionProcessInterface ()
 Destructor. More...
 
- Public Member Functions inherited from POSGInterface
virtual double GetDiscountForAgent (Index agentI) const =0
 Returns the discount parameter. More...
 
virtual double GetRewardForAgent (Index agentI, State *s, JointAction *ja) const =0
 Function that returns the reward for a state and joint action. More...
 
virtual reward_t GetRewardTypeForAgent (Index agentI) const =0
 Returns the reward type. More...
 
virtual void SetDiscountForAgent (Index agentI, double d)=0
 Sets the discount parameter to 0 < d <= 1. More...
 
virtual void SetRewardForAgent (Index agentI, State *s, JointAction *ja, double r)=0
 Function that sets the reward for an agent, state and joint action. More...
 
virtual void SetRewardTypeForAgent (Index agentI, reward_t r)=0
 Sets the reward type to reward_t r. More...
 
virtual ~POSGInterface ()
 Virtual destructor. More...
 

Detailed Description

POSGDiscreteInterface is the interface for a discrete POSG model: it defines the set/get reward functions.

POSGDiscreteInterface is an interface (i.e. pure abstract class) for a discrete POSG model. This means that there is a single reward function and that states, actions and observations are discrete.

Classes that implement this interface are, for instance, POSGDiscrete and TransitionObservationIndependentPOSGDiscrete.

Constructor & Destructor Documentation

virtual POSGDiscreteInterface::~POSGDiscreteInterface ( )
inlinevirtual

Destructor.

Member Function Documentation

virtual POSGDiscreteInterface* POSGDiscreteInterface::Clone ( ) const
pure virtual

Returns a copy of this class.

Implements MultiAgentDecisionProcessDiscreteInterface.

Implemented in POSGDiscrete.

virtual void POSGDiscreteInterface::CreateNewRewardModelForAgent ( Index  agentI)
pure virtual

Creates a new reward model mapping.

virtual double POSGDiscreteInterface::GetRewardForAgent ( Index  agentI,
Index  sI,
Index  jaI 
) const
pure virtual

Return the reward for state, joint action indices.

virtual void POSGDiscreteInterface::SetRewardForAgent ( Index  agentI,
Index  sI,
Index  jaI,
double  r 
)
pure virtual

Set the reward for state, joint action indices.

virtual void POSGDiscreteInterface::SetRewardForAgent ( Index  agentI,
Index  sI,
Index  jaI,
Index  sucSI,
double  r 
)
pure virtual

Set the reward for state, joint action , suc. state indices.

virtual void POSGDiscreteInterface::SetRewardForAgent ( Index  agentI,
Index  sI,
Index  jaI,
Index  sucSI,
Index  joI,
double  r 
)
pure virtual

Set the reward for state, joint action, suc.state, joint obs indices.