(57)【特許請求の範囲】
【請求項１】
経路の始点を示す情報と、前記経路の終点を示す情報と、前記経路を構成する線分の配置が禁止される配置禁止領域を示す情報とのうち、少なくとも前記配置禁止領域を示す情報を取得する情報取得部と、
前記情報取得部が取得する情報に基づいて、前記始点と、前記終点と、前記配置禁止領域とを所定領域内に配置する情報配置部と、
前記情報配置部が配置する前記配置禁止領域毎に、前記配置禁止領域に対して、当該配置禁止領域内のすべての領域を含み当該配置禁止領域の輪郭の形状に対応して拡大させた形状の輪郭を有する拡張領域を対応付け、対応付けたそれぞれの前記拡張領域の輪郭上に３以上の中継点を配置する中継点配置部と、
前記始点と、前記終点と、前記３以上の前記中継点とのうちの２点間を結ぶ前記線分のうち、前記配置禁止領域に基づく領域を通過しない前記線分を生成し、前記配置禁止領域に基づく領域を通過する前記線分を生成しないことにより前記経路を生成する経路生成部と、
を備える情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記中継点配置部は、前記配置禁止領域の形状に基づいた数の前記中継点を配置する、
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置であって、
前記経路生成部が生成するすべての前記経路において必ず経由しなければならない経由点を配置する経由点配置部を備え、
前記経路生成部は、前記経路を生成する際、前記３以上の前記中継点及び前記経由点のうちの２点間を結ぶ前記経路のうち、前記配置禁止領域に基づく領域を通過しない前記経路を生成し、前記配置禁止領域に基づく領域を通過する前記経路を生成しない、
情報処理装置。
【請求項４】
請求項１から３のうちいずれか一項に記載の情報処理装置であって、
前記経路生成部が生成する前記経路に基づいて、前記始点と前記終点とを繋ぐ最短の前記経路の組み合わせを導出する最短経路導出部を備える、
情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
前記最短経路導出部は、遺伝的アルゴリズムを用いて前記最短の前記経路の前記組み合わせを導出する、
情報処理装置。
【請求項６】
コンピューターに、
経路の始点を示す情報と、前記経路の終点を示す情報と、前記経路を構成する線分の配置が禁止される配置禁止領域を示す情報とのうち、少なくとも前記配置禁止領域を示す情報を取得する情報取得ステップと、
前記情報取得ステップが取得する情報に基づいて、前記始点と、前記終点と、前記配置禁止領域とを所定領域内に配置する情報配置ステップと、
前記情報配置ステップが配置する前記配置禁止領域毎に、前記配置禁止領域に対して、当該配置禁止領域内のすべての領域を含み当該配置禁止領域の輪郭の形状に対応して拡大させた形状の輪郭を有する拡張領域を対応付け、対応付けたそれぞれの前記拡張領域の輪郭上に３以上の中継点を配置する中継点配置ステップと、
前記始点と、前記終点と、前記３以上の前記中継点とのうちの２点間を結ぶ前記線分のうち、前記配置禁止領域に基づく領域を通過しない前記線分を生成し、前記配置禁止領域に基づく領域を通過する前記線分を生成しないことにより前記経路を生成する経路生成ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、及びプログラムに関する。
【背景技術】
【０００２】
３以上の中継点を巡回する経路は、一般に複数存在する。それらの複数の経路のうち、巡回する時間又は巡回する際の移動距離が最も短い最短経路を導出する方法が研究・開発されている。複数の中継点とは、例えば、倉庫内に設置された複数の棚や、交通機関によって接続された複数の都市等を示す。
【０００３】
これに関し、遺伝的アルゴリズムを利用して、複数の既知の経路の中から最短経路を導出する方法が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０８−２０２６７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の方法では、例えば、倉庫内における棚又は物品の配置が頻繁に変更されてしまうような場合、物品の配置が変更されるたびに、最短経路を導出する前に予め複数の経路を作成しておかなければならず、手間と時間を要してしまうという問題があった。
【０００６】
そこで本発明は、上記従来技術の問題に鑑みてなされたものであり、巡回のための複数の経路を容易に生成することができる情報処理装置、及びプログラムを提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様は、経路の始点を示す情報と、前記経路の終点を示す情報と、前記経路を構成する線分の配置が禁止される配置禁止領域を示す情報とのうち、少なくとも前記配置禁止領域を示す情報を取得する情報取得部と、前記情報取得部が取得する情報に基づいて、前記始点と、前記終点と、前記配置禁止領域とを所定領域内に配置する情報配置部と、前記情報配置部が配置する前記配置禁止領域毎に、前記配置禁止領域に対して、当該配置禁止領域内のすべての領域を含み当該配置禁止領域の輪郭の形状に対応して拡大させた形状の輪郭を有する拡張領域を対応付け、対応付けたそれぞれの前記拡張領域の輪郭上に３以上の中継点を配置する中継点配置部と、前記始点と、前記終点と、前記３以上の前記中継点とのうちの２点間を結ぶ前記線分のうち、前記配置禁止領域に基づく領域を通過しない前記線分を生成し、前記配置禁止領域に基づく領域を通過する前記線分を生成しないことにより前記経路を生成する経路生成部と、を備える情報処理装置である。
【０００８】
また、本発明の他の態様は、上記に記載の情報処理装置であって、前記中継点配置部は、前記配置禁止領域の形状に基づいた数の前記中継点を配置する、情報処理装置である。
【０００９】
また、本発明の他の態様は、上記に記載の情報処理装置であって、前記経路生成部が生成するすべての前記経路において必ず経由しなければならない経由点を配置する経由点配置部を備え、前記経路生成部は、前記経路を生成する際、前記３以上の前記中継点及び前記経由点のうちの２点間を結ぶ前記経路のうち、前記配置禁止領域に基づく領域を通過しない前記経路を生成し、前記配置禁止領域に基づく領域を通過する前記経路を生成しない、情報処理装置である。
【００１０】
また、本発明の他の態様は、上記に記載の情報処理装置であって、前記経路生成部が生成する前記経路に基づいて、前記始点と前記終点とを繋ぐ最短の前記経路の組み合わせを導出する最短経路導出部を備える、情報処理装置である。
【００１１】
また、本発明の他の態様は、上記に記載の情報処理装置であって、前記最短経路導出部は、遺伝的アルゴリズムを用いて前記最短の前記経路の前記組み合わせを導出する、情報処理装置である。
【００１２】
また、本発明の他の態様は、コンピューターに、経路の始点を示す情報と、前記経路の終点を示す情報と、前記経路を構成する線分の配置が禁止される配置禁止領域を示す情報とのうち、少なくとも前記配置禁止領域を示す情報を取得する情報取得ステップと、
前記情報取得ステップが取得する情報に基づいて、前記始点と、前記終点と、前記配置禁止領域とを所定領域内に配置する情報配置ステップと、前記情報配置ステップが配置する前記配置禁止領域毎に、前記配置禁止領域に対して、当該配置禁止領域内のすべての領域を含み当該配置禁止領域の輪郭の形状に対応して拡大させた形状の輪郭を有する拡張領域を対応付け、対応付けたそれぞれの前記拡張領域の輪郭上に３以上の中継点を配置する中継点配置ステップと、前記始点と、前記終点と、前記３以上の前記中継点とのうちの２点間を結ぶ前記線分のうち、前記配置禁止領域に基づく領域を通過しない前記線分を生成し、前記配置禁止領域に基づく領域を通過する前記線分を生成しないことにより前記経路を生成する経路生成ステップと、を実行させるためのプログラムである。
【発明の効果】
【００１３】
本発明によれば、巡回のための複数の経路を容易に生成することができる情報処理装置、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】情報処理装置１の機能構成の一例を示す図である。
【図２】制御部１６が最短経路を導出する処理の流れの一例を示すフローチャートである。
【図３】所定領域Ｐ１の一例を示す図である。
【図４】図３に示した所定領域Ｐ１に対して中継点配置部２３が配置禁止領域毎に複数の中継点を配置した状態の一例を示す図である。
【図５】図４に示した所定領域Ｐ１に対して経由点配置部２４が１以上の経由点を配置した状態の一例を示す図である。
【図６】経路生成部２５による部分経路生成処理について説明するための図である。
【図７】表示制御部２１が表示部１５に表示させる最短経路を示す情報を例示する図である。
【図８】２つの配置禁止領域が近接して配置された場合に中継点配置部２３が中継点を配置する処理を説明するための図である。
【図９】所定領域Ｐ２の一例を示す図である。
【発明を実施するための形態】
【００１５】
＜実施形態＞
以下、本発明の実施形態について、図面を参照して説明する。
まず、本実施形態に係る情報処理装置１の概要について説明する。情報処理装置１は、ユーザーが通過する始点から終点までを繋ぐ経路を生成する。例えば、情報処理装置１のユーザーは、倉庫内から所望の商品を収集する作業を行う作業員である。この場合、ユーザーが通過する経路は、所望の商品が陳列された複数の棚を巡回する順によって複数存在する。情報処理装置１は、このような複数の経路を生成する。
【００１６】
このような複数の経路を生成するため、情報処理装置１は、ユーザーから受け付けた操作に基づいて、ある所定領域内に、経路の始点と、経路の終点と、経路を構成する線分の配置が禁止される配置禁止領域とを配置する。所定領域は、情報処理装置１のＣＰＵ（Central  Processing  Unit）によって算出される仮想的な領域であって、ユーザーが実際に巡回する領域（空間）を表す仮想的な領域を示す。配置禁止領域は、例えば、商品が陳列された棚を表し、ユーザーが所望の商品を収集する際に通過することが不可能な領域を示す。
【００１７】
情報処理装置１は、所定領域内に配置した配置禁止領域毎に３以上の中継点を、当該配置禁止領域から少なくとも所定距離だけ離れた位置であって、当該３以上の中継点のうちのある中継点から他の２つの中継点のそれぞれまでを結ぶ線分が配置禁止領域を通過しない位置であって、当該３以上の中継点を頂点とする多角形が表す領域内に配置禁止領域が含まれる位置に配置する。中継点とは、例えば、配置禁止領域が棚の場合、ユーザーが棚の周囲を移動する時にユーザーが必ず通過するであろう複数の位置を示す。
【００１８】
また、情報処理装置１は、始点から終点までの経路において、必ず通過（経由）しなければならない１以上の経由点を前述の所定領域内に配置する。経由点は、例えば、ユーザーが所望の商品を収集する際に必ず立ち寄る位置を示す。そして、情報処理装置１は、始点と、終点と、配置禁止領域毎に配置した３以上の中継点と、１以上の経由点とのうちの２点間を結ぶ線分のうち、配置禁止領域に基づく拡張領域を通過しない線分を生成し、当該拡張領域を通過する線分を生成しないことにより複数の経路を生成する。拡張領域については、後述する。なお、拡張領域は、配置禁止領域そのものであってもよい。拡張領域は、配置禁止領域に基づく領域の一例である。
【００１９】
ここで、始点と、終点と、配置禁止領域毎に配置した３以上の中継点と、１以上の経由点とのうちの２点間を結ぶ線分は、当該２点間をユーザーが通過する部分経路を示す。すなわち、始点と終点とを繋ぐ経路とは、始点と、終点と、配置禁止領域毎に配置した３以上の中継点と、１以上の経由点とのうちの２点間を結ぶ線分によって表される部分経路の組み合わせにより構成される。従って、複数の経路は、複数の部分経路の組み合わせのうちの一部又は全部が互いに異なる。以下では、説明の便宜上、始点と、終点と、配置禁止領域毎に配置した３以上の中継点と、１以上の経由点とを区別する必要が無い限り、まとめて通過点と称して説明する。
【００２０】
このように、情報処理装置１は、巡回のための複数の経路を容易に生成することができる。また、情報処理装置１は、生成した複数の経路に基づいて、始点から終点までの距離が最短となる最短経路を導出する。これにより、情報処理装置１は、導出した最短経路を示す情報を表示部に表示することができる。
【００２１】
以下、図１を参照することで、情報処理装置１の機能構成について説明する。図１は、情報処理装置１の機能構成の一例を示す図である。情報処理装置１は、図示しないＣＰＵ（Central  Processing  Unit）と、記憶部１２と、入力受付部１３と、表示部１５と、制御部１６を備える。
【００２２】
制御部１６が備える機能部のうち一部又は全部は、例えば、図示しないＣＰＵが、記憶部１２に記憶された各種プログラムを実行することで実現される。また、これらの機能部のうち一部または全部は、ＬＳＩ（Large  Scale  Integration）やＡＳＩＣ（Application  Specific  Integrated  Circuit）等のハードウェア機能部であってもよい。
【００２３】
記憶部１２は、例えば、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read−Only  Memory）、ＲＯＭ（Read−Only  Memory）、ＲＡＭ（Random  Access  Memory）等を含み、情報処理装置１が処理する各種情報や画像、プログラムを格納する。なお、記憶部１２は、情報処理装置１に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置でもよい。
【００２４】
入力受付部１３は、例えば、キーボードやマウス、タッチパッド、その他の入力装置である。なお、入力受付部１３は、表示部１５と一体になってタッチパネルを構成してもよい。
表示部１５は、例えば、液晶ディスプレイパネル、あるいは、有機ＥＬ（ElectroLuminescence）ディスプレイパネルである。
【００２５】
制御部１６は、情報処理装置１の全体を制御する。制御部１６は、情報取得部２０と、表示制御部２１と、情報配置部２２と、中継点配置部２３と、経由点配置部２４と、経路生成部２５と、距離算出部２６と、最短経路導出部２７を備える。
【００２６】
情報取得部２０は、表示制御部２１により表示部１５に表示されたＧＵＩ（Graphical  User  Interface）を介してユーザーから入力された始点を示す情報を入力受付部１３から取得する。経路の始点を示す情報には、所定領域内における始点の位置を示す情報が含まれる。また、情報取得部２０は、表示制御部２１により表示部１５に表示されたＧＵＩを介してユーザーから入力された終点を示す情報を入力受付部１３から取得する。経路の終点を示す情報には、所定領域内における終点の位置を示す情報が含まれる。
【００２７】
また、情報取得部２０は、表示制御部２１により表示部１５に表示されたＧＵＩを介してユーザーから入力された１以上の経由点それぞれを示す情報を入力受付部１３から取得する。経由点を示す情報には、所定領域内における経由点の位置を示す情報が含まれる。また、情報取得部２０は、表示制御部２１により表示部１５に表示されたＧＵＩを介してユーザーから入力された１以上の配置禁止領域を示す情報を入力受付部１３から取得する。配置禁止領域を示す情報には、例えば、所定領域内における配置禁止領域の重心の位置を示す情報と、配置禁止領域の輪郭（形状）を示す情報と、配置禁止領域の大きさを示す情報等が含まれる。
【００２８】
なお、情報取得部２０は、経路の始点と、経路の終点と、１以上の経由点とのそれぞれの所定領域内における位置が予め決められている場合、情報取得部２０が入力受付部１３から取得する情報には、少なくとも配置禁止領域を示す情報が含まれていればよい。
【００２９】
表示制御部２１は、ユーザーによる入力操作を補助するＧＵＩを生成する。また、表示制御部２１は、最短経路導出部２７により導出された最短経路を示す情報を表示する画面を生成する。
【００３０】
情報配置部２２は、情報取得部２０が取得した始点を示す情報に基づいて、所定領域内に始点を配置する。なお、情報配置部２２は、始点の所定領域内における位置が予め決められている場合、記憶部１２から始点を示す情報を読み込み、読み込んだ始点を示す情報に基づいて所定領域内に始点を配置する。また、情報配置部２２は、情報取得部２０が取得した終点を示す情報に基づいて、所定領域内に終点を配置する。なお、情報配置部２２は、終点の所定領域内における位置が予め決められている場合、記憶部１２から終点を示す情報を読み込み、読み込んだ終点を示す情報に基づいて所定領域内に終点を配置する。
【００３１】
また、情報配置部２２は、情報取得部２０が取得した１以上の経由点それぞれを示す情報に基づいて、所定領域内に１以上の経由点それぞれを配置する。また、情報配置部２２は、情報取得部２０が取得した１以上の配置禁止領域それぞれを示す情報に基づいて、所定領域内に１以上の配置禁止領域それぞれを配置する。
【００３２】
中継点配置部２３は、情報配置部２２が配置した１以上の配置禁止領域のそれぞれ毎に、各配置禁止領域に対応する複数の中継点を配置する。
経由点配置部２４は、情報取得部２０が１以上の経由点を示す情報を取得した場合、情報配置部２２が取得した１以上の経由点を示す情報に基づいて、所定領域内に１以上の経由点のそれぞれを配置する。なお、情報配置部２２は、情報取得部２０が経由点を示す情報を１つも取得しない場合、所定領域内に経由点を配置しない。
経路生成部２５は、すべての通過点のうちの２点間を結ぶ線分のうち、配置禁止領域を通過しない線分を部分経路として生成し、配置禁止領域を通過する線分を部分経路として生成しないことにより複数の経路を生成する。
【００３３】
距離算出部２６は、経路生成部２５が生成した複数の部分経路それぞれの所定領域内における距離（すなわち、複数の線分それぞれにより結ばれた２点間の所定領域内における距離）を算出する。なお、所定領域内の距離は、キャリブレーション等により実空間内の距離と予め対応付けられていてもよい。
最短経路導出部２７は、距離算出部２６が算出した複数の部分経路それぞれの所定領域内における距離に基づいて、始点と終点とを繋ぐ複数の経路の中から、始点から終点までの距離が最も短い最短経路を導出する。
【００３４】
以下、図２を参照して、制御部１６が最短経路を導出する処理について説明する。図２は、制御部１６が最短経路を導出する処理の流れの一例を示すフローチャートである。なお、図２では、所定領域内における始点と、終点と、１以上の経由点とのそれぞれの位置が予め決められていない場合について説明する。まず、表示制御部２１は、ユーザーによる入力操作を補助するＧＵＩを生成する（ステップＳ１００）。
【００３５】
次に、情報取得部２０は、入力受付部１３からＧＵＩを介して始点を示す情報を取得する（ステップＳ１１０）。次に、情報配置部２２は、ステップＳ１１０において情報取得部２０が取得した始点を示す情報に基づいて所定領域内に始点を配置する（ステップＳ１２０）。
【００３６】
ここで、図３を参照して、情報配置部２２が所定領域内に始点を配置する処理について説明する。図３は、所定領域Ｐ１の一例を示す図である。この一例において、始点は、所定領域Ｐ１内の円Ｓによって表すが、他の形状によって表されてもよい。以下では、説明の便宜上、円Ｓを始点Ｓと称して説明する。また、以下では、情報配置部２２がある位置に始点Ｓを配置することを、情報配置部２２がある位置に始点Ｓを表す円の中心の位置を一致させることを示す。すなわち、情報配置部２２は、図３に示したように、ステップＳ１１０において情報取得部２０が取得した始点を示す情報に基づいて、所定領域Ｐ１内のある位置に始点Ｓを配置する。なお、所定領域Ｐ１の一部又は全部は、表示制御部２１が表示部１５に表示させるＧＵＩ上に表示されてもよく、表示されなくてもよい。
【００３７】
次に、情報取得部２０は、入力受付部１３からＧＵＩを介して終点を示す情報を取得する（ステップＳ１３０）。次に、情報配置部２２は、ステップＳ１３０において情報取得部２０が取得した終点を示す情報に基づいて所定領域内に終点を配置する（ステップＳ１４０）。
【００３８】
ここで、再び図３を参照して、情報配置部２２が所定領域内に終点を配置する処理について説明する。この一例において、終点は、所定領域Ｐ１内の円Ｅによって表すが、他の形状によって表されてもよい。以下では、説明の便宜上、円Ｅを終点Ｅと称して説明する。また、以下では、情報配置部２２がある位置に終点Ｅを配置することを、情報配置部２２がある位置に終点Ｅを表す円の中心の位置を一致させることを示す。すなわち、情報配置部２２は、図３に示したように、ステップＳ１３０において情報取得部２０が取得した終点を示す情報に基づいて、所定領域Ｐ１内のある位置に終点Ｅを配置する。
【００３９】
次に、情報取得部２０は、入力受付部１３からＧＵＩを介して１以上の配置禁止領域それぞれを示す情報を取得する（ステップＳ１５０）。次に、情報配置部２２は、ステップＳ１５０において情報取得部２０が取得した１以上の配置禁止領域を示す情報に基づいて所定領域内に１以上の配置禁止領域を配置する（ステップＳ１６０）。
【００４０】
ここで、再び図３を参照して、情報配置部２２が所定領域内に配置禁止領域を配置する処理について説明する。この一例において、配置禁止領域は、所定領域Ｐ１内の長方形Ｂ１〜長方形Ｂ３のそれぞれによって表す。以下では、説明の便宜上、長方形Ｂ１を配置禁止領域Ｂ１と称し、長方形Ｂ２を配置禁止領域Ｂ２と称し、長方形Ｂ３を配置禁止領域Ｂ３と称して説明する。また、この一例において、配置禁止領域Ｂ１〜配置禁止領域Ｂ３のそれぞれは、同じ形状であり、且つ同じ大きさである場合について説明するが、互いに異なる形状であってもよく、互いに異なる大きさであってもよい。なお、配置禁止領域の形状や大きさは、情報取得部２０が取得した配置禁止領域を示す情報に基づいて決定されるとするが、予め決められた形状や大きさであってもよい。
【００４１】
例えば、情報配置部２２は、ステップＳ１５０において情報取得部２０が取得した配置禁止領域Ｂ１を示す情報に基づいて、ある位置に配置禁止領域Ｂ１を配置する。ここで、情報配置部２２がある位置に配置禁止領域Ｂ１を配置するとは、情報配置部２２がある位置に配置禁止領域Ｂ１を表す長方形の重心の位置を一致させることを示す。情報配置部２２は、配置禁止領域Ｂ１を配置する場合の処理と同様の処理を行うことにより、配置禁止領域Ｂ２と、配置禁止領域Ｂ３とをそれぞれ配置する。
【００４２】
このように、ステップＳ１１０からステップＳ１６０までの処理によって、情報配置部２２は、所定領域Ｐ１に始点Ｓと、終点Ｅと、配置禁止領域Ｂ１〜配置禁止領域Ｂ３とのそれぞれを配置する。なお、図３において、所定領域Ｐ１は、平面領域として表されているが、これに代えて、３次元領域（空間）として表されてもよい。その場合、始点Ｓと、終点Ｅと、配置禁止領域Ｂ１〜配置禁止領域Ｂ３とのそれぞれは、仮想的な３次元物体として配置される。
【００４３】
また、ステップＳ１１０からステップＳ１２０までの処理と、ステップＳ１３０からステップＳ１４０までの処理と、ステップＳ１５０からステップＳ１６０までの処理とは、図２に示したフローチャートとは異なる順序で行われてもよく、並列で行われてもよい。また、ステップＳ１１０と、ステップＳ１３０と、ステップＳ１５０との３つの処理がすべて実行された後に、ステップＳ１２０と、ステップＳ１４０と、ステップＳ１６０との処理がある順に実行されてもよく、並列に実行されてもよい。
【００４４】
図２に戻る。次に、中継点配置部２３は、情報配置部２２が配置した１以上の配置禁止領域のそれぞれ毎に、各配置禁止領域に対応する中継点を配置する（ステップＳ１７０）。ここで、図４を参照して、中継点配置部２３による中継点の配置処理について説明する。図４は、図３に示した所定領域Ｐ１に対して中継点配置部２３が配置禁止領域毎に複数の中継点を配置した状態の一例を示す図である。
【００４５】
この一例において、中継点は、所定領域Ｐ１内の円Ｒ１〜円Ｒ１２のそれぞれによって表すが、他の形状によって表されてもよい。以下では、説明の便宜上、円Ｒ１〜円Ｒ１２を中継点Ｒ１〜中継点Ｒ１２と称して説明する。また、以下では、情報配置部２２がある位置にある中継点（例えば、中継点Ｒ１）を配置することを、情報配置部２２がある位置にある中継点（例えば、中継点Ｒ１）を表す円の中心の位置を一致させることを示す。中継点配置部２３は、ステップＳ１６０において情報配置部２２が配置した配置禁止領域毎に、以下に示した配置条件１を満たすように複数の中継点を配置する。
【００４６】
配置条件１：各中継点の位置は、３以上の中継点を頂点とする多角形が表す領域内に配置禁止領域が含まれる位置であること
【００４７】
例えば、中継点配置部２３は、上記の配置条件１を満たすため、以下に示した配置手順１〜配置手順２によって配置禁止領域毎に複数の中継点を配置する。
【００４８】
配置手順１：配置禁止領域毎に、配置禁止領域に基づく拡張領域を対応付ける
配置手順２：拡張領域の各頂点に中継点を配置する
【００４９】
拡張領域とは、例えば、配置禁止領域の形状の縦横比を保ったまま、拡張領域の輪郭と配置禁止領域の輪郭とが第１所定距離だけ離れるように拡大させた形状を有する領域を示す。なお、拡張領域は、配置禁止領域の全ての領域を含む多角形状又は円形状の領域であればよく、配置禁止領域の形状の縦横比を保ったまま、拡張領域の輪郭と配置禁止領域の輪郭とが第１所定距離だけ離れるように拡大させた形状である必要は無い。拡張領域の形状が、配置禁止領域の形状の縦横比を保ったまま、拡張領域の輪郭と配置禁止領域の輪郭とが第１所定距離だけ離れるように拡大させた形状であることは、あくまで一例である。また、この一例において、配置禁止領域Ｂ１〜配置禁止領域Ｂ３のそれぞれが同じ形状であり、且つ同じ大きさであるため、以下では、拡張領域と中継点に関する説明を、配置禁止領域Ｂ１を例にとって説明する。
【００５０】
図４に示したように、中継点配置部２３は、配置禁止領域Ｂ１に対して拡張領域Ｓ１を対応付けている。この拡張領域Ｓ１の輪郭は、配置禁止領域Ｂ１の輪郭と第１所定距離Ｌ１だけ離れている。なお、第１所定距離Ｌ１は、所定領域Ｐ１内において５０センチメートル程度の幅（例えば、人の肩幅の半分程度）であるが、これに代えて、他の距離であってもよい。
【００５１】
第１所定距離Ｌ１が５０センチメートル程度の幅である理由は、中継点がユーザーの通過点を表しているからである。例えば、ユーザーが倉庫内の棚を巡回して商品を収集する場合、実際にユーザーが倉庫内を動く経路は、棚に沿った経路である可能性が高い。そのため、ユーザーが棚に沿って移動した際におけるユーザーの頭は、棚から人の肩幅の半分程度離れていると考えられる。第１所定距離Ｌ１は、このような理由から、５０センチメートル程度とするのが望ましい。
【００５２】
中継点配置部２３は、図４に示したように、拡張領域Ｓ１の各頂点の位置に中継点Ｒ１〜中継点Ｒ４のそれぞれを配置する。このように配置することにより、中継点配置部２３は、中継点Ｒ１〜中継点Ｒ４を上記の配置条件１を満たすように配置することができる。また、図４に示したように中継点Ｒ１〜中継点Ｒ４のそれぞれを配置することにより、中継点配置部２３は、配置禁止領域Ｂ１に対して配置された中継点Ｒ１〜中継点Ｒ４のそれぞれのうちのある１つの中継点と、他の２つの中継点のそれぞれまでを結ぶ線分が拡張領域の内側（拡張領域の輪郭線上は通過する）を通過しない位置に配置することができる。
【００５３】
例えば、中継点Ｒ１と、他の２つの中継点Ｒ２と中継点Ｒ４のうちのそれぞれまでを結ぶ線分は、両方ともに拡張領域Ｓ１の内側を通過しない。また、中継点Ｒ２と他の２つの中継点Ｒ１と中継点Ｒ３のうちのそれぞれまでを結ぶ線分は、両方ともに拡張領域Ｓ１を通過しない。中継点Ｒ３と中継点Ｒ４に関しても、中継点Ｒ１及び中継点Ｒ２と同様に拡張領域Ｓ１を通過しない。
【００５４】
また、図４において、中継点Ｒ５〜中継点Ｒ８は、上記の配置手順１〜配置手順２に従って中継点配置部２３が配置禁止領域Ｂ２に対して配置した中継点を示す。また、中継点Ｒ９〜中継点Ｒ１２は、上記の配置手順１〜配置手順２に従って中継点配置部２３が配置禁止領域Ｂ３に対して配置した中継点を示す。なお、拡張領域Ｓ２は、配置禁止領域Ｂ２に対応付けられた拡張領域を示す。また、拡張領域Ｓ３は、配置禁止領域Ｂ３に対応付けられた拡張領域を示す。なお、この一例において、拡張領域の形状は、配置禁止領域の形状と相似である場合について説明したが、これに代えて、配置禁止領域の形状に応じた他の形状であってもよい。
【００５５】
図２に戻る。次に、情報取得部２０は、入力受付部１３からＧＵＩを介して１以上の経由点を示す情報を取得する（ステップＳ１８０）。次に、経由点配置部２４は、ステップＳ１８０において情報取得部２０が取得した１以上の経由点それぞれを示す情報に基づいて所定領域内に１以上の経由点それぞれを配置する（ステップＳ１９０）。
【００５６】
ここで、図５を参照して、情報配置部２２が所定領域内に１以上の経由点のそれぞれを配置する処理について説明する。図５は、図４に示した所定領域Ｐ１に対して経由点配置部２４が１以上の経由点を配置した状態の一例を示す図である。
【００５７】
この一例において、経由点は、所定領域Ｐ１内の円Ｖ１〜円Ｖ４のそれぞれによって表すが、他の形状によって表されてもよい。以下では、説明の便宜上、円Ｖ１〜円Ｖ４を経由点Ｖ１〜経由点Ｖ４と称して説明する。また、以下では、経由点配置部２４がある位置にある経由点（例えば、経由点Ｖ１）を配置することを、経由点配置部２４がある位置にある経由点（例えば、経由点Ｖ１）を表す円の中心の位置を一致させることを示す。経由点配置部２４は、ステップＳ１８０において情報取得部２０が取得した１以上の経由点それぞれを示す情報に基づいて、所定領域Ｐ１内に経由点Ｖ１〜経由点Ｖ４のそれぞれを配置する。
【００５８】
図５に示した例では、経由点Ｖ１は、経由点配置部２４により中継点Ｒ１と中継点Ｒ４を結ぶ直線上に配置されている。また、経由点Ｖ２は、経由点配置部２４により中継点Ｒ５と中継点Ｒ８を結ぶ直線上に配置されている。また、経由点Ｖ３は、経由点配置部２４により中継点Ｒ６と中継点Ｒ７を結ぶ直線上に配置されている。また、経由点Ｖ４は、経由点配置部２４により中継点Ｒ９と中継点Ｒ１２を結ぶ直線上に配置されている。なお、これらの経由点は、２つの中継点を結ぶ直線上（すなわち、拡張領域Ｓ１を示す点線上）に配置される必要は無く、拡張領域の輪郭線上を除く拡張領域の内側でなければ、他の任意の位置に配置されてもよい。また、この一例において、所定領域Ｐ１が平面領域として表されているため、これらの経由点は、配置禁止領域内に配置することはできない。
【００５９】
次に、制御部１６は、入力受付部１３からＧＵＩを介して最短経路導出処理を開始する操作を受け付ける（ステップＳ２００）。最短経路導出処理を開始する操作とは、例えば、ＧＵＩ上に表示された最短経路導出処理を開始するボタンへのクリック等を示す。ステップＳ２００において最短経路導出処理を開始する操作を受け付けた後、経路生成部２５は、すべての通過点のうちの２点間毎に、当該２点間を結ぶ線分であって、配置禁止領域に基づく拡張領域を通過しない線分を、当該２点間の部分経路として生成する。一方、経路生成部２５は、すべての通過点のうちの２点間毎に、当該２点間を結ぶ線分であって、配置禁止領域に基づく拡張領域を通過する線分を、当該２点間の部分経路として生成しない（ステップＳ２１０）。
【００６０】
ここで、図６を参照して、経路生成部２５による部分経路生成処理について説明する。図６は、経路生成部２５による部分経路生成処理について説明するための図である。図６には、配置禁止領域Ｂ１と、配置禁止領域Ｂ１に対して配置された中継点Ｒ１〜中継点Ｒ４と、経由点Ｖ１とを示す。一例として、中継点Ｒ１から経由点Ｖ１、中継点Ｒ２、中継点Ｒ３のそれぞれまでを結ぶ部分経路について説明する。中継点Ｒ１と経由点Ｖ１を結ぶ線分は、拡張領域Ｓ１の輪郭線上を除く拡張領域Ｓ１の内側の領域を通過しない。そのため、経路生成部２５は、中継点Ｒ１と経由点Ｖ１を結ぶ線分Ｘ１を部分経路として生成する。また、中継点Ｒ１と中継点Ｒ２を結ぶ線分は、拡張領域Ｓ１の輪郭線上を除く拡張領域Ｓ１の内側の領域を通過しない。そのため、経路生成部２５は、中継点Ｒ１と中継点Ｒ２を結ぶ線分Ｘ２を部分経路として生成する。
【００６１】
一方、中継点Ｒ１と中継点Ｒ３を結ぶ線分は、拡張領域Ｓ１の内側の領域を通過する。そのため、経路生成部２５は、中継点Ｒ１と中継点Ｒ３を結ぶ線分Ｘ３を部分経路として生成しない。このように、経路生成部２５は、すべての通過点のうちの２点間毎に、当該２点間を結ぶ線分であって、拡張領域を通過しない線分を、当該２点間の部分経路として生成する。なお、２点間を結ぶ線分は、直線に代えて、曲線であってもよいが、線分によって表される部分経路によって実際にユーザーが通過する部分経路に近い部分経路を表すためには、直線であることが望ましい。なお、経路生成部２５は、すべての通過点のうちの２点間毎に、当該２点間を結ぶ線分であって、拡張領域を通過しない線分を、当該２点間の部分経路として生成し、拡張領域を通過する線分を、当該２点間の部分経路として生成しない構成に代えて、すべての通過点のうちの２点間毎に、当該２点間を結ぶ線分であって、配置禁止領域を通過しない線分を当該２点間の部分経路として生成し、配置禁止領域を通過する線分を当該２点間の部分経路として生成しない構成であってもよい。
【００６２】
ステップＳ２１０において経路生成部２５が複数の部分経路を生成した後、距離算出部２６は、部分経路毎に各部分経路によって結ばれる２点間の距離を算出する（ステップＳ２２０）。距離算出部２６は、例えば、ダイクストラアルゴリズム等、既存のアルゴリズムによって、部分経路毎に各部分経路によって結ばれる２点間の距離を算出する。以下では、説明の便宜上、ある部分経路によって結ばれる２点間の距離を、ある部分経路の距離と称して説明する。
【００６３】
次に、最短経路導出部２７は、ステップＳ２２０において距離算出部２６により算出された各部分経路の距離に基づいて、始点からすべての経由点を経由して終点まで行き着く経路を構成する部分経路の組み合わせのうち、部分経路の距離の合計が最も短い経路を最短経路として導出する（ステップＳ２３０）。
【００６４】
ここで、最短経路導出部２７による最短経路の導出処理について説明する。最短経路導出部２７は、例えば、遺伝的アルゴリズム（Genetic  Algorithm:  GA）を用いて最短経路を導出する。なお、最短経路導出部２７は、遺伝的アルゴリズムとは異なる他のアルゴリズムを用いて最短経路を導出する構成であってもよい。
【００６５】
遺伝的アルゴリズムに関しては、既知のアルゴリズムであるため、ここでは簡単に説明する。最短経路導出部２７は、遺伝的アルゴリズムを用いるため、すべての通過点のそれぞれに対して、通過点を識別する通過点ＩＤを対応付ける。以下では、遺伝的アルゴリズムにおいて導出する最短経路の候補となる複数の経路を、解の候補と称して説明する。また、以下では、説明の便宜上、遺伝的アルゴリズムのうち、単純交叉法を用いた場合について説明するが、他の方法を用いてもよい。
【００６６】
最短経路導出部２７は、始点から終点まで部分経路を通過しながらすべての経由点を経由する経路を、通過点ＩＤの順列によって表す。すなわち、遺伝的アルゴリズムにより導出される解（最短経路）の候補（複数の経路）は、通過点ＩＤの順列によって表される。例えば、始点の通過点ＩＤをｓ、終点の通過点ＩＤをｅ、通過する中継点の通過点ＩＤをｒ１、ｒ２、経由点の通過点ＩＤをｖ１とし、ｓ→ｒ１→ｖ１→ｒ２→ｅの順番に通過する経路は、（ｓ、ｒ１、ｖ１、ｒ２、ｅ）という通過点ＩＤの順列によって表される。
【００６７】
以下では、このように解の候補を通過点ＩＤの順列によって表す表現を、パス表現と称して説明する。また、これらの解の候補、すなわち通過点ＩＤの順列によって表された経路の遺伝的アルゴリズムにおける適応度は、各経路において通過する部分経路の距離の合計によって表される。
【００６８】
パス表現によって表された解の候補によって遺伝的アルゴリズムにおける交叉法を行うと、致死遺伝子を有する解の候補が生じてしまう。そこで、この一例において、最短経路導出部２７は、パス表現によって表される解の候補を、順序表現に変換する。順序表現とは、次に巡回（通過）する点が、残りの点の中における何番目の点であるかを番号によって表したものである。以下では、説明の便宜上、順序表現によって表した解の各候補を、遺伝子と称して説明する。
【００６９】
従って、最短経路導出部２７は、すべての経由点を経由し、且つ致死遺伝子を有しないという条件のもとに、始点から終点までの間の通過点をランダムに選択し、選択した通過点に基づいてパス表現によって表した解の候補を生成する。最短経路導出部２７は、生成した解の候補のそれぞれを、順序表現によって表した遺伝子に変換する。そして、最短経路導出部２７は、適応度が所定閾値未満の遺伝子が現れるまで、以下に示した手順１〜手順３を繰り返し行う。
【００７０】
手順１：各遺伝子の適応度（すなわち、遺伝子が表す経路において通過する部分経路の距離の合計）を算出する。
手順２：複数の遺伝子の中から、適応度（すなわち、距離）が短い遺伝子を上位から順に所定数だけ選択する。なお、所定数は、例えば、１０個であるが、他の数であってもよい。
手順３：手順２において選択した遺伝子を交叉させる。
【００７１】
このような手順１〜手順３を繰り返すことにより、最短経路導出部２７は、遺伝的アルゴリズムの解として最短経路を導出する。これにより、最短経路導出部２７は、すべての解の候補について適応度を算出し、算出した適応度を比較して最短経路を導出する場合に比べて、最短経路の導出時間を短縮することができる。
【００７２】
図２に戻る。ステップＳ２３０において最短経路導出部２７が最短経路を導出した後、表示制御部２１は、最短経路を示す情報を表示部１５に表示させる（ステップＳ２４０）。ここで、図７を参照して、表示制御部２１が表示部１５に表示させる最短経路を示す情報について説明する。図７は、表示制御部２１が表示部１５に表示させる最短経路を示す情報を例示する図である。
【００７３】
図７（Ａ）には、表示部１５に表示される最短経路を示す情報の一例を示す図である。図７（Ａ）に示した例では、最短経路導出部２７が導出した最短経路を示す情報は、ユーザーが巡回する場所の地図Ｚ１上に重ねた最短経路を表す線分Ｙ１によって表される。これにより、ユーザーは、ユーザー自身が通過すべき最短経路を視覚的に理解することができる。
【００７４】
また、図７（Ｂ）には、表示部１５に表示される最短経路を示す情報の他の例を示す図である。図７（Ｂ）に示した例では、最短経路導出部２７が導出した最短経路を示す情報は、ユーザー巡回する順に、始点と終点とを含む通過点を順番に表示したテキスト情報によって表される。また、円Ｚ３によって囲まれた範囲には、始点からの距離が表示されている。また、円Ｚ４によって囲まれた範囲には、それぞれの通過点の所定領域内におけるアドレスが表示されている。
【００７５】
また、図７（Ｃ）には、表示部１５がウェラブル端末のディスプレイである場合の最短経路を示す情報の表示例を示す。図７（Ｃ）の表示例は、図７（Ｃ）に示した地図や、図７（Ｃ）に示したテキスト情報が、ウェラブル端末のディスプレイに表示されている状態を示す。これにより、ユーザーは、例えば、倉庫内の最短経路を視認しながら、倉庫内を巡回することができ、効率的な作業を行うことができる。すなわち、情報処理装置１は、ユーザーの作業効率を上げることができる。
【００７６】
＜実施形態の変形例１＞
以下、上記において説明した本実施形態の変形例１について、図面を参照して説明する。本実施形態の変形例１に係る中継点配置部２３は、２つの配置禁止領域が近接して配置された場合に、それぞれの配置禁止領域に対応付けられた拡張領域を、１つの拡張領域に変換する。そして、中継点配置部２３は、変換した１つの拡張領域に基づいて中継点を配置する。これにより、情報処理装置１は、ユーザーが通過することができないような狭い場所に対して部分経路が生成されてしまうことを抑制することができる。
【００７７】
図８は、２つの配置禁止領域が近接して配置された場合に中継点配置部２３が中継点を配置する処理を説明するための図である。図８（Ａ）には、２つの配置禁止領域が近接している状況の一例を示す。また、図８（Ｂ）には、２つの配置禁止領域が近接している場合に複数の中継点が配置された状況の一例を示す。
【００７８】
図８において、長方形Ｂ４と長方形Ｂ５は、それぞれ配置禁止領域を示す。以下では、長方形Ｂ４を、配置禁止領域Ｂ４と称し、長方形Ｂ５を、配置禁止領域Ｂ５と称して説明する。また、図８において、点線Ｓ４は、配置禁止領域Ｂ４の拡張領域を示し、点線Ｓ５は、配置禁止領域Ｂ５の拡張領域を示す。以下では、点線Ｓ４を、拡張領域Ｓ４と称し、点線Ｓ５を、拡張領域Ｓ５と称して説明する。
【００７９】
本実施形態において、２つの配置禁止領域Ｂ４と配置禁止領域Ｂ５が近接している状態とは、図８（Ａ）に示したように、拡張領域Ｓ４の一部又は全部と、拡張領域Ｓ５の一部又は全部とが重なった状態を示す。ここで、図８（Ａ）において、配置禁止領域Ｂ４と配置禁止領域Ｂ５は、距離Ｌ３だけ離れている。しかし、図８（Ａ）に示したように、距離Ｌ３は、第１所定距離Ｌ１よりも短い。上記で説明したように、第１所定距離Ｌ１が、配置禁止領域が表す棚に沿ってユーザーが動くことを想定して５０センチメートル程度と決められている場合、第１所定距離Ｌ１よりも短い距離Ｌ３しか離れていない配置禁止領域Ｂ４と配置禁止領域Ｂ５の間をユーザーが通過することは困難である。なお、ユーザーは、第１所定距離Ｌ１の２倍（すなわち、人の肩幅程度）よりも短い距離を移動することが困難であることを想定している。
【００８０】
そこで、図８（Ａ）に示したような状況の場合、中継点配置部２３は、２つの拡張領域Ｓ４と拡張領域Ｓ５を、図８（Ｂ）に示した拡張領域Ｓ６のように合成する。拡張領域Ｓ６は、拡張領域Ｓ４と拡張領域Ｓ５を重ねた場合に形成される外形（輪郭）を新たな拡張領域として設定されたものである。
【００８１】
中継点配置部２３は、２つの拡張領域Ｓ４と拡張領域Ｓ５に基づいて、配置禁止領域Ｂ４及び配置禁止領域Ｂ５に対して拡張領域Ｓ６を新たに対応付ける。そして、中継点配置部２３は、拡張領域Ｓ６の頂点のうち、拡張領域Ｓ６の内側から外側に向けて尖っている６つの頂点のそれぞれに対して中継点を配置する。図８において、これらの中継点を、中継点Ｒ１４〜中継点Ｒ１８によって示した。
【００８２】
このように中継点を配置することにより、経路生成部２５は、拡張領域Ｓ６を通過する部分経路を生成しない。より具体的には、図８（Ｂ）に示したように、中継点Ｒ１５と中継点Ｒ１８を結ぶ線分Ｘ４は、拡張領域Ｓ６の両方を通過する。経路生成部２５は、図８（Ｂ）に示したように、２つ以上の拡張領域を重ねた場合に形成される新たな拡張領域に対して配置された中継点同士を結ぶ部分経路に関しては、拡張領域を通過するような部分経路を生成しない。ただし、経路生成部２５は、このような場合であっても、拡張領域の辺上に沿った部分経路は生成する。その結果、情報処理装置１は、すべての通過点のうちの２つの通過点を結ぶ部分経路を生成する際、ユーザーが通過することが困難な部分経路（すなわち、ユーザーが実際に通過しないであろう部分経路）を生成してしまうことを抑制することができる。
【００８３】
以上により、本実施形態の変形例１に係る情報処理装置１は、最短経路を導出する際、ユーザーが実際に通過する経路に近い最短経路を導出することができる。
【００８４】
＜実施形態の変形例２＞
以下、上記において説明した本実施形態の変形例２について、図面を参照して説明する。本実施形態の変形例２に係る経路生成部２５は、すべての通過点のうちの２つの通過点を結ぶ部分経路を生成する際、所定配置領域の外に配置された配置禁止領域に対して配置された中継点を無視する。これにより、情報処理装置１は、より短い導出時間によって最短経路を導出することができる。
【００８５】
図９は、所定領域Ｐ２の一例を示す図である。所定領域Ｐ２は、図５に示した所定領域Ｐ１と比べて、配置されている始点Ｓの位置と、配置されている経由点の数が異なる。所定領域Ｐ２には、経由点Ｖ２〜経由点Ｖ４が配置されている。すなわち、所定領域Ｐ２には、配置禁止領域Ｂ２の近傍と、配置禁止領域Ｂ３の近傍とに対してのみ、経由点が配置されている。この場合、ユーザーは、始点Ｓと終点Ｅを配置する際、効率的な巡回を行うため、始点Ｓと終点Ｅのうちいずれか一方を配置禁止領域Ｂ２の近傍に配置し、他方を配置禁止領域Ｂ３の近傍に配置する可能性が高い。
【００８６】
図９に示した例は、始点Ｓが配置禁止領域Ｂ２の近傍に配置され、終点Ｅが配置禁止領域Ｂ３の近傍に配置されている。このような場合、始点Ｓと終点Ｅを対角線上の２つの頂点とする矩形領域Ｗ１の外側に配置された配置禁止領域Ｂ１の近傍は、ユーザーが始点Ｓから終点Ｅへ経由点Ｖ２〜Ｖ４を経由しながら移動する際に通過しない。そこで、経路生成部２５は、図９に示した始点Ｓと終点Ｅの位置に基づく所定配置領域の外側に配置された配置禁止領域に対して配置された中継点と、当該は所定配置領域の内側に配置されている他の中継点とを結ぶ部分経路を生成しない（すなわち、無視する）。
【００８７】
なお、図９に示した矩形領域Ｗ１は、所定配置領域の一例に過ぎず、始点Ｓと終点Ｅの位置に基づく他の形状や他の大きさの領域であってもよい。例えば、所定配置領域は、始点Ｓと終点Ｅの位置を結ぶ線分を長径とする楕円形状であってもよい。また、情報処理装置１は、経路生成部２５が、始点Ｓと終点Ｅの位置に基づく所定配置領域の外側に配置された配置禁止領域に対して配置された中継点と、当該は所定配置領域の内側に配置されている他の中継点とを結ぶ部分経路を生成しない構成に代えて、中継点配置部２３が、始点Ｓと終点Ｅの位置に基づく所定配置領域の外側に配置された配置禁止領域に対して中継点を配置しない構成であってもよい。
【００８８】
以上により、本実施形態の変形例２に係る情報処理装置１は、生成される部分経路の数を抑制することができ、その結果、計算量を抑制することができ、より短い導出時間によって最短経路を導出することができる。
【００８９】
＜実施形態の変形例３＞
以下、上記において説明した本実施形態の変形例３について説明する。本実施形態の変形例３に係る経路生成部２５は、すべての通過点のうちの２つの通過点を結ぶ部分経路を生成する際、複数の中継点と、１以上の経由点とを、複数のクラスターに分類する。そして、経路生成部２５は、すべての通過点のうちの２つの通過点を結ぶ部分経路を生成する際、分類したクラスターのうち、経由点を含まないクラスターに含まれる中継点を無視する。これにより、情報処理装置１は、本実施形態の変形例２と同様な効果を得ることができる。
【００９０】
なお、経路生成部２５は、情報取得部２０が入力受付部１３からＧＵＩを介して取得したクラスターを示す情報に基づいて、中継点配置部２３が所定領域内に配置した複数の中継点と、経由点配置部２４が配置した１以上の経由点とを、複数のクラスターに分類するが、これに代えて、既知のクラスター検出方法によってクラスターを検出する構成であってもよい。
【００９１】
＜実施形態の変形例４＞
以下、上記において説明した本実施形態の変形例４について、図面を参照して説明する。本実施形態の変形例４に係る経路生成部２５は、すべての通過点のうちの２つの通過点を結ぶ部分経路を生成する際、それらの部分経路のうちの一部又は全部に、情報取得部２０が入力受付部１３からＧＵＩを介して取得した通過可能な方向を示す情報に基づいて通過可能な方向を対応付ける。
【００９２】
以下、再び図９を参照して、経由点配置部２４による部分経路への通過可能な方向を示す情報の対応付け処理について説明する。ここで、中継点Ｒ６から経由点Ｖ３への部分経路と、経由点Ｖ３から中継点Ｒ７への部分経路とを例にとって説明する。
【００９３】
何らかの理由により、ユーザーが通過する経路の途中に一方通行の部分経路が存在する場合、経路生成部２５は、情報取得部２０が入力受付部１３からＧＵＩを介して取得した通過可能な方向を示す情報に基づいて、生成した部分経路のうちの一部又は全部に対して、通過可能な方向を対応付ける。
【００９４】
図９において、経路生成部２５は、情報取得部２０が入力受付部１３からＧＵＩを介して取得した通過可能な方向を示す情報に基づいて、中継点Ｒ６から経由点Ｖ３への部分経路に対して、通過可能な方向を対応付けている。図９では、通過可能な方向が対応付けられた部分経路であって、中継点Ｒ６から経由点Ｖ３への部分経路を、矢印Ｗ１によって示す。また、図９では、通過可能な方向が対応付けられた部分経路であって、経由点Ｖ３から中継点Ｒ７への部分経路を、矢印Ｗ２によって示す。
【００９５】
部分経路に通過可能な方向が対応付けられている場合、最短経路導出部２７は、すべての経由点を経由し、且つ致死遺伝子を有せず、且つ通過不可能な方向への通過を含まないという条件のもとに、始点から終点までの間の通過点をランダムに選択し、選択した通過点に基づいてパス表現によって表した解の候補を生成する。そして、最短経路導出部２７は、生成した解の候補に基づいて、最短経路を導出する。これにより、情報処理装置１は、経路を構成する部分経路の組み合わせの数を抑制することができ、その結果、最短経路を導出する計算時間を短縮することができる。
【００９６】
以上説明したように、本実施形態に係る情報処理装置１は、経路の始点を示す情報と、経路の終点を示す情報と、経路を構成する線分の配置が禁止される配置禁止領域を示す情報とのうち、少なくとも配置禁止領域を示す情報を取得し、取得した情報に基づいて、始点と、終点と、配置禁止領域とを所定領域内に配置し、配置した配置禁止領域毎に３以上の中継点を、当該配置禁止領域から少なくとも所定距離だけ離れた位置であって、３以上の中継点のうちのある中継点から他の２つの中継点のそれぞれまでを結ぶ線分が配置禁止領域を通過しない位置であって、３以上の中継点を頂点とする多角形が表す領域内に配置禁止領域が含まれる位置に配置し、始点と、終点と、３以上の中継点とのうちの２点間を結ぶ線分のうち、配置禁止領域に基づく拡張領域を通過しない線分を生成し、配置禁止領域に基づく拡張領域を通過する線分を生成しないことにより経路を生成する。これにより、情報処理装置１は、巡回のための複数の経路を容易に生成することができる。
【００９７】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
【００９８】
また、以上に説明した装置（例えば、情報処理装置１の制御部１６）における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。
【００９９】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１００】
１  情報処理装置、１２  記憶部、１３  入力受付部、１５  表示部、１６  制御部、２０  情報取得部、２１  表示制御部、２２  情報配置部、２３  中継点配置部、２４  経由点配置部、２５  経路生成部、２６  距離算出部、２７  最短経路導出部
【図１】
0006482112.tif 000002
【図２】
0006482112.tif 000003
【図３】
0006482112.tif 000004
【図４】
0006482112.tif 000005
【図５】
0006482112.tif 000006
【図６】
0006482112.tif 000007
【図７】
0006482112.tif 000008
【図８】
0006482112.tif 000009
【図９】
0006482112.tif 000010