Parametre listesi

Aşağıdaki sayfada, Rota Optimizasyonu API'sinin optimizeTours yönteminin aşağıdaki bileşenleri için alfabetik sıraya göre parametre tabloları yer almaktadır:

Bu parametre tablolarında, kolayca bulunabilmesi için yalnızca üst düzey nesneler ve ana parametreler listelenip kısaca açıklanmıştır. Ayrıntılı açıklamalar ve tüm iç içe geçmiş parametreleri içeren kapsamlı bir liste için API referans dokümanlarına bakın.

İstek metni

İstek gövdesinin veri yapısı.

İstek gövdesi, sağdaki diyagramda gösterilen ve aşağıdaki tabloda listelenen şu öğeleri içerir:

  • OptimizeToursRequest: Model ve çözüm parametrelerini içeren üst düzey istek nesnesi.
    • ShipmentModel: Gönderiler, araçlar ve genel kısıtlamaları içeren temel veri yapısı.
      • Shipment: Teslim alma ve teslimat içeren bir görev.
        • VisitRequest: Teslim alma veya teslimat için konum ve kısıtlamalar.
      • Vehicle: Gönderim yapmak için uygun bir araç
Ebeveyn Parametre Tesis türü Açıklama
OptimizeToursRequest allowLargeDeadlineDespiteInterruptionRisk boolean (true/false) true ise zaman aşımı, olası sunucu kesintileri riski taşıyan büyük bir değere (30 dakikadan uzun) ayarlanmış olsa bile istek işlenir.
considerRoadTraffic boolean (true/false) true ise yönlendirme için trafik verilerini kullanır. Yanlışsa yalnızca yol ağı hızlarını kullanır.
geodesicMetersPerSecond sayı useGeodesicDistances doğru olduğunda, seyahat sürelerini hesaplamak için bu hız kullanılır.
injectedFirstSolutionRoutes[] nesne dizisi (ShipmentRoute) Optimizasyonu başlatmak için önceki bir çözümden alınan rotalar.
injectedSolutionConstraint nesne (InjectedSolutionConstraint) Çözümü mevcut rotalara benzer olacak şekilde kısıtlar. Hangi özelliklerin korunması ve hangilerinin gevşetilebileceği belirtilir.
interpretInjectedSolutionsUsingLabels boolean (true/false) true ise enjekte edilen rotalardaki gönderileri/araçları dizi dizini yerine label ile eşleştirir.
label dize İsteği tanımlamak için kullanılan rastgele etiket, yanıtta döndürülür.
maxValidationErrors tam sayı Döndürülecek maksimum doğrulama hatası sayısını belirtir. Belirtilmemişse varsayılan bir sınır uygulanır.
model nesne (ShipmentModel) Zorunlu. Optimize edilecek araç ve gönderi grubu.
populatePolylines boolean (true/false) true ise rotalar için kodlanmış çoklu çizgileri döndürür.
populateTransitionPolylines boolean (true/false) true ise ziyaretler arasındaki her bir geçiş için kodlanmış çoklu çizgiler döndürür.
refreshDetailsRoutes[] nesne dizisi (ShipmentRoute) Yenilenecek rotaların listesi. Bu işlem, ziyaret sırasını değiştirmeden mevcut rotaların çoklu çizgilerini, sürelerini ve mesafelerini yeniden hesaplar.
searchMode enum (SearchMode) RETURN_FAST (hızlı sonuçlar) veya CONSUME_ALL_AVAILABLE_TIME (zaman aşımı içinde en iyi kalite).
solvingMode enum (SolvingMode) DEFAULT_SOLVE (varsayılan) veya VALIDATE_ONLY simgesini tıklayarak modeli çözmeden doğrulayabilirsiniz.
timeout Süre Çözücünün çalışması gereken maksimum süre (ör. "30s", "300s").
useGeodesicDistances boolean (true/false) true ise seyahat mesafeleri ve süreleri, jeodezik (düz hat) mesafeler ve geodesicMetersPerSecond hızı kullanılarak hesaplanır.
ShipmentModel
(OptimizeToursRequest kuruluşunun bünyesinde)
durationDistanceMatrices[] nesne dizisi (DurationDistanceMatrix) Konumlar arasında yönlendirme için kullanılan özel süre ve mesafe matrislerini belirtir.
durationDistanceMatrixDstTags[] dize dizisi Özel süre ve mesafe matrislerinin hedeflerini (sütunlar) tanımlayan etiketler.
durationDistanceMatrixSrcTags[] dize dizisi Özel süre ve mesafe matrislerinin kaynaklarını (satırlarını) tanımlayan etiketler.
globalDurationCostPerHour sayı Rotanın küresel zaman aralığının saat başına maliyeti (en erken araç başlangıcından en geç araç bitişine kadar).
globalEndTime Zaman damgası Modeldeki herhangi bir etkinliğin en son bitiş zamanı.
globalStartTime Zaman damgası Modeldeki herhangi bir etkinliğin en erken başlangıç zamanı.
maxActiveVehicles tam sayı Çözümde etkin olmasına izin verilen maksimum araç sayısı.
precedenceRules[] nesne dizisi (PrecedenceRule) Belirli gönderimler arasındaki sıralama kısıtlamalarını tanımlayan kurallar.
shipments[] nesne dizisi (Shipment) Hizmet verilecek gönderilerin listesi.
shipmentTypeIncompatibilities[] nesne dizisi (ShipmentTypeIncompatibility) Belirli türdeki gönderilerin aynı araçla taşınmasını engelleyen kurallar.
shipmentTypeRequirements[] nesne dizisi (ShipmentTypeRequirement) Belirli türdeki gönderilerin aynı araçla teslim edilmesini gerektiren kurallar.
transitionAttributes[] nesne dizisi (TransitionAttributes) Belirli etiketlere sahip ziyaretler arasındaki geçişler için ek maliyetleri, gecikmeleri ve mesafe sınırlarını belirtir.
vehicles[] nesne dizisi (Vehicle) Gönderileri gerçekleştirmek için kullanılabilen araçların listesi.
Shipment
(ShipmentModel kuruluşunun bünyesinde)
allowedVehicleIndices[] tam sayı dizisi Bu gönderimi gerçekleştirmesine izin verilen araçların endeksleri.
costsPerVehicle[] map (anahtar: tam sayı, değer: sayı) Belirli bir araç bu gönderime hizmet veriyorsa ortaya çıkan ek maliyetler.
costsPerVehicleIndices[] tam sayı dizisi costsPerVehicle değerlerinin geçerli olduğu araçların indeksleri.
deliveries[] nesne dizisi (VisitRequest) Gönderiyi teslim etme alternatifleri.
ignore boolean (true/false) true ise gönderim yoksayılır ve optimizasyonda kullanılmaz.
label dize Kargoyu tanımlamak için kullanıcı tanımlı etiket. Yanıtta döndürülür.
loadDemands map (key: string, value: Load) Bu kargoyu taşımak için gereken kapasite (ör. ağırlık, hacim).
penaltyCost sayı Gönderime hizmet verilmemesi durumunda maliyet. Ayarlanmamışsa kargo zorunludur.
pickups[] nesne dizisi (VisitRequest) Gönderiyi teslim alma alternatifleri.
pickupToDeliveryAbsoluteDetourLimit Süre Doğrudan yola kıyasla teslim alma ve teslimat arasında izin verilen maksimum mutlak sapma süresi.
pickupToDeliveryRelativeDetourLimit sayı Gönderi için izin verilen maksimum göreceli sapma (ör. 2,0 değeri, toplam sürenin doğrudan seyahat süresinin en fazla 2 katı olabileceği anlamına gelir).
pickupToDeliveryTimeLimit Süre Alımın başlangıcından teslimatın başlangıcına kadar izin verilen maksimum süre.
shipmentType dize Uyumsuzluk ve koşul kuralları için kullanılan tür sınıflandırması.
VisitRequest
(Shipment bölgesindeki pickups ve deliveries kuruluşlarının bir bileşeni)
arrivalLocation nesne (LatLng) Enlem/boylam koordinatları olarak coğrafi varış konumu.
arrivalWaypoint nesne (Waypoint) Ziyaret için aracın geldiği konum. Koordinatlar veya yer kimliği ile tanımlanır.
cost sayı Bu ziyaret isteği, sorunu çözen kullanıcı tarafından seçilirse ortaya çıkan maliyet.
departureLocation nesne (LatLng) Kalkış yerinin enlem/boylam koordinatları.
departureWaypoint nesne (Waypoint) Ziyaret tamamlandıktan sonra aracın ayrıldığı konum. Atlanırsa arrivalWaypoint ile aynı olduğu varsayılır.
duration Süre Ziyaretin süresi (hizmet süresi), örneğin yükleme/boşaltma ne kadar sürer?
label dize Bu ziyaret isteği için kullanıcı tanımlı etiket, yanıtta döndürülür.
loadDemands map (key: string, value: Load) Bu ziyarette yük değişikliğinin belirtilmesi gerekir (ör. -1 to drop off a package).
tags[] dize dizisi Bu ziyaret isteğine eklenen etiketler. Bu değerler, transitionAttributes kullanılarak bu ziyaret ile diğerleri arasındaki seyahat sürelerini hesaplamak için kullanılır.
timeWindows[] nesne dizisi (TimeWindow) Bu ziyarete varış için izin verilen zaman aralıkları.
visitTypes[] dize dizisi Ziyaret türünü açıklayan dizeler (ör. "delivery", "installation"). Araç modelinden extraVisitDurationForVisitType uygulamak için kullanılır.
Vehicle
(ShipmentModel kuruluşunun bünyesinde)
breakRule nesne (BreakRule) Molalarla ilgili kuralları (ör. zorunlu öğle yemeği molası) tanımlar.
costPerHour sayı Toplam rota süresinin saatlik maliyeti.
costPerKilometer sayı Kilometre başına maliyet.
costPerTraveledHour sayı Araç hareket halindeyken saatlik maliyet.
endLocation nesne (LatLng) Enlem/boylam koordinatları olarak coğrafi bitiş konumu.
endTags[] dize dizisi Geçiş özellikleri için kullanılan, aracın son durumunu tanımlayan etiketler.
endTimeWindows[] nesne dizisi (TimeWindow) Aracın rotasını tamamlamasına izin verilen süreler.
endWaypoint nesne (Waypoint) Ara nokta (koordinatlar veya yer kimliği) kullanılarak coğrafi bitiş konumu.
extraVisitDurationForVisitType map (key: string, value: Duration) Ziyaretlerin visitType değerine göre ziyaretlere ek süre ekler.
fixedCost sayı Aracın kullanılması durumunda, rotanın mesafesi veya süresinden bağımsız olarak uygulanan sabit maliyet.
ignore boolean (true/false) true ise araç yoksayılır ve optimizasyonda kullanılmaz.
label dize Yanıtla birlikte döndürülen, araç için kullanıcı tanımlı etiket.
loadLimits map (key: string, value: LoadLimit) Araç kapasiteleri (ör. maksimum ağırlık, maksimum hacim)
routeDistanceLimit nesne (DistanceLimit) Aracın rotasının toplam mesafesiyle ilgili kesin veya esnek bir sınır.
routeDurationLimit nesne (DurationLimit) Aracın rotasının toplam süresiyle ilgili kesin veya esnek bir sınır.
routeModifiers nesne (RouteModifiers) Ücretli geçişleri, otoyolları veya feribotları kullanmaktan kaçınma gibi bir veya daha fazla kısıtlama
startLocation nesne (LatLng) Enlem/boylam koordinatları olarak coğrafi başlangıç konumu.
startTags[] dize dizisi Geçiş özellikleri için kullanılan, aracın başlangıç durumunu tanımlayan etiketler.
startTimeWindows[] nesne dizisi (TimeWindow) Aracın rotasına başlamasına izin verilen zaman aralıkları.
startWaypoint nesne (Waypoint) Ara nokta (koordinatlar veya yer kimliği) kullanılarak belirlenen coğrafi başlangıç konumu.
travelDurationLimit nesne (DurationLimit) Aracın toplam seyahat süresine (bekleme/servis süresi hariç) ilişkin kesin veya esnek bir sınır.
travelDurationMultiple sayı Seyahat sürelerine uygulanan çarpan (ör. 1,5, seyahati% 50 yavaşlatır).
travelMode enum (TravelMode) Ulaşım şekli (ör. DRIVING, WALKING). Seyahat sürelerini ve mesafelerini etkiler.
unloadingPolicy enum (UnloadingPolicy) Boşaltma sırasını tanımlar (ör. LIFO veya LAST_IN_FIRST_OUT).
usedIfRouteIsEmpty boolean (true/false) true ise araç, gönderim yapılmasa bile kullanılmış olarak kabul edilir. Sabit maliyetlere sahiptir ve başlangıç ile bitiş konumları arasında seyahat eder.

Yanıt metni

Yanıt gövdesinin veri yapısı.

Yanıt gövdesinde aşağıdaki öğeler bulunur. Bu öğeler sağdaki diyagramda gösterilmiş ve aşağıdaki tabloda listelenmiştir:

  • OptimizeToursResponse: Optimize edilmiş rotaları ve metrikleri içeren üst düzey yanıt nesnesi.
    • Metrics: Çözümün genel maliyet ve yürütme istatistikleri.
    • ShipmentRoute: Tek bir araca atanan ziyaret sırası ve seyahat yolu.
      • Visit: Teslim alma veya teslimat için bir rotadaki durak.
      • Transition: İki rota durağı arasındaki seyahat yolu ve süresi.
      • AggregatedMetrics: Süre, mesafe ve diğer metriklerin toplamları. Bu öğe hem Metrics hem de ShipmentRoute içinde bulunabilir.
Ebeveyn Parametre Tesis türü Açıklama
OptimizeToursResponse metrics nesne (Metrics) Toplam maliyet, toplam mesafe, toplam süre ve araç kullanım sayıları dahil olmak üzere çözüme ait toplu metrikler.
requestLabel dize İsteğin label alanından kopyalanan etiket. Yanıtı orijinal istekle ilişkilendirmek için kullanılır.
routes[] nesne dizisi (ShipmentRoute) Her araç için hesaplanan rotaların listesi. Kullanımdan bağımsız olarak her araç için bir giriş içerir.
skippedShipments[] nesne dizisi (SkippedShipment) Atlanan (hizmet verilmeyen) gönderilerin listesi ve atlanma nedenleri.
validationErrors[] nesne dizisi (OptimizeToursValidationError) Giriş modelinde bulunan doğrulama hatalarının listesi. Bu alan, solvingMode değeri VALIDATE_ONLY olarak ayarlanmışsa veya çözüm sırasında hatalar oluşmuşsa doldurulur.
Metrics
(OptimizeToursResponse kuruluşunun bünyesinde)
aggregatedRouteMetrics nesne (AggregatedMetrics) Tüm rotalardaki toplam seyahat mesafesi, toplam süre ve bekleme süreleri gibi toplu istatistikler.
costs map (key: string, value: number) Maliyetlerin türe göre dökümü (ör. "model.vehicles.cost_per_kilometer", "model.shipments.penalty_cost").
earliestVehicleStartTime Zaman damgası Kullanılan tüm araçlar arasındaki en erken başlangıç zamanı.
latestVehicleEndTime Zaman damgası Kullanılan tüm araçlar arasındaki en son bitiş zamanı.
skippedMandatoryShipmentCount tam sayı Atlanan zorunlu gönderimlerin sayısı.
totalCost sayı Tüm rota maliyetleri ve atlanan gönderi cezaları toplanarak çözümün toplam maliyeti hesaplanır.
usedVehicleCount tam sayı Çözümde kullanılan araç sayısı.
AggregatedMetrics
(Metrics ve ShipmentRoute kuruluşlarının bir parçası)
breakDuration Süre Tüm rotalarda verilen molaların toplam süresi.
costs map (key: string, value: number) Maliyetlerin türe göre dökümü (ör. "model.vehicles.cost_per_kilometer", "model.shipments.penalty_cost").
delayDuration Süre Tüm rotalardaki toplam gecikme süresi.
earliestVehicleStartTime Zaman damgası Kullanılan tüm araçlar arasındaki en erken başlangıç zamanı.
latestVehicleEndTime Zaman damgası Kullanılan tüm araçlar arasındaki en son bitiş zamanı.
maxLoads map (key: string, value: VehicleLoad) Çözümün herhangi bir noktasında herhangi bir araç tarafından taşınan maksimum yük, yük türüne göre anahtarlanır.
performedShipmentCount tam sayı Tüm araçlarda gerçekleştirilen toplam gönderi sayısı.
skippedMandatoryShipmentCount tam sayı Atlanan zorunlu gönderimlerin sayısı.
totalCost sayı Tüm rota maliyetleri ve atlanan gönderi cezaları toplanarak çözümün toplam maliyeti hesaplanır.
totalDuration Süre Tüm rotaların toplam süresi (seyahat + bekleme + gecikme + mola + ziyaret).
travelDistanceMeters sayı Tüm rotalarda katedilen toplam mesafe (metre cinsinden).
travelDuration Süre Tüm rotalardaki toplam seyahat süresi.
usedVehicleCount tam sayı Çözümde kullanılan araç sayısı.
visitDuration Süre Tüm rotalarda ziyaret gerçekleştirme (yükleme/boşaltma) sırasında harcanan toplam süre.
waitDuration Süre Tüm rotalardaki toplam bekleme süresi.
ShipmentRoute
(OptimizeToursResponse kuruluşunun bünyesinde)
breaks[] nesne dizisi (Break) Araçla rota boyunca verilen molaların listesi.
hasTrafficInfeasibilities boolean (true/false) Rotada trafikle ilgili bir sorun olup olmadığını gösterir.
metrics nesne (AggregatedMetrics) Katedilen toplam mesafe ve süre gibi bu rotaya özgü metrikler.
routeCosts map (key: string, value: number) Bu rota için maliyet dökümü. Anahtarlar maliyet türleridir (ör. "saatlik_maliyet") ve değerler tutarlardır.
routePolyline nesne (EncodedPolyline) Rotanın coğrafi olarak tam yolunu temsil eden kodlanmış çoklu çizgi.
routeTotalCost sayı Rotanın toplam maliyeti, routeCosts haritasındaki tüm maliyetlerin toplamı.
transitions[] nesne dizisi (Transition) Ziyaretleri birbirine bağlayan, sıralı bir geçişler (seyahat ayakları) listesi.
vehicleEndTime Zaman damgası Aracın rotasını tamamladığı saat.
vehicleIndex tam sayı Bu rotayı gerçekleştiren kaynak ShipmentModel içindeki aracın dizini.
vehicleLabel dize İstek modelinden kopyalanan, araçla ilgili kullanıcı tanımlı etiket.
vehicleStartTime Zaman damgası Aracın rotasına başladığı zaman.
visits[] nesne dizisi (Visit) Bu rota üzerinde araç tarafından gerçekleştirilen ziyaretlerin (teslim alma ve teslimat) sıralı dizisi.
Visit
(ShipmentRoute kuruluşunun bünyesinde)
detour Süre Bu ziyaretin, önceki ve sonraki ziyaretler arasındaki doğrudan yola kıyasla neden olduğu ek sapma süresi.
isPickup boolean (true/false) Bu özellik true değerine ayarlanmışsa bu ziyaret bir teslim alma işlemidir. Yanlışsa teslimattır.
loadDemands map (key: string, value: Load) Bu ziyaretle karşılanan yük talepleri (ör. teslimat için -1). Bu, ilgili VisitRequest yük taleplerinin bir kopyasıdır.
shipmentIndex tam sayı Bu ziyaretin hizmet verdiği kaynak modeldeki Shipment alanının dizini.
shipmentLabel dize Kargonun etiketi, ShipmentModel adresinden kopyalanır.
startTime Zaman damgası Ziyaretin başlamasının planlandığı saat.
visitLabel dize Ziyaret isteğinin etiketi, modeldeki VisitRequest öğesinden kopyalanır.
visitRequestIndex tam sayı Bu ziyaretin karşılık geldiği, kargonun teslim alma veya teslimat listesindeki VisitRequest dizini.
Transition
(ShipmentRoute kuruluşunun bünyesinde)
breakDuration Süre Bu geçiş sırasında verilen araların süresi.
delayDuration Süre Bu geçiş sırasında oluşan gecikmenin süresi (ör. erken gelip zaman aralığını beklemek).
routePolyline nesne (EncodedPolyline) Bu belirli geçişin yolunu temsil eden kodlanmış çoklu çizgi.
routeToken dize Rotayı izleme sırasında rotayı yeniden oluşturmak için Google Navigation SDK'ya iletilebilen opak bir jeton.
startTime Zaman damgası Bu geçişin başlangıç zamanı.
totalDuration Süre Seyahat, bekleme, molalar ve gecikmeler dahil olmak üzere geçişin toplam süresi.
trafficInfoUnavailable boolean (true/false) true ise bu geçiş için trafik verilerinin kullanılamadığını gösterir.
travelDistanceMeters sayı Bu geçiş sırasında katedilen mesafe (metre cinsinden).
travelDuration Süre Bu geçiş sırasında seyahatin süresi.
vehicleLoads map (key: string, value: VehicleLoad) Bu geçiş sırasında araç tarafından taşınan yük, yük türüne göre anahtarlanır (ör. "weight").
waitDuration Süre Bir sonraki ziyaretin başlamasından önce bekleme süresi.