UnityMLAgentsWrapper¶
- torchrl.envs.UnityMLAgentsWrapper(*args, **kwargs)[源代码]¶
Unity ML-Agents 环境包装器。
GitHub: https://github.com/Unity-Technologies/ml-agents
文档: https://unity-technologies.github.io/ml-agents/Python-LLAPI/
- 参数:
env (mlagents_envs.environment.UnityEnvironment) – 要包装的 ML-Agents 环境。
- 关键字参数:
device (torch.device, 可选) – 如果提供,则为数据要转换到的设备。默认为
None
。batch_size (torch.Size, 可选) – 环境的批大小。默认为
torch.Size([])
。allow_done_after_reset (bool, 可选) – 如果为
True
,则在调用reset()
后,容许环境立即变为done
。默认为False
。group_map (MarlGroupMapType 或 Dict[str, List[str]]], 可选) – 如何在 tensordict 中对智能体进行分组以进行输入/输出。有关更多信息,请参阅
MarlGroupMapType
。如果未指定,则根据 Unity 环境给定的组 ID 对智能体进行分组。默认为None
。categorical_actions (bool, 可选) – 如果为
True
,则分类规范将转换为 TorchRL 等效项 (torchrl.data.Categorical
),否则将使用 one-hot 编码 (torchrl.data.OneHot
)。默认为False
。
- 变量:
available_envs – 可用于构建的已注册环境列表
示例
>>> from mlagents_envs.environment import UnityEnvironment >>> base_env = UnityEnvironment() >>> from torchrl.envs import UnityMLAgentsWrapper >>> env = UnityMLAgentsWrapper(base_env) >>> td = env.reset() >>> td = env.step(td.update(env.full_action_spec.rand()))