Maliyet modeli

Maliyet özellikleri, ShipmentModel.shipments.Shipment ve ShipmentModel.vehicles.Vehicle altında tanımlanır.

Route Optimization API'nin temel amacı, en düşük maliyetli rotaları bulmaktır. Bu nedenle, maliyet modeli rota optimizasyonunun temel itici gücüdür.

Maliyet modeli, genel, araç ve kargo maliyetlerini belirten bir özellikler kümesidir.

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:

Bu belgede yalnızca temel maliyet modeli parametreleri vurgulanmaktadır. Maliyet parametrelerinin tamamı için referans belgelerine bakın.

Essentials kontrol listesi

Aşağıdaki kontrol 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ü Şunun başına maliyet: Tesis açıklaması
Shipment penaltyCost sayı Atlanan gönderim Kargonun atlanması nedeniyle oluşan maliyet.
API, bir sevkiyatı tamamlamanın maliyeti ceza maliyetini aştığında sevkiyatı atlar.
  • penaltyCost ayarı, daha yüksek maliyetli gönderilerin teslimatına öncelik verir.
  • Kargo penaltyCost ayarlanmadığında kargo zorunlu olur.
  • Bir gönderiyi penaltyCost açıkça sıfır olarak ayarlamak, API'nin diğer kısıtlamalar tarafından zorunlu kılınmadığı sürece gönderiyi her zaman atlamasına neden olur.
Vehicle fixedCost sayı Gönderim Bu araç bir gönderiyi taşımak için kullanılıyorsa uygulanan sabit maliyet.
costPerHour sayı Saat Geçiş, bekleme, ziyaret ve mola süreleri dahil araç çalıştırmanın saatlik maliyeti.
Bu maliyet arttıkça optimizasyon aracı, en kısa rotalar olmayabilecek daha hızlı rotalar bulmaya çalışır.
Bu özellik, basitliği ve eksiksizliği nedeniyle araç başına etkili bir bağımsız maliyet olabilir.
costPerKilometer sayı Kilometre Aracın katedilen kilometre başına maliyeti. Bu maliyet, yakıt maliyetlerini veya amortize 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ç işletme 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 özelliklerinin bir işletme hedefine ulaşmak için nasıl kullanılabileceğini gösteren örnek bir 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öpek gündüz bakımı işletmenizin olduğu bir senaryo açıklanmaktadır. Köpekleri evlerinden almak için kullandığınız kamyonun rotasını optimize ediyorsunuz. Bu senaryoda, rota sağlarken köpekleri alma ve araç operasyonlarıyla ilgili maliyetlerin optimizasyon aracı tarafından dikkate alınması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 teslim 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. Sürücüye saatte 27 ABD doları ödüyorsunuz.
costPerTraveledHour 2.5 Yoldayken köpekler için aracın klima sistemine saatte ne kadar ödemeniz gerektiğini gösterir. Araç hareket etmediği sürece sürücü arka kapıları açabilir ve klimayı kapatabilir.

Optimizasyon aracı, maliyet parametrelerine göre kullanıcı için belirgin olmayan ancak optimizasyon yoluyla bulunabilen ödünler verebilir.

Aşağıdaki diyagramda, optimize edicinin kırmızı noktalı çizgideki trafikten kaçınmak için yeşil kesikli çizgi üzerinden daha uzun ancak daha hızlı bir rota seçebileceği bir örnek gösterilmektedir.

Araç için iki olası rota var. Biri yeşil kesikli çizgiyle gösteriliyor ve daha uzun olmasına rağmen herhangi bir olay içermiyor. Diğeri ise kırmızı noktalı çizgiyle gösteriliyor ve daha kısa olmasına rağmen ortasında bir araba kazası var.

Bu senaryoda, iki rotanın maliyet dengesi aşağıdaki gibidir:

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ında, bir rotayı tamamlama sürecinde oluşan maliyetleri açıklayan maliyet özellikleri bulunur:

  • metrics.costs: Maliyetle ilgili istek alanlarına göre dökümü yapılan tüm rotalardaki toplam maliyet.
  • metrics.totalCost: Tüm rotalardaki toplam maliyetin toplanması.