• Sonuç bulunamadı

3. ARAÇ ROTALAMA PROBLEMLERİ İÇİN ÇÖZÜM YOLLARI

3.1 Kesin Yöntemler

3.2.1 Klasik Sezgisel Algoritmalar

3.2.1.1 Yapısal Sezgisel (Tur Kurucu) Algoritmalar

Basitlik ve Analiz Edilebilirlik: Karmaşık algoritmalar, esneklik ve çözüm kalitesi açısından basit algoritmalardan daha zor analiz edilebilmektedir. Algoritma kolayca analiz edilebilir olmalıdır.

Laporte ve Semet 2002 yılında ARP için sezgisel yaklaşımlara farklı bir sınıflandırma önermişlerdir. Sezgiselleri Klasik Sezgiseller ve Metasezgiseller olmak üzere iki ana gruba ayırmışlardır (Ropke, 2005). Klasik sezgiseller çoğunlukla 1960-1990 yılları arasında geliştirilmiştir ve metasezgiseller daha çok son 20 yıl içerisinde gelişme göstermektedir.

Yapısal ve iyileştime sezgiseller çözüm uzayında kısmi sınırlı araştırma alanında gerçekleştirlirler ve genellikle az bir miktar hesaplama zamanı içinde iyi kalitede sonuçlar üretirler. Dahası, bu sezgisellerden bir çoğunun uzantıları gerçek dünya durumunda karşılaşılabilen kısıt çeşitliliğinin hesaplanması için kullanılabilir. Buyüzden ticari paketlerde hala yaygın olarak kullanılmaktadır. Metasezgisellerde vurgu, çözüm uzayının umut verici bölgelerinde derin araştırmalar gerçekleştirebilmesindedir. Bu metotlar genellikle sofistike komşuluk araştırma kurallarını, hafıza yapılarını ve çözümün yeniden birleştirilmesini birleştirir. Bu metotlar kullanılarak elde edilen çözüm kalitesi kalsik sezisellerle elde edilenlerden sıklıkla daha yüksektir ama hesaplama zamanı için ödenen değer artmaktadır.

Dahası, prosedürler duruma bağımlıdırlar ve iyi ayarlanmış parametreye ihtiyaç duyarlar bu da diğer durumlara uyumu zaorlaştırır (Laporte ve diğerleri, 2000; Laporte ve Semet, 1999).

çok yapısal sezgisel önerilmiştir. Tasarruf ve yerleştirme sezgiselleri yapısal sezgisellerdendir (Ropke, 2005). ARP çözümlerinin yapılmasında iki ana teknik vardır: bir tasarruf kriteri kullanarak var olan rotaları birleştirmek ve bir yerleştirme kullanarak köşeleri araç rotalarına adım adım atamaktır (Laporte ve Semet, 1999).

3.2.1.1.1 Tasarruf Algoritması

Clark ve Wright Algoritması en çok bilinen ARP sezgisellerden biridir. 1964’te Clark ve Wright tarafından geliştirilmiştir ve araç sayısının ( bu bir karar değişkenidir) belirli olmadığı problemlere uygulanır ve hem yönlendirilmiş hem de yönlendirilmemiş problemler için eşit derecede iyi sonuçlar verir [2]. Tasarruf (kazanç) sezgiseli ilk olarak her müşterinin kendi rotasında hizmet aldığı bir çözüm inşa eder. Daha sonra rotalar birer birer bazı kriterlere göre birleştirilir. Tasarruf algoritmaları rota birleştirmek için kullanılan kriterlere (rota birleştirilmesiyle elde edilen kazanç nedir) göre ve rotaların nasıl birleştirildiğine göre çeşitlenir (Ropke, 2005).

Metodun mantığı tüm varış noktalarına hizmet veren ve tekrar orijin noktasına geri dönen hayali bir araç ile başlar. Daha sonra iki tane varış noktası aynı rota üzerinde birleştirilir.

Böylece bir araç elimine edilmiş ve orijinden bir noktaya, diğer noktadan orijine seyahat mesafesi eksilmiştir. Ancak iki nokta arasında bir seyahat mesafesi ilave edilmiştir. Bir rota üzerinde hangi noktaların birleştirileceğini belirlemek için mesafeler birleşme öncesi ve sonrası hesaplanır. İki noktanın ( i ve j) birleştirilmesi sonucu oluşan oluşan kazanç ise

) , ( ) 0 , ( ) , 0

( i j i j

ij d d d

s = + − (3.2)

şeklinde hesaplanır. Bu hesaplama işlemi ikili tüm noktalar için uygulanır. En büyük kazanç değerini veren nokta çiftleri birleştirilmek için seçilir. Bu metodunun amacı tüm araçların almış olduğu toplam seyahat mesafesini minimize etmek yada servis için gerekli olacak araç sayılarını azaltmaktır (Karahan, 2003).

Şekil 3.4’de Tasarruf algoritmasının uygulanışı şematik olarak görülmektedir.

Şekil 3.4 Tasarruf sezgiselinin uygulanması (Savelsbergh, 2003)

Algoritma paralel ve sıralı versiyonlarına göre şu şekilde çalışmaktadır (Laporte ve diğerleri, 2000).

Paralel Versiyon

1.Adım: (Tasarrufların hesaplanması) Tasarruflar hesaplanır. sij =di0+d0jdij; n

j

i, =1,ΚΚ, ve ij. (0,i,0), i=1,ΚΚΚ ,niçin n araç rotası oluşturulur. Araç rotaları artış göstermeyecek şekilde (büyükten küçüğe doğru) sıralanır.

2.Adım: (En uygun birleşme) Oluşturulan tasarruf listesinin en üst noktsından başlanılarak devam edilir. (0,j) ile başlayan ve (i,0) ile biten, fizibil bir şekilde birleşebilecek sij tasarrufu veren iki rotanın olup olmadığı belirlenir. Eğer varsa (0,j) ve (i,j) silinip (i,j) oluşturularak bu iki rota birleştirilir.

Sıralı Versiyon

1.Adım: (Tasarrufların hesaplanması) Tasarruflar hesaplanır. sij =di0+d0jdij; n

j

i, =1,ΚΚ, ve ij. (0,i,0), i=1,ΚΚΚ,n için n araç rotası oluşturulur. Araç rotaları artış göstermeyecek şekilde (büyükten küçüğe doğru) sıralanır.

2. Adım : (Rota uzantısı) Sırasıyla her (0, i, . . ., j, 0) rotası göz önüne alınır. Mevcut rotayı başka bir (k,0) ile biten veya (o, l) ile başlayan rotayla birleştirmek için kullanılan ski veya sjl

tasarruf değerleri hesaplanır. Birleşme gerçekleştirilir ve bu operasyon mevcut rotaya uygulanır. Eğer hiç fizibil birleşme yoksa bir sonraki rota göz önüne alınır ve aynı iişlemler uygulanır. Hiç rota birleşmesi fizibil olmadığında işlem tamamlanır.

Tasarruf algoritmasının bir çok varyansları ve iyileştirilmiş halleri önerilmiştir ve heterojen zaman pencereli ARP, tam araç yüklü müşteri tipi farklı ARP ve kapasite kısıtlı ARP gibi değişik araç rotalama problemlerine uygulanmıştır (Ropke, 2005).

3.2.1.1.2 Yerleştirme Algoritması

Yerleştirme sezgiselleri her periyotta bir müşteri yerleştirerek çözüm inşa eder. Yerleştirme sezgisel her periyotta bir rota oluşturabilir (ardışık yerleştirme sezgiseli) veya paralel olarak bir çok veya bütün rotaları oluşturabilir (paralel ekleme sezgiseli). Hangi müşterinin yerleştirileceği ve müşterinin nereye ekleneceği yerleştirme sezgisellerindeki farklılıkları oluşturur. Çok basit bir yerleştirme sezgiseli toplam maliyeti en az etkileyen müşterinin eklenmesinin seçilmesidir (Ropke, 2005).

Yerleştirme prosedürü k noktasından oluşan bir altturu ele alır ve henüz altturda yer almayan hangi noktanın alttura eklenmesini belirlemeye çalışmaktadır (seçim basamağı) ve altturda nereye eklenmesi gerektiğinin (yerleştirme basamağı) belirlenemsidir (Marinakis, 2001).

Şekil 3.5 Yerleştirme sezgiselinin uygulanması (Savelsbergh, 2003)

3.2.1.1.3 En Yakın Komşu Yöntemi

En yakın komşu sezgiselinde her iterasyonda gidilecek noktayı seçerken bulunulan noktaya en yakın noktanın seçilmesinden oluşur. Algoritma bütün noktalar ziyaret edilene kadar devam eder ve bütün noktalar ziyaret edildikten sonra tekrar başlangıç noktasına döner. Bu sezgisel TSP’de yaygın olarak kullanılan bir metottur. Satıcı bir şehirden başlar ve başlangıç şehrine en yakın olan şehri ziyaret eder. Ziyaret edilecek şehir kalmadığında satıcı başlangıç şehrine geri döner. Bu metodun basamakları şu şekildedir (Marikanis, 2001):

1. Adım: Herhangi bir nokta ile başla.

2.Adım: Henüz rotada olmayan ve en son eklenen noktaya en yakın olan noktaya git.

3.Adım: 2. adımı bütün noktalar rotaya dahil olana kadar tekrarla. Daha sonra rotanın ilk ve son noktalarını birleştir.

TSP için yaygın olarak kullanılan bu sezgisel ARP çözümü için de uygulanmaktadır. TSP de satıcı yerine ARP de araç rota oluşturmak için yola çıkar ve TSP de başlangıç şehri ARP de depodur ve araç rota oluşturmaya burdan başlar ve tüm müşteriler ziyaret edildikten sonra araç tekrar depoya döner.

3.2.1.1.4 En Kısa Yol Yöntemi

En kısa yol yöntemi sadece bir dağıtım noktasının ve bir varış noktasının olduğu şebekelerde rotalama işlemi yapmak için kullanılmaktadır. Bu yöntemde bağlantılar ve düğümlerle temsil edilen bir şebeke bulunmaktadır. Şebeke içerisinde bulunan düğümler bağlantılar vasıtasıyla birbirine birleştirilir. Bu bağlantılar maliyet, zaman, mesafe yada bunların bir karışımı olarak ifade edilebilir. Bu yöntemin çözümü orjin noktasında başlar ve şu şekilde devam eder (Karahan, 2003).

n. iterasyonun amacı: Orjine en yakın olan düğüm belirlenir. Belirlenen bu düğüm gidilecek yer oluncaya kadar n=1, 2, 3,.... için tekrarlanır.

n. iterasyonun girişi: Orjine en yakın düğümleri (n-1) düğümleri bir önceki iterasyonda çözülür. Orjine eklenen bu düğümler çözülmüş düğümler, eklenmemiş olanlar da çözülmemiş düğümler olarak adlandırılır.

n. en yakın düğüm için aday: Çözüme katılmamış her noktanın yolu her iterasyon için bir adaydır.

n. en yakın noktanın hesaplanması: Her çözülmüş düğüm ve onun adayları için orjin noktasından bu çözülmüş düğümlere en kısa yol mesafesi hesaplanır.

3.2.1.1.5 Christodes Algoritması

Christodes kapsayan ağaçları Euler grafiğine dönüştüren bir metot önermişlerdir. Bunun için, ağacın tek dereceli düğümlere kusursuz eşleme eklemek önemlidir. Kusursuz eşleme kenarları eklendikten sonra bütün düğümlerin deeceleri çift ve buyüzden bu grafik Euler grafiği olur.

Bundan sonraki çözüm prosedür şu basamaklar üzerinedayandırılır (Marinakis, 2001):

1. Adım: Verilen G grafiğinde bir tane minimal kapsayan ağaç Tr bul.

2. Adım: Tr ağacındaki tüm tek dereceli düğümleri belirle. Orjinal maliyet matrisi kullanarak tüm tek dereceli düğümlere minimum kusursuz eşleme çöz. Euler döngüsü elde etmek için kapsayan ağaç Tr’nin kenarlarına eşleme kenarlarını ekle. Bu alt grafikte her düğüm bazı düğümlerin derecesi 2 den daha fazla olmasına rağmen çifttir.

3. Adım: Derecesi 2 den büyük olan düğümler üstünden çokgenleri çıkar ve Euler döngüsünü Hamilton döngüsüne dönüştür. Hesaplama süresinin çoğunu minimum eşleme altyordamı kullanır ve bu sezgisel bir O(n3) dür. Ama tek dereceli nokta sayısı n den oldukça daha az olabilir (Marinakis, 2001).

Şekil 3.6 Christodes Algoritmasının uygulanışı (Gambardella, 2000)