schola.gym.env.GymVectorEnv
类定义
class schola.gym.env.GymVectorEnv( unreal_connection, verbosity=0)基类: VectorEnv
一个包装了 Schola Environment 的 Gym Vector Environment。
参数
unreal_connection
类型: UnrealConnection
与 Unreal Engine 的连接。
verbosity
Type: int
默认: 0
环境的详细程度级别。
属性
reset_infos
类型: List[Dict[str, str]]
上次重置时返回的信息。
metadata
np_random
返回环境的内部 _np_random,如果未设置,则会使用随机种子进行初始化。
render_mode
reward_range
spec
unwrapped
返回基础的未包装环境。
action_space
observation_space
方法
__init__
__init__(unreal_connection, verbosity=0)矢量化环境的基类。
参数
- num_envs – 矢量化环境中的环境数量
- observation_space – 单个环境的观测空间
- action_space – 单个环境的动作空间
- unreal_connection (
UnrealConnection) - verbosity (
int)
batch_obs
batch_obs(obs)参数
- obs (
Dict[int, Dict[int, Dict[str, ndarray]]])
返回类型: Dict[str, ndarray]
call
call(name, *args, **kwargs)调用每个并行环境的方法或获取其属性。
call_async
call_async(name, *args, **kwargs)异步调用每个并行环境的方法。
call_wait
call_wait(**kwargs)在调用 call_async() 中的方法后,此函数收集结果。
close
close()关闭所有并行环境并释放资源。它还将关闭所有现有的图像查看器,然后调用 close_extras() 并将 closed 设置为 True。
此函数本身不关闭环境,应在 close_extras() 中处理。这对于同步和异步矢量化环境都是通用的。
参数
- **kwargs – 传递给
close_extras()的关键字参数
返回类型: None
close_extras
close_extras(**kwargs)清理除基类以外的额外资源。
get_attr
get_attr(name)从环境中获取属性。
参数
- name (
str) – 要获取的属性名称
返回类型: List[None]
get_wrapper_attr
get_wrapper_attr(name)获取环境的属性名称。
render
render()计算环境初始化期间由 render_mode 指定的渲染帧。
reset
reset(*, seed=None, options=None)重置所有并行环境并返回初始观测和信息的批次。
reset_async
reset_async(seed=None, options=None)异步重置子环境。此方法将返回 None。调用 reset_async() 后应调用 reset_wait() 来检索结果。
参数
- seed – 重置种子
- options – 重置选项
reset_wait
reset_wait(seed=None, options=None)检索 reset_async() 调用的结果。调用此方法之前必须始终调用 reset_async()。
参数
- seed (
None | List[int] | int) – 重置种子 - options (
List[Dict[str, str]] | Dict[str, str] | None) – 重置选项
返回: reset_async() 的结果
引发: NotImplementedError – VectorEnv 未实现该函数
返回类型: Tuple[Dict[str, ndarray], Dict[int, Dict[str, str]]]
set_attr
set_attr(name, values)在每个子环境中设置一个属性。
step
step(actions)为每个并行环境执行动作。
step_async
step_async(actions)异步执行子环境中的步骤。结果可以通过调用 step_wait() 来检索。
参数
- actions (
Dict[int, ndarray]) – 要异步执行的动作
返回类型: None
step_wait
step_wait()检索 step_async() 调用的结果。调用此方法之前必须始终调用 step_async()。
参数
- **kwargs – 矢量化实现的其他关键字参数
返回: step_async() 调用的结果
返回类型: Tuple[Dict[str, ndarray], ndarray, ndarray, ndarray, Dict[int, Dict[str, str]]]
unbatch_actions
unbatch_actions(actions)将动作从 Dict[ObsID,Batched] 解包到嵌套的 Dict[EnvId,Dict[AgentId,Dict[ObsId,Value]]],有效地将环境和代理维度移动到字典中。
参数
- actions (
Dict[int, np.ndarray]) – 要解包的批处理动作
返回: 解包后的动作
返回类型: Dict[int, Dict[int, Dict[str, np.ndarray]]]