aGrUM  0.20.3
a C++ library for (probabilistic) graphical models
gum::IDecisionStrategy Class Referenceabstract

<agrum/FMDP/SDyna/IDecisionStrategy.h> More...

#include <IDecisionStrategy.h>

+ Inheritance diagram for gum::IDecisionStrategy:
+ Collaboration diagram for gum::IDecisionStrategy:

Public Member Functions

Constructor & destructor.
virtual ~IDecisionStrategy ()
 Destructor (virtual and empty since it's an interface) More...
 
Initialization
virtual void initialize (const FMDP< double > *fmdp)
 Initializes the learner. More...
 

Incremental methods

const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_
 
ActionSet allActions_
 
virtual void checkState (const Instantiation &newState, Idx actionId)=0
 
void setOptimalStrategy (const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > *optPol)
 
virtual ActionSet stateOptimalPolicy (const Instantiation &curState)
 

Detailed Description

<agrum/FMDP/SDyna/IDecisionStrategy.h>

Interface for manipulating decision center

Definition at line 51 of file IDecisionStrategy.h.

Constructor & Destructor Documentation

◆ ~IDecisionStrategy()

virtual gum::IDecisionStrategy::~IDecisionStrategy ( )
inlinevirtual

Destructor (virtual and empty since it's an interface)

Definition at line 60 of file IDecisionStrategy.h.

60 {}

Member Function Documentation

◆ checkState()

virtual void gum::IDecisionStrategy::checkState ( const Instantiation newState,
Idx  actionId 
)
pure virtual

◆ initialize()

virtual void gum::IDecisionStrategy::initialize ( const FMDP< double > *  fmdp)
inlinevirtual

Initializes the learner.

Reimplemented in gum::AdaptiveRMaxPlaner, and gum::E_GreedyDecider.

Definition at line 72 of file IDecisionStrategy.h.

72  {
73  optPol_ = nullptr;
74  if (allActions_.size() == 0)
75  for (auto actionIter = fmdp->beginActions(); actionIter != fmdp->endActions(); ++actionIter)
76  allActions_ += *actionIter;
77  }
Size size() const
Gives the size.
Definition: actionSet.h:205
SequenceIteratorSafe< Idx > beginActions() const
Returns an iterator reference to he beginning of the list of actions.
Definition: fmdp.h:136
const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_
SequenceIteratorSafe< Idx > endActions() const
Returns an iterator reference to the end of the list of actions.
Definition: fmdp.h:141

◆ setOptimalStrategy()

void gum::IDecisionStrategy::setOptimalStrategy ( const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > *  optPol)
inline

Definition at line 89 of file IDecisionStrategy.h.

89  {
90  optPol_ = const_cast< MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy >* >(optPol);
91  }
const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_

◆ stateOptimalPolicy()

virtual ActionSet gum::IDecisionStrategy::stateOptimalPolicy ( const Instantiation curState)
inlinevirtual

Reimplemented in gum::E_GreedyDecider, and gum::RandomDecider.

Definition at line 93 of file IDecisionStrategy.h.

93  {
94  return (optPol_ && optPol_->realSize() != 0) ? optPol_->get(curState) : allActions_;
95  }
const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_

Member Data Documentation

◆ allActions_

ActionSet gum::IDecisionStrategy::allActions_
protected

Definition at line 102 of file IDecisionStrategy.h.

◆ optPol_

const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy >* gum::IDecisionStrategy::optPol_
protected

Definition at line 99 of file IDecisionStrategy.h.


The documentation for this class was generated from the following file: