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

シミュレーションテンプレート

シミュレーション

は、ルート最適化セッションのオブジェクト、構成、および処理パイプラインの完全なセットを表します。また、最適化結果(車両とノード間の割り当て)も保存します。

SWAT APIは、シミュレーションオブジェクトのテンプレート化をサポートしており、毎回ゼロからシミュレーションを構築することなく、構成と事前定義されたルートの作成、維持、更新を簡素化します。事前定義されたルートとルーティングプロファイルを保存する機能により、ルートが事前に計画されている状況(ミルクランや静的ルートなど)をサポートできます。テンプレートは、シミュレーションオブジェクトのインスタンスapiを表し、たとえば、新しい運用の日に、別のシミュレーションにすばやくコピー(複製)できます。

各プロジェクトには複数のシミュレーションテンプレートを含めることができ、それぞれに、特定の日付や時刻にコピーするシミュレーションを選択するための時間ベースのルールがあります。これは、シミュレーションオブジェクトのrecurrenceフィールドによって制御され、選択した日付のシミュレーションテンプレートを選択するために使用されます。api同じ選択した時間に複数のシミュレーションテンプレートが利用可能な場合、recurrence_priorityを使用して1つを選択します。

SWAT APIは、テンプレートに基づいてシミュレーションを自動作成して予約をアップロードするための合理化されたプロセスも提供します。このプロセスにも同じルールが適用されます。api

このプロセス中に、オブジェクトの時間枠(たとえば、ノードのオープン時間、車両の稼働時間、処理パイプラインの時間枠)が適切に調整されるように、一連のビジネスルールが呼び出されます。

テンプレートからシミュレーションを作成するには、次の2つのオプションがあります。

  • apiを使用してシミュレーションを明示的に作成します
  • 予約/注文をアップロードし、そのプロセス中にシミュレーションを自動作成しますapi

時間枠調整ルール

  1. simulation.start_timeを目的の値に設定します。
  2. end_timeが明示的に指定されていない限り、simulation.end_timestart_timeとソースシミュレーションの期間の合計として計算します。

その後、次のフィールドが新しいsimulation.start_timeを基準に調整されます。

  • simulation.booking_start_time
  • simulation.booking_end_time
  • vehicle.start_time
  • vehicle.end_time
  • simulation_processor.start_time
  • simulation_processor.end_time
  • simulation_processor.vehicle_filter_expression['start_time', 'end_time'](再帰的)
  • simulation_processor.bookings_filter_expression['min_pickup_time*', 'max_pickup_time*', 'min_dropoff_time*', 'max_dropoff_time*'](再帰的)
警告

テンプレートの不正確または意図的な設定により、新しく作成されたオブジェクトのタイミングがシミュレーションのタイミングを超えて表示される可能性があります。たとえば、時間境界は車両に対して明示的に検証され、そのIDが応答で報告されます。ただし、無効な車両でシミュレーションを複製することは引き続き許可されます。