bitrl & cuberl Documentation
Simulation engine for reinforcement learning agents
Loading...
Searching...
No Matches
bitrl::envs::gymnasium::FrozenLake< side_size > Class Template Referencefinal

#include <frozen_lake_env.h>

Inheritance diagram for bitrl::envs::gymnasium::FrozenLake< side_size >:
Collaboration diagram for bitrl::envs::gymnasium::FrozenLake< side_size >:

Public Types

typedef std::vector< std::tuple< real_t, uint_t, real_t, bool > > dynamics_t
 dynamics_t
 
typedef ToyTextEnvBase< TimeStep< uint_t >, frozenlake_state_size< side_size >::size, 3 >::base_type base_type
 The base type.
 
typedef base_type::time_step_type time_step_type
 The time step type we return every time a step in the environment is performed.
 
typedef base_type::state_space_type state_space_type
 The type describing the state space for the environment.
 
typedef base_type::action_space_type action_space_type
 The type of the action space for the environment.
 
typedef base_type::action_type action_type
 The type of the action to be undertaken in the environment.
 
typedef base_type::state_type state_type
 The type of the action to be undertaken in the environment.
 
- Public Types inherited from bitrl::envs::gymnasium::ToyTextEnvBase< TimeStep< uint_t >, frozenlake_state_size< side_size >::size, 3 >
typedef GymnasiumEnvBase< TimeStep< uint_t >, ScalarDiscreteEnv< state_end, action_end, 0, 0 > >::base_type base_type
 The base_type.
 
typedef base_type::time_step_type time_step_type
 The time step type we return every time a step in the environment is performed.
 
typedef base_type::state_space_type state_space_type
 The type describing the state space for the environment.
 
typedef base_type::action_space_type action_space_type
 The type of the action space for the environment.
 
typedef base_type::action_type action_type
 The type of the action to be undertaken in the environment.
 
typedef base_type::state_type state_type
 The type of the state.
 
typedef std::vector< std::tuple< real_t, uint_t, real_t, bool > > dynamics_t
 dynamics_t
 
- Public Types inherited from bitrl::envs::gymnasium::GymnasiumEnvBase< TimeStepType, SpaceType >
typedef EnvBase< TimeStepType, SpaceType > base_type
 Base environment type alias.
 
typedef base_type::time_step_type time_step_type
 Time step returned at each environment step.
 
typedef base_type::state_space_type state_space_type
 Type describing the observation/state space of the environment.
 
typedef base_type::action_space_type action_space_type
 Type describing the action space of the environment.
 
typedef base_type::action_type action_type
 Type representing a valid action to execute.
 
typedef base_type::state_type state_type
 Type representing a state/observation returned by the environment.
 
- Public Types inherited from bitrl::envs::EnvBase< TimeStepType, SpaceType >
typedef TimeStepType time_step_type
 Alias for the type returned when stepping the environment.
 
typedef SpaceType::state_space state_space_type
 Type describing the environment state space.
 
typedef SpaceType::state_type state_type
 Type describing an individual state.
 
typedef SpaceType::action_space action_space_type
 Type describing the environment action space.
 
typedef SpaceType::action_type action_type
 Type representing an individual action.
 

Public Member Functions

 FrozenLake (network::RESTRLEnvClient &api_server)
 Constructor.
 
 FrozenLake (const FrozenLake &other)
 copy constructor
 
 ~FrozenLake () override=default
 ~FrozenLake. Destructor.
 
virtual void make (const std::string &version, const std::unordered_map< std::string, std::any > &options, const std::unordered_map< std::string, std::any > &reset_options) override final
 make. Builds the environment. Optionally we can choose if the environment will be slippery
 
virtual time_step_type step (const action_type &action) override final
 Step in the environment following the given action.
 
std::string map_type () const noexcept
 map_type
 
bool is_slippery () const
 is_slipery
 
- Public Member Functions inherited from bitrl::envs::gymnasium::ToyTextEnvBase< TimeStep< uint_t >, frozenlake_state_size< side_size >::size, 3 >
virtual ~ToyTextEnvBase ()=default
 ~FrozenLake. Destructor.
 
dynamics_t p (uint_t sidx, uint_t aidx) const
 P.
 
uint_t n_actions () const noexcept
 n_actions. Returns the number of actions
 
uint_t n_states () const noexcept
 Number of states.
 
- Public Member Functions inherited from bitrl::envs::gymnasium::GymnasiumEnvBase< TimeStepType, SpaceType >
virtual ~GymnasiumEnvBase ()
 Virtual destructor.
 
virtual bool is_alive () const
 Check whether the environment is still alive/connected.
 
virtual void close () override
 Close the environment on the server and release any resources.
 
virtual time_step_type reset () override
 Reset the environment to an initial state using the reset options specified during make.
 
uint_t n_copies () const
 
network::RESTRLEnvClientget_api_server () const
 Retrieve the REST API wrapper instance used for communication.
 
std::string get_url () const
 Get the full URL for this environment endpoint on the server.
 
virtual time_step_type reset ()=0
 Import the reset() overloads from the base class.
 
- Public Member Functions inherited from bitrl::envs::EnvBase< TimeStepType, SpaceType >
virtual ~EnvBase ()=default
 Virtual destructor.
 
const std::unordered_map< std::string, std::any > & make_options () const noexcept
 Access the configuration options provided to make().
 
const std::unordered_map< std::string, std::any > & reset_options () const noexcept
 Access the configuration options provided to make().
 
template<typename T >
read_option (const std::string &op_name) const
 Read a specific make() option and cast it to the requested type.
 
std::string idx () const noexcept
 Get the id identifying this environment within a simulation batch. The id is valid only if make has been called.
 
bool is_created () const noexcept
 Check if make() has successfully initialized the environment.
 
std::string env_name () const noexcept
 Get the name of this environment instance.
 
std::string version () const noexcept
 Get the environment version set during make().
 

Static Public Attributes

static const std::string name = "FrozenLake"
 name
 
static const std::string URI = "/gymnasium/frozen-lake-env"
 The URI for accessing the environment.
 
- Static Public Attributes inherited from bitrl::envs::EnvBase< TimeStepType, SpaceType >
static const uint_t DEFAULT_ENV_SEED = 42
 Default seed used in reset() if none provided.
 

Protected Member Functions

virtual time_step_type create_time_step_from_response_ (const nlohmann::json &response) const override final
 Handle the reset response from the environment server.
 
- Protected Member Functions inherited from bitrl::envs::gymnasium::ToyTextEnvBase< TimeStep< uint_t >, frozenlake_state_size< side_size >::size, 3 >
 ToyTextEnvBase (network::RESTRLEnvClient &api_server, const std::string &name)
 Constructor.
 
 ToyTextEnvBase (const ToyTextEnvBase &other)
 Copy constructor.
 
virtual dynamics_t build_dynamics_from_response_ (const nlohmann::json &response) const
 build the dynamics from response
 
- Protected Member Functions inherited from bitrl::envs::gymnasium::GymnasiumEnvBase< TimeStepType, SpaceType >
 GymnasiumEnvBase (network::RESTRLEnvClient &api_server, const std::string &name)
 Constructor.
 
 GymnasiumEnvBase (const GymnasiumEnvBase &)
 Copy constructor.
 
- Protected Member Functions inherited from bitrl::envs::EnvBase< TimeStepType, SpaceType >
 EnvBase (const std::string &idx=bitrl::consts::INVALID_STR, const std::string &name=bitrl::consts::INVALID_STR)
 Constructor (protected — for subclassing only).
 
 EnvBase (const EnvBase &)
 Copy constructor.
 
void set_version_ (const std::string &version) noexcept
 Set internal version string.
 
void set_idx_ (const std::string &idx) noexcept
 Set the id of the environment.
 
void set_make_options_ (const std::unordered_map< std::string, std::any > &options) noexcept
 Store options for future access.
 
void set_reset_options_ (const std::unordered_map< std::string, std::any > &options) noexcept
 Store reset options for future access.
 
void invalidate_is_created_flag_ () noexcept
 Mark environment as not created.
 
void make_created_ () noexcept
 Mark environment creation as successful.
 
time_step_typeget_current_time_step_ () noexcept
 Mutable access to the current time step.
 
const time_step_typeget_current_time_step_ () const noexcept
 Read-only access to the current time step.
 

Additional Inherited Members

- Protected Attributes inherited from bitrl::envs::gymnasium::GymnasiumEnvBase< TimeStepType, SpaceType >
network::RESTRLEnvClientapi_server_
 Server wrapper handling communication with remote Gymnasium environment.
 

Detailed Description

template<uint_t side_size>
class bitrl::envs::gymnasium::FrozenLake< side_size >

The FrozenLake class. Wrapper to Gymnasium FrozenLake environment

Member Typedef Documentation

◆ action_space_type

template<uint_t side_size>
typedef base_type::action_space_type bitrl::envs::gymnasium::FrozenLake< side_size >::action_space_type

The type of the action space for the environment.

◆ action_type

template<uint_t side_size>
typedef base_type::action_type bitrl::envs::gymnasium::FrozenLake< side_size >::action_type

The type of the action to be undertaken in the environment.

◆ base_type

template<uint_t side_size>
typedef ToyTextEnvBase<TimeStep<uint_t>,frozenlake_state_size<side_size>::size,3>::base_type bitrl::envs::gymnasium::FrozenLake< side_size >::base_type

The base type.

◆ dynamics_t

template<uint_t side_size>
typedef std::vector<std::tuple<real_t, uint_t, real_t, bool> > bitrl::envs::gymnasium::FrozenLake< side_size >::dynamics_t

dynamics_t

◆ state_space_type

template<uint_t side_size>
typedef base_type::state_space_type bitrl::envs::gymnasium::FrozenLake< side_size >::state_space_type

The type describing the state space for the environment.

◆ state_type

template<uint_t side_size>
typedef base_type::state_type bitrl::envs::gymnasium::FrozenLake< side_size >::state_type

The type of the action to be undertaken in the environment.

◆ time_step_type

template<uint_t side_size>
typedef base_type::time_step_type bitrl::envs::gymnasium::FrozenLake< side_size >::time_step_type

The time step type we return every time a step in the environment is performed.

Constructor & Destructor Documentation

◆ FrozenLake() [1/2]

template<uint_t side_size>
bitrl::envs::gymnasium::FrozenLake< side_size >::FrozenLake ( network::RESTRLEnvClient api_server)

Constructor.

◆ FrozenLake() [2/2]

template<uint_t side_size>
bitrl::envs::gymnasium::FrozenLake< side_size >::FrozenLake ( const FrozenLake< side_size > &  other)

copy constructor

◆ ~FrozenLake()

template<uint_t side_size>
bitrl::envs::gymnasium::FrozenLake< side_size >::~FrozenLake ( )
overridedefault

~FrozenLake. Destructor.

Member Function Documentation

◆ create_time_step_from_response_()

template<uint_t side_size>
FrozenLake< side_size >::time_step_type bitrl::envs::gymnasium::FrozenLake< side_size >::create_time_step_from_response_ ( const nlohmann::json &  response) const
finaloverrideprotectedvirtual

Handle the reset response from the environment server.

Implements bitrl::envs::gymnasium::GymnasiumEnvBase< TimeStepType, SpaceType >.

◆ is_slippery()

template<uint_t side_size>
bool bitrl::envs::gymnasium::FrozenLake< side_size >::is_slippery ( ) const

is_slipery

Returns

◆ make()

template<uint_t side_size>
void bitrl::envs::gymnasium::FrozenLake< side_size >::make ( const std::string &  version,
const std::unordered_map< std::string, std::any > &  options,
const std::unordered_map< std::string, std::any > &  reset_options 
)
finaloverridevirtual

make. Builds the environment. Optionally we can choose if the environment will be slippery

Implements bitrl::envs::EnvBase< TimeStepType, SpaceType >.

◆ map_type()

template<uint_t side_size>
std::string bitrl::envs::gymnasium::FrozenLake< side_size >::map_type ( ) const
inlinenoexcept

map_type

Returns

◆ step()

template<uint_t side_size>
FrozenLake< side_size >::time_step_type bitrl::envs::gymnasium::FrozenLake< side_size >::step ( const action_type action)
finaloverridevirtual

Step in the environment following the given action.

Implements bitrl::envs::EnvBase< TimeStepType, SpaceType >.

Member Data Documentation

◆ name

template<uint_t side_size>
const std::string bitrl::envs::gymnasium::FrozenLake< side_size >::name = "FrozenLake"
static

name

◆ URI

template<uint_t side_size>
const std::string bitrl::envs::gymnasium::FrozenLake< side_size >::URI = "/gymnasium/frozen-lake-env"
static

The URI for accessing the environment.


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