• Sonuç bulunamadı

GENELLEŞTİRİLMİŞ KARESEL ÇOKLU SIRT ÇANTASI PROBLEMİ VE ÇÖZÜMÜ İÇİN BİR GENETİK ALGORİTMA

4.2 G_KÇSÇP İçin Bir Genetik Algoritma

4.3.2 GAMS/DICOPT’un KSÇP’nin çözümündeki başarısı

Genelleştirilmiş karesel çoklu sırt çantası problemi, yazında daha önce bu haliyle ele alınmamış olduğundan, doğal olarak önerilen GA ile elde edilecek çözümlerin başarısını kıyaslayabileceğimiz sonuçlara erişilmesi mümkün olamamıştır.

Bu sebeple test problemlerinin sonuçlarını karşılaştırmak üzere GAMS yazılımının kullanılmasına karar verilmiştir. GAMS yazılımı çözüm aşamasında kullanıcıya modelin yapısına göre farklı çözücüleri kullanabilme olanağı sunmaktadır.

Ele alınan problem hem doğrusal olmayan hem de tamsayılı olduğundan MINLP çözücülerinden birisinin seçilmesi gereklidir. Ancak MINLP çözücüler alt problemleri çözerken MIP, LP, ve NLP çözücüleri de çağırabildiklerinden, bu çözücülerinde belirlenmesi gerekmektedir. Problemlerin çözümünde kullanılmak üzere DICOPT çözücüsü seçilmiştir. Burada DICOPT çözücüsünün kullandığı MIP ve LP için CPLEX, NLP için MINOS çözücüleri belirlenmiştir. Bilindiği gibi LP ve MIP için CPLEX ve NLP için de MINOS başarıları daha önce ispatlanmış çözücülerdir. Ayrıca çözücülerin, karesel sırt çantası problemlerinin çözümünde hem çözüm kalitesi hem de süre yönüyle, küçümsenemeyecek bir başarıya sahip olduğunu gösterebilmek amacı ile rassal olarak türetilmiş ve en iyi çözümleri bilinen (Billionnet and Soutif, 2003) karesel sırt çantası problemlerinin GAMS/DICOPT çözücüsü ile elde edilmiş sonuçları Çizelge 4.5’te verilmiştir.

Çizelge 4.5’te ele alınan problemlerden 10 tanesinde parça sayısı (n) 100’dür ve bu problemlerin yoğunlukları (sıfırdan farklı pj ve qij parametre oranı) d = 0.25’tir.

Kalan 10 test probleminde ise parça sayısı 200 ve yoğunluk 1.00’dir. Çizelgenin sol tarafında test problemlerinin boyutu, yoğunluğu, örnek numarası (no), eniyi çözüm değeri (zenb) ve bu değerin Billionnet and Soutif, (2003) tarafından elde edildiği süre verilmiştir. Çizelgenin ikinci bölümünde ise GAMS/DICOPT ile elde edilmiş çözüm değeri (z), optimumdan yüzde olarak fark (%E) ve yine saniye olarak çözüm süreleri verilmiştir.

Çizelge 4.5: Karesel Sırt Çantası Problemlerinin GAMS/DICOPT Çözümleri

Örnek GAMS/DICOPT n d no zenb süre (sn.) z %E süre(sn.)

100 0.25 1 18558 429,24 18511 -0,25 0,74 2 56525 14,05 56525 0,00 0,53 3 3752 60,18 3752 0,00 0,37 4 50382 37,31 50382 0,00 0,08 5 61494 15,92 61494 0,00 0,31 6 36360 38,93 36360 0,00 0,46 7 14657 81,85 14657 0,00 0,35 8 20452 124,41 20369 -0,41 0,78 9 35438 51,27 35438 0,00 0,37 10 24930 228,62 24915 -0,06 0,59

ortalama: 108,18 -0,07 0,46 200 1.00 1 937149 556714,87 937149 0,00 0,60

2 303058 1906,20 303058 0,00 0,91 3 29367 342,63 29367 0,00 0,58 4 100838 158,13 100838 0,00 1,35 5 786635 494,99 786635 0,00 1,12 6 41171 638,06 41171 0,00 0,66 7 701094 1013,55 701094 0,00 0,70 8 782443 141160,03 782443 0,00 0,73 9 628992 1245,45 628925 -0,01 0,78 10 378442 2656,12 378442 0,00 1,14

ortalama: 70633,00 0,00 0,86

Çizelge 4.5’te de görülebileceği gibi belirlenen çözücü kombinasyonu ile 20 test probleminin 16’sında eniyi çözüme ulaşılmış, sadece 4 test probleminde ise %1’in oldukça altında bir hata payı ile oldukça yaklaşılmıştır.

Çözümlerin aynı bilgisayarda yapılmamış olması sebebiyle çözüm süresi karşılaştırması sağlıklı olmasa da HP6000 workstation (2.39GHz., 2.00GB RAM) kullanılarak elde edilen GAMS/DICOPT çözümlerinin tamamının 1.2 saniyenin altında elde edilmiş olması çok dikkat çekicidir.

Sonuç olarak karşılaştırmalarda kullanılacak GAMS paket programı ve DICOPT çözücüsü (MIP=CPLEX, LP=CPLEX, ve NLP=MINOS) karesel sırt çantası problemlerinin çözümünde oldukça başarılıdır diyebiliriz.

4.3.3 Test Sonuçları

Önerilen GA, MS Excel/Visual Basic kullanılarak kodlanmış ve tüm testler HP6000 workstation (2.39GHz., 2.00GB RAM) üzerinde yapılmıştır. Bölümde yer alan istatistiksel analizler MINITAB 13 programı kullanılarak yapılmıştır.

Çizelge 4.4’te özellikleri verilen 32 test probleminin 16’sı 300 ve 16’sı 30 boyutludur. 300 ve 30 boyutlu test problemlerinin çözümünde kullanılan GAGSS

parametreleri, Çizelge 4.6’da verilmiştir. Burada nf algoritmanın çalışabileceği nesil sayısını, ni ise iyileşme olmaksızın izin verilen enbüyük nesil sayısıdır. ni ya da nf ten herhangi birisi belirlenen sayıya ulaştığında algoritma sonlandırılmaktadır.

Çizelge 4.6: 300 ve 30 Boyutlu Problemlerin Çözümünde Kullanılan GA Parametreleri

300 boyutlu problem 30 boyutlu problem

Popülasyon büyüklüğü 50 20

Nesil sayısı (nf) 300 300

İ.Y. nesil sayısı (ni) 100 100 Çaprazlama oranı 0.5 0.5 Mutasyon_1 oranı 0.5 0.5 Mutasyon_2 oranı 0.3 0.3

Mutasyon_2 parametresi 10 3

Farklı özelliklere sahip, rassal olarak türetilmiş 32 test problemi, GAMS/DICOPT ve Çizelge 4.6’da verilen genetik parametre değerleri kullanılarak, GAGSS ile çözülmüştür. Elde edilen sonuçlar Çizelge 4.7’de verilmiştir.

Çizelge 4.7: Test Problemlerinin GAMS/DICOPT ve GAGSS ile Elde Edilmiş Amaç Fonksiyonu Değerleri

örnek GAMS/DICOPT GAGSS % Fark

zG t (sn.) zGA enb zGA ort t (sn) 100 (zGA enb - zG)/ zG

1 - 13000 4948.45 4900.98 12960 100.00

2 - 13000 2515.16 2487.90 6780 100.00

3 - 13000 31854.80 31414.50 11100 100.00

4 - 13000 8126.80 7893.26 4680 100.00

5 2835.30 1 2835.30 2768.18 1 0.00

6 346.40 <1 346.40 346.40 <1 0.00

7 - 13000 63792.80 62929.70 3360 100.00

8 302.51 <1 309.21 308.85 3 2.21

9 8954.74 1211 8784.74 8561.80 1320 -1.90

10 - 13000 - - 1080 0.00

11 7057.00 5 6740.60 6636.74 7500 -4.48

12 - 1891 56769.50 56250.00 8280 100.00

13 - 13000 4039.10 3941.60 1620 100.00

14 26456.79 10 25417.99 24095.60 1500 -3.93

15 91.54 <1 91.54 90.94 <1 0.00

16 - 13000 13396.70 13233.20 3120 100.00

17 4109.70 2177 2805.10 1547.82 10740 -31.74

18 5387.70 <1 5387.70 5387.70 1 0.00

19 6824.12 879 6644.54 6590.27 3480 -2.63

20 1599.85 <1 1599.85 1592.77 1 0.00

21 - 13000 20639.31 20373.40 5820 100.00

22 1923.61 1 1923.61 1589.02 2 0.00

23 471.00 <1 471.00 462.80 1 0.00

24 - 13000 48901.01 48373.30 4620 100.00

25 2111.63 1 2118.33 2021.70 1 0.32

26 1747.6 <1 1747.60 1730.80 1 0.00

27 2245.95 <1 2247.95 2247.95 1 0.09

28 898.6 1 978.80 975.96 1 8.92

29 1903.8 1 1935.80 1563.88 2 1.68

30 721.39 <1 721.39 721.39 1 0.00

31 477.9 1 491.90 487.80 1 2.93

32 11425.2 <1 11254.90 11254.90 <1 -1.49

Çizelge 4.7’de ilk sütun Çizelge 4.4’teki örnek numarasına karşı gelmektedir.

İkinci ve üçüncü sütunlarda test problemlerinin DICOPT çözücüsü ile elde edilmiş sonuçları ve çözüm süreleri yer almaktadır. Burada, problemlerin çözümü için DICOPT’un en fazla 13000 sn. çalışmasına izin verilmiştir. zG bu süre içinde elde edilebilmiş en iyi tamsayı çözümün amaç fonksiyonu değeridir. Aynı test problemleri yine belirlenen sürenin altında sonuç verecek şekilde nesil sayıları sınırlandırılarak, GAGSS ile çözülmüştür. Tüm test problemleri için beşer tekrar yapılmıştır. Çizelge 4.7’nin dört beş ve altıncı sütunlarda sırasıyla bu beş tekrar içindeki en iyi amaç fonksiyonu değeri (zGA), ortalama değer (zGA ort) ve çözüm süreleri yer almaktadır. Son sütunda ise GAMS/DICOPT ve GAGSS ile elde edilen çözümler arasındaki yüzde fark verilmiştir. Burada eğer DICOPT ile izin verilen sürede herhangi bir tamsayı çözüm bulmak mümkün olamadıysa ve GAGSS ile bir çözüme ulaşıldıysa, bu farkın %100 olduğu kabul edilmiştir.

Çizelge 4.7’de görülebileceği gibi 32 test probleminin sadece 4’ünde GAGSS’nin performansı DICOPT’un gerisinde kalmıştır. Bu tabloya bakarak GAGSS’nin DICOPT’a kıyasla daha başarılı olduğunu söylemek yanlış olmayacaktır. Problem boyutlarına göre bakıldığında, 300 boyutlu 16 problemden 10 tanesinin DICOPT ile bir tanesinin de hem DICOPT hem de GAGSS ile çözülemediği görülmektedir. 30 boyutlu problemlerde ise her iki yöntemle elde edilen çözümler arasında çözüm süresi ve kalitesi yönlü ciddi bir fark olmadığı göze çarpmaktadır. Yine bir diğer ilginç nokta da 17. problemin DICOPT çözümünün amaç fonksiyonu değerinin yaklaşık %32 daha başarılı olmasıdır.

Geliştirilen GAGSS’nin hangi özelliklere sahip problemlerde daha başarılı olduğunu daha iyi yorumlayabilmek için performans ölçütü olarak yüzde farkı alarak varyans analizi yapılmış ve ana faktörler için ana etkiler grafikleri çizilmiştir. Çizelge 4.8’de varyans analizi sonuçları, Şekil 4.1’de ise kritik faktörlerin ana etkiler grafikleri verilmiştir.

Çizelge 4.8’de yer alan varyans analizi tablosundan da görülebileceği gibi 0.05 anlam düzeyinde n (problem boyutu), r (aparat sayısı) ve trj (parçaların aparat kullanım profili) faktörleri kritiktir.

Çizelge 4.8: Varyans Analizi Tablosu

Analysis of Variance for fark, using Adjusted SS for Tests

Source DF Seq SS Adj SS Adj MS F P n 1 27651 27651 27651 21,31 0,000 no 1 1761 1761 1761 1,36 0,258 korelas 1 1031 1031 1031 0,79 0,384 k 1 17 17 17 0,01 0,911 kap 1 32 32 32 0,02 0,878 trj 1 5970 5970 5970 4,60 0,045 sr 1 22 22 22 0,02 0,897 kopya 1 44 44 44 0,03 0,857 r 1 6433 6433 6433 4,96 0,038 sigma 1 1133 1133 1133 0,87 0,362 tip 1 1069 1069 1069 0,82 0,375 yogun 1 1936 1936 1936 1,49 0,237 Error 19 24651 24651 1297

Total 31 71750

Şekil 4.1’deki ana etkiler grafiklerinden de yararlanarak, problem boyutunun 300 olduğu, aparat sayısının fazla olduğu ve parçaların aparat kullanım profilinin rassal olduğu problemlerde GAGSS’nin başarısının DICOPT’a kıyasla belirgin bir şekilde fazla olduğunu söylemek mümkündür.

n trj r

-1 1 -1 1 -1 1

0 15 30 45 60

fark

Şekil 4.1: n, r ve trj Faktörleri İçin Ana Etkiler Grafikleri

GAGSS’nin geneldeki başarısına rağmen, bir test probleminde uygun çözümün bulunamamış olması ve bir test probleminde de performansının DICOPT’a kıyasla %32 oranında düşük olması, her ne kadar parametrelerin değerlerinin değiştirilmesi, popülasyon büyüklüğünün ve ardıştırma sayılarının arttırılması gibi yollarla bu performansın arttırılması mümkün olabilecekse de, yöntemsel olarak da daha başarılı bir algoritma arayışının gerekli olduğu düşüncesine yol açmıştır. Bu kapsamada uygun çözüm temelli genişletilmiş subgradient algoritması (UÇT_GSA) ve GAGSS’nin birlikte çalışacağı bir çözüm yaklaşımı önerilmiştir. Önerilen yaklaşım izleyen bölümde tanıtılmıştır.

BÖLÜM 5

GENELLEŞTİRİLMİŞ KARESEL ÇOKLU SIRT ÇANTASI