功能环境

class gymnasium.experimental.functional.FuncEnv(options: dict[str, Any] | None = None)[source]

功能环境的基类(模板)。

此 API 旨在以无状态方式使用,环境状态显式传递。也就是说,这里没有任何东西可以阻止用户有状态地使用环境,只是不推荐这样做。功能环境由以下函数组成(在本例中,实例方法)

  • initial: 返回 POMDP 的初始状态

  • observation: 在给定状态下返回观察结果

  • transition: 在给定状态下执行操作后返回下一个状态

  • reward: 返回给定 (state, action, next_state) 元组的奖励

  • terminal: 返回给定状态是否为终端状态

  • state_info: 可选,返回给定状态的 info 字典

  • step_info: 可选,返回给定 (state, action, next_state) 元组的 info 字典

基于类的结构的目的是允许在类中定义环境常量,然后在代码本身中按名称使用它们。

目前,这主要用于内部使用。此 API 可能会发生变化,但在未来,我们打算完善它并正式将其公开给最终用户。

初始化环境常量。

transform(func: Callable[[Callable], Callable])[source]

函数转换。

initial(rng: Any, params: Params | None = None) StateType[source]

使用随机数生成器生成环境的初始状态。

transition(state: StateType, action: ActType, rng: Any, params: Params | None = None) StateType[source]

使用操作和随机数生成器更新(转换)状态。

observation(state: StateType, rng: Any, params: Params | None = None) ObsType[source]

为给定环境状态生成观察结果。

reward(state: StateType, action: ActType, next_state: StateType, rng: Any, params: Params | None = None) RewardType[source]

计算给定从 stateactionnext_state 的转换的奖励。

terminal(state: StateType, rng: Any, params: Params | None = None) TerminalType[source]

返回状态是否为最终的终端状态。

state_info(state: StateType, params: Params | None = None) dict[source]

关于单个状态的 info 字典。

transition_info(state: StateType, action: ActType, next_state: StateType, params: Params | None = None) dict[source]

关于完整转换的信息字典。

render_init(params: Params | None = None, **kwargs) RenderStateType[source]

初始化渲染状态。

render_image(state: StateType, render_state: RenderStateType, params: Params | None = None) tuple[RenderStateType, np.ndarray][source]

显示状态。

render_close(render_state: RenderStateType, params: Params | None = None)[source]

关闭渲染状态。

将基于 Jax 的函数式环境转换为标准 Env

class gymnasium.envs.functional_jax_env.FunctionalJaxEnv(func_env: FuncEnv, metadata: dict[str, Any] | None = None, render_mode: str | None = None, spec: EnvSpec | None = None)[source]

基于 Jax 的环境的转换层。

从 FuncEnv 初始化环境。

reset(*, seed: int | None = None, options: dict | None = None)[source]

使用种子重置环境。

step(action: ActType)[source]

使用动作在环境中进行操作。

render()[source]

如果 `render_mode` 为“rgb_array”,则返回渲染状态。