この記事で得られること
すべて受託開発の現場で実際に得た知見です。Isaac Simでの強化学習を検討されている方の参考になれば幸いです。
プロジェクトの背景——「不整地で歩けるロボット」が求められている
建設現場の瓦礫、プラントの配管周り、災害現場の倒壊物——**実世界の地面は平らではありません。**
ところが、多くの産業用ロボットに搭載されているメーカー標準の歩行コントローラーは、平坦な床での動作を前提に設計されています。段差に突っ込めば止まり、傾斜では滑る。
「不整地に対応した歩行ポリシーがほしい」——これが本プロジェクトの出発点でした。
対象:Unitree B2-W(車輪付き四脚ロボット・16自由度)
車輪+脚のハイブリッド四脚ロボット
脚12関節+車輪4輪 = 16自由度
想定用途:建設現場、プラント巡回、屋外点検
メーカーポリシーは平地専用
ホイールだけでは段差を越えられない
脚と車輪を地形に応じてリアルタイムに協調させる制御が必要
このロボットの難しさは「脚も車輪もある」ことです。平地ではホイールが速い。段差では脚を使うべき。では凹凸の坂道は?——**「いつ脚を使い、いつ車輪を使い、いつ両方を組み合わせるか」**を地形に応じてリアルタイムに判断する制御が求められます。
なぜ強化学習か——ルールベースでは書ききれない
「段差が来たら脚を上げる」とルールを書けばいいのでは? そう思われるかもしれません。しかし実務で試みると、以下の壁にすぐぶつかります。
強化学習なら、これらの問題をシミュレーション上で力技に近い形で解けます。**2,048体のロボットを同時に走らせ、数千パターンの地形を体験させ、報酬関数で「良い歩き方」を数値定義する。** あとはGPUが最適解を見つけてくれます。
開発環境——NVIDIA Isaac Sim × RunPod
Isaac Simを選んだ理由は**GPU並列シミュレーション**です。CPUベースのGazebo等では1体ずつしか動かせませんが、Isaac Simなら1GPU上で2,048体のロボットを同時に物理シミュレーションできます。地形もランダム生成で毎回異なるパターンを配置。これにより、実機では数年かかる試行錯誤が**1回の学習セッション(約8時間)に圧縮**されます。
クラウドGPUにはRunPodを使いました。NVIDIA RTX PRO 6000(96GB VRAM)を時間課金で借り、SSHでアクセスして学習を実行。自社でGPUサーバーを持たなくても、必要な時だけ強力な計算環境が使えます。
学習の進行——8時間で起きたこと
学習開始時、2,048体のロボットは全員転倒します。関節をランダムに動かすだけなので当然です。
しかし報酬関数が「前に進め」「転ぶな」「姿勢を保て」と方向を示し続けることで、ポリシーは段階的に進化していきます。
報酬設計——7回失敗して見つけた原則
ここが本記事で**最もお伝えしたい部分**です。
強化学習の論文やチュートリアルでは「報酬関数を設計する」と一言で片付けられますが、実務では**ここが最も時間がかかり、最も知見が溜まる工程**です。
本プロジェクトでは報酬設計をv2からv7まで**7回やり直しました。** 以下は実際にハマった局所解と、それぞれの解決策です。
| ハマった局所解 | 根本原因 | 解決策 |
|---|---|---|
| 立つが前進しない | 体高ペナルティの過剰付与。「倒れるな」が「動くな」に化けた | upward報酬に転換。ペナルティではなく「上を向いたら加点」で誘導 |
| 転倒すると学習が進まない | 転倒即エピソード終了で、挑戦的な行動が淘汰された | 転倒許容設計。転んでもペナルティのみ、エピソードは継続 |
| 車輪を使わず脚だけで移動 | 脚と車輪に同じ報酬を割り当てていた | 独立報酬。脚は静止ペナルティ→車輪駆動を促進 |
| Sim上では動くが実機で崩壊 | シミュレータ内部の速度値に依存 | Blind Policy。直線速度を観測から除外し、実機センサのみで制御 |
特筆すべきは**「転倒許容設計」**の効果です。
一般的に、ロボットの強化学習では転倒したらエピソードを即終了させます。理にかなっているように見えますが、これには副作用があります。ポリシーが「転倒しない=動かない」という安全策を学習してしまい、**いつまでも挑戦的な行動を取らなくなる**のです。
私たちはエピソード即終了をやめ、転倒してもペナルティを与えつつ学習を続行するよう設計変更しました。すると、ポリシーは「転んでも起き上がり、再び前進する」という行動を学習し始めました。**失敗を許容することで、成功の確率が上がる。** 人間の学習と似ています。
成果——数字で見る
Sim-to-Real——シミュレーションを実機につなぐ設計
シミュレーションでうまく動いても、実機で再現できなければ意味がありません。このギャップ(Sim-to-Realギャップ)を最小化するために、学習段階から以下を組み込んでいます。
この手法をヒューマノイドにも展開した
B2-Wで確立した設計原則——転倒許容・Blind Policy・カリキュラム学習——は、その後**29自由度のヒューマノイドロボット Unitree G1**にも展開しました。
G1では最新のオフポリシー手法FastSACを採用し、PPOでは10時間回しても到達できなかった不整地歩行を**わずか約15分**で達成。150〜400Nの外力にも耐えるPush Recovery能力も確認しています。
まとめ——Isaac Sim × 強化学習で「歩けないロボット」を変える
本プロジェクトを通じて、いくつかの実務的な教訓が得られました。
Isaac Simでの強化学習開発を検討されている方へ
「自社のロボットでも試したい」「環境構築から相談したい」「PoCの費用感を知りたい」——そうした段階からのご相談を歓迎しています。
チームゼットでは、**Isaac Simのシミュレーション環境構築、報酬設計、強化学習の実行、Sim-to-Real対策**まで、ワンストップで受託開発しています。最短1ヶ月のPoCからスタート可能です。