車両稼働時間 (Vehicle working hours)
車両の 開始時間 と 終了時間 を定義することは、現実世界のロジスティクス業務を正確にモデル化するために重要です。これらのパラメータは、ドライバーの勤務シフトまたは車両の可用性ウィンドウを定義します。
計画の重要性 (Importance for Planning)
正確な稼働時間を設定することは、いくつかの理由で不可欠です。
- リソーススケジューリング: ドライバーのシフト内に収まるルートを計画することにより、フリートの効率的な利用を保証します。
- 規制遵守: 最大労働時間と必須の休憩に関する労働法を遵守するのに役立ちます。
- 運用の現実: 車両の実際の可用性を反映します(例:車両がシフト間で共有されたり、メンテナンスが必要だったりする場合があります)。
構成 (Configuration)
Logistics API (Stateful)
Integration API では、車両は通常、一括アップロード エンドポイントまたは個別に管理されます。
稼働時間を定義するには、車両オブジェクトで次のフィールドを構成します。
| フィールド | タイプ | 説明 |
|---|---|---|
start_time | string ($date-time) | オプション。車両のシフトがいつ始まるかを示すタイムスタンプ。車両はこの時間より前にタスクを実行できません。 |
end_time | string ($date-time) | オプション。車両のシフトがいつ終了するかを示すタイムスタンプ。車両は、この時間までにすべてのタスクを完了し、(該当する場合)デポに戻る必要があります。 |
ヒント
これらのタイムスタンプは、シミュレーションの start_time と end_time の範囲内になければなりません。
Vehicle object example
{
"agent_id": "vehicle-1",
"start_time": "2024-07-10T08:00:00+00:00",
"end_time": "2024-07-10T12:00:00+00:00",
...
}
Optimization API
Optimization API の車両モデル。
フィールドは機能的に同じですが、/optimize エンドポイントに送信されるペイロードの一部です。
| フィールド | タイプ | 説明 |
|---|---|---|
start_time | string | オプション。車両運用開始時刻のタイムスタンプ。提供されていない場合はモデルの動作に基づいてデフォルトになる可能性がありますが、時間制約のある問題には明示的な定義が推奨されます。 |
end_time | string | オプション。車両運用終了時刻のタイムスタンプ。車両ルートのハードカットオフを定義します。 |
Optimization payload
{
"vehicles": [
{
"agent_id": "vehicle-1",
"start_time": "2024-07-10T08:00:00+00:00",
"end_time": "2024-07-10T12:00:00+00:00",
...
}
],
...
}
注文時間枠と移動期間との関係 (Relation to Order Time Windows and Travel Durations)
車両の稼働時間は、ルートに対するハード制約として機能します。
- 注文時間枠: 顧客の注文が配達のために開いていても(例:午前8時から午後6時)、車両は、サービスが車両の特定の稼働時間 内(例:午前8時から午後12時)に実行できる場合にのみサービスを提供できます。車両のシフト外の時間枠のみを持つ注文は、その車両に割り当てることはできません。
- 移動期間: デポからの移動時間、停留 所間の移動、サービス時間、デポへの戻りを含む、ルートに必要な合計時間は、
start_timeとend_timeの間に厳密に収まる必要があります。遠隔地に到達するために必要な移動時間が車両のend_timeを超える場合、その場所は訪問できません。
プレイグラウンド (Playground)
以下のプレイグラウンドを使用して、車両稼働時間の影響を調べることができます。
この例では:
- Vehicle は 08:00 から 12:00 までのシフトを持っています。
- Order 1 には 09:00 - 10:00 の時間枠があります(稼働時間内)。
- Order 2 には 13:00 - 14:00 の時間枠があります(稼働時間外)。
Order 2 はスケジュールできない ことに注意してください。時間枠が車両の稼働時間外に完全に該当するためです。車両の end_time を 15:00 (午後3時) に延長して、Order 2 がスケジュール可能になるかどうかを確認してください!
Loading...