「ロボットを作ってヒトを知る」ための象徴的なデモンストレーションとして野球のバッティングが選ばれました。バッターはピッチャーの投げるボールを見て、軌道を予測して全身をたくみに使って力強くバットを振ります。これは認識、予測、制御が三位一体となった高度な感覚運動制御です。本プロジェクトでは、ボールを見て打つという一連の動作をロボットで実現することを最初の目標としました。
ヒトのような感覚運動制御を研究するため、高速カメラや外部カメラによって投げられたボールを認識することは「行わない」という拘束を設定しました。しかしボールが届いてからバットをスイングしたのでは遅いので、ボールの軌道を予測してバットを振ります。
ロボットが自分の目で投げられたボールを認識して、コースを予測しバットをスイングするのです。頭部に搭載されたカメラ(IMG1)は広角系と望遠系の2系統で、それぞれのフレームレートは30fpsです。この視覚システムのみを用いてボールの到達位置と時間を逐次的に学習するアルゴリズムを実装しています。これまで、初期位置・速度情報のみに基づいて到達時間はほぼ正確に、位置は非常に大雑把な推定をできるようになっています。
ピッチャーが投げるボールの軌道を正確に予測するために頭部をなるべく動かさない必要があります。通常のバランス制御を用いると、ロボットは転倒しませんが、姿勢の揺動が大きいことがわかりました。
重心の推定値はさまざまな要因で常に変動しているので、ボールの軌道予測に集中するときに揺動のある重心フィードバックは邪魔になります。そこで、スイングするときに外乱は存在せず姿勢は一定であることを考慮して、剛性制御を併用しました。これによって、揺動を低く抑えたスイングが達成できました。(動画参照)
上で示した実験においては、下半身は見た目にはほとんど動いていませんが、人間の本来のスイング動作においては時間変化するパターン(フォーム)として神経系に記憶されていると考えられます。我々のロボットは冗長な関節を有しているため、バランスを行いながら運動を直接教示することも可能です。(動画参照)