
Unitree G1(29自由度)と3指ハンド Dex3 で、円柱ワークを掴んで指定位置に置く動作を模倣学習(ACT)で獲得。学習した方策は頭部カメラ映像と関節角だけを入力に自律で動作し、物体の位置情報は一切与えていません。NVIDIA Isaac Lab 上でデータ収集から学習・評価までクラウドGPU 1台で完結。ランダム位置での自律成功率 60%、把持成功率 90%(シミュレーション)。
Unitree G1 は29自由度のヒューマノイドロボットで、手先に3指ハンド Dex3 を装着できます。本プロジェクトでは、卓上の円柱ワークを掴んで持ち上げ、指定位置に立てて置く一連の動作を、模倣学習(ACT)で獲得しました。学習した方策の入力は頭部カメラの映像と自分の関節角だけです。ワークの位置は教えていません。
学習済み方策による自律動作(ワークはランダム位置・等倍速・シミュレーション)。10回中6回が成功
対象ロボットと環境
「学習した方策が本当に動かしている」とはどういうことか
ロボットのデモ動画には、あらかじめ書いたプログラムをそのまま再生しているものも少なくありません。本件はそれとは違います。
まず、シミュレータからワークの真の座標を受け取れるスクリプト(教師)を作り、pick & place を150回成功させて記録しました。記録するのは頭部カメラ映像と関節角だけで、ワークの座標は記録に含めません。このデータで ACT(Action Chunking with Transformers)を学習させると、方策は「映像と関節角から次の動き」を覚えます。
評価では、ワークをランダムな位置に置き、方策だけでロボットを動かします。誰も位置を教えないので、方策は映像からワークを見つけて掴むしかありません。教師は評価に関与しません。
方策の入力になっている頭部カメラ映像。物体検出などの前処理はなく、この映像をそのまま学習
結果
左: 前バージョン(6cm立方体・学習済み方策・引きずりあり)/右: 本件(円柱・学習済み方策)。いずれも等倍速
遠回りの記録 — 最初の3週間は掴めなかった
最初のワークは 6cm の立方体でした。教師の設計を40回以上やり直し、ようやく掴めるようになって学習も一度は通りましたが(自律把持 40%)、動画にできる品質ではありませんでした。掴む前にワークを10cm以上引きずってしまうからです。
原因を突き止めるため、ハンドの STL メッシュから包絡モデルを作って幾何を検査したところ、このハンドの掌と指の胴体は、6cm 立方体を上から挟むには物理的に干渉することが分かりました。真上・側方・角柱への変更、いずれも干渉ゼロの姿勢は存在せず、唯一通るのは「口の正面から挿入する」向きだけでした。Unitree が同梱している Dex3 用タスクは、まさに直径 36mm の円柱を対象にしていました。ハンドの設計意図に合わせてワークを円柱に変えたところ、教師はその日のうちに掴めるようになり、引きずりは 104mm から 22mm に減りました。
数字の読み方
失敗から学んだこと
実機・お客様の課題への展開
本件のパイプライン(環境構築・教師の設計・データ収集・学習・評価・動画化)は、ワークやロボットを変えてもそのまま使えます。実機の Unitree G1 と Dex3 をお持ちの場合は、シミュレーションで作った方策を実機に持ち込む Sim-to-Real のフェーズからご相談いただけます。ロボットをお持ちでない場合も、シミュレーション上での実現性検証(PoC)から始められます。