(57)【要約】  一つ以上の移動体２０の経路計画において、デッドロックを検知した場合、移動体と待避場所との間を結ぶ第一の経路を探索する、探索部２と、移動体２０ごとに探索した第一の経路が衝突しないように、移動体２０から目標場所までの第二の経路を再計画する、再計画部３と、を有する経路計画装置である。
2020105189.tif 000002
【特許請求の範囲】
【請求項１】
一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、探索手段と、
前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、再計画手段と、
を有することを特徴とする経路計画装置。
【請求項２】
請求項１に記載の経路計画装置であって、
前記探索手段は、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項３】
請求項１に記載の経路計画装置であって、
前記探索手段は、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項４】
請求項１に記載の経路計画装置であって、
前記探索手段は、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項５】
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を有することを特徴とする経路計画方法。
【請求項６】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項７】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項８】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項９】
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させる命令を含むプログラムを記録しているコンピュータ読み取り可能な記録媒体。
【請求項１０】
請求項９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１１】
請求項９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１２】
請求項９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体の経路を計画する、経路計画装置、及び経路計画方法に関し、更には、これらを実現するためのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
従来から、無人搬送車（ＡＧＶ：Automated guided Vehicle）は、作業効率及び生産効率などを向上させるため、種々の工場において導入されている。また、無人搬送車は、種々の物流施設においても、作業効率及び迅速な配送などを実現するために導入されている。【０００３】
非特許文献１には、上述した工場、物流施設において用いられる、複数の無人搬送車を、待避させる待避場所（エンドポイント）を設ける技術が開示されている。待避場所は、無人搬送車が停車していても、他の無人搬送車の経路を遮らない場所に設ける。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Hang Ma  Jiaoyang Li  T. K. Satish Kumar  Sven Koenig, “Lifelong Multi-Agent Path Finding for Online Pickup and Delivery Tasks”,［online］，AAMAS，May 11, 2017，［June01, 2018検索］，＜URL：http://www-scf.usc.edu/~hangma/pub/aamas17_slides.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１に開示された技術を用いただけでは、上述した工場、物流施設などにおいて、運用されている複数の無人搬送車は、アクシデントが発生した場合、デッドロックを回避できないことがある。【０００６】
具体的には、搬送の遅延、障害物（人、物体など）による経路の遮断、故障などのアクシデントが発生し、無人搬送車が再計画をした場合、デッドロックが発生することがある。デッドロックとは、無人搬送車が互いの経路を遮り、無人搬送車が動けなくなる状態である。【０００７】
本発明の目的の一例は、デッドロックを回避する、経路計画装置、経路計画方法、及びコンピュータ読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の一側面における経路計画装置は、
一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、探索部と、
前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、再計画部と、
を有することを特徴とする。【０００９】
また、上記目的を達成するため、本発明の一側面における経路計画方法は、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を有することを特徴とする。【００１０】
更に、上記目的を達成するため、本発明の一側面におけるプログラムを記録したコンピュータ読み取り可能な記録媒体は、
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させる命令を含むプログラムを記録していることを特徴とする。
【発明の効果】
【００１１】
以上のように本発明によれば、デッドロックを回避することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、経路計画装置の一例を示す図である。
【図２】図２は、経路計画装置を有する（１）のシステムの一例を示す図である。
【図３】図３は、経路計画装置を有する（２）のシステムの一例を示す図である。
【図４】図４は、経路計画装置を有する（３）のシステムの一例を示す図である。
【図５】図５は、経路計画通りに移動体が移動した場合の経路を示す図である。
【図６】図６は、経路計画通りに移動体が移動できない場合の経路を示す図である。
【図７】図７は、再計画をした経路を示す図である。
【図８】図８は、経路計画通りに移動体が移動できない場合の経路を示す図である。
【図９】図９は、経路計画通りに移動体が移動できない場合の経路を示す図である。
【図１０】図１０は、グリッドマップからグラフを生成する説明をするための図である。
【図１１】図１１は、グリッドマップからグラフを生成する説明をするための図である。
【図１２】図１２は、グリッドマップからグラフを生成する説明をするための図である。
【図１３】図１３は、グリッドマップからグラフを生成する説明をするための図である。
【図１４】図１４は、経路計画装置の動作の一例を示す図である。
【図１５】図１５は、経路計画装置を実現するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１３】
（実施の形態）
以下、本発明の実施の形態について、図１から図１５を参照しながら説明する。
【００１４】
［装置構成］
最初に、図１を用いて、本実施の形態における経路計画装置１の構成について説明する。図１は、経路計画装置の一例を示す図である。
【００１５】
図１に示す経路計画装置１は、移動体の経路計画をするとともに、デッドロックの回避をする装置である。また、図１に示すように、経路計画装置１は、探索部２と、再計画部３とを有する。
【００１６】
このうち、探索部２は、一つ以上の移動体の経路計画において、デッドロックを検知した場合、移動体と待避場所（エンドポイント）との間を結ぶ経路（第一の経路）を探索する。再計画部３は、移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所（ゴールポイント）までの経路（第二の経路）を再計画する。
【００１７】
このように、本実施の形態においては、デッドロックを検知した場合、第一の経路に従って待避場所に移動し、待避場所から目標場所まで移動する経路を再計画することができるので、移動体は、デッドロックが発生しても、デッドロックを回避して、目標場所まで移動することができる。
【００１８】
［システム構成］
続いて、図２、図３、図４を用いて、本実施の形態における経路計画装置１の構成をより具体的に説明する。図２、図３、図４それぞれは、経路計画装置を有する（１）（２）（３）システムの一例を示す図である。図２、図３、図４それぞれに示すように、本実施の形態におけるシステムは、経路計画装置１と複数の移動体２０とを有する。
【００１９】
（１）移動体制御装置主体型のシステム
図２は、経路計画装置１を移動体制御装置１０に設けたシステムである。図２に示されている移動体制御装置１０は、経路計画装置１、通信部１１、指示部１２を有する。そのうち経路計画装置１は、探索部２、再計画部３に加えて、経路計画部４、検知部５を有する。移動体２０は、通信部２１、センサ部２２、位置推定部２３、移動制御部２４、移動部２５を有する。
【００２０】
（２）移動体主体型のシステム
図３は、経路計画装置１を移動体２０に設けたシステムである。図３の例では、移動体２０のいずれか一つをマスタとし、マスタとなる移動体２０に経路計画装置１を設ける。図３に示されている移動体制御装置１０は、通信部１１、指示部１２を有する。移動体２０は、経路計画装置１、通信部２１、センサ部２２、位置推定部２３、移動制御部２４、移動部２５を有する。そのうち経路計画装置１は、探索部２、再計画部３に加えて、経路計画部４、検知部５を有する。
【００２１】
（３）分散型のシステム
図４は、経路計画装置１の機能を、移動体制御装置１０と移動体２０とに分散して設けたシステムである。図４に示されている移動体制御装置１０は、通信部１１、指示部１２に加えて、経路計画装置１のうち探索部２、再計画部３、検知部５を有する。また、図４に示されている移動体２０それぞれは、通信部２１、センサ部２２、位置推定部２３、移動制御部２４、移動部２５に加えて、経路計画装置１のうち経路計画部４′を有する。なお、経路計画部４′は、移動体２０ごとの経路計画を行う。
【００２２】
なお、システムの構成は、上述した（１）（２）（３）に示したシステム以外の構成でもよい。具体的には、（１）（２）（３）のシステムと異なる構成に、探索部２、再計画部３、経路計画部４、４′、検知部５を、移動体制御装置１０と移動体２０とに分散させてもよい。その場合、移動体制御装置１０と移動体２０との構成内容に応じて、通信部１１と通信部２１との通信内容を変更する。
【００２３】
移動体制御装置について説明する。
移動体制御装置１０は、移動体２０それぞれに対して、移動体２０を目標場所まで移動させるための制御をする。なお、移動体制御装置１０は、例えば、サーバコンピュータなどの情報処理装置である。
【００２４】
通信部１１は、移動体２０の通信部２１と通信をする。具体的には、通信部１１は、（１）（２）（３）のシステムにおいて、移動体２０を移動させるための指示を表す指示情報などを、移動体２０へ送信する。また、通信部１１は、（１）のシステムにおいて、移動体２０の位置を表す位置情報などを、移動体２０から受信する。また、通信部１１は、（３）のシステムにおいて、移動体２０の位置を表す位置情報と、移動体２０が移動する経路を表す経路情報などを、移動体２０から受信する。
【００２５】
指示部１２は、移動体２０に対して、移動体２０を移動させる指示をする。具体的には、指示部１２は、移動体２０を目標場所へ移動させるための指示を表す指示情報を生成する。
【００２６】
経路計画装置１は、移動体２０を目標場所、待避場所に移動させるための経路を計画する。また、経路計画装置１は、デッドロックを回避する経路を計画する。
【００２７】
具体的には、経路計画装置１は、位置情報と、地図情報と、移動体２０が到達する目標場所を表す目標場所情報と、移動体２０が待避する待避場所を表す待避場所情報とを用いて、目標場所、待避場所に移動体２０を移動する場合に用いる経路情報を生成する。
【００２８】
地図情報は、対象の施設内の配置図などを表す情報である。地図情報は、例えば、工場、物流施設において移動体２０が移動する経路、移動体２０が到達する目標場所、移動体２０が待避する待避場所などを表す情報を有する。また、地図情報として、例えば、グリッドマップなどを用いることが望ましい。更に、地図情報は、移動体制御装置１０内部、又は移動体２０内部、又はそれら以外に設けられた不図示の記憶部に記憶されている。
【００２９】
移動体について説明する。
移動体２０は、移動体制御装置１０から指示情報を取得し、目標場所まで移動する。具体的には、移動体２０として、無人搬送車、自動走行車両、自動飛行体、自動航行船舶、ロボットなどが考えられる。
【００３０】
通信部２１は、移動体制御装置１０の通信部１１と通信をする。具体的には、通信部２１は、（１）のシステムにおいて、位置情報などを移動体制御装置１０へ送信する。また、（３）のシステムにおいて、位置情報、経路情報などを移動体制御装置１０へ送信する。また、通信部２１は、（１）（２）（３）のシステムにおいて、移動体２０を移動させる指示を表す指示情報などを、移動体制御装置１０から受信する。
【００３１】
センサ部２２は、移動体２０の状態、対象物（例えば、トレイ、棚など）、移動体２０の移動を補助する標識、実際の経路上の障害物などを検知するセンサなどである。具体的には、センサ部２２は、レーダ、超音波センサ、撮像装置、ジャイロ、エンコーダ、ＧＰＳ（Global Positioning System）などの装置のうち一つ以上を有する。
【００３２】
位置推定部２３は、移動体２０の自己位置を推定する。具体的には、位置推定部２３は、センサ部２２の計測結果を表す計測情報を取得し、取得した計測情報に基づいて、移動体２０の自己位置を推定する。
【００３３】
移動制御部２４は、移動体２０に設けられた、移動体２０を移動させる移動部２５を制御する。具体的には、移動制御部２４は、上述した経路情報を用いて、移動部２５を制御し、移動体２０を目標場所、待避場所へ移動させる。
【００３４】
移動部２５は、移動体２０を移動させる装置である。具体的には、移動体２０が電気車両であれ場合、移動部２５は、モータ、車輪、電池などの電気車両を移動させるために必要な手段である。
【００３５】
経路計画装置について説明をする。
経路計画部４は、（１）（２）のシステムにおいて、移動体２０それぞれを、移動体２０それぞれに対応する目標場所へ移動させる経路情報を生成する。具体的には、経路計画部４は、位置情報と、地図情報と、目標場所情報と、待避場所情報とを用いて、移動体２０それぞれを、対応する目標場所へ移動させる場合に用いる経路情報を生成する。
【００３６】
経路計画部４′は、（３）のシステムにおいて、経路計画部４′が設けられた移動体２０を、当該移動体２０に対応する目標場所へ移動させる経路情報を生成する。具体的には、経路計画部４′は、位置情報と、地図情報と、目標場所情報と、待避場所情報とを用いて、経路計画部４′が設けられた移動体２０を、対応する目標場所へ移動させる場合に用いる経路情報を生成する。
【００３７】
図５は、経路計画通りに移動体が移動した場合の経路を示す図である。図５のグリッドマップには、グリッド範囲（以降、グリッドと呼ぶ）に、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）、目標場所（Ｇ１）（Ｇ２）（Ｇ３）、待避場所（Ｅ１）（Ｅ２）（Ｅ３）、移動不可場所（網掛け範囲）、経路（矢印線）が示されている。
【００３８】
図５のＡには、移動体２０（Ｍ１）が目標場所（Ｇ１）に向かう経路Ｒ＿Ｍ１が示されている。図５のＢには、移動体２０（Ｍ２）が目標場所（Ｇ２）に向かう経路Ｒ＿Ｍ２が示されている。図５のＣには、移動体２０（Ｍ３）が目標場所（Ｇ３）に向かう経路Ｒ＿Ｍ３が示されている。
【００３９】
経路Ｒ＿Ｍ１、Ｒ＿Ｍ２、Ｒ＿Ｍ３を示す経路情報は、例えば、数１のように表すことができる。
【００４０】
（数１）
経路Ｒ＿Ｍ１＝{(d3,0),(d2,1), (c2,2),(b2,3),(b1,4)}
経路Ｒ＿Ｍ２＝{(d2,0),(c2,1), (b2,2),(b3,3),(b4,4),(a4,5)}
経路Ｒ＿Ｍ３＝{(c2,0),(b2,1), (b3,2),(b4,3),(c4,4),(c5,5)}
小括弧内の左項：グリッドの位置を示す情報。
小括弧内の右項：移動体２０が次のグリッドへ移動するために要する時間を示す情報。
【００４１】
検知部５は、（１）（２）（３）のシステムにおいて、地図情報と位置情報とを用いて、デッドロックを検知する。具体的には、検知部５は、複数の移動体２０が所定範囲において所定時間停滞している場合、移動体２０がデッドロックしていると判定する。
【００４２】
探索部２は、一つ以上の移動体２０の経路計画において、移動体２０がデッドロックしていることを検知した場合、後述する（Ａ）（Ｂ）（Ｃ）の方式を用いて、移動体２０と待避場所との間を結ぶ経路を探索する。具体的には、探索部２は、（Ａ）待避場所から最短距離に位置する移動体２０を選択し、選択した移動体２０と当該待避場所とを用いて、経路を探索（第一の経路）する。
【００４３】
又は、探索部２は、（Ｂ）移動体２０から最短距離に位置する他の移動体２０に選択されていない未選択の待避場所を選択し、移動体２０から選択した待避場所までの経路を生成し、当該経路上に位置する選択した待避場所に最も近い移動体２０と、選択した待避場所とを用いて、経路（第一の経路）を探索する。又は、探索部２は、（Ｃ）最小コストフロー処理を用いて、移動体２０ごとに、経路（第一の経路）を探索する。
【００４４】
再計画部３は、移動体２０ごとに、探索した経路（第一の経路）が衝突しないように、移動体２０から目標場所までの経路（第二の経路）を再計画する。具体的には、再計画部３は、すべての移動体２０が第一の経路を計画したことを検知した後、移動体２０ごとに、移動体２０から目標場所までの経路を再計画し、以前の経路を再計画した経路に更新する。
【００４５】
（Ａ）の方式によるデッドロック回避について説明する。
（Ａ）の方式としては、例えば、Ａ＊（Ａ−Ｓｔａｒ）アルゴリズを用いることが考えられる。図６は、経路計画通りに移動体が移動できない場合の経路を示す図である。図６のＡには、障害物（黒色四角）がグリッドｂ３に置かれたため、図５に示した移動体２０（Ｍ１）（Ｍ２）（Ｍ３）それぞれの経路Ｒ＿Ｍ１、Ｒ＿Ｍ２、Ｒ＿Ｍ３が遮断されたことが示されている。すなわち、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）それぞれについて、目標場所（Ｇ１）（Ｇ２）（Ｇ３）へ到達する経路が得られず、デッドロックしたことが示されている。
【００４６】
移動体２０（Ｍ２）（Ｍ３）が移動しない場合、移動体２０（Ｍ１）は目標場所（Ｇ１）へ到達できない。また、移動体２０（Ｍ１）が移動しない場合、移動体２０（Ｍ２）は目標場所（Ｇ２）へ到達できない。更に、移動体２０（Ｍ１）（Ｍ２）が移動しない場合、移動体２０（Ｍ３）は目標場所（Ｇ３）へ到達できない。
【００４７】
探索部２は、デッドロックを検知した場合、あらかじめ設定された順に待避場所を選択し、選択した待避場所から最短のグリッドに位置する移動体２０を探索する。
【００４８】
具体的には、探索部２は、待避場所を選択する順番が（Ｅ１）（Ｅ２）（Ｅ３）の順に設定されていた場合、まず、図６のＢに示すように、待避場所（Ｅ１）から最短のグリッドに位置する移動体２０（Ｍ３）を選択する。そして、探索部２は、待避場所（Ｅ１）と移動体２０（Ｍ３）との間を結ぶ経路Ｒ＿Ｅ１（図６のＢの矢印線）を記憶部に記憶する。
【００４９】
続いて、探索部２は、図６のＣに示すように、選択した移動体２０（Ｍ３）を除外し、待避場所（Ｅ２）から最短のグリッドに位置する移動体２０（Ｍ１）を選択し、待避場所（Ｅ２）と移動体２０（Ｍ１）との間を結ぶ経路Ｒ＿Ｅ２（図６のＣの矢印線）を記憶部に記憶する。
【００５０】
続いて、探索部２は、図６のＤに示すように、選択した移動体２０（Ｍ３）（Ｍ１）を除外し、待避場所（Ｅ３）から最短のグリッドに位置する移動体２０（Ｍ２）を選択し、待避場所（Ｅ３）と移動体２０（Ｍ２）との間を結ぶ経路Ｒ＿Ｅ３（図４のＤの矢印線）を記憶部に記憶する。例えば、探索部２は、数２に示すような、経路Ｒ＿Ｅ１、Ｒ＿Ｅ２、Ｒ＿Ｅ３を記憶部に記憶する。
【００５１】
（数２）
経路Ｒ＿Ｅ１＝{(b2,0),(a2,1),(a2,2)……}
経路Ｒ＿Ｅ２＝{(d2,0),(e2,1),(e3,2)……}
経路Ｒ＿Ｅ３＝{(c2,0),(d2,1),(d3,2),(d4,3),(e4,4)}
【００５２】
なお、上述した記憶部は、移動体制御装置１０に設けてもよいし、移動体２０に設けてもよいし、移動体制御装置１０、移動体２０以外に設けてもよい。また、待避場所を選択する順番は、上述した順番に限定されるものではない。更に、探索部２は、移動体２０と待避場所とを結びつけた経路Ｒ＿Ｅ１、Ｒ＿Ｅ２、Ｒ＿Ｅ３が衝突しないように経路を探索する。
【００５３】
続いて、再計画部３は、あらかじめ設定された順に移動体２０を選択し、探索部２を用いて探索した経路が衝突しないように、移動体２０から目標場所までの経路を再計画する。図７を用いて、再計画部３について、詳細な説明をする。図７は、再計画をした経路を示す図である。
【００５４】
具体的には、再計画部３は、移動体２０を選択する順番を（Ｍ１）（Ｍ２）（Ｍ３）の順に設定した場合、まず、図６のＡにおける時間（０）の状態から、移動体２０（Ｍ１）から目標場所（Ｇ１）までの経路を再計画する。
【００５５】
例えば、時間（１）において、図７のＡに示すように、移動体２０（Ｍ１）は、数２に基づいて、グリッドｄ２から待避場所（Ｅ２）へ移動させる。その場合、移動体２０（Ｍ２）は、数２に基づいて、待避場所（Ｅ３）へ移動させるため、グリッドｄ２に移動させる。また、移動体２０（Ｍ３）は、数２に基づいて、待避場所（Ｅ１）に移動させる。
【００５６】
時間（２）において、移動体２０（Ｍ１）は、待避場所（Ｅ２）からグリッドｄ２へ移動させる。その場合、移動体２０（Ｍ２）は、グリッドｄ２からｄ３に移動させ、移動体２０（Ｍ３）は継続して待避場所（Ｅ１）で待避させる。
【００５７】
時間（３）（４）（５）において、移動体２０（Ｍ１）は、グリッドｃ２、ｂ２、ｂ１へと移動させる。すなわち、移動体２０（Ｍ１）は、時間（５）において目標場所（Ｇ１）に到達する。その場合、移動体２０（Ｍ２）は、時間（３）（４）（５）において、グリッドｄ４、ｃ４、ｂ４に移動させる。移動体２０（Ｍ３）は、時間（３）（４）において、継続して待避場所（Ｅ１）に待避させる。
【００５８】
このように、再計画部３は、図７のＡに示すように、移動体２０（Ｍ１）を待避場所（Ｅ５）に待避させた後、待避場所（Ｅ５）から目標場所（Ｇ１）までの経路を再計画し、経路Ｒ＿Ｍ１を再計画した経路に更新する。再計画部３は、数３に示すような、経路Ｒ＿Ｍ１を記憶部に記憶する。
【００５９】
（数３）
経路Ｒ＿Ｍ１＝{(d2,0),(e2,1),(d2,2),(c2,3),(b1,4),(a1,5)}
【００６０】
続いて、再計画部３は、移動体２０（Ｍ２）を選択して、図６のＡにおける時間（０）の状態から、数２に基づいて、移動体２０（Ｍ２）から目標場所（Ｇ２）までの経路を再計画する。
【００６１】
例えば、移動体２０（Ｍ２）は、図６のＤに示すように、数２に基づいて、グリッドｃ２から待避場所（Ｅ３）へ移動させる。時間（１）において、移動体２０（Ｍ１）を待避場所（Ｅ２）へ移動させるため、移動体２０（Ｍ２）は、グリッドｃ２からグリッドｄ２へ移動できる。
【００６２】
時間（２）（３）（４）において、移動体２０（Ｍ２）は、グリッドｄ３、ｄ４、ｅ４に移動させる。すなわち、待避場所（Ｅ３）に待避させる。次に、時間（５）（６）（７）（８）において、移動体２０（Ｍ２）は、グリッドｄ４、ｃ４、ｂ４、ａ４の順に移動させて、目標場所（Ｇ２）に到達させる。
【００６３】
ただし、移動体２０（Ｍ２）は、待避場所（Ｅ３）に待避させなくてもよい。すなわち、移動体２０（Ｍ２）の経路が、移動体２０（Ｍ１）（Ｍ３）の経路と衝突しない場合、待避場所（Ｅ３）に移動せず、目標場所（Ｇ２）に直接移動させてもよい。
【００６４】
このように、再計画部３は、図７のＢに示すように、移動体２０（Ｍ２）を目標場所（Ｇ２）までの経路を再計画し、経路Ｒ＿Ｍ２を再計画した経路に更新する。再計画部３は、数４に示すような、経路Ｒ＿Ｍ２を記憶部に記憶する。
【００６５】
（数４）
経路Ｒ＿Ｍ２＝{(c2,0),(d2,1),(d3,2),(d4,3),(c4,4),(b4,5),(a4,6)}
【００６６】
続いて、再計画部３は、移動体２０（Ｍ３）を選択して、図６のＡにおける時間（０）の状態から、数２に基づいて、移動体２０（Ｍ３）から目標場所（Ｇ３）までの経路を再計画する。
【００６７】
時間（１）において、移動体２０（Ｍ３）は、図７のＣに示すように、数２に基づいて、グリッドｂ２から待避場所（Ｅ１）へ移動させる。次に、時間（２）から（４）において、継続して待避場所（Ｅ１）に待避させる。
【００６８】
時間（５）において、移動体２０（Ｍ１）が目標場所（Ｇ１）に到達しているので、移動体２０（Ｍ３）は、グリッドｂ２へ移動させる。その後、時間（６）から（１１）において、移動体２０（Ｍ３）は、グリッドｃ２、ｄ２、ｄ３、ｄ４、ｃ４、ｃ５に移動させて、目標場所（Ｇ３）に到達させる。
【００６９】
このように、再計画部３は、図７のＣに示すように、移動体２０（Ｍ３）を目標場所（Ｇ３）までの経路を再計画し、経路Ｒ＿Ｍ３を再計画した経路に更新する。再計画部３は、数５に示すような、経路Ｒ＿Ｍ３を記憶部に記憶する。
【００７０】
（数５）
経路Ｒ＿Ｍ３＝{(b2,0),(a2,1),(a2,2),(a2,3),(a2,4),(b2,5),
(c2,6),(d2,7),(d3,8),(d4,9),(c4,10),(c5,11)}
【００７１】
（Ｂ）の方式によるデッドロック回避について説明する。
（Ｂ）の方式としては、例えば、以下に示すアルゴリズを用いることが考えられる。図８、図９は、経路計画通りに移動体が移動できない場合の経路を示す図である。図８のＡには、障害物（黒色四角）がグリッドｂ３に置かれたため、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）それぞれの経路が遮断されたことを示している。
【００７２】
図８のグリッドマップには、グリッドに、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）、待避場所（Ｅ１）（Ｅ２）（Ｅ３）、目標場所（Ｇ１）（Ｇ２）（Ｇ３）、移動不可場所（網掛け範囲）、経路（矢印線）が示されている。
【００７３】
図８のＡには、障害物（黒色四角）がグリッドｂ３に置かれたため、図８のＡに示した移動体２０（Ｍ１）（Ｍ２）（Ｍ３）それぞれの経路が遮断されたことを示している。すなわち、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）それぞれについて、目標場所（Ｇ１）（Ｇ２）（Ｇ３）へ到達する経路が得られず、デッドロックしたことが示されている。
【００７４】
移動体２０（Ｍ２）（Ｍ３）が移動しない場合、移動体２０（Ｍ１）は目標場所（Ｇ１）へ到達できない。また、移動体２０（Ｍ１）が移動しない場合、移動体２０（Ｍ２）は目標場所（Ｇ２）へ到達できない。更に、移動体２０（Ｍ１）（Ｍ２）が移動しない場合、移動体２０（Ｍ３）は目標場所（Ｇ３）へ到達できない。
【００７５】
探索部２は、デッドロックを検知した場合、移動体２０から最短距離に位置する他の移動体２０に選択されていない未選択の待避場所を選択する。続いて、探索部２は、移動体２０から選択した待避場所までの経路を生成し、当該経路上に位置する選択した待避場所に最も近い移動体２０と、選択した待避場所とを用いて、経路を探索する。
【００７６】
具体的には、探索部２は、まず、基点となる移動体２０を選択する。図８のＢの例では、移動体２０（Ｍ３）を基点とする。続いて、探索部２は、移動体２０（Ｍ３）から最短距離に位置する待避場所（Ｅ１）を選択する。その後、探索部２は、数６に示すような、移動体２０（Ｍ３）から選択した待避場所（Ｅ１）との間を結ぶ経路Ｒ＿Ｍ３Ｅ１を生成する。
【００７７】
（数６）
経路Ｍ３Ｅ１＝{(b2,0),(c2,1),(d2,2),(d1,3)}
【００７８】
続いて、探索部２は、経路Ｒ＿Ｍ３Ｅ１上に存在する移動体２０（Ｍ１）（Ｍ２）を選択した後、更に、移動体２０（Ｍ１）に最も近い待避場所（Ｅ１）を選択する。そして、図８のＣに示すような、探索部２は、移動体２０（Ｍ１）から待避場所（Ｅ１）との間を結ぶ経路Ｒ＿Ｍ１Ｅ１を生成し、記憶部に記憶する。探索部２は、数７に示すような、経路Ｒ＿Ｍ１Ｅ１を記憶部に記憶する。
【００７９】
（数７）
経路Ｍ１Ｅ１＝{(d2,0),(d1,1)}
【００８０】
続いて、探索部２は、待避場所（Ｅ１）を除外して、図９のＡに示すように、移動体２０（Ｍ３）から最短距離に位置する待避場所（Ｅ２）を選択する。その後、探索部２は、数８に示すような、移動体２０（Ｍ３）から選択した待避場所（Ｅ２）との間を結ぶ経路Ｒ＿Ｍ３Ｅ２を生成する。
【００８１】
（数８）
経路Ｍ３Ｅ２＝{(b2,0),(c2,1),(d2,2),(e1,3)}
【００８２】
探索部２は、移動体２０（Ｍ１）を除外して、経路Ｒ＿Ｍ３Ｅ２上に存在する移動体２０（Ｍ２）を選択した後、更に、移動体２０（Ｍ２）に最も近い待避場所（Ｅ２）を選択する。そして、図９のＢに示すような、探索部２は、移動体２０（Ｍ２）から待避場所（Ｅ２）との間を結ぶ経路Ｒ＿Ｍ２Ｅ２を生成し、記憶部に記憶する。探索部２は、数９に示すような、経路Ｒ＿Ｍ２Ｅ２を記憶部に記憶する。
【００８３】
（数９）
経路Ｍ２Ｅ２＝{(c2,0),(d2,1),(e2,1)}
【００８４】
続いて、探索部２は、待避場所（Ｅ１）（Ｅ２）を除外して、図９のＣに示すように、移動体２０（Ｍ３）から最短距離に位置する待避場所（Ｅ３）を選択する。その後、探索部２は、数１０に示すような、移動体２０（Ｍ３）から選択した待避場所（Ｅ３）との間を結ぶ経路Ｒ＿Ｍ３Ｅ３を生成する。
【００８５】
（数１０）
経路Ｍ３Ｅ３＝{(b2,0),(c2,1),(d2,2),(d3,3),(d4,4),(e4,5)}
【００８６】
続いて、探索部２は、全ての移動体２０（Ｍ１）（Ｍ２）（Ｍ３）が待避場所に待避された場合、基点である移動体２０（Ｍ３）の権限を外す。なお、移動体２０（Ｍ１）（Ｍ２）（Ｍ３）以外にも移動体２０がある場合、探索部２は、他の移動体２０を基点として待避場所への経路を探索する。
【００８７】
続いて、再計画部３は、あらかじめ設定された順に移動体２０を選択し、探索部２を用いて探索した経路が衝突しないように、移動体２０から目標場所までの経路を再計画する。
【００８８】
（Ｃ）の方式によるデッドロック回避について説明する。
（Ｃ）の方式としては、例えば、最小コストフロー処理を用いることが考えられる。探索部２は、デッドロックを検知した場合、最小コストフロー処理を用いて、移動体２０ごとに、移動体２０から選択した待避場所までの経路を探索する。
【００８９】
具体的には、最小コストフロー処理は、グラフＴ、需要供給ｂ、容量ｕ、コストｃを入力して、需要供給を満たす総費用が最小のフローを出力する。グラフは、例えば、図１０、図１１、図１２、図１３に示すようにグリッドマップから生成する。図１０、図１１、図１２、図１３は、グリッドマップからグラフを生成する説明をするための図である。
【００９０】
図１０のＡに示すグリッドマップからグラフを生成する場合について説明する。まず、図１０のＡのグリッドの関係は、図１０のＢに示すグラフで表すことができる。図１０のＢにおけるグリッドに対応するノードはグリッドの位置を示し、矢印線はグリッドの隣接関係を示している。
【００９１】
次に、図１０のＣに示すように、時刻ｔ＝０、１、２ごとに、ノード（ａ１）（ｃ１）（ａ２）（ｂ２）（ｃ２）を配列し、次の時刻における同じノード、隣接しているノードをエッジ（矢印線）で接続する。次に、図１１のＡに示す交差するエッジ（点線矢印線）を、時間拡張グラフ（Time Expanded Graph）処理を用いて、図１１のＢに示すグラフに変換する。ここで、時刻ｔ＝０、１、２は、移動体２０が次のグリッドへ移動するために要する時間を示す情報である。
【００９２】
続いて、待避場所に隣接するノードをグラフに追加してグラフＴを生成する。図１２の例では、ノードｂ２、ｃ２を待避場所とし、ノード（ｂ２）（ｃ２）に隣接するノード（ｇ′）を追加する。そして、時刻ｔ＝０、１、２それぞれの、ノード（ｂ２）（ｃ２）とノード（ｇ′）とをエッジ（矢印一点鎖線）で接続する。
【００９３】
続いて、移動体２０の位置に対応する時刻ｔ＝０のノードを供給１のノードとし、ノード（ｇ′）以外のノードを供給０のノードとし、ノード（ｇ′）の需要を、需要と供給の和が０になるようにした需要供給ｂを求める。また、エッジそれぞれの容量が１になる容量ｕ、時刻ｔ＝０ノード（ａ１）（ｃ１）（ａ２）（ｂ２）（ｃ２）に入力するエッジのコストを１とし、それ以外を０としたコストｃを求める。
【００９４】
続いて、最小コストフロー処理に、グラフＴ、需要供給ｂ、容量ｕ、コストｃを入力して、出力されたフローｆから経路を取り出する。
【００９５】
具体的には、図１３の時刻ｔ＝０において、移動体２０がノード（ａ１）に位置する場合、経路情報として経路Ｒ＝｛(a1,0)｝を記憶部に記憶する。続いて、時刻ｔ＝１において、移動体２０がノード（ａ２）に移動する場合、経路情報として経路Ｒ＝｛(a1,0),(a2,1)｝を記憶部に記憶する。続いて、時刻ｔ＝２において、移動体２０がノード（ｂ２）に移動する場合、経路情報として経路Ｒ＝｛(a1,0),(a2,1),(b2,2)｝を記憶部に記憶する。そして、次のノードがノード（ｇ′）となった場合、当該処理を終了する。
【００９６】
このように、最小コストフロー処理することで、図１３に示す経路（太線矢印線）が生成される。すなわち、最小コストフロー処理を用いることで、移動体２０が待避場所への移動する場合において、距離の合計が最小となる経路を得ることができる。
【００９７】
続いて、再計画部３は、あらかじめ設定された順に移動体２０を選択し、探索部２を用いて探索した経路が衝突しないように、移動体２０から目標場所までの経路を再計画する。
【００９８】
［装置動作］
次に、本発明の実施の形態における経路計画装置の動作について図１４を用いて説明する。図１４は、経路計画装置の動作の一例を示す図である。以下の説明においては、適宜図２から図１３を参酌する。また、本実施の形態では、経路計画装置を動作させることによって、経路計画方法が実施される。よって、本実施の形態における経路計画方法の説明は、以下の、経路計画装置の動作説明に代える。
【００９９】
図１４に示すように、最初に、経路計画部４又は４′は、移動体２０を、移動体２０に対応する目標場所へ移動させる経路情報を生成する（ステップＡ１）。
【０１００】
具体的には、（１）（２）のシステムでは、ステップＡ１において、経路計画部４は、位置情報と、地図情報と、目標場所情報と、待避場所情報とを用いて、移動体２０それぞれを目標場所へ移動させる経路情報を生成する。
【０１０１】
又は、（３）のシステムでは、ステップＡ１において、経路計画部４′は、位置情報と、地図情報と、目標場所情報と、待避場所情報とを用いて、経路計画部４′が設けられた移動体２０を目標場所へ移動させる経路情報を生成する。
【０１０２】
続いて、検知部５は、地図情報と位置情報とを用いて、デッドロックを検知する（ステップＡ２）。具体的には、（１）（２）（３）のシステムでは、ステップＡ２において、検知部５は、複数の移動体２０が所定範囲において所定時間停滞している場合、移動体２０がデッドロックしていると判定する。
【０１０３】
続いて、探索部２は、一つ以上の移動体２０の経路計画において、移動体２０がデッドロックしていることを検知した場合、上述した（Ａ）（Ｂ）（Ｃ）の方式のうちいずれかを用いて、移動体２０と待避場所との間を結ぶ経路（第一の経路）を探索する（ステップＡ３）。
【０１０４】
具体的には、ステップＡ３において、探索部２は、（Ａ）の方式を用いて、待避場所から最短距離に位置する移動体２０を選択し、選択した移動体２０と当該待避場所とを用いて、経路を探索（第一の経路）する。（Ａ）の方式の詳細については、上述した（Ａ）の方式によるデッドロック回避の説明を参照。
【０１０５】
又は、ステップＡ３において、探索部２は、（Ｂ）の方式を用いて、移動体２０から最短距離に位置する他の移動体２０に選択されていない未選択の待避場所を選択し、移動体２０から選択した待避場所までの経路を生成し、当該経路上に位置する選択した待避場所に最も近い移動体２０と、選択した待避場所とを用いて、経路（第一の経路）を探索する。（Ｂ）の方式の詳細については、上述した（Ｂ）の方式によるデッドロック回避の説明を参照。
【０１０６】
又は、ステップＡ３において、探索部２は、（Ｃ）の方式を用いて、最小コストフロー処理を用いて、移動体２０ごとに、経路（第一の経路）を探索する。（Ｃ）の方式の詳細については、上述した（Ｃ）の方式によるデッドロック回避の説明を参照。
【０１０７】
続いて、再計画部３は、移動体２０ごとに、ステップＡ３において探索した経路（第一の経路）が衝突しないように、移動体２０から目標場所までの経路（第二の経路）を再計画する（ステップＡ４）。具体的には、再計画部３は、すべての移動体２０が第一の経路を計画したことを検知した後、移動体２０ごとに、移動体２０から目標場所までの経路を再計画し、以前の経路を再計画した経路に更新する。
【０１０８】
［本実施の形態の効果］
以上のように本実施の形態によれば、デッドロックを検知した場合、第一の経路に従って待避場所に移動し、待避場所から目標場所まで移動する経路を再計画することができるので、移動体は、デッドロックが発生しても、デッドロックを回避して、目標場所まで移動することができる。
【０１０９】
［プログラム］
本発明の実施の形態におけるプログラムは、コンピュータに、図１４に示すステップＡ１からＡ４を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における経路計画装置と経路計画方法とを実現することができる。
【０１１０】
具体的には、（１）のシステムの場合、移動体制御装置１０側のコンピュータのプロセッサは、探索部２、再計画部３、経路計画部４、検知部５として機能し、処理を行なう。また、（２）のシステムの場合、移動体２０側のコンピュータのプロセッサは、探索部２、再計画部３、経路計画部４、検知部５として機能し、処理を行なう。また、（３）のシステムの場合、移動体制御装置１０側のコンピュータのプロセッサは、探索部２、再計画部３、検知部５として機能し、移動体２０側のコンピュータのプロセッサは、経路計画部４′として機能し、処理を行なう。
【０１１１】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、探索部２、再計画部３、経路計画部４、検知部５のいずれかとして機能してもよい。
【０１１２】
［物理構成］
ここで、実施の形態におけるプログラムを実行することによって、経路計画装置を実現するコンピュータについて図１５を用いて説明する。図１５は、本発明の実施の形態における経路計画装置を実現するコンピュータの一例を示すブロック図である。
【０１１３】
図１５に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-Programmable Gate Array）を備えていてもよい。
【０１１４】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）などの揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであってもよい。
【０１１５】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【０１１６】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【０１１７】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）などの汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）などの磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体があげられる。
【０１１８】
なお、本実施の形態における経路計画装置１は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、経路計画装置１は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【０１１９】
［付記］
以上の実施の形態に関し、更に以下の付記を開示する。上述した実施の形態の一部又は全部は、以下に記載する（付記１）から（付記１２）により表現することができるが、以下の記載に限定されるものではない。
【０１２０】
（付記１）
一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、探索部と、
前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、再計画部と、
を有することを特徴とする経路計画装置。
【０１２１】
（付記２）
付記１に記載の経路計画装置であって、
前記探索部は、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【０１２２】
（付記３）
付記１に記載の経路計画装置であって、
前記探索部は、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【０１２３】
（付記４）
付記１に記載の経路計画装置であって、
前記探索部は、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【０１２４】
（付記５）
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を有することを特徴とする経路計画方法。
【０１２５】
（付記６）
付記５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【０１２６】
（付記７）
付記５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【０１２７】
（付記８）
付記５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【０１２８】
（付記９）
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させる命令を含むプログラムを記録しているコンピュータ読み取り可能な記録媒体。
【０１２９】
（付記１０）
付記９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【０１３０】
（付記１１）
付記９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【０１３１】
（付記１２）
付記９に記載のコンピュータ読み取り可能な記録媒体であって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とするコンピュータ読み取り可能な記録媒体。
【０１３２】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０１３３】
以上のように本発明によれば、経路計画に従い移動体を目標場所に移動させる場合に、デッドロックが発生しても、デッドロックを回避して、移動体を目標場所に移動させることができる。本発明は、経路計画に従い移動体を目標場所に移動させることが必要な分野において有用である。
【符号の説明】
【０１３４】
１  経路計画装置
２  探索部
３  再計画部
４  経路計画部
５  検知部
１０  移動体制御装置
１１  通信部
１２  指示部
２０  移動体
２１  通信部
２２  センサ部
２３  位置推定部
２４  移動制御部
２５  移動部
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2020105189.tif 000003
【図２】
2020105189.tif 000004
【図３】
2020105189.tif 000005
【図４】
2020105189.tif 000006
【図５】
2020105189.tif 000007
【図６】
2020105189.tif 000008
【図７】
2020105189.tif 000009
【図８】
2020105189.tif 000010
【図９】
2020105189.tif 000011
【図１０】
2020105189.tif 000012
【図１１】
2020105189.tif 000013
【図１２】
2020105189.tif 000014
【図１３】
2020105189.tif 000015
【図１４】
2020105189.tif 000016
【図１５】
2020105189.tif 000017
【手続補正書】
【提出日】令和3年4月20日(2021.4.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、探索手段と、
前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、再計画手段と、
を有することを特徴とする経路計画装置。
【請求項２】
請求項１に記載の経路計画装置であって、
前記探索手段は、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項３】
請求項１に記載の経路計画装置であって、
前記探索手段は、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項４】
請求項１に記載の経路計画装置であって、
前記探索手段は、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画装置。
【請求項５】
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を有することを特徴とする経路計画方法。
【請求項６】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項７】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項８】
請求項５に記載の経路計画方法であって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とする経路計画方法。
【請求項９】
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させる命令を含むプログラム。
【請求項１０】
請求項９に記載のプログラムであって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、移動体の経路を計画する、経路計画装置、及び経路計画方法に関し、更には、これらを実現するためのプログラムに関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の目的の一例は、デッドロックを回避する、経路計画装置、経路計画方法、及びプログラムを提供することにある。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させることを特徴とする。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
このように、再計画部３は、図７のＡに示すように、移動体２０（Ｍ１）を待避場所（Ｅ２）に待避させた後、待避場所（Ｅ２）から目標場所（Ｇ１）までの経路を再計画し、経路Ｒ＿Ｍ１を再計画した経路に更新する。再計画部３は、数３に示すような、経路Ｒ＿Ｍ１を記憶部に記憶する。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１２８
【補正方法】変更
【補正の内容】
【０１２８】
（付記９）
コンピュータに、
（ａ）一つ以上の移動体の経路計画において、デッドロックを検知した場合、前記移動体と待避場所との間を結ぶ第一の経路を探索する、ステップと、
（ｂ）前記移動体ごとに探索した前記第一の経路が衝突しないように、前記移動体から目標場所までの第二の経路を再計画する、ステップと、
を実行させる命令を含むプログラム。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０１２９
【補正方法】変更
【補正の内容】
【０１２９】
（付記１０）
付記９に記載のプログラムであって、
前記（ａ）のステップにおいて、前記待避場所から最短距離に位置する前記移動体を選択し、選択した前記移動体と当該待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするプログラム。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】０１３０
【補正方法】変更
【補正の内容】
【０１３０】
（付記１１）
付記９に記載のプログラムであって、
前記（ａ）のステップにおいて、前記移動体から最短距離に位置する他の移動体に選択されていない未選択の待避場所を選択し、前記移動体から選択した前記待避場所までの経路を生成し、当該経路上に位置する選択した前記待避場所に最も近い前記移動体と、選択した前記待避場所とを用いて、前記第一の経路を探索する
ことを特徴とするプログラム。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０１３１
【補正方法】変更
【補正の内容】
【０１３１】
（付記１２）
付記９に記載のプログラムであって、
前記（ａ）のステップにおいて、最小コストフロー処理を用いて、前記移動体ごとに、前記第一の経路を探索する
ことを特徴とするプログラム。
【国際調査報告】
2020105189.tif 000018
2020105189.tif 000019
2020105189.tif 000020
2020105189.tif 000021