ContinuousMountainCar Class Reference

Implementation of Continuous Mountain Car task. More...

Classes

struct  Action
 Implementation of action of Continuous Mountain Car. More...

 
class  State
 Implementation of state of Continuous Mountain Car. More...

 

Public Member Functions

 ContinuousMountainCar (const double positionMin=-1.2, const double positionMax=0.5, const double velocityMin=-0.07, const double velocityMax=0.07)
 Construct a Continuous Mountain Car instance using the given constant. More...

 
State InitialSample () const
 Initial position is randomly generated within [-0.6, -0.4]. More...

 
bool IsTerminal (const State &state) const
 Whether given state is a terminal state. More...

 
double Sample (const State &state, const Action &action, State &nextState) const
 Dynamics of Continuous Mountain Car. More...

 
double Sample (const State &state, const Action &action) const
 Dynamics of Continuous Mountain Car. More...

 

Detailed Description

Implementation of Continuous Mountain Car task.

Definition at line 27 of file continuous_mountain_car.hpp.

Constructor & Destructor Documentation

◆ ContinuousMountainCar()

ContinuousMountainCar ( const double  positionMin = -1.2,
const double  positionMax = 0.5,
const double  velocityMin = -0.07,
const double  velocityMax = 0.07 
)
inline

Construct a Continuous Mountain Car instance using the given constant.

Parameters
positionMinMinimum legal position.
positionMaxMaximum legal position.
velocityMinMinimum legal velocity.
velocityMaxMaximum legal velocity.

Definition at line 98 of file continuous_mountain_car.hpp.

Member Function Documentation

◆ InitialSample()

State InitialSample ( ) const
inline

Initial position is randomly generated within [-0.6, -0.4].

Initial velocity is 0.

Returns
Initial state for each episode.

Definition at line 163 of file continuous_mountain_car.hpp.

References ContinuousMountainCar::State::Position(), mlpack::math::Random(), and ContinuousMountainCar::State::Velocity().

◆ IsTerminal()

bool IsTerminal ( const State state) const
inline

Whether given state is a terminal state.

Parameters
statedesired state.
Returns
true if state is a terminal state, otherwise false.

Definition at line 177 of file continuous_mountain_car.hpp.

References ContinuousMountainCar::State::Position().

Referenced by ContinuousMountainCar::Sample().

◆ Sample() [1/2]

double Sample ( const State state,
const Action action,
State nextState 
) const
inline

Dynamics of Continuous Mountain Car.

Get reward and next state based on current state and current action.

Parameters
stateThe current state.
actionThe current action.
nextStateThe next state.
Returns
reward, it's always -1.0.

Definition at line 117 of file continuous_mountain_car.hpp.

References ContinuousMountainCar::Action::action, ContinuousMountainCar::IsTerminal(), ContinuousMountainCar::State::Position(), and ContinuousMountainCar::State::Velocity().

Referenced by ContinuousMountainCar::Sample().

◆ Sample() [2/2]

double Sample ( const State state,
const Action action 
) const
inline

Dynamics of Continuous Mountain Car.

Get reward based on current state and current action.

Parameters
stateThe current state.
actionThe current action.
Returns
reward, it's always -1.0.

Definition at line 151 of file continuous_mountain_car.hpp.

References ContinuousMountainCar::Sample().


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