問題 2台のロボットが協力して、 障害物を排除する問題です。

テーブルの上に、赤いビーチボールと缶コーヒー程の大きさの、ロボット2台があります。

テーブルの周囲には、落下防止用、境界線識別の青いビニールテープ(マーカー)が貼ってあります。ロボットは360度、自由に動きます。また、相手ロボット迄の距離、ビーチボールまでの距離、とテーブル端の境界線を認識する機能があります。ビーチボールは、一台のロボットでは力不足で動きません。2台のロボットが同時におすことではじめて動きます。

このロボットに出す、最も簡単な命令とはなんでしょうか?


解答 「自分以外の物体との距離を最小にして動作し続ける」です。

通常だと...
ある空間から、物を排除する場合、障害物と、障害物を排除するための最短のルート、ロボット1(R1)とロボット2(R2)の距離、R1とR2の、障害物までの最短ルート、R1とR2が離れずに、動作する制御、状況の変化を認識して、かつ協調しておす動作の維持などになり、各ロボットから状況の変化をコントロール用のコンピュータにフィードバックさせて制御し、命令動作の繰り返しになります。

この制御は、缶コーヒーの大きさのロボットで本当に可能でしょうか?絶対に最短ルートで作業しなければいけないというのでなければ、単に障害物を排除できればいいのではないでしょうか?

最短ルートでの作業が、必ずしも最小時間での作業になるのでしょうか?通常の考えではない、違った理論が必要です。

缶コーヒーロボットは独立して動作し、距離を計測する機能はありません。2台のロボットは無秩序に動作して動き回り、偶然障害物と接触します。この状態では障害物は動きません。

もう一台のロボットも障害物と接触しました。ロボットは、偶然ビーチボールを挟んで反対側に位置しています。この状況では3者が最短距離ではないので両方のロボットは更に、ビーチボールの周辺を動き続きけます。

ビーチボールの同じ点で、両方のロボットが接触し、3者が最短距離になり、動作が継続されて、ビーチボールはテーブルから落ちたのです。

更に精度を上げるには、2台のロボットが、接触センサーを備えていればいいだけのことです。