Up 関数 reset() 作成: 2026-05-21
更新: 2026-05-21


    reset() は,MuJoCo / Isaac Gym / Bullet などの “物理シミュレータ” が提供する関数で,
      ロボットを「歩行開始に適した初期姿勢」に戻し,
      その状態ベクトル s₀ を返す

    reset() が返す「状態ベクトル s₀」の中身は,以下の通り:

    (1) 姿勢(IMU)
    ロボットの胴体(ベースリンク)の状態。
      ロール角(横倒れ角)
      ピッチ角(前後の傾き)
      ヨー角(向いている方向)
      角速度(3軸)
      加速度(3軸)
    これは ロボットが転びそうかどうか を判断するために重要。

    (2) 関節角度(joint positions)
    各関節の角度
      四足ロボットの関節数は通常
      3 (ヒップ, 膝, 足首) × 4 (脚) =12。
    reset() では,これらは 標準姿勢(立位) にセットされる。

    (3) 関節角速度(joint velocities)
    各関節の角速度(12次元)
    reset() 直後は ほぼ 0。

    (4) 足先の接地状態(foot contact)
    各脚が地面に接触しているか(0/1)
    reset() では 4脚とも接地 が一般的。

    (5) ロボットの位置・速度
      位置(x, y, z)
      速度(vx, vy, vz)
    reset() では:
      x = 0, y = 0(原点)
      z は「立位の高さ」
      速度は 0

    (6) 目標速度(commanded velocity)
    これは「ロボットに与える指令」。
      前進速度(例:0.5 m/s)
      横移動速度
      回転速度
    reset() では 0 にすることが多い。


    reset() は,エピソードが終わるたびに呼ばれる:
      ロボットが転んだ
      時間切れ
      ゴールに到達した