跳至内容

schola.ray.env.BaseEnv

类定义

class schola.ray.env.BaseEnv(
unreal_connection,
verbosity=0
)

基类: BaseEnv

包装 Schola 环境的 Ray RLlib 环境。

参数

unreal_connection

类型: UnrealConnection
与 Unreal Engine 环境的连接。

verbosity

Type: int
默认: 0
环境的详细程度级别。

属性

unwrapped

类型: MultiAgentEnv
底层多代理环境。

last_reset_obs

类型: Dict[int, Dict[str, Any]]
最后重置期间记录的观察。

last_reset_infos

类型: Dict[int, Dict[str, str]]
最后重置期间记录的信息字典。

属性

action_space

类型: DictSpace (属性)
环境的动作空间。

返回: 环境的动作空间

返回类型: DictSpace

num_envs

类型: int (属性)
封装环境中的子环境数量。

返回: 封装环境中的子环境数量。

返回类型: int

observation_space

类型: DictSpace (属性)
环境的观察空间。

返回: 环境的观察空间。

返回类型: DictSpace

方法

__init__

__init__(unreal_connection, verbosity=0)

参数

get_agent_ids

get_agent_ids()

返回子环境的代理 ID。

get_sub_environments

get_sub_environments(as_dict=False)

返回对底层子环境的引用,如果存在。

last

last()

返回最后的观察、奖励、完成/截断标志和信息……

poll

poll()

轮询环境以获取下一个观察、奖励、终止、信息以及任何 off_policy_actions(目前未使用)。

返回值

  • observations (EnvAgentIdDict[Dict[str,Any]]) – 一个字典,按环境和代理 ID 索引,包含每个代理的观察。
  • rewards (EnvAgentIdDict[float]) – 一个字典,按环境和代理 ID 索引,包含每个代理的奖励。
  • terminateds (EnvAgentIdDict[bool]) – 一个字典,按环境和代理 ID 索引,包含每个代理的终止标志。
  • truncateds (EnvAgentIdDict[bool]) – 一个字典,按环境和代理 ID 索引,包含每个代理的截断标志。
  • infos (EnvAgentIdDict[Dict[str,str]]) – 一个字典,按环境和代理 ID 索引,包含每个代理的信息字典。
  • off_policy_actions (EnvAgentIdDict[Any]) – 一个字典,按环境和代理 ID 索引,包含每个代理的 off-policy 动作。未使用。

返回类型: Tuple[Dict[int, Dict[int, Dict[str, Any]]], Dict[int, Dict[int, float]], Dict[int, Dict[int, bool]], Dict[int, Dict[int, bool]], Dict[int, Dict[int, Dict[str, str]]], Dict[int, Dict[int, Any]]]

send_actions

send_actions(action_dict)

用于将动作发送回此环境中的运行代理。动作应针对在上次 poll() 调用中返回观察的每个就绪代理发送。

参数

  • action_dict (Dict[int, Dict[int, Dict[str, Any]]]) – 按 env_id 和 agent_id 索引的动作值。

返回类型: None

stop

stop()

释放所有使用的资源。

返回类型: None

to_base_env

to_base_env(make_env=None, num_envs=1, remote_envs=False, remote_env_batch_wait_ms=0)

将 RLlib 支持的环境转换为 BaseEnv 对象。

try_render

try_render(env_id=None)

尝试渲染具有给定 ID 的子环境或所有子环境。

try_reset

try_reset(env_id=None, seed=None, options=None)

尝试重置具有给定 ID 的子环境或所有子环境。如果环境不支持同步重置,则可以返回 (ASYNC_RESET_REQUEST, ASYNC_RESET_REQUEST) 元组。

注意:使用已弃用的包装类(如 ray.rllib.env.base_env._MultiAgentEnvToBaseEnv)时会返回 MultiAgentDict,但为了与 poll() 方法保持一致,新的包装类(如 ray.rllib.env.multi_agent_env.MultiAgentEnvWrapper)会返回 MultiEnvDict。

参数

  • env_id (int | None) – 适用的子环境 ID。如果为 None,则重置整个 Env(即所有子环境)。
  • seed (None | List[int] | int) – 重置子环境(s) 时要传递给子环境(s) 的种子。如果为 None,则不重置任何现有的 PRNG。如果传递整数,即使 PRNG 已存在,也会重置它。
  • options (Dict[str, str] | None) – 重置子环境(s) 时要传递给子环境(s) 的选项字典。

返回: 一个元组,包含 a) 重置后的(多环境/多代理)观察字典和 b) 重置后的(多环境/多代理)信息字典。如果不支持,则返回 (ASYNC_RESET_REQUEST, ASYNC_RESET_REQUEST) 元组。

try_restart

try_restart(env_id=None)

尝试重启具有给定 ID 的子环境或所有子环境。

© . This site is unofficial and not affiliated with AMD.