メインコンテンツまでスキップ

距離比制約 (Distance Ratio Constraint)

ルートの直接性を最適化することは、運用コストと運送業者契約のバランスを取るために重要です。distance ratio constraint により、プランナーはルートが最も直接的なパスからどれだけ逸脱できるかを制御し、効率とコストの予測可能性を確保できます。

ルート計画への影響:

車両ルーティング問題 (VRP) における距離比制約は、ルートの迂回性に制限を課します。それは、車両が移動する実際の距離が、最も遠い地点までの直接距離の指定された倍数を超えないようにします。この制約は、以下のために不可欠です。

  • コスト管理: 非常に迂回的なルートを禁止することで、過度の走行距離と燃料消費を防ぎます。
  • 運送業者コンプライアンス: 多くの場合、直接距離に基づく 3PL 支払いモデルと整合し、支払人が非効率的なルーティングに助成金を出さないようにします。
  • サービス品質: 商品の移動時間を短縮し、配達の迅速化と貨物の摩耗の減少につながる可能性があります。

距離比 (Distance Ratio):

距離比は、ルートの合計実距離と、デポから最も遠い配達場所までの直接距離の比率として定義されます。

Distance Ratio=Total DistanceDirect Distance to the farthest store\text{Distance Ratio} = \frac{\text{Total Distance}}{\text{Direct Distance to the farthest store}}

比率は、すべての車両に適用される定数です。

  • 片道トリップ: 最小比率は1です。
  • 往復トリップ: 最小比率は2です(車両が戻る必要があるため)。

比率が低いと、よりタイトで直接的なルートが強制されますが、比率が高いと、中間の停留所を訪問するための迂回が多くなります。

:

物流会社が 3PL フリートを契約していると考えてください。3PL は、物流センター (DC) から最も遠いドロップオフポイントまでの「直接」距離に基づいて支払われます。ドライバーが多くの散在する停留所に立ち寄るために曲がりくねったルートをとる場合、実際の距離は 300km かもしれませんが、直接距離は 100km だけです。

制約がない場合、会社は 100km 分の価値に対して支払うかもしれませんが、300km 分の運用摩耗または時間を被る可能性があります。total_to_furthest_distance_ratio を設定することにより、会社はルートの長さが、たとえば直接距離の2.5倍を超えてはならないことを強制します。

タイトさの可視化:

ルートの「タイトさ」とは、デポと最も遠い停留所の間の直接パスにどれだけ忠実に準拠しているかを指します。

Distance Ratio Tightness

  • 比率 ~2 (タイト): ルートは非常に狭いです。車両はほぼ直接最も遠い地点まで移動して戻り、停留所はこの直接ラインの非常に近くにあります。これは距離にとっては効率的ですが、到達可能な停留所の数が制限されます。
  • 比率 ~2.5: ルートが広がり始め、直接パスから少し離れた停留所が可能になります。
  • 比率 ~3 (柔軟): ルートは広い「ダイヤモンド」形状を形成します。車両は散在する停留所を訪問するために大幅に逸脱し、より広いエリアをカバーできますが、直接距離に比べて総走行距離が増加します。
ヒント

この制約はハードリミットです。同様のソフト制約については、ルートのコンパクトさ を参照してください。

実装 (Implementation)

制約は solver_parameters 内の total_to_furthest_distance_ratio パラメータによって制御されます。制約が有効な場合、ルートが放射状の線に沿って長くなりすぎるため、最も遠い注文を実行できません。制約が緩和されると、車両はさらに遠くのドロップオフ場所まで移動できます。

Loading...

ソルバーは以下を強制します。 Total Route Distance <= ratio * Distance(Pickup, Furthest Delivery Node)

次のように構成できます。

"solver_parameters": {
"algorithm": "static",
"first_solution_strategy": 3,
"solution_limit": 100000000,
"use_local_search_metaheuristic": true,
"guided_local_search_lambda_coefficient": 0.95,
"use_tsp_opt": false,
"time_limit_ms": 600000,
"log_search": true,
"lns_time_limit_ms": 1000,
"savings_neighbors_ratio": 0.0,
"waypoints_optimization_second_phase": false,
"waypoints_solution_limit": 1000,
"total_to_furthest_distance_ratio": 2.5
}
警告

往復トリップの場合、2.0 に近い比率は非常に制限的であり、停留所が完全に整列していない場合、未割り当てのジョブが発生する可能性があります。効率と実現可能性のバランスをとるには、2.2 から 3.0 の間の値が通常、適切な出発点です。