(57)【要約】【課題】複数の移動体の移動経路を決定するために要する時間を抑えつつ、巡回する地点での滞在時間も考慮して、移動体全体での移動経路を好適化することができる情報処理装置、情報処理システム、移動経路決定方法及びプログラムを提供する。【解決手段】移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成部１５１と、移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出部１５３と、算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の移動経路を変更できるか否かを判定する判定部１５５と、変更できる場合、最長の巡回時間よりも短くなるように複数の移動経路を変更する変更部１５７と、を備える。【選択図】図３
2018129001.tif 000002
【特許請求の範囲】
【請求項１】
移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成部と、
前記移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出部と、
算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の前記移動経路を変更できるか否かを判定する判定部と、
変更できる場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更する変更部と、
を備える情報処理装置。
【請求項２】
前記判定部は、前記最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できるか否かを判定する請求項１に記載の情報処理装置。
【請求項３】
前記判定部は、巡回時間の増加量が最も少なくなるように、前記最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが他の移動体により巡回されるよう移動経路を変更することで、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できるか否かを判定する請求項１に記載の情報処理装置。
【請求項４】
前記判定部は、前記変更部により前記複数の移動経路が変更された場合、変更後の複数の移動経路において、巡回時間の増加量が最も少なくなるように、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できるか否かを再判定する請求項３に記載の情報処理装置。
【請求項５】
前記変更部は、前記判定部により、巡回時間の増加量が最も少なくなるように、前記最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できないと判定された場合、前記最長の巡回時間及び最短の巡回時間のいずれでもない巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、前記最短の巡回時間となる移動経路上を移動する移動体により巡回されるように前記複数の移動経路を変更し、
前記判定部は、前記変更部により前記複数の移動経路が変更された場合、変更後の複数の移動経路において、巡回時間の増加量が最も少なくなるように、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できるか否かを再判定する請求項３又は４に記載の情報処理装置。
【請求項６】
前記判定部は、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できない場合、前記複数の移動経路を確定する請求項１〜５のいずれか１つに記載の情報処理装置。
【請求項７】
前記判定部は、前記最長の巡回時間と最短の巡回時間との差が前記滞在時間以下である場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更できないと判定する請求項６に記載の情報処理装置。
【請求項８】
情報処理装置と複数の出力装置とを備える情報処理システムであって、
前記情報処理装置は、
移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成部と、
前記移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出部と、
算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の前記移動経路を変更できるか否かを判定する判定部と、
変更できる場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更する変更部と、
前記複数の出力装置それぞれに、当該出力装置に対応付けられた移動体の変更後の移動経路を示す移動経路情報を送信する送信部と、を備え、
前記複数の出力装置それぞれは、前記情報処理装置から送信された前記移動経路情報が示す移動経路を出力する情報処理システム。
【請求項９】
移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成ステップと、
前記移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出ステップと、
算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の前記移動経路を変更できるか否かを判定する判定ステップと、
変更できる場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更する変更ステップと、
を含む移動経路決定方法。
【請求項１０】
移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成ステップと、
前記移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出ステップと、
算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の前記移動経路を変更できるか否かを判定する判定ステップと、
変更できる場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更する変更ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、移動経路決定方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、複数の地点それぞれでの滞在時間を考慮して当該複数の地点を巡回させるための最適経路を、探索的な手法（例えば、遺伝的アルゴリズム）を用いて求める手法が提案されている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述したような探索的手法では、経路の組み合わせ（経路の取り得るパターン）は、巡回する地点の階乗通りに及ぶため、巡回する地点が増加するほど経路の組み合わせも増大し、最適経路を求めるために多大な時間を要してしまう。
【０００４】
また、上述した従来技術では、複数の地点を巡回する移動体が１つであり、複数の移動体による複数の地点の巡回を対象としていない。なお、１つの移動体による複数の地点の巡回よりも、複数の移動体による複数の地点の巡回の方が、複数の移動体が相互干渉するため、経路の組み合わせが増大し、最適経路を求めるために必要な時間も増大する。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、複数の移動体の移動経路を決定するために要する時間を抑えつつ、巡回する地点での滞在時間も考慮して、移動体全体での移動経路を好適化することができる情報処理装置、情報処理システム、移動経路決定方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理装置は、移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する生成部と、前記移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する算出部と、算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の前記移動経路を変更できるか否かを判定する判定部と、変更できる場合、前記最長の巡回時間よりも短くなるように前記複数の移動経路を変更する変更部と、を備える。
【発明の効果】
【０００７】
本発明によれば、複数の移動体の移動経路を決定するために要する時間を抑えつつ、巡回する地点での滞在時間も考慮して、移動体全体での移動経路を好適化することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施形態の情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、本実施形態の情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】図３は、本実施形態の情報処理装置の機能構成の一例を示すブロック図である。
【図４】図４は、本実施形態の情報処理システムで行われる移動経路生成処理の一例を示すフローチャートである。
【図５】図５は、本実施形態の生成部により生成された各ロボットの移動経路での巡回時間（移動時間）の一例を示す図である。
【図６】図６は、本実施形態の算出部により算出された各ロボットの移動経路での巡回時間（移動時間＋作業時間）の一例を示す図である。
【図７】図７は、移動経路の変更パターンの一例を示す図である。
【図８】図８は、移動経路の変更パターンの一例を示す図である。
【図９】図９は、移動経路の変更パターンの一例を示す図である。
【図１０】図１０は、移動経路の変更パターンの一例を示す図である。
【図１１】図１１は、最長の巡回時間よりも短くなるように各ロボットの移動経路の巡回時間を変更できる場合の一例を示す図である。
【図１２】図１２は、最長の巡回時間よりも短くなるように各ロボットの移動経路の巡回時間を変更できない場合の一例を示す図である。
【図１３】図１３は、移動経路の変更手法の一例の説明図である。
【図１４】図１４は、移動経路の変更手法の一例の説明図である。
【図１５】図１５は、移動経路の変更手法の一例の説明図である。
【図１６】図１６は、本実施形態の情報処理システムで行われる移動経路決定処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明にかかる情報処理装置、情報処理システム、移動経路決定方法及びプログラムの実施形態を詳細に説明する。
【００１０】
本実施形態では、移動路は倉庫内の移動路であり、移動路上に存在する複数の地点は、倉庫内に分散して保管された複数の商品が配置されている地点であり、複数の移動体は、当該複数の商品を収集（ピッキング）するために倉庫内に分散して配置されたロボット（カート）であり、滞在時間は、商品が配置されている地点においてロボットが当該商品を収集するのに要する作業時間であって、倉庫内に保管された複数の商品を複数台のロボットでピッキングするピッキング作業を例に取り説明するが、これに限定されるものではない。より詳細には、倉庫内の移動路は、複数のノードをネットワーク上に接続した経路であり、商品及びロボットは、いずれかのノードに配置されている場合を想定して説明するが、これに限定されるものではない。なお本実施形態では、ロボット（カート）は、自動で自立移動する移動体である場合を例に取り説明するが、これに限定されず、ユーザにより手動で移動されるロボット（カート）であってもよい。
【００１１】
図１は、本実施形態の情報処理システム１の構成の一例を示すブロック図である。図１に示すように、情報処理システム１は、情報処理装置１０と、端末装置２０と、出力装置３０−１〜３０−ｎ（ｎは２以上の自然数）と、を備える。情報処理装置１０、端末装置２０、及び出力装置３０−１〜３０−ｎは、ネットワーク２を介して接続されている。ネットワーク２は、例えば、インターネットやＬＡＮ（Local  Area  Network）などにより実現できる。なお、以下の説明では、出力装置３０−１〜３０−ｎを各々区別する必要がない場合は、単に出力装置３０と称する場合がある。
【００１２】
情報処理装置１０は、移動路上に存在する複数の商品を複数のロボットで巡回して収集するための、当該複数のロボットそれぞれの移動経路を生成及び変更するものであり、例えば、１台以上のコンピュータにより実現できる。
【００１３】
図２は、本実施形態の情報処理装置１０のハードウェア構成の一例を示すブロック図である。情報処理装置１０は、ＣＰＵ（Central  Processing  Unit）やＧＰＵ（Graphics  Processing  Unit）などの制御装置１０１と、ＲＯＭ（Read  Only  Memory）やＲＡＭ（Random  Access  Memory）などの主記憶装置１０２と、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）などの補助記憶装置１０３と、ディスプレイなどの表示装置１０４と、キーボードやマウスなどの入力装置１０５と、通信インタフェースなどの通信装置１０６と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００１４】
端末装置２０は、情報処理装置１０に対し、収集対象の複数の商品を指定するものであり、例えば、ＰＣ（Personal  Computer）やスマート端末などが挙げられる。
【００１５】
出力装置３０は、情報処理装置１０により決定された移動経路を出力するものである。なお本実施形態では、各出力装置３０は、ロボットに対応付けられており（備え付けられており）、当該ロボット用の移動経路を出力する。出力装置３０は、例えば、ロボットに備え付けられたディスプレイやスピーカ、ロボットをユーザが移動させる場合には、当該ユーザが所持するスマート端末などが挙げられる。なお、移動経路の出力は、表示出力、音声出力、投影出力、及び印刷出力などどのような出力態様で行われても構わない。
【００１６】
図３は、本実施形態の情報処理装置１０の機能構成の一例を示すブロック図である。図３に示すように、情報処理装置１０は、生成部１５１と、算出部１５３と、判定部１５５と、変更部１５７と、送信部１５９と、を含む。生成部１５１及び送信部１５９は、例えば、制御装置１０１、主記憶装置１０２、及び通信装置１０６などにより実現できる。算出部１５３、判定部１５５、及び変更部１５７は、例えば、制御装置１０１及び主記憶装置１０２などにより実現できる。
【００１７】
生成部１５１は、移動路上に存在する複数の地点を複数の移動体で巡回させるための、当該複数の移動体それぞれの移動経路を生成する。本実施形態では、生成部１５１は、移動路上に存在する複数の商品を複数のロボットで巡回して収集するための、当該複数のロボットそれぞれの移動経路を生成する。
【００１８】
本実施形態では、どのような手法で複数のロボットの移動経路を生成しても構わないが、生成に要する時間が短く、かつ、移動経路全体での移動時間（移動距離）をできるだけ短くできるような手法であることが好ましい。このため、上記のような条件を満たす移動経路生成用のアルゴリズムを用いて移動経路を生成することが好ましいが、生成時間の制約さえ満たせば、遺伝的アルゴリズムを用いて移動経路を生成しても構わない。なお、本実施形態では、各移動体の速度は、一定の速度に固定されていることを前提とする。
【００１９】
図４は、本実施形態の情報処理システム１で行われる移動経路生成処理の一例を示すフローチャートである。なお、図４に示すフローチャートは、上記のような条件を満たす移動経路生成用のアルゴリズムによる移動経路生成処理のフローチャートである。このアルゴリズムによれば、生成に要する時間が短く、かつ、全体での移動時間（移動距離）をできるだけ短くできる移動経路を生成できる。
【００２０】
まず、移動経路の生成に先立ち、生成部１５１は、複数のロボットそれぞれの移動開始位置情報、移動終了位置情報、複数のロボットにより収集される複数の商品それぞれの収集対象物位置情報、及び移動路情報を取得する（ステップＳ１０１）。
【００２１】
移動開始位置情報は、ロボットの移動開始位置を示し、移動終了位置情報は、ロボットの移動終了位置を示し、収集対象物位置情報は、商品の位置を示し、移動路情報は、ロボットが移動可能な移動路（前述のネットワーク）を示す。
【００２２】
続いて、生成部１５１は、取得した複数の移動開始位置情報、複数の移動終了位置情報、複数の収集対象物位置情報、及び移動路情報に基づいて、商品毎に、複数のロボットそれぞれについて、当該ロボットが移動路を移動して、移動開始位置から当該商品を収集して移動終了位置に到達するまでに要する最小移動量を算出する（ステップＳ１０３）。
【００２３】
本実施形態では、最小移動量及び後述の移動量が時間である場合を例に取り説明するが、これに限定されず、距離としてもよい。また本実施形態では、最小移動量の算出は、例えば、ダイクストラー法やＡ＊スター法などの公知技術を用いて行えばよい。また、最小移動量での移動経路が複数存在する場合、全移動経路を求めておくものとする。
【００２４】
続いて、生成部１５１は、複数の商品のうち最小移動量の最小値が最大となる商品を、複数のロボットのうち、当該商品の収集に要する最小移動量が最小となるロボットに割り当てる（ステップＳ１０５）。
【００２５】
続いて、生成部１５１は、当該割り当てたロボットが当該商品を最小移動量で収集して移動終了位置に最小移動量で到達するための移動経路上に、収集するロボットに割り当てられていない商品があれば、当該収集するロボットに割り当てられていない商品を当該割り当てたロボットに更に割り当てる（ステップＳ１０７）。
【００２６】
続いて、収集するロボットに割り当てられていない商品が残っており（ステップＳ１０９でＹｅｓ）、生成部１５１は、残っている１以上の商品のうち最小移動量の最小値が最大となる商品の収集に要する最小移動量が最小となるロボットが未割り当てであれば（ステップＳ１１１でＹｅｓ）、当該ロボットに当該最小移動量の最小値が最大となる商品を割り当てる（ステップＳ１１３）。そして、ステップＳ１０７へ戻る。
【００２７】
一方、生成部１５１は、残っている１以上の商品のうち最小移動量の最小値が最大となる商品の収集に要する最小移動量が最小となるロボットが未割り当てでなければ（ステップＳ１１１でＮｏ）、分散度合いを判定する判定式を満たし、かつ商品が割り当てられていない１以上のロボットがあれば（ステップＳ１１５でＹｅｓ）、当該１以上のロボットのうち、当該最小移動量の最小値が最大となる商品の収集に要する最小移動量が最小となるロボットに当該最小移動量の最小値が最大となる商品を割り当てる（ステップＳ１１７）。そして、ステップＳ１０７へ戻る。
【００２８】
分散度合いを判定する判定式としては、ロボットＸと商品Ｑとの最小移動量＝ロボットＸとロボットＹとの距離＋ロボットＹと商品Ｑとの最小移動量が挙げられるが、これに限定されるものではない。なお、ロボットＸが判定式を満たすか否かの対象となるロボットであり、商品Ｑが割り当て対象の商品であり、ロボットＹが任意のロボットである。
【００２９】
上述の判定式を満たす場合、ロボットＸとロボットＹとの配置が局所的であると判定され、ロボットＸとロボットＹをグループとして包含関係にあると認識する。そして、この場合、商品Ｑは、ロボットＹではなく、ロボットＸに割り当てられるため、ロボットＹに偏って商品が割り当てられてしまうことを防止できる。
【００３０】
なお、生成部１５１は、分散度合いを判定する判定式を満たし、かつ商品が割り当てられていない１以上のロボットがなければ（ステップＳ１１５でＮｏ）、複数のロボットのうち、残っている１以上の商品のうち最小移動量の最小値が最大となる商品の収集に要する最小移動量が最小となり、かつ移動量が最小のロボットに、移動量の増加が最小となるように、当該最小移動量の最小値が最大となる商品を割り当てる（ステップＳ１１９）。そして、ステップＳ１０７へ戻る。
【００３１】
なお、ステップＳ１１９の処理については、残っている１以上の商品のうち最小移動量の最小値が最大となる商品との移動路上での距離が最も短い商品を収集するロボットに、移動量の増加が最小となるように、当該最小移動量の最小値が最大となる商品を割り当てるようにしてもよい。
【００３２】
また、ステップＳ１１９の処理については、残っている１以上の商品のうち最小移動量の最小値が最大となる商品と移動路上で最も近接する１以上のロボットのうち、移動量が最小のロボットに、移動量の増加が最小となるように、当該最小移動量の最小値が最大となる商品を割り当てるようにしてもよい。
【００３３】
ステップＳ１０９において、収集するロボットに割り当てられていない商品が残っていない場合（ステップＳ１０９でＮｏ）、生成部１５１は、割り当て結果に基づいて、複数のロボットの移動経路を生成する（ステップＳ１２１）。
【００３４】
図５は、本実施形態の生成部１５１により生成された各ロボットの移動経路での巡回時間（移動時間）の一例を示す図である。図５に示す例では、移動路上に存在する７つの商品（商品Ａ〜商品Ｇ）を３台のロボット（ロボット１〜ロボット３）で巡回して収集する場合の、各ロボットの移動経路での巡回時間を示している。なお、図５に示す例では、ロボット１が商品Ａを収集し、ロボット２が商品Ｂ〜商品Ｅを収集し、ロボット３が商品Ｆ〜商品Ｇを収集する移動経路となっている。巡回時間は、ロボットが移動経路の移動開始地点から移動終了地点までの巡回に要する時間である。但し、図５に示す巡回時間では、移動経路上の商品が配置された地点において当該商品の収集に要する作業時間（滞在時間）は加味されていない。なお、図５に示す凡例は、以降の図面においても同様に適用されるものとする。
【００３５】
算出部１５３は、生成部１５１により生成された移動経路毎に、当該移動経路を移動する移動体の移動に要する移動時間と、当該移動経路上に存在する１以上の地点それぞれでの滞在時間と、を合算した巡回時間を算出する。本実施形態では、算出部１５３は、移動経路毎に、当該移動経路を移動するロボットの移動に要する移動時間（移動経路のスタート地点からゴール地点までの移動に要する時間）と、当該移動経路上で商品が配置された１以上の地点それぞれにおいて、当該商品の収集に要する作業時間と、を合算した巡回時間を算出する。本実施形態では、商品の種類や数に関わらず、商品の収集に要する作業時間が一律である場合を例に取り説明するが、これに限定されるものではない。
【００３６】
図６は、本実施形態の算出部１５３により算出された各ロボットの移動経路での巡回時間（移動時間＋作業時間）の一例を示す図である。図６に示す巡回時間では、図５に示す各移動経路での巡回時間において、商品が配置された地点において当該商品の収集に要する作業時間が加味（挿入）されている。なお、前述のとおり、商品の収集に要する作業時間は、商品の種類や数に関わらず、一律の時間となっている。
【００３７】
生成部１５１により生成された各ロボットの移動経路は、作業時間を加味しなければ、移動経路全体での移動時間をできるだけ短くできていることが期待できるが、作業時間を加味すると、移動経路全体での移動時間をできるだけ短くできていることが期待できない。このため、作業時間を加味した場合であっても、移動経路全体での巡回時間（移動時間＋作業時間）をできるだけ短くするため、以下の処理を行う。
【００３８】
判定部１５５は、算出部１５３により算出された複数の巡回時間のうちの最長の巡回時間よりも短くなるように、複数の移動経路を変更できるか否かを判定する。
【００３９】
具体的には、判定部１５５は、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、最長の巡回時間よりも短くなるように複数の移動経路を変更できるか否かを判定する。
【００４０】
詳細には、判定部１５５は、巡回時間の増加量が最も少なくなるように、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが他の移動体により巡回されるよう移動経路を変更することで、最長の巡回時間よりも短くなるように複数の移動経路を変更できるか否かを判定する。
【００４１】
例えば、図６に示す例の場合、ロボット２の移動経路が最長の巡回時間となる。このため、判定部１５５は、巡回時間の増加量が最も少なくなるように、ロボット２が収集する商品Ｂ〜商品Ｅのいずれかが、ロボット１又は２に収集されるよう移動経路を変更することで、最長の巡回時間（変更前のロボット２の移動経路の巡回時間）よりも短くなるように、ロボット１〜ロボット３の移動経路を変更できるか否かを判定する。
【００４２】
この場合、移動経路の変更パターンは、図７に示す５パターン、図８に示す５パターン、図９に示す５パターン、及び図１０に示す５パターンの合計２０パターンとなる。
【００４３】
図７に示す５パターンは、商品Ｂを商品Ａの収集前にロボット１に収集させるパターン、商品Ｂを商品Ａの収集後にロボット１に収集させるパターン、商品Ｂを商品Ｆの収集前にロボット３に収集させるパターン、商品Ｂを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させるパターン、商品Ｂを商品Ｇの収集後にロボット３に収集させるパターンである。
【００４４】
図８に示す５パターンは、商品Ｃを商品Ａの収集前にロボット１に収集させるパターン、商品Ｃを商品Ａの収集後にロボット１に収集させるパターン、商品Ｃを商品Ｆの収集前にロボット３に収集させるパターン、商品Ｃを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させるパターン、商品Ｃを商品Ｇの収集後にロボット３に収集させるパターンである。
【００４５】
図９に示す５パターンは、商品Ｄを商品Ａの収集前にロボット１に収集させるパターン、商品Ｄを商品Ａの収集後にロボット１に収集させるパターン、商品Ｄを商品Ｆの収集前にロボット３に収集させるパターン、商品Ｄを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させるパターン、商品Ｄを商品Ｇの収集後にロボット３に収集させるパターンである。
【００４６】
図１０に示す５パターンは、商品Ｅを商品Ａの収集前にロボット１に収集させるパターン、商品Ｅを商品Ａの収集後にロボット１に収集させるパターン、商品Ｅを商品Ｆの収集前にロボット３に収集させるパターン、商品Ｅを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させるパターン、商品Ｅを商品Ｇの収集後にロボット３に収集させるパターンである。
【００４７】
ここで、判定部１５５は、上述の変更パターンで移動経路が変更されるロボットの移動経路の巡回時間（最小移動量）を、前述したダイクストラー法やＡ＊スター法などを用いて算出することで、巡回時間の増加量が最も少なくなる移動経路の変更パターンを探索する。
【００４８】
図１１は、最長の巡回時間よりも短くなるように各ロボットの移動経路の巡回時間を変更できる場合の一例を示す図であり、図６に示す例において、巡回時間の増加量が最も少なくなる移動経路の変更パターンが、商品Ｄを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させる変更パターンである場合を示している。図１１に示す例では、上述のようにロボット２、３の移動経路が変更される場合、ロボット１〜３のいずれの移動経路の巡回時間も変更前の最長の巡回時間よりも短くなっており、判定部１５５は、最長の巡回時間よりも短くなったと判定できる。なお、図１１において太枠で囲んだ移動時間は、移動経路の変更に伴い変更した移動時間を示している。
【００４９】
図１２は、最長の巡回時間よりも短くなるように各ロボットの移動経路の巡回時間を変更できない場合の一例を示す図であり、図６に示す例において、巡回時間の増加量が最も少なくなる移動経路の変更パターンが、商品Ｄを商品Ｆの収集後であって商品Ｇの収集前にロボット３に収集させる変更パターンである場合を示している。図１２に示す例では、上述のようにロボット２、３の移動経路が変更される場合、ロボット３の移動経路の巡回時間が変更前の最長の巡回時間よりも長くなっており、判定部１５５は、最長の巡回時間よりも短くなったと判定できない。なお、図１２においても、太枠で囲んだ移動時間は、移動経路の変更に伴い変更した移動時間を示している。
【００５０】
変更部１５７は、判定部１５５により最長の巡回時間よりも短くなるように複数の移動経路を変更できると判定された場合、当該最長の巡回時間よりも短くなるように複数の移動経路を変更する。具体的には、変更部１５７は、判定部１５５により最長の巡回時間よりも短くなるように複数のロボットの移動経路を変更できると判定された変更パターンに、複数の移動経路を変更する。
【００５１】
また、判定部１５５により、巡回時間の増加量が最も少なくなるように、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、最長の巡回時間よりも短くなるように複数の移動経路を変更できないと判定されたとする。この場合、変更部１５７は、最長の巡回時間及び最短の巡回時間のいずれでもない巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、最短の巡回時間となる移動経路上を移動する移動体により巡回されるように複数の移動経路を変更する。
【００５２】
例えば、図１３に示す例の場合、ロボット３の移動経路が最長の巡回時間であるが、巡回時間の増加量が最も少なくなるように、ロボット３により収集される商品Ｆ、Ｄ、Ｇのいずれかをロボット１又は２により収集されるよう移動経路を変更しても、最長の巡回時間よりも短くなるように各ロボットの移動経路を変更できないとする。
【００５３】
具体的には、ロボット３の巡回時間（最長の巡回時間）とロボット２の巡回時間との差は、作業時間よりも短いため、ロボット３により収集される商品Ｆ、Ｄ、Ｇのいずれかをロボット２により収集されるよう移動経路を変更すると、変更後のロボット２の移動経路の巡回時間は、ロボット３の巡回時間（最長の巡回時間）よりも長くなってしまう。また、ロボット３の巡回時間（最長の巡回時間）とロボット１の巡回時間との差は、作業時間よりも長いが、巡回時間の増加量が最も少なくなるように、ロボット３により収集される商品Ｆ、Ｄ、Ｇのいずれかをロボット１により収集されるよう移動経路を変更しても、変更後のロボット１の移動経路の巡回時間は、ロボット３の巡回時間（最長の巡回時間）よりも長くなってしまうものとする。
【００５４】
この場合、変更部１５７は、図１４に示すように、最長の巡回時間及び最短の巡回時間のいずれでもない巡回時間となる移動経路上を移動するロボット２により収集される商品Ｂ、Ｃ、Ｅのいずれかが、最短の巡回時間となる移動経路上を移動するロボット１により巡回されるように各ロボットの移動経路を変更する。ここでは、変更部１５７は、図１５に示すように、ロボット２により収集される商品Ｅが、最短の巡回時間となる移動経路上を移動するロボット１により巡回されるように各ロボットの移動経路を変更したとする。
【００５５】
このようにすると、ロボット３の巡回時間（最長の巡回時間）とロボット２の巡回時間との差は、作業時間よりも短くなり、ロボット３により収集される商品Ｆ、Ｄ、Ｇのいずれかをロボット２により収集されるよう移動経路を変更すると、各ロボットの移動経路の巡回時間を最長の巡回時間よりも短くできる可能性がある。
【００５６】
判定部１５５は、変更部１５７により複数の移動経路が変更された場合、変更後の複数の移動経路において、巡回時間の増加量が最も少なくなるように、最長の巡回時間となる移動経路上を移動する移動体により巡回される１以上の地点のいずれかが、他の移動体により巡回されるよう移動経路を変更することで、最長の巡回時間よりも短くなるように複数の移動経路を変更できるか否かを再判定する。
【００５７】
なお判定部１５５は、最長の巡回時間よりも短くなるように複数の移動経路を変更できない場合、複数の移動経路を決定（確定）する。具体的には、判定部１５５は、最長の巡回時間と最短の巡回時間との差が作業時間以下である場合、最長の巡回時間よりも短くなるように複数の移動経路を変更できないと判定し、複数の移動経路を決定する。
【００５８】
送信部１５９は、判定部１５５により各移動体の移動経路が決定されると、移動体毎に、当該移動体に対応付けられた出力装置３０に当該移動体の移動経路を示す移動経路情報を送信する。
【００５９】
各出力装置３０は、情報処理装置１０から送信された移動経路情報が示す移動経路を出力する。
【００６０】
図１６は、本実施形態の情報処理システム１で行われる移動経路決定処理の一例を示すフローチャートである。
【００６１】
まず、生成部１５１は、移動路上に存在する複数の商品を複数のロボットで巡回して収集するための、当該各ロボットの移動経路（但し、商品の収集作業に伴う作業時間は考慮しない）を生成する（ステップＳ１０１）。
【００６２】
続いて、算出部１５３は、移動経路毎に、当該移動経路を移動するロボットの移動に要する移動時間（移動経路のスタート地点からゴール地点までの移動に要する時間）と、当該移動経路上で商品が配置された１以上の地点それぞれにおいて、当該商品の収集に要する作業時間と、を合算した巡回時間を算出する（ステップＳ１０３）。
【００６３】
続いて、判定部１５５は、算出部１５３により算出された複数の巡回時間のうちの最長の巡回時間と最短の巡回時間との差が、作業時間以下であるか否かを判定する（ステップＳ１０５）。
【００６４】
最長の巡回時間と最短の巡回時間との差が作業時間以下である場合（ステップＳ１０５でＹｅｓ）、判定部１５５は、最長の巡回時間よりも短くなるように各ロボットの移動経路を変更できないため、各ロボットの移動経路を決定（確定）し、移動経路決定処理終了となる。
【００６５】
一方、最長の巡回時間と最短の巡回時間との差が作業時間以下でない場合（ステップＳ１０５でＮｏ）、判定部１５５は、最長の巡回時間となる移動経路上を移動するロボットにより収集される１以上の商品のいずれかを他のロボットにより収集されるようにした場合に、商品の収集が追加される移動経路における巡回時間の増加量が最も少なくい変更パターンを探索する（ステップＳ１０７）。
【００６６】
続いて、判定部１５５は、探索した変更パターンに変更した場合、各ロボットの移動経路の巡回時間を、変更前の最長の巡回時間よりも短くできるか否かを判定する（ステップＳ１０９）。
【００６７】
各ロボットの移動経路の巡回時間を変更前の最長の巡回時間よりも短くできる場合（ステップＳ１０９でＹｅｓ）、判定部１５５により探索された変更パターンに複数の移動経路を変更し（ステップＳ１１１）、ステップＳ１０５へ戻る。
【００６８】
一方、各ロボットの移動経路の巡回時間を変更前の最長の巡回時間よりも短くできない場合（ステップＳ１０９でＮｏ）、変更部１５７は、最長の巡回時間及び最短の巡回時間のいずれでもない巡回時間となる移動経路上を移動するロボットにより収集される１以上の商品のいずれかが、最短の巡回時間となる移動経路上を移動するロボットにより収集されるように複数の移動経路を変更する（ステップＳ１１１）。
【００６９】
続いて、作業計画の更新（ステップＳ１１１の変更）がなければ（ステップＳ１１５でＹｅｓ）、判定部１５５は、最長の巡回時間よりも短くなるように各ロボットの移動経路を変更できないため、各ロボットの移動経路を決定（確定）し、移動経路決定処理終了となる。
【００７０】
一方、作業計画の更新（ステップＳ１１１の変更）があれば（ステップＳ１１５でＮｏ）、ステップＳ１０７へ戻る。
【００７１】
以上のように本実施形態によれば、複数の移動体の移動経路の生成後に、移動経路での作業時間を加味される場合であっても、移動経路全体での巡回時間（移動時間＋作業時間）をできるだけ短くすることができる。特に本実施形態に依れば、探索的な手法（例えば、遺伝的アルゴリズム）を用いないため、探索的な手法に比べ大幅に計算量を削減することができ、移動経路全体での巡回時間（移動時間＋作業時間）を決定するために要する時間を抑えつつ、移動体全体での移動経路を好適化することができる。
【００７２】
（変形例）
上記実施形態では、商品の収集に要する作業時間が一律である場合を例に取り説明したが、商品の種類や数に応じて異ならせるようにしてもよい。この場合、図１６に示すフローチャートのステップＳ１０５において、判定部１５５は、算出部１５３により算出された複数の巡回時間のうちの最長の巡回時間と最短の巡回時間との差が、最短の作業時間以下であるか否かを判定するようにすればよい。
【００７３】
また上記実施形態では、倉庫内でのカートを用いて商品を（ピッキング）収集したり、カートを用いて商品を格納する場合を例に取り説明した。
【００７４】
但し、これに限定されず、コミュニティバスによる人間の送迎などにも応用できる。この場合、移動体はコミュニティバスとなり、移動路上に存在する複数の地点は、人間がいる場所や人間を送る場所となり、移動路は道路となる。
【００７５】
また、物資の救援や救護搬送などの災害対応計画などにも応用できる。この場合、移動体は自動車となり、移動路上に存在する複数の地点は、被災者、物資、病院、及び避難所がある場所となり、移動路は道路となる。
【００７６】
また、集荷や配達などの宅配などにも応用できる。この場合、移動体はトラックとなり、移動路上に存在する複数の地点は、宅配物がある場所や居所などとなり、移動路は道路となる。
【００７７】
また、営業マンの巡回などにも応用できる。この場合、移動体は自動車となり、移動路上に存在する複数の地点は、営業マンがいる場所や訪問先などとなり、移動路は道路となる。
【００７８】
また、移動体を自動車とする場合、出力装置３０をカーナビゲーションやプロジェクタとしてもよい。出力装置３０がプロジェクタの場合、移動経路を自動車のフロントガラスに投影するなどの態様が考えられる。
【００７９】
（プログラム）
上記実施形態及び各変形例の情報処理装置１０で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【００８０】
また、上記実施形態及び各変形例の情報処理装置１０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記各実施形態及び各変形例の情報処理装置１０で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記各実施形態及び各変形例の情報処理装置１０で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【００８１】
上記実施形態及び各変形例の情報処理装置１０で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、ＣＰＵがＲＯＭからプログラムをＲＡＭ上に読み出して実行することにより、上記各機能部がコンピュータ上で実現されるようになっている。
【００８２】
なお、上記実施形態及び各変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８３】
１  情報処理システム
２  ネットワーク
１０  情報処理装置
２０  端末装置
３０−１〜３０−ｎ（３０）  出力装置
１５１  生成部
１５３  算出部
１５５  判定部
１５７  変更部
１５９  送信部
【先行技術文献】
【特許文献】
【００８４】
【特許文献１】特許第４２９２０６２号公報
【図１】
2018129001.tif 000003
【図２】
2018129001.tif 000004
【図３】
2018129001.tif 000005
【図４】
2018129001.tif 000006
【図５】
2018129001.tif 000007
【図６】
2018129001.tif 000008
【図７】
2018129001.tif 000009
【図８】
2018129001.tif 000010
【図９】
2018129001.tif 000011
【図１０】
2018129001.tif 000012
【図１１】
2018129001.tif 000013
【図１２】
2018129001.tif 000014
【図１３】
2018129001.tif 000015
【図１４】
2018129001.tif 000016
【図１５】
2018129001.tif 000017
【図１６】
2018129001.tif 000018