51#ifndef GUM_ADAPTIVE_RMAX_PLANER_H
52#define GUM_ADAPTIVE_RMAX_PLANER_H
84 double discountFactor = 0.9,
85 double epsilon = 0.00001,
86 bool verbose =
true) {
98 double discountFactor = 0.9,
99 double epsilon = 0.00001,
100 bool verbose =
true) {
120 double discountFactor,
Headers of the Decision Strategy interface.
void checkState(const Instantiation &newState, Idx actionId)
HashTable< Idx, bool > _initializedTable_
const ILearningStrategy * _fmdpLearner_
HashTable< Idx, MultiDimFunctionGraph< double > * > _actionsBoolTable_
HashTable< Idx, StatesCounter * > _counterTable_
void makePlanning(Idx nbStep=1000000)
Performs a value iteration.
void _makeRMaxFunctionGraphs_()
virtual void initVFunction_()
Performs a single step of value iteration.
virtual void evalPolicy_()
Perform the required tasks to extract an optimal policy.
virtual MultiDimFunctionGraph< double > * valueIteration_()
Performs a single step of value iteration.
static AdaptiveRMaxPlaner * ReducedAndOrderedInstance(const ILearningStrategy *learner, double discountFactor=0.9, double epsilon=0.00001, bool verbose=true)
void initialize(const FMDP< double > *fmdp)
Initializes data structure needed for making the planning.
AdaptiveRMaxPlaner(IOperatorStrategy< double > *opi, double discountFactor, double epsilon, const ILearningStrategy *learner, bool verbose)
Default constructor.
~AdaptiveRMaxPlaner()
Default destructor.
static AdaptiveRMaxPlaner * TreeInstance(const ILearningStrategy *learner, double discountFactor=0.9, double epsilon=0.00001, bool verbose=true)
HashTable< Idx, MultiDimFunctionGraph< double > * > _actionsRMaxTable_
std::pair< NodeId, NodeId > _visitLearner_(const IVisitableGraphLearner *, NodeId currentNodeId, MultiDimFunctionGraph< double > *, MultiDimFunctionGraph< double > *)
The class for generic Hash Tables.
<agrum/FMDP/SDyna/IDecisionStrategy.h>
<agrum/FMDP/SDyna/ILearningStrategy.h>
<agrum/FMDP/SDyna/IVisitableGraphLearner.h>
Class for assigning/browsing values to tuples of discrete variables.
<agrum/FMDP/planning/mddOperatorStrategy.h>
StructuredPlaner(IOperatorStrategy< double > *opi, double discountFactor, double epsilon, bool verbose)
INLINE const FMDP< double > * fmdp()
<agrum/FMDP/planning/treeOperatorStrategy.h>
Headers of the FMDPLearner class.
Size Idx
Type for indexes.
Size NodeId
Type for node ids.
gum is the global namespace for all aGrUM entities
Headers of the States Counter class.
Headers of the StructuredPlaner planer class.