Parametre listesi

Aşağıdaki sayfada, Route Optimization API optimizeTours yönteminin aşağıdaki bileşenleri için alfabetik sırayla parametre tabloları yer almaktadır:

Bu parametre tablolarında, kolayca bulunabilmeleri için yalnızca üst düzey nesneler ve ana parametreler listelenir ve kısaca açıklanır. Tam açıklamaları ve tüm iç içe yerleştirilmiş parametreleri içeren kapsamlı bir liste için API referans belgelerine 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: Modeli ve çözüm parametrelerini içeren üst düzey istek nesnesi.
    • ShipmentModel: Gönderileri, araçları ve global kısıtlamaları içeren temel veri yapısı.
      • Shipment: Teslim alma ve teslim etme işlemlerini içeren bir görev.
        • VisitRequest: Teslim alma veya teslimat için konum ve kısıtlamalar.
      • Vehicle: Sevkiyatları gerçekleştirmek için kullanılabilen bir araç.
Ebeveyn Parametre Tesis türü Açıklama
OptimizeToursRequest allowLargeDeadlineDespiteInterruptionRisk boole (true/false) true ise zaman aşımı, sunucu kesintilerine yol açabilecek büyük bir değere (30 dakikadan uzun) ayarlanmış olsa bile istek işlenir.
considerRoadTraffic boole (true/false) true ise rota belirlemek için trafik verilerini kullanır. Yanlış ise yalnızca yol ağı hızları kullanılır.
geodesicMetersPerSecond sayı useGeodesicDistances doğru olduğunda seyahat sürelerini hesaplamak için bu hız kullanılır.
injectedFirstSolutionRoutes[] nesne dizisi (ShipmentRoute) Optimizasyonun başlatılacağı ö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 esnetilebileceğini belirtir.
interpretInjectedSolutionsUsingLabels boole (true/false) true ise eklenen rotalardaki gönderileri/araçları dizi dizini yerine label ile eşleştirir.
label dize İsteği tanımlamak için kullanılan ve yanıtta döndürülen rastgele etiket.
maxValidationErrors tam sayı Döndürülecek maksimum doğrulama hatası sayısını belirtir. Belirtilmezse varsayılan bir sınır uygulanır.
model nesne (ShipmentModel) Zorunlu. Optimize edilecek araç ve sevkiyat grubu.
populatePolylines boole (true/false) true ise rotalar için kodlanmış çoklu çizgiler döndürür.
populateTransitionPolylines boole (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 için çoklu çizgileri, süreleri ve mesafeleri yeniden hesaplar.
searchMode enum (SearchMode) RETURN_FAST (hızlı sonuçlar) veya CONSUME_ALL_AVAILABLE_TIME (zaman aşımı süresi içinde en iyi kalite).
solvingMode enum (SolvingMode) Modeli çözmeden doğrulamak için DEFAULT_SOLVE (varsayılan) veya VALIDATE_ONLY.
timeout Süre Çözücünün çalışması gereken maksimum süre (ör. "30s", "300s").
useGeodesicDistances boole (true/false) true ise seyahat mesafeleri ve süreleri, jeodezik (düz çizgi) mesafeler ve geodesicMetersPerSecond hızı kullanılarak hesaplanır.
ShipmentModel
(OptimizeToursRequest kapsamında)
durationDistanceMatrices[] nesne dizisi (DurationDistanceMatrix) Konumlar arasında rota oluşturmak için kullanılan özel süre ve mesafe matrislerini belirtir.
durationDistanceMatrixDstTags[] dize dizisi Özel süre ve mesafe matrisleri için hedefleri (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 global zaman aralığının (en erken araç başlangıcından en geç araç bitişine kadar) saatlik maliyeti.
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önderiler 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ç tarafından teslim edilmesini engelleyen kurallar.
shipmentTypeRequirements[] nesne dizisi (ShipmentTypeRequirement) Belirli türdeki gönderilerin aynı araçla taşınmasını 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 kapsamında)
allowedVehicleIndices[] tam sayı dizisi Bu sevkiyatı gerçekleştirmesine izin verilen araçların dizinleri.
costsPerVehicle[] eşleme (anahtar: tam sayı, değer: sayı) Bu gönderi için belirli bir araç kullanılıyorsa ortaya çıkan ek maliyetler.
costsPerVehicleIndices[] tam sayı dizisi costsPerVehicle değerlerinin geçerli olduğu araçların dizinleri.
deliveries[] nesne dizisi (VisitRequest) Gönderimi teslim etmek için alternatifler.
ignore boole (true/false) true ise gönderi yoksayılır ve optimizasyonda kullanılmaz.
label dize Gönderiyi tanımlamak için kullanıcı tarafından tanımlanan ve yanıtta döndürülen etiket.
loadDemands eşleme (anahtar: dize, değer: Load) Bu gönderiyi taşımak için gereken kapasite (ör. ağırlık, hacim).
penaltyCost sayı Gönderim hizmeti verilmiyorsa maliyet. Ayarlanmazsa gönderim zorunludur.
pickups[] nesne dizisi (VisitRequest) Gönderiyi teslim almak için alternatifler
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 Teslim alma işleminin başlangıcından teslimatın başlangıcına kadar izin verilen maksimum süre.
shipmentType dize Uyumsuzluk ve şart kuralları için kullanılan tür sınıflandırması.
VisitRequest
(Shipment'da pickups ve deliveries bileşeni)
arrivalLocation nesne (LatLng) Enlem/boylam koordinatları olarak coğrafi varış konumu.
arrivalWaypoint nesne (Waypoint) Aracın ziyareti gerçekleştirmek için ulaştığı konum. Koordinatlar veya yer kimliği ile tanımlanır.
cost sayı Bu belirli ziyaret isteği çözücü tarafından seçilirse ortaya çıkan maliyet.
departureLocation nesne (LatLng) Enlem/boylam koordinatları olarak coğrafi kalkış konumu.
departureWaypoint nesne (Waypoint) Aracın ziyareti tamamladıktan sonra 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 işleminin ne kadar sürdüğü.
label dize Bu özel ziyaret isteği için kullanıcı tarafından tanımlanan ve yanıtta döndürülen etiket.
loadDemands eşleme (anahtar: dize, değer: Load) Bu ziyaretteki yük değişikliğini belirtmeyi gerektirir (ör. bir paketi bırakmak için -1).
tags[] dize dizisi Bu ziyaret isteğine eklenen etiketler. Bu bilgiler, transitionAttributes kullanılarak bu ziyaret ile diğer ziyaretler 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. "teslimat", "kurulum"). Araç modelinden extraVisitDurationForVisitType uygulamak için kullanılır.
Vehicle
(ShipmentModel kapsamında)
breakRule nesne (BreakRule) Molalarla ilgili kuralları (ör. zorunlu öğle molası) tanımlar.
costPerHour sayı Toplam rota süresinin saatlik maliyeti.
costPerKilometer sayı Kat edilen kilometre başına maliyet.
costPerTraveledHour sayı Araç hareket halindeyken saat başına 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ı için izin verilen zaman aralıkları.
endWaypoint nesne (Waypoint) Yol noktası (koordinatlar veya yer kimliği) kullanılarak coğrafi bitiş konumu.
extraVisitDurationForVisitType map (key: string, value: Duration) Ziyaretlerin süresini visitType değerine göre uzatır.
fixedCost sayı Rotanın mesafesi veya süresi ne olursa olsun, araç kullanıldığında uygulanan sabit maliyet.
ignore boole (true/false) true ise araç yoksayılır ve optimizasyonda kullanılmaz.
label dize Yanıtta döndürülen, araç için kullanıcı tanımlı etiket.
loadLimits eşleme (anahtar: dize, değer: LoadLimit) Araç kapasiteleri (ör. maksimum ağırlık, maksimum hacim).
routeDistanceLimit nesne (DistanceLimit) Aracın rotasının toplam mesafesiyle ilgili katı veya esnek bir sınır.
routeDurationLimit nesne (DurationLimit) Aracın rotasının toplam süresiyle ilgili katı veya esnek bir sınır.
routeModifiers nesne (RouteModifiers) Ücretli geçiş, otoyol veya feribot kullanmama 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ı için izin verilen zaman aralıkları.
startWaypoint nesne (Waypoint) Yol noktası (koordinatlar veya yer kimliği) kullanan coğrafi başlangıç konumu.
travelDurationLimit nesne (DurationLimit) Aracın toplam seyahat süresi (bekleme/servis süresi hariç) için katı veya esnek bir sınır.
travelDurationMultiple sayı Seyahat sürelerine uygulanan çarpan (ör. 1,5, seyahati %50 daha yavaş hale getirir).
travelMode enum (TravelMode) Seyahat modu (ö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 boole (true/false) true ise araç, gönderi olmasa bile kullanılmış sayılır. Sabit maliyetleri vardır ve başlangıç ile bitiş konumları arasında seyahat eder.

Yanıt metni

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

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

  • 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 rotası.
      • Visit: Teslim alma veya teslimat yapmak için rota üzerindeki bir durak.
      • Transition: İki rota durağı arasındaki seyahat yolu ve süresi.
      • AggregatedMetrics: Süre, mesafe ve diğer metriklerin toplamı. 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üm için 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. solvingMode, VALIDATE_ONLY olarak ayarlanmışsa veya çözümleme sırasında hatalar oluşmuşsa bu alan doldurulur.
Metrics
(OptimizeToursResponse kapsamında)
aggregatedRouteMetrics nesne (AggregatedMetrics) Toplam seyahat mesafesi, toplam süre ve bekleme süreleri gibi tüm rotalardaki toplu istatistikler.
costs eşleme (anahtar: dize, değer: sayı) 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ında en geç bitiş zamanı.
skippedMandatoryShipmentCount tam sayı Atlanan zorunlu gönderilerin sayısı.
totalCost sayı Tüm rota maliyetlerinin ve atlanan gönderi cezalarının toplamı olan çözümün toplam maliyeti.
usedVehicleCount tam sayı Çözümde kullanılan araç sayısı.
AggregatedMetrics
(Metrics ve ShipmentRoute kapsamında)
breakDuration Süre Tüm rotalarda verilen molaların toplam süresi.
costs eşleme (anahtar: dize, değer: sayı) 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ında en geç bitiş zamanı.
maxLoads eşleme (anahtar: dize, değer: VehicleLoad) Çözümdeki herhangi bir noktada 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 sevkiyat sayısı.
skippedMandatoryShipmentCount tam sayı Atlanan zorunlu gönderilerin sayısı.
totalCost sayı Tüm rota maliyetlerinin ve atlanan gönderi cezalarının toplamı olan çözümün toplam maliyeti.
totalDuration Süre Tüm rotaların toplam süresi (seyahat + bekleme + gecikme + mola + ziyaret).
travelDistanceMeters sayı Tüm rotalardaki toplam seyahat mesafesi (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 ziyaretleri gerçekleştirirken (yükleme/boşaltma) harcanan toplam süre.
waitDuration Süre Tüm rotalardaki toplam bekleme süresi.
ShipmentRoute
(OptimizeToursResponse kapsamında)
breaks[] nesne dizisi (Break) Aracın rota sırasında verdiği molaların listesi.
hasTrafficInfeasibilities boole (true/false) Rotada trafikle ilgili uygunsuzluklar olup olmadığını gösterir.
metrics nesne (AggregatedMetrics) Katedilen toplam mesafe ve süre gibi bu rotaya özgü metrikler.
routeCosts eşleme (anahtar: dize, değer: sayı) Bu rotanın maliyet dökümü. Anahtarlar maliyet türleridir (ör. "cost_per_hour") ve değerler tutarlardır.
routePolyline nesne (EncodedPolyline) Rotanın tam yolunu coğrafi olarak temsil eden kodlanmış çoklu çizgi.
routeTotalCost sayı Rotanın toplam maliyeti, routeCosts haritasındaki tüm maliyetlerin toplamıdır.
transitions[] nesne dizisi (Transition) Ziyaretleri birbirine bağlayan geçişlerin (seyahat ayakları) sıralı listesi.
vehicleEndTime Zaman damgası Aracın rotasını tamamladığı zaman.
vehicleIndex tam sayı Bu rotayı gerçekleştiren kaynak ShipmentModel içindeki aracın dizini.
vehicleLabel dize İstek modelinden kopyalanan, aracın kullanıcı tanımlı etiketi.
vehicleStartTime Zaman damgası Aracın rotasına başladığı zaman.
visits[] nesne dizisi (Visit) Aracın bu rotada gerçekleştirdiği ziyaretlerin (teslim alma ve teslim etme) sıralı dizisi.
Visit
(ShipmentRoute kapsamında)
detour Süre Önceki ve sonraki ziyaretler arasındaki doğrudan yola kıyasla bu ziyaretin neden olduğu ek sapma süresi.
isPickup boole (true/false) true ise bu ziyaret bir teslim almadır. Yanlış ise teslimattır.
loadDemands eşleme (anahtar: dize, değer: 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 Gönderinin ShipmentModel adresinden kopyalanan etiketi.
startTime Zaman damgası Ziyaretin başlamasının planlandığı saat.
visitLabel dize Modeldeki VisitRequest öğesinden kopyalanan ziyaret isteğinin etiketi.
visitRequestIndex tam sayı Bu ziyaretin karşılık geldiği, gönderinin teslim alma veya teslimat listesindeki VisitRequest dizini.
Transition
(ShipmentRoute kapsamında)
breakDuration Süre Bu geçiş sırasında verilen araların süresi.
delayDuration Süre Bu geçiş sırasında yaşanan gecikmenin süresi (ör. erken varma ve bir zaman aralığını bekleme).
routePolyline nesne (EncodedPolyline) Bu geçişin yolunu temsil eden kodlanmış çoklu çizgi.
routeToken dize Navigasyon sırasında rotayı yeniden oluşturmak için Google Navigasyon SDK'sına iletilebilen opak bir jeton.
startTime Zaman damgası Bu geçişin başlangıç zamanı.
totalDuration Süre Seyahat, bekleme, mola ve gecikmeler dahil olmak üzere geçişin toplam süresi.
trafficInfoUnavailable boole (true/false) true ise bu geçiş için trafik verilerinin mevcut olmadığını gösterir.
travelDistanceMeters sayı Bu geçiş sırasında kat edilen mesafe (metre cinsinden).
travelDuration Süre Bu geçiş sırasında seyahat süresi.
vehicleLoads eşleme (anahtar: dize, değer: VehicleLoad) Bu geçiş sırasında aracın taşıdığı yük.Yük türüne göre (ör. "weight") anahtarlanır.
waitDuration Süre Bir sonraki ziyaret başlayana kadar geçen bekleme süresi.