PCB Environment: Agent Class Reference

PCB Environment 2

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
Agent Class Reference
Inheritance diagram for Agent:

## Public Member Functions
| Agent (const std::string &name)
const std::string & | name () const
virtual void | setStateRepresentationParams (PyObject *)
void | setParameters (PyObject *)
virtual void | setParameter (const std::string &varName, int index, PyObject *)
const std::map< std::string, Parameter * > & | getParameters () const
void | setPythonInterface (PyObject *)
void | setTrainingMode (bool on)
virtual void | setPCB (const std::shared_ptr< PCBoard > &)
virtual void | setManagedConnections (const std::set< Connection * > &)
void | setManagedConnectionsToUnrouted ()
void | setActionSpace (const ActionSpace &)
void | setPolicy (Policy *)
| Ownership of Policy, RewardFunction, and StateRepresentation are transferred to the agent.
void | setRewardFn (RewardFunction *)
void | setStateRepresentation (StateRepresentation *)
virtual bool | _run ()
bool | run ()
void | setRunArgs (PyObject *)
void | setTimeout (uint64_t usec)
void | setTimeoutExpired ()
void | setActionLimit (int64_t count)
void | setClearBoardBeforeRun (bool)
float | getProgress () const
virtual PyObject * | step (PyObject *)
virtual PyObject * | get_state (PyObject *)
virtual PyObject * | reset ()
void | eraseManagedConnections ()
PCBoard * | getPCB () const
| These are only valid as long as you have got a hold of the agent.
RewardFunction & | getRewardFn () const
Policy * | getPolicy () const
StateRepresentation * | getSR () const
uint32_t | getIteration () const
uint64_t | numActions () const
uint64_t | usecsSinceStart () const
const std::vector< Connection * > & | getConnections () const
const std::set< Connection * > & | getConnectionSet () const
Connection * | setConnectionLRU (PyObject *)
Connection * | getConnectionLRU () const
Action::Result | evaluateCurrentState () const
void | startTimer ()
bool | hasTimerExpired () const
void | resetActionCount ()
void | resetActionLimit ()
void | countActions (int)
bool | actionLimitExceeded () const
std::vector< float > | py_V (PyObject *states)
std::vector< float > | py_Q (PyObject *states)
std::vector< float > | py_P (PyObject *states)
std::vector< float > | py_P_V (PyObject *states)
void | py_event (PyObject *event)
| Tell anything else to your Python interface.
StepLock & | getStepLock ()

## Static Public Member Functions
static Agent * | create (const std::string &type)

## Protected Member Functions
void | initParameters ()

## Protected Attributes
std::shared_ptr< PCBoard > | mPCB
std::vector< Connection * > | mConnections
std::set< Connection * > | mConnectionSet
Connection * | mConnectionLRU {0}
const ActionSpace * | mActionSpace {0}
std::unique_ptr< Policy > | mPolicy
std::unique_ptr< StateRepresentation > | mStateRep
std::unique_ptr< RewardFunction > | mRewardFn
ResultCollection | mStats
uint32_t | mIteration {0}
float | mProgress {-1.0f}
bool | mClearBoardBeforeRun {false}
SignalContext | mSignals
std::map< std::string, Parameter * > | mParameters
PyObject * | mPython {0}
PyObject * | mMethodNamesPy [5] {0,0,0,0,0}

## Member Function Documentation

## ◆ py_V()

std::vector< float > Agent::py_V | ( | PyObject * | states | ) |
| inline

Policy and value functions from Python (e.g. neural networks). The arrangement of the return vector is up to you. Arguments are DECREF'd.

The documentation for this class was generated from the following file:

- /home/chr/devel/PhD/Environment/pub/PCBEnv/pcbenv/cxx/RL/Agent.hpp