Logistics API 設定 (Logistics API Settings)
simulation.data.logistics_api_settings オブジェクトを使用すると、Stateful API を使用してシミュレーションを実行する際の最適化プロセスを微調整できます。これらの設定は、ソルバー、モデル制約、および計算動作のさまざまな側面を制御します。
一般設定 (General Settings)
これらの設定は、ロジスティクスシミュレーション構成に直接適用されます。
| パラメータ | タイプ | 説明 | デフォルト |
|---|---|---|---|
pipeline_type | string | 計算パイプラインを定義します。simple_one_stage: 単一のステートレス API 呼び出し。two_stages: 推定とそれに続く正確な計算。 | - |
first_solution_strategies | array | 最適化実行を実行するために同時に使用される初期解戦略(整数)のリスト。 | - |
only_pdp | boolean | true の場合、ピックアップおよびドロップオフ問題 (PDP) モードのみを使用します。false の場合、CVRPTW をデフォルトとします。 | - |
trip_cost | number | 各トリップに割り当てられるコスト。 | - |
max_pickup_slack | integer | ピックアップノードの最大許容スラック時間(秒単位)。 | - |
max_dropoff_slack | integer | ドロップオフノードの最大許容スラック時間(秒単位)。 | - |
use_path_equalizer | boolean | パスイコライザーを有効にして、車両間で割り当てをより均等に分散します。 | - |
path_equalizer_weight | integer | パスイコライザー目的の重み。 | - |
average_travel_duration_to_node | integer | ノードへの推定平均移動時間(秒単位)。 | - |
allow_upload_after_simulation_start_time | boolean | true の場合、シミュレーション開始後の予約更新(例:ライブ挿入)を許可します。 | false |
should_set_max_slack_start_location_zero | boolean | 開始場所の最大スラックをゼロに設定するかどうか。 | - |
is_pickup_end_of_trip | boolean | true の場合、ピックアップノードをトリップの終了として扱います(トリップカウント制約用)。 | - |
is_dropoff_end_of_trip | boolean | true の場合、ドロップオフノードをトリップの終了として扱います(トリップカウント制約用)。 | - |
stateless_api_server | string | シミュレーションに使用するカスタムステートレス API サーバーの URL。 | - |
should_lock_next_stop_if_vehicle_live | boolean | 再最適化中のドライバーの混乱を防ぐために、ライブ車両の次の停止をロックします。 | true |
should_optimize_fail_to_board_bookings | boolean | true の場合、ピックアップに失敗した注文を最適化の試みに含めます。 | true |
truckban_enabled | boolean | トラック禁止制約を有効または無効にします。 | - |
truckban_buffer_time_windows | integer | トラック禁止の時間枠を調整する際のバッファ時間(秒単位)。 | - |
slack_cost | number | すべてのノードのスラック時間に適用されるコスト。 | - |
logistics_optimize_slack | boolean | true の場合、ソルバーはロジスティクスモードでスラックを最適化します。 | - |
path_constraints_mode | string | パス制約のモード。 | - |
node_grouping_enabled | boolean | ノードグループ化ロジックをアクティブにします。 | - |
clear_cumulative_limitations | boolean | true に設定すると、累積制限をクリアします。 | - |
manual_edit_api_minimize_slack | boolean | 手動編集 API 操作中にスラックを最小化しようとします。 | - |
manual_edit_allow_vehicle_late | boolean | 手動編集中に車両の遅延を許可します。 | true |
manual_edit_lateness_penalty_coefficient | integer | 手動編集における遅延のペナルティ係数。 | 10 |
cvb_fleetmin_time_limit | integer | CVB フリート最小化の時間制限。 | - |
cvb_fleetmin_solutions_limit | integer | CVB フリート最小化のソリューション制限。 | - |
cvb_fleetmin_iterations_limit | integer | CVB フリート最小化の反復制限。 | - |
use_cvb_local_search_operator | boolean | CVB ローカル検索演算子を使用します。 | - |
cvb_local_search_iterations_limit | integer | CVB ローカル検索の反復制限。 | - |
geofence_definition_strategy | object | ジオフェンスを定義するための戦略。 | - |
geofence_vehicle_allocation_strategy | object | 車両をジオフェンスに割り当てるための戦略 (STRICT または FLEXIBLE)。 | - |
stateless_api_login | string | カスタムステートレス API サーバーのログイン。 | - |
stateless_api_password | string | カスタムステートレス API サーバーのパスワード。 | - |
truckban_strategy | object | トラック禁止を処理するための戦略。 | - |
booking_order_prioritization | object | 予約注文の優先順位付けのための構成。 | - |
node_grouping_capacity_strategy | object | ノードグループ化容量要件の戦略。 | - |
manual_edit_api_vehicle_logistics_optimize_slack | boolean | 手動編集 API がスラックを最適化するかどうか。 | - |
manual_edit_api_use_vehicle_start_time | boolean | 手動編集に車両開始時間を使用します。 | - |
manual_edit_api_solver_kind | string | 手動編集 API のソルバーの種類(デフォルト:LOCAL)。 | LOCAL |
manual_edit_finalization_type_pickups | string | 手動編集におけるピックアップノードの確定タイプ。 | - |
manual_edit_finalization_type_dropoffs | string | 手動編集におけるドロップオフノードの確定タイプ。 | - |
manual_edit_max_possible_lateness | integer | 手動編集における最大可能な遅延。 | - |
manual_edit_optimize_quantity | string | 手動編集の最適化数量。 | - |
manual_edit_slack_cost_factor | number | 手動編集のスラックコスト係数。 | - |
manual_edit_allow_cvrptw_conversion | boolean | シミュレーションでの手動編集中に CVRPTW モードと注文グループ化を有効にします。アクティブな場合、手動計画アクションは CVRPTW の実現可能性(同じピックアップ場所と時間枠)の最適化チェックをトリガーします。実現可能な場合、複数の注文が単一のノードに変換されます。同様に、重複する時間枠を持つ同じ場所でのドロップオフは、単一のアクションに統合されます(容量制約を無視)。これにより、トリップに単一のピックアップと統合されたドロップオフが含まれ、トリップごとに各場所を1回だけ訪問するようにすることで、手動計画が合理化されます。 | false |
manual_edit_try_strict_time_windows_request | boolean | 時間枠の制約を緩める前に、手動編集中に時間枠を厳密に強制しようとします。manual_edit_allow_vehicle_late を true に設定して組み合わせて使用する必要があります。 | false |
route_cost_modification_primary | object | プライマリルートエンジンのルートコスト変更。 | - |
route_cost_modification_secondary | object | セカンダリルートエンジンのルートコスト変更。 | - |
finalization_type_pickups | string | ピックアップのデフォルトの確定タイプを上書きします。min または max にすることができます。 | min |
finalization_type_dropoffs | string | ドロップオフのデフォルトの確定タイプを上書きします。min または max にすることができます。 | min |
enable_time_windows_adjustment | boolean | operations_locations から生成されたノードの時間枠調整を有効にします。これにより、場所の設定の open_ts_offset および close_ts_offset 値を使用してノードの時間枠を変更できます。 | false |
time_windows_adjustment_strategy | string | 時間枠調整の戦略を定義します。現在、サポートされている唯一の値は DROPOFF_FIXED_CLOSE_TS_OFFSET です。この戦略では、close_ts_offset(秒)がノードの元の終了時間から減算され、開始時間より前にならないようにします:new_close_time = max(original_open_time, original_close_time - close_ts_offset)。open_ts_offset は現在この戦略では使用されていません。現時点では open_ts の変更はサポートされていません。 | DROPOFF_FIXED_CLOSE_TS_OFFSET |
ソルバーパラメータ (Solver Parameters)
これらのパラメータは、基礎 となる VRP ソルバーの動作を制御します。通常、専門家がパフォーマンスを調整するために使用します。
| パラメータ | タイプ | 説明 | デフォルト |
|---|---|---|---|
algorithm | string | ソルバーアルゴリズム:static(デフォルト)または dynamic(リアルタイム/オンデマンド用)。 | static |
first_solution_strategy | integer | 初期解を見つけるために使用される戦略。 | 0 |
solution_limit | number | 検索中に生成するソリューションの最大数。 | 10000000 |
time_limit_ms | number | 検索に許可される最大時間(ミリ秒単位)。 | 10000000 |
use_local_search_metaheuristic | boolean | ローカル検索メタヒューリスティクスを有効にします。 | false |
guided_local_search_lambda_coefficient | number | ガイド付きローカル検索手順のパラメータ。 | 0.1 |
use_tsp_opt | boolean | 巡回セールスマン問題 (TSP) の最適化を有効にします。 | false |
log_search | boolean | 検索ログを有効にします。 | false |
lns_time_limit_ms | number | 大規模近傍探索 (LNS) 完了検索の時間制限。 | 1000 |
savings_neighbors_ratio | number | 貯蓄近傍の比率。 | 0 |
waypoints_optimization_second_phase | boolean | prebook モードのウェイポイント最適化の第2フェーズを有効にします。 | false |
optimization_step | number | ローカル検索の最小改善ステップ。 | 1 |
use_all_local_search_operators | boolean | 利用可能なすべてのローカル検索演算子を使用します。 | false |
use_depth_first_search | boolean | ローカル検索の代わりに深さ優先検索を使用します。 | false |
auto_calculate_time_limit_enabled | boolean | ソルバー時間制限の自動計算を有効または無効にします。 | null |
auto_calculate_time_limit_params | object | ソルバー時間制限の自動計算のためのパラメータ。詳細については ソルバー時間の自動計算 を参照してください。 | null |
モデルパラメータ (Model Parameters)
これらのパラメータは、シミュレーションモデルの一般的なメタデータと制約を定義します。
| パラメータ | タイプ | 説明 | デフォルト |
|---|---|---|---|
vehicle_costs | number | 車両ごとのコスト。コストが高いと、追加の車両の使用が抑制される可能性があります。 | 0 |
booking_penalty | number | 訪問をドロップした(未提供の予約)場合のペナルティ。目的関数に追加されます。 | 10000 |
mixed_fleet | boolean | 車両が異なるルーティングプロファイルを使用する場合は true に設定します。 | false |
use_walking_time_to_reduce_time_windows | boolean | 時間枠を調整するために徒歩時間を使用します。 | false |
time_dependent_transit | boolean | true の場合、最適化の目標は常に total_distance です。 | false |
optimize_quantity | string | 最適化の目標:total_time(デフォルト)または total_distance。 | total_time |
max_slack | number | 最大許容スラック(秒単位)。 | null |
use_lifo_order_check | boolean | LIFO(後入れ先出し)注文制約を有効にします。 | false |
lifo_order_check_on_all_vehicles | boolean | LIFO チェックをすべての車両に適用します。 | true |
group_crossing_penalty | number | 厳密に排他的ではないグループを横断する場合のペナルティ。 | - |
strictly_exclusive_groups | array | 同じ車両に混載できないグループのリスト。 | - |
mutually_exclusive_groups | array | 相互に排他的なグループペアのリスト(ソフトまたはハード制約)。 | - |
compound_zones | array | 入退室時間ペナルティのあるゾーンの定義。 | - |
cumulative_limitations | array | デポで同時にサービスを受ける車両数の制限。 | - |
route_compactness | object | ポリリニアコストモデルを使用してルートのコンパクトさを強制するための設定。 | - |
vehicle_amortized_linear_cost_factor | integer | 償却されたデフォルト車両コストの線形部分。 | - |
vehicle_amortized_quadratic_cost_factor | integer | 償却されたデフォルト車両コストの二次部分。 | - |
groups_order | object | グループの順序/優先順位を定義する辞書。 | - |
計算パラメータ (Calculation Parameters)
これらのパラメータは、計算の実行方法と制約の処理方法を制御します。
| パラメータ | タイプ | 説明 | デフォルト |
|---|---|---|---|
scheduling_mode | string | prebook (PDP) または prebook_cvrptw (CVRPTW)。CVRPTW は、シングルピックアップ/DC シナリオ用です。 | - |
calculations_mode | string | sync(結果をすぐに返す)または async(ジョブ ID を返す)。 | - |
use_vehicles_nodes | boolean | 車両を表すノードの使用を有効または無効にします。 | - |
allow_vehicle_late | boolean | ルートを改善するために、時間制約を緩和し て遅延到着を許可します。 | false |
vehicle_late_penalty_coefficient | integer | allow_vehicle_late が true の場合の遅延のペナルティの重み。 | - |
max_possible_lateness | integer | 最大許容遅延(秒単位)。 | null |
dropoff_earlier | boolean | true の場合、ループを避けるためにドロップオフを早めにスケジュールしようとします。 | false |
pickup_later | boolean | true の場合、ループを避けるためにピックアップを遅めにスケジュールしようとします。 | false |