Route Optimization API'nin temel amacı, en düşük maliyetli rotaları bulmaktır. Bu nedenle maliyet modeli, rota optimizasyonunun ana etkenidir.
Maliyet modeli; genel, araç ve gönderi maliyetlerini belirten bir dizi özelliktir.
Maliyet modeli özellikleri aşağıdaki optimizasyon hedeflerini destekler:
- Verimli araç atamaları ve rotalar
- Uygun maliyetli teslim alma ve teslimat süreleri
- Kritik gönderilerin önceliklendirilmesi
Yapı
Diyagramda gösterildiği gibi, maliyet modeli özellikleri aşağıdaki şekilde yapılandırılmıştır:
Shipment,penaltyCostözelliğini içerir.Vehicleaşağıdaki özellikleri içerir:
Bu dokümanda yalnızca temel maliyet modeli parametreleri vurgulanmaktadır. Maliyet parametrelerinin tamamı için referans belgelerine bakın.
Essentials kontrol listesi
Aşağıdaki yapılacaklar listesinde, maliyetle ilgili olası hataları önleyen temel bilgiler açıklanmaktadır. Bu liste, isteğinizi doğrulamanıza ve yanıtınızla ilgili sorunları gidermenize yardımcı olabilir.
Özellikler
Aşağıdaki tabloda maliyet modeli özellikleri listelenmekte ve açıklanmaktadır.
| Ebeveyn | Mülk adı | Tesis türü | Maliyet/ | Tesis açıklaması |
|---|---|---|---|---|
Shipment |
penaltyCost |
sayı | Atlanan gönderim | Gönderimi atlamanın maliyeti. API, bir sevkiyatı tamamlamanın maliyeti ceza maliyetini aştığında sevkiyatı atlar.
|
Vehicle |
fixedCost |
sayı | Gönderim | Bu araç bir gönderiyi taşımak için kullanılıyorsa uygulanan sabit maliyet. |
costPerHour |
sayı | Saat | Toplu taşıma, bekleme, ziyaret ve mola süreleri dahil olmak üzere bir aracın saatlik işletme maliyeti. Bu maliyet arttıkça optimize edici, en kısa rotalar olmasa da daha hızlı rotalar bulmaya çalışır. Bu özellik, basitliği ve eksiksizliği nedeniyle araç başına maliyet için etkili bir bağımsız özellik olabilir. |
|
costPerKilometer |
sayı | Kilometre | Aracın katettiği kilometre başına maliyet. Bu maliyet, yakıt maliyetlerini veya amorti edilmiş araç bakım maliyetlerini temsil edebilir. | |
costPerTraveledHour |
sayı | Saat | Bekleme, ziyaret ve mola süreleri hariç olmak üzere, yalnızca transit halindeyken saat başına araç kullanma maliyeti. Bu ayar, daha kısa rotalar yerine daha hızlı seyahat rotalarına öncelik verir. |
Örnekler
Bu bölümde üç tür örnek ele alınmaktadır:
- Maliyet modeli özelliklerinin yapısını gösteren kod örnekleri.
- Maliyet modeli özelliklerini kullanarak işletme hedefine ulaşmanın bir yolunu gösteren örnek senaryo.
- Örnek senaryoda ayarlanan değerleri içeren istek örneği.
Kod örnekleri
Aşağıdaki kod örneğinde, Shipment içindeki maliyet modeli özelliklerinin yapısı gösterilmektedir:
{ "model": { "shipments": [ ... { "penaltyCost": PENALTY_COST } ], "vehicles": [ ... ] } }
Aşağıdaki kod örneğinde, Vehicle içindeki maliyet modeli özelliklerinin yapısı gösterilmektedir:
{ "model": { "shipments": [ ... ], "vehicles": [ ... { "fixedCost": FIXED_COST, "costPerKilometer": KILOMETER_COST, "costPerHour": HOUR_COST, "costPerTraveledHour": TRAVELED_HOUR_COST } ] } }
Örnek senaryo
Bu bölümde, köpekler için kreş hizmeti veren bir işletmenizin olduğu senaryo açıklanmaktadır. Köpekleri evlerinden almak için kullandığınız kamyonun rotasını optimize ediyorsunuz. Bu senaryoda, optimize edicinin rota sağlarken köpekleri alma ve araç işlemleriyle ilgili maliyetleri hesaba katmasını istiyorsunuz.
Bu örnekte bir maliyet birimi 1 doları temsil etmektedir. Bu, isteğinizdeki maliyet modeli özellik değerlerinin aşağıdaki gibi olduğu anlamına gelir:
| Mülk | Değer | Senaryo |
|---|---|---|
penaltyCost |
10 | Müşterilerinizin köpeklerini planlanan günde almamaları durumunda uygulayacağınız cezayı temsil eder. Köpeği planlanan günde almadığınızda müşterinin toplam hizmet tutarından 40 dolar indirim yapılır. |
fixedCost |
30 | Araç kredisi ödemelerinizin günlük maliyetini (günlük 30 ABD doları) temsil eder. |
costPerKilometer |
0,08 | Aracınızın kilometre başına ne kadar benzin harcadığını gösterir. Aracınızın hareket etmesi için kilometre başına 0, 04 galon yakıt gerekiyor ve bölgenizde galon başına maliyet 2 dolar. |
costPerHour |
27 | Aracınızı kullanması için bir sürücüye ne kadar ödeme yaptığınızı gösterir. Şoföre saatte 27 ABD doları ödersiniz. |
costPerTraveledHour |
2.5 | Yoldayken köpekler için aracın nem ve sıcaklık kontrolüne saat başına ne kadar ödemeniz gerektiğini gösterir. Araç hareket etmediğinde sürücü arkadaki kapıları açabilir ve nem ve sıcaklık kontrolünü kapatabilir. |
Maliyet parametrelerine göre optimize edici, kullanıcı için belirgin olmayan ancak optimizasyon yoluyla bulunabilecek ödünler verebilir.
Aşağıdaki diyagramda, optimize edicinin noktalı kırmızı çizgiyle gösterilen trafikte kalmamak için yeşil kesikli çizgiyle gösterilen daha uzun ancak daha hızlı bir rota seçebileceği bir örnek gösterilmektedir.

Bu senaryoda, iki rotanın maliyet dengesi aşağıdaki gibidir:
Yeşil kesikli çizgi, trafiği önleyen hızlı bir rota olduğundan düşük
costPerHourvecostPerTraveledHourdeğerine sahiptir. Bu rota,costPerKilometeryüksek olduğunda bile daha uygun maliyetlidir.Kırmızı noktalı çizgi doğrudan bir rota olduğundan
costPerKilometerdeğeri düşüktür ancak trafikteki bekleme süreleri nedeniylecostPerHourvecostPerTraveledHourdeğerleri çok yüksektir. Bu nedenle en pahalı rota budur.
Optimize edici, uygun maliyetli rotalar sağlamanın yanı sıra yanıt özelliklerinde teslimat rotalarının toplam maliyetlerinin bir özetini de sunar.
İstek örneği
Aşağıdaki örnekte, örnek senaryoda ayarlanan değerleri içeren temel bir optimizeTours isteğinin yapısı gösterilmektedir:
{ "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.8024, "longitude": -122.4058 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.759773, "longitude": -122.427063 } } ] "penaltyCost": 40 } ], "vehicles": [ { "startLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "endLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "fixedCost": 30, "costPerKilometer": 0.08, "costPerHour": 27, "costPerTraveledHour": 2.5 } ] } }
Yanıt özellikleri
OptimizeToursResponse mesajı, bir rotayı tamamlama sürecinde ortaya çıkan maliyetleri açıklayan maliyet özelliklerine sahiptir:
metrics.costs: Maliyetle ilgili istek alanlarına göre dökümü yapılan tüm rotaların toplam maliyeti.metrics.totalCost: Tüm rotalardaki toplam maliyetin toplamı.