(57)【要約】      （修正有）【課題】複数の配送車両を利用して複数の拠点の間で荷物を引き取り、納入する配送順序を出力するための配送計画生成方法を提供する。【解決手段】配送計画候補中の空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、配送計画候補を評価して評価結果を得る。また、上記配送計画候補の評価結果に基づいて、一つまたは複数の配送計画候補を最終的な配送計画として出力する。【選択図】図１
2020091887.tif 000002
【特許請求の範囲】
【請求項１】
配送計画生成方法であって、
コンピュータが、複数の配送タスクに関する情報を含む配送タスクデータが表す配送タスクのうち、空容器の引取りが必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器引取りタスクに関する情報を生成するステップと、
コンピュータが、所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器引取りタスクとを、複数の配送車両に関する情報を含む車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成するステップと、
コンピュータが、前記配送計画候補において、前記空き容器引取りタスクがそれに関連付いた前記配送タスクの前に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価するステップと、
コンピュータが、前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力するステップと、を含むことを特徴とする配送計画生成方法。
【請求項２】
配送計画生成方法であって、
コンピュータが、複数の配送タスクに関する情報を含む配送タスクデータが表す配送タスクのうち、空容器返却が必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器返却タスクに関する情報を生成するステップと、
コンピュータが、所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器返却タスクとを、複数の配送車両に関する情報を含む車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成するステップと、
コンピュータが、前記配送計画候補において、前記空き容器返却タスクがそれに関連付いた前記配送タスクの後に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価するステップと、
コンピュータが、前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力するステップと、を含むことを特徴とする配送計画生成方法。
【請求項３】
請求項１又は２に記載の方法において、
前記配送計画候補を評価するステップには、
前記配送タスクとそれに関連付けられた空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである空き容器タスク群とが同一の配送車両に割り当てられているか否か、および、当該空き容器タスク群がそれに関連付いた前記配送タスクの前及び／又は後に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、空き容器タスク群にそれぞれ大きさの異なるタスクコストを設けることと、
前記配送計画候補のタスクコストを合計して得た前記配送計画候補の総コストを前記配送計画候補の評価結果とすることとを含むことを特徴とする配送計画生成方法。
【請求項４】
請求項１乃至３のいずれか１項に記載の方法において、
前記配送計画候補中に存在する、空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである空き容器タスク群が関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群の数を決定するステップと、
前記数が予め設定された閾値を超える場合、そのような空き容器タスク群の配送順序、または、そのような空き容器タスク群が関連付けられている配送タスクの配送順序の調整を行い、または、配送計画候補を除外するステップとを含むことを特徴とする配送計画生成方法。
【請求項５】
請求項１乃至４のいずれか１項に記載の方法において、
配送車両に対し混載可否の判断に用いられる配送容量を予め設定し、及び、配送タスクに対し混載可否の判断に用いられ、上限値を有する混載容量を予め設定するステップと、
混載不可の配送タスクの混載容量を前記混載容量の上限値に設定するステップとを含むことを特徴とする配送計画生成方法。
【請求項６】
請求項５に記載の方法において、
一つの配送計画候補を生成した後に、混載容量を超える配送車両が前記配送計画候補中に存在するか否かを判断するステップと、
混載容量を超える配送車両が前記配送計画候補中に存在する場合、そのような配送タスクの配送順序、または、そのような配送タスクに関連付けられている空き容器タスク群の配送順序の調整を行い、または、前記配送計画候補を除外するステップとを含み、空き容器タスク群は、空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである、ことを特徴とする配送計画生成方法。
【請求項７】
請求項６に記載の方法において、
一つの配送計画候補を生成した後に、混載容量を超える配送車両が前記配送計画候補中に存在するか否かを判断するステップには、
前記配送計画候補の配送車両に対して、当該配送車両が経由する隣接拠点間の経路を決定し、当該配送車両の当該経路におけるすべての配送タスクの混載容量を累計し、前記混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定すること、
または、
前記配送計画候補の隣接拠点間の経路に対して、当該経路を経由する一つ又は複数の配送車両を決定し、各配送車両の当該経路における全ての配送タスクの混載容量をそれぞれ累計し、前記混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定することを含むことを特徴とする配送計画生成方法。
【請求項８】
請求項１乃至７のいずれか１項に記載の方法において、
前記配送計画候補を生成する前に、さらに、
すべての配送タスクに対し、当該配送タスクを一義的に標識する一つのタスク標識ＩＤを分配し、関連する配送タスクに関連関係を設けるステップとを含むことを特徴とする配送計画生成方法。
【請求項９】
請求項１乃至７のいずれか１項に記載の方法において、
所定の配送計画生成アルゴリズムに基づいて、予め設定された捜索回数上限値まで配送計画候補の生成を繰り返す過程において、生成回数が予め設定された回数となる際に得られた配送計画候補中に、空き容器返却タスクが関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群の数が所定値を超える場合に、さらに、
初期値が割り当て待ちの配送タスクである元タスクグループ中の配送タスクを、空き容器タスク群が関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群及び空き容器タスク群が関連付けられている配送タスクとからなる第１のタスクグループと、それ以外のタスクからなる第２のタスクグループとの２つのグループを分けるステップと、
所定の配送計画生成アルゴリズムに基づいて、第１のタスクグループと第２のタスクグループに対し、それぞれ配送サブ計画候補の生成を行って第１の配送サブ計画候補と第２の配送サブ計画候補を取得するステップと、
第１の配送サブ計画候補中に、空き容器タスク群が関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群が存在すると、第１のタスクグループを前記元タスクグループとし、前記の元タスクグループ中の配送タスクを２つのグループに分けるステップに戻るステップと、
第１の配送サブ計画候補中に、空き容器タスク群が関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群が存在しないと、当該第１の配送サブ計画候補と全ての第２の配送サブ計画候補をまとめ、前記割り当て待ちの配送タスクの配送計画候補を取得するステップとを含み、空き容器タスク群は、空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである、ことを特徴とする配送計画生成方法。
【請求項１０】
請求項１乃至９のいずれか１項に記載の方法において、
前記配送計画候補を評価することは、さらに前記総コストと配送計画候補中の配送タスクの配送距離コストの合計を計算して前記配送計画候補の評価結果とすることを特徴とする配送計画生成方法。
【請求項１１】
配送計画生成装置であって、
複数の配送車両に関する情報を含む車両管理データと、複数の配送タスクに関する情報を含む配送タスクデータと、を格納する記憶装置と、
前記配送タスクデータが表す配送タスクのうち、空容器引取りが必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器引取りタスクに関する情報を生成し、
所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器引取りタスクとを前記車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成し、
前記配送計画候補において、前記空き容器引取りタスクがそれに関連付いた前記配送タスクの前に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価し、
前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力する、プロセッサと、を含むことを特徴とする、配送計画生成装置。
【請求項１２】
配送計画生成装置であって、
複数の配送車両に関する情報を含む車両管理データと、複数の配送タスクに関する情報を含む配送タスクデータと、を格納する記憶装置と、
前記配送タスクデータが表す配送タスクのうち、空容器返却が必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器返却タスクに関する情報を生成し、
所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器返却タスクとを前記車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成し、
前記配送計画候補において、前記空き容器返却タスクがそれに関連付いた前記配送タスクの後に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価し、
前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力する、プロセッサと、を含むことを特徴とする、配送計画生成装置。
【請求項１３】
請求項１１又は１２に記載の装置において、
前記配送計画候補を評価することには、
前記配送タスクとそれに関連付けられた空き容器タスク群とが同一の配送車両に割り当てられているか否か、および、当該空き容器タスク群がそれに関連付いた前記配送タスクの前及び／又は後に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、空き容器タスク群にそれぞれ大きさの異なるタスクコストを設けることと、
前記配送計画候補のタスクコストを合計して得た前記配送計画候補の総コストを前記配送計画候補の評価結果とすることとが含まれており、空き容器タスク群は、空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである、ことを特徴とする配送計画生成装置。
【請求項１４】
請求項１１乃至１３のうちのいずれか１項に記載の装置において、
前記プロセッサは、
前記配送計画候補中に存在する、空き容器タスク群が関連付けられている配送タスクが割り当てられている配送車両と異なる配送車両に割り当てられた空き容器タスク群の数を決定し、
前記数が予め設定された閾値を超える場合、そのような空き容器タスク群の配送順序、または、そのような空き容器タスク群が関連付けられている配送タスクの配送順序の調整を行い、または、配送計画候補を除外し、
空き容器タスク群は、空き容器引取りタスク及び空き容器返却タスクの少なくとも一つである、ことを特徴とする配送計画生成装置。
【請求項１５】
複数の配送タスクに関する情報を含む配送タスクデータが表す配送タスクのうち、空容器引取りが必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器引取りタスクに関する情報を生成するステップと、
所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器引取りタスクとを、複数の配送車両に関する情報を含む車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成するステップと、
前記配送計画候補において、前記空き容器引取りタスクがそれに関連付いた前記配送タスクの前に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価するステップと、
前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力するステップと、をコンピュータに実行させるコンピュータプログラム。
【請求項１６】
複数の配送タスクに関する情報を含む配送タスクデータが表す配送タスクのうち、空容器返却が必要である情報が関連付けられている配送タスクが一つ以上ある場合、当該一つ以上の配送タスクの各々について、当該配送タスクに関連付けた空き容器返却タスクに関する情報を生成するステップと、
所定の配送計画生成アルゴリズムにより、前記複数の配送タスクと前記生成された空き容器返却タスクとを、複数の配送車両に関する情報を含む車両管理データが表す前記複数の配送車両に割り当てる配送計画候補を作成するステップと、
前記配送計画候補において、前記空き容器返却タスクがそれに関連付いた前記配送タスクの後に実行され、それらのタスクが所定時間内に実行されるか否かに基づいて、その配送計画候補を評価するステップと、
前記配送計画候補の評価に基づいて、一つまたは複数の配送計画候補を配送計画として出力するステップと、をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両経路問題（ＶＲＰ：Ｖｅｈｉｃｌｅ  Ｒｏｕｔｉｎｇ  Ｐｒｏｂｌｅｍ）の技術分野に関し、具体的に配送車両の配送計画生成方法、装置およびシステムに関するものである。
【背景技術】
【０００２】
車両経路問題（ＶＲＰ）とは、それぞれ異なる数の荷物配送ニーズを持つ一定の数の顧客のニーズが応えられ、一定の制限の元で最短距離、最小コスト、最小限の時間といった目的が達成できるように、荷物配送担当を決定し、適切な走行経路を設計した上で、配送センタからに顧客に荷物を提供することである。
【０００３】
現在、車両経路問題に関するアルゴリズムは、分枝限定法、分枝カット法、集合被覆法などの厳密アルゴリズム（ｅｘａｃｔ  ａｌｇｏｒｉｔｈｍ）と、セービング法、擬似アニーリング法、確定的アニーリング法、タブー検索法、遺伝子アルゴリズム、ニューラルネットワーク、アントコロニー法、遺伝的アルゴリズム（ＧＡ：Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ）などのヒューリスティック（ｈｅｕｒｉｓｔｉｃｓ）アルゴリズムを含む。車両配送計画の自動生成において、通常、近傍検索法の一つである巨大近傍検索（ＬＮＳ：Ｌａｒｇｅ  Ｎｅｉｇｈｂｏｒｈｏｏｄ  Ｓｅａｒｃｈ）アルゴリズムが比較的に有効であり、ＬＮＳを用いて、車両に対する最適な配送タスク割り当て方式を検索する。検索は、通常、最適解に近づく方式で、最適解との差（コストの和）を数値化し、徐々にコスト削減方向に向かって繰り返して行われる。
【０００４】
ＶＲＰの一部の応用シーンでは、配送荷物を配送容器に入れて配送する必要がある。このようなシーンでは、通常、荷物配送完了後に空容器を返却する必要がある。例えば、自動車部品配送を含む製造業界の物流スケジューリングでは、配送容器がメーカーによっては異なり、しかも配送容器に数の制限があるため、配送後に空容器をメーカーに直ちに返却することが多い。このような特別なニーズがあるため、上記の応用シーンに対して、近傍検索法のみでは最適な配送タスク同士の順序の実現が技術的に難しい。したがって、従来のアルゴリズムは、空容器返却を含む配送計画の作成において、まだ実用的な程度まで達していない。現在、物流業界で、上記応用シーンでの配送計画を人的に作成することがまだ多い。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施例が解決しようとする技術課題は、配送後に空容器をメーカーに返却するという配送要件を含む配送計画を自動的に生成して配送計画の生成効率を向上させ、人的コストを低減させるための配送車両の配送計画生成方法、装置およびシステムを提供することである。
【課題を解決するための手段】
【０００６】
上記の技術問題を解決するために、本発明の実施例は、複数の配送車両を利用して複数の拠点の間で荷物を引き取り、納入する配送順序を出力するための配送計画生成方法を提供する。当該配送計画生成方法において、配送計画候補中の空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、配送計画候補を評価して評価結果を得る。また、上記配送計画候補の評価結果に基づいて、一つまたは複数の配送計画候補を最終的な配送計画として出力する。そのうち、上記所定時間内に実行されることには、当該空容器返却タスクと、関連する荷物配送タスクが同時に実行されること、または、当該空容器返却タスクが関連する荷物配送タスクの後に実行され且つ両者の間にその他の配送タスクが存在しないことを含む。
【０００７】
本発明の実施例は、複数の配送車両を利用して複数の拠点の間で荷物を引き取り、納入する配送順序を出力するための配送計画生成装置をさらに提供する。当該配送計画生成装置は、配送計画候補中の空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、同一の配送車両に割り当てられている場合、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、配送計画候補を評価して評価結果を得るための配送計画評価手段と、上記配送計画候補の評価結果に基づいて、一つまたは複数の配送計画候補を最終的な配送計画として出力するための配送計画出力手段とを含み、そのうち、上記所定時間内に実行されることには、当該空容器返却タスクと、関連する荷物配送タスクが同時に実行されること、または、当該空容器返却タスクが関連する荷物配送タスクの後に実行され且つ両者の間にその他の配送タスクが存在しないことを含む。
【０００８】
本発明の実施例は、配送計画生成システムをさらに提供する。当該システムは、記憶装置と、プロセッサと、記憶装置に記憶され、プロセッサにより実行されるコンピュータプログラムとを含み、上記コンピュータプログラムが上記プロセッサにより実行されると、上記の配送計画生成方法が実現される。
【０００９】
本発明の実施例は、コンピュータ読取可能な記憶媒体をさらに提供する。この記憶媒体に記憶されているコンピュータプログラムがプロセッサにより実行されると、上記の配送計画生成方法が実現される。
【発明の効果】
【００１０】
従来技術に比較すると、本発明の実施例による配送計画生成方法、装置およびシステムにおいて、配送計画候補の総コストに空容器返却タスクのタスクコストを導入し、予め第１の配送方式でのタスクコストが最適であると設定することによって、アルゴリズムが所望の空容器返却の配送順序を自動的に出力し、実際の物流シーンでの空容器返却ニーズを満足し、配送計画の人的作成を回避して配送計画の作成コストを低減させ、配送計画の生成効率を向上させることができる。
【図面の簡単な説明】
【００１１】
本発明の実施例の技術手段をより明確に説明するために、以下、本発明の実施例の記載に必要とされる図面を簡単に紹介する。明らかに、以下の記載に関する図面は、単に本発明の一部の実施例である。当業者にとって、創造性のある作業をしない前提で、これらの図面から他の図面を得ることもできる。
【００１２】
【図１】図１は、本発明の実施例による配送計画生成方法のフローチャートである。
【図２】図２は、本発明の実施例による配送計画生成装置の概略構造図である。
【図３】図３は、本発明の実施例による配送計画生成システムの全体構造を示すブロック図である。
【図４】図４は、本発明の実施例による配送計画生成方法の例示的なフローチャートである。
【図５】図５は、本発明の実施例における拠点管理データの一例を示す図である。
【図６】図６は、本発明の実施例における車両管理データの一例を示す図である。
【図７】図７は、本発明の実施例における配送タスクデータの一例を示す図である。
【図８】図８は、本発明の実施例で生成された入力データの一例を示す図である。
【図９】図９は、本発明の実施例における空容器返却タスク追加の例示的なフローチャートである。
【図１０】図１０は、本発明の実施例における空容器引取りタスク追加の例示的フローチャートである。
【図１１】図１１は、本発明の実施例における拠点間距離行列データの例を示す図である。
【図１２】図１２は、本発明の実施例における空容器混載可否判定処理の例示的なフローチャートである。
【図１３】図１３は、本発明の実施例における総コスト計算処理の例示的なフローチャートである。
【図１４】図１４は、本発明の実施例における同一車輌強制的制約違反処理の例示的なフローチャートである。
【図１５】図１５は、本発明の実施例における出力データの一例を示す図である。
【図１６】図１６Ａ〜図１６Ｂは、本発明の実施例で生成された出力画面の一例を示す図である。
【図１７】図１７は、本発明の実施例による配送計画生成システムのブロック図の別の概略構造図である。
【図１８】図１８は、図１７に示す別のシステムブロック図における処理およびデータの接続関係の概略図である。
【発明を実施するための形態】
【００１３】
本発明の解決しようとする技術課題、技術手段及び利点をより明確にするために、以下、図面および具体的な実施例と併せて詳細に記載する。以下の記載において、具体的な設定および構成要素の特定な詳細を提供することは、単に本発明の実施例を全面的に理解してもらうための補助に過ぎない。したがって、当業者であれば明らかなように、本発明の範囲と趣旨を逸脱することなく、ここで記載されている実施例に対し様々な変更や修正を行うことができる。また、明確化と簡潔を図り、周知されている機能と構造に関する記載を省略する。
【００１４】
明細書の全編にわたり言及される「１つの実施例」や「一実施例」とは、実施例に関する特定な特徴、構造または特性が本発明の少なくとも１つの実施例に含まれていることを意味すると理解すべきである。したがって、明細書の各部分に現れる「１つの実施例において」や「一実施例において」とは、必ずしも同一の実施例を指すとは限らない。また、これらの特定な特徴、構造または特性は、適宜に１つまたは複数の実施例に任意に組み合わせられることができる。
【００１５】
本発明の各実施例において、後述の各過程の番号の大きさは、実行順の前後を意味するというわけではない。各過程の実行順は、その機能と内在的な論理によって決められ、本発明の実施例の実施過程に対しいっさい限定を構成すべきではないことが理解すべきである。
【００１６】
図１を参照されたい。本発明の実施例は、配送計画生成方法を提供している。当該方法は、複数の配送車両による複数拠点の巡回で荷物を引き取り、納入する配送タスクの最適な順序を出力することができる。図１に示すように、当該方法は、下記のステップを含む。
【００１７】
ステップ１１において、配送計画候補中の空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、配送計画候補を評価して評価結果を得る。
【００１８】
本発明の実施例における配送タスクは、荷物を１つの拠点（例えば配送出発拠点）から別の拠点（配送目的地拠点）に交付する荷物配送タスクを含み、荷物配送タスクに対し、空容器を配送目的地拠点から配送出発地に返却する空容器返却タスクを含む可能性もある。したがって、各空容器返却タスクに対し、１つの関連する荷物配送タスクが存在するが、荷物配送タスクに対し、それに関連する空容器返却タスクが存在する可能性もあれば、それに関連する空容器返却タスクが存在しない可能性もある。ここで、上記所定時間内に実行されることには、当該空容器返却タスクと、関連する荷物配送タスクが同時に実行されること、または、当該空容器返却タスクが関連する荷物配送タスクの後に実行され且つ両者の間にその他の配送タスクが存在しないことを含む。
【００１９】
本発明の実施例において、上記配送計画候補を評価する際に、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、空容器返却タスクにそれぞれ大きさの異なるタスクコストを設け、それから、配送計画候補中のタスクコストを合計して得た配送計画候補の総コストを配送計画候補の評価結果とする。
【００２０】
ステップ１２において、上記配送計画候補の評価結果に基づいて、一つまたは複数の配送計画候補を最終的な配送計画として出力する。
【００２１】
ここで、配送計画候補の総コストの低い順に、総コストが最も小さい配送計画候補から、一つまたは複数の配送計画候補を選択して最終的な配送計画として出力する。
【００２２】
上記ステップによって、本発明の実施例は、配送計画候補の総コストに空容器返却タスクの異なる配送形式でのタスクコストを考慮しているため、アルゴリズムが所望の空容器返却の配送順序を自動的に出力し、実際の物流シーンでの空容器返却ニーズを満足し、配送計画の人的作成を回避して配送計画の作成コストを低減させ、配送計画の生成効率を向上させることができる。
【００２３】
本発明の実施例において、上記配送計画候補は、配送タスクの実行順および割り当てられた配送車両を含む。具体的に、割り当て待ちの配送タスク（荷物配送タスクと空容器返却タスクを含む）に対し、遺伝的アルゴリズム（ＧＡ：Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ）または巨大近傍検索（ＬＮＳ：Ｌａｒｇｅ  Ｎｅｉｇｈｂｏｒｈｏｏｄ  Ｓｅａｒｃｈ）などの検索アルゴリズムを用いて、複数回の検索によって最適解に近づき、検索による複数の配送計画を取得し、これらの配送計画を配送計画候補とする。
【００２４】
上記検索は、所定の検索回数上限値になるまで実行してから終了してもよく、所定の検索回数上限値になる前に前倒しで終了してもよい。例えば、取得した配送計画候補が所定の条件を満たし、具体的に配送計画候補に必要とされる配送車両が所定の第１閾値以下である場合、検索を中断させ、取得した配送計画候補を出力する。また、例えば、配送計画候補中に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数ｙ１と、関連する荷物配送タスクと同一の配送車両に割り当てられているものの、関連する荷物配送タスクとは上記所定時間内に実行されない空容器返却タスクの数ｙ２の和が所定の第２閾値以下である場合、検索を前倒しで終了してもよい。
【００２５】
検索アルゴリズムによる検索中に、現在の配送計画候補中に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数が所定の第２閾値以上である場合、現在の配送計画候補中の配送タスクに対して調整を行い、または、現在の配送計画候補を除外する。上記調整とは、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの配送順序を調整することを含む。例えば、上記空容器返却タスクを、現在の配送計画候補中のほかの位置に挿入したり、他の配送タスクと配送順序を交換したりする。
【００２６】
上記総コストは、空容器返却タスクのタスクコストを含む。荷物配送後に空容器を直ちに返却するという目的を達成するために、本発明の実施例において、空容器返却タスクにそれぞれ大きさの異なるタスクコストを設ける。空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられ、かつ空容器返却タスクと、関連する荷物配送タスクとが上記所定時間内に実行されると、当該空容器返却タスクには、最小のタスクコストを有する。配送計画候補に上記タスクコストを導入することによって、本発明の実施例は、所望の配送計画を取得するように、配送計画に配送タスク同士の順序の影響を考慮する。
【００２７】
本発明の実施例において、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、空容器返却タスクにそれぞれ大きさの異なるタスクコストを設け、所望の配送方式をアルゴリズムに出力させる。１つの具体的な実現形態として、予め空容器返却タスクについて、上記第１配送方式で第１タスクコスト、第２配送方式で第２タスクコスト、第３配送方式で第３タスクコスト、第４配送方式で第４タスクコストを有すると設定する。ここで、上記第１配送方式として、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられ、かつ当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行される。上記第２配送方式として、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられ、かつ空容器返却タスクが関連する荷物配送タスクの後に実行され両者の間に他の配送タスクが存在する。上記第３配送方式として、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられるが、空容器返却タスクが関連する荷物配送タスクの前に実行される。上記第４配送方式として、空容器返却タスクと、関連する荷物配送タスクとが異なる配送車両に割り当てられている。
【００２８】
ここで、上記第１タスクコスト、第２タスクコスト、第３タスクコスト、第４タスクコストは、順に大きくなる。以上の異なる配送方式での異なるタスクコストによれば、第１配送方式が本発明の実施例において空容器返却タスクの最も望まれる配送方式であることを示す。
【００２９】
空容器返却タスクのタスクコストのほかに、本発明の実施例において、配送計画候補の総コストに配送距離コストも考慮される。配送計画候補が異なると、異なる配送車両経路を有する可能性があるため、配送距離が異なり、異なる配送距離コストに対応する。上記ステップ１２において、配送計画候補中の各配送タスクの配送距離コストを統計し、上記配送計画候補中の空容器返却タスクのタスクコストを統計し、さらに上記配送距離コストとタスクコストに基づいて配送計画候補の評価結果を取得する。例えば、配送距離コストとタスクコストに大きさの異なる重みをつけ、両者の加重合計をして配送計画候補の評価結果を取得する。
【００３０】
なお、本発明の実施例において、例えば配送にかかる時間、配送道路コスト（例えば道路が異なると、異なるコストがかかる可能性があり、高速道路の場合に別途通行費用がかかるなど）など多くの要素を評価結果に考慮してもよい。これらの要素は、検索アルゴリズムによる検索に考慮されるが、本文ではこれ以上詳細に記載しない。
【００３１】
１つの実現形態として、本発明の実施例は、検索アルゴリズムで生成される１つの配送計画候補（以下、現在の配送計画候補という）を取得する際に、上記配送計画候補中に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数を決定する。当該数が予め設定された閾値を超える場合、配送計画候補中の配送タスクに対して調整を行い、または、配送計画候補を除外する。
【００３２】
本発明の実施例において、混載可否の判断に用いられ、上限値Ｍｍａｘを有する混載容量を予め設定し、混載不可の配送タスクの混載容量を上記上限値Ｍｍａｘに設定し、混載可の配送タスクの混載容量を、Ｍｍａｘより遥かに小さい正数Ｋに設定する。当該正数Ｋの値は、配送タスクの数Ｓを参照して設定され、例えばＭｍａｘ／Ｓより小さい値である。また、配送車両に対し混載可否の判断に用いられる配送容量を設定し、配送車両の同一時刻での積荷量は、その配送容量を超えてはならない。１つの例として、混載容量の上限値Ｍｍａｘを１、混載可の配送タスクの混載容量を０．０１と設定する。現在の配送計画候補中に所定制限条件違反の配送車両の決定において、配送計画候補中の配送車両毎に、当該配送車両で配送されるすべての配送タスクの混載容量を累計し、上記混載容量以上である場合、当該配送車両が配送タスクの混載不可の設定条件に違反すると決定する。
【００３３】
また、配送タスクの混載可否について、当該配送タスクのタスク属性によって決められてもよい。割り当て待ちの配送タスクの取得において、タスク属性を指定することができ、当該タスク属性には、混載可否の指示情報を含むことができる。空容器返却タスクに対し、関連する荷物配送タスクが混載不可であれば、空容器返却タスクも混載不可がデフォルトである。もちろん、空容器返却タスクに関連する荷物配送タスクが混載不可である場合、空容器返却タスクが混載可であると特別に指示することもできる。
【００３４】
１つの実現形態して、本発明の実施例は、１つの配送計画候補（以下、現在の配送計画候補という）を取得する際に、配送計画候補中に、混載容量を超えた配送車両が存在するかを判断し、配送計画候補に混載容量を超えた配送車両が存在する場合、配送計画候補中の配送タスクに対して調整を行い、または、配送計画候補を除外する。
【００３５】
配送計画候補中に混載容量を超えた配送車両が存在するかの判断において、配送計画候補の配送車両に対し、当該配送車両が経由する隣接拠点間の経路を決定し、当該配送車両の当該経路におけるすべての配送タスクの混載容量を累計し、上記混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定する。または、配送計画候補の隣接拠点間の経路に対し、当該経路を経由する一つ又は複数の配送車両を決定し、各配送車両の当該経路における全ての配送タスクの混載容量をそれぞれ累計し、混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定する。
【００３６】
さらに、本発明の実施例において、上記混載容量以外に多くの限定条件を設定し、配送車両がこれらの条件を満たすかを判断することもできる。この場合、まず現在の配送計画候補中に所定車両制限条件に違反する配送車両が存在するかを決定する。現在の配送計画候補中に所定車両制限条件に違反する配送車両が存在する場合、配送計画候補中の配送タスクに対して調整を行い、または、上記現在の配送計画候補を除外し、上記現在の配送計画候補の総コストの計算をしない。所定車両制限条件に違反する配送車両が存在しない場合、現在の配送計画候補中の各配送タスクのコストを統計して配送計画候補の総コストを得る。
【００３７】
ここで、所定車両制限条件は、車両の積荷総容積が当該車両の容積上限を超えていないこと、または、車両の積荷総重量が当該車両の積荷上限を超えていないこと、または、車両が配送タスクの混載不可の設定条件に違反しないことを含む。
【００３８】
さらに、本発明の実施例において、１つの配送計画候補（現在の配送計画候補である）を得た後に、現在の配送計画候補中に、所定車両制限条件に違反する配送車両が存在しないと決定すると、引き続き、現在の配送計画候補中に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの第１の数を決定する。上記第１の数が所定の第１閾値を超えると、配送計画中の配送タスクに対し調整を行うか、現在の配送計画候補を除外する。上記第１の値が上記所定の第１閾値以下である場合、現在の配送計画候補中の各配送タスクのタスクコストを統計して配送計画候補の総コストを得る。ここで、所定の第１閾値は、配送タスクの総数およびコスト要求などの要素に基づいて設定される。
【００３９】
なお、本発明の実施例の割り当て待ちの配送タスクは、ユーザから提供された荷物配送タスクに基づいて生成され、荷物配送タスクと空容器返却タスクを含む配送タスクであってもよい。具体的に、例えば、ユーザから提供された配送タスクに荷物配送タスクしかない場合、本発明の実施例において、荷物配送後に空容器の返却が必要な荷物配送タスクを決定し、上記空容器の返却が必要な荷物配送タスクに対し、関連する空容器返却タスクを追加し、当該関連する空容器返却タスクの実行順が、上記荷物配送後に空容器の返却が必要な荷物配送タスクの後であると標識する。
【００４０】
ここで、当該荷物配送タスクのタスク属性を解析し、当該荷物配送タスクに対し、空容器の返却が必要であるかを決定する。ユーザは、荷物配送タスクを提供する際に、当該タスクのタスク属性を指定する必要があり、通常、荷物配送タスクの出発拠点、終了拠点、配送時間要求、荷物容積および重量情報、混載可否、空容器の返却要否などの情報が含まれる。
【００４１】
空容器が荷物配送タスクの出発拠点に位置しないことがあることを考慮すると、まず空容器を他の拠点から引取りしてから、出発拠点で荷物の積荷を行って目的地拠点に配送する。従って、本発明の実施例において、ユーザから提供される少なくとも１つの荷物配送タスクを取得した後に、荷物配送前に配送出発拠点以外のその他の拠点から空容器の引取りを行う必要のある荷物配送タスクを決定する。上記配送出発拠点以外のその他の拠点から空容器の引取りを行う必要のある荷物配送タスクに対し、関連する空容器引取りタスクを追加し、当該関連する空容器引取りタスクの実行順が、上記配送出発拠点以外のその他の拠点から空容器の引取りを行う必要のある荷物配送タスクの前であると標識する。
【００４２】
以上の方式によれば、本発明の実施例は、ユーザから提供された荷物配送タスクに基づいて、割り当て待ちの配送タスクを生成することができるが、具体的に荷物配送タスクを含み、さらに空容器引取りタスクと空容器返却タスクのうちの一方または両方を含んでもよい。
【００４３】
配送タスクを検索アルゴリズム中に標識するために、本発明の実施例において、すべての配送タスクに対し、当該配送タスクを一義的に標識するタスク標識ＩＤを割り当て、関連関係を有する配送タスクに対し関連関係を設ける。例えば、関連する空容器引取りタスクと荷物配送タスクの関連関係を確立し、関連する荷物配送タスクと空容器返却タスクの関連関係を確立する。
【００４４】
本発明の実施例において、検索アルゴリズムによって上記割り当て待ちの配送タスクの配送計画候補を生成するとき、検索回数の上限値を設定する。検索回数が当該上限値に達すると、検索を終了させ、配送計画候補を出力する。検索中に、収束を加速させるために、以下の方式で処理を行うことができる。
【００４５】
所定の検索アルゴリズムに基づいて、予め設定された捜索回数上限値まで配送計画候補の生成を繰り返す過程において、生成回数が予め設定された回数となる際に得られた配送計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数が所定値を超える場合、初期値が上記割り当て待ちの配送タスクである元タスクグループ中の配送タスクを、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスク及びその関連する配送タスクとからなる第１のタスクグループと、それ以外の配送タスクからなる第２のタスクグループとの２つのグループに分け、所定の検索アルゴリズムに基づいて、第１のタスクグループと第２のタスクグループに対し、それぞれ配送サブ計画候補の生成を行い、第１の配送サブ計画候補と第２の配送サブ計画候補を取得し、第１の配送サブ計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクが存在すると、第１のタスクグループを上記元タスクグループとし、上記の元タスクグループ中の配送タスクを２つのグループに分けるステップに戻り、第１の配送サブ計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクが存在しないと、当該第１の配送サブ計画候補と全ての第２の配送サブ計画候補をまとめ、上記割り当て待ちの配送タスクの配送計画候補を取得する。
【００４６】
以上の方式によれば、本発明の実施例は、アルゴリズムの収束を加速させ、検索効率を向上させることができる。
【００４７】
以上、本発明の実施例の配送車両の配送計画生成方法を紹介した。本発明の上述した各実施例において、空容器返却要求のある荷物配送タスクに対し、関連する空容器返却タスクを追加し、配送計画の検索中に、空容器返却タスクに対し大きさの異なるタスクコストを設けることによって、所望の配送順序の配送計画を検索アルゴリズムによって自動的に生成して出力することができ、配送後に空容器をメーカーに返却するという配送要件を含む配送計画の生成効率を向上させる。
【００４８】
本発明の実施例は、コンピュータ読取可能な記憶媒体をさらに提供している。この記憶媒体に記憶されたコンピュータプログラムがプロセッサにより実行されると、上記いずれか１つの方法実施例の配送計画生成方法を実現する。
【００４９】
以上の方法に基づいて、本発明の実施例は、以上の方法を実施する装置をさらに提供している。図２に示すように、本発明の実施例による配送計画生成装置２０は、配送計画候補中の空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、同一の配送車両に割り当てられている場合、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、配送計画候補を評価して評価結果を得るための配送計画評価手段２１と、上記配送計画候補の評価結果に基づいて、一つまたは複数の配送計画候補を最終的な配送計画として出力するための配送計画出力手段２２とを含み、そのうち、上記所定時間内に実行されることには、当該空容器返却タスクと、関連する荷物配送タスクが同時に実行されること、または、当該空容器返却タスクが関連する荷物配送タスクの後に実行され且つ両者の間にその他の配送タスクが存在しないことを含む。
【００５０】
上記配送計画評価手段２１は、空容器返却タスクと、関連する荷物配送タスクとが同一の配送車両に割り当てられているか否か、および、当該空容器返却タスクと、関連する荷物配送タスクとが所定時間内に実行されるか否かに基づいて、空容器返却タスクにそれぞれ大きさの異なるタスクコストを設け、配送計画候補のタスクコストを合計して得た配送計画候補の総コストを配送計画候補の評価結果とするためのタスクコスト統計手段を含むことが好ましい。
【００５１】
上記配送計画生成装置は、配送計画候補中に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数を決定し、上記数が予め設定された閾値を超える場合、配送計画候補中の配送タスクに対して調整を行い、または、配送計画候補を除外するための配送計画分析手段をさらに含むことが好ましい。
【００５２】
上記配送計画生成装置は、配送車両に対し混載可否の判断に用いられる配送容量を予め設定し、配送タスクに対し混載可否の判断に用いられ、上限値を有する混載容量を予め設定し、混載不可の配送タスクの混載容量を上記混載容量の上限値に設定するための容量設定手段をさらに含むことが好ましい。
【００５３】
上記配送計画生成装置は、検索アルゴリズムで一つの配送計画候補を生成した後に、混載容量を超える配送車両が配送計画候補中に存在するか否かを判断し、混載容量を超える配送車両が配送計画候補中に存在する場合、配送計画候補中の配送タスクに対し調整を行い、または、配送計画候補を除外するための混載判断手段をさらに含むことが好ましい。
【００５４】
具体的に、上記混載判断手段は、混載容量を超える配送車両が存在するか否かを判断する際に、配送計画候補の配送車両に対し、当該配送車両が経由する隣接拠点間の経路を決定し、当該配送車両の当該経路におけるすべての配送タスクの混載容量を累計し、上記混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定する。または、配送計画候補の隣接拠点間の経路に対し、当該経路を経由する一つ又は複数の配送車両を決定し、各配送車両の当該経路における全ての配送タスクの混載容量をそれぞれ累計し、上記混載容量の上限値以上である場合、混載容量を超える配送車両が存在すると決定する。
【００５５】
上記配送計画生成装置は、配送計画生成手段をさらに含むことが好ましい。上記配送計画生成手段は、所定の検索アルゴリズムに基づいて、予め設定された捜索回数上限値まで配送計画候補の生成を繰り返す中で、生成回数が予め設定された回数となる際に得られた配送計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクの数が所定値を超える場合、初期値が上記割り当て待ちの配送タスクである元タスクグループ中の配送タスクを、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスク及びその関連する配送タスクとからなる第１のタスクグループと、それ以外のタスクからなる第２のタスクグループとの２つのグループに分け、所定の検索アルゴリズムに基づいて、第１のタスクグループと第２のタスクグループに対し、それぞれ配送サブ計画候補の生成を行って第１の配送サブ計画候補と第２の配送サブ計画候補を取得し、第１の配送サブ計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクが存在すると、第１のタスクグループを上記元タスクグループとし、上記の元タスクグループ中の配送タスクを２つのグループに分けるステップに戻り、第１の配送サブ計画候補中に、関連する荷物配送タスクと異なる配送車両に割り当てられた空容器返却タスクが存在しないと、当該第１の配送サブ計画候補と全ての第２の配送サブ計画候補をまとめ、上記割り当て待ちの配送タスクの配送計画候補を取得する。
【００５６】
上記配送計画生成装置における上記配送計画評価手段２１は、さらに上記総コストと配送計画候補中の各配送タスクの配送距離コストの合計を計算して配送計画候補の評価結果とする。
【００５７】
本発明の実施例は、配送車輌の配送計画生成システムをさらに提供している。当該システムは、記憶装置と、プロセッサと、記憶装置に記憶され、プロセッサにより実行されるコンピュータプログラムとを含み、上記コンピュータプログラムが上記プロセッサにより実行されると、上記いずれか１つの方法実施例の配送計画生成方法を実現する。
【００５８】
図３は、本発明の実施例による配送計画生成システムの全体構造ブロック図の１つの例を示す。図３では、コンピュータ単体を例として説明する。コンピュータ１００は、プロセッサ（ＣＰＵ）１０４と、メイン記憶装置１０５と、二次記憶装置１０６と、メインバス１０３と、ビデオカード１０７と、ネットワークインタフェースカード（ＮＩＣ）１０８と、ビデオ出力ポート１０９から構成される。コンピュータ１００は、ＮＩＣ１０８を介してコンピュータの外部との間でデータの入出力ができ、ビデオ出力ポート１０９を介して外部の表示デバイスへ画面出力ができる。実際の構造において、図３に示すモジュール以外に、キーボード、マウスなどの入力装置をさらに含んでもよい。
【００５９】
二次記憶装置１０６には、例えば、データ入力処理モジュール１０６１と、計算条件設定処理モジュール１０６２と、最適解検索処理モジュール１０６３と、配送計画出力処理モジュール１０６４と、拠点管理データ１０６５と、車両管理データ１０６６と、配送タスクデータ１０６７と、道路ベクトルデータ１０６８など、本発明の実施例の演算処理に必要とされる各種類の入力データとプログラムモジュールが記憶されている。演算処理の実行において、二次記憶装置１０６のデータを、メイン記憶装置１０５内の入出力／計算実行処理手段１０５１によって適宜に読み込み、拠点間距離データ１０５２と併せて検索処理を行って配送計画を出力する。
【００６０】
本発明の実施例の以上の技術手段を理解するために、以下、いくつかの例の具体的なフローによって本発明の実施例の方法をさらに具体的に記載する。
【００６１】
図４を参照し、本発明の実施例の配送車両の配送計画生成方法の例示的なフローには、以下を含む。
【００６２】
データ読み込みステップ２１０において、拠点管理データ１０６５と、車両管理データ１０６６と、配送タスクデータ１０６７を読み込む。その後、メイン演算処理ステップ２３０の前処理として、計算条件設定ステップ２２０を行う。メイン演算処理ステップ２３０において、最適な配送計画を得るために、配送計画の生成を繰り返して行う。
【００６３】
毎回配送計画を生成する前に、ステップ２３１において、所定検索ループ回数の上限に達したかを判断する。達した場合、ステップ２４０に進んで配送計画を出力するが、達していないと、ステップ２３２において配送計画候補を生成する。
【００６４】
ステップ２３２において、例えばＬＮＳアルゴリズムやＧＡなどの検索アルゴリズムを用いて検索して配送計画候補を取得し、ステップ２３３において、生成した配送計画候補が強制的制限条件に違反しているかを判断する。違反した場合、現在の配送計画候補に対し調整を行うか、現在の配送計画候補を除外し、ステップ２３２に戻ってあらためて配送計画候補を生成する。違反しない場合、ステップ２３４に進んで現在の配送計画候補の総コストを計算する。
【００６５】
ここで、強制的制限条件は、前述した所定車両制限条件を含んでもよい。さらに、強制的制限条件は、配送計画候補に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられて入る空容器返却タスクの第１の数が第１閾値より小さいことを含む。強制的制限条件に違反して配送計画候補をあらためて生成する必要がある場合、上記強制的制限条件の違反に関する配送タスクを現在の配送計画候補中のほかの位置に挿入するか、現在の配送計画候補中のほかの配送タスクと配送順序を交換する。
【００６６】
ステップ２３５において、検索を前倒しで終了できるかを判断する。可と判断した場合、ステップ２４０に進むが、不可と判断した場合、ステップ２３１に戻る。例えば、現在の配送計画候補に必要とされる配送車両が所定の第１閾値以下であり、および／または、配送計画候補に存在する、関連する荷物配送タスクと異なる配送車両に割り当てられて入る空容器返却タスクの数が所定の第２閾値以下であれば、検索を前倒しで終了することができる。
【００６７】
ステップ２４０において、現在取得した各配送計画候補の総コストの低い順に１つまたは複数の配送計画を出力して最終的な配送計画とする。
【００６８】
図５〜図７は、データ読み込みステップ２１０で読み込まれるデータ形式の一例を示す。
【００６９】
図５の拠点管理データ１０６５は、拠点名４１１と、拠点の位置を示す緯度４１２および経度４１３と、拠点の所在地域４１４と、拠点対応可の車種（すなわち、拠点で配送を受け付けられる車種）４１５と、拠点の始業時間４１６および終業時間４１７と、荷卸所要時間４１８などのパラメータを含む。
【００７０】
図６の車両管理データ１０６６は、車両を一義的に標識するための車両ＩＤ４３１と、当該車両の車種４３２と、運転手や連絡方法４３３と、車両出発時の拠点４３４および終了時の拠点４３５と、車両容積の上限値４３６（立方メートル／パレット（荷物の荷役台）の数など）と、車輌の積載上限値４３７（ｔまたはｋｇなど）と、車輌の稼動開始時刻４３８と、稼動終了時刻４３９と、当該車輌の管轄地域４４０などのパラメータを含む。
【００７１】
図７の配送タスクデータ１０６７は、配送タスクの配送日４５１と、配送元の出発拠点４５２と、配送目的地の目標拠点４５３と、配送元で荷物を取得する引取り期限４５４と、配送目的地に交付する納入期限４５５と、配送荷物の容積４５６と、配送可能車種に限定ありの場合の車種４５８と、空容器返却の要否４５９と、他の配送タスクとの混載可否４６０などのパラメータを含む。
【００７２】
計算条件設定ステップ２２０において、拠点管理および配送タスクデータを使用して図８に示す入力データ５００を生成する。図７の配送タスクデータ１０６７から、配送計画生成アルゴリズムの演算処理で空容器返却を直接計画に反映することができないため、メイン演算処理ステップ２３０に先立って、図９に示す計算条件設定ステップ２２０の処理によって空容器返却タスクを生成する。
【００７３】
図９に示すように、計算条件設定ステップ２２０において、ユーザから提供される配送待ちのすべての配送タスクを対象に演算ループ処理を行う。ステップ２２１において、すべての配送タスクのトラバースが終了したかを判断する。トラバースが終了した場合、図８に示すような入力データを出力するが、トラバースが終了していない場合、ステップ２２２において１つの未処理の配送タスクｉを選択し、ステップ２２３において当該配送タスクｉに対し空容器の返却要否を判断する。不要の場合、ステップ２２１に戻る。要の場合、ステップ２２４において当該配送タスクｉに対し空容器返却タスクｊを追加して生成し、ステップ２２５において空容器返却タスクｊに対し混載可否を判断する。配送タスクｉの空容器返却要否の判断は、図７の当該タスクに対する空容器返却要否４５９の設定を参照されたい。返却が必要な場合、空容器返却タスクを追加する。
【００７４】
図７の配送タスクデータ４６１を例とすると、空容器返却４５９が「要」であるため、図８の一番目の配送タスクＪ００１に対し次ぎの空容器返却タスクＪ００１＿０１を追加する。この場合、元の配送タスクＪ００１と対応するために、図８の関連タスクＩＤにＪ００１を記入する。ここで、タスク順５１９は、現在のタスクと関連タスクＩＤ５２０との順序関係を示す。例えば、ＮＥＸＴ５４１は、現在のタスクＪ００１＿０１が関連タスクＩＤ５２０に示されるタスクＪ００１の後に位置することを示す。
【００７５】
ステップ２２５において、空容器返却タスクｊに対して混載可否を判断する際に、図７の混載可否４６０を参照して図８の混載可否５２１を設定する。すなわち、図９の混載可否判定処理２２５において、元の配送が混載不可であれば、空容器返却も混載不可になる。もちろん、本発明の実施例は、非対称の処理方式を用いてもよく、すなわち元の配送が混載不可であるのに対し、空容器返却が混載可であってもよい。
【００７６】
配送計画生成アルゴリズムのタスク割り当て処理において、混載不可の空容器返却タスクを他のタスクと混載しないため、容積Ｖ、重量Ｗとは異なる容量を導入して配送タスクに追加するが、本文ではそれを混載容量Ｍとする。図９の例では、すべての車輌の混載容量の上限値を１．０に設定し、ステップ２２６において混載不可の空容器返却タスクｉの混載容量を１．０に設定する。これによって、配送タスクの混載容量が１．０である場合、容量がいっぱいになり、このとき例えば容積Ｖと重量Ｗに余裕があっても、他のタスクとの混載をできないことにする。
【００７７】
一方、混載可否判定処理２２５によって混載可と判断される場合、ステップ２２７において、空容器返却タスクｉの混載容量を、０より大きく極めて小さい値に設定し、例えば前述したＭｍａｘ／Ｓより小さい値に設定する。空容器返却タスクの容積５１６、重量５１７に対し個別に所定し、例えば、ステップ２２７において元の配送タスクの１５％に統一的に設定する。
【００７８】
最後に、元の配送タスク、空容器返却タスクに対し、図７の引取り期限４５４と納入期限４５５のうち空いている時間帯に補完処理を行う。期限に時刻がない場合、図５の拠点管理データを参照して、当該拠点の終業時間を入力すればよい。また、例えば、空容器返却タスクに基本的に時刻の指定がないため、すべて当該拠点の営業時間を入力すればよい。各拠点の営業時間が指定されない場合、デフォルト値（例えば８：００〜１７：００）に指定する。従って、図８に示す入力データを取得する。また、図８は、入力データ決定後であってメイン演算処理ステップ２３０の前に混載容量設定処理の例を示す。もちろん、入力データ自身にも混載容量を含んでもよい。
【００７９】
図９の空容器返却タスクの追加処理は、配送後に空容器の返却が必要なケース（ｃａｓｅ）である。別のケースとして、タスクを配送する前に、配送タスクの出発拠点と異なるほかの拠点から空容器の引取り（Ｐｉｃｋｕｐ）が必要なケースであり、図７の配送タスク４６２のケース（ｃａｓｅ）に対応し、その一つの処理方式が図１０に示される。図７の配送タスク４６２のケース（ｃａｓｅ）では、空容器の返却要否４５９が「事前要」である。具体的に、まず配送目的地拠点Ｂで空容器を引取りしてから、拠点Ｃで再び荷物を積荷して荷物を拠点Ｂまで配送し、最後に空容器を別の拠点ｌに返却する。すなわち、図１０に示すように、計算条件設定ステップ２２０において、まずユーザから提供される配送待ちのすべての配送タスクを対象に演算ループ処理を行い、空容器引取りタスクの追加要否を判断する。ステップ２２１ａにおいて、すべての配送タスクに対し空容器引取り処理のトラバースが終了したかを判断する。トラバースが終了した場合、図９のステップ２２１に進んで、さらにすべての配送タスクに対し空容器返却処理のトラバースが終了したかを判断する。空容器引取り処理のトラバースが終了していなければ、ステップ２２２ａにおいて１つの未処理の配送タスクを選択して現在の配送タスクとし、ステップ２２３ａにおいて現在の配送タスクに対し別の拠点から空容器の引取りが必要であるかを判断する。要と判断した場合、ステップ２２４ａにおいて現在のタスクに対し空容器引取りタスクを追加してステップ２２１ａに戻る。具体的に、空容器引取りタスクを追加する場合、当該タスクにおける関連パラメータに対し、空容器返却タスクにおける類似方式を参照して設定してもよい。
【００８０】
図７の配送タスク４６２に基づいて、図７の配送タスクに対しそれぞれ空容器引取りタスクＪ００２と空容器返却タスクＪ００２＿０２を生成する。ここで、空容器の引取り、荷物配送、空容器返却を順に行うために、Ｊ００２＿０１とＪ００２＿０２の関連タスクＩＤに対し、その前に行われるタスクのタスクＩＤを設定する。実際の配送において、配送後に空容器を拠点ｌに返却する必要がなく目的地拠点Ｂまで配送した段階で終了するシーンや、配送目的地拠点Ｂではないほかの拠点で空容器の引取りを行うシーンなどが存在する。以上の様々なありうるシーンに対し、業務要件に応じて適応的に変更して適切な入力データ５００を出力すればよい。本例において、計算条件設定ステップ２２０によって配送タスク１０６７に基づいて入力データ５００を生成するシーンを示す。しかし、具体的に実施する際に、計算条件設定ステップ２２０を飛ばして直接上記入力データ５００を入力してもよい。すなわち、直接タスク順５１９、関連タスクＩＤ５２０を入力することによって、空容器返却タスクなど複数のタスクの間の関連関係を定義してもよい。
【００８１】
図１１は、メイン演算処理ステップ２３０に必要とされる拠点間距離行列データ１０５２のデータ形式の一例を示す。拠点間距離行列データとは、拠点のすべての組み合わせに対し、距離（または走行時間）を数値化して形成された二次元行列データである。２つの拠点の間で往復する走行経路が異なることがあるため、拠点の数をＮとした場合、すべての距離の数は、Ｎ＊（Ｎ−１）個である。道路ベクトルデータを入力とし、最短経路計算法（例えばダイクストラ法）を用いたプログラムで２つの拠点の間の距離を求める。当該データ１０５２について、メイン演算処理ステップ２３０に先立って拠点管理データ１０６５を用いて生成されるか、生成済みのデータを入力し、メイン記憶装置の入出力／計算実行処理手段１０５１に読み込まれることによって、直接高速な演算処理を行うことができる。
【００８２】
図９に設定された混載容量などのパラメータは、メイン演算処理ステップ２３０における強制的制限条件違反処理ステップ２３３に用いられる。ここで、強制的制限条件は、前述した所定車輌制限条件を参照して設定してもよく、車輌の積荷総容積が当該車輌の容積の上限を超えないこと、または、車輌の積荷総重量が当該車輌の積荷の上限を超えないこと、または、車輌が配送タスクの混載不可の設定条件に違反しないことを含む。上述のいずれか１つの条件に違反すると、強制的な制限条件に違反することを示す。
【００８３】
図１２は、空容器混載可否判定処理の一例を示す。配送計画候補生成２３２の出力である配送計画候補に対し、各配送タスクに割り当てられた車輌を逐一に確認し（ステップ２３３１）、車輌の容量上限を超えたり（ステップ２３３２）、積荷上限を超えたり（ステップ２３３３）、混載容量上限を超えたり（ステップ２３３４）すると、強制的制限条件に違反したと判断し（ステップ２３３６）、再び配送計画候補生成２３２に戻る。逆の場合、強制的制限条件を満たしたと判定し（ステップ２３３５）、総コスト計算ステップ２３４に進む。もちろん、本発明の実施例は、配送計画候補生成２３２において上記の強制的制限条件違反の判定２３３そのものを実施してもよい。
【００８４】
具体的に、図１５の出力データ５５０を例とする場合、現在の配送計画候補によって割り当てられたすべての配送車輌に対し、時系列順５６４に従って容積の増減５７０を加算して総容積を取得し、重量の増減５７１を加算して総重量を取得し、状態５６５が移動中であるとき、上記総容積と総重量が当該車輌の容積Ｖの上限値と重量Ｗの上限値（３６２、３６３）を超えたかを判定する。類似に、混載容量Ｍに対し、同様に混載容量の上限値を超えるかを判定する。また、図９の処理ステップ２２７において、混載容量を０に設定すると、ステップ２３３４の判定において、混載容量が１であるケースがあっても、現在の車輌が混載することができるので、混載可の車輌の混載容量を、１以下の小さい正数（例えば０．００１）に設定する。図１２において、配送計画候補生成ステップ２３２に戻るタイミングは、車輌のあるパラメータが対応する強制的制限条件に違反した時点だったり、対応する強制的制限条件に違反した車輌が一定数に達した時点だったり、配送計画候補においてすべての車輌についての判断が終了した時点である。
【００８５】
総コスト計算２３４の処理フローの一実現形態は、図１３に示す。総コスト計算２３４において、配送計画候補生成２３２によって出力された配送計画候補の各配送タスクに対し、最適解から見れば、配送タスクの割り当て順に一定の差異を有し、当該差異を数値化して、演算ループ処理において合計総コストとして出力する。まず、ステップ２３４０１においてすべての配送タスクが処理済みであるかを判断する。処理済みである場合、総コストを出力してステップ２３５に進む。処理済みではない場合、１つの未処理の配送タスクを抽出して現在の配送タスクとし、ステップ２３４０２において当該現在の配送タスクが空容器返却タスクであるかを判断する。空容器返却タスクであるかについて、図８の例では、タスク順５１９がＮＥＸＴであること、かつ関連タスクＩＤ５２０に対応するタスクＩＤを指定することによって判定することができる。
【００８６】
ステップ２３４０２において、現在の配送タスクが空容器返却タスクではないと判断すると、ステップ２３４０１に戻るが、逆の場合、ステップ２３４０３に進んで、当該空容器返却タスクに関連する配送タスク（以下、元の配送タスクという）を同一の車輌に割り当てるかを判断する。具体的に、後述の出力データ５５０のデータ形式では、上述した対応する２つの配送タスクが同一車輌ＩＤ５６２に属するかによって同一車輌であるかを判断することができる。同一車輌ではない場合、最適解がない（最適解には程遠い）と判定し、予め設定されたコストαを総コストに加算して（ステップ２３４０４）ステップ２３４０１に戻る。同一車輌である場合、最適解に近いため、総コストからαを減じるか、別の設定値（例えばαの３０％）を減じる（ステップ２３４０５）。ここで、総コストに対するαの加算や減算は、総コストに対し行われるため、同一車輌ではない場合、一方のみを実施してもよい。同一車輌判定処理の後に、ステップ２３４０６に進んで、空容器返却タスクが元のタスクの後に実行されるかを判断する。出力データ５５０のデータ形式では、同一車輌ＩＤ５６２の順序５６４によって各配送タスクの前後順関係を判定することができる。前後順の判定は、対応する元の配送タスクの荷卸の後に当該返却タスクの積荷があるかによって決められる。当該判定において、荷卸と積荷の間に他の配送タスクを有してもよく、時間的に空いてもよい。空容器返却タスクが元のタスクの前に実行される場合、最適解に程遠いため、総コストにβを加算し（ステップ２３４０７）、ステップ２３４０１に戻る。また、空容器返却タスクが元のタスクの後に実行される場合、上記判定同様に、総コストからβを減算する（ステップ２３４０８）。最後に、ステップ２３４０９において、当該空容器返却タスクと、関連する荷物配送タスクとが上記所定時間内に実行されるかを判断し、空容器返却タスクと空容器返却タスに対応する荷物配送タスクの間に他の配送タスクがなく、空容器返却タスクが空容器返却タスに対応する荷物配送タスクの後に直ちに実行されるかを判断する。具体的に、空容器返却タスクが対応する荷物配送タスクの後に直ちに実行されるかの判定において、対応する荷物配送タスクの荷卸の後に直ちに空容器返却タスクの積荷を行うかによって判断できる。両者の間に他の配送タスクがある場合、総コストにγを加算し（ステップ２３４１０）、ステップ２３４０１に戻る。逆の場合、総コストからγを減算し（ステップ２３４１１）、ステップ２３４０１に戻る。
【００８７】
上記３つの判定処理２３４０３、２３４０６、２３４０９において、事前に決められた常数α、β、γをコストの数値とし、最適解の検索処理において最適解に徐々に接近する方式で、異なるコストを設定する（α＞＞β＞＞γが好ましい）。したがって、上記メイン演算処理ステップ２３０において、同一車輌に対する元のタスクの割り当てと空容器返却タスクを優先的に実施する。次に、配送タスクと空容器返却タスクの前後関係を実現することができる。最後に、両者の間に他の配送タスクがない配送順序を考慮する。ここで、コストβに関する判定処理２３４０６〜２３４０８は、高速かつ確実に最適解に収束するための処理である。
【００８８】
配送タスクの数が比較的多い場合、総コスト計算２３４のみでは最適解に収束することが難しい可能性があり、配送計画に配送順序不一致が存在することがある。ここでの順序不一致とは、空容器返却タスクと関連する荷物配送タスクが異なる配送車輌に割り当てられていることを示す。この場合、本発明の実施例は、上記の順序不一致の判定処理と併せて収束性を改善し、配送順序不一致を少なくするか０にする。図１４は、上記の順序不一致判断処理と組み合わせる例を示す。ここで、配送計画候補生成ステップ２３２で出力される配送計画候補に対し、順序不一致が存在するかを決定する。ある場合、再び配送計画候補生成２３２のステップに戻り、配送計画候補生成２３２において当該順序不一致判断処理を実施する。
【００８９】
具体的に、まず、配送計画候補生成ステップ２３２で１つの配送計画候補を取得した後に、当該配送計画候補を現在の配送計画候補とする。まずステップ２３２１で現在の配送計画候補のすべての配送タスクについてトラバース終了であるかを判断する。処理済みである場合、ステップ２３３に進む。処理済みではない場合、ステップ２３２２において１つの未処理の配送タスクを抽出して現在の配送タスクとし、ステップ２３２３において当該現在の配送タスクが空容器返却タスクであるかを判断する。ステップ２３２３において当該現在の配送タスクが空容器返却タスクではないと判断すると、ステップ２３２１に戻る。逆の場合、ステップ２３２４に進み、当該空容器返却タスクに関連する配送タスク（以下、元の配送タスクという）を同一車輌に割り当てるかを判断する。同一車輌に割り当てる場合、ステップ２３２１に戻る。逆の場合、ステップ２３２５に進み、順序不一致の判断結果を出力し、配送計画候補生成ステップ２３２に戻ってあらためて１つの配送計画候補を生成する。配送計画候補生成ステップ２３２に戻るタイミングは、順序不一致の配送タスクを発見した時点だったり、現在の配送計画候補中のすべての配送タスクのトラバース処理が終了した後であったり、順序不一致の配送タスクが所定数に達した時点であったりする。以上の処理を実施したため、以降出力される配送計画候補には、順序不一致が存在しない。したがって、図１３の総コスト計算において、図１３のステップ２３４０３、２３４０４、２３４０５を省略してもよい。
【００９０】
配送計画候補生成ステップにおいて、一定回数の演算ループが実行された後に取得した配送計画候補中に、一定数以上の配送順序不一致の配送タスクが存在することがあるため、メイン演算処理ステップ２３０を途中で前倒しで終了してもよく、入力される配送タスクデータの範囲を縮小することによって、数回に分割してあらためて演算ループ処理を実行してもよい。
【００９１】
入力データの分割において、例えば、順序不一致が生じた配送タスクおよびそれに関連するすべての配送タスクを１つのグループとし、残りの配送タスクを別のグループとすることによって２分割する。それから、グループごとに配送計画候補生成処理を行う。
【００９２】
１回目の２分割で取得したグループに対し配送計画候補を生成する際に、各グループに配送順序不一致が生じなければ、各グループの配送サブ計画をまとめて全体的な配送計画候補を取得する。例えば、２分割した２つのグループに対し５台と７台の配送車輌の配送サブ計画を取得する場合、まとめて計１２台で配送処理を行う配送計画候補を取得して出力する。一方、あるグループに再び配送順序不一致が生じると、以上の方式で当該グループに対し２分割をしてもよい。以上の２分割処理は、各グループに配送順序不一致が生じなくなるまで、複数回に行われてもよい。
【００９３】
メイン演算処理ステップ２３０の後に、配送計画出力ステップ２４０において、図１５に示す出力データ５５０のデータ形式で、生成された配送計画データを取得して表示処理などを行う。出力される配送計画は、１個に限られず、複数の要素に基づいて演算結果を選択することができる。例えば、走行総距離、配送総時間、車輌台数、割り当てていない配送タスクの数、順序不一致の配送タスクの数などの複数の要素のうちの１つまたは複数で適切な配送計画を選択し、出力データ５５０の形式で出力することができる。出力データ５５０では、時系列順５６４に従って、配送日５６１の配送車輌（車輌ＩＤ５６２）のそれぞれの稼動状態５６５を出力し、出力内容には、車種５６３、走行時の出発拠点／目的地拠点（５６６／５６７）、当該稼動状態５６５の開始／終了時間（５６８、５６９）、それまでの稼動状態５６５による容積／重量の増減（５７０、５７１）、積荷／荷卸対象の配送タスクＩＤ５７２をさらに含む。１つの配送タスクＩＤには、通常、積荷と荷卸があるため２つの異なる稼動状態が生成される。
【００９４】
図１６Ａ〜図１６Ｂは、配送計画候補２４０において、出力データ５５０に基づいて生成される出力画面の一例を示す。図１６Ａは、時系列でガントチャート形式で各配送車輌の稼動状態を示す配送スケジュール表６００であり、図１６Ｂは、配送計画に含まれる配送拠点と配送経路を地図に示す配送経路７００である。ここで、図１５の車輌ＩＤ５６２がＡ０１２３である出力を例として説明する。配送スケジュール表６００の表示では、車輌Ａ０１２３（６１１）を縦軸のラベルにし、右側で時系列（順序５６４）で具体的な稼動状態を表示する。出力データ５５０では、積荷、移動、待機、荷卸、積荷、昼休み、移動、荷卸の計８の稼動状態が出力されるが、配送スケジュール表６００では、拠点ｌ、移動、待機、拠点Ａ、昼休み、移動、拠点ｌの計７の状態が示されている。これら、表示上、「拠点Ａ」を用いて、荷卸／積荷の２つの稼動状態を示しているためである。
【００９５】
配送スケジュール表６００と配送経路７００とは、対応することができる。例えば、配送経路７００では、配送スケジュール表６００の画面上の指定車輌のみが表示され、配送スケジュール表６００では、横軸となる時間軸で特定時刻６６１を指定する場合、配送経路７００で当該車輌の計画上の位置７３１などを示す。当該車輌の稼動状態が「移動」である場合、車輌位置７３１を地図上で決定するために、移動速度が一定であるときに目的地と出発地との間の経路を細分化し、出発地から当該時刻に達した地点を表示位置に設定すればよい。図１６Ａ〜図１６Ｂは、表示画面出力の例である。ただし、同様の表示内容をＰＤＦ、紙などの出力媒体に出力してもよい。
【００９６】
続いて、図１７のブロック図を用いて、本発明の実施例のシステムブロック図の別の実施形態を説明する。図１７は、図３のコンピュータ１００をサーバ／クライアントに分解したタイプの構造でり、１台のサーバ１７２と複数のクライアント１７１、１７３の構造を例とするシーンを示す。サーバ１７２、クライアント１７１は、図３のコンピュータ１００とは基本的に同一のハードウェア構造である。クライアント１７１は、ＣＰＵ１７１１／メイン記憶装置１７１３と、二次記憶装置１７１４と、メインバス１７１２と、ビデオカード１７１５と、ネットワークインタフェースカード（ＮＩＣ）１７１６と、ビデオ出力ポート（図示せず）などを含む。クライアント１７１は、ＣＰＵ１７１１と、メイン記憶装置１７１３と、二次記憶装置１７１４と、メインバス１７１２と、ビデオカード１７１５と、ネットワークインタフェースカード（ＮＩＣ）１７１６と、ビデオ出力ポート（図示せず）などを含む。ここで、メイン記憶装置１７１３は、入出力処理モジュール１７１３１を含む。二次記憶装置１７１４は、データ入力処理モジュール１７１４１と、配送計画出力処理モジュール１７１４２と、配送タスクデータモジュール１７１４３を含む。サーバ１７２は、ＣＰＵ１７２１と、メイン記憶装置１７２３と、二次記憶装置１７２４と、メインバス１７２２と、ビデオカード１７２５と、ネットワークインタフェースカード（ＮＩＣ）１７２６と、ビデオ出力ポート（図示せず）などを含む。ここで、メイン記憶装置１７２３は、計算実行処理モジュール１７２３１と拠点間距離データモジュール１７２３２を含む。二次記憶装置１７２４は、計算条件設定処理モジュール１７２４１と、拠点管理データモジュール１７２４２と、最適解検索処理モジュール１７２４３と、車輌管理データモジュール１７２４４と、道路ベクトルデータ１７２４５と、配送タスクデータモジュール１７２４６を含む。図１７では、サーバ１７２は、ネットワーク１７５（イントラネットまたはインターネット）を介して、遠隔側のクライアント１７１と協同して、図４に示す演算処理および出力処理を行う。
【００９７】
図１８は、図１７の処理／データの接続関係を示す。クライアント１７１は、まずサーバ１７２との接続を確立する。したがって、ＡＰＩ１７２７に対しＩＤ／ＰＷなどの認証処理が行われ、１：１で接続し、実行待機状態に入る。このとき、サーバ側において、クライアント１７１の専用動作のプロセス（ｐｒｏｃｅｓｓ）またはスレッド（ｔｈｒｅａｄ）を起動させることによって、複数のクライアント（例えばクライアント１７１）からの実行要求を並行に処理することができる。データ読み込み処理２１０において、クライアント１７１から拠点管理データ１７２４２、車輌管理データ１７２４４、配送タスクデータ１７１４３を読み込んでもよく、図１８に示す例のように、クライアント１０１から配送タスクデータ１７１４３を読み込んで、サーバ１７２から拠点管理データ１７２４２、車輌管理データ１７２４４を読み込んでもよい。拠点情報、車輌情報は、通常変更される頻度が低いため、メイン（ｍａｓｔｅｒ）データとしてサーバ側に設定して、データ入力処理１２２の負荷を小さくし、処理効率を向上させる。メインデータは、通常ＣＳＶ、テーブル形式、データベース形式などで記憶される。データ入力処理１７１４１の結果、配送タスクデータ１７１４３は、ネットワーク１７５を介してサーバ１７２のＡＰＩ１７２７によって入力される。
【００９８】
その後、計算条件設定処理１７２４１によって入力データ５００を生成するか、図１８のように、データ入力処理１７１４１としてサーバ１７２のＡＰＩ１７２７によって読み込む方式で、ＡＰＩ１７２７を介して拠点管理データ１７２４２を取得して図８に示す入力データ５００を生成する。すなわち、データ入力処理１７１４１によって計算条件設定処理１７２４１の一部の作業を実行することに相当する。このとき、データ５００の入力後に、計算条件設定処理１７２４１のみで混載可否の設定をすればよい。拠点間距離データ１７２３２は、道路ベクトルデータ１７２４５と拠点管理データ１７２４２を用いてサーバ１７２で生成される。また、道路ベクトルデータ１７２４５は、ＮＩＣ１７２６を介してインターネットなどの外部の地図情報提供サービスシステム１７６からオンデマンド（ｏｎ  ｄｅｍａｎｄ）方式で収集されてもよい。
【００９９】
その後、メイン演算処理ステップ２３０に相当する最適解検索処理１７２４３を実施し、生成された１つ以上の出力データ５５０をＡＰＩ１７２７経由でクライアント１７１に伝達する。配送計画出力処理１７１４２において、図３の配送計画出力２４０に相当する処理を実行し、画面などの結果の出力を行う。クライアント１７１によって出力される配送経路７００に用いられる地図は、ＮＩＣ１７１６を介して、インターネットなどの外部の地図情報提供サービス１７６からオンデマンド方式で収集されてもよい。
【０１００】
本発明は、本文に開示されている実施例に記載されている各例示的な手段およびアルゴリズムのステップと併せて、電子的ハードウェア、またはコンピュータソフトウェアと電子的ハードウェアとの組み合わせによって実現されることを、当業者が認識可能である。これらの機能がいったいハードウェア方式またはソフトウェア方式で実行されるかは、技術手段の特定の応用と設計制限条件による。当業者は、記載した機能を、各特定応用に応じて異なる方法で実現することができるが、これらの実現は、本発明の範囲を超えたものと見なされない。
【０１０１】
記載の便利と簡潔を図り、以上記載したシステム、装置および手段の具体的な作業過程について、前述した方法実施例の対応過程を参照することができ、当業者にとって明らかである。ここでは繰り返して記載しない。
【０１０２】
本願による実施例において、開示されている装置および方法が他の方式で実現可能であることは、理解されるべきである。例えば、以上記載した装置の実施例は、単に例示的なものである。例えば、上記手段の区分は、単に論理的機能の区分であり、実際に実現される際に別の区分方式がありうる。例えば、複数の手段または構成要素は組み合わせ、または別のシステムに集積され、または、一部の特徴は、無視されたり実行されなかったりする。また、ここで示しており議論した部品同士の結合や直接結合や通信接続は、インタフェースを介しており、装置または手段の間接結合または通信接続は、電気接続、機械接続または他の形式である。
【０１０３】
分離部品として説明した手段は、物理的に離間してもよく離間しなくてもよく、手段として表示された部材は、物理的手段であってもよく、ではなくてもよい。すなわち一箇所に位置するか、複数のネットワーク手段に分布されてもよい。実際の必要に応じてそのうちの一部またはすべての手段を選択して本発明の実施例の目的を実現する。
【０１０４】
また、本発明の各実施例における各機能手段は、１つの処理手段に集積してもよく、または、各手段が個別に物理的に存在してもよく、２つ以上の手段が１つの手段に集積してもよい。
【０１０５】
上記機能は、ソフトウェア機能手段の形式で実現され独立した製品として販売・使用される場合、１つのコンピュータ読取可能な記憶媒体に記憶することができる。このような理解に基づいて本発明の技術手段は実質上、または、従来技術に対し貢献した部分、または、当該技術手段の部分は、ソフトウェアプロダクトの形式であてっもよい。当該コンピュータソフトウェアプロダクトは、１つの記憶媒体に記憶され、いくつかの指令を含んで一台のコンピュータ機器（パーソナルコンピュータ、サーバ、またはネットワークデバイスなど）に本発明の各実施例に記載する方法のすべてまたは一部のステップを実行させる。上記の記憶媒体は、Ｕディスク、リムーバブルハードディスク、ＲＯＭ、ＲＡＭ、磁気ディスクまたは光ディスクなど様々なプログラムコードを記憶可能な媒体を含む。
【０１０６】
以上の記載は、本発明の具体的な実施形態に過ぎず、本発明の保護範囲は、これに限定されない。当業者が本発明の開示範囲内に容易に想到可能な変更や置換は、いずれも本発明の保護範囲にカバーされる。したがって、本発明の保護範囲は、特許請求による保護範囲を基準とする。
【図１】
2020091887.tif 000003
【図２】
2020091887.tif 000004
【図３】
2020091887.tif 000005
【図４】
2020091887.tif 000006
【図５】
2020091887.tif 000007
【図６】
2020091887.tif 000008
【図７】
2020091887.tif 000009
【図８】
2020091887.tif 000010
【図９】
2020091887.tif 000011
【図１０】
2020091887.tif 000012
【図１１】
2020091887.tif 000013
【図１２】
2020091887.tif 000014
【図１３】
2020091887.tif 000015
【図１４】
2020091887.tif 000016
【図１５】
2020091887.tif 000017
【図１６】
2020091887.tif 000018
【図１７】
2020091887.tif 000019
【図１８】
2020091887.tif 000020