SmartEngine
1.6.0
|
A curiosity module is a way of rewarding an agent for behavior not yet seen. Rewards are given based on how expected the next set of observations are given the previous observations and the chosen actions. Unexpected results are given larger rewards than behavior the agent saw in the past, thus promoting the agent to be curious and explore the world. More...
#include <CuriosityModule.h>
Public Member Functions | |
virtual void | SetRandomWeights ()=0 |
Initialize the weights to random values. More... | |
virtual float | GetLoss ()=0 |
Returns the loss of the last batch processed. The loss represents how well the internal models are at mapping the observation / action space. More... | |
virtual float | GetReward ()=0 |
Returns the sum rewards of the last batch of data processed. Useful for giving an idea of how much reward is being injected over time. More... | |
Public Member Functions inherited from SmartEngine::IObject | |
virtual ObjectId | GetId () const =0 |
Returns the ID of this object. More... | |
virtual void | AddRef () const =0 |
Increments the internal reference count on this object. It is not common to use this method directly. More... | |
virtual void | Release () const =0 |
Decrements the internal reference count on this object. It is not common to use this method directly. More... | |
virtual int | GetRefCount () const =0 |
Returns the number of references to this object. More... | |
virtual void * | QueryInterface (ObjectClassId id)=0 |
Queries the object for an interface and returns a pointer to that interface if found. More... | |
void | operator= (IObject const &x)=delete |
Public Member Functions inherited from SmartEngine::IResource | |
virtual const char * | GetResourceName () const =0 |
Returns the name of this resource passed to the constructor. More... | |
virtual SerializationResult | GetLastLoadResult () const =0 |
Returns the result of the last call to Load(). Useful for checking loaded data state after creation. More... | |
virtual SerializationResult | Load (const char *appendName=nullptr)=0 |
Load this object from disk. More... | |
virtual SerializationResult | Save (const char *appendName=nullptr)=0 |
Save this object to disk. More... | |
Public Member Functions inherited from SmartEngine::ISerializable | |
virtual SerializationResult | Serialize (IMemoryBuffer *buffer)=0 |
Write the contents of this object to a buffer. More... | |
virtual SerializationResult | Deserialize (IMemoryBuffer *buffer)=0 |
Fill this object with contents from a buffer. More... | |
Additional Inherited Members | |
Public Attributes inherited from SmartEngine::IObject | |
private | |
__pad0__: IObject() {} IObject(IObject const&) = delete | |
A curiosity module is a way of rewarding an agent for behavior not yet seen. Rewards are given based on how expected the next set of observations are given the previous observations and the chosen actions. Unexpected results are given larger rewards than behavior the agent saw in the past, thus promoting the agent to be curious and explore the world.
Internally, the curiosity module turns the observation state into a feature dimension space, which is used to drive a forward model and inverse model. The forward model predicts the next state given the current state and action and is used for rewards. The inverse model computes the action given the current state and next state and is used to tune the accuracy of the forward model.
|
pure virtual |
Returns the loss of the last batch processed. The loss represents how well the internal models are at mapping the observation / action space.
|
pure virtual |
Returns the sum rewards of the last batch of data processed. Useful for giving an idea of how much reward is being injected over time.
|
pure virtual |
Initialize the weights to random values.