88 double discountFactor = 0.9,
90 Idx observationPhaseLenght = 100,
91 Idx nbValueIterationStep = 10);
97 double similarityThreshold = 0.3,
98 double discountFactor = 0.9,
100 Idx observationPhaseLenght = 100,
101 Idx nbValueIterationStep = 10);
107 double similarityThreshold = 0.3,
108 double discountFactor = 0.9,
110 Idx observationPhaseLenght = 100,
111 Idx nbValueIterationStep = 10);
117 double discountFactor = 0.9,
119 Idx observationPhaseLenght = 100,
120 Idx nbValueIterationStep = 10);
126 double similarityThreshold = 0.3,
127 double discountFactor = 0.9,
129 Idx observationPhaseLenght = 100,
130 Idx nbValueIterationStep = 10);
136 double discountFactor = 0.9,
138 Idx observationPhaseLenght = 100,
139 Idx nbValueIterationStep = 10);
160 Idx observationPhaseLenght,
161 Idx nbValueIterationStep,
163 bool verbose =
true);
189 void addAction(
const Idx actionId, std::string_view actionName);
276 double obtainedReward);
Headers of the epsilon-greedy decision maker class.
Headers of the RMax planer class.
Base class for discrete random variable.
<agrum/FMDP/SDyna/IDecisionStrategy.h>
<agrum/FMDP/SDyna/ILearningStrategy.h>
Class for assigning/browsing values to tuples of discrete variables.
void initialize()
Initializes the Sdyna instance.
ILearningStrategy * _learner_
The learner used to learn the FMDP.
Idx _lastAction_
The last performed action.
Idx _nbValueIterationStep_
The number of Value Iteration step we perform.
static SDYNA * spitiInstance(double attributeSelectionThreshold=0.99, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
Instantiation lastState_
The state in which the system is before we perform a new action.
void setCurrentState(const Instantiation ¤tState)
Sets last state visited to the given state.
Size valueFunctionSize()
valueFunctionSize
IPlanningStrategy< double > * _planer_
The planer used to plan an optimal strategy.
FMDP< double > * fmdp_
The learnt Markovian Decision Process.
Size optimalPolicySize()
optimalPolicySize
void addAction(const Idx actionId, std::string_view actionName)
Inserts a new action in the SDyna instance.
Set< Observation * > _bin_
Since SDYNA made these observation, it has to delete them on quitting.
Idx _nbObservation_
The total number of observation made so far.
std::string optimalPolicy2String()
static SDYNA * spimddiInstance(double attributeSelectionThreshold=0.99, double similarityThreshold=0.3, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
IDecisionStrategy * _decider_
The decider.
static SDYNA * RMaxMDDInstance(double attributeSelectionThreshold=0.99, double similarityThreshold=0.3, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
Size learnerSize()
learnerSize
static SDYNA * RandomTreeInstance(double attributeSelectionThreshold=0.99, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
std::string toString()
Returns.
void feedback(const Instantiation &originalState, const Instantiation &reachedState, Idx performedAction, double obtainedReward)
Performs a feedback on the last transition.
Size modelSize()
modelSize
void makePlanning(Idx nbStep)
Starts a new planning.
Idx _observationPhaseLenght_
The number of observation we make before using again the planer.
static SDYNA * RandomMDDInstance(double attributeSelectionThreshold=0.99, double similarityThreshold=0.3, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
static SDYNA * RMaxTreeInstance(double attributeSelectionThreshold=0.99, double discountFactor=0.9, double epsilon=1, Idx observationPhaseLenght=100, Idx nbValueIterationStep=10)
@
void addVariable(const DiscreteVariable *var)
Inserts a new variable in the SDyna instance.
SDYNA(ILearningStrategy *learner, IPlanningStrategy< double > *planer, IDecisionStrategy *decider, Idx observationPhaseLenght, Idx nbValueIterationStep, bool actionReward, bool verbose=true)
Constructor.
std::size_t Size
In aGrUM, hashed values are unsigned long int.
Size Idx
Type for indexes.
gum is the global namespace for all aGrUM entities
Headers of the Random decision maker class.
Headers of the Statistical lazy decision maker class.