ヒューマノイド「G1」が人間っぽいダンスを覚えるまで
ヒューマノイドロボットのG1には開発者向けの情報が多いため、ヒューマノイドを使って何か二次開発してみるならまずこれ、というスタンダードな機体といえます。
ショップブースの前に立つUnitree G1
彼(G1)には、デフォルトでもなかなかキレのあるダンスやカンフーを披露するコマンドが用意されているのですが、今回は音楽に合わせて、新たに振り付けを覚えてもらいます。
G1が新しいダンスを覚えるまでの全体的な流れは、次のようになります。
1:ダンサーによるダンスをモーションキャプチャし、関節データを取得する
2:関節データをG1の関節構造に合うよう修正する(リターゲティング)
3:シミュレーター上でダンスを強化学習する
4:実機にデプロイ(学習結果をロボット本体に反映)し、現実空間で踊らせてみる(うまくいかなければ、1~3のいずれかを修正して再実行)
順に見ていきます!
G1が新しいダンスを覚えるまでの全体的な流れは、次のようになります。
1:ダンサーによるダンスをモーションキャプチャし、関節データを取得する
2:関節データをG1の関節構造に合うよう修正する(リターゲティング)
3:シミュレーター上でダンスを強化学習する
4:実機にデプロイ(学習結果をロボット本体に反映)し、現実空間で踊らせてみる(うまくいかなければ、1~3のいずれかを修正して再実行)
順に見ていきます!
ダンサーによるダンスをモーションキャプチャして、関節データを得る
今回のダンスを学習するにあたっては、プロのダンサーと撮影スタジオの協力を得て、人間の踊りを関節データとして取得しました。
Bling-Bang-Bang-Bornだとこんな感じです。
Bling-Bang-Bang-Bornだとこんな感じです。
さすが、綺麗な踊りで、データも乱れなく取得できていますね……!
via www.youtube.com
しかし、実際にG1が踊るためのデータにするには、G1の身体構造に合わせたデータへ変換する必要があります。
関節データをG1の関節構造に合うように修正する
われわれが所持しているG1は、29自由度(モーター29基)を備えており、先ほどの関節データをこれらのモーターの角度の制御でなるべく再現する必要があります。
このような技術を「リターゲティング」と呼びます。リターゲティングは、人からロボットへの変換だけでなく、自由度や構造の違う別のロボットへ動きを移す際にも用いられます。
実際にリターゲティングした様子がこちら。
このような技術を「リターゲティング」と呼びます。リターゲティングは、人からロボットへの変換だけでなく、自由度や構造の違う別のロボットへ動きを移す際にも用いられます。
実際にリターゲティングした様子がこちら。
ダンサーの関節データをUnitree G1にリターゲティング
via www.youtube.com
見た目では少しわかりづらいかもしれませんが、膝と足首の動きに注目してみてください。
G1には、膝を横に動かしたり、足首を左右にひねったりする自由度がないため、左右の脚を交互に曲げる動きで再現しています。
ちなみに、動画を見返すと、元の関節データでは、膝が身体の中心(正中線)を越える程度に内側に入っているのですが、残念ながらG1には不可能な動きです。
改めて考えてみると結構違う動きなんですが、元のダンスが頭に入っていると、意外と気付きにくいかもしれません。
さて、これで学習の準備が整いました。
G1には、膝を横に動かしたり、足首を左右にひねったりする自由度がないため、左右の脚を交互に曲げる動きで再現しています。
ちなみに、動画を見返すと、元の関節データでは、膝が身体の中心(正中線)を越える程度に内側に入っているのですが、残念ながらG1には不可能な動きです。
改めて考えてみると結構違う動きなんですが、元のダンスが頭に入っていると、意外と気付きにくいかもしれません。
さて、これで学習の準備が整いました。
シミュレーター上でダンスを強化学習する
ここからはシミュレーターとGPUの出番です。
このダンスをロボットが転ばずに踊り切れるよう、大量の試行を繰り返し、修正していきます。
この「転ばずに」がポイントです。
実は、先ほどの関節データをそのままロボットにデプロイ(実装)すると、大抵の場合、すぐに転んでしまいます。
なぜなら、「関節の初期角度」や「床との摩擦」、「風・空気抵抗」、「モーターの温度」など、ロボットにとっては繊細な条件の変化(外乱)がたくさん存在するためです。
つまり、
1:関節データにピッタリと合う(=理想的なダンスとなる)ようモーター角度を制御したい
2:転びそうになったら、理想的なダンスからなるべく遠ざからないようにバランスを取りたい
という、2つの狙いを、ロボットに同時に覚えてもらう必要があります。
このような場合に、強化学習がよく用いられます。
ロボットにおける強化学習では、シミュレーター上で試行錯誤を重ねながら、AIが「この時はこうしておいた方がバランスが良さそう」「もし後ろから押されたら、こんな風にこらえよう」といったさまざまな要求を同時に満たす「踊り方の作戦」のようなものを見つけます。
その結果、ダンス中にロボットを押したり引いたりしても、転ばずに踊り切るようなロバストなダンス(しっかりと安定したダンス)を実現できます。
実際のシミュレーター上での学習の様子がこちら。
このダンスをロボットが転ばずに踊り切れるよう、大量の試行を繰り返し、修正していきます。
この「転ばずに」がポイントです。
実は、先ほどの関節データをそのままロボットにデプロイ(実装)すると、大抵の場合、すぐに転んでしまいます。
なぜなら、「関節の初期角度」や「床との摩擦」、「風・空気抵抗」、「モーターの温度」など、ロボットにとっては繊細な条件の変化(外乱)がたくさん存在するためです。
つまり、
1:関節データにピッタリと合う(=理想的なダンスとなる)ようモーター角度を制御したい
2:転びそうになったら、理想的なダンスからなるべく遠ざからないようにバランスを取りたい
という、2つの狙いを、ロボットに同時に覚えてもらう必要があります。
このような場合に、強化学習がよく用いられます。
ロボットにおける強化学習では、シミュレーター上で試行錯誤を重ねながら、AIが「この時はこうしておいた方がバランスが良さそう」「もし後ろから押されたら、こんな風にこらえよう」といったさまざまな要求を同時に満たす「踊り方の作戦」のようなものを見つけます。
その結果、ダンス中にロボットを押したり引いたりしても、転ばずに踊り切るようなロバストなダンス(しっかりと安定したダンス)を実現できます。
実際のシミュレーター上での学習の様子がこちら。
rl video step 1700000
シミュレーション中の様子
via www.youtube.com
現在のわれわれの環境では、約4000体分の試行を並列で計算しており、大量のロボットが同時に動いています。また、振り付け全体を細かく区切って、それぞれを別々の個体に割り当てて学習させています。
シミュレーションの様子の動画で、止まっている個体が多いのは、振り付けの前後に、静止しているモーションが含まれているためです。ちなみに、このような動きに至るまで、シミュレーター上ではAIが「次にどんな動きをするべきか?」という判断を累計で約50億回行っており、その計算におよそ1日要しています。
1体ずつ学習させた場合には数年かかる規模の試行を、1日程度でこなせてしまうわけですから、並列計算のパワーを感じますね。
さて、話を戻して、大体想像していた動きがここで確認できたら、いよいよ実機にデプロイします!
シミュレーションの様子の動画で、止まっている個体が多いのは、振り付けの前後に、静止しているモーションが含まれているためです。ちなみに、このような動きに至るまで、シミュレーター上ではAIが「次にどんな動きをするべきか?」という判断を累計で約50億回行っており、その計算におよそ1日要しています。
1体ずつ学習させた場合には数年かかる規模の試行を、1日程度でこなせてしまうわけですから、並列計算のパワーを感じますね。
さて、話を戻して、大体想像していた動きがここで確認できたら、いよいよ実機にデプロイします!
実機にデプロイし、現実空間で踊らせてみる
……と見出しとして掲げましたが、この結果が、冒頭で紹介したダンスです。
ヒューマノイドロボットが「Bling-Bang-Bang-Born」踊る時代がきた!!
— GMO AI&ロボティクス商事 (@GMO_AIR) December 3, 2025
キレッキレすぎる🤖💃#2025国際ロボット展 #国際ロボット展 #GMOインターネットグループ #CreepyNuts pic.twitter.com/IOEUEHLpn6
シミュレーター上で高速に学習を行い、得られた動作を実機に搭載する技術は「Sim-to-Real」と呼ばれます。
当然ながら、現実世界に固有の環境ではうまく適応できません。そのため、シミュレーターと現実世界のギャップを減らすことが、フィジカルAIの成功の鍵といえるでしょう。
当然ながら、現実世界に固有の環境ではうまく適応できません。そのため、シミュレーターと現実世界のギャップを減らすことが、フィジカルAIの成功の鍵といえるでしょう。

真次彰平
【GMOインターネットグループ デベロッパーエキスパート / GMOインターネットグループ グループ研究開発本部AI研究開発室共同研究推進グループ】
リサーチサイエンティスト、2024年 GMOインターネットグループ株式会社へ新卒入社。
ヒューマノイドにおける強化学習を用いたモーションの獲得に関する研究に従事しております。












