openrl.envs.wrappers package¶
Submodules¶
openrl.envs.wrappers.atari_wrappers module¶
- class openrl.envs.wrappers.atari_wrappers.ClipRewardEnv(env, cfg=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.atari_wrappers.EpisodicLifeEnv(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.atari_wrappers.FireResetEnv(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.atari_wrappers.NoopResetEnv(env, noop_max=30)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
openrl.envs.wrappers.base_wrapper module¶
- class openrl.envs.wrappers.base_wrapper.BaseObservationWrapper(env, cfg=None, reward_class=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- observation(observation: gymnasium.core.ObsType) gymnasium.core.WrapperObsType[source]¶
Returns a modified observation.
- Args:
observation: The
envobservation- Returns:
The modified observation
- class openrl.envs.wrappers.base_wrapper.BaseRewardWrapper(env, cfg=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.base_wrapper.BaseWrapper(env, cfg=None, reward_class=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property agent_num¶
- property env_name¶
- property has_auto_reset¶
- step(action)[source]¶
Uses the
step()of theenvthat can be overwritten to change the returned data.
- property use_monitor¶
openrl.envs.wrappers.extra_wrappers module¶
- class openrl.envs.wrappers.extra_wrappers.AddStep(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- observation(observation)[source]¶
Flattens an observation.
- Args:
observation: The observation to flatten
- Returns:
The flattened observation
- class openrl.envs.wrappers.extra_wrappers.AutoReset(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property has_auto_reset¶
- class openrl.envs.wrappers.extra_wrappers.ConvertEmptyBoxWrapper(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.DictWrapper(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.FlattenObservation(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.FrameSkip(env, num_frames: int = 8)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.GIFWrapper(env, gif_path: str, fps: int = 30)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.MoveActionMask2InfoWrapper(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.RecordReward(env, cfg=None, reward_class=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property has_auto_reset¶
- class openrl.envs.wrappers.extra_wrappers.RemoveTruncated(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.extra_wrappers.ZeroRewardWrapper(env, cfg=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
openrl.envs.wrappers.flatten module¶
- openrl.envs.wrappers.flatten.flatten(space: gymnasium.spaces.space.Space[openrl.envs.wrappers.flatten.T], agent_num: int, x: openrl.envs.wrappers.flatten.T) Union[numpy.ndarray[Any, numpy.dtype[Any]], Dict[str, Any], Tuple[Any, ...], gymnasium.spaces.graph.GraphInstance][source]¶
Flatten a data point from a space.
This is useful when e.g. points from spaces must be passed to a neural network, which only understands flat arrays of floats.
- Args:
space: The space that
xis flattened by x: The value to flatten- Returns:
The flattened datapoint
For
gymnasium.spaces.Boxandgymnasium.spaces.MultiBinary, this is a flattened arrayFor
gymnasium.spaces.Discreteandgymnasium.spaces.MultiDiscrete, this is a flattened one-hot array of the sampleFor
gymnasium.spaces.Tupleandgymnasium.spaces.Dict, this is a concatenated array the subspaces (does not support graph subspaces)- For graph spaces, returns
GraphInstancewhere: GraphInstance.nodesare n x k arraysGraphInstance.edgesare either:m x k arrays
None
GraphInstance.edge_linksare either:m x 2 arrays
None
- For graph spaces, returns
- Raises:
NotImplementedError: If the space is not defined in
gymnasium.spaces.- Example:
>>> from gymnasium.spaces import Box, Discrete, Tuple >>> space = Box(0, 1, shape=(3, 5)) >>> flatten(space, space.sample()).shape (15,) >>> space = Discrete(4) >>> flatten(space, 2) array([0, 0, 1, 0]) >>> space = Tuple((Box(0, 1, shape=(2,)), Box(0, 1, shape=(3,)), Discrete(3))) >>> example = ((.5, .25), (1., 0., .2), 1) >>> flatten(space, example) array([0.5 , 0.25, 1. , 0. , 0.2 , 0. , 1. , 0. ])
openrl.envs.wrappers.image_wrappers module¶
openrl.envs.wrappers.mat_wrapper module¶
- class openrl.envs.wrappers.mat_wrapper.MATWrapper(env: openrl.envs.vec_env.base_venv.BaseVecEnv)[source]¶
Bases:
openrl.envs.vec_env.wrappers.base_wrapper.VectorObservationWrapper- observation(observation)[source]¶
Defines the observation transformation.
- Args:
observation (object): the observation from the environment
- Returns:
observation (object): the transformed observation
- property observation_space¶
Return the
Envobservation_spaceunless overwritten then the wrapperobservation_spaceis used.
openrl.envs.wrappers.monitor module¶
- class openrl.envs.wrappers.monitor.Monitor(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]A monitor wrapper for Gym environments, it is used to know the episode reward, length, time and other data.
- Parameters
env – The environment
- get_episode_lengths() List[int][source]¶
Returns the number of timesteps of all the episodes
- Returns
openrl.envs.wrappers.multiagent_wrapper module¶
- class openrl.envs.wrappers.multiagent_wrapper.Single2MultiAgentWrapper(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property agent_num¶
openrl.envs.wrappers.pettingzoo_wrappers module¶
openrl.envs.wrappers.util module¶
- openrl.envs.wrappers.util.is_wrapped(env: gymnasium.core.Env, wrapper_class: Type[openrl.envs.wrappers.base_wrapper.BaseWrapper]) bool[source]¶
Check if a given environment has been wrapped with a given wrapper.
- Parameters
env – Environment to check
wrapper_class – Wrapper class to look for
- Returns
True if environment has been wrapped with
wrapper_class.
- openrl.envs.wrappers.util.unwrap_wrapper(env: gymnasium.core.Env, wrapper_class: Type[openrl.envs.wrappers.base_wrapper.BaseWrapper]) Optional[openrl.envs.wrappers.base_wrapper.BaseWrapper][source]¶
Retrieve a
BaseWrapperobject by recursively searching.- Parameters
env – Environment to unwrap
wrapper_class – Wrapper to look for
- Returns
Environment unwrapped till
wrapper_classif it has been wrapped with it
Module contents¶
- class openrl.envs.wrappers.AutoReset(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property has_auto_reset¶
- class openrl.envs.wrappers.BaseObservationWrapper(env, cfg=None, reward_class=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- observation(observation: gymnasium.core.ObsType) gymnasium.core.WrapperObsType[source]¶
Returns a modified observation.
- Args:
observation: The
envobservation- Returns:
The modified observation
- class openrl.envs.wrappers.BaseRewardWrapper(env, cfg=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.BaseWrapper(env, cfg=None, reward_class=None)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property agent_num¶
- property env_name¶
- property has_auto_reset¶
- step(action)[source]¶
Uses the
step()of theenvthat can be overwritten to change the returned data.
- property use_monitor¶
- class openrl.envs.wrappers.DictWrapper(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.FlattenObservation(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.GIFWrapper(env, gif_path: str, fps: int = 30)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.MoveActionMask2InfoWrapper(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.RemoveTruncated(env: gymnasium.core.Env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]
- class openrl.envs.wrappers.Single2MultiAgentWrapper(env)[source]¶
Bases:
gymnasium.core.Env[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType],Generic[gymnasium.core.WrapperObsType,gymnasium.core.WrapperActType,gymnasium.core.ObsType,gymnasium.core.ActType]- property agent_num¶