双足行走机器人¶
此环境是 Box2D 环境的一部分,其中包含有关该环境的常规信息。
动作空间 |
|
观测空间 |
|
import |
|
描述¶
这是一个简单的四关节行走机器人环境。该环境有两个版本:
普通版 (Normal):地形稍微不平坦。
硬核版 (Hardcore):包含梯子、树桩和坑洞。
要通过普通版,需在 1600 个时间步内获得 300 分。要通过硬核版,需在 2000 个时间步内获得 300 分。
提供了一个启发式算法供测试使用,同时也方便获取演示数据进行学习。运行启发式算法:
python gymnasium/envs/box2d/bipedal_walker.py
动作空间¶
动作是 4 个关节(双髋和双膝)的电机速度值,范围在 [-1, 1] 之间。
观测空间¶
状态由以下内容组成:主体倾角速度、角速度、水平速度、垂直速度、关节位置和关节角速度、腿部与地面的接触情况,以及 10 个激光雷达 (lidar) 测距读数。状态向量中不包含坐标信息。
奖励(Rewards)¶
奖励由前进距离决定,全程总分最高可达 300 多分。如果机器人跌倒,获得 -100 分。施加电机扭矩会扣除少量分数。更优化的智能体会获得更高的分数。
起始状态¶
行走机器人起始于地形左端,保持主体水平,双腿位置相同且膝盖有轻微弯曲。
回合终止(Episode Termination)¶
如果机器人主体接触地面,或者超过了地形的右端,任务将终止。
参数¶
要使用硬核 (hardcore) 环境,需要指定 hardcore=True 参数。
>>> import gymnasium as gym
>>> env = gym.make("BipedalWalker-v3", hardcore=True, render_mode="rgb_array")
>>> env
<TimeLimit<OrderEnforcing<PassiveEnvChecker<BipedalWalker<BipedalWalker-v3>>>>>
版本历史¶
v3:返回最近的激光雷达追踪点而非最远的;视频录制速度更快。
v2:统计消耗的能量。
v1:腿部现在报告与地面的接触情况;电机具有更高的扭矩和速度;地面摩擦力更大;激光雷达渲染不那么抖动。
v0:初始版本。
制作人员(Credits)¶
由 Oleg Klimov 创建