RoboHiveEnv¶
- torchrl.envs.RoboHiveEnv(*args, **kwargs)[源代码]¶
RoboHive gym 环境的包装器。
RoboHive 是一个使用 MuJoCo 物理引擎模拟的环境/任务集合,通过 OpenAI-Gym API 公开。
Github: https://github.com/vikashplus/robohive/
Doc: https://github.com/vikashplus/robohive/wiki
Paper: https://arxiv.org/abs/2310.06828
警告
RoboHive 需要 gym 0.13。
- 参数:
env_name (str) – 要构建的环境名称。必须是
available_envs
之一categorical_action_encoding (bool, optional) – 如果为
True
,则分类规范将转换为 TorchRL 等效项 (torchrl.data.Categorical
),否则将使用独热编码 (torchrl.data.OneHot
)。默认为False
。
- 关键字参数:
from_pixels (bool, optional) – 如果为
True
,则会尝试从环境中返回像素观察。默认情况下,这些观察将被写入"pixels"
条目下。所使用的方法取决于 gym 的版本,并可能涉及wrappers.pixel_observation.PixelObservationWrapper
。默认为False
。pixels_only (bool, optional) – 如果设置为
True
,将只返回像素观察(默认在输出 tensordict 的"pixels"
条目下)。如果设置为False
,当from_pixels=True
时,将返回观察(例如,状态)和像素。默认为True
。from_depths (bool, optional) – 如果为
True
,将尝试从环境中返回深度观测。默认情况下,这些观测将被写入"depths"
条目。需要from_pixels
为True
。默认为False
。frame_skip (int, optional) – 如果提供,表示相同的动作需要重复多少步。返回的观察值将是序列的最后一个观察值,而奖励将是跨步骤的奖励总和。
device (torch.device, optional) – 如果提供,数据将被转换到的设备。默认为
torch.device("cpu")
。batch_size (torch.Size, optional) – 由于该类不支持向量化环境,因此只有
torch.Size([])
才能与RoboHiveEnv
一起使用。要一次执行多个环境,请参阅ParallelEnv
。allow_done_after_reset (bool, optional) – 如果为
True
,则允许在调用reset()
后立即将环境设置为done
。默认为False
。
- 变量:
available_envs (list) – 要构建的可用环境列表。
示例
>>> from torchrl.envs import RoboHiveEnv >>> env = RoboHiveEnv(RoboHiveEnv.available_envs[0]) >>> env.rollout(3)