Kurye çalışma saatleri
Varsayılan değer, hizmet yalnızca malların teslimatı için gerekli olan durakları içeren bir rota planlar. Ancak, kuryeler genellikle durmaksızın çalışmazlar: öğle yemeği molası vermeleri gerekir ve rotalar oluşturulurken bunun dikkate alınması gerekir. Ayrıca uzun yollarda, sürücünün belirli bir sürüş süresinden sonra durması gereken bir çalışma ve dinlenme düzenine uyma zorunluluğu vardır.
Molaları
Kurye çalışma düzenini yönetmek için vechicle.rest_schedule.breaks
nesnesini kullanın. Dinlenme molaları, bakım ve diğer faaliyetlerin basit veya karmaşık modellerini tanımlayabilirsiniz.
Program şablonları
Molaları her kurye için ayrı ayrı tanımlayabilir veya birden fazla kurye için şablon oluşturabilirsiniz. Özelleştirilmiş programların ve şablon programlarının birleştirilmesi de mümkündür.
Bir şablon oluşturmak için options
içine template_rest_schedules
parametresini ekleyin ve içinde program dizisini belirtin: [{"id": string, "breaks": [...]}]
.
Şablonu kullanmak için, vehicles
içine rest_schedule_id
parametresini ekleyin ve içinde id
’den program şablonunun options
belirtin.
Mola süresi
Mola süresi, her bir mola için zorunlu olan rest_duration_s
parametresi tarafından belirlenir.
Parametre |
Değer |
Örnek |
|
Molanın saniye cinsinden süresi. |
Mola 10 dakika (600 saniye) sürmelidir. |
Mola başlangıcı koşulları
Molanın başlangıcı bir zaman aralığı (başlangıç ve bitiş) ile belirtilir. Koşullar, aşağıdaki tabloda daha ayrıntılı olarak ele alınan çeşitli şekillerde belirlenebilir.
Parametre |
Değer |
Örnek |
|
Rotanın başlangıcından itibaren çalışma süresi. Şunları içerir: seyahat süresi, bekleme süresi ve siparişler ve depolardaki hizmet süresi. Diğer molaların varlığı ve süresi önemsizdir. |
Rotanın başlangıcından en erken 1 saat ve en geç 3 saat sonra mola başlanmalıdır. |
|
Son moladan itibaren (veya ilk molaysa rotanın başlangıcından itibaren) çalışma süresi. Şunları içerir: seyahat süresi, bekleme süresi ve siparişler ve depolardaki hizmet süresi. |
Molaya, vardiyanın başlamasından en erken 2 saat ve en geç 4 saat sonra başlayın (depoya varış, hizmet süresi, seyahat ve bekleme süreleri dahil) |
|
Rotanın başlangıcından itibaren seyahat ve bekleme süresi. Bu durumda hizmet süresi dikkate alınmaz. |
Seyahat ve bekleme süreleri dikkate alınarak, ancak siparişler ve depolardaki hizmet süresi hariç olmak üzere, rotanın başlamasından en erken 1 saat ve en geç 3 saat sonra molaya başlanması. |
|
Bir önceki siparişin tamamlanmasından itibaren seyahat ve bekleme süresi. Bu durumda hizmet süresi dikkate alınmaz. |
Molaya en erken 2 saat sonra ve en geç 3 saat sürekli hareket ettikten sonra başlanması. |
|
Rotanın başlangıcından itibaren seyahat süresi. Bekleme süresi ve hizmet süresi dikkate alınmaz. |
Molayı hareketin başlangıcından itibaren 1 saatten erken ve 3 saatten geç olmamak üzere başlanması. |
|
Molanın başlangıç zamanı. Mola tekrarlanamaz. Çalışma başlangıç zamanı, diğer molaların varlığı ve süresi önemsizdir. Rota, mola başlangıç saatinden önce biterse mola başlamayacaktır. |
Molayı 17.00 ile 20.00 arasında başlatma. |
Birden fazla mola varsa, her biri bir önceki mola sona erdikten sonraki çalışma süresi aralığını belirtir. Örneğin, ilk mola 04:00–05:00
, ve ikinci mola 02:00–03:00
olarak ayarlanmışsa, bu duurmda ilk mola işe başladıktan sonra 4 ila 5 saatleri arasında başlamalı ve ikinci mola da ilk molanın tamamlanmasından sonra 2 ila 3 çalışma saati arasında başlamalıdır.
Mola planlama koşulları
Ek parametreler belirleyebilirsiniz: molayı zorunlu hale getirebilir veya molayı başlatmak için minimum bir çalışma süresi ayarlayabilirsiniz.
Parametre |
Değer |
Örnek |
|
Rotanın başlangıcından itibaren molanın zorunlu olduğu süre. Saniye cinsinden belirtilir. |
Rotanın başlangıcından itibarne 4 saat (14400 saniye) geçtiğinde mola başlatılması zorunludur. |
|
Parametre, bir molanın programlanması gereken minimum çalışma süresini ayarlar. Toplam çalışma süresinin daha az olması halinde mola planlanmayacaktır. Saniye cinsinden belirtilir. |
Rota en az 4 saat (14400 saniye) sürüyorsa mola başlatma. |
Molaların birleştirilmesi koşulları
Parametre |
Değer |
Örnek |
|
Birinci siparişten önce molanın diğer molalarla birleştirilmesi olasılığı. Mola, yalnızca türleri |
Mola, mola türünün |
|
Son siparişten sonra molayı diğer molalarla birleştirme olasılığı. Mola, yalnızca türleri |
Mola, mola türünün |
|
Mola türü. |
Bu molanın türü “öğle yemeği”. |
|
Parametre, belirtilen molanın hangi mola türleriyle birleştirilebileceğini belirtir. Onu sadece |
Bu mola öğle yemeği veya uyku molası ile birleştirilebilir. |
Mola yeri
Parametre |
Değer |
Örnek |
|
Türü |
Tüm molalar, |
Not
rest_place
türüne sahip siparişler için coğrafi bölgeler veya load_types parametresi yardımı ile araçlarla veya diğer türlerdeki siparişlerle uyumluluğu belirtebilirsiniz.
Mola zincirleri
Program rest_schedule
birden fazla bağımsız mola zinciri breaks
içerebilir. Her zincir, özel koşullara sahip birçok molayı içerebilir. Her zincirde bir molanın meydana gelmesi sadece oluşturulan rotaya bağlıdır ve diğer zincirlerdeki molalardan bağımsızdır.
Mesela |
Açıklama |
Belirleme imkanı |
1. zincir: her 3 saatlik hareketten sonra 15 dakika dinlenme. 2. zincir: vardiyanın başlamasından 8 saat sonra 6 saat dinlenme. |
2. zincirdeki molalar yalnızca vardiyanın başlangıcına bağlıdır ve 1. zincirdeki hareket ve dinlenme programından bağımsızdır. |
|
1. zincir: her 3 saatlik hareketten sonra 15 dakika dinlenme. 2. zincir: her 8 saatlik hareketten sonra 6 saat dinlenme. |
2. zincirdeki molanın başlangıcı 1. zincirdeki hareket ve dinlenme zaman programına bağlıdır. |
|
Zincirlerin sırası önemli değildir, ancak bir zincirdeki molalar sırayla belirtilmelidir.
Rota, durak gerçekleşmeden önce sona ererse (örneğin rota 3 saatte tamamlanır ve durak 4’te planlanırsa), tamamlanmamış tüm duraklar sıfırlanır.
Örnek
Rota, 4 saatlik çalışmadan sonra yarım saatlik dinlenme molalarıyla oluşturulmuştur ve rotanın başlamasından 10 saat sonra bir uyku molası planlanmıştır. Sonuç olarak, algoritma dinlenme molasından 1 saat sonra bir uyku molası planlamıştır.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Cezalar
Bazı durumlarda, hizmet dinlenme aralığını ihlal eden rotalar planlayabilir. Bu ihlallere ilişkin para cezalarını tahakkuk ettirmek için penalty.late
ve penalty.early
alanlarını kullanın. Eğer ceza, aralık ihlalinden elde edilen tasarruftan daha yüksekse, bu durumda rota ihlalsiz olarak planlanacaktır.
Parametre |
Değer |
Örnek |
|
Molaya erken başlama cezası. |
Erken mola başına 1000 ceza belirler. |
|
Erken molanın her dakikası için ceza. |
Erken molanın her dakikası için 17’lik bir ceza belirler. |
|
Geç mola vermenin cezası. |
Geç mola için 1000 ceza belirler. |
|
Geç molanın her dakikası için ceza. |
Geç molanın her dakika için 17’lik bir ceza belirler. |
Tekrarlama koşulları
Parametre |
Değer |
Örnek |
|
Parametre, molanın tekrarlanması gerektiğini belirtir. Sadece zincirdeki son mola için kullanılabilir. |
Mola, vardiya sonuna kadar tekrarlanacaktır. |
Örnek 1
Bu örnekte, 4-5 saatlik çalışmanın ardından öğle yemeği molası verilen bir rota oluşturulmuştur. Sonuç olarak, algoritma teslimatı yapan kurye için bir öğle yemeği molası planlar.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 2
Bu örnekte, Moskova ve St. Petersburg arasındaki rota, ilk mola 4-4,5 saat sonra ve daha sonra her 2 saatte bir mola olacak şekilde oluşturulmuştur. Algoritma iki mola tahsis etmiştir.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 3
İki kuryeye, işe başladıktan 3-4 saat sonra, ancak toplam sürenin route_duration_s
en az 6 saat olması koşuluyla work_time_range_from_start
mola verilir. İlk kurye işi 5 saatte bitirir, bu yüzden dinlenmeden çalışır. İkinci kurye 6 saatten fazla çalıştığı için bir kez mola alıyor.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 4
Kurye siparişleri komşu bir şehre taşıyor ve aralıklı dinlenmeye ihtiyacı var. repeatable
tekrarlama koşulu, rotanın (hard_time_range
) her 2 saat bir mola öngörülmüştür. Sonuç olarak, algoritma dört mola planlamıştır.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 5
Örnek 4’te olduğu gibi, ancak rota birkaç gün sürer ve her 12 saatte bir uyku için mola verilir:
-
tekrarlama
repeatable
koşulu kullanılır; -
dinlenmek için rotanın minimum ve maksimum süresi
hard_time_range
= 12:00-12:15.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 6
Her 55-60 dakikalık kesintisiz hareket için 10 dakikalık molalar belirleniyor continuous_travel_time_range
. Sonuç olarak, yolculuk süresinin 55 dakikadan fazla olduğu iki nokta arasında bir mola planlanmıştır.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç
Örnek 7
Kuryeler, molanın work_time_range_till_rest
son moladan veya ilk mola ise işe başladıktan 2-3 saat sonra başlaması koşuluyla iki mola planlanmıştır.
-
ilk mola – 20 dakika.
-
ikinci mola – 30 dakika.
İlk kurye işi erken bitirir ve sadece ilk molayı alır. İkinci kurye daha uzun çalışıyor ve her iki molayı da alıyor.
API isteği (JSON) ⋅ API yanıtı ⋅ Haritada aç