雙足步行者

../../../_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)

匯入

gymnasium.make("BipedalWalker-v3")

描述

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

  • 普通版,地形略微不平坦。

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

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

提供了一種用於測試的啟發式方法。 它也可用於獲取學習的示範。 要執行啟發式方法

python gymnasium/envs/box2d/bipedal_walker.py

動作空間

動作是每個臀部和膝蓋的 4 個關節的電機速度值,範圍為 [-1, 1]。

觀察空間

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

獎勵

獎勵是向前移動,總共可達遠端的 300 多分。 如果機器人跌倒,則會獲得 -100 分。 施加馬達扭矩會損失少量分數。 更優化的智能體將獲得更好的分數。

起始狀態

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

回合終止

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

參數

要使用 *硬核* 環境,您需要指定 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 創建