雙足步行者

../../../_images/bipedal_walker.gif

此環境是 Box2D 環境的一部分,其中包含有關環境的常規資訊。

動作空間

Box(-1.0, 1.0, (4,), float32)

觀測空間

Box([-3.1415927 -5. -5. -5. -3.1415927 -5. -3.1415927 -5. -0. -3.1415927 -5. -3.1415927 -5. -0. -1. -1. -1. -1. -1. -1. -1. -1. -1. -1. ], [3.1415927 5. 5. 5. 3.1415927 5. 3.1415927 5. 5. 3.1415927 5. 3.1415927 5. 5. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. ], (24,), float32)

import

gymnasium.make("BipedalWalker-v3")

描述

這是一個簡單的四關節步行機器人環境。有兩個版本

  • 普通版,具有輕微不平坦的地形。

  • 硬核版,具有梯子、樹樁、陷阱。

要解決普通版,您需要在 1600 個時間步內獲得 300 分。要解決硬核版,您需要在 2000 個時間步內獲得 300 分。

提供了一個啟發式方法用於測試。它也可用於獲取演示來學習。要運行啟發式方法

python gymnasium/envs/box2d/bipedal_walker.py

動作空間

動作是每個髖部和膝蓋 4 個關節的 [-1, 1] 範圍內的馬達速度值。

觀測空間

狀態包括船體角度速度、角速度、水平速度、垂直速度、關節位置和關節角速度、腿部與地面的接觸以及 10 個雷射雷達測距儀測量值。狀態向量中沒有坐標。

獎勵

獎勵是向前移動給予的,總計 300 分以上直到遠端。如果機器人跌倒,則獲得 -100 分。施加馬達扭矩會消耗少量分數。更優化的智能體將獲得更好的分數。

起始狀態

步行者開始站立在地形的左端,船體水平,雙腿處於相同位置,膝蓋角度略微彎曲。

Episode 終止

如果船體與地面接觸,或者步行者超出地形長度的右端,則 episode 將終止。

參數

若要使用 *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:初始版本

貢獻者

由 Oleg Klimov 創建