研究トップへ
Physical AI / Reinforcement Learning

強化学習と sim-to-real による
実機ロボット制御

シミュレーションで獲得した方策を実機で本当に動かすところまでやることを重視して取り組んでいます。 四足ロボットの歩行方策の sim-to-real、自作ロボットでの学習、 ヒューマノイド全身制御のシミュレーション環境構築が主な内容です。

強化学習sim-to-real Isaac Sim / Isaac LabGenesis ドメインランダマイゼーション報酬設計
PLATFORM
Unitree Go2(四足)/ 自作倒立振子ロボット
SIMULATOR
Genesis, Isaac Sim, Isaac Lab
SCOPE
方策学習 → 実機の関節モーター制御まで
ROLE
個人(環境構築 / 学習 / 実機検証)

なぜ実機までやるのか

主研究であるモーション生成は、出力が「見た目として自然か」で評価されがちです。 しかし実際の身体で成立するかどうかは別の問題で、接地や重心が破綻していても 映像としては自然に見えることがあります。

この差を体で理解しておきたかったため、シミュレーションで学習した方策を 実機のモーター制御まで持っていくことを自分の課題に据えました。 生成側と制御側の両方を触れることが、研究の判断材料になると考えています。

四足ロボットの歩行方策(sim-to-real)

Genesis および Isaac Sim 上で四足ロボット Unitree Go2 の歩行方策を強化学習で獲得し、 実機の関節モーター制御への展開まで実施しました。

  • 学習環境の構築:ロボットモデル・観測・行動空間・報酬を定義し、並列環境で方策を学習
  • ドメインランダマイゼーション:摩擦・質量・外乱などを学習中にばらつかせ、実機との差に耐える方策を作る
  • 報酬関数のチューニング:前進速度だけを報酬にすると不自然な歩容に収束するため、姿勢・接地・エネルギーの項を組み合わせて調整
  • 実機での検証:シミュレーションで安定していた方策が実機ではどう崩れるかを確認しながら反復
実機で分かったこと:sim-to-real の成否を分けたのは方策の学習アルゴリズムそのものより、 ドメインランダマイゼーションの設計と報酬関数の重みでした。 シミュレーション上の性能を上げる調整と、実機で崩れない調整は別物だという感覚は、 実機を触らないと得られなかったと思います。

自作ロボットでの強化学習

既製のロボットだけでなく、オリジナル設計の倒立振子ロボットでも強化学習を実施しました。 自分で機体を設計すると、質量分布やモーター特性といったパラメータを自分で把握できるため、 シミュレーションと実機の差がどこから来るのかを切り分けやすいという利点があります。

ヒューマノイド全身制御の環境構築

参照モーションをヒューマノイドに追従させる全身制御の枠組みを、 Windows ネイティブのシミュレーション環境で動作検証しました。 Linux 前提の依存関係をパッチし、可視化ありの実行とヘッドレス学習を同じ設定から切り替えられるよう整備しています (詳細は 制作物ページ)。

この環境で方策が破綻するケースと安定するケースを見比べると、 参照モーションが物理的に無理をしている箇所ほど追従が崩れるという傾向がはっきり見えます。 これは主研究の生成モーションを評価する視点としてそのまま使えるものです。

主研究とのつながり

モーション生成の評価に「物理シミュレータ上で追従できるか」という軸を持ち込めることが、 この取り組みの一番の意味だと考えています。 見た目の自然さと物理的な妥当性を別々に測れることは、 生成モデルの改善方針を決めるうえで有効な材料になります。

将来的には、生成した動作をロボットの参照軌道として与えて実機で再生するところまでを つなげたいと考えており、そのための足場としてこれらの環境を整えています。