Open Dynamics Engineとロボット研究
ヨーロッパでの研究活動「身体性人工知能」~お掃除ロボット「ルンバ」の本質
大学卒業後の数年間は、ヨーロッパ(スイス・イギリス)で研究活動を行っていました。
スイスではチューリッヒ大学・人工知能研究室(ロルフ・ファイファー教授)(http://ailab.ifi.uzh.ch/)に、EUプロジェクト「身体性人工知能」の研究員として従事していました。またイギリスではサセックス大学・情報工学部・進化&適応システム学科(Evolutionary and Adaptive Systems Course)(http://www.sussex.ac.uk/informatics/index.php)に修士課程で就学していました。
スイスの人工知能研究室のメインテーマは「身体性人工知能」というもので、従来の、情報処理のみに注目する人工知能の考えとは異なり、知能の形成には身体の存在が大きく関与しているという概念に基づく人工知能研究を行っていました。
そのため、概念の例証のためには身体を持つ人工物「ロボット」の存在が不可欠であり、ファイファー教授が「ロボット作りを得意とする日本のロボット研究者」と交流を持つようになっていったのだと思います。
なお「身体性人工知能」について詳しく知りたい方は、ファイファー教授の著書「Understanding Intelligence」の和訳版「知の創成」(共立出版)をお勧めします。
人工知能研究室は、生物学や認知科学の分野との交流も多く、学際的な特色を持っていました。そのため、ただ単純に生物学者や認知科学者との交流を持つ以外にも、カタグリフィスという「太陽光を利用した特殊なナビゲーション能力を持つアリ」の生態観察の手伝いで真夏にアフリカ大陸のサハラ砂漠に行くなど、貴重な経験もできました。
さてスイス編のODEプログラムの紹介となるわけですが、人工知能研究室における代表的な研究として、スイスのお掃除ロボット「swiss_cleaner.cpp」を紹介させていただきます。このロボットの構造は、正面左右に距離センサーを取り付けたデモバギーとなっていて、距離センサーが障害物の接近を検知すると前輪の向きを変え、障害物回避行動を実現する行動制御プログラムを導入しています(図2-1)。
それではまず、このプログラムを実行してなにが起こるか確認してください。身体性人工知能の考え方を示す代表例として、このロボットが掃除をする時に身体をうまく使っていることが分かると思います。加えて言うと、世界的に有名なお掃除ロボット「ルンバ」の本質を理解することができます。
ここで、従来の人工知能と身体性人工知能の対比を、お掃除ロボットを使って説明します(図2-2)。従来の考え方では、まず開発者が掃除ロボットの使用環境を把握し、その環境に対応できるセンサー入力・モータ出力の行動制御プログラムを作る必要がありました。しかしそのような決めうちの行動制御だと、開発者が予想しない障害物が出現するだけで動けなくなったり、計画していたコースから外れたりして、ロボットの機能が使えなくなってしまいます。
それに対し、身体性人工知能の掃除ロボット「ルンバ」では、単純に障害物を回避する行動制御プログラムが導入されているだけです。つまり、どんなに予期しない障害物があったとしても、常に回避行動をとるだけなので止まることはありません。そして、部屋内をくまなく動き続け、最終的には部屋全体の掃除をすることにつながるのです。こちらの方が、単純かつ頑強な制御系と言ます。
学際的な研究活動を重視するヨーロッパ ~CPG制御型二足歩行ロボット
スイスと同様に、イギリス・サセックス大学の教育も学際的な特色を持っており。認知科学・心理学・生物学の知識をもとに、工学の技術を用いて検証を行う傾向がありました。そのため、私の修士論においても、生理学の知識をもとにモデル化されているCentral Pattern Generator(CPG)制御系を用いた二足歩行ロボットシミュレーションを課題としていました。
CPGは、人や動物の歩行などの周期的な動作を実現する神経回路網として知られており、脊髄(せきずい)に存在すると考えられています。これらはリズミックな信号を生成する複数の神経振動子で構成され、これら神経振動子間が相互結合することで同期した信号となり、協調的な筋活動、つまりは周期的な動作を実現しているとされています。
このようなCPGを歩行制御に利用した二足歩行ロボットシミュレーション「cpg.cpp」を構築したのですが、CPGモデルの詳細は多賀の論文(http://ci.nii.ac.jp/naid/110006455088/)を参考にしてください(相互結合されたCPG12個により歩行制御された二次元4リンクの二足歩行モデル)。私のODEシミュレーションではオリジナルのモデルと違い、以下のように構築しています。
1)トルク制御を角度制御に変更する
2)足部をいれた6リンクモデルである
さらに、二次元モデルから三次元モデルへと変更されたため、CPGのパラメータ調整も困難となり、進化計算手法のひとつである遺伝的アルゴリズム(GA)を用いたパラメータ探索を行っています。なお、このロボットも三次元空間内における二次元モデルとなっていますので、興味のある方は三次元モデルへの拡張に挑戦してみてください。