問題タブ [vehicle-routing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 車両間の最大距離を最小限に抑える
車両間の最大距離を最小限に抑えるために、スパン コスト係数を使用することをお勧めします。
https://developers.google.com/optimization/routing/vrp#exampleから取得
これは、費用関数が距離 (つまり、燃料の使用量) ではなく移動時間に基づいており、目標が最後の車両をできるだけ早くデポに戻すことである場合に特に役立ちます。
Q1: 目的関数を車両間の最大コスト (総コストとグローバル スパンの合計ではない) に定義できますか?
これが不可能な場合、私はその理由が何であるか疑問に思っています。A) そのような制約を実装するのは難しい、または B) (スパン制約を使用する場合と比較して) 悪い解決策をもたらす暗黙の欠点が欠けていると想像できます。
グローバル スパン制約を 1000 に設定したとしても (しかし、それはどういう意味ですか?)、すべての車両が使用されていることを保証するものではないことに気付きました。より多くの車両を使用することで、そのソリューションを改善できるはずですよね?
編集: これは最小限の作業例です。20 か所の停留所で 5 台の車両を利用できます。停留所間の移動時間を 1 時間と定義しているため、最適な解決策は、各ルートに 4 つの停留所が含まれ、すべての車両が 4 時間後に車両基地に戻ることです。グローバル スパンの制約がなければ、1 台の車両が合計 20 時間ですべての作業を行います。グローバル スパン制約 (係数 = 1000) を使用すると、2 台の車両がそれぞれ 10 か所の停留所にサービスを提供します。
ソリューション プロッターの出力:
車両 0 のルート: 0 -> 11 -> 12 -> 13 -> 14 -> 15 -> 16 -> 17 -> 18 -> 19 -> 0 ルート 0 の所要時間: 10 時間
車両 1 のルート: 0 -> 10 -> 0 ルート 1 の所要時間: 2 時間
車両 2 のルート: 0 -> 0 ルート 2 の所要時間: 1 時間
車両 3 のルート: 0 -> 0 ルート 3 の所要時間: 1 時間
車両 4 のルート: 0 -> 9 -> 8 -> 7 -> 6 -> 5 -> 4 -> 3 -> 2 -> 1 -> 0 ルート 4 の所要時間: 10 時間
全ルートの合計所要時間: 24 時間
or-tools - SetGlobalSpanCoefficient メソッド Google またはツール
配車ルートの問題に Google またはツールを使用しようとしています。ここにリンクがあります https://developers.google.com/optimization/routing/vrp . Google でコードを使用しようとしていますが、このコードに遭遇すると:
最後の命令の意味がわからない
この関数の目的と引数の意味は何ですか? なぜ「100」があるのですか?
python - 時間枠の制約と容量の制約の両方を VRP に追加するにはどうすればよいですか?
Google の OR Tools を使用して VRP の作業を開始したばかりです。VRP に複数の制約を課したいと考えています。つまり、時間枠の制約または容量の制約の 1 つだけを追加するのではなく、コストを考慮せずに両方の制約を設定して問題を解決したいと考えています。これを達成する方法は?