ルートへのライブ挿入 (Live insertion into the route)
ライブ・ルート挿入:オンザフライでのロジスティクスの適応
ライブルート挿入とは、車両が既に出発し、事前に計画されたシーケンスの実行を開始した後に、車両のルートに新しいピックアップおよび/または配達ストップを追加する動的なプロセスを指します。これは通常、車両が最初のピックアップを完了したが、それらのアイテムをまだ配達していない場合に発生します。
主な課題は、車両の現在位置、利用可能な容量(すでに搭載されているアイテムを考慮)、新しいストップと既存のストップの時間枠などの重要な制約を尊重し、ルート全体が効率的で実行可能であることを保証しながら、新しい注文を残りのストップにシームレスに統合することです。
具体的な運用ユースケース:
-
即日 / オンデマンド宅配便サービス: 地域の宅配便車両がすでに配達を行っている後に、顧客が緊急の注文(書類、薬局の商品、小売商品など)を行います。ライブ挿入により、ディスパッチャーは、近接性、容量、既存のスケジュールに基づいて、新しいピックアップ/配達をアクティブな宅配便のルートに追加できるかどうかを評価でき、不必要に別の車両を派遣することなく応答性を最大化できます。
-
緊急医療または部品配送: 病院が特定の医療用品を緊急に必要としているか、技術者が緊急修理のために重要なスペアパーツを必要としているときに、そのようなアイテムを扱う配送車両がすでに途中にあります。ライブ挿入により、この優先度の高いストップを動的に追加でき、車両を少し迂回させる可能性がありますが、すでに現場にいる車両を活用して、次の定期実行を待つよりも迅速な配達を保証します。
-
動的リバースロジスティ クス(緊急返品): ビジネス顧客が高価値の返品アイテムの緊急ピックアップを必要としています。一部の配達を完了した後(ただし、戻るかすべてのストップを終了する前)に容量のある配送車両が近くにある場合、返品ピックアップをそのルートに挿入でき、資産回収速度と顧客サービスを向上させることができます。
フリート車両は、ライブ挿入モデルを使用して、すべての制約を考慮して、特定の注文に最適な車両を選択できます。たとえば、以下の車両ラベル、車両容量、および時間枠が制約として使用されます。さらに車両を追加するには、以下の例を使用して、vehicles 配列内で追加の各車両を個別に構成するだけです。
SWAT API での実装 (Implementation in the SWAT API)
Optimization (別名 Stateless) API は、ライブ挿入をサポートしています。いくつかの特別な設定を使用して、この動作をモデル化できます。
ライブ挿入(または新しい予約の車両への挿入)を実装するために必要な主な違い:
- 車両は移動しており、リクエストの時点で最適化が行われるため、車両の位置を考慮し、特定の車両に割り当てる必要がある
vehicle_positionノードタイプを使用してアルゴリズムに送信する必要があります。 - 一部のノードはすでに完了している可能性があり、これは車両の現在の利用可能容量に影響を与えるため、関連する車両に添付し、
completed_nodesフィールドで送信する必要があります。 - 一部のノードは、以前の最適化でルートとして車両にすでに事前割り当てされている可能性があり、それらも関連する車両に添付し、
assigned_nodesフィールドで送信する必要があります。 - また、車両には、現在の
vehicle_positionノードを割り当て、必要に応じて車両の終了位置(車両がジョブを終了する必要があるノード)を割り当てることにより、partial_routeに「固定の」交渉不可能な制約を設定する必要があります。