快捷方式

MultiThreadedEnvWrapper

torchrl.envs.MultiThreadedEnvWrapper(*args, **kwargs)[原始碼]

基於 envpool 的多執行緒環境封裝器。

GitHub: https://github.com/sail-sg/envpool

論文: https://arxiv.org/abs/2206.10558

引數:
  • env (envpool.python.envpool.EnvPoolMixin) – 要封裝的 envpool 例項。

  • categorical_action_encoding (bool, 可選) – 如果為 True,分類規格將轉換為 TorchRL 等效項 (torchrl.data.Categorical),否則將使用獨熱編碼 (torchrl.data.OneHot)。預設為 False

關鍵字引數:
  • disable_env_checker (bool, 可選) – 僅適用於 gym > 0.24。如果為 True(這些版本的預設值),則不會執行環境檢查器。

  • frame_skip (int, 可選) – 如果提供,表示重複同一動作的步數。返回的觀測值將是序列中的最後一個觀測值,而獎勵將是所有步數的獎勵總和。

  • device (torch.device, 可選) – 如果提供,資料將被轉換到的裝置。預設為 torch.device("cpu")

  • allow_done_after_reset (bool, 可選) – 如果為 True,則允許環境在呼叫 reset() 後立即處於 done 狀態。預設為 False

變數:

batch_size – 同時執行的環境數量。

示例

>>> import envpool
>>> from torchrl.envs import MultiThreadedEnvWrapper
>>> env_base = envpool.make(
...     task_id="Pong-v5", env_type="gym", num_envs=4, gym_reset_return_info=True
... )
>>> env = MultiThreadedEnvWrapper(envpool_env)
>>> env.reset()
>>> env.rand_step()

文件

訪問全面的 PyTorch 開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源