ヒューマノイドロボットと強化学習の取り組み
  • 産業と技術革新の基盤をつくろう

トヨタ自動車 未来創生センターでは、将来のヒューマノイドロボットの社会実装を目指し、AI技術を活用した制御の研究を進めています。今回は、強化学習を活用したヒューマノイドロボットの運動制御の研究に取り組む伊藤と森田に、研究内容をヒアリングしました。

概要

-まず、強化学習について簡単に教えてください。

伊藤
強化学習は機械学習の一種で、AIがある環境下において試行錯誤を繰り返しながら、あらかじめ設定された報酬を最大化する方法を自ら見つけ出す学習アルゴリズムです。近年は、シミュレーション環境上でロボットに大量の経験をさせ、その学習結果を実際のロボットに適用する「Sim2Real」という方法が広まってきています。シミュレーションで再現されるさまざまな条件や状況を幅広く学習できるため、現実でも高い制御性能を発揮することが期待できます。

-今回はどのような課題に取り組まれたのでしょうか?

森田
私たちが制作している試験機を使用して、「歩行」と「バスケットボールのドリブル」というふたつの動作習得に取り組みました。歩行はヒューマノイドロボットにとって基本となる動作であり、ドリブルは私たちが研究しているAIバスケットボールロボット「CUE*1」への応用を視野に入れています。
今回の実験に使用した試験機 シミュレーション環境(写真左)で学習し、実機(写真右)で評価する
今回の実験に使用した試験機
シミュレーション環境(写真左)で学習し、実機(写真右)で評価する

歩行タスクへの挑戦

-ヒューマノイドロボットの歩行について、どのような強化学習を適用したのですか?

伊藤
歩行の強化学習では、「目標速度に近い歩行だと加点」「足が滑ると減点」という報酬を設定しました。ヒューマノイドロボットはシミュレーション環境で試行錯誤を繰り返しながら、歩行動作を習得していきました。学習中は数千体のロボットをシミュレーション上に用意して並列で歩行の学習を進めていきます。1~2時間程度の学習でバランスを取り歩行するところまで習得が可能でした。シミュレーション環境で安定的に前進、後進、旋回できる歩行動作を習得させたのち、その結果を実機に適用し、歩行の安定性を確認しました。すぐに安定的な歩行動作を実現するのは困難でしたが、実機での挙動を少しずつ改良しながら歩行を達成しました。
シミュレーション環境で歩行の学習を行っているようす

-苦労した点を教えてください。

森田
シミュレーション環境と実機でロボットの挙動が大きく変わってしまう、いわゆる「Sim2Real Gap」に苦労しました。実機で安定して動作させるために、いくつかの対策を重ねて課題を解決しました。具体的には、エンコーダ(関節の回転量を測るセンサ)やIMU(傾きや動きを測るセンサ)のセンサ値にノイズを加えたり、床の摩擦をランダムに変化させたりして環境のばらつきを再現する「Domain Randomization」を導入しました。また、実機のアクチュエータ(関節を動かすモータなどの駆動部)を実際に動かして取得したデータをもとに、シミュレーションのアクチュエータモデルを最適化し、実機とシミュレーションの挙動を合わせる「Real2Sim」にも取り組みました。これらの対策は実際に効果を発揮しました。
Real2Sim : 実機データと一致するようにシミュレータのアクチュエータモデルを最適化 関節角指令を与えたときの実際の角度の軌道が実機と合うようシミュレータ内の関節パラメータ(静摩擦・動摩擦・粘性摩擦・慣性)をブラックボックス最適化によって求める
Real2Sim : 実機データと一致するようにシミュレータのアクチュエータモデルを最適化
関節角指令を与えたときの実際の角度の軌道が実機と合うようシミュレータ内の関節パラメータ(静摩擦・動摩擦・粘性摩擦・慣性)をブラックボックス最適化によって求める
森田
もうひとつ重要な点は、シミュレーション環境で学習した動作が、実機でも実現可能かどうかを確認する必要があった点です。たとえば、シミュレーション上では安定して歩いているように見えても、実際は制御指令が振動していたり、すり足や急激な脚の上げ下げをしていたり、実機では再現しにくい動作を学習してしまうことがありました。そこで、新しい歩行モデルを学習するたびに実機で検証し、うまく歩かない場合は仮説を立てて対策を加え、再度学習して実機で試すというサイクルを繰り返しました。このサイクルを繰り返すことで、徐々に実機でも安定した歩行が可能になりました。このように、実機での歩行の実現は、シミュレーション環境での安定的な歩行よりもはるかに難しい課題でした。
実機での歩行、押されても踏ん張るようす

ドリブルタスクへの挑戦

-続いて、ドリブルについてお伺いします。ロボットを制御するにあたり、ドリブルと歩行とではどのような点が異なるのでしょうか?

伊藤
ドリブルは、ロボット自身の動作に加えて外部環境であるボールを操作する必要があります。ドリブルの最中、ボールは静止せず常に動いているため、ボールの運動を正確に理解し、ロボット自身が適切に動くことが求められます。特に、ロボットが外部環境に触れるタイミングの制約が大きく異なります。すなわち、歩行ではロボットが地面に足をつけるタイミングは比較的自由に選べますが、ドリブルではボールに触れるタイミングが非常に限定的(瞬間的)であり、動作の選択が非常に難しい課題となります。

-ドリブルは、瞬間的なイベントに対してボールの運動とロボット自身の動きを厳密に連動させる必要があり、難しそうですね。強化学習の報酬はどのように決めましたか?

森田
ドリブルの報酬を決めるのは、歩行に比べて大変難しいと感じました。歩行は先行研究が豊富で参考情報も多く、報酬も身体の動きのみ考えて設計すればよかったのに対し、ドリブルは動作を正確に評価する報酬設計が困難でした。ドリブルでは、ボールを適切な速度や方向で打ち出し、継続的にボールとの接触を維持するための制御が求められますが、これらを定量的に評価する指標を設定し、ロボットに適切な報酬を与えることは簡単ではありませんでした。ほかにも、手動での報酬設計では不自然なドリブル動作になりやすいという問題もありました。また、歩行に取り組んでいた段階から、報酬を人間が試行錯誤で調整し続ける方法には手間もかかるため課題を感じていました。

-その問題についてどのように対処しましたか?

伊藤
人間の動作データを活用する方法を採用しました。具体的には、人がドリブルをしている動きをモーションキャプチャで記録し、得られた関節角度や動作速度をロボットの骨格構造や可動域に合わせて変換しました。こうして作成したデータを、ロボットが模倣すべき参照動作として設定し、その参照に近づくほど高い報酬を与える条件で学習しました。これにより、個別の評価指標を細かく設計しなくても、自然で安定した動作を学習させることが可能になりました。また、接触タイミングについても、人間の動作データからボールに触れるべき瞬間を明示することで、ロボットが適切なタイミングで接触できるよう学習させました。結果として、実機で再現可能でありながら、人間のような自然なドリブル動作を獲得することができました。
ドリブルの学習パイプライン

-ドリブルのSim2Realでの苦労した点を教えてください。

森田
特に苦労したのは、ボール認識のギャップでした。シミュレーション環境ではボールの位置や速度といった正確な情報を直接取得できますが、実機ではカメラと認識アルゴリズムを用いて推定する必要がありました。ドリブル中はボール状態を正確に把握することが求められるため、この推定に含まれる認識誤差や遅延が大きく影響しました。その結果、シミュレーションではうまくいく動作が実機では再現できず、Sim2Realの成功率が低下してしまいました。そこで、実環境におけるカメラ認識の誤差や遅延をモーションキャプチャで評価し、その特性をシミュレーション側にも組み込むことで現実に近い観測環境を再現しました。これにより実機でのドリブルも成功するようになりました。
実機でドリブルをするようす。頭のカメラでボールを認識している

-今後の展望についてお聞かせください。

伊藤
今回、試験機で検証したドリブル動作を、次はCUEでも実現したいと考えています。まずは今回構築した学習フレームワークをCUEに展開し、実機でも安定してドリブルできるところまで仕上げたいです。そのうえで、バスケットボール選手のような躍動感のある、見ていてわくわくする動きに近づけていけるよう取り組んでいきます。近いうちに、CUEが生き生きとプレーする姿をお見せできるよう頑張ります。
森田
強化学習に限らずさまざまな技術を組み合わせながら、人のように多様なタスクをこなし、あらゆる状況に柔軟に対応できるような汎用的なヒューマノイドの制御フレームワークの研究に注力します。世界の技術が目覚ましく進化していますが、一日でも早くヒューマノイドが人の隣にいるのが当たり前になる未来を目指し、我々がその先頭を走れるようスピード感を持って研究に取り組みます。

著者

左から順に森田、伊藤
左から順に森田、伊藤

伊藤 孝浩(いとう たかひろ)
未来創生センター R-フロンティア部 ヒューマノイドロボット研究領域
2024年11月トヨタ自動車キャリア入社。

森田 光紀(もりた みつき)
未来創生センター R-フロンティア部 ヒューマノイドロボット研究領域
2024年トヨタ自動車新卒入社。

本件に関するお問い合わせ先

未来創生センター
メールアドレスfrc_pr@mail.toyota.co.jp

関連コンテンツ