どんなロボットでも、人間がすべてをプログラムすれば、ある程度は良い動きができるものです。
しかし私たちがロボットに求めてきたのは、人間のように「自分で学習していく能力」です。
そして最近、ドイツ・テュービンゲン大学(University of Tübingen)コンピュータ科学部に所属するヤーパン・ガオ氏ら研究チームは、学習していく卓球ロボを開発しました。
卓球ロボは、わずか90分ほどの学習で人間と簡単なラリーができるほど成長したようです。
研究の詳細は11月2日付で、プレプリントサーバ『arXiv.org』に掲載されました。
目次
- 試行錯誤して学んでいく卓球ロボ
- わずか90分で初心者レベルに成長!人間と同じく緩急に弱い
試行錯誤して学んでいく卓球ロボ
これまでにも卓球ロボは存在してきましたが、今回開発されたのは、「試行錯誤を繰り返して学習していく卓球ロボ」です。
最初にチームは、本物のロボットではなく、コンピュータ内に仮想のロボットアームと卓球台を作成。
コンピュータシミュレーションで、ラケットの速度と向きがボールの軌道にどのような影響を与えるか機械学習させました。
そして失敗と改善を積み重ねた結果、シミュレーションでは確実にピンポン玉を返せるようになりました。
その後チームはこのアルゴリズムを、卓球ラケットをもった本物のロボットアームに導入。
現実世界で人間とラリーできるよう、さらに学習させたのです。
卓球ロボは、2台のカメラを使ってピンポン玉の位置を7ミリ秒ごとに追跡し、その情報に基づいて、ロボットアームをどこに動かすか決定しています。
現段階では、卓球ロボが意図したポイントから平均24.9cm以内の場所に打ち込むことが可能。
コンピュータシミュレーションより精度は落ちますが、それでも「わずかに劣る」程度のようです。
最終的に卓球ロボは、学習に合計90分(シミュレーションと現実)を費やしただけでした。
非常に短時間ですが、人間と対戦できるほどに成長したのです。
わずか90分で初心者レベルに成長!人間と同じく緩急に弱い
短時間で技術を身につけた卓球ロボですが、人間の初心者と同じように、速いショットや緩急をつけた戦法には対応できなかったようです。
チームは、卓球ロボがスローショットの返球に失敗することについて、次のようにコメントしました。
「ピンポン玉が遅い場合、ロボットアームは素早く動いて対応しなければいけません。
しかし実際は対応しきれず、空振りすることがよくありました。
これはアルゴリズムの欠点ではなく、ロボットの機械的な限界が原因です」
こうした限界があるにもかかわらず、チームはこの卓球ロボを「良いプレイヤー」だと考えています。
彼らは、「卓球ロボは一般的なプレイヤーにも劣っていないですよ。既に私たちと同じくらいの強さです」とさえ述べました。
確かに経験者やプロとは比べものになりませんが、遊びレベルには十分達しているように思えます。
評価すべきはその成長速度であり、今後も学習能力の向上に期待できるでしょう。
参考文献
Watch a robot playing table tennis after just 90 minutes of training
https://www.newscientist.com/article/2301254-watch-a-robot-playing-table-tennis-after-just-90-minutes-of-training/
元論文
Optimal Stroke Learning with Policy Gradient Approach for Robotic Table Tennis
https://arxiv.org/abs/2109.03100