Rota Optimizasyonuna Genel Bakış bölümünde kısaca açıklandığı gibi, Gerekli tüzel kişiler olarak Model, Gönderimler ve Araçlar'dan oluşur:
- Model, tüm isteğe ilişkin ayarları ve kısıtlamaları yakalar.
Shipments
veVehicles
dahil. - Sevkiyatlar, teslim alma ve teslim alma gibi teslimatları içeren görevleri veya gerçek gönderileri
VisitRequest
teslimat. Gönderimlerin yerel ayarları ve kısıtlamaları vardır. - Araçlar araçları, sürücüleri veya personeli temsil eder. Araçlarda ayrıca şunlar da bulunur: yerel ayarlar ve kısıtlamalarla ilgilidir.
Her varlığın özellikleri, bir optimizasyon probleminin ayrıntılara dikkat edin. Model genelinde kısıtlamalar, tüm gönderimler ve araçlar, gönderimlerde ise kısıtlamalar ve özellikler tek bir sevkiyat veya araca özgü olması gerekir.
Her mesaj türüyle ilgili tüm belgeler için referans belgelere göz atın
ShipmentModel
(REST, gRPC), Shipment
(REST, gRPC), için
ve Vehicle
(REST, gRPC) mesajları.
OptimizeToursRequest
tesis
Üst düzey OptimizeToursRequest
mesajının yaygın olarak kullanılan bazı özellikleri
(REST, gRPC) şunları içerir:
searchMode
, karşılayan ilk çözümün döndürülüp döndürülmeyeceğini belirtir veya bir küme içinde olası en iyi çözümü bulmak için belirlemelisiniz.considerRoadTraffic
, canlı trafiğin kullanılıp kullanılmayacağını belirler tahmini için çok çeşitli araçlar sunar.populateTransitionPolylines
, rota çoklu çizgilerinin yanıt olarak geri döndü.
Model özellikleri
ShipmentModel
mesajının yaygın olarak kullanılan bazı özellikleri (REST,
gRPC) şunları içerir:
globalStartTime
, tüm rotalardaki rotaların en erken başlangıç zamanını gösterir araçlar ve gönderiler. Hiçbir araç ilk geçişini başlatamaz gönderim ücreti var.globalEndTime
, tüm araçlardaki rotaların en son bitiş zamanını gösterir ve sevkiyatlar. Atanan tüm gönderimler ve geçişler tamamlanmış olmalıdır kontrol edin.
Gönderim özellikleri
Shipment
mesajının yaygın olarak kullanılan bazı özellikleri (REST, gRPC)
şunlardır:
pickups[]
vedeliveries[]
, kargonun teslim alınabileceği yerleri temsil eder veya işten vazgeçti. Hempickups[]
hem dedeliveries[]
mülkleriVisitRequest
mesajı (REST, gRPC).loadDemands
, aracın bir görevi tamamlaması için gereken yükü gönderim. Araçlar karşılık gelenload_limits
(REST, gRPC) özelliği, bir aracın tek seferde ne kadar yük barındırabileceğini gösterir. Yükleme Talepleri ve Sınırları bölümünde yükleme hakkında daha fazla bilgi edinebilirsiniz.penalty_cost
, bir gönderinin atlanması durumunda tahakkuk eden maliyeti temsil eder. Okunanlar Maliyet Modeli Parametreleri bölümünde maliyet hakkında daha fazla bilgi edinebilirsiniz.
Araç özellikleri
Vehicle
mesajının yaygın olarak kullanılan bazı özellikleri (REST, gRPC)
şunlardır:
startLocation
, bir aracın rotasına başlaması gereken yeri temsil eder. Bu özelliği isteğe bağlıdır. Belirtilmezse, aracın rotası ilk atanan sevkiyatın konumunu belirler.endLocation
, bir aracın rotasını tamamlaması gereken yeri temsil eder. Bu mülk isteğe bağlıdır. Belirtilmezse, aracın rotası şu konumda sona erer: ve atamanın nasıl yapılacağını göstereceğim.startTimeWindows[]
, bir aracın rotasını başlatabileceği zamanı belirtir. Bu özelliği isteğe bağlıdır.endTimeWindows[]
, bir aracın rotasının ne zaman başlatılabileceğini ve sonlandırılabileceğini belirtir. Her iki özellik de isteğe bağlıdır.loadLimits
, aracın sevkiyatları karşılayacak kapasiteyi temsil eder yüksek bir değere sahip olmalıdır. Yükleme Talepleri ve Sınırlar.
JSON biçiminde eksiksiz bir örnek istek aşağıdaki gibi görünür:
{
"model": {
"shipments": [
{
"pickups": [
{
"arrivalLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
}
}
],
"deliveries": [
{
"arrivalLocation": {
"latitude": 37.79581,
"longitude": -122.4218856
}
}
]
}
],
"vehicles": [
{
"startLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
},
"endLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
},
"costPerKilometer": 1.0
}
],
"globalStartTime": "2024-02-13T00:00:00.000Z",
"globalEndTime": "2024-02-14T06:00:00.000Z"
}
}
Hem OptimizeTours
hem de BatchOptimizeTours
aşağıdaki gibi istek mesajlarını kullanır:
ancak farklı şekillerde ele alacağız. Rota optimizasyonu yapmadan önce
isteğinde bulunmak için iki yöntem arasındaki farkı anlamak önemlidir: