簡體   English   中英

如何將服務時間約束添加到具有時間窗口約束的車輛路徑問題

[英]How to add a servicing time constraint to a vehicle routing problem with time window constraints

我正在構建一個旅游規划器。 該旅游計划者將獲得所有地點的行程、所有地點的開放和關閉時間以及每個地點的停留/處理時間的旅行時間矩陣。 我正在使用 Google 的 OR 工具來解決問題

我已經成功地添加了時間窗口約束,但無法向求解器添加停留/處理時間約束。 google OR 工具上的文檔顯示了如何解決具有時間窗口約束的車輛路線問題,但沒有提及我如何向該問題添加更多約束。

到目前為止,我一直在關注本教程。 https://developers.google.com/optimization/routing/vrptw

規划器的預期輸出應考慮上述所有三個時間限制,即開放時間、關閉時間和停留/處理時間

這其實很簡單。 由於停留時間/處理時間僅取決於目標節點,因此可以將其直接添加到用於解決問題的時間矩陣中。 對於 N*N 時間矩陣(其中 N 是問題中的節點數)和 1*N 停留時間矩陣,必須將停留時間矩陣添加到時間矩陣的每一行以獲得包含兩者的矩陣時間矩陣和停留時間矩陣。 把這個留在這里給可能面臨同樣問題的任何人。

您的公交回調應返回服務時間和行程時間的總和。 transit(i, j) == service_time(i) + travel_time(i, j)

如果您的服務時間取決於車輛,您可以為每種車輛類型注冊一個公交回調,然后使用AddDimension()重載,它采用公交回調索引數組。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM