SYMROP
Multi Robot Framework for Cooperation of Robots
Multi Robot Framework for Cooperation of Robots
SYMROP?
SYMROPは複数のロボットを協調動作させるためのソフトウェアフレームワークです。未踏プロジェクト2006上期において採択されました。また,IPAX2007,Niiオープンハウス2007においてデモ発表が行われました。
ロボットの発展が急速に進む昨今,同型のロボットを同時に複数使用することで作業速度の向上を図ることが重要となってきました。本プロジェクトでは,無線でつながれた複数の独立動作しているロボットを協調させ,目的を達成させるためのマルチロボットフレームワークを開発しました。また,本マルチロボットフレームワークに適した独自通信プロトコルを含む基盤無線通信技術も開発しました。このフレームワークを利用することで,プログラマは抽象度の高い命令を用いるだけで複数のロボットを協調動作させることが可能となります.行動するロボットの選出や,ロボットの行動内容は,ロボット間の交渉により内部で解決します。
SYMROPは、複数ロボットの協調動作を可能とする柔軟なフレームワークです。ユーザーはマルチロボットコマンドインターフェースを利用して協調動作を記述します。
下記のコマンドインターフェースを利用することで,単体行動が複数行動となります:
DoSingleAction: 評価関数を元にロボットを選出し,指定関数を実行させる
DoMultipleAction: 評価関数を元にロボットを選出し,複数の指定関数を実行させる
SyncAll: 全体が一定状態に達するまで指定関数を実行し続ける
WaitAllAndDo: 条件関数が満たされた後に,指定関数を実行する
AllDo: 全体が指定関数を実行する
フレームワークの提供するライブラリを利用することで,新たなマルチロボットコマンドを実装することが出来ます.これにより、より複雑な挙動を指定する事ができ、高度なタスクを実行することができるようになります。SYMROPのフレームワークはそれらのカスタムコマンドの実行を通常のコマンドと同様に処理することができます
本プロジェクトでは,無線通信の到達性の研究を行い,それに基づき独自の通信プロトコルを開発しました.これにより,高ロバストで低通信量なネットワークの形成が可能となりました。さらに,低スペックな組み込み機器に搭載することが可能となり,省電力性・低コストも実現しました。また,本プロジェクトは無線に省電力なZigbeeを用いています。これによりWiFiとの共存が可能となり,より透過的にマルチロボットコマンドを使用することが出来ます。
SYMROPでは、ロバストな革新的な通信プロトコルにより動的な複数ロボット環境における協調動作を実現しました。
ロボットの位置表示機能
状態表示機能
通信範囲表示機能
収集したパケットの解析・表示
探索領域の表示
マルチコマンド命令送信機能
マルチロボットコマンド実装部
ユーザー記述部
ロボットの行動制御
位置座標シミュレーション機能により容易なデバッグを実現
省リソース
Zigbee
RAM 4KB
ROM 128KB
本デモでは、エージェントがマップ上に均等に散らばり、担当区域を動的に決定し各々の担当領域のパトロールを行います。また、マップ上の建物が壊れていた場合、担当のロボットが修復を行います。ロボットが壊れた場合には再度領域を動的に決定しパトロールを再開増します。
Copyright (C) 2006-2007 Satok Systems & SYMROP
Author: 片岡慧, 東京大学大学院情報理工学系研究科コンピュータ科学専攻/国立情報学研究所
Twitter (EN): http://x.com/satok_
Twitter (JP): https://x.com/satok_jp