スポーツロボットの作り方
ヒト型ロボットの作り方について紹介します。
人間と対等にスポーツで競うロボットを作る方法として、大きく分けて2つのやり方があります。
1. ボトムアップな方法
対戦できる簡単なロボットを作って、人間と対戦させて欠点を洗い出し、順次改良していく方法です。これは、ボトムアップなやり方と言えると思います。
例1:投手ロボット
ピッチングマシンに打者の動きを理解させ、人間のバッテリーのように配球することから始め、試合の状況を付け加えるとか、腕で投げる、全身にする。
例2:卓球ロボット
車輪やスライダで動く、ただ打ち返すだけの卓球ロボットから使い始め、それに腕や脚をつけたり、顔や目をつけたり、打てる球種を増やしたり、運動速度を増やしたり、読み合いの能力を増やすなどして、高度化することが考えられます。
実際に人間とロボットが読みあえば、ロボットの腕や顔が読み合いにどのような働きをするのかが分かるはずです。視線があると動きが読まれる、腕があると予備動作から次の行動の可能性が狭まるなどです。読み合いに必要な人間運動の予測については、以前紹介しました。
ボトムアップな方法は、着実に進めることができ、実際のやり取りの中でロボットを評価できます。しかし、進めている間にはいつ完成に至るか分かりません。
2. トップダウンな方法
人間の運動を解析してロボットに必要な運動性能を調べ、その性能をもつロボットを作る方法です。
一般的なロボットの設計法
ロボットを設計する時、多くの場合、ロボットにどのような作業をさせるのかを最初に決めます。
例1:車輪移動ロボット
どんな場所を移動するか、屋外か、街中か、瓦礫の上か、砂利道か、屋内か、狭い部屋か、広い通路か、など。
何のために移動するか、人間を運ぶのか、被災者を探すのか、荷物を運ぶのか、料理を運ぶのか、パトロールなのか、など。
例2:ロボットアーム
基板の製造なのか、部品の組み立てなのか、どの程度の大きさの物体を扱うのか、硬いのか柔らかいのか、作業はどのくらいの速度でやるのか、どのくらいの大きさの空間で作業するのか、など。
同様に、スポーツロボットを設計する場合にも、どんな移動や作業をするのかを決める必要があります。設計では、ボールの重さや大きさや柔らかさを考えるだけではなく、ヒト型の身体をロボットが持つならば、必要な関節数やトルクや速度や応答速度を決める必要があります。
スポーツ運動の計測
スポーツロボットに行わせる運動を決めるのに、人間の運動が参考にできます。スポーツデータに関しては以前記事を書きました。
競技者の代表的な運動の特徴については調べられています。
短距離選手のスタート時の床反力や移動速度の変化、野球のピッチャーの手の速度やバットの速度、バスケット選手のサイドステップの切り返しの早さなどです。
特定の動作の特徴を調べ、それを再現するロボットを作れば、その動作をするロボットはできます。その動作が身体の運動性能を最大限に発揮する場合には、多くの動作をロボットは人間と同等に行えるかも知れません。
しかし、それは偏るかも知れませんし、全体のうちのどれだけの動作をやれるかも分かりません。試合や練習を人間と対等に行うロボットを作るには、人間が行う運動を網羅的に調べる必要があるのです。
このため、練習や試合の競技者の全身運動を計測し、解析して、どの関節がどれだけのトルクを発生してるか、速度は、応答時間は、それぞれどの程度必要なのかを調べる必要があります。また、人間と同等に動くには、どのくらいの数の関節が必要なのか。例えば、膝、首、肩甲骨は必要なのかなどを明らかにできます。
解析によって、試合における身体の動きだけでなく、適切な行動の選択についても明らかになるはずです。ゲームとしてのスポーツを機械が解き明かすことについては、以前紹介した通りです。
トップダウンな方法は、設計の目標が明確に分かり、目標を達成し次第、人間と対等なロボットを作れる見込みがあります。しかし、見込みは見込みなので、本当に人間と同等に運動出来るかは、実際にやってみるまで分かりません。
実際には、両方を併用し、交互に繰り返す必要があるでしょう。説明の分かりやすさのため、やるべきことを分けるため、今回は2つの方法として便宜的に分けました。
私が進めていること
スポーツロボットを実現するため、私はトップダウンな方法とボトムアップな方法の両方を行っています。
つまり、人間の実際に競技させるための簡単なロボットを開発しています。これまでに、バレーボールのフライングレシーブをするロボットを開発しました。その技術を応用しています。
加えて、人間の全身運動を解析して原理に迫ると同時に、ロボットの要求仕様も順次明らかにしています。それらの成果については、今後noteで紹介していきます。
まとめ
スポーツロボットの作り方として、ロボットを作って人間と競わせるボトムアップな方法と、人間を調べるトップダウンな方法を紹介し、私が進めている内容との関連について述べました。
「簡単な練習用ロボットを作って欲しい、使ってみたい、こんな練習をロボットに手伝わせたい」という方や、「競技者の全身を測ってみたが解析の仕方が分からない、何かに役立てたい」という方は、是非 Twitter のDMからご連絡下さい。