6 #include "GradientDescentTrainer.h"
16 struct RLTrainerCInfo :
public ResourceCInfo
74 virtual int GetGenerationCount()
const = 0;
98 SMARTENGINE_EXPORT
int RLTrainer_GetGenerationCount(ObjPtr
object);
99 SMARTENGINE_EXPORT
float RLTrainer_GetLoss(ObjPtr
object);
100 SMARTENGINE_EXPORT
void RLTrainer_Reset(ObjPtr
object);
101 SMARTENGINE_EXPORT
void RLTrainer_Step(ObjPtr
object);
102 SMARTENGINE_EXPORT ObjPtr RLTrainer_CreateAgent(ObjPtr
object);
int sequenceLength
LSTM sequence lengths. Can be ignored if there is no LSTM in the graphs.
Definition: RLTrainer.h:61
RL trainers implement this to create agents.
Definition: Agent.h:129
int policyNodeNameCount
The number of elements in the policy node name array
Definition: RLTrainer.h:46
const char ** policyNodeNames
The names of the output nodes of the actor (the network used to manipulate the environment)....
Definition: RLTrainer.h:41
GradientDescentTrainingInfo trainingInfo
Gradient descent training parameters
Definition: RLTrainer.h:56
float gamma
Reward decay over time
Definition: RLTrainer.h:51
IAgentDataStore * dataStore
The data store used to save experience state
Definition: RLTrainer.h:29
Base class for all reinforcement learning trainers.
Definition: RLTrainer.h:69
GradientDescentTrainer training info
Definition: GradientDescentTrainer.h:74
Definition: A2CTrainer.h:10
Base class for SmartEngine AI objects. It is not common to deal with this class directly.
Definition: Object.h:19
IContext * context
The context to perform graph operations within.
Definition: RLTrainer.h:24
virtual float GetLoss()=0
This value will mean different things to different trainers. See each trainer's description for the v...
Base class for objects that can be loaded from and saved to disk.
Definition: Resource.h:77
The agent data store keeps experience data for the purpose of training. Some RL trainers don't store ...
Definition: Agent.h:57
Every node in the AI graph must belong to the same context.
Definition: Context.h:40
const char * agentName
Should be a unique name across the data store
Definition: RLTrainer.h:34
virtual void Step()=0
Step training. May not actual result in any training if there is not enough data available yet.
virtual void Reset()=0
Resets the trainer to a fresh state, initializing any internal weights to random values.