Data Department, bir kargo şirketi için filo boyutlandırma ve rota atama üzerine çalıştı. Teslimat zaman aralıklarını, öncelikleri ve araç kapasitesini gözeten modelde özel kümeleme ile karma tam sayılı programlamayı birleştirdik. Analiz, aynı hizmet seviyesinin yaklaşık %30 daha az araçla karşılanabileceğini gösterdi.
Karar neydi?
Bir kargo şirketi birbirine bağlı iki karar verir. Birincisi stratejiktir: Operasyon kaç araca ihtiyaç duyuyor? İkincisi operasyoneldir: Hangi araç hangi teslimatları, hangi sırayla yapacak?
Bu kararlar genellikle deneyim ve pratik kurallarla verilir. Bu yaklaşım belirli ölçüde sonuç verir ancak sistemde gereğinden fazla pay bırakır. Optimize edilmemiş rotaların maliyeti fazladan araçlarla karşılanır. Her fazla aracın sabit maliyeti vardır: kira ya da amortisman, sürücü, sigorta, bakım.
Üzerinde çalıştığımız soru şuydu: Şirketin müşterilerine taahhüt ettiği hizmet seviyesini karşılamaya devam eden en küçük filo hangisidir?
Ne geliştirdik?
İki katmanlı bir optimizasyon modeli kurduk.
| Katman | Yöntem | Ne yapar |
|---|---|---|
| Gruplama | Özel kümeleme | Teslimatları anlamlı bölgelere ayırır; optimizasyon problemi çözülebilir boyutta kalır |
| Atama | MIP (karma tam sayılı programlama) | Teslimatları araçlara atar ve filoyu aşağıdaki kısıtlara göre boyutlandırır |
Modelin uyması gereken kısıtlar:
- Teslimat zaman aralıkları: Her teslimat söz verilen zaman aralığında yapılmalı.
- Öncelikler: Bazı teslimatlar daha önemlidir ve önce yapılmalıdır.
- Kapasite: Her aracın taşıyabileceği yük sınırlıdır.
Karma tam sayılı programlama, "bu araç bu durağa gidecek mi?" ya da "kaç araca ihtiyacımız var?" gibi evet/hayır veya tam sayı içeren kararlar için kullanılan matematiksel bir optimizasyon yöntemidir. Ortalamada iyi görünen bir çözümü değil, tüm kısıtları sağlayan en iyi çözümü bulur.
Kümelemeyi önce yapmamızın pratik bir nedeni vardı. Tüm gönderileri aynı anda kapsayan bir rota probleminin boyutu çok hızlı büyür. Problemi iyi seçilmiş gruplara bölmek, yapısını korurken çözüm süresini makul tutar. Kümeleme yöntemi hazır bir paketten alınmadı, bu operasyon için özel olarak geliştirildi.
Sonuçlar
- Yaklaşık %30 daha az araç: Analiz, aynı hizmet seviyesinin yaklaşık %30 daha az araçla karşılanabileceğini gösterdi.
- Modelin ürettiği planlar teslimat zaman aralıklarına, önceliklere ve kapasiteye uydu.
Çıkardığımız dersler
Doğru yöntem tahmin değil, optimizasyondu. Bu problem bir tahmine değil, katı kısıtlar altında en iyi karara ihtiyaç duyuyordu. Her yapay zekâ projesi bir makine öğrenmesi projesi değildir; planlama problemlerinde karma tam sayılı programlama gibi yöneylem araştırması yöntemleri çoğu zaman daha uygundur.
Önce hizmet seviyesini tanımlayın. Geç teslimata izin verilirse filoyu küçültmek kolaydır. Hizmet seviyesini bir kısıt olarak sabitlemek, ~%30'luk rakamı anlamlı kıldı: müşteriye verilen hizmet taahhüdü aynı kalırken daha az araç gerekir.
Problemi bölmek büyük problemleri uygulanabilir kılar. Optimizasyondan önce kümeleme yapmak, teorik en iyi çözüm ile çözüm süresi arasında bilinçli bir tercihtir. Günlük kullanılan bir planlama aracında, dakikalar içinde üretilen çok iyi bir plan, geç üretilen kusursuz bir plandan daha değerlidir.
Planlar sahada sınanır. ~%30'luk rakam, modelin ürettiği planlara dayanır. Gerçek rotalarda trafik, teslim edilemeyen gönderiler ve sürücülerin saha bilgisi devreye girer. Bu nedenle, genel bir ilke olarak, filonun tamamında değişikliğe gitmeden önce planlama sonuçlarının operasyonun bir bölümünde kontrollü bir denemeyle doğrulanmasını öneririz.
Aynı yöntemleri optimizasyon ve simülasyon projelerimizde kullanıyoruz; bu tür çalışmalar dağıtım ve lojistik şirketleri için çoğu zaman iyi bir başlangıç projesidir.
Sık sorulan sorular
Karma tam sayılı programlama nedir?
Karma tam sayılı programlama, kaç araç çalıştırılacağı gibi evet/hayır ya da tam sayı içeren kararlar için kullanılan matematiksel bir optimizasyon yöntemidir. Tanımlanan tüm kısıtları sağlayan en iyi çözümü bulur.
Daha küçük filo daha kötü hizmet anlamına mı gelir?
Bu modelde hayır. Hizmet seviyesi bir kısıttı: teslimat zaman aralıkları, öncelikler ve kapasite karşılanmak zorundaydı. Analiz, ~%30'luk azalmayı aynı hizmet seviyesi korunarak gösterdi.
Teslimatlar neden optimizasyondan önce kümelendi?
Tüm gönderileri aynı anda kapsayan bir rota probleminin boyutu çok hızlı büyür. Teslimatları önce iyi seçilmiş bölgelere ayırmak, problemin yapısını korurken çözüm süresini makul tutar.