MultiAgentDecisionProcess
DecPOMDP Class Reference

DecPOMDP is a simple implementation of DecPOMDPInterface. More...

#include <DecPOMDP.h>

Inheritance diagram for DecPOMDP:
[legend]

Public Member Functions

 DecPOMDP ()
 Default constructor. sets RewardType to REWARD and discount to 1.0. More...
 
double GetDiscount () const
 Returns the discount parameter. More...
 
double GetDiscountForAgent (Index agentI) const
 Returns the discount parameter. More...
 
reward_t GetRewardType () const
 Returns the reward type. More...
 
reward_t GetRewardTypeForAgent (Index agentI) const
 Returns the reward type. More...
 
void SetDiscount (double d)
 Sets the discount parameter to d. More...
 
void SetDiscountForAgent (Index agentI, double d)
 Functions needed for POSGInterface: More...
 
void SetRewardType (reward_t r)
 Sets the reward type to reward_t r. More...
 
void SetRewardTypeForAgent (Index agentI, reward_t r)
 Sets the reward type to reward_t r. More...
 
std::string SoftPrint () const
 SoftPrints some information on the DecPOMDP. More...
 
- Public Member Functions inherited from DecPOMDPInterface
virtual DecPOMDPInterfaceClone () const =0
 Returns a pointer to a copy of this class. More...
 
virtual double GetReward (State *s, JointAction *ja) const =0
 Function that returns the reward for a state and joint action. More...
 
virtual void SetReward (State *s, JointAction *ja, double r)=0
 Function that sets the reward for a state and joint action. More...
 
virtual ~DecPOMDPInterface ()
 Virtual destructor. More...
 
- Public Member Functions inherited from POSGInterface
virtual double GetRewardForAgent (Index agentI, State *s, JointAction *ja) const =0
 Function that returns the reward for a state and joint action. 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 ~POSGInterface ()
 Virtual 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...
 

Private Attributes

double _m_discount
 The discount parameter. More...
 
reward_t _m_rewardType
 Do the agents get rewards or costs? More...
 

Detailed Description

DecPOMDP is a simple implementation of DecPOMDPInterface.

It defines a couple of functions that relate to the (types of) rewards and discount factor.

Conceptually an MultiAgentDecisionProcess that implements this interface, is a Dec-POMDP: the system is cooperative and there is only 1 reward function.

Constructor & Destructor Documentation

DecPOMDP::DecPOMDP ( )

Default constructor. sets RewardType to REWARD and discount to 1.0.

References Globals::REWARD.

Member Function Documentation

double DecPOMDP::GetDiscount ( ) const
inlinevirtual

Returns the discount parameter.

Implements DecPOMDPInterface.

References _m_discount.

Referenced by FactoredDecPOMDPDiscrete::ExportSpuddFile(), and GetDiscountForAgent().

double DecPOMDP::GetDiscountForAgent ( Index  agentI) const
inlinevirtual

Returns the discount parameter.

Implements POSGInterface.

References GetDiscount().

reward_t DecPOMDP::GetRewardType ( ) const
inlinevirtual

Returns the reward type.

Implements DecPOMDPInterface.

References _m_rewardType.

Referenced by GetRewardTypeForAgent().

reward_t DecPOMDP::GetRewardTypeForAgent ( Index  agentI) const
inlinevirtual

Returns the reward type.

Implements POSGInterface.

References GetRewardType().

void DecPOMDP::SetDiscountForAgent ( Index  agentI,
double  d 
)
inlinevirtual

Functions needed for POSGInterface:

Implements POSGInterface.

References SetDiscount().

void DecPOMDP::SetRewardTypeForAgent ( Index  agentI,
reward_t  r 
)
inlinevirtual

Sets the reward type to reward_t r.

Implements POSGInterface.

References SetRewardType().

string DecPOMDP::SoftPrint ( ) const

Member Data Documentation

double DecPOMDP::_m_discount
private

The discount parameter.

When agents have different interests (the POSG setting), they may also have different discount factors. For a Dec-POMDP, however, we have one global discount factor (which typically is 1.0 in the finite horizon case).

Referenced by GetDiscount().

reward_t DecPOMDP::_m_rewardType
private

Do the agents get rewards or costs?

Referenced by GetRewardType().