Transform Action
lerax.wrapper.TransformAction
Bases: AbstractPureTransformActionWrapper[WrapperActType, WrapperMaskType, StateType, ActType, ObsType, MaskType]
Apply a function to the action before passing it to the environment.
Attributes:
| Name | Type | Description |
|---|---|---|
env |
AbstractEnvLike[StateType, ActType, ObsType, MaskType]
|
The environment to wrap. |
func |
Callable[[WrapperActType], ActType]
|
The function to apply to the action. |
action_space |
AbstractSpace[WrapperActType, WrapperMaskType]
|
The action space of the wrapper. |
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
env
|
AbstractEnvLike[StateType, ActType, ObsType, MaskType]
|
The environment to wrap. |
required |
func
|
Callable[[WrapperActType], ActType]
|
The function to apply to the action. |
required |
action_space
|
AbstractSpace[WrapperActType, WrapperMaskType]
|
The action space of the wrapper. |
required |
action_space
instance-attribute
action_mask
action_mask(
state: TransformActionState[StateType],
*,
key: Key[Array, ""],
) -> WrapperMaskType | None
transition
transition(
state: TransformActionState[StateType],
action: WrapperActType,
*,
key: Key[Array, ""],
) -> TransformActionState[StateType]
observation
reward
reward(
state: TransformActionState[StateType],
action: WrapperActType,
next_state: TransformActionState[StateType],
*,
key: Key[Array, ""],
) -> Float[Array, ""]
terminal
transition_info
transition_info(
state: TransformActionState[StateType],
action: WrapperActType,
next_state: TransformActionState[StateType],
) -> dict
default_renderer
Return the default renderer for the wrapped environment
render_states
render_states(
states: Sequence[StateType],
renderer: AbstractRenderer | Literal["auto"] = "auto",
dt: float = 0.0,
)
Render a sequence of frames from multiple states.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
states
|
Sequence[StateType]
|
A sequence of environment states to render. |
required |
renderer
|
AbstractRenderer | Literal['auto']
|
The renderer to use for rendering. If "auto", uses the default renderer. |
'auto'
|
dt
|
float
|
The time delay between rendering each frame, in seconds. |
0.0
|
render_stacked
render_stacked(
states: StateType,
renderer: AbstractRenderer | Literal["auto"] = "auto",
dt: float = 0.0,
)
Render multiple frames from stacked states.
Stacked states are typically batched states stored in a pytree structure.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
states
|
StateType
|
A pytree of stacked environment states to render. |
required |
renderer
|
AbstractRenderer | Literal['auto']
|
The renderer to use for rendering. If "auto", uses the default renderer. |
'auto'
|
dt
|
float
|
The time delay between rendering each frame, in seconds. |
0.0
|
reset
Wrap the functional logic into a Gym API reset method.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
key
|
Key[Array, '']
|
A JAX PRNG key for any stochasticity in the reset. |
required |
Returns:
| Type | Description |
|---|---|
tuple[StateType, ObsType, dict]
|
A tuple of the initial state, initial observation, and additional info. |
step
step(
state: StateType,
action: ActType,
*,
key: Key[Array, ""],
) -> tuple[
StateType,
ObsType,
Float[Array, ""],
Bool[Array, ""],
Bool[Array, ""],
dict,
]
Wrap the functional logic into a Gym API step method.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state
|
StateType
|
The current environment state. |
required |
action
|
ActType
|
The action to take. |
required |
key
|
Key[Array, '']
|
A JAX PRNG key for any stochasticity in the step. |
required |
Returns:
| Type | Description |
|---|---|
tuple[StateType, ObsType, Float[Array, ''], Bool[Array, ''], Bool[Array, ''], dict]
|
A tuple of the next state, observation, reward, terminal flag, truncate flag, and additional info. |