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, optional) – 如果
True
,categorical specs 將會被轉換為 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()))