(57)【特許請求の範囲】
【請求項１】
複数のロボットが協調して行動を起こす自律ロボットであって、
前記自律ロボットは、
無線通信を介して他の自律ロボットとの間で情報の授受を行う無線通信部と、
自己の周辺環境を検出する周辺環境検出センサと、
前記周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識部と、
前記周辺環境認識部おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在する位置を推定する自己位置推定部と、
外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識部において得られた周辺環境の情報と、前記無線通信部を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて、自己の行動計画を策定して自己の行動を制御する行動計画策定部と、
を備え、
前記行動計画策定部は、前記指示に対する行動計画を自身のみで実行することができない場合、他の自律ロボットに対し、行動計画及び依頼事項を含む協調を依頼する行動依頼の情報を前記無線通信部を介して送信し、他の自律ロボットから送信される前記行動依頼の情報に対する回答情報により行動計画の再策定を行うことを特徴とする自律ロボット。
【請求項２】
前記自律ロボットは、
前記行動計画策定部は、前記無線通信部を介して、自己の存在位置と行動計画を他の自律ロボットに対して前記行動依頼の情報により通知するとともに、他の自律ロボットから回答される回答情報における他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする請求項１に記載の自律ロボット。
【請求項３】
請求項１または２に記載の自律ロボットを同時に複数制御する集中制御装置であって、
前記集中制御装置は、
無線通信を介して前記自律ロボットとの間で情報の授受を行う無線通信部と、前記無線通信部を介して、前記自律ロボットより通知される位置と行動計画とから行うべき行動を決定し、前記自律ロボットのそれぞれに対して行動指示を発する集中制御部と、
を備えたことを特徴する集中制御装置。
【請求項４】
複数の自律ロボットが協調して行動する場合における自律ロボットの行動計画策定方法であって、
前記行動計画策定方法は、
周辺環境認識部が、自己の周辺環境を検出する周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識過程と、
自己位置推定部が、前記周辺環境認識過程おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定過程と、
行動計画策定部が、外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識過程において得られた周辺環境の情報と、無線通信を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて自己の行動計画を策定する行動計画策定過程と、
を有し、
前記行動計画策定部は、前記行動計画策定過程において、前記指示に対する行動計画を自身のみで実行することができない場合、他の自律ロボットに対し、行動計画及び依頼事項を含む協調を依頼する行動依頼の情報を前記無線通信部を介して送信し、他の自律ロボットから送信される前記行動依頼の情報に対する回答情報により行動計画の再策定を行うことを特徴とする自律ロボットの行動計画策定方法。
【請求項５】
前記自律ロボットの行動計画策定方法は、
前記行動計画策定過程は、無線通信を介して、自己の存在位置と行動計画を他の自律ロボットに対して前記行動依頼の情報により通知するとともに、他の自律ロボットから回答される回答情報における他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする請求項４に記載の自律ロボットの行動計画策定方法。
【請求項６】
請求項４または５に記載の行動計画策定方法を用いて、複数の自律ロボットを同時に制御する自律ロボットの集中制御方法であって、
前記集中制御方法は、
無線通信を介して前記自律ロボットのそれぞれから通知される存在位置と行動計画を受信する過程と、
前記存在位置と行動計画とから自律ロボットが行うべき行動を存在する自律ロボット毎に決定する過程と、
無線通信を介して、前記自律ロボットが行うべき行動を前記自律ロボットのそれぞれに対して送信する過程と、
を有することを特徴する自律ロボットの集中制御方法。
【請求項７】
複数の自律ロボットが協調して行動する場合における自律ロボットの行動計画策定プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記行動計画策定プログラムは、
自己の周辺環境を検出する周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識処理と、
前記周辺環境認識処理おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定処理と、
外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識処理において得られた周辺環境の情報と、無線通信を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて自己の行動計画を策定し、前記指示に対する行動計画を自身のみで実行することができない場合、他の自律ロボットに対し、行動計画及び依頼事項を含む協調を依頼する行動依頼の情報を前記無線通信を介して送信し、他の自律ロボットから送信される前記行動依頼の情報に対する回答情報により行動計画の再策定を行う行動計画策定処理と
をコンピュータに行わせることを特徴とする自律ロボットの行動計画策定プログラムを記録した記録媒体。
【請求項８】
前記自律ロボットの行動計画策定プログラムは、
前記行動計画策定処理は、無線通信を介して、自己の存在位置と行動計画を他の自律ロボットに対して前記行動依頼の情報により通知するとともに、他の自律ロボットから回答される回答情報における他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする請求項７に記載の自律ロボットの行動計画策定プログラムを記録した記録媒体。
【請求項９】
請求項７または８に記載の自律ロボットの行動計画策定プログラムを記録した記録媒体に記録されたプログラムに従い動作する自律ロボットを複数同時に制御する集中制御装置で実行される自律ロボットの集中制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記集中制御プログラムは、
無線通信を介して前記自律ロボットのそれぞれから通知される存在位置と行動計画を受信する処理と、
前記存在位置と行動計画とから自律ロボットが行うべき行動を存在する自律ロボット毎に決定する処理と、
無線通信を介して、前記自律ロボットが行うべき行動を前記自律ロボットのそれぞれに対して送信する処理と、
をコンピュータに行わせることを特徴する自律ロボットの集中制御プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のロボットが協調して、目的の行動を起こす自律ロボット、集中制御装置、自律ロボットの行動計画策定方法、自律ロボットの集中制御方法、自律ロボットの行動計画策定プログラムを記録した記録媒体、自律ロボットの集中制御プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術及び発明が解決しようとする課題】
従来から２台のビデオカメラを備えたステレオカメラ等をセンサとして、周辺環境の状況を把握し、自律で動作するロボットがある。通常自律ロボットにおいては、予め指定された作業を行うために、自己に備えられたセンサによって得られた情報を解析し、自己が行うべき動作を決定して、行動を起こす制御が実行されている。
【０００３】
ところで、従来の自律ロボットを２台使用して、協調作業を行わせようとする場合、外部から２台のロボットに対して行動指示を与える必要がある。
しかしながら、従来の自律ロボットは自己に備えられたセンサによって周辺環境を把握し、行動の制御を行うために、周辺環境の把握をすることができなくなるような行動指示を出すことはできず行動指示の内容に制限を設けなければならないという問題がある。例えば、自己の前景をカメラで撮像し、画像処理を施した結果に基づいて、移動経路を決定する２台の自律ロボットを縦列状態にして荷物を運ぶような場合、後続の自律ロボットは先行する自律ロボットと荷物によって、前景を撮像することが困難になるため、正確な移動経路決定を行うことができなくなる。そのため、２台の自律ロボットが横に並んで荷物を運ぶように行動指示を出さなければならない。これは結果的に、運搬経路が狭く横に並んで運搬することができない場合などは、荷物の運搬ができないことになる。
【０００４】
一方、前述した問題点を解決する為に、死角となる部分の周辺環境を把握することができるように、新たにセンサを設けることが一般的であるが、同一の自律ロボットを用いて、あらゆる作業ができるようにするためには、多数のセンサを設けなければならないとともに、多数のセンサによって得られた情報を高速で処理するのは困難であり、コストも増大するという問題もある。
また、センサをロボットが行動する場所の構造物等に設置して、全てのロボットを監視し、各ロボットを制御する方法もあるが、死角を発生させないためには、多数のセンサを設置しなければならないため、設置コストが増大するという問題がある。
【０００５】
本発明は、このような事情に鑑みてなされたもので、他の自律ロボットが取得した情報を共有することによって、複数のロボットが協調して、目的の行動を起こすことができる自律ロボットを提供することを目的とする。
【０００６】
【課題を解決するための手段】
請求項１に記載の発明は、複数のロボットが協調して行動を起こす自律ロボットであって、前記自律ロボットは、無線通信を介して他の自律ロボットとの間で情報の授受を行う無線通信部と、自己の周辺環境を検出する周辺環境検出センサと、前記周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識部と、外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識部において得られた周辺環境の情報と、前記無線通信部を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて、自己の行動計画を策定して自己の行動を制御する行動計画策定部とを備えたことを特徴とする。
【０００７】
請求項２に記載の発明は、前記自律ロボットは、前記周辺環境認識部おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定部をさらに備え、前記行動計画策定部は、前記無線通信部を介して、自己の存在位置と行動計画を他の自律ロボットに対して通知するとともに、他の自律ロボットから通知される他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１または２に記載の自律ロボットを同時に複数制御する集中制御装置であって、前記集中制御装置は、無線通信を介して前記自律ロボットとの間で情報の授受を行う無線通信部と、前記無線通信部を介して、前記自律ロボットより通知される位置と行動計画とから行うべき行動を決定し、前記自律ロボットのそれぞれに対して行動指示を発する集中制御部とを備えたことを特徴する。
【０００９】
請求項４に記載の発明は、複数の自律ロボットが協調して行動する場合における自律ロボットの行動計画策定方法であって、前記行動計画策定方法は、自己の周辺環境を検出する周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識過程と、外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識過程において得られた周辺環境の情報と、無線通信を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて自己の行動計画を策定する行動計画策定過程とを有することを特徴とする。
【００１０】
請求項５に記載の発明は、前記自律ロボットの行動計画策定方法は、前記周辺環境認識過程おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定過程をさらに有し、前記行動計画策定過程は、無線通信を介して、自己の存在位置と行動計画を他の自律ロボットに対して通知するとともに、他の自律ロボットから通知される他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする。
【００１１】
請求項６に記載の発明は、複数の自律ロボットを同時に制御する自律ロボットの集中制御方法であって、前記集中制御方法は、無線通信を介して前記自律ロボットのそれぞれから通知される存在位置と行動計画を受信する過程と、前記存在位置と行動計画とから自律ロボットが行うべき行動を存在する自律ロボット毎に決定する過程と、無線通信を介して、前記自律ロボットが行うべき行動を前記自律ロボットのそれぞれに対して送信する過程とを有することを特徴する。
【００１２】
請求項７に記載の発明は、複数の自律ロボットが協調して行動する場合における自律ロボットの行動計画策定プログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記行動計画策定プログラムは、自己の周辺環境を検出する周辺環境検出センサから得られる検出データに基づいて、自己の周辺環境を認識して周辺環境情報を得る周辺環境認識処理と、外部から自己に対して予め指示された行動を実行するために、自己の行動計画を策定する際において、自己の周辺環境認識処理において得られた周辺環境の情報と、無線通信を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて自己の行動計画を策定する行動計画策定処理とをコンピュータに行わせることを特徴とする。
【００１３】
請求項８に記載の発明は、前記自律ロボットの行動計画策定プログラムは、前記周辺環境認識処理おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定処理をさらにコンピュータに行わせ、前記行動計画策定処理は、無線通信を介して、自己の存在位置と行動計画を他の自律ロボットに対して通知するとともに、他の自律ロボットから通知される他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御することを特徴とする。
【００１４】
請求項９に記載の発明は、複数の自律ロボットを同時に制御する自律ロボットの集中制御プログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記集中制御プログラムは、無線通信を介して前記自律ロボットのそれぞれから通知される存在位置と行動計画を受信する処理と、前記存在位置と行動計画とから自律ロボットが行うべき行動を存在する自律ロボット毎に決定する処理と、無線通信を介して、前記自律ロボットが行うべき行動を前記自律ロボットのそれぞれに対して送信する処理とをコンピュータに行わせることを特徴する。
【００１５】
【発明の実施の形態】
以下、本発明の一実施形態による自律ロボットを図面を参照して説明する。図１は同実施形態の構成を示すブロック図である。この図において、符号１は、自律型の２足歩行ロボット（以下、単にロボットと称する）である。符号２は、ロボット１が歩行する床面を認識するために、ロボット１の腰の高さに取り付けられた距離測定センサである。この距離測定センサ２は、スリット光を発して、ＣＣＤカメラによって物体の表面におけるこのスリット光の反射光を撮像し、スリット光を発した方向、光源の位置、及びＣＣＤカメラの位置から、自己と物体との間の距離を測定する光切断法を用いたセンサである。符号３は、物体と自己位置を認識するために、ロボット１の頭部に取り付けられた画像センサである。この画像センサ３は、２台のＣＣＤカメラを使用したステレオカメラであり、２つの画像から距離画像を生成するものである。
【００１６】
符号２１は、複数のロボット１の行動を制御する集中制御部である。符号２２は、集中制御部２１に接続され、無線通信によって通信を行う無線通信部である。符号４１は、無線通信によって通信を行うために、ロボット１に取り付けられたアンテナである。符号４２は、無線通信部２２に取り付けられたアンテナであり、アンテナ４１との間で電波の授受を行う。
【００１７】
図１においては、３台のロボット１を図示したが、４台以上であってもよく、また、ロボット１の台数に応じて、集中制御部２１の台数を増設し、複数の集中制御部２１間を無線通信によって連携させるようにしてもよい。
【００１８】
次に、図２を参照して、図１に示すロボット１の詳細な構成を説明する。図２は、図１に示すロボット１の構成を示すブロック図である。この図において、符号２、３は、それぞれ前述した距離測定センサ、画像センサである。符号４１は前述したアンテナである。符号５は、画像センサ３の出力に基づいて、視野内の物体を認識する物体認識部である。符号６は、距離測定センサ２の出力に基づいて床面を認識する床面認識部である。符号７は、物体認識部５及び床面認識部６からなる周辺環境認識部である。符号８は、周辺環境認識部７の出力に基づいてロボット１の行動計画を策定する行動計画策定部である。符号９は、行動計画策定部８によって策定された行動計画に基づいて、ロボット１の脚を制御する脚制御部である。符号１０は、脚制御部９から出力される制御信号に基づいてモータを回転して脚を駆動する脚駆動部であり、脚を駆動した量は行動計画策定部８へ通知される。
【００１９】
符号１１は、行動計画策定部８によって策定された行動計画に基づいて、ロボット１の腕を制御する腕制御部である。符号１２は、腕制御部１１から出力される制御信号に基づいて、モータを回転して腕を駆動する腕駆動部であり、腕を駆動した量は行動計画策定部８へ通知される。符号１３は、脚駆動部１０によって脚を駆動した量（ロボット１の移動量に相当する）、床面認識部６の出力、及び地図情報記憶部１６に記憶されている地図情報を参照して自己の現在位置を推定する自己位置推定部であり、推定した結果は行動計画策定部８へ出力される。地図情報記憶部１６には、外部から指定されたロボット１の行動可能な範囲の地図情報が記憶される。符号１４は、他のロボット１または集中制御部２１との間において、無線通信を使用して通信を行う無線通信部である。符号１５は、無線通信部１４を介して、情報の送受信を行う送受信部である。
【００２０】
次に、図３を参照して、図２に示すロボット１の動作を説明する。図３は、図２に示すロボット１の動作を示すフローチャートである。まず、送受信部１５は、無線通信部１４を介して、自己に対する行動指示を受信する（ステップＳ１）。この行動指示には、行動を起こす場所に関する情報が地図情報として含まれる。そして、受信した行動指示を行動計画策定部８へ通知するとともに、地図情報を地図情報記憶部１６へ記憶する。ここで指示される行動とは、例えば、「ここにある机を○○まで運搬せよ」、「全てのロボットによって、サッカーを行え」、「全てのロボットが縦列で行進せよ」等である。この行動指示は、複数のロボット１のうちいずれかの１台、または、全てのロボット１に対して、集中制御部２１から送信される。ここでは、「ここにある机を○○まで運搬せよ」と特定の１台に対して行動指示が出されたものとして説明する。
【００２１】
次に、行動計画策定部８は、周辺環境認識部７に対して、周辺環境の認識を指示する。これを受けて、距離センサ２は、床面に対してスリット光を照射し、その反射光をＣＣＤカメラによって撮像する。この撮像動作は、一定時間間隔で繰り返し行われ、撮像された画像は床面認識部６へ出力される。また、同時に画像センサ３は、ロボット１の前景を２台のＣＣＤカメラによって撮像し、それぞれの画像を物体認識部５へ出力する。このとき、距離測定センサ２と画像センサ３の出力タイミングは同期が取られている。
【００２２】
次に、床面認識部６は、反射光を撮像した画像に対して、光切断法の原理を用いて床面までの距離を測定して、ロボット１の前方の床面を認識する。一方、物体認識部５は、撮像された２つの画像から距離画像を生成し、床面認識部６における床面認識結果と生成した距離画像に基づいて、物体の認識を行う。ここで、認識された床面と物体の情報は行動計画策定部８へ出力される。
【００２３】
次に、行動計画策定部８は、物体認識部５及び床面認識部６において認識された床面と物体の情報に基づいて、自己の周辺環境を把握する（ステップＳ２）。行動計画策定部８は、「机を運ぶこと」が指示されているため、ここでは、物体認識部５によって認識された机の形状や大きさを把握するとともに、その机が床面に対してどのように置かれているか等を把握する。そして行動計画策定部８は、周辺環境の状況を把握した結果を受けて、自己の行動計画を策定する（ステップＳ３）。ここでいう行動計画とは、机を運搬するために、認識された床面と物体の情報に基づいて、机をどのように運搬するのか、また、運搬する場合にどのような経路で移動するのか等の行動を予め決めることである。また、行動計画には、決定した行動を起こすために、自己の腕や脚を具体的にどのように動作させるかも同時に決定する。
【００２４】
次に、行動計画策定部８は、行動指示を達成するための行動計画が策定できた否かを判断する（ステップＳ４）。ここで、行動計画が策定できなかった場合とは、例えば、運搬しようとする机が大きすぎて１台のロボットの腕では運搬が不可能であることが判明した場合や周辺環境の把握をするのに認識情報が不足していると判断された場合等である。行動計画策定部８は、行動計画が策定できなかった場合、他のロボット１に対して行動依頼を送信する（ステップＳ５）。そして、行動計画策定部８は、他のロボット１が送信した行動依頼に対する回答を取得する（ステップＳ６）。
【００２５】
ここで、図４を参照して、送信される行動依頼と行動依頼に対する回答の詳細について説明する。図４は、無線通信部１４を介して他のロボット１に対して送信される行動依頼または回答のデータフォーマットを示す説明図である。図４において、（ａ）は、行動依頼または回答の全体のフォーマット示している。図４（ａ）に示すように、行動依頼または回答は、「同期・通信制御」、「送信元ＩＤ」、「送信先ＩＤ」、及び「情報」とから構成されている。ここで、「同期・通信制御」とは、通常無線通信を行う場合に必要な情報である。「送信元ＩＤ」とは、送信しようとするロボット１に対して一意に付与された識別番号である。「送信先ＩＤ」とは、この行動の依頼をしたい相手のロボット１の識別番号である。なお、「送信先ＩＤ」を特定しない場合は、全てのロボット１が送信先となる。
【００２６】
また、「情報」とは、行動依頼または回答の内容を示す情報であり、その詳細を図４の（ｂ）、（ｃ）で示す。図４において、（ｂ）は、行動依頼の情報であり、（ｃ）は、行動依頼を受信したロボット１が送信する、行動依頼に対する回答の情報である。行動依頼の情報（ｂ）は、さらに７つの情報から構成される。「依頼フラグ」は、この情報が行動依頼であることを示すフラグである。「送信元の各駆動部信号」は、自己の駆動部に対してどのような信号が出力されているか示すものである。「送信元の現在位置」は、自己位置推定部１３によって推定された地図情報記憶部１６に記憶された地図上における自己の存在位置を示すものである。「床面認識結果」は、床面認識部６における床面の認識結果を示す情報である。「物体認識結果」は、物体認識部５における物体の認識結果を示す情報である。「送信元の行動計画」は、行動計画策定部８において策定された行動計画の情報であり、送信元のロボット１が起こそうとしている行動の内容である。「送信元からの依頼事項」は、他のロボット１に対する依頼内容である。
【００２７】
また、回答の情報（ｃ）も行動依頼の情報のように７つの情報から構成される。回答の情報が行動依頼の情報と異なる点は、「回答フラグ」（図４の（０）’）と「送信元からの回答事項」（図４の（６）’）である。「回答フラグ」は、この情報が行動依頼に対する回答であることを示すフラグである。「送信元からの回答事項」は、行動依頼に対する回答内容である。回答の情報（ｃ）において、（１）〜（５）の情報は、行動依頼の情報の（１）〜（５）と同じであるが、回答を送信するロボット１に関する情報であることが行動依頼と異なる。
なお、行動依頼の情報（ｂ）または回答の情報（ｃ）における（１）〜（５）に示す情報は必要に応じて送信される情報であり、必要ない場合は「空白」が送信される。
【００２８】
次に、行動計画策定部８は、行動計画を策定できたか否かを判断し、できない場合は、他のロボット１に行動を起こすように依頼をして、その結果を受けて再び行動計画を策定し、そして策定できたか否かを判定する。この判定の結果、未だ策定できない場合は、ステップＳ３〜Ｓ６の動作を繰り返す。
【００２９】
そして、行動計画が策定できた場合、行動計画策定部８は、脚制御部９及び腕制御部１１に対して、行動計画に基づく行動を起こすように指示を出す。これを受けて、脚制御部９及び腕制御部１１は、それぞれ脚駆動部１０、腕駆動部１２に対して制御信号を出力する。これによって脚及び腕が行動を起こす（ステップＳ７）。このとき、他のロボット１も行動依頼に基づいて行動を起こすため、複数のロボット１が協調して行動することが可能となる。
【００３０】
次に、行動計画策定部８は、ステップＳ１において受けた行動指示を達成したか否かを判定する（ステップＳ８）。この判定の結果、行動指示を達成していなければ、ステップＳ２へ戻り前述した動作を繰り返し、行動指示が達成されるまで続行する。
【００３１】
ここで、図３に示す動作を具体例を挙げて説明する。例えば、１台のみでは机を運搬することができない場合は、行動依頼の「送信先ＩＤ」を特定せずに、「送信元からの依頼事項」に「机の運搬」と指定して行動依頼を行う。これを受信した他のロボット１は、「送信先ＩＤ」に行動依頼を行ったロボット１のＩＤを指定して、「送信元からの回答事項」に「了解」と指定して回答を行う。
【００３２】
これを受けて行動依頼を行ったロボット１は、「了解」の回答をしたロボット１が送信した回答の情報から存在位置を確認し、自己の現在位置から一番近い位置に存在するロボット１を特定する。そして、行動計画策定部８は、再び行動計画を策定し、特定したロボット１に対して再び、行動依頼を行う。ここでの行動依頼は、自己の行動計画を相手のロボット１に対して示すとともに、この行動計画を実行するために、相手に行動してもらいたい動作を「依頼事項」とする。ここで相手に示される行動計画は、「自己の近くにある机を腕で持ち上げて○○まで、□□を通って、運ぶ」という行動計画であり、依頼事項は、「ここまで、移動してきて、机の片側を持ち上げるために腕を所定の位置に持ってくる」という行動の依頼を行う。
【００３３】
これを受けて、相手のロボット１は、机の側まで接近し、机の片側に腕を持ってくる動作を実行する。このとき、相手のロボット１に備えられた行動計画策定部８が行動依頼に基づいて具体的な行動計画を策定し、脚及び腕を制御することによってこの動作を実行する。
【００３４】
次に、行動依頼を行ったロボット１の行動計画策定部８は、依頼事項に「腕を持ち上げる」と指定して行動依頼を行う。この行動依頼には、持ち上げる時に手先等がたどるべき経路と速度の情報が含まれる。これを受けた相手のロボット１の行動計画策定部８は、指示に従う出力信号を各駆動部に対して出力する。これによって、２台のロボット１の腕が、同じタイミングでかつ同じ速度で机を持ち上げる動作を行うことができるようになる。
【００３５】
次に、行動計画策定部８は、先に決められている「○○まで、□□を通って、運ぶ」という行動を相手のロボット１に対して順に行動依頼を繰り返して、行動計画を実行するための行動を起こすとともに、時々刻々行動指示を達成したか否かを判断して行動を続行する。また、机を運ぶ際に、先行するロボット１は、脚を踏み出すタイミングを行動依頼によってを繰り返し送信するため後続するロボット１はこのタイミングに合わせて脚を踏み出すことが可能となる。さらに、この行動依頼には、先行するロボット１が取得した周辺環境の情報が含まれるために、後続するロボット１は前景が遮られていても、先行するロボット１が取得した周辺環境情報を使用して、自己の行動計画を策定することが可能となる。
【００３６】
このように、行動計画策定部８は、指示された行動指示を達成するために、具体的な行動計画を策定する際に、行動計画を策定できたか否かを判断し、できない場合は、他のロボット１に行動を起こすように依頼をして、その回答を受けて再び行動計画を策定し、この行動計画に基づいて行動を起こすようにしたため、自己のみでは達成できない行動であっても複数のロボット１が協調することによって確実に行動指示を達成することが可能となる。
また、行動依頼と回答の情報に、自己の動作の状態、自己の存在位置、周辺環境認識結果、自己の行動計画、及び相手に対する依頼事項を含めるようにしたため、他のロボット１が得た情報の取得や他のロボット１の状態を把握することができるために、行動計画を策定する場合の制限を緩和することが可能となる。
【００３７】
前述したロボット１を使用することによって、複数のロボット１が協調して行動を起こすことが可能となるために、複雑な作業であっても各ロボット１が作業分担することで、目的の作業を達成することができる。例えば、少なくとも１台のロボット１が周辺環境認識のみを受け持ち、その他のロボット１が机を運ぶという作業を受け持つことによって、机を運ぶロボット１は進む方向へ距離測定センサ２及び画像センサ３を向ける必要がなくなり、机の持ち方の自由度を向上させることが可能となる。また、周辺環境認識を受け持つロボット１は、机を運ぶロボット１の行動そのものを監視することが可能となるため、周辺環境を認識するとともに、机を運ぶロボット１に対して、脚を踏み出す合図を発することも可能となる。
【００３８】
また、複数のロボットが縦列に並んでパレードの行進を行うような場合において、先頭となるロボット１に対してのみ移動経路を指示し、後続のロボットには、追従することを指示するだけで行動を起こすことが可能となる。この場合、先頭のロボット１が取得した周辺環境情報を順次後続のロボット１へ通知して、周辺環境情報を共有するようにすれば、後続のロボットは自己の移動する領域のグローバルマップ（広範囲の地図情報）の取得が可能となり、個々のロボット１において複雑な処理をすることなしにパレードの行進を行うことが可能となる。さらに、異なる作業をしているロボット間においても、他のロボットが利用できるセンサ情報がある場合は、依頼に応じてその回答を返すことも可能である。
【００３９】
なお、前述した説明ではロボット１に対する行動指示は、無線通信を介して受信するようにしたが、ロボット１に行動指示を入力する入力手段を設け、行動指示の度に入力手段から入力するようにしてもよい。また、行動指示は予めロボット１内に記憶されており、電源投入の度に記録されている行動指示を読み出すようにしてもよい。このようにすることによって、外部から行動指示を出すことなく、複数のロボット１のみで行動依頼のやり取りをしながら行動を実行することが可能となる。
【００４０】
次に、集中制御部２１が複数のロボット１の制御を行う動作を説明する。ここでは、図１に示す３台のロボット１を使用してサッカーを行う動作を例にして説明する。
なお、集中制御部２１とロボット１との間で無線通信を介して通信される情報は、ロボット１が行動依頼を行う場合と同じあり、図４に示すフォーマットと同一である。ただし、集中制御部２１からロボット１に対する行動依頼は、ロボット１内において行動指示として扱われる。受信した行動依頼が行動指示であるか否かは、送信元のＩＤが集中制御部２１を示すＩＤであるか否かによって判断する。
【００４１】
以下の説明において、ロボット１の基本動作は、図３に示す通りであるので、ここでは、どのような情報がやり取りされるかを主に説明する。
まず、集中制御部２１は、全てのロボット１に対して、無線通信部２２を介して、行動依頼を送信する。この行動依頼は、「サッカーを開始せよ」という行動指示となる。この行動指示には、サッカーを行うサッカー場の地図情報が含まれ、この地図情報は、各ロボット１の地図情報記憶部１６に記憶される。これを受けて、３台のロボット１は、それぞれ行動計画を策定して、その行動計画を実行する。
【００４２】
図５は、２台のロボット１の間でサッカーボールをパスする動作を示す説明図である。図５において、ロボット１を区別するために３台のロボット１に対して符号１−１〜３を付与する。符号Ａ１、Ａ２、Ａ３は、ロボット１−１〜３のそれぞれの周辺環境検出エリアである。符号Ｂはサッカーボールである。
【００４３】
ロボット１−１が持っているサッカーボールＢを脚で蹴って、ロボット１−２へボールパスを行う場合、ロボット１−１は、ロボット１−２に対して「パスしたボールを後ろにさがりながら受ける」ように行動依頼を行う。このとき、ロボット１−１は、行動依頼に含まれる行動計画に、「ロボット１−２の方向（図５の符号Ｃで示す矢印の方向）へボールを蹴る」と指定するとともに、脚をどの方向へどの程度の速度でけり出すかを各駆動部信号に指定して行動依頼を送信する。
【００４４】
この行動依頼を受信したロボット１−２は、後ろへさがるために後ろ方向の周辺環境を得る必要があるため、後ろ方向に存在するロボットに対して周辺環境情報を送るように行動依頼を行う。この行動依頼を受けたロボット１−３は、行動依頼の回答を返す。この回答には、ロボット１−３が取得したエリアＡ３の情報が含まれるため、ロボット１−２は、この情報に基づいて、後ろへ脚を踏み出して後ろへさがる動作を行いながら、エリアＡ２内に存在するサッカーボールＢを認識してパスを受け取る。
【００４５】
このような動作を繰り返しながら、３台のロボット１−１〜３はサッカーを続行する。一方、集中制御部２１は、３台のロボット１−１〜３間において授受された行動依頼を全て受信しておき、図４（ｂ）（ｃ）に示すデータを各ロボット１毎に内部のデータベースに記録する。このようにすることによって、データベースには、各ロボット１の動作や位置などが時々刻々変化しながら記録されることとなる。そして、集中制御部２１は、時々刻々変化するデータベースの内容を参照しながら、各ロボット１が行うべき行動を決定し、行動指示を送信する。
なお、行動指示は、集中制御部２１を操作する作業者がデータベースの内容を参照しながらだすようにしてもよい。また、各ロボット１は、集中制御部２１に問い合わせを行うようにして、他のロボット１の現在位置を取得するようにしてもよい。
【００４６】
このように、集中制御部２１は、各ロボット１間でやり取りされる行動依頼を受信しておくことによって、各ロボット１の状況を把握し、その状況に応じて、各ロボット１が行うべき行動を指示するようにしたため、的確な行動指示をだすことが可能となる。特に同時に動作するロボット１が多数になる場合であっても、集中制御部２１が行動指示を出すようにしたため、各ロボット１における処理の負荷を低減することが可能となる。
また、各ロボット１が行う具体的な行動の計画は、集中制御部２１が送信する行動指示に基づいて、各ロボット１のみで行うようにしたため、集中制御部２１がロボット１の腕の動きまでを指示しなくても行動することができ、集中制御部２１の処理負荷も低減することが可能となる。
【００４７】
なお、図２に示す各構成の機能及び図３に示す動作を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより協調行動処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フロッピーディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００４８】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００４９】
【発明の効果】
以上説明したように、請求項１、２、４、５、７、８に記載の発明によれば、外部から自己に対して予め指示された行動指示を実行するために、自己の行動計画を策定する際に、周辺環境認識部において得られた周辺環境情報と、無線通信部を介して取得した他の自律ロボットが取得した周辺環境情報とに基づいて、自己の行動計画を策定して自己の行動を制御するようにしたため、自己のみでは達成できない行動であっても複数のロボットが協調することによって確実に行動指示を達成することができるという効果が得られる。また、周辺環境認識部おいて得られた周辺環境情報と自己の移動量に基づいて、自己の存在位置を推定する自己位置推定部をさらに備え、自己の存在位置と行動計画を他の自律ロボットに対して通知するとともに、他の自律ロボットから通知される他の自律ロボットの存在位置と行動計画を参照して、自己の行動を制御するようにしたため、協調作業をスムーズに行うことができるという効果も得られる。
【００５０】
また、請求項３、６、９に記載の発明によれば、各ロボット間でやり取りされる行動依頼を受信しておくことによって、各ロボットの状況を把握し、その状況に応じて、各ロボットが行うべき行動を指示するようにしたため、的確な行動指示を出すことが可能となる。特に同時に動作するロボットが多数になる場合であっても、集中制御部が行動指示を出すようにしたため、各ロボットにおける処理の負荷を低減することができるという効果が得られる。
【図面の簡単な説明】
【図１】  本発明の一実施形態の構成を示すブロック図である。
【図２】  図１に示すロボット１の構成を示すブロック図である。
【図３】  図２に示すロボット１の動作を示すフローチャートである。
【図４】  図２に示す行動計画策定部８が他のロボット１に備えられた行動計画策定部８との間で送受信する情報のフォーマットを示す説明図である。
【図５】  ロボット１に備えられたセンサの検出範囲を示す説明図である。
【符号の説明】
１・・・ロボット、        ２・・・距離測定センサ、
３・・・画像センサ、      ４１、４２・・・アンテナ、
５・・・物体認識部、      ６・・・床面認識部、
７・・・周辺環境認識部、  ８・・・行動計画策定部、
９・・・脚制御部、        １０・・・脚駆動部、
１１・・・腕制御部、      １２・・・腕駆動部、
１３・・・自己位置推定部、１４・・・無線通信部、
１５・・・送受信部、      ２１・・・集中制御部、
２２・・・無線通信部。
【図１】
0004401564.tif 000002
【図２】
0004401564.tif 000003
【図３】
0004401564.tif 000004
【図４】
0004401564.tif 000005
【図５】
0004401564.tif 000006