(57)【特許請求の範囲】
【請求項１】
それぞれが異なる地点で実行される複数のサービスを連続的に処理する際の移動の最適経路を決定するための最適経路決定装置であって、
前記複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得するサービス特定情報取得部と、
前記複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する実行順序決定部と、
前記複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報と、各停車位置候補及び各停車位置候補における停車方向に対して、所要時間への影響及び／又はサービス実行者の負担への影響を評価するためのコスト情報を定めた周辺コスト情報と、を含む実行地点特有情報を取得する実行地点特有情報取得部と、
前記実行順序と前記実行地点特有情報とを用いて、各サービスの実行地点における停車位置、停車方向が異なる複数の経路について移動に要する合計コスト値を算出し、合計コスト値が最も小さい経路を最適経路として決定し、最適経路における停車位置、停車方向である最適停車位置、最適停車方向の情報を最適経路の情報と併せて出力する最適経路決定部と
を備える最適経路決定装置。
【請求項２】
前記実行地点特有情報は、各サービスの実行地点におけるＵターンのコスト値を含む周辺コスト情報を含むものとし、
前記最適経路決定部は、各経路での移動に要する合計コスト値を算出するために前記周辺コスト情報を用いるものとし、複数の経路それぞれの合計コスト値を最適経路の決定に利用する
請求項１記載の最適経路決定装置。
【請求項３】
それぞれが異なる地点で実行される複数のサービスを連続的に処理する際の移動の最適経路を決定する処理をコンピュータに実現させるための最適経路決定プログラムであって、
前記コンピュータに、
前記複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得するサービス特定情報取得機能と、
前記複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する実行順序決定機能と、
前記複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報と、各停車位置候補及び各停車位置候補における停車方向に対して、所要時間への影響及び／又はサービス実行者の負担への影響を評価するためのコスト情報を定めた周辺コスト情報と、を含む実行地点特有情報を取得する実行地点特有情報取得機能と、
前記実行順序と前記実行地点特有情報とを用いて、各サービスの実行地点における停車位置、停車方向が異なる複数の経路について移動に要する合計コスト値を算出し、合計コスト値が最も小さい経路を最適経路として決定し、最適経路における停車位置、停車方向である最適停車位置、最適停車方向の情報を最適経路の情報と併せて出力する最適経路決定機能と
を実現させる最適経路決定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複雑な業務の状態管理を実現して配送計画の再計算を容易にし、かつ、配送先の実際の環境を考慮して次の配送先への移動を容易に行える最適経路を決定することが可能な最適経路決定装置及び最適経路決定プログラムに関するものである。
【背景技術】
【０００２】
従来、「組合せ最適化」という分野において、主に「現実社会の問題を組合せ最適化問題にモデル化する」「ある組合せ最適化問題に対する解法を考案する」ということが研究されている。そして、組合せ最適化問題の中に「配送計画問題（VRP：vehicle routing problem）」という問題がある。これは複数の車両と複数の訪問先が入力されたとき、すべての訪問先がいずれかの車両によりちょうど一度ずつ訪問されるような車両のルート（訪問先の順序）の中でルートの長さの総和が最小となるものを求める問題である。何十年も前からVRPに対して現実で現れる制約条件を取り込んだ問題がいくつも提案され、それらに対する近似解法も同時に研究されてきた。
またVRPを一般化した問題として「PDP：pickup and delivery problem」という問題がある。これは荷物を積む訪問先とその荷物を降ろす訪問先の組が複数入力されたとき、各組に対して各訪問先を同じ車両が訪れ、さらに積んだあとに降ろすという順序を守った上ですべての訪問先がいずれかの車両によりちょうど一度ずつ訪問されるような車両のルートの中でルートの長さの総和が最小となるものを求める問題である。PDPもVRP同様に現実で現れる制約条件を取り込んだ問題がいくつも提案され、それらに対する近似解法も同時に研究されてきた。
【０００３】
例えば、特許文献１には、配送先を各車両に振り分けるグルーピング処理とグルーピングで決められた配送先グループを車両がどの順序で巡るかというルートの最適化処理とで決定される配送計画について、複数のグルーピング戦略を用いて複数の配送計画を生成し、その中で最適な配送計画を選択するようにした技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１８８９８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、VRPおよびPDPにおける訪問先の地点情報は目的地を代表する１箇所のみが考慮されることが一般的である。複数の訪問先を訪問する最短経路を求める場合には、各訪問先を代表する地点同士を結ぶ最短経路を単純に繋ぐ前提で全体の最短経路を演算するため、ある訪問先に到着する向きとその訪問先を出発する向きが異なることでＵターンが生じることがある。その道路が非常にＵターンのしづらい道路であり時間を要する場合、最短経路を求めたはずが時間を要してしまう経路となってしまうおそれがある。また、訪問先における停車位置としてもっと適した位置があるにも関わらず、最短経路演算の際には考慮されないという問題があった。
【０００６】
また、荷物を集荷してから配送完了するまでを１台の車両によって実行するような複雑な業務を担う場合もあり、このような複雑な業務を複数実行するように計画している状況において、急な割り込み業務が発生したり業務のキャンセルが発生したりすると、車両の配送計画が大きく崩れてしまうという問題があった。特に複数のタスクで構成された複雑な業務の何れのタスクまで完了しているかを管理することが容易ではなく、配送計画の再計算を困難にしているという問題があった。結果、ドライバーは当初の配送計画からの変更をそのまま受け入れて対応しているため、車両のドライバーの負担が増大しているという問題があった。
【０００７】
本発明は、上記問題点に鑑みなされたものであり、複雑な業務の状態管理を実現して配送計画の再計算を容易にし、かつ、配送先の実際の環境を考慮して次の配送先への移動を容易に行える最適経路を決定することが可能な最適経路決定装置及び最適経路決定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る最適経路決定装置は、それぞれが異なる地点で実行される複数のサービスを連続的に処理する際の移動の最適経路を決定するための最適経路決定装置であって、前記複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得するサービス特定情報取得部と、前記複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する実行順序決定部と、前記複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報を含む実行地点特有情報を取得する実行地点特有情報取得部と、前記実行順序と前記実行地点特有情報とを用いて、各実行地点における最適停車位置及び／又は最適停車方向の情報を含む最適経路を決定する最適経路決定部とを備えることを特徴とする。
【０００９】
また、本発明に係る最適経路決定装置は、さらに、前記実行地点特有情報は、各サービスの実行地点におけるＵターンのコスト値を含む周辺コスト情報を含むものとし、前記最適経路決定部は、各経路での移動に要する合計コスト値を算出するために前記周辺コスト情報を用いるものとし、複数の経路それぞれの合計コスト値を最適経路の決定に利用することを特徴とする。
【００１０】
また、本発明に係る最適経路決定装置は、関連する少なくとも１以上の前記サービスで構成されたジョブの状態を管理するための状態管理テーブルをジョブの状態の変化に応じて更新するジョブ状態管理部をさらに備え、前記実行順序決定部は、前記状態管理テーブルを参照して前記ジョブの状態情報を取得し、前記ジョブの状態情報から実行が必要な前記サービスを特定し、特定した前記サービスについてサービス特定情報を取得し、取得したサービス特定情報に基づいて実行順序を決定するようにしたことを特徴とする。
【００１１】
また、本発明に係る最適経路決定装置は、前記状態管理テーブルは、車両によってピックアップした対象を所定位置までデリバリーする業務を１つのジョブの単位として扱うものとし、ジョブの状態として、（Ａ）車両に載せる前（本計画で載せる予定あり）、（Ｂ）車両に載せる前（本計画で載せる予定なし）、（Ｃ）車両から降ろす前（本計画で降ろす予定あり）、（Ｄ）車両から降ろす前（本計画で降ろす予定なし）、（Ｅ）車両から降ろした後、の５つの対象の状態と、（Ｆ）割当先車両あり、（Ｇ）割当先車両なし、の２つの計画における状態とを有し、これらの組み合わせでジョブの状態を管理するものとし、前記実行順序決定部は、所定の再計算実行指示を受け付けた場合に、前記状態管理テーブルを参照して前記ジョブの状態情報を取得し、再計算前の計画とは異なる前記ジョブの状態情報に基づいて実行が必要な前記サービスを特定し、特定した前記サービスについて実行順序を決定するようにしたことを特徴とする。
【００１２】
本発明に係る最適経路決定プログラムは、それぞれが異なる地点で実行される複数のサービスを連続的に処理する際の移動の最適経路を決定する処理をコンピュータに実現させるための最適経路決定プログラムであって、前記コンピュータに、前記複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得するサービス特定情報取得機能と、前記複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する実行順序決定機能と、前記複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報を含む実行地点特有情報を取得する実行地点特有情報取得機能と、前記実行順序と前記実行地点特有情報とを用いて、各実行地点における最適停車位置及び／又は最適停車方向の情報を含む最適経路を決定する最適経路決定機能とを実現させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、最適経路決定に際して複数の停車位置候補を考慮することで停車位置及び停車向きも考慮した最適経路を決定することが可能となる。また、実行順序決定に際してジョブの状態情報を状態管理テーブルによって確認して、実行が必要なサービスを抽出した上で実行順序を決定することが可能となる。すなわち、車両が既に移動を開始した計画実行中であってもその時点でのジョブの状態情報を取得して実行順序について再計算を行うことが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る最適経路決定装置を実現するためのシステム全体の構成を表したブロック図である。
【図２】本発明に係る最適経路決定装置（サーバ装置）１０の構成の一例を表した説明図である。
【図３】本発明に係る最適経路決定装置１０で管理する状態管理テーブルにおけるジョブの状態の一例を表した説明図である。
【図４】本発明に係る最適経路決定装置１０における処理全体の流れを表したフローチャート図である。
【図５】本発明に係る最適経路決定装置１０における実行順序決定処理の流れを表したフローチャート図である。
【図６】本発明に係る最適経路決定装置１０における最適経路決定処理の流れを表したフローチャート図である。
【図７】ジョブの状態管理と再計算の流れを説明するための説明図である。
【図８】ジョブの状態管理と再計算の流れを説明するための説明図である。
【図９】ジョブの状態管理と再計算の流れを説明するための説明図である。
【図１０】ジョブの状態管理と再計算の流れを説明するための説明図である。
【図１１】ジョブの状態管理と再計算の流れを説明するための説明図である。
【図１２】最適経路決定の様子を説明するための説明図である。
【図１３】最適経路決定の様子を説明するための説明図である。
【図１４】最適経路決定の様子を説明するための説明図である。
【発明を実施するための形態】
【００１５】
［第１の実施の形態］
以下、図面を参照しながら、第１の実施の形態に係る最適経路決定装置の例について説明する。図１は、本発明に係る最適経路決定装置を実現するためのシステム全体の構成を表したブロック図である。なお、最適経路決定装置１０は、専用マシンとして設計した装置であってもよいが、一般的なコンピュータやサーバ装置によって実現可能なものであるものとする。この場合に、最適経路決定装置１０は、一般的なコンピュータやサーバ装置が通常備えているであろうＣＰＵ（Central Processing Unit：中央演算処理装置）、ＧＰＵ（Graphics Processing Unit：画像処理装置）、メモリ、ハードディスクドライブ等のストレージを具備しているものとする（図示省略）。また、これらの一般的なコンピュータやサーバ装置を本例の最適経路決定装置１０として機能させるためにプログラムよって各種処理が実行されることは言うまでもない。
【００１６】
図１に示すように、最適経路決定装置を実現するためのシステム全体の構成は、サーバ装置１０と、サービス実行者端末２０１〜２０ｎ（以下、これら総称してサービス実行者端末２０と表現する場合を含む）と、本部端末３０とが、通信ネットワーク４０を介して相互に接続可能に構成されている。このうち、サーバ装置１０が本例の最適経路決定装置１０として機能する場合を例として説明を行う。
【００１７】
図２は、本発明に係る最適経路決定装置（サーバ装置）１０の構成の一例を表した説明図である。この図２に示すように、最適経路決定装置１０は、ジョブ状態管理部１１と、サービス特定情報取得部１２と、車両位置情報取得部１３と、実行順序決定部１４と、実行地点特有情報取得部１５と、最適経路決定部１６と、記憶部１７とを少なくとも備えている。
【００１８】
ジョブ状態管理部１１は、関連する少なくとも１以上のサービスで構成されたジョブの状態を管理するための状態管理テーブルをジョブの状態の変化に応じて更新する機能を有する。ここで、本例においてジョブとは、関連する少なくとも１以上のサービスで構成された業務のことをいう。また、本例においてサービスとは、車両等の移動体を停車（停止）して作業を行う必要のある業務の切り分け単位のことをいう。一例として、荷物をある地点で集荷して他の地点まで配送する業務をジョブとすると、当該ジョブは、集荷サービス（ピックアップサービス）と配送サービス（デリバリーサービス）とで構成されていることになる。状態管理テーブルは、ジョブの状態を管理するためのテーブルである。
【００１９】
図３は、本発明に係る最適経路決定装置１０で管理する状態管理テーブルにおけるジョブの状態の一例を表した説明図である。この図３に示すように、前述の配送業務をジョブと考える場合を例とすると、ジョブの状態として、（Ａ）車両に載せる前（本計画で載せる予定あり）、（Ｂ）車両に載せる前（本計画で載せる予定なし）、（Ｃ）車両から降ろす前（本計画で降ろす予定あり）、（Ｄ）車両から降ろす前（本計画で降ろす予定なし）、（Ｅ）車両から降ろした後、の５つの現実における対象（荷物）の状態と、（Ｆ）割当先車両あり、（Ｇ）割当先車両なし、の２つの計画における状態とを有し、これらの組み合わせでジョブの状態を管理するものとする。ここで、本計画とは、車両が出発する前に事前に計画された当初計画のことをいう。これに対して、計画は途中で変更される場合があり変更後の計画を現在の計画と表現するものとする。状態管理テーブルは、ジョブの状態を管理可能であればどのような手段で更新されるものであってもよいが、例えば、ジョブの状態に変化が生じる度にサービス実行者自身が所持するサービス実行者端末２０に対して入力したジョブの状態の情報を通信ネットワーク４０を介して最適経路決定装置（サーバ装置）１０に送信するようにすることで、状態管理テーブルを更新するという構成が考えられる。
【００２０】
サービス特定情報取得部１２は、複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得する取得する機能を有する。サービス特定情報とは、実行すべきサービスの内容を特定するために必要な情報のことをいう。また、実行地点とは、サービスを実行する位置のことをいう。ジョブを構成する少なくとも１以上のサービスにはそれぞれ実行地点が存在し、その実行地点の情報は、サービス特定情報の１つであるといえる。また、サービス特定情報としては、依頼主の個人情報、サービスの具体的内容情報など様々な情報が考えられる。
【００２１】
車両位置情報取得部１３は、サービス実行者が利用する車両の現在位置を示す車両位置情報を取得する機能を有する。車両位置情報を取得することができればどのような手段であっても構わないが、例えば、車両のＧＰＳ情報を取得するようにしてもよい。
【００２２】
実行順序決定部１４は、複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する機能を有する。より詳しくは、実行順序決定部１４は、状態管理テーブルを参照してジョブの状態情報を取得し、ジョブの状態情報から実行が必要な前記サービスを特定し、特定したサービスについてサービス特定情報を取得し、取得したサービス特定情報に基づいて実行順序を決定する機能を備える。状態管理テーブルを参照することでジョブの状態を把握することが可能となり、結果、そのジョブを構成するサービスのうち、何れのサービスについて実行の必要があるかを特定することができる。実行が必要なサービスを特定した後は、特定したサービスについてサービス特定情報を取得し、取得したサービス特定情報に基づいて実行順序を決定する。実行順序の決定は、VRPおよびPDPなどの既知の組み合わせ最適化問題に関するアルゴリズムに基づいて決定するものとする。
【００２３】
また、実行順序決定部１４において実行順序を決定する前提として、車両位置情報取得部１３によってサービス実行者が利用する車両の車両位置情報を取得し、車両位置を出発地点として実行順序を決定する機能を備える。すなわち、車両が出発する前に事前に計画を立てる場合の実行順序は、車両を待機させる場所（本社位置、駐車場位置など）を出発地点かつ帰還地点として設定することになるが、車両がサービスを実行する途中において計画の変更の必要が生じた場合などには、車両がどの位置に存在するかによって実行順序が変化することになるので、車両位置情報は重要な情報である。
【００２４】
すなわち、車両位置情報を取得して実行順序を決定できるということは、任意のタイミングで実行順序に関する再計算が可能であるということである。よって、ジョブについてキャンセルが発生したり追加のジョブが発生したりした場合に、本計画とは異なる状態において実行順序を計算する必要が生じる。再計算は、サービス実行者又は本部からの指示に基づいて行うものであってもよいし、ジョブの状態に変化が生じたタイミングもしくは定期的に自動で行うものであってもよい。
【００２５】
また、実行順序決定部１４においては、パラメータを変更するなどした複数の状況においてそれぞれ実行順序決定処理を実行して、複数パターンの実行順序の解を保持するようにしてもよい。ここで、複数パターンの解を生成する一例としては、移動に要する所要時間をパラメータとして短時間に設定したパターン、標準時間に設定したパターン、長時間に設定したパターンというように複数パターン生成することが挙げられる。実際の交通事情によって移動に要する時間が標準時間よりも短かったり長かったりするので、複数のパターンを保持することで、途中で予定を変更することが可能となる。また、実行順序の解を生成した後に計画が進行してジョブの状態に変化が生じたとき、以前に作った解がそのまま使えなくなる。その場合は以下の変換を行うことで利用可能となる。ジョブの状態に着目し、現在の状態がＢ、Ｄ、Ｅのジョブについては、ピックアップサービスとデリバリーサービスを解から取り除く。元の解でＡだったものがＣに変化していた場合、ピックアップサービスを解から取り除く。そして、出発地点を車両の現在位置に置き換える。以上により現在における解への変換が可能となる。ただし、ルートが非効率となりうる。また実行可能とも限らない。このような複数パターンの解の保持と、解の復元とを組み合わせることで、状況の変化に対応することが可能となる。例えば、移動が速いパターンと遅いパターンを持ち、速いパターンで運行していたら遅れが生じてきたという場合に、遅いパターンに切り替えることが考えられる。以前の解は効率的な解となっているので、実行済みのサービスを抜いた解もある程度良い解である（部分的に良いルートとなっているものの組み合わせになっている）ことが期待できる。しかし、現在位置を考えると無駄がある可能性があるので、復元した解を初期解として再計算することで、遅いパターンの解をゼロから計算するよりも速くより良い解が得られることが期待される。
【００２６】
実行地点特有情報取得部１５は、複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報を含む実行地点特有情報を取得する機能を有する。ここで、実行地点特有情報とは、最適経路を決定するために利用可能なサービスの実行地点周辺における特有の情報のことをいう。また、停車位置候補の情報とは、実行地点周辺において車両を停車する候補となる位置の情報をいう。なお、実行地点特有情報は、予め情報の作成者が実行地点と関連付けて記憶させておくものであってもよいし、実行地点との関連する可能性のある情報を自動で関連付けて記憶させる構成であってもよい。
【００２７】
また、実行地点特有情報は、各サービスの実行地点におけるＵターンのコスト値を含む周辺コスト情報を含むものであってもよい。ここで、周辺コスト情報とは、サービスの実行地点のコスト情報を算出するために必要な情報のことをいう。周辺コスト情報の一例として、Ｕターンのコスト値が挙げられる。実行地点周辺の停車位置候補に対する到着向きと出発向きが異なる場合、その停車位置候補地点においてＵターンを行う必要がある。Ｕターンを簡単に行える場所である場合にはコスト値を小さく設定しておき、Ｕターンを行うことが簡単ではない場所である場合にはコスト値を大きく設定しておく。このような周辺コスト情報は、各経路の合計コスト値を算出してコスト値が小さい経路を最適経路として決定するために用いられる。例えば、移動距離が最短であることのみで決定する手法ではＵターンが必要になるが、そのＵターンが非常に難しい場所である場合には、距離的には最短ではあるが所要時間は長くかかってしまうおそれがある。このように、周辺コスト情報を用いることにより、距離以外の情報を利用して最適な経路を決定することが可能となる。また、周辺コスト情報として、経路として利用する道路に対してコスト値を設定するものであってもよい。すなわち、道幅が狭く速度も出せないために移動に時間の掛かる道路についてはコスト値を高く設定するなど、道路の選択に関してもコスト値で調整することが考えられる。
【００２８】
最適経路決定部１６は、実行順序と実行地点特有情報とを用いて、各実行地点における最適停車位置及び／又は最適停車方向の情報を含む最適経路を決定する機能を有する。また、最適経路決定部１６は、各経路での移動に要する合計コスト値を算出するために周辺コスト情報を用いるものとし、複数の経路それぞれの合計コスト値を最適経路の決定に利用する機能を有する。具体的には、例えば、各実行地点における停車位置候補の数と、それぞれの停車位置候補に対する到着向きの情報と、それぞれの停車位置候補からの出発向きの情報とから、各実行地点における選択肢が決定される。そして、決定された選択肢の場合に適した経路がそれぞれ選択される。全ての経路について移動距離の算出と、コスト値の算出を行う。移動距離が短くかつコスト値が小さい経路を最適経路として決定する。移動距離の評価とコスト値の評価をどのように採用して最適経路の決定を行うかは適宜設定可能である。決定された最適経路は、通信ネットワーク４０を介してサービス実行者端末２０及び／又は本部端末３０に対して送信される。
【００２９】
記憶部１７は、最適経路決定装置１０において行われる様々な処理で必要なデータ及び処理の結果として得られたデータを記憶させる機能を有する。
【００３０】
次に、本発明に係る最適経路決定装置１０における処理全体の流れについて説明を行う。図４は、本発明に係る最適経路決定装置１０における処理全体の流れを表したフローチャート図である。この図４に示すように、最適経路決定装置１０における処理は、扱うジョブの情報を取得する処理（ステップＳ１０１）と、ジョブを分割したサービス単位での実行順序決定処理（ステップＳ１０２）と、サービスの実行地点ごとの最適停車位置の情報を含む最適経路決定処理（ステップＳ１０３）とを実行する構成となっている。以下において、実行順序決定処理と最適経路決定処理について詳細に説明を行う。
【００３１】
図５は、本発明に係る最適経路決定装置１０における実行順序決定処理の流れを表したフローチャート図である。この図５に示すように、実行順序決定処理は、最適経路決定装置１０において扱うジョブの情報を取得することによって開始される（ステップＳ２０１）。最適経路決定装置１０は、各ジョブについて構成要素のサービスに分割（ジョブを構成するサービスを抽出）する（ステップＳ２０２）。最適経路決定装置１０は、全ジョブの全サービスについてジョブの状態情報と照合して実行の必要のあるサービスを決定する（ステップＳ２０３）。次に、最適経路決定装置１０は、車両の現在位置情報を取得する（ステップＳ２０４）。最適経路決定装置１０は、取得した車両の現在位置を出発地点として、実行する必要のあるサービスについて組み合わせ最適化問題（VRPおよびPDP）を演算する（ステップＳ２０５）。そして、最適経路決定装置１０は、組み合わせ最適化問題（VRPおよびPDP）を解くことで得られた実行順序を出力して（ステップＳ２０６）、処理を終了する。
【００３２】
図６は、本発明に係る最適経路決定装置１０における最適経路決定処理の流れを表したフローチャート図である。この図６に示すように、最適経路決定処理は、最適経路決定装置１０においてサービスの実行順序の情報を取得することによって開始される（ステップＳ３０１）。次に、最適経路決定装置１０は、各サービスの実行地点における少なくとも１以上の停車位置候補の情報、周辺コスト情報を含む実行地点特有情報を取得する（ステップＳ３０２）。そして、最適経路決定装置１０は、実行地点特有情報を用いて、最適停車位置、最適停車方向を含む最適経路を決定して出力して（ステップＳ３０３）、処理を終了する。
【００３３】
次に、ジョブの状態管理と再計算の流れについて、図面に基づいてより詳しく説明を行う。図７乃至図１１は、ジョブの状態管理と再計算の流れを説明するための説明図である。図７（ａ）は、４つのジョブのそれぞれを構成するサービスの実行地点を地図上に表しており、この状況において実行順序を決定した様子を表している。ジョブ１はピックアップサービスＰ１とデリバリーサービスＤ１で構成され、同様に、ジョブ２はＰ２とＤ２、ジョブ３はＰ３とＤ３、ジョブ４はＰ４とＤ４でそれぞれ構成されている。各ジョブのピックアップとデリバリーは連続で実行する必要がないという前提であるものとする。また、各ジョブは、車両拠点に車両が待機した状態であるので、全てのジョブが（Ａ）車両に載せる前（本計画で載せる予定あり）であり、かつ、（Ｆ）割当先車両ありの状態であるものとする。車両は車両拠点（depot）から出発して全てのサービスを実行してから再度車両拠点（depot）に戻ってくる場合の実行順序を決定する。組み合わせ最適化問題として演算して決定した結果、depot、Ｐ１、Ｐ２、Ｄ１、Ｄ２、Ｐ３、Ｄ３、Ｐ４、Ｄ４、depotの順番で実行するように実行順序が決定されたものとする。図７（ａ）のように決定された実行順序を本計画として車両がサービスの実行を開始する。
【００３４】
図７（ｂ）は、ジョブ１のピックアップサービスＰ１が完了した状態を表している。ジョブ１についてのＰ１が完了したことをサービス実行者端末２０によって入力すると、状態管理テーブルが更新されて、図７（ｂ）に示すように、ジョブ１に関する状態が、（Ｃ）車両から降ろす前（本計画で降ろす予定あり）に更新される。
【００３５】
図８（ａ）は、Ｐ１完了後に次のＰ２の実行のために車両（vehicle）が移動している途中において、ジョブ４がキャンセルになった状態を表している。図８（ａ）に示すように、状態管理テーブルが更新されて、ジョブ４の状態が、（Ｂ）車両に載せる前（本計画で載せる予定なし）、に更新される。図８（ｂ）は、その後、ジョブ２のピックアップサービスＰ２が完了した状態を表している。ジョブ２についてのＰ２が完了したことをサービス実行者端末２０によって入力すると、状態管理テーブルが更新されて、図８（ｂ）に示すように、ジョブ２に関する状態が、（Ｃ）車両から降ろす前（本計画で降ろす予定あり）に更新される。
【００３６】
図９（ａ）は、Ｐ２完了後に次のＤ１の実行のために車両（vehicle）が移動している途中において、ジョブ１がキャンセルになった状態を表している。図９（ａ）に示すように、状態管理テーブルが更新されて、ジョブ１の状態が、（Ｄ）車両から降ろす前（本計画で降ろす予定なし）に更新される。図９（ｂ）は、Ｐ２完了後に次のＤ１の実行のために車両（vehicle）が移動している途中において、ジョブ１がキャンセルになった状態を表している。この図９（ｂ）の状況において、実行順序決定についての再計算を行うものとする。
【００３７】
図１０（ａ）は、実行順序決定についての再計算結果を表している。
車両の現在地を出発地点として出発して実行が必要な残りのサービスを実行してから車両拠点（depot）に戻る場合の実行順序を決定する。このとき、状態がＢ、Ｄであるジョブ１及びジョブ４については実行不要なサービスであるとして除外する。組み合わせ最適化問題として演算して決定した結果、現在地、Ｐ３、Ｄ３、Ｄ２、depotの順番で実行するように実行順序が決定されたものとする。
【００３８】
図１０（ｂ）は、図１０（ａ）で得られた再計算結果に基づいて、出発前に保持していた当初の計画を復元する前段階を表している。図１０（ｂ）に示す当初の計画を、図１０（ｂ）に示す現在のジョブの状態及び車両の現在位置に基づいて復元するものとする。
【００３９】
図１１は、図１０（ａ）で得られた再計算結果に基づいて、出発前に保持していた当初の計画を復元した結果を表している。状態管理テーブルを参照すると、当初の計画の出発地が車両拠点（depot）から車両の現在地に変更され、到着地が車両拠点（depot）のまま維持され、ジョブ１は状態ＤであるためＰ１及びＤ１を除外し、ジョブ２は状態ＡからＣに変化したためＰ２を除外し、ジョブ３は状態Ａであるためそのまま維持し、ジョブ４は状態ＢであるためＰ４及びＤ４を除外する。結果、当初の計画を復元すると、現在地、Ｄ２、Ｐ３、Ｄ３、depotの順番で実行するように計画が復元される。このように、元の計画についても復元して保持しておくことで、再計算で得られた現在の計画が何らかの問題で利用できなくなった場合に、代替の計画として即座に利用できる可能性があり有用である。
【００４０】
図１２乃至図１４は、最適経路決定の様子を説明するための説明図である。図１２（ａ）に示すように、車両拠点から配送先Ａ、Ｂ、Ｃの順にサービスを実行するという実行順序が決定されているものとする。
【００４１】
図１２（ｂ）は、図１２（ａ）の状況において従来の最短経路探索処理を行った場合を説明している。すなわち、各サービス実行地点における停車位置候補を１つだけ採用して、かつ最短経路を採用する構成である場合、図１２（ｂ）に示すように、配送先Ｂのように到着向きと出発向きが異なる場合は道路上でＵターンを行う必要が生じる。これは安全上の理由や所要時間、さらにドライバーの精神的負担という面においても大きなコストとなる。実際の業務においては訪問先でＵターンが起きないようにルート作成が行われているが、既存のＶＲＰ及びＰＤＰに対する解法ではＵターンを抑えた解を出力するということはできなかった。
【００４２】
図１３は、従来のＶＲＰ及びＰＤＰの課題を解決するためにアプローチ手法を説明している。例えば、Ｕターン以外のルートを探索することができれば、図１３（ａ）に示すように、迂回ルートでＢからＣに移動することができるようになる。或いは、図１３（ｂ）に示すように、停車位置候補として複数地点を考慮して最適経路を探索することができれば、配送先Ｂにおける停車位置を他の候補とすることでＵターンをせずに移動することが可能となる。
【００４３】
図１４は、上記アプローチを採用するために、各サービス実行地点に複数の停車位置候補を採用した状態を表している。また、Ｕターンを完全に禁止にするのではなく、Ｕターンに対してコスト値を高く設定することで、結果として他の経路が採用され易くする。すなわち、到着向きと出発向きが異なる移動はコスト値が高く算出されるように、周辺コスト情報を設定しておく。
【００４４】
なお、実行順序決定処理における処理内容は以下の通りである。ジョブと車両の状態からそれらをVRPおよびPDPの入力へと変換する。先ず、各車両の現在位置または現在の計画におけるｎ点先の訪問先をその車両の出発デポとする（ｎはパラメータ）。現在向かっている訪問先や直近の計画を崩したくないというニーズがあるためｎというパラメータを考慮する。ｎ点先まで完了したと仮定したときのｎ点先での作業完了時刻をデポの出発時刻とする。到着デポは計画における到着デポと同一とする。次にジョブの状態を考える。先ず、ｎ点先までを固定する場合はｎ点先まで完了したと仮定して「現実における状態」と「現在の計画における状態」をそれぞれ更新する。次に「現実における状態」がＢまたはＤの荷物は計画に入れる必要が無いため除外する．Ｃの荷物は現在積まれている車両が配る必要があるため、配るというサービスの車両への割り当てを固定し、その車両が最初からその荷物を積んでいると設定する。以上の設定をした上でVRPおよびPDPを解くことで、現実の状態を加味した再計算を行うことができる。
【００４５】
また、最適経路決定処理における処理内容は以下の通りである。先ず、各訪問先に対して停車位置の候補を入力する。そして、各訪問先間の任意の２つの停車位置間に対して、出発向き・到着向きの組み合わせごとに最短経路を取得する。ある解のある車両に着目し、その車両のルート（訪問先の順序）が固定したものと考える。すべての訪問先に対して停車位置候補と発着向きを決めることでルート全体のコストを算出可能でありコスト最小となる組合せを決める組合せ最適化問題とみなすことができる。この問題に対し既知の貪欲法や局所探索法といった手法を用いることでコストの低いルートを得ることができる。例えば貪欲法を使う場合、まずルートの先頭から訪問先を見て行き、ある訪問先iとその１つ前の訪問先jを考える。jからiへの経路のコストとjにおけるUターンコストの和が最も小さくなるようなjの出発向きおよびiの停車位置およびiの到着向きを選択する。これをルートの最後まで繰り返すことである程度コストの低い経路が得られることが期待される。局所探索法を使う場合、まずすべての訪問先に対してランダムに停車位置と発着向きを決定する。次にランダムに訪問先を選び、その点における停車位置と発着向きを最もコストが小さくなるように選ぶ。これを一定回数および一定時間繰り返すことである程度コストの低い経路が得られることが期待される。
【００４６】
以上のように、本例による最適経路決定装置によれば、複数のサービスそれぞれについて実行地点の情報を含むサービス特定情報を取得するサービス特定情報取得部と、複数のサービスについての実行順序を組み合わせ最適化問題として演算して実行順序を決定する実行順序決定部と、複数のサービスそれぞれについて各サービスの実行地点における少なくとも１以上の停車位置候補の情報を含む実行地点特有情報を取得する実行地点特有情報取得部と、実行順序と実行地点特有情報とを用いて、各実行地点における最適停車位置及び／又は最適停車方向の情報を含む最適経路を決定する最適経路決定部とを備えるようにしたので、最適経路決定に際して複数の停車位置候補を考慮することで停車位置及び停車向きも考慮した最適経路を決定することが可能となる。
【００４７】
また、関連する少なくとも１以上の前記サービスで構成されたジョブの状態を管理するための状態管理テーブルをジョブの状態の変化に応じて更新するジョブ状態管理部をさらに備え、実行順序決定部は、状態管理テーブルを参照してジョブの状態情報を取得し、ジョブの状態情報から実行が必要なサービスを特定し、特定したサービスについてサービス特定情報を取得し、取得したサービス特定情報に基づいて実行順序を決定するようにしたので、実行順序決定に際してジョブの状態情報を状態管理テーブルによって確認して実行が必要なサービスを抽出した上で実行順序を決定することが可能となる。すなわち、車両が既に移動を開始した計画実行中であってもその時点でのジョブの状態情報を取得して実行順序について再計算を行うことが可能となる。
【００４８】
なお、本発明は、上記の実施の形態に限定されるものではない。宅配サービスだけではなく、店舗への卸業、自動販売機のメンテナンス、訪問医療／訪問介護、乗合いタクシーなど、複数の拠点を１台または複数台の車両で回るという形態の業種であれば同様に適用可能である。また、人間が運転する車両でなくとも、自動運転ロボットにも応用可能である。例えば、自動宅配ロボットが道端でＵターンする時間を加味してルートの最適化をする、工場内でのＡＧＶ（Automated guided vehicle：無人搬送車）のルート最適化、家庭での自動掃除ロボットなど、幅広く応用が可能である。さらに、ユーザーが訪問先を入力するだけでその周辺から停車可能な位置を過去の実績や道路の特性から自動で判断して、本アルゴリズムで最適な停車位置を決めるようにすることも可能である。さらに、ユーザーが訪問先を入力するだけで、その訪問先の敷地へ入る場所と出る場所が複数ある中でどこから入ってどこへ出るかを本アルゴリズムで最適化することも可能である。
【００４９】
なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【００５０】
１０            最適経路決定装置
１１            ジョブ状態管理部
１２            サービス特定情報取得部
１３            車両位置情報取得部
１４            実行順序決定部
１５            実行地点特有情報取得部
１６            最適経路決定部
１７            記憶部
２０            サービス実行者端末
３０            本部端末
４０            通信ネットワーク
【図１】
0006927644.tif 000002
【図２】
0006927644.tif 000003
【図３】
0006927644.tif 000004
【図４】
0006927644.tif 000005
【図５】
0006927644.tif 000006
【図６】
0006927644.tif 000007
【図７】
0006927644.tif 000008
【図８】
0006927644.tif 000009
【図９】
0006927644.tif 000010
【図１０】
0006927644.tif 000011
【図１１】
0006927644.tif 000012
【図１２】
0006927644.tif 000013
【図１３】
0006927644.tif 000014
【図１４】
0006927644.tif 000015