移動時間または距離で車両用ルートを最適化する
carプロファイルを使用すると、ビジネス要件に応じてルート計算モードを調整できます。これは、最適化アルゴリズムがツアー内のすべての停車地間のルートを計算する方法に影響します。次のモードを使用できます。
fast(デフォルト):道路上での時間を最小化short:走行距離を最小化
高速モード - 移動時間で最適化
fastモードでは、総移動時間を最小化することでルートを最適化します。このモードでは、さまざまな道路タイプ (たとえば、高速道路、幹線道路、住宅街の道路など) の一般的な走行速度、交通状況、制限速度などの速度情報を考慮して、現実的な移動時間を計算します。このデフォルトモードは、時間厳守の配達 (たとえば、当日配達や速達便サービス) など、ほとんどのビジネスユースケースに対応しています。
ショートモード - 距離で最適化
このモードでは、車両がツアー中に走行する総距離を最小化することでルートを最適化します。このモードでは、最適化アルゴリズムは速度に関する情報を完全に無視し、ポイント間の物理的な距離のみに着目して、車両がさまざまな道路でどれだけの速度で走行できるかを考慮せずに、その距離を最小化しようとします。このモードは、燃料消費量の削減などの要素が重要なコスト重視の運用に特に適しています (たとえば、環境規制目標の達成や、走行距離に基づくコスト削減ユースケースなど)。
注
最適化アルゴリズムでは、たとえば不要な方向転換にペナルティを課すなどして、ルートをできるだけ合理的に保つため、
shortモードでは必ずしも絶対的な最短距離が生成されるわけではありません。
自動車プロファイルモード設定を理解する
問題仕様では、次のスニペットに示すように、fleet.profilesオブジェクト内のmodeプロパティをcarプロファイル用に構成します。
{
"fleet": {
"profiles": [
{
"name": "quick_delivery_vehicle",
"type": "car",
"mode": "short"
}
]
}
}carプロファイルに対して選択したモードは、ツアー全体を通してそのプロファイルのすべてのルート検索計算に適用されます。modeプロパティを指定しない場合、最適化アルゴリズムではデフォルトでfastモードを使用します。
モードが他の最適化設定にどのように影響するかを理解する
modeプロパティはルーティングマトリックス計算を制御します (選択されたモードに応じて、より速い移動時間またはより短い距離を返します) が、最終的な最適化は次の設定に依存します。
この関係性を理解することで、矛盾した結果や予期せぬ結果を避けることができます。
車両コストにモードを合わせる
最適化アルゴリズムでは、ルート検索に関する決定を評価する際の主要な要素の一つとして車両コストを使用します。デフォルトでは、目的を指定しない場合、システムでは目的関数設定[{type: "minimizeUnassigned"}, {type: "minimizeTours"}, {type: "minimizeCost"}]を使用します 。minimizeCost目的はcosts.distanceとcosts.timeの設定に影響されます。
{
"costs": {
"distance": 0.001, // Cost per meter
"time": 0.002, // Cost per second
"fixed": 10
}
}modeをshortに設定すると、距離最適化ルートがリクエストされます。ただし、costs.timeがcost.distanceを大きく上回る場合、またはcost.distanceが0と等しい場合、最適化アルゴリズムではツアーを構築する際に時間ベースの決定を優先する可能性があります。
注
最大距離制限に違反するとペナルティを課す
excessCostsを指定すると、modeをshortに設定しても、最適化アルゴリズムが時間ベースのソリューションを優先するようになる可能性もあります。
選択したモードと結果が一致するように、costsの重みを適切に調整してください。たとえば、shortオプションを使用する場合、次のようにcosts.distanceに高い重みを、costs.timeに低い重みを割り当てます。
{
"fleet": {
"types": [{
"costs": {
"distance": 0.002, // Higher weight on distance
"time": 0.0001, // Lower weight on time
"fixed": 10
}
}],
"profiles": [{
"type": "car",
"mode": "short" // Request distance-optimized routes
}]
}
}注
個々のビジネス要件に基づいて
costsの重みを調整してください。
目的に合わせる
目的を明示的に指定する場合は、設定した目的がmodeの設定と一致していることを確認してください。たとえば、modeをfastとして指定し、さらにminimizeDistanceの目的を含めた場合、mode: "fast"は時間最適化ルートを提供しますが、minimizeDistanceは最適化アルゴリズムに距離の最小化を指示するため、modeの設定はほとんど効果がない可能性があります。これにより不一致が発生します。
問題に目的関数minimizeDurationを含めつつ、modeをshortに設定した場合も同様です。以下は、設定が一致している例です。
{
"profiles": [{"type": "car", "mode": "short"}],
"objectives": [
{"type": "minimizeUnassigned"},
{"type": "minimizeDistance"} // Aligns with short mode
]
}詳細については、「目的関数を使用する」を参照してください。
ルート最適化モードを比較する
以降のセクションでは、fastプロファイルとshortプロファイルの違いを実際に示します。比較シナリオには、同じ一連のジョブ、同じ車両、ベルリンの同じstartとendの場所を含む2つの問題が含まれています。
この比較の目的は、移動時間の最小化と距離の最小化との間のトレードオフを示すことです。fastモードでは、時間の短縮につながる場合、最適化アルゴリズムはより長い距離を選択する可能性があります (たとえば、高速道路や幹線道路を選択するなど)。逆に、shortモードでは、最適化アルゴリズムは移動時間の増加を犠牲にしてでも、より短い距離を優先します。
高速モードの問題 (デフォルト)
この問題では、ルート計算にデフォルトのfastモードを使用し、構成は以下のとおりです。
- ベルリン各地に散らばる49件の配達ジョブを1台の車両で担当する
- 車両プロファイルはデフォルトモードで
carに設定されている - 12時間シフト時間 (
8:00から20:00まで) - 車両容量は50ユニットに設定済み
- 車両はベルリンの同じ場所 (緯度:
52.531、経度:13.38461) で開始および終了 - 時間ベースのコスト (1秒あたり
0.002) と距離ベースのコスト (1メートルあたり0.001)
問題の完全な定義については、以下のスニペットを参照してください。
Click to expand/collapse the sample JSON
{
"fleet": {
"types": [
{
"profile": "car",
"amount": 1,
"capacity": [
50
],
"costs": {
"time": 0.002,
"distance": 0.001,
"fixed": 10
},
"id": "vehicle_1",
"shifts": [
{
"start": {
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": "2024-06-24T08:00:00+02:00"
},
"end": {
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": "2024-06-24T20:00:00+02:00"
}
}
]
}
],
"profiles": [
{
"name": "car",
"type": "car"
}
]
},
"plan": {
"jobs": [
{
"id": "Job_1",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_2",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_3",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679571
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_4",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_5",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_6",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.45810373923444,
"lng": 13.331808942475499
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_7",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_8",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879769
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_9",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_10",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_11",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671735
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_12",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_13",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_14",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.580380893737356,
"lng": 13.304479222218161
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_15",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.444597854004236,
"lng": 13.42729037972278
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_16",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_17",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_18",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_19",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_20",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_21",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_22",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_23",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_24",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_25",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_26",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_27",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_28",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4745,
"lng": 13.42
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_29",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_30",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_31",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_32",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681837
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_33",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_34",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_35",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.482203294624796,
"lng": 13.391214601891551
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_36",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_37",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_38",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_39",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_40",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_41",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_42",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_43",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.459450803409204,
"lng": 13.396015195980405
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_44",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_45",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_46",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_47",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_48",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_49",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
}
]
}
}高速モードのソリューション
高速モードのソリューションでは、以下の主要な統計情報が得られました。
- 総コスト:267.88
- 総走行距離:182,668メートル (≈182.7 km)
- 総所要時間:37,605秒 (≈10.4時間)
- 運転時間:22,905秒 (≈6.4時間)
- サービス時間:14,700秒 (≈4.1時間)
49個すべてのジョブが正常に割り当てられ、完了しました。移動時間を最小限に抑えるため、ルートシーケンスが最適化されました。
問題の完全なソリューションについては、以下のスニペットを参照してください。
Click to expand/collapse the sample JSON
{
"statistic": {
"cost": 267.87800000000004,
"distance": 182668,
"duration": 37605,
"times": {
"driving": 22905,
"serving": 14700,
"waiting": 0,
"stopping": 0,
"break": 0,
"intraStop": 0
},
"intraStopDistance": 0
},
"tours": [
{
"vehicleId": "vehicle_1_1",
"typeId": "vehicle_1",
"stops": [
{
"time": {
"arrival": "2024-06-24T06:00:00Z",
"departure": "2024-06-24T06:00:00Z"
},
"load": [
49
],
"activities": [
{
"jobId": "departure",
"type": "departure",
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": {
"start": "2024-06-24T06:00:00Z",
"end": "2024-06-24T06:00:00Z",
"arrival": "2024-06-24T06:00:00Z"
}
}
],
"location": {
"lat": 52.531,
"lng": 13.38461
},
"distance": 0
},
{
"time": {
"arrival": "2024-06-24T06:02:22Z",
"departure": "2024-06-24T06:07:22Z"
},
"load": [
48
],
"activities": [
{
"jobId": "Job_8",
"type": "delivery",
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879767
},
"time": {
"start": "2024-06-24T06:02:22Z",
"end": "2024-06-24T06:07:22Z",
"arrival": "2024-06-24T06:02:22Z"
}
}
],
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879767
},
"distance": 1079
},
{
"time": {
"arrival": "2024-06-24T06:10:45Z",
"departure": "2024-06-24T06:15:45Z"
},
"load": [
47
],
"activities": [
{
"jobId": "Job_24",
"type": "delivery",
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"time": {
"start": "2024-06-24T06:10:45Z",
"end": "2024-06-24T06:15:45Z",
"arrival": "2024-06-24T06:10:45Z"
}
}
],
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"distance": 2276
},
{
"time": {
"arrival": "2024-06-24T06:21:35Z",
"departure": "2024-06-24T06:26:35Z"
},
"load": [
46
],
"activities": [
{
"jobId": "Job_41",
"type": "delivery",
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"time": {
"start": "2024-06-24T06:21:35Z",
"end": "2024-06-24T06:26:35Z",
"arrival": "2024-06-24T06:21:35Z"
}
}
],
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"distance": 4500
},
{
"time": {
"arrival": "2024-06-24T06:34:07Z",
"departure": "2024-06-24T06:39:07Z"
},
"load": [
45
],
"activities": [
{
"jobId": "Job_21",
"type": "delivery",
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"time": {
"start": "2024-06-24T06:34:07Z",
"end": "2024-06-24T06:39:07Z",
"arrival": "2024-06-24T06:34:07Z"
}
}
],
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"distance": 7902
},
{
"time": {
"arrival": "2024-06-24T06:46:30Z",
"departure": "2024-06-24T06:51:30Z"
},
"load": [
44
],
"activities": [
{
"jobId": "Job_27",
"type": "delivery",
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"time": {
"start": "2024-06-24T06:46:30Z",
"end": "2024-06-24T06:51:30Z",
"arrival": "2024-06-24T06:46:30Z"
}
}
],
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"distance": 11286
},
{
"time": {
"arrival": "2024-06-24T06:55:31Z",
"departure": "2024-06-24T07:00:31Z"
},
"load": [
43
],
"activities": [
{
"jobId": "Job_45",
"type": "delivery",
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"time": {
"start": "2024-06-24T06:55:31Z",
"end": "2024-06-24T07:00:31Z",
"arrival": "2024-06-24T06:55:31Z"
}
}
],
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"distance": 12498
},
{
"time": {
"arrival": "2024-06-24T07:04:41Z",
"departure": "2024-06-24T07:09:41Z"
},
"load": [
42
],
"activities": [
{
"jobId": "Job_34",
"type": "delivery",
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"time": {
"start": "2024-06-24T07:04:41Z",
"end": "2024-06-24T07:09:41Z",
"arrival": "2024-06-24T07:04:41Z"
}
}
],
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"distance": 13648
},
{
"time": {
"arrival": "2024-06-24T07:17:07Z",
"departure": "2024-06-24T07:22:07Z"
},
"load": [
41
],
"activities": [
{
"jobId": "Job_35",
"type": "delivery",
"location": {
"lat": 52.4822032946248,
"lng": 13.391214601891551
},
"time": {
"start": "2024-06-24T07:17:07Z",
"end": "2024-06-24T07:22:07Z",
"arrival": "2024-06-24T07:17:07Z"
}
}
],
"location": {
"lat": 52.4822032946248,
"lng": 13.391214601891551
},
"distance": 15276
},
{
"time": {
"arrival": "2024-06-24T07:32:25Z",
"departure": "2024-06-24T07:37:25Z"
},
"load": [
40
],
"activities": [
{
"jobId": "Job_28",
"type": "delivery",
"location": {
"lat": 52.4745,
"lng": 13.42
},
"time": {
"start": "2024-06-24T07:32:25Z",
"end": "2024-06-24T07:37:25Z",
"arrival": "2024-06-24T07:32:25Z"
}
}
],
"location": {
"lat": 52.4745,
"lng": 13.42
},
"distance": 18483
},
{
"time": {
"arrival": "2024-06-24T07:48:06Z",
"departure": "2024-06-24T07:53:06Z"
},
"load": [
39
],
"activities": [
{
"jobId": "Job_37",
"type": "delivery",
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"time": {
"start": "2024-06-24T07:48:06Z",
"end": "2024-06-24T07:53:06Z",
"arrival": "2024-06-24T07:48:06Z"
}
}
],
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"distance": 22797
},
{
"time": {
"arrival": "2024-06-24T07:59:23Z",
"departure": "2024-06-24T08:04:23Z"
},
"load": [
38
],
"activities": [
{
"jobId": "Job_9",
"type": "delivery",
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"time": {
"start": "2024-06-24T07:59:23Z",
"end": "2024-06-24T08:04:23Z",
"arrival": "2024-06-24T07:59:23Z"
}
}
],
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"distance": 25509
},
{
"time": {
"arrival": "2024-06-24T08:14:34Z",
"departure": "2024-06-24T08:19:34Z"
},
"load": [
37
],
"activities": [
{
"jobId": "Job_13",
"type": "delivery",
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"time": {
"start": "2024-06-24T08:14:34Z",
"end": "2024-06-24T08:19:34Z",
"arrival": "2024-06-24T08:14:34Z"
}
}
],
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"distance": 27637
},
{
"time": {
"arrival": "2024-06-24T08:36:48Z",
"departure": "2024-06-24T08:41:48Z"
},
"load": [
36
],
"activities": [
{
"jobId": "Job_31",
"type": "delivery",
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"time": {
"start": "2024-06-24T08:36:48Z",
"end": "2024-06-24T08:41:48Z",
"arrival": "2024-06-24T08:36:48Z"
}
}
],
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"distance": 33122
},
{
"time": {
"arrival": "2024-06-24T08:46:42Z",
"departure": "2024-06-24T08:51:42Z"
},
"load": [
35
],
"activities": [
{
"jobId": "Job_17",
"type": "delivery",
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"time": {
"start": "2024-06-24T08:46:42Z",
"end": "2024-06-24T08:51:42Z",
"arrival": "2024-06-24T08:46:42Z"
}
}
],
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"distance": 34488
},
{
"time": {
"arrival": "2024-06-24T08:57:10Z",
"departure": "2024-06-24T09:02:10Z"
},
"load": [
34
],
"activities": [
{
"jobId": "Job_22",
"type": "delivery",
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"time": {
"start": "2024-06-24T08:57:10Z",
"end": "2024-06-24T09:02:10Z",
"arrival": "2024-06-24T08:57:10Z"
}
}
],
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"distance": 38092
},
{
"time": {
"arrival": "2024-06-24T09:17:28Z",
"departure": "2024-06-24T09:22:28Z"
},
"load": [
33
],
"activities": [
{
"jobId": "Job_23",
"type": "delivery",
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"time": {
"start": "2024-06-24T09:17:28Z",
"end": "2024-06-24T09:22:28Z",
"arrival": "2024-06-24T09:17:28Z"
}
}
],
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"distance": 46878
},
{
"time": {
"arrival": "2024-06-24T09:30:44Z",
"departure": "2024-06-24T09:35:44Z"
},
"load": [
32
],
"activities": [
{
"jobId": "Job_15",
"type": "delivery",
"location": {
"lat": 52.44459785400424,
"lng": 13.42729037972278
},
"time": {
"start": "2024-06-24T09:30:44Z",
"end": "2024-06-24T09:35:44Z",
"arrival": "2024-06-24T09:30:44Z"
}
}
],
"location": {
"lat": 52.44459785400424,
"lng": 13.42729037972278
},
"distance": 51162
},
{
"time": {
"arrival": "2024-06-24T09:43:33Z",
"departure": "2024-06-24T09:48:33Z"
},
"load": [
31
],
"activities": [
{
"jobId": "Job_4",
"type": "delivery",
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"time": {
"start": "2024-06-24T09:43:33Z",
"end": "2024-06-24T09:48:33Z",
"arrival": "2024-06-24T09:43:33Z"
}
}
],
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"distance": 55362
},
{
"time": {
"arrival": "2024-06-24T09:50:56Z",
"departure": "2024-06-24T09:55:56Z"
},
"load": [
30
],
"activities": [
{
"jobId": "Job_43",
"type": "delivery",
"location": {
"lat": 52.4594508034092,
"lng": 13.396015195980404
},
"time": {
"start": "2024-06-24T09:50:56Z",
"end": "2024-06-24T09:55:56Z",
"arrival": "2024-06-24T09:50:56Z"
}
}
],
"location": {
"lat": 52.4594508034092,
"lng": 13.396015195980404
},
"distance": 56267
},
{
"time": {
"arrival": "2024-06-24T10:03:36Z",
"departure": "2024-06-24T10:08:36Z"
},
"load": [
29
],
"activities": [
{
"jobId": "Job_12",
"type": "delivery",
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"time": {
"start": "2024-06-24T10:03:36Z",
"end": "2024-06-24T10:08:36Z",
"arrival": "2024-06-24T10:03:36Z"
}
}
],
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"distance": 60332
},
{
"time": {
"arrival": "2024-06-24T10:16:53Z",
"departure": "2024-06-24T10:21:53Z"
},
"load": [
28
],
"activities": [
{
"jobId": "Job_7",
"type": "delivery",
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"time": {
"start": "2024-06-24T10:16:53Z",
"end": "2024-06-24T10:21:53Z",
"arrival": "2024-06-24T10:16:53Z"
}
}
],
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"distance": 64640
},
{
"time": {
"arrival": "2024-06-24T10:28:04Z",
"departure": "2024-06-24T10:33:04Z"
},
"load": [
27
],
"activities": [
{
"jobId": "Job_11",
"type": "delivery",
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671736
},
"time": {
"start": "2024-06-24T10:28:04Z",
"end": "2024-06-24T10:33:04Z",
"arrival": "2024-06-24T10:28:04Z"
}
}
],
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671736
},
"distance": 67400
},
{
"time": {
"arrival": "2024-06-24T10:36:00Z",
"departure": "2024-06-24T10:41:00Z"
},
"load": [
26
],
"activities": [
{
"jobId": "Job_6",
"type": "delivery",
"location": {
"lat": 52.45810373923444,
"lng": 13.3318089424755
},
"time": {
"start": "2024-06-24T10:36:00Z",
"end": "2024-06-24T10:41:00Z",
"arrival": "2024-06-24T10:36:00Z"
}
}
],
"location": {
"lat": 52.45810373923444,
"lng": 13.3318089424755
},
"distance": 68588
},
{
"time": {
"arrival": "2024-06-24T10:51:39Z",
"departure": "2024-06-24T10:56:39Z"
},
"load": [
25
],
"activities": [
{
"jobId": "Job_38",
"type": "delivery",
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"time": {
"start": "2024-06-24T10:51:39Z",
"end": "2024-06-24T10:56:39Z",
"arrival": "2024-06-24T10:51:39Z"
}
}
],
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"distance": 75589
},
{
"time": {
"arrival": "2024-06-24T11:01:35Z",
"departure": "2024-06-24T11:06:35Z"
},
"load": [
24
],
"activities": [
{
"jobId": "Job_16",
"type": "delivery",
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"time": {
"start": "2024-06-24T11:01:35Z",
"end": "2024-06-24T11:06:35Z",
"arrival": "2024-06-24T11:01:35Z"
}
}
],
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"distance": 77323
},
{
"time": {
"arrival": "2024-06-24T11:13:49Z",
"departure": "2024-06-24T11:18:49Z"
},
"load": [
23
],
"activities": [
{
"jobId": "Job_3",
"type": "delivery",
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679573
},
"time": {
"start": "2024-06-24T11:13:49Z",
"end": "2024-06-24T11:18:49Z",
"arrival": "2024-06-24T11:13:49Z"
}
}
],
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679573
},
"distance": 80236
},
{
"time": {
"arrival": "2024-06-24T11:25:26Z",
"departure": "2024-06-24T11:30:26Z"
},
"load": [
22
],
"activities": [
{
"jobId": "Job_10",
"type": "delivery",
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"time": {
"start": "2024-06-24T11:25:26Z",
"end": "2024-06-24T11:30:26Z",
"arrival": "2024-06-24T11:25:26Z"
}
}
],
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"distance": 83129
},
{
"time": {
"arrival": "2024-06-24T11:34:42Z",
"departure": "2024-06-24T11:39:42Z"
},
"load": [
21
],
"activities": [
{
"jobId": "Job_26",
"type": "delivery",
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"time": {
"start": "2024-06-24T11:34:42Z",
"end": "2024-06-24T11:39:42Z",
"arrival": "2024-06-24T11:34:42Z"
}
}
],
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"distance": 84951
},
{
"time": {
"arrival": "2024-06-24T11:57:03Z",
"departure": "2024-06-24T12:02:03Z"
},
"load": [
20
],
"activities": [
{
"jobId": "Job_29",
"type": "delivery",
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"time": {
"start": "2024-06-24T11:57:03Z",
"end": "2024-06-24T12:02:03Z",
"arrival": "2024-06-24T11:57:03Z"
}
}
],
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"distance": 92705
},
{
"time": {
"arrival": "2024-06-24T12:14:48Z",
"departure": "2024-06-24T12:19:48Z"
},
"load": [
19
],
"activities": [
{
"jobId": "Job_47",
"type": "delivery",
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"time": {
"start": "2024-06-24T12:14:48Z",
"end": "2024-06-24T12:19:48Z",
"arrival": "2024-06-24T12:14:48Z"
}
}
],
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"distance": 97326
},
{
"time": {
"arrival": "2024-06-24T12:25:14Z",
"departure": "2024-06-24T12:30:14Z"
},
"load": [
18
],
"activities": [
{
"jobId": "Job_30",
"type": "delivery",
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"time": {
"start": "2024-06-24T12:25:14Z",
"end": "2024-06-24T12:30:14Z",
"arrival": "2024-06-24T12:25:14Z"
}
}
],
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"distance": 99578
},
{
"time": {
"arrival": "2024-06-24T12:35:39Z",
"departure": "2024-06-24T12:40:39Z"
},
"load": [
17
],
"activities": [
{
"jobId": "Job_39",
"type": "delivery",
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"time": {
"start": "2024-06-24T12:35:39Z",
"end": "2024-06-24T12:40:39Z",
"arrival": "2024-06-24T12:35:39Z"
}
}
],
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"distance": 102364
},
{
"time": {
"arrival": "2024-06-24T12:48:23Z",
"departure": "2024-06-24T12:53:23Z"
},
"load": [
16
],
"activities": [
{
"jobId": "Job_14",
"type": "delivery",
"location": {
"lat": 52.58038089373736,
"lng": 13.30447922221816
},
"time": {
"start": "2024-06-24T12:48:23Z",
"end": "2024-06-24T12:53:23Z",
"arrival": "2024-06-24T12:48:23Z"
}
}
],
"location": {
"lat": 52.58038089373736,
"lng": 13.30447922221816
},
"distance": 106156
},
{
"time": {
"arrival": "2024-06-24T13:02:18Z",
"departure": "2024-06-24T13:07:18Z"
},
"load": [
15
],
"activities": [
{
"jobId": "Job_20",
"type": "delivery",
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"time": {
"start": "2024-06-24T13:02:18Z",
"end": "2024-06-24T13:07:18Z",
"arrival": "2024-06-24T13:02:18Z"
}
}
],
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"distance": 112369
},
{
"time": {
"arrival": "2024-06-24T13:13:00Z",
"departure": "2024-06-24T13:18:00Z"
},
"load": [
14
],
"activities": [
{
"jobId": "Job_1",
"type": "delivery",
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"time": {
"start": "2024-06-24T13:13:00Z",
"end": "2024-06-24T13:18:00Z",
"arrival": "2024-06-24T13:13:00Z"
}
}
],
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"distance": 115116
},
{
"time": {
"arrival": "2024-06-24T13:24:26Z",
"departure": "2024-06-24T13:29:26Z"
},
"load": [
13
],
"activities": [
{
"jobId": "Job_19",
"type": "delivery",
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"time": {
"start": "2024-06-24T13:24:26Z",
"end": "2024-06-24T13:29:26Z",
"arrival": "2024-06-24T13:24:26Z"
}
}
],
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"distance": 119970
},
{
"time": {
"arrival": "2024-06-24T13:34:34Z",
"departure": "2024-06-24T13:39:34Z"
},
"load": [
12
],
"activities": [
{
"jobId": "Job_40",
"type": "delivery",
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"time": {
"start": "2024-06-24T13:34:34Z",
"end": "2024-06-24T13:39:34Z",
"arrival": "2024-06-24T13:34:34Z"
}
}
],
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"distance": 122690
},
{
"time": {
"arrival": "2024-06-24T13:50:21Z",
"departure": "2024-06-24T13:55:21Z"
},
"load": [
11
],
"activities": [
{
"jobId": "Job_18",
"type": "delivery",
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"time": {
"start": "2024-06-24T13:50:21Z",
"end": "2024-06-24T13:55:21Z",
"arrival": "2024-06-24T13:50:21Z"
}
}
],
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"distance": 128415
},
{
"time": {
"arrival": "2024-06-24T13:58:15Z",
"departure": "2024-06-24T14:03:15Z"
},
"load": [
10
],
"activities": [
{
"jobId": "Job_5",
"type": "delivery",
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"time": {
"start": "2024-06-24T13:58:15Z",
"end": "2024-06-24T14:03:15Z",
"arrival": "2024-06-24T13:58:15Z"
}
}
],
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"distance": 129467
},
{
"time": {
"arrival": "2024-06-24T14:08:30Z",
"departure": "2024-06-24T14:13:30Z"
},
"load": [
9
],
"activities": [
{
"jobId": "Job_2",
"type": "delivery",
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"time": {
"start": "2024-06-24T14:08:30Z",
"end": "2024-06-24T14:13:30Z",
"arrival": "2024-06-24T14:08:30Z"
}
}
],
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"distance": 131659
},
{
"time": {
"arrival": "2024-06-24T14:29:14Z",
"departure": "2024-06-24T14:34:14Z"
},
"load": [
8
],
"activities": [
{
"jobId": "Job_49",
"type": "delivery",
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"time": {
"start": "2024-06-24T14:29:14Z",
"end": "2024-06-24T14:34:14Z",
"arrival": "2024-06-24T14:29:14Z"
}
}
],
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"distance": 140902
},
{
"time": {
"arrival": "2024-06-24T14:39:51Z",
"departure": "2024-06-24T14:44:51Z"
},
"load": [
7
],
"activities": [
{
"jobId": "Job_36",
"type": "delivery",
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"time": {
"start": "2024-06-24T14:39:51Z",
"end": "2024-06-24T14:44:51Z",
"arrival": "2024-06-24T14:39:51Z"
}
}
],
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"distance": 143746
},
{
"time": {
"arrival": "2024-06-24T14:54:23Z",
"departure": "2024-06-24T14:59:23Z"
},
"load": [
6
],
"activities": [
{
"jobId": "Job_25",
"type": "delivery",
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"time": {
"start": "2024-06-24T14:54:23Z",
"end": "2024-06-24T14:59:23Z",
"arrival": "2024-06-24T14:54:23Z"
}
}
],
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"distance": 148984
},
{
"time": {
"arrival": "2024-06-24T15:03:48Z",
"departure": "2024-06-24T15:08:48Z"
},
"load": [
5
],
"activities": [
{
"jobId": "Job_42",
"type": "delivery",
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"time": {
"start": "2024-06-24T15:03:48Z",
"end": "2024-06-24T15:08:48Z",
"arrival": "2024-06-24T15:03:48Z"
}
}
],
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"distance": 150543
},
{
"time": {
"arrival": "2024-06-24T15:20:46Z",
"departure": "2024-06-24T15:25:46Z"
},
"load": [
4
],
"activities": [
{
"jobId": "Job_32",
"type": "delivery",
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681835
},
"time": {
"start": "2024-06-24T15:20:46Z",
"end": "2024-06-24T15:25:46Z",
"arrival": "2024-06-24T15:20:46Z"
}
}
],
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681835
},
"distance": 159363
},
{
"time": {
"arrival": "2024-06-24T15:33:50Z",
"departure": "2024-06-24T15:38:50Z"
},
"load": [
3
],
"activities": [
{
"jobId": "Job_48",
"type": "delivery",
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"time": {
"start": "2024-06-24T15:33:50Z",
"end": "2024-06-24T15:38:50Z",
"arrival": "2024-06-24T15:33:50Z"
}
}
],
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"distance": 165024
},
{
"time": {
"arrival": "2024-06-24T15:44:48Z",
"departure": "2024-06-24T15:49:48Z"
},
"load": [
2
],
"activities": [
{
"jobId": "Job_33",
"type": "delivery",
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"time": {
"start": "2024-06-24T15:44:48Z",
"end": "2024-06-24T15:49:48Z",
"arrival": "2024-06-24T15:44:48Z"
}
}
],
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"distance": 168895
},
{
"time": {
"arrival": "2024-06-24T15:53:38Z",
"departure": "2024-06-24T15:58:38Z"
},
"load": [
1
],
"activities": [
{
"jobId": "Job_44",
"type": "delivery",
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"time": {
"start": "2024-06-24T15:53:38Z",
"end": "2024-06-24T15:58:38Z",
"arrival": "2024-06-24T15:53:38Z"
}
}
],
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"distance": 170540
},
{
"time": {
"arrival": "2024-06-24T16:13:07Z",
"departure": "2024-06-24T16:18:07Z"
},
"load": [
0
],
"activities": [
{
"jobId": "Job_46",
"type": "delivery",
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"time": {
"start": "2024-06-24T16:13:07Z",
"end": "2024-06-24T16:18:07Z",
"arrival": "2024-06-24T16:13:07Z"
}
}
],
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"distance": 178123
},
{
"time": {
"arrival": "2024-06-24T16:26:45Z",
"departure": "2024-06-24T16:26:45Z"
},
"load": [
0
],
"activities": [
{
"jobId": "arrival",
"type": "arrival",
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": {
"start": "2024-06-24T16:26:45Z",
"end": "2024-06-24T16:26:45Z",
"arrival": "2024-06-24T16:26:45Z"
}
}
],
"location": {
"lat": 52.531,
"lng": 13.38461
},
"distance": 182668
}
],
"statistic": {
"cost": 267.87800000000004,
"distance": 182668,
"duration": 37605,
"times": {
"driving": 22905,
"serving": 14700,
"waiting": 0,
"stopping": 0,
"break": 0,
"intraStop": 0
},
"intraStopDistance": 0
},
"shiftIndex": 0
}
]
}ショートモードの問題
以下の問題はfastモードの例と同一ですが、今回はmodeプロパティがshortに設定されています。これは、最適化アルゴリズムに対して総移動距離を最小化するように指示するものであり (ただし、方向転換や合理的なルート検索も考慮に入れる)、結果として移動時間は長くなる可能性があるものの、走行距離は少なくなる可能性があります。
問題の完全な定義については、以下のスニペットを参照してください。
Click to expand/collapse the sample JSON
{
"fleet": {
"types": [
{
"profile": "car",
"amount": 1,
"capacity": [
50
],
"costs": {
"time": 0.002,
"distance": 0.001,
"fixed": 10
},
"id": "vehicle_1",
"shifts": [
{
"start": {
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": "2024-06-24T08:00:00+02:00"
},
"end": {
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": "2024-06-24T20:00:00+02:00"
}
}
]
}
],
"profiles": [
{
"name": "car",
"type": "car",
"mode": "short"
}
]
},
"plan": {
"jobs": [
{
"id": "Job_1",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_2",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_3",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679571
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_4",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_5",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_6",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.45810373923444,
"lng": 13.331808942475499
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_7",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_8",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879769
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_9",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_10",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_11",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671735
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_12",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_13",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_14",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.580380893737356,
"lng": 13.304479222218161
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_15",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.444597854004236,
"lng": 13.42729037972278
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_16",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_17",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_18",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_19",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_20",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_21",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_22",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_23",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_24",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_25",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_26",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_27",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_28",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4745,
"lng": 13.42
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_29",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_30",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_31",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_32",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681837
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_33",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_34",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_35",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.482203294624796,
"lng": 13.391214601891551
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_36",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_37",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_38",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_39",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_40",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_41",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_42",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_43",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.459450803409204,
"lng": 13.396015195980405
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_44",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_45",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_46",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_47",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_48",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_49",
"tasks": {
"deliveries": [
{
"places": [
{
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"duration": 300
}
],
"demand": [
1
]
}
]
}
}
]
}
}ショートモードのソリューション
shortモードのソリューションでは、以下の主要な統計情報が得られました。
- 総コスト:260.52
- 総走行距離:175,511メートル (≈175.5 km)
- 総所要時間:37,503秒 (≈10.4時間)
- 運転時間:22,803秒 (≈6.3時間)
- サービス時間:14,700秒 (≈4.1時間)
問題の完全なソリューションについては、以下のスニペットを参照してください。
Click to expand/collapse the sample JSON
{
"statistic": {
"cost": 260.517,
"distance": 175511,
"duration": 37503,
"times": {
"driving": 22803,
"serving": 14700,
"waiting": 0,
"stopping": 0,
"break": 0,
"intraStop": 0
},
"intraStopDistance": 0
},
"tours": [
{
"vehicleId": "vehicle_1_1",
"typeId": "vehicle_1",
"stops": [
{
"time": {
"arrival": "2024-06-24T06:00:00Z",
"departure": "2024-06-24T06:00:00Z"
},
"load": [
49
],
"activities": [
{
"jobId": "departure",
"type": "departure",
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": {
"start": "2024-06-24T06:00:00Z",
"end": "2024-06-24T06:00:00Z",
"arrival": "2024-06-24T06:00:00Z"
}
}
],
"location": {
"lat": 52.531,
"lng": 13.38461
},
"distance": 0
},
{
"time": {
"arrival": "2024-06-24T06:01:15Z",
"departure": "2024-06-24T06:06:15Z"
},
"load": [
48
],
"activities": [
{
"jobId": "Job_24",
"type": "delivery",
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"time": {
"start": "2024-06-24T06:01:15Z",
"end": "2024-06-24T06:06:15Z",
"arrival": "2024-06-24T06:01:15Z"
}
}
],
"location": {
"lat": 52.5293,
"lng": 13.38507204916371
},
"distance": 485
},
{
"time": {
"arrival": "2024-06-24T06:09:43Z",
"departure": "2024-06-24T06:14:43Z"
},
"load": [
47
],
"activities": [
{
"jobId": "Job_8",
"type": "delivery",
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879767
},
"time": {
"start": "2024-06-24T06:09:43Z",
"end": "2024-06-24T06:14:43Z",
"arrival": "2024-06-24T06:09:43Z"
}
}
],
"location": {
"lat": 52.53213114000045,
"lng": 13.373517153879767
},
"distance": 1679
},
{
"time": {
"arrival": "2024-06-24T06:20:38Z",
"departure": "2024-06-24T06:25:38Z"
},
"load": [
46
],
"activities": [
{
"jobId": "Job_10",
"type": "delivery",
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"time": {
"start": "2024-06-24T06:20:38Z",
"end": "2024-06-24T06:25:38Z",
"arrival": "2024-06-24T06:20:38Z"
}
}
],
"location": {
"lat": 52.5313,
"lng": 13.35356
},
"distance": 4551
},
{
"time": {
"arrival": "2024-06-24T06:30:00Z",
"departure": "2024-06-24T06:35:00Z"
},
"load": [
45
],
"activities": [
{
"jobId": "Job_26",
"type": "delivery",
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"time": {
"start": "2024-06-24T06:30:00Z",
"end": "2024-06-24T06:35:00Z",
"arrival": "2024-06-24T06:30:00Z"
}
}
],
"location": {
"lat": 52.53754,
"lng": 13.34152
},
"distance": 6353
},
{
"time": {
"arrival": "2024-06-24T06:41:45Z",
"departure": "2024-06-24T06:46:45Z"
},
"load": [
44
],
"activities": [
{
"jobId": "Job_3",
"type": "delivery",
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679573
},
"time": {
"start": "2024-06-24T06:41:45Z",
"end": "2024-06-24T06:46:45Z",
"arrival": "2024-06-24T06:41:45Z"
}
}
],
"location": {
"lat": 52.51635175288175,
"lng": 13.343661020679573
},
"distance": 9645
},
{
"time": {
"arrival": "2024-06-24T06:51:54Z",
"departure": "2024-06-24T06:56:54Z"
},
"load": [
43
],
"activities": [
{
"jobId": "Job_16",
"type": "delivery",
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"time": {
"start": "2024-06-24T06:51:54Z",
"end": "2024-06-24T06:56:54Z",
"arrival": "2024-06-24T06:51:54Z"
}
}
],
"location": {
"lat": 52.5102,
"lng": 13.3444
},
"distance": 11936
},
{
"time": {
"arrival": "2024-06-24T07:01:03Z",
"departure": "2024-06-24T07:06:03Z"
},
"load": [
42
],
"activities": [
{
"jobId": "Job_38",
"type": "delivery",
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"time": {
"start": "2024-06-24T07:01:03Z",
"end": "2024-06-24T07:06:03Z",
"arrival": "2024-06-24T07:01:03Z"
}
}
],
"location": {
"lat": 52.50488105730338,
"lng": 13.355333507786808
},
"distance": 13376
},
{
"time": {
"arrival": "2024-06-24T07:11:59Z",
"departure": "2024-06-24T07:16:59Z"
},
"load": [
41
],
"activities": [
{
"jobId": "Job_41",
"type": "delivery",
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"time": {
"start": "2024-06-24T07:11:59Z",
"end": "2024-06-24T07:16:59Z",
"arrival": "2024-06-24T07:11:59Z"
}
}
],
"location": {
"lat": 52.51508491755749,
"lng": 13.38
},
"distance": 16161
},
{
"time": {
"arrival": "2024-06-24T07:24:31Z",
"departure": "2024-06-24T07:29:31Z"
},
"load": [
40
],
"activities": [
{
"jobId": "Job_21",
"type": "delivery",
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"time": {
"start": "2024-06-24T07:24:31Z",
"end": "2024-06-24T07:29:31Z",
"arrival": "2024-06-24T07:24:31Z"
}
}
],
"location": {
"lat": 52.49949154428338,
"lng": 13.40857671284082
},
"distance": 19563
},
{
"time": {
"arrival": "2024-06-24T07:37:08Z",
"departure": "2024-06-24T07:42:08Z"
},
"load": [
39
],
"activities": [
{
"jobId": "Job_27",
"type": "delivery",
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"time": {
"start": "2024-06-24T07:37:08Z",
"end": "2024-06-24T07:42:08Z",
"arrival": "2024-06-24T07:37:08Z"
}
}
],
"location": {
"lat": 52.48811100200862,
"lng": 13.376
},
"distance": 22884
},
{
"time": {
"arrival": "2024-06-24T07:46:09Z",
"departure": "2024-06-24T07:51:09Z"
},
"load": [
38
],
"activities": [
{
"jobId": "Job_45",
"type": "delivery",
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"time": {
"start": "2024-06-24T07:46:09Z",
"end": "2024-06-24T07:51:09Z",
"arrival": "2024-06-24T07:46:09Z"
}
}
],
"location": {
"lat": 52.486517527979494,
"lng": 13.382057792236846
},
"distance": 24096
},
{
"time": {
"arrival": "2024-06-24T07:55:19Z",
"departure": "2024-06-24T08:00:19Z"
},
"load": [
37
],
"activities": [
{
"jobId": "Job_34",
"type": "delivery",
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"time": {
"start": "2024-06-24T07:55:19Z",
"end": "2024-06-24T08:00:19Z",
"arrival": "2024-06-24T07:55:19Z"
}
}
],
"location": {
"lat": 52.48446152479127,
"lng": 13.392004256315916
},
"distance": 25246
},
{
"time": {
"arrival": "2024-06-24T08:07:45Z",
"departure": "2024-06-24T08:12:45Z"
},
"load": [
36
],
"activities": [
{
"jobId": "Job_35",
"type": "delivery",
"location": {
"lat": 52.4822032946248,
"lng": 13.391214601891551
},
"time": {
"start": "2024-06-24T08:07:45Z",
"end": "2024-06-24T08:12:45Z",
"arrival": "2024-06-24T08:07:45Z"
}
}
],
"location": {
"lat": 52.4822032946248,
"lng": 13.391214601891551
},
"distance": 26874
},
{
"time": {
"arrival": "2024-06-24T08:23:03Z",
"departure": "2024-06-24T08:28:03Z"
},
"load": [
35
],
"activities": [
{
"jobId": "Job_28",
"type": "delivery",
"location": {
"lat": 52.4745,
"lng": 13.42
},
"time": {
"start": "2024-06-24T08:23:03Z",
"end": "2024-06-24T08:28:03Z",
"arrival": "2024-06-24T08:23:03Z"
}
}
],
"location": {
"lat": 52.4745,
"lng": 13.42
},
"distance": 30081
},
{
"time": {
"arrival": "2024-06-24T08:37:26Z",
"departure": "2024-06-24T08:42:26Z"
},
"load": [
34
],
"activities": [
{
"jobId": "Job_15",
"type": "delivery",
"location": {
"lat": 52.44459785400424,
"lng": 13.42729037972278
},
"time": {
"start": "2024-06-24T08:37:26Z",
"end": "2024-06-24T08:42:26Z",
"arrival": "2024-06-24T08:37:26Z"
}
}
],
"location": {
"lat": 52.44459785400424,
"lng": 13.42729037972278
},
"distance": 34569
},
{
"time": {
"arrival": "2024-06-24T08:50:35Z",
"departure": "2024-06-24T08:55:35Z"
},
"load": [
33
],
"activities": [
{
"jobId": "Job_23",
"type": "delivery",
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"time": {
"start": "2024-06-24T08:50:35Z",
"end": "2024-06-24T08:55:35Z",
"arrival": "2024-06-24T08:50:35Z"
}
}
],
"location": {
"lat": 52.4312,
"lng": 13.45023
},
"distance": 38880
},
{
"time": {
"arrival": "2024-06-24T09:08:51Z",
"departure": "2024-06-24T09:13:51Z"
},
"load": [
32
],
"activities": [
{
"jobId": "Job_12",
"type": "delivery",
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"time": {
"start": "2024-06-24T09:08:51Z",
"end": "2024-06-24T09:13:51Z",
"arrival": "2024-06-24T09:08:51Z"
}
}
],
"location": {
"lat": 52.4329271708958,
"lng": 13.376558539227483
},
"distance": 46485
},
{
"time": {
"arrival": "2024-06-24T09:22:08Z",
"departure": "2024-06-24T09:27:08Z"
},
"load": [
31
],
"activities": [
{
"jobId": "Job_7",
"type": "delivery",
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"time": {
"start": "2024-06-24T09:22:08Z",
"end": "2024-06-24T09:27:08Z",
"arrival": "2024-06-24T09:22:08Z"
}
}
],
"location": {
"lat": 52.439442845393685,
"lng": 13.336118100685782
},
"distance": 50793
},
{
"time": {
"arrival": "2024-06-24T09:33:19Z",
"departure": "2024-06-24T09:38:19Z"
},
"load": [
30
],
"activities": [
{
"jobId": "Job_11",
"type": "delivery",
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671736
},
"time": {
"start": "2024-06-24T09:33:19Z",
"end": "2024-06-24T09:38:19Z",
"arrival": "2024-06-24T09:33:19Z"
}
}
],
"location": {
"lat": 52.457844833248835,
"lng": 13.322525701671736
},
"distance": 53553
},
{
"time": {
"arrival": "2024-06-24T09:41:15Z",
"departure": "2024-06-24T09:46:15Z"
},
"load": [
29
],
"activities": [
{
"jobId": "Job_6",
"type": "delivery",
"location": {
"lat": 52.45810373923444,
"lng": 13.3318089424755
},
"time": {
"start": "2024-06-24T09:41:15Z",
"end": "2024-06-24T09:46:15Z",
"arrival": "2024-06-24T09:41:15Z"
}
}
],
"location": {
"lat": 52.45810373923444,
"lng": 13.3318089424755
},
"distance": 54741
},
{
"time": {
"arrival": "2024-06-24T09:55:11Z",
"departure": "2024-06-24T10:00:11Z"
},
"load": [
28
],
"activities": [
{
"jobId": "Job_43",
"type": "delivery",
"location": {
"lat": 52.4594508034092,
"lng": 13.396015195980404
},
"time": {
"start": "2024-06-24T09:55:11Z",
"end": "2024-06-24T10:00:11Z",
"arrival": "2024-06-24T09:55:11Z"
}
}
],
"location": {
"lat": 52.4594508034092,
"lng": 13.396015195980404
},
"distance": 59500
},
{
"time": {
"arrival": "2024-06-24T10:02:34Z",
"departure": "2024-06-24T10:07:34Z"
},
"load": [
27
],
"activities": [
{
"jobId": "Job_4",
"type": "delivery",
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"time": {
"start": "2024-06-24T10:02:34Z",
"end": "2024-06-24T10:07:34Z",
"arrival": "2024-06-24T10:02:34Z"
}
}
],
"location": {
"lat": 52.456,
"lng": 13.403260583257188
},
"distance": 60405
},
{
"time": {
"arrival": "2024-06-24T10:20:37Z",
"departure": "2024-06-24T10:25:37Z"
},
"load": [
26
],
"activities": [
{
"jobId": "Job_37",
"type": "delivery",
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"time": {
"start": "2024-06-24T10:20:37Z",
"end": "2024-06-24T10:25:37Z",
"arrival": "2024-06-24T10:20:37Z"
}
}
],
"location": {
"lat": 52.47651505101506,
"lng": 13.459944175857151
},
"distance": 66754
},
{
"time": {
"arrival": "2024-06-24T10:31:48Z",
"departure": "2024-06-24T10:36:48Z"
},
"load": [
25
],
"activities": [
{
"jobId": "Job_9",
"type": "delivery",
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"time": {
"start": "2024-06-24T10:31:48Z",
"end": "2024-06-24T10:36:48Z",
"arrival": "2024-06-24T10:31:48Z"
}
}
],
"location": {
"lat": 52.4823,
"lng": 13.4703
},
"distance": 69149
},
{
"time": {
"arrival": "2024-06-24T10:46:59Z",
"departure": "2024-06-24T10:51:59Z"
},
"load": [
24
],
"activities": [
{
"jobId": "Job_13",
"type": "delivery",
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"time": {
"start": "2024-06-24T10:46:59Z",
"end": "2024-06-24T10:51:59Z",
"arrival": "2024-06-24T10:46:59Z"
}
}
],
"location": {
"lat": 52.48128598928299,
"lng": 13.4944
},
"distance": 71277
},
{
"time": {
"arrival": "2024-06-24T11:06:34Z",
"departure": "2024-06-24T11:11:34Z"
},
"load": [
23
],
"activities": [
{
"jobId": "Job_22",
"type": "delivery",
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"time": {
"start": "2024-06-24T11:06:34Z",
"end": "2024-06-24T11:11:34Z",
"arrival": "2024-06-24T11:06:34Z"
}
}
],
"location": {
"lat": 52.465255531970406,
"lng": 13.511537556934355
},
"distance": 75931
},
{
"time": {
"arrival": "2024-06-24T11:19:49Z",
"departure": "2024-06-24T11:24:49Z"
},
"load": [
22
],
"activities": [
{
"jobId": "Job_31",
"type": "delivery",
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"time": {
"start": "2024-06-24T11:19:49Z",
"end": "2024-06-24T11:24:49Z",
"arrival": "2024-06-24T11:19:49Z"
}
}
],
"location": {
"lat": 52.4779,
"lng": 13.5012
},
"distance": 78634
},
{
"time": {
"arrival": "2024-06-24T11:29:43Z",
"departure": "2024-06-24T11:34:43Z"
},
"load": [
21
],
"activities": [
{
"jobId": "Job_17",
"type": "delivery",
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"time": {
"start": "2024-06-24T11:29:43Z",
"end": "2024-06-24T11:34:43Z",
"arrival": "2024-06-24T11:29:43Z"
}
}
],
"location": {
"lat": 52.48903177127663,
"lng": 13.495944342993262
},
"distance": 80000
},
{
"time": {
"arrival": "2024-06-24T11:48:45Z",
"departure": "2024-06-24T11:53:45Z"
},
"load": [
20
],
"activities": [
{
"jobId": "Job_44",
"type": "delivery",
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"time": {
"start": "2024-06-24T11:48:45Z",
"end": "2024-06-24T11:53:45Z",
"arrival": "2024-06-24T11:48:45Z"
}
}
],
"location": {
"lat": 52.54433793446157,
"lng": 13.49579242116612
},
"distance": 88137
},
{
"time": {
"arrival": "2024-06-24T11:57:44Z",
"departure": "2024-06-24T12:02:44Z"
},
"load": [
19
],
"activities": [
{
"jobId": "Job_33",
"type": "delivery",
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"time": {
"start": "2024-06-24T11:57:44Z",
"end": "2024-06-24T12:02:44Z",
"arrival": "2024-06-24T11:57:44Z"
}
}
],
"location": {
"lat": 52.55437436208552,
"lng": 13.503142187091647
},
"distance": 89550
},
{
"time": {
"arrival": "2024-06-24T12:09:16Z",
"departure": "2024-06-24T12:14:16Z"
},
"load": [
18
],
"activities": [
{
"jobId": "Job_48",
"type": "delivery",
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"time": {
"start": "2024-06-24T12:09:16Z",
"end": "2024-06-24T12:14:16Z",
"arrival": "2024-06-24T12:09:16Z"
}
}
],
"location": {
"lat": 52.56223251898173,
"lng": 13.471999398223556
},
"distance": 93547
},
{
"time": {
"arrival": "2024-06-24T12:22:09Z",
"departure": "2024-06-24T12:27:09Z"
},
"load": [
17
],
"activities": [
{
"jobId": "Job_32",
"type": "delivery",
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681835
},
"time": {
"start": "2024-06-24T12:22:09Z",
"end": "2024-06-24T12:27:09Z",
"arrival": "2024-06-24T12:22:09Z"
}
}
],
"location": {
"lat": 52.60066027234286,
"lng": 13.502741838681835
},
"distance": 99208
},
{
"time": {
"arrival": "2024-06-24T12:40:06Z",
"departure": "2024-06-24T12:45:06Z"
},
"load": [
16
],
"activities": [
{
"jobId": "Job_42",
"type": "delivery",
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"time": {
"start": "2024-06-24T12:40:06Z",
"end": "2024-06-24T12:45:06Z",
"arrival": "2024-06-24T12:40:06Z"
}
}
],
"location": {
"lat": 52.63313572894435,
"lng": 13.506488581249922
},
"distance": 108035
},
{
"time": {
"arrival": "2024-06-24T12:49:39Z",
"departure": "2024-06-24T12:54:39Z"
},
"load": [
15
],
"activities": [
{
"jobId": "Job_25",
"type": "delivery",
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"time": {
"start": "2024-06-24T12:49:39Z",
"end": "2024-06-24T12:54:39Z",
"arrival": "2024-06-24T12:49:39Z"
}
}
],
"location": {
"lat": 52.6378,
"lng": 13.48675
},
"distance": 109594
},
{
"time": {
"arrival": "2024-06-24T13:03:35Z",
"departure": "2024-06-24T13:08:35Z"
},
"load": [
14
],
"activities": [
{
"jobId": "Job_36",
"type": "delivery",
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"time": {
"start": "2024-06-24T13:03:35Z",
"end": "2024-06-24T13:08:35Z",
"arrival": "2024-06-24T13:03:35Z"
}
}
],
"location": {
"lat": 52.60842932011795,
"lng": 13.46922174529483
},
"distance": 114832
},
{
"time": {
"arrival": "2024-06-24T13:13:48Z",
"departure": "2024-06-24T13:18:48Z"
},
"load": [
13
],
"activities": [
{
"jobId": "Job_49",
"type": "delivery",
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"time": {
"start": "2024-06-24T13:13:48Z",
"end": "2024-06-24T13:18:48Z",
"arrival": "2024-06-24T13:13:48Z"
}
}
],
"location": {
"lat": 52.595251760429065,
"lng": 13.456764166098564
},
"distance": 117676
},
{
"time": {
"arrival": "2024-06-24T13:34:30Z",
"departure": "2024-06-24T13:39:30Z"
},
"load": [
12
],
"activities": [
{
"jobId": "Job_2",
"type": "delivery",
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"time": {
"start": "2024-06-24T13:34:30Z",
"end": "2024-06-24T13:39:30Z",
"arrival": "2024-06-24T13:34:30Z"
}
}
],
"location": {
"lat": 52.62738533184079,
"lng": 13.3789
},
"distance": 126505
},
{
"time": {
"arrival": "2024-06-24T13:47:43Z",
"departure": "2024-06-24T13:52:43Z"
},
"load": [
11
],
"activities": [
{
"jobId": "Job_18",
"type": "delivery",
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"time": {
"start": "2024-06-24T13:47:43Z",
"end": "2024-06-24T13:52:43Z",
"arrival": "2024-06-24T13:47:43Z"
}
}
],
"location": {
"lat": 52.62863,
"lng": 13.3621182
},
"distance": 129219
},
{
"time": {
"arrival": "2024-06-24T13:55:37Z",
"departure": "2024-06-24T14:00:37Z"
},
"load": [
10
],
"activities": [
{
"jobId": "Job_5",
"type": "delivery",
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"time": {
"start": "2024-06-24T13:55:37Z",
"end": "2024-06-24T14:00:37Z",
"arrival": "2024-06-24T13:55:37Z"
}
}
],
"location": {
"lat": 52.63256,
"lng": 13.37322
},
"distance": 130271
},
{
"time": {
"arrival": "2024-06-24T14:09:51Z",
"departure": "2024-06-24T14:14:51Z"
},
"load": [
9
],
"activities": [
{
"jobId": "Job_40",
"type": "delivery",
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"time": {
"start": "2024-06-24T14:09:51Z",
"end": "2024-06-24T14:14:51Z",
"arrival": "2024-06-24T14:09:51Z"
}
}
],
"location": {
"lat": 52.6543,
"lng": 13.39278
},
"distance": 134959
},
{
"time": {
"arrival": "2024-06-24T14:19:51Z",
"departure": "2024-06-24T14:24:51Z"
},
"load": [
8
],
"activities": [
{
"jobId": "Job_19",
"type": "delivery",
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"time": {
"start": "2024-06-24T14:19:51Z",
"end": "2024-06-24T14:24:51Z",
"arrival": "2024-06-24T14:19:51Z"
}
}
],
"location": {
"lat": 52.65831976801964,
"lng": 13.359646771531477
},
"distance": 137679
},
{
"time": {
"arrival": "2024-06-24T14:31:21Z",
"departure": "2024-06-24T14:36:21Z"
},
"load": [
7
],
"activities": [
{
"jobId": "Job_1",
"type": "delivery",
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"time": {
"start": "2024-06-24T14:31:21Z",
"end": "2024-06-24T14:36:21Z",
"arrival": "2024-06-24T14:31:21Z"
}
}
],
"location": {
"lat": 52.63329,
"lng": 13.3138
},
"distance": 142551
},
{
"time": {
"arrival": "2024-06-24T14:42:19Z",
"departure": "2024-06-24T14:47:19Z"
},
"load": [
6
],
"activities": [
{
"jobId": "Job_20",
"type": "delivery",
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"time": {
"start": "2024-06-24T14:42:19Z",
"end": "2024-06-24T14:47:19Z",
"arrival": "2024-06-24T14:42:19Z"
}
}
],
"location": {
"lat": 52.61955,
"lng": 13.29845
},
"distance": 145262
},
{
"time": {
"arrival": "2024-06-24T14:55:43Z",
"departure": "2024-06-24T15:00:43Z"
},
"load": [
5
],
"activities": [
{
"jobId": "Job_39",
"type": "delivery",
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"time": {
"start": "2024-06-24T14:55:43Z",
"end": "2024-06-24T15:00:43Z",
"arrival": "2024-06-24T14:55:43Z"
}
}
],
"location": {
"lat": 52.6029,
"lng": 13.3113
},
"distance": 148201
},
{
"time": {
"arrival": "2024-06-24T15:08:27Z",
"departure": "2024-06-24T15:13:27Z"
},
"load": [
4
],
"activities": [
{
"jobId": "Job_14",
"type": "delivery",
"location": {
"lat": 52.58038089373736,
"lng": 13.30447922221816
},
"time": {
"start": "2024-06-24T15:08:27Z",
"end": "2024-06-24T15:13:27Z",
"arrival": "2024-06-24T15:08:27Z"
}
}
],
"location": {
"lat": 52.58038089373736,
"lng": 13.30447922221816
},
"distance": 151993
},
{
"time": {
"arrival": "2024-06-24T15:20:45Z",
"departure": "2024-06-24T15:25:45Z"
},
"load": [
3
],
"activities": [
{
"jobId": "Job_30",
"type": "delivery",
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"time": {
"start": "2024-06-24T15:20:45Z",
"end": "2024-06-24T15:25:45Z",
"arrival": "2024-06-24T15:20:45Z"
}
}
],
"location": {
"lat": 52.60079217247425,
"lng": 13.339813254226156
},
"distance": 155888
},
{
"time": {
"arrival": "2024-06-24T15:31:23Z",
"departure": "2024-06-24T15:36:23Z"
},
"load": [
2
],
"activities": [
{
"jobId": "Job_47",
"type": "delivery",
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"time": {
"start": "2024-06-24T15:31:23Z",
"end": "2024-06-24T15:36:23Z",
"arrival": "2024-06-24T15:31:23Z"
}
}
],
"location": {
"lat": 52.591995183321515,
"lng": 13.36000789424169
},
"distance": 158140
},
{
"time": {
"arrival": "2024-06-24T15:48:29Z",
"departure": "2024-06-24T15:53:29Z"
},
"load": [
1
],
"activities": [
{
"jobId": "Job_29",
"type": "delivery",
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"time": {
"start": "2024-06-24T15:48:29Z",
"end": "2024-06-24T15:53:29Z",
"arrival": "2024-06-24T15:48:29Z"
}
}
],
"location": {
"lat": 52.58884270031872,
"lng": 13.352068415230912
},
"distance": 162761
},
{
"time": {
"arrival": "2024-06-24T16:11:25Z",
"departure": "2024-06-24T16:16:25Z"
},
"load": [
0
],
"activities": [
{
"jobId": "Job_46",
"type": "delivery",
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"time": {
"start": "2024-06-24T16:11:25Z",
"end": "2024-06-24T16:16:25Z",
"arrival": "2024-06-24T16:11:25Z"
}
}
],
"location": {
"lat": 52.55606147412602,
"lng": 13.41517487839967
},
"distance": 170966
},
{
"time": {
"arrival": "2024-06-24T16:25:03Z",
"departure": "2024-06-24T16:25:03Z"
},
"load": [
0
],
"activities": [
{
"jobId": "arrival",
"type": "arrival",
"location": {
"lat": 52.531,
"lng": 13.38461
},
"time": {
"start": "2024-06-24T16:25:03Z",
"end": "2024-06-24T16:25:03Z",
"arrival": "2024-06-24T16:25:03Z"
}
}
],
"location": {
"lat": 52.531,
"lng": 13.38461
},
"distance": 175511
}
],
"statistic": {
"cost": 260.517,
"distance": 175511,
"duration": 37503,
"times": {
"driving": 22803,
"serving": 14700,
"waiting": 0,
"stopping": 0,
"break": 0,
"intraStop": 0
},
"intraStopDistance": 0
},
"shiftIndex": 0
}
]
}結果の比較
以下の表は、carプロファイルにおけるfastモードとshortモードの最適化に関する主要なメトリックを比較したものです。
| メトリック | 高速モード | ショートモード | 差異 |
|---|---|---|---|
| 総コスト | 267.88 | 260.52 | -7.36 (2.7%削減) |
| 総走行距離 | 182,668メートル (182.7km) | 175,511メートル (175.5km) | -7,157メートル (-7.2km、3.9%削減) |
| 総所要時間 | 37,605秒 (10.4時間) | 37,503秒 (10.4時間) | -102秒 (-1.7分、0.3%削減) |
比較対象ツアーの主要統計データに基づくと、以下のようになります。
- ショートモードでは移動距離が7.2km短縮され、燃料消費量と走行距離に基づくコストが削減されました。
- 距離コンポーネントの減少により、総コストが2.7%減少しました。
shortモードでも総所要時間がわずかに短縮 (1.7分節約) されましたが、これはより直接的なルート検索によるものと考えられます。- どちらのモードでも、シフト制約内で49件のジョブがすべて正常に完了しました。
以下の比較は、選択されたモードに基づいて、最適化アルゴリズムがツアーのルートをどのように最適化するかを示したものです。
| 高速モード | ショートモード |
|---|---|
![]() | ![]() |
job_39とjob_14のルート検索決定に基づいて、fastモードでは、最適化アルゴリズムは車両を高速道路に沿ってより長いもののより速いルートに誘導します。対照的に、shortモードでは距離の短縮が優先されるため、時間帯や交通量によってはツアーが長くなる可能性があります。
ユースケースに適したモードを選択する
今回の比較ではshortモードの方がわずかに効率的であることが証明されましたが、fastモードはほとんどのシナリオに適しています。距離に基づくコストが時間に基づくコストを大幅に上回る場合は、shortモードを使用してください。どちらのモードが自社の具体的なビジネス要件に対してより良い結果をもたらすかを判断するために、両方のモードをテストすることを検討してください。
次のステップ
- 交通情報がモード計算にどのように影響するかについては、「交通情報モードを理解する」を参照してください。
- 両方のモードでルート設定をカスタマイズするには、「回避オプションを使用した優先ルートを使用する」を参照してください。
- コスト最適化を理解するには、「コストに合わせて旅程を最適化する」を参照してください。
- 高度な最適化コントロールについては、「特定の最適化目標に合わせて目的関数を使用する」を参照してください。
- モード間のルートの違いを視覚化するには、「旅程のルートポリラインを取得する」を参照してください。
- 詳細な
carプロファイル仕様については、「APIリファレンス」を参照してください。
26 日前の更新

