![]() |
aGrUM 3.1.1
a C++ library for (probabilistic) graphical models
|
<agrum/FMDP/planning/treeOperatorStrategy.h> More...
#include <treeOperatorStrategy.h>
Public Member Functions | |
Constructor & destructor. | |
| TreeOperatorStrategy () | |
| Default constructor. | |
| ~TreeOperatorStrategy () override | |
| Default destructor. | |
| MultiDimFunctionGraph< GUM_ELEMENT, ExactTerminalNodePolicy > * | getFunctionInstance () override |
| MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > * | getArgMaxFunctionInstance () override |
| MultiDimFunctionGraph< ActionSet, SetTerminalNodePolicy > * | getAggregatorInstance () override |
Protected Member Functions | |
| void | deleteFunctionGraph_ (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del) |
| void | deleteFunctionGraph_ (const MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > *f1, const MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > *f2, Idx del) |
Graph Function Operations Methods | |
| MultiDimFunctionGraph< GUM_ELEMENT > * | regress (const MultiDimFunctionGraph< GUM_ELEMENT > *Vold, Idx actionId, const FMDP< GUM_ELEMENT > *fmdp, const gum::VariableSet &elVarSeq) override |
| Computes Qaction for given actionid. | |
| MultiDimFunctionGraph< GUM_ELEMENT > * | maximize (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del=3) override |
| MultiDimFunctionGraph< GUM_ELEMENT > * | minimize (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del=3) override |
| MultiDimFunctionGraph< GUM_ELEMENT > * | multiply (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del=3) override |
| MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > * | argmaximize (const MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > *f1, const MultiDimFunctionGraph< ArgMaxSet< GUM_ELEMENT, Idx >, SetTerminalNodePolicy > *f2, Idx del=3) override |
| ArgMaximizes between f2 and f1. | |
| MultiDimFunctionGraph< GUM_ELEMENT > * | add (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del=1) override |
| Adds reward to given function( whether a f2 or f1). | |
| MultiDimFunctionGraph< GUM_ELEMENT > * | subtract (const MultiDimFunctionGraph< GUM_ELEMENT > *f1, const MultiDimFunctionGraph< GUM_ELEMENT > *f2, Idx del=0) override |
| Subtract current f1 from old f1 to see if threshold is reached or not. | |
<agrum/FMDP/planning/treeOperatorStrategy.h>
A class to find optimal policy for a given FMDP.
Perform a TreeOperatorStrategy planning on given in parameter factored markov decision process
Definition at line 70 of file treeOperatorStrategy.h.
| gum::TreeOperatorStrategy< GUM_ELEMENT >::TreeOperatorStrategy | ( | ) |
Default constructor.
Definition at line 86 of file treeOperatorStrategy_tpl.h.
References TreeOperatorStrategy().
Referenced by TreeOperatorStrategy(), and ~TreeOperatorStrategy().
|
override |
Default destructor.
Definition at line 94 of file treeOperatorStrategy_tpl.h.
References TreeOperatorStrategy().
|
overrideprotectedvirtual |
Adds reward to given function( whether a f2 or f1).
| reward | : R(s) or R(s,a) |
| function | : either V(s) or Q(s,a) |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 206 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().
|
overrideprotectedvirtual |
ArgMaximizes between f2 and f1.
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 186 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().
|
protectedinherited |
Definition at line 58 of file IOperatorStrategy_tpl.h.
|
protectedinherited |
Definition at line 49 of file IOperatorStrategy_tpl.h.
Referenced by gum::MDDOperatorStrategy< GUM_ELEMENT >::add(), gum::TreeOperatorStrategy< GUM_ELEMENT >::add(), gum::MDDOperatorStrategy< GUM_ELEMENT >::argmaximize(), gum::TreeOperatorStrategy< GUM_ELEMENT >::argmaximize(), gum::MDDOperatorStrategy< GUM_ELEMENT >::maximize(), gum::TreeOperatorStrategy< GUM_ELEMENT >::maximize(), gum::MDDOperatorStrategy< GUM_ELEMENT >::minimize(), gum::TreeOperatorStrategy< GUM_ELEMENT >::minimize(), gum::MDDOperatorStrategy< GUM_ELEMENT >::multiply(), gum::TreeOperatorStrategy< GUM_ELEMENT >::multiply(), gum::MDDOperatorStrategy< GUM_ELEMENT >::subtract(), and gum::TreeOperatorStrategy< GUM_ELEMENT >::subtract().
|
overridevirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 247 of file treeOperatorStrategy_tpl.h.
References gum::MultiDimFunctionGraph< GUM_ELEMENT, TerminalNodePolicy >::getTreeInstance().
|
overridevirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 240 of file treeOperatorStrategy_tpl.h.
|
overridevirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 234 of file treeOperatorStrategy_tpl.h.
References gum::MultiDimFunctionGraph< GUM_ELEMENT, TerminalNodePolicy >::getTreeInstance().
|
overrideprotectedvirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 144 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().
|
overrideprotectedvirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 158 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().
|
overrideprotectedvirtual |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 171 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().
|
overrideprotectedvirtual |
Computes Qaction for given actionid.
Performs a multiplication/projection on given qAction.
| qAction | : the computed Q(s,a) |
| pxip | : the transition probabilities for the xip variable |
| xip | : the variable we eliminate on the projection |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 116 of file treeOperatorStrategy_tpl.h.
References gum::TreeRegress< GUM_ELEMENT, COMBINEOPERATOR, PROJECTOPERATOR, TerminalNodePolicy >::compute(), gum::BijectionImplementation< T1, T2, std::is_scalar< T1 >::value &&std::is_scalar< T2 >::value >::first(), gum::BijectionImplementation< T1, T2, Gen >::insert(), gum::FMDP< GUM_ELEMENT >::mapMainPrime(), RECAST, gum::FMDP< GUM_ELEMENT >::transition(), and gum::MultiDimImplementation< GUM_ELEMENT >::variablesSequence().
|
overrideprotectedvirtual |
Subtract current f1 from old f1 to see if threshold is reached or not.
| old | and new VFuntion |
Implements gum::IOperatorStrategy< GUM_ELEMENT >.
Definition at line 223 of file treeOperatorStrategy_tpl.h.
References gum::TreeOperator< GUM_ELEMENT, COMBINEOPERATOR, TerminalNodePolicy >::compute(), and gum::IOperatorStrategy< GUM_ELEMENT >::deleteFunctionGraph_().