aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
gum::LazyDecider Class Reference

Class to make decision randomly. More...

#include <agrum/FMDP/SDyna/lazyDecider.h>

Inheritance diagram for gum::LazyDecider:
Collaboration diagram for gum::LazyDecider:

Public Member Functions

Constructor & destructor.
 LazyDecider ()
 Constructor.
 ~LazyDecider ()
 Destructor.
Incremental methods
void checkState (const Instantiation &newState, Idx actionId)
Initialization
virtual void initialize (const FMDP< double > *fmdp)
 Initializes the learner.

Incremental methods

void setOptimalStrategy (MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > *optPol)
virtual ActionSet stateOptimalPolicy (const Instantiation &curState)
const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_ {nullptr}
ActionSet allActions_

Detailed Description

Class to make decision randomly.

Does nothing more than the interface for DecisionStrategy does

Definition at line 70 of file lazyDecider.h.

Constructor & Destructor Documentation

◆ LazyDecider()

gum::LazyDecider::LazyDecider ( )
inline

Constructor.

Definition at line 80 of file lazyDecider.h.

80{}

◆ ~LazyDecider()

gum::LazyDecider::~LazyDecider ( )
inline

Destructor.

Definition at line 85 of file lazyDecider.h.

85{}

Member Function Documentation

◆ checkState()

void gum::LazyDecider::checkState ( const Instantiation & newState,
Idx actionId )
inlinevirtual

Implements gum::IDecisionStrategy.

Definition at line 96 of file lazyDecider.h.

96{}

◆ initialize()

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

Initializes the learner.

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

Definition at line 93 of file IDecisionStrategy.h.

93 {
94 optPol_ = nullptr;
95 if (allActions_.size() == 0)
96 for (auto actionIter = fmdp->beginActions(); actionIter != fmdp->endActions(); ++actionIter)
97 allActions_ += *actionIter;
98 }
const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * optPol_

References allActions_, gum::FMDP< GUM_SCALAR >::beginActions(), gum::FMDP< GUM_SCALAR >::endActions(), and optPol_.

Referenced by gum::AdaptiveRMaxPlaner::initialize(), and gum::E_GreedyDecider::initialize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setOptimalStrategy()

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

Definition at line 111 of file IDecisionStrategy.h.

111 {
112 optPol_ = optPol;
113 }

References optPol_.

◆ stateOptimalPolicy()

virtual ActionSet gum::IDecisionStrategy::stateOptimalPolicy ( const Instantiation & curState)
inlinevirtualinherited

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

Definition at line 115 of file IDecisionStrategy.h.

115 {
116 return (optPol_ && optPol_->realSize() != 0) ? optPol_->get(curState) : allActions_;
117 }

References allActions_, and optPol_.

Referenced by gum::E_GreedyDecider::stateOptimalPolicy().

Here is the caller graph for this function:

Member Data Documentation

◆ allActions_

ActionSet gum::IDecisionStrategy::allActions_
protectedinherited

◆ optPol_

const MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy >* gum::IDecisionStrategy::optPol_ {nullptr}
protectedinherited

Definition at line 121 of file IDecisionStrategy.h.

121{nullptr};

Referenced by initialize(), setOptimalStrategy(), and stateOptimalPolicy().


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