カエデ自動機械

ちょっとしたものづくりや電子工作のメモなど。技術開発とは今は呼べないかな。

(論文メモ)Swarm robotics reviewed

前々から言っているマルチエージェントシステム、自腹で手に入れた情報で、職場での特別な着目分野が明らかにならないレビュー論文なんかをこちらにまとめていこうと思います。

今回は豪州のMonash Univから2012年に発刊された、Jan Carlo Barcaらによる Swarm Robotics Reviewed を呼んでいきます。

原文リンク

こちらで入手可能です。
www.semanticscholar.org


要約

実世界で実用可能な群ロボットシステムを作り上げるため、近年の群ロボット界隈での活動をレビューして資料を分析する。
まず始めに群ロボットの幅広い応用分野を挙げ、群ロボットの有効性を解説する。

次に、群ロボットの要素として利用可能性のあるロボットを紹介する。

そして、実世界で群ロボットを利用するための種々の技術的課題について論じる。

最後にこれらの技術的課題を解決するために取り組むべき事項を整理し、将来の群ロボット研究のあるべき姿について提案する。

導入

群知能というコンセプトの応用とともに群ロボット研究が進められてきた。これらはロボット同士の相互作用、ロボットと環境の相互作用について着目し研究するもの。
ここで言うとは、ローカルに相互作用をしながら共通のゴールを目指している集団のことを指し、あらゆる集合的なふるまいのことを総称する。

群知能(Swarm intelligence)は多数の自律的なエージェントの相互作用を通じて生まれる集合的な知能のことである。
群知能の歴史の始まりとしては1940年代、タッチセンサと光センサを備えたカメのようなロボットを用いた実験が始めであり、これらの相互作用を通じて生み出される社会的なふるまいの研究を行った。
それ以降様々な研究が行われ、地上だけでなくドローンの群制御、水中ロボットの群制御等も研究されてきた。

群ロボットの研究はしばしば生物学的な振る舞いから着想を得ており、昆虫、動物や鳥の群れ、魚群、アメーバやバクテリアのコロニー、人体を構成する細胞等が例として挙げられる。
生物の振る舞いから着想を得ることは、既存の理論体系では解決不可能な問題に対して新しい解を与えうるほか、その生物のふるまい自体を観察し比較することで自分が構築した理論を検証できることが利点である。

群ロボット研究のメリット:
群ロボットには大きなメリットがあるからこそ、その研究がおこなわれている。たとえば、

  • 重要なものを発見した際等に素早く集団のセンシングリソース等を集中させることができる。
  • (様々な場所を同時に見張れることにより?)高い状況認識能力を有する。
  • 個々のロボットの故障に対してロバスト
  • 1台の高性能なロボットが1方向からアプローチするよりも、より困難な課題を解決する
  • よりシンプルで安いロボットで複数のタスクを同時に実行できる。

一方で欠点として、中央集中制御的な群であれ、分散制御的な群であれ、群ロボットシステムは人間の操作者にとってコントロールしにくいものであるということが挙げられる。

中央集中的な群制御の問題は通信や制御の枠組みが、エージェント数の増加に対して相応にスケールしない、数が多いほど困難になっていくということである。そして、中央集中制御を担うリーダー・エージェントの喪失に極めて脆弱である。
従って、中央集中は人間が一人でその系を操作・管理している多数のロボット系に対してあまりメリットを持たない。

一方で分散制御的な群ロボットシステムだが、これはあらゆるエージェントの組み合わせ同士が情報的に接続していないと、系全体の大局的なデータが得られないという問題がある。
実世界で、このようにあらゆる組み合わせのエージェント同士が通信をし続けられるということはまれなのではないだろうか。
従ってこの場合にも、人間の操作者にとって有効な、大局的な情報を得られることはないだろう。
更にこの場合は、ロボットの振る舞いはそれぞれ近傍のロボット同士のローカルな相互作用によって決まっていくため、人間の操作者にとっても予測しがたいという問題もある。

これらの欠点がありつつも群ロボットシステムが期待されるのは、これが大きなポテンシャルを秘めているからであり、NBC攻撃の検知、戦場の監視、宇宙探査、汚染検知、捜索・救助等の分野が期待されている。

本稿では過去30年間の重要な研究を網羅的にレビューすることで、

  1. 群ロボットに組みこみ得る様々なロボットを紹介する
  2. 実用に至るのに対処すべき課題を明らかにする

ことを目指している。

範囲が広くなりすぎるので、対処すべき課題は主にソフトウェアの課題に絞り、ハードウェアは対象外とした。また、過去のレビュー論文のアップデート、群ロボットシステムと関係の深いマルチロボットシステム、自己配置型センサの研究で得られた知見についても書き加えた。

そして本稿の最後では群ロボットシステムの制御によって得られる複数のロボットのフォーメーションの絵姿を図示する。

過去のレビューとの違いは、実用化への課題を整理している点、ありうるフォーメーションを図示している点。


群ロボットシステムにおけるロボット

群ロボットシステムに採用し得るロボットについて紹介する。

異種による群と同種による群
群ロボットシステムの設計において重要なのは、構成ロボットがすべて同じものか、違うものが含まれるのかを決めることであり、それによって制御戦略が変わってくる。

異種ロボットによるシステムは互いに補完しあってより高い能力を得るために導入する。代表例として、捜索を担うUAVと見つかった対象物の対処を担うUGVからなるシステムなど。

他、大型の母艦と複数の小さなUAV(MAV)からなる偵察システムなど。母艦はMAVを運搬し所望の位置まで運ぶことで以下を可能にする。

  1. 基地から遠いところまで移動する
  2. 通信能力を延伸する
  3. 大量の情報を扱う

一方でMAVは所望の領域において広範囲に広がってデータを迅速かつ効率的に取得する。

どちらの例でも、異種混合のシステムによって目標志向の効率的な動作が可能となっている。

しかしながら、異種混合の群ロボットシステムは、あるロボットが他のロボット(異種であり、壊れているかもしれない)の状態推定をするのが難しくなるという欠点がある。

したがって、多くの研究者が異種の群ロボットシステムは避けるべきであると考えており、多くの研究事例が同種のロボットによる群ロボットシステムとなっている。


自己集積・自己再構築型群ロボット
近年の群ロボット研究の多くがこのテーマにフォーカスしている。自己集積型ロボットは自分たち同士で接続しあって新たな形態をとることができる点で普通のロボットと異なる。

これらのロボットは通常のロボット、あるいはこれらのロボット単体では達成できない課題に対処可能で、

  1. 単体ロボットでは走れない不整地の走破
  2. 単体のロボットより大きな障害物の乗り越え
  3. 単体のロボットでは運べないほど重い荷物の運搬

等が実施可能となる。

一方で、自己再構築型ロボットは自己の構造体を組み替えることで新たな形態をとることができる。
この特性は例えば破損からの復旧、新しい課題への対処等に有効である。

このタイプのロボットはその幾何的な構造によって分類分けされる。一般的なのは格子構造で、矩形や六角形のキューブからなっていたり、鎖状につながっていたりといった構造をとる。

次項では実用的な群ロボットシステムを作るためにソフトウェア設計においてどのような課題があるかといったことを述べる。
これらの課題については、関連する研究資料も参照しながら注意深く執筆したが、主に同種のロボットからなる、自己集積型でも自己再構築型でもないロボットに関する研究に着目した。
自己集積型、自己再構築型は既に一般的なものだからである(そうなの?)


群ロボットのソフトウェア設計における課題

実世界で利用可能な群ロボットを作ろうとすると、様々なソフトウェア上の課題にぶちあたる。たとえば

  1. 適切な中央集権的、分散的な制御アルゴリズムを選択する
  2. ロバスト性、自己構築性、拡張性等の特徴を組みこむ
  3. ゴール志向のフォーメーション、制御、接続性等を検討する
  4. 群ロボットが環境と適切に相互作用できるよう、マッピング、自己位置推定、経路計画、障害物回避、マニピュレーション等の機能を実装する
  5. エネルギー消費にかかる問題を解決する

この章ではこれらの問題を解決するのに参照すべき文献について概観する。

中央集約制御 vs 分散制御
これらのどちらかを選ぶか、その際の通信方式をどのように設定するかというのは最も基盤的な問題である。どちらもこの分野に貢献しており、それぞれ成果もあげている。

中央集約制御は中央で群の振る舞いのあるべき姿を決めるマスターロボットと相互作用を行うことで動作する。
この方式にはいくつかメリットがあり、メンバーからの情報をマスターロボットが各ロボットの情報を集約・統合して、その完全な情報を元にして群を制御できることである。
更に、マスターロボットがそれぞれのロボットに個別に直接指示を出せるため、挙動が予測しやすいというメリットもある。

一方でデメリットもあり、群の構成員が増えた際の拡張性が低いこと、マスターロボットの喪失に弱いことが挙げられる。更に、マスターロボット近傍に位置するエージェントは情報のやり取り、マスターへの報告に奔走することになり、エネルギーが枯渇しやすいという欠点もある。

分散制御はその名の通り分散的に処理を行うもので、

  1. 中央集中型制御の際に問題となった非実現性、通信遅れを軽減できる
  2. 群の構成員が増えても演算の複雑性が増さない(複雑さと構成員の数が独立)
  3. 個々のエージェントの喪失に強い
  4. 自然と並列的な処理を実施できる

が長所として挙げられる。

短所は中央集約の長所が無いことで、完全な知識に基づく大局的な判断ができないことで、これは特に人間の操作者がこのシステムによるマッピング結果等の上位の情報にアクセスしたいときに問題になる。
またほかの問題としてローカルの相互作用によって振る舞いが決まるために挙動が予測しにくいという点が挙げられる。
更に、大局的な観点を持たないためエージェントの動作が振動的に、「行ったり来たり」しやすい。

グラフ理論はしばしばこの分野で導入される。これは実際のロボットの複雑さを覆い隠し、その相互作用に対する解析のみに集中することができる。

合意制御はこの分野で有用であり頻繁に使われる。これは個々のエージェントが目的に対する共通の認識、環境に対する共通の理解を得られるものとみられている。
また合意制御アルゴリズムグラフ理論とよくともに使われることが知られている。

もう一つ、分散制御においてよくつかわれるのがボロノイ図である(MASの制御の本でも出てきた!)
この図は個々のエージェント同士の空間的な関係性を決定するのに有用であり、被覆問題とランデブー問題の両方の問題の解決に役立つ。

集中型と分散型は必ずしもどちらかしか選べないというわけではなく、むしろバランスよくミックスすることが大事である。そのバランスは両方を実装して長所を活用するしかない。
そのようなハイブリッドシステムは中央コントローラが群全体の挙動をガイドし、一方で分散制御を活用して全体の複雑性を下げることができ、結果的に短所を補うことから、ハイブリッドシステムは優れている。

通信と制御方式に関する中央制御、分散制御の長所短所は表1の通り。

表1:


重要な挙動と特徴:
群制御の実世界での挙動と特徴についての研究をまとめる。まずは自己組織性から論じていく。

自己組織性:
自己組織性とは、低レベルの相互作用によって高レベルのパターンを発現たらしめるプロセスのことであり、様々な研究で、変化する環境に適応し最適な物理的能力を得るために、群ロボットは自己組織性を具備すべきと指摘されている。
この特性によって、多数のロボットを外部からの介入によって制御するという難しいプロセスを減らすことができる。多数のロボットを制御するという複雑なタスクをこなさなければならない群ロボット分野には最適である。
欠点は、自己組織化の挙動が予測できないこと。それゆえに、このようなシステムをいかにハイレベルから制御して所望の効果を得るかというのは研究の価値がある。
自己組織化についての長所、短所は表2のとおり。


拡張性とロバスト性:
動的で予測不可能な現実世界で群ロボットを活用するためには拡張性とロバスト性が必要。
拡張性のためには、数個~数千個で制御が可能でなければならない。そのために一般的なのは分散制御方式を用いること。
昨今の拡張性を有する群ロボットメカニズムは、フォーメーション生成、自己再構築型ロボットに用いられる形態形成ベースの技術がよく使われている。ほかには、局所最適を避け、障害物が多いフィールドに展開し、通信接続性を維持しながらフォーメーション展開が可能なポテンシャルフィールド等が用いられる。
ロバスト性とは、たとえば群の一部が欠損したときにも機能を失わないなど、外的要因による阻害に対して機能を失わない、失いにくいことを指す。群が確実にミッションを達成するためにはロバスト性が重要である。
その実現方式としては、冗長なハードを使う、拡張性の高いシステムにする、個々のロボットをシンプルにする、分散制御を用いる等の方式がある。
これに関する長所、短所は表3にまとめた。拡張性とロバスト性を導入することの短所はあまりないが、しいて言えば実装が大変になる。いずれにせよ、大きなメリットがある。

フォーメーション、制御、接続性:
これまでの実績から、群制御においてはフォーメーションの制御が重要であるとわかっている。たとえば殿を務めるエージェントを失えば部隊が全滅する可能性があるし、敵を取り囲めれば勝利する確率が上がるし、疎に集約した集団は密に集約した集団に比べ一度の攻撃で全滅しにくい。このように、群制御にあたって適切なフォーメーションを採ることが重要である。

決まった数のエージェントによるエリアカバーという観点では二等辺三角形型のフォーメーションが最も有利だが、それ以外のも様々研究されている。

これらはグラフベースのフォーメーションで、その派生型がたくさんある。その組み換えのための操作方法も様々。

フォーメーションを生成するのはグラフベースによるものだけでない。線分、矩形、星形、矢型等は別のシンプルなルールセットにより形成できるし、円形、輪形、R型、N型、葉型(?)のフォーメーションは形態生成因子の濃度勾配で生成できる。
ボロノイ図等によっても形成可能で、セグメント、ポリゴン、楕円、均一配置等が実装可能。
ポテンシャルフィールドも楕円、三角形、平行四辺形、星形等を形成できる。ボルテックスフォーメーションは少し特殊な方法によってできる。

フォーメーションを維持したまま群を動かすには様々な問題を解決しなければならない。
最上位のレベルでは、環境や任務に応じて群の行き先を決めるリーダーか、あるいは群の重心に従って動かす枠組みが必要である。
中間のレベルでは、各エージェントが方向や速度を強調させ、隊形を維持する仕組みが必要である。これには合意制御のアルゴリズムが使えるし、各個間の距離や方向の関係に制約条件を加えるやり方でもよい。制約条件を適切に加えるのはグラフ理論を使うと上手くいく。

群として前進していくためには各個が接続し、情報のやり取りを維持しなければならない。つまり、各個のセンシング領域は互いに重なり合っている必要があり、そうでなければ、群から”はぐれた”エージェントは群に寄与できなくなる。
接続を維持するためには、エージェントの数を増やす、群の状態を適切に変える、通信距離が長い特別なエージェントを加える、通信員として運動性の高いエージェントを加える等の方法がある。

たとえば、六角形、ひし形、正方形、三角形等の隊形で、エリアカバーと通信維持をどのように達成できるかという研究事例がある。
最近の研究ではより正確なモデルが提案されており、通信の維持にあたって各個間距離の制約や、通信を阻害する障害物の存在等を考慮に入れたモデルができている。この研究では更に、特定の通信リンクを維持しながら、障害物をよけながら群を前進させていく研究がなされている。

通信維持にあたって気を付けるべきは、その際にエネルギーを消費しすぎないかということ。

隊形・通信維持については表4にまとめた。

群と環境の相互作用

相互作用としては以下を取り扱う。

  1. 地図作成と自己位置推定
  2. 経路計画と障害物回避
  3. 物体の運搬と操作

地図作成と自己位置推定
POI(Points of Interests、注目点)へと誘導する特別なエージェントを導入しない限りは、群はこの機能を持たなければならない。

地図作成には二種類、位相的なものと地理的なもの(?)
位相的地図は環境を点や線で抽象化してマッピングしたもの、地理的な地図は写実的に行ったもの。

地図作成は群のメンバーが協調的に行動することで効率よく実施できる可能性があるが、群ロボットは大抵の場合分散制御されており、中央集中的なメカニズムをどこかに含まない限り、グローバルマップを合成することが困難である。GNATと呼ばれるゴール志向のナビゲーションエージェントを群に加えることで解決する可能性があるが、逆にこれなしでは何もできない、群としての柔軟性を失うことになる。

自己位置推定とは文字通りの機能で、各個の自己位置、群の自己位置を推定する必要がある。各個が利用できるビジョンベースの自己位置推定研究があるが、これはコンパス情報と自己が取得した画像、1フレーム前の画像でマッチングを採るものである。

まとめを表5にまとめた。



経路計画と障害物回避
経路計画は群を所望の位置に移動させるのに必須である。これにはローカルとグローバルがあり、ローカルは各個に搭載されたセンサ情報を元に未知のエリアへと前進すること。
ローカル経路計画には様々なやり方があり、粒子群最適化が局所最適を避け、障害物を避けながら移動することができるとして有名。ほかにはアリ塚最適化手法というものがあり、これは任意の二点間の最短経路をフェロモン的なもので導出する。

グローバル経路計画には環境に対する事前の知識が必要である。様々な方法があるが、いずれにせよ、特定のリーダーエージェントに依存しないロバストな構成にすべきである。

障害物回避も同様に重要な特性で、古典的なものは静的環境、最近の手法は動く障害物も回避できるようになっている。
最も古典的なものは障害物に近づいたらランダムに向きを変えるというものだが、ほかに様々な手法がある。例えば、各個が互いに距離を取る性質を利用して障害物の周りにシステムが仮想エージェントを配置するやりかたなど。ポテンシャル場の理論によるものも、似たような発想。
他に特徴的なものとしては、群のうち各個が障害物回避をできるようにするためのニューラルコントローラなど。

これらの問題は、障害物を回避できた後に元の隊形を維持できるかを保証しないことであるが、最近はそれに手当された研究もおこなわれている。

関連研究のまとめを表6に示した。経路計画と障害物回避は、ロボットの遅れや破損を招くことなく所望の移動を達成させる手段として重要。この時に気を付けるべきは、特定の特別なエージェントにその機能を依存しないこと。もし中央集中的な、リーダーロボットが必要な手法を採用するにしても、その代替ロボットを用意すること。


物体の運搬と操作
群ロボットによるこれらの動きは、単体のロボットより大きな能力を有すると見込まれており、実現すれば社会的インパクトが大きい。
群によって達成できる動きは3種類、押す、掴む、そして囲む。

押すのは簡単だが、特に地面が平らでない時等、ロボットとその対象物の挙動が予測しづらいときがある。掴む動作はものを囲い、持ち上げてほかのものの上に置いたりすることができるが、掴むためのエンドエフェクタがその力に耐えられるようにしておく必要。(囲む動作は、どういうものかイメージできず)

これらの分析は表7に示した。3種類それぞれに長所短所があり、適切な手法を選択する必要がある。いずれにせよ、単一のロボットよりも高い能力を発揮できる可能性を秘めている。

エネルギー消費の問題

エネルギーがなくなれば群はそれ以上動けなくなるため、様々な手法が検討されている。たとえば、ロボットの重量を減らして初期配置と移動のコストを下げる、通信レンジを最小化する、間接通信をなるべくしない、振動的動作を局限する、移動距離を局限する、加減速を局限するなどなど。

この分野は分散センサノードの分野と似たところが多い。分散センサノードにおいても、通信経路の最適化、使用しないノードをスリープモードに入れる、特殊なノードに情報の収集・集約をさせ、そのノードには自動充電機能を備える等、様々な電源問題へのアプローチが考えらられる。

この分野の外観を表8に示した。いずれにせよ、電源が切れたら何もできないため、この問題は非常に重要である。


分析、考察と結論

本稿を通じて群ロボットシステムにおける様々な課題に触れてきた。課題は大体以下のように分類できる。

  1. 中央集中/分散制御それぞれの欠点を克服するハイブリッド分散システムの構築
  2. 上位層で大局的な監視が可能な、自己組織型の群ロボットシステムの構築
  3. 拡張性とロバスト性を備えたシステム構成
  4. 任務遂行に適した、エネルギー消費の少ない通信維持フォーメーションの生成・維持
  5. 全てのノードがマッピングと自己位置推定について何らかのコミットができること。
  6. 特定のリーダーノードに頼らない、経路計画と障害物回避
  7. 対象物を運搬、操作可能な群ロボットとすること
  8. エネルギー問題への対処

148報のこの分野における重要な論文を調べたところ、77%の論文が1,3,4,6の問題を取り扱っており、残りの23%しか、2,5,7,8には触れておらず、分野によって研究事例の多さに大きな違いがみられた。
現在事例が少ない部分にいかに対処するかによって、今後実用的な群ロボットシステムが完成するかどうかが方向づけられる。

また、同時にいくつの課題に触れているかを調査したところ、44%が1個の課題にしか触れておらず、6個以上の課題に触れている論文はゼロであり、全ての課題に対処した実用的な群ロボットシステムを作ろうとしている事例はまだ存在しないことがわかる。
この部分についても、今後の研究しどころであると思われる。


後日談?

もう一本、似たようなやつを読みました。

ktd-prototype.hatenablog.com