EGE ÜNĠVERSĠTESĠ FEN BĠLĠMLERĠ ENSTĠTÜSÜ (DOKTORA TEZĠ) METASEZGĠSEL ALGORĠTMALARDA ÇEVRĠMĠÇĠ AYARLAMA ĠLE UYARLANABĠLĠR PARAMETRE KONTROLÜ Bekir AFġAR Tez DanıĢmanı: Prof. Dr. Serdar KORUKOĞLU Bilgisayar Mühendisliği Anabilim Dalı Bilim Dalı Kodu: 619.01.00 SunuĢ Tarihi: 11.09.2014 Bornova-ĠZMĠR 2014 Bekir AFġAR tarafından Doktora tezi olarak sunulan “Metasezgisel Algoritmalarda Çevrimiçi Ayarlama ile Uyarlanabilir Parametre Kontrolü” baĢlıklı bu çalıĢma E.Ü. Lisansüstü Eğitim ve Öğretim Yönetmeliği ile E.Ü. Fen Bilimleri Enstitüsü Eğitim ve Öğretim Yönergesi‟nin ilgili hükümleri uyarınca tarafımızdan değerlendirilerek savunmaya değer bulunmuĢ ve 11.09.2014 tarihinde yapılan tez savunma sınavında aday oybirliği/oyçokluğu ile baĢarılı bulunmuĢtur. Jüri Üyeleri: Ġmza Jüri BaĢkanı : Prof. Dr. Serdar KORUKOĞLU ................................. Raportör Üye: Doç. Dr. Aybars UĞUR ................................. Üye : Yrd. Doç. Dr. Korhan KARABULUT ................................. Üye : Yrd. Doç. Dr. Hasan BULUT ................................. Üye : Yrd. Doç. Dr. Tahir Emre KALAYCI ................................. EGE ÜNĠVERSĠTESĠ FEN BĠLĠMLERĠ ENSTĠTÜSÜ ETĠK KURALLARA UYGUNLUK BEYANI E.Ü. Lisansüstü Eğitim ve Öğretim Yönetmeliğinin ilgili hükümleri uyarınca Doktora Tezi olarak sunduğum “Metasezgisel Algoritmalarda Çevrimiçi Ayarlama ile Uyarlanabilir Parametre Kontrolü” baĢlıklı bu tezin kendi çalıĢmam olduğunu, sunduğum tüm sonuç, doküman, bilgi ve belgeleri bizzat ve bu tez çalıĢması kapsamında elde ettiğimi, bu tez çalıĢmasıyla elde edilmeyen bütün bilgi ve yorumlara atıf yaptığımı ve bunları kaynaklar listesinde usulüne uygun olarak verdiğimi, tez çalıĢması ve yazımı sırasında patent ve telif haklarını ihlal edici bir davranıĢımın olmadığını, bu tezin herhangi bir bölümünü bu üniversite veya diğer bir üniversitede baĢka bir tez çalıĢması içinde sunmadığımı, bu tezin planlanmasından yazımına kadar bütün safhalarda bilimsel etik kurallarına uygun olarak davrandığımı ve aksinin ortaya çıkması durumunda her türlü yasal sonucu kabul edeceğimi beyan ederim. 11 / 09 / 2014 Ġmzası Bekir AFġAR vii ÖZET METASEZGĠSEL ALGORĠTMALARDA ÇEVRĠMĠÇĠ AYARLAMA ĠLE UYARLANABĠLĠR PARAMETRE KONTROLÜ AFġAR, Bekir Doktora Tezi, Bilgisayar Mühendisliği Anabilim Dalı Tez DanıĢmanı: Prof. Dr. Serdar KORUKOĞLU EYLÜL 2014, 105 sayfa Metasezgisel algoritmalar (Metaheuristic Algorithms - MHA)‟ın sahip olduğu stratejik parametreler için belirlenen değerler, algoritmaların performansına doğrudan etki etmektedir. Problemden bağımsız geliĢtirilen MHA‟ların daha iyi bir performansa sahip olmaları için parametre değerlerinin problemden probleme değiĢkenlik göstermesi ve ayrıca algoritmanın çalıĢması sırasında güncellenmesi gerekmektedir. Bu tez çalıĢmasında, MHA‟lar için stratejik öneme sahip parametreler için iki adet çevrimiçi parametre kontrol yöntemi geliĢtirilmiĢtir. Bunlardan birincisi, çalıĢma zamanında arama sürecinden gelen geri-bildirimlere göre parametre değerlerinin güncellendiği uyarlanabilir parametre kontrolüdür. Ġkincisi ise parametre değerlerinin doğrudan algoritmanın yönetimine bırakıldığı kendindenuyarlanabilir parametre kontrolü yöntemidir. Önerilen bu yöntemler, MHA‟ların iyi örneklerinden olan; yapay arı kolonisi (Artificial Bee Colony - ABC) algoritmalarından Improved ABC (IABC) algoritması ile ateĢ böceği algoritması (Firefly Algorithm - FA) üzerinde uygulanmıĢtır. GeliĢtirilen uyarlanabilir IABC ve FA versiyonları, büyük ölçekli eniyileme problemlerini içeren SOCO fonksiyon kümesi üzerinde çalıĢtırılarak yöntemlerin baĢarımı değerlendirilmiĢtir ve tartıĢılmıĢtır. Anahtar sözcükler: Metasezgisel algoritmalar, uyarlanabilir parametre kontrolü, kendinden-uyarlanabilir parametre kontrolü, çevrimiçi ayarlama, yapay arı kolonisi algoritması, improved ABC algoritması, ateĢ böceği algoritması. ix ABSTRACT ADAPTIVE PARAMETER CONTROL IN METAHEURISTIC ALGORITHMS USING ONLINE TUNING AFġAR, Bekir Ph.D. in Computer Engineering Supervisor: Prof. Dr. Serdar KORUKOĞLU September 2014, 105 pages Specified values of the strategic parameters owned by the metaheuristic algorithms (MHA) have a direct impact on the performances of the algorithms. For better performance of problem independently developed MHA‟s, parameter values are subject to change from problem to problem and also need to be updated during the run of the algorithm. In this thesis, two online parameter control methods have been developed for the strategic parameters of MHAs. One of them is, adaptive parameter control which updates parameter values according to the feedbacks coming from the search process during run of the algorithm. The second method is management of the parameter values left to the algorithm itself called self-adaptive parameter control. These two methods have been applied to the improved ABC (IABC), one of the artificial bee colony (ABC) variant, and firefly algorithm (FA), which are good examples of MHA‟s. Developed adaptive IABC and FA algorithms were tested on SOCO function set which has large-scale optimization problems and performance of the methods was evaluated and discussed. Keywords: Metaheuristic algorithms, adaptive parameter control, selfadaptive parameter control, online tuning, artificial bee colony algorithm, improved ABC algorithm, firefly algorithm. xi TEġEKKÜR Bu tez çalıĢması süresince, deneyimleri ve önerilerinden yararlandığım danıĢmanım Sayın Prof. Dr. Serdar KORUKOĞLU‟na, tezin baĢından itibaren bana her konuda yardımcı olan Ege Üniversitesi Bilgisayar Mühendisliği Bölümü öğretim üyesi Sayın Doç. Dr. Aybars UĞUR‟a, tez konusunu ve kapsamını belirlemede bana yardımcı olan, tez süresince her türlü desteği veren ve birikimlerini benimle paylaĢan Dumlupınar Üniversitesi Bilgisayar Mühendisliği Bölümü öğretim üyesi Sayın Yrd. Doç. Dr. Doğan AYDIN‟a teĢekkür ederim. Tezin bitiĢ aĢamasında bana verdikleri değerli katkıları için Ege Üniversitesi Bilgisayar Mühendisliği Bölümü öğretim üyesi Sayın Yrd. Doç. Dr. Hasan Bulut‟a, YaĢar Üniversitesi Yazılım Mühendisliği Bölümü öğretim üyesi Sayın Yrd. Doç. Dr. Korhan KARABULUT‟a ve Celal Bayar Üniversitesi Bilgisayar Mühendisliği Bölümü öğretim üyesi Sayın Yrd. Doç. Dr. Tahir Emre KALAYCI‟ya teĢekkür ederim. Tez süresince sıkıntılarımı paylaĢtığım, tez çalıĢmaları nedeni ile daha az vakit ayırmak durumunda kaldığım, dert ortağım, sevgili eĢim Elif AFġAR‟a teĢekkür ederim. Tez döneminde dünyaya gelen, Ģimdilerde her eve gidiĢimde “babacım” diyerek kucağıma atlayan ve moral-motivasyonumun düĢtüğü dönemlerde tatlı gülücükleriyle beni neĢelendiren biricik kızım Yaren Ġpek AFġAR‟a teĢekkür ederim. Ayrıca tezin yazım aĢamasında bana destek olan Ege Üniversitesi Bilgisayar Mühendisliği Bölümü‟ndeki tüm çalıĢma arkadaĢlarıma teĢekkür ederim. xiii ĠÇĠNDEKĠLER Sayfa ÖZET ..................................................................................................................... vii ABSTRACT ........................................................................................................... ix TEġEKKÜR ........................................................................................................... xi ġEKĠLLER DĠZĠNĠ ............................................................................................. xvii ÇĠZELGELER DĠZĠNĠ ......................................................................................... xix KISALTMALAR DĠZĠNĠ .................................................................................... xxi 1. GĠRĠġ ............................................................................................................... 1 2. METASEZGĠSEL ALGORĠTMALARDA PARAMETRE KONTROLÜ..... 5 2.1 Metasezgisel Kavramı ....................................................................................... 6 2.2 Metasezgisel Algoritmalar ................................................................................. 7 2.3 Metasezgisel Algoritmalarda Parametre Ayarlama Yöntemleri ...................... 10 2.3.1 ÇevrimdıĢı ayarlama .................................................................................... 10 2.3.2 Çevrimiçi ayarlama ...................................................................................... 12 3. GELĠġTĠRĠLEN PARAMETRE KONTROL YÖNTEMLERĠ .................... 14 3.1 Benzer ÇalıĢmalar ............................................................................................ 14 3.2 Parametre Kontrol Yöntemleri ........................................................................ 17 3.2.1 Stratejik parametrelerin belirlenmesi ............................................................ 17 3.2.2 Stratejik parametrelerin değer aralığının belirlenmesi ................................. 18 3.2.3 Uyarlanabilir parametre kontrolü ................................................................. 19 xiv ĠÇĠNDEKĠLER (devam) Sayfa 3.2.4 Kendinden-uyarlanabilir parametre kontrolü ................................................21 4. YAPAY ARI KOLONĠSĠ ALGORĠTMALARI ............................................ 23 4.1 Orijinal Yapay Arı Kolonisi Algoritması.........................................................23 4.2 Yapay Arı Kolonisi Versiyonları .....................................................................26 4.2.1 Gbest-guided ABC (GABC) algoritması ......................................................26 4.2.2 Gbest ABC (GbABC) ve Gbest Distance ABC (GbdABC) algoritmaları ...26 4.2.3 Best-so-far ABC (BABC) algoritması ...........................................................27 4.2.4 Modified ABC (MABC) algoritması.............................................................28 4.2.5 Chaotic ABC (CABC) algoritması ...............................................................29 4.2.6 Rosenbrock ABC (RABC) algoritması .........................................................30 4.2.7 Incremental ABC (IncABC) algoritması ......................................................30 4.2.8 Improved ABC (IABC) algoritması ..............................................................31 4.3 GerçekleĢtirimi YapılmıĢ Gerçek Dünya Problemleri .....................................32 4.3.1 Frekans modülasyonlu ses dalgaları için parametre tahminleme..................32 4.3.2 GeniĢ spektrumlu radar çokfazlı kod tasarımı ..............................................32 4.4 Deneysel Sonuçlar............................................................................................33 4.4.1 Deneysel kurulum .........................................................................................34 4.4.2 Varsayılan parametre değerleri ile ABC sonuçlarının karĢılaĢtırılması........34 4.4.3 AyarlanmıĢ parametre değerleri ile ABC sonuçlarının karĢılaĢtırılması ......36 xv ĠÇĠNDEKĠLER (devam) Sayfa 4.4.4 Literatürdeki algoritmalar ile ABC sonuçlarının karĢılaĢtırılması ............... 40 5. IMPROVED ABC ÜZERĠNDE UYARLANABĠLĠR PARAMETRE KONTROLÜ ......................................................................................................... 42 5.1 Improved ABC Algoritması için ABC Üzerindeki DeğiĢiklikler .................... 43 5.2 Stratejik Parametrelerin Belirlenmesi .............................................................. 44 5.3 Uyarlanabilir IABC (AIABC) Algoritması ..................................................... 47 5.3.1 Stratejik parametrelerin değer aralığının belirlenmesi ................................. 49 5.3.2 Stratejik parametreler üzerinde uyarlanabilir parametre kontrolü ................ 50 5.4 Kendinden-uyarlanabilir IABC (SaIABC) Algoritması .................................. 53 5.4.1 Stratejik parametrelerin değer aralığının belirlenmesi ................................. 53 5.4.2 Stratejik parametreler üzerinde kendinden-uyarlanabilir parametre kontrolü ............................................................................................................................... 54 5.5 Deneysel Sonuçlar ........................................................................................... 55 5.5.1 Deneysel kurulum ......................................................................................... 55 5.5.2 Varsayılan parametre değerleri ile karĢılaĢtırma .......................................... 56 5.5.3 AyarlanmıĢ Parametre Değerleri ile KarĢılaĢtırma ....................................... 63 5.5.4 Literatürdeki Algoritmalar ile AIABC ve SaIABC Sonuçlarının KarĢılaĢtırılması ..................................................................................................... 70 6. ATEġ BÖCEĞĠ ALGORĠTMASI ÜZERĠNDE UYARLANABĠLĠR PARAMETRE KONTROLÜ ................................................................................ 74 xvi ĠÇĠNDEKĠLER (devam) Sayfa 6.1 AteĢ Böceği Algoritması ..................................................................................75 6.2 Stratejik Parametrelerin Belirlenmesi ..............................................................77 6.3 Uyarlanabilir FA (AFA) Algoritması ..............................................................77 6.3.1 Stratejik parametrelerin değer aralığının belirlenmesi ..................................78 6.3.2 Stratejik parametreler üzerinde uyarlanabilir parametre kontrolü ................79 6.4 Kendinden-uyarlanabilir FA (SaFA) Algoritması ...........................................81 6.4.1 Stratejik parametrelerin değer aralığının belirlenmesi ..................................81 6.4.2 Stratejik parametreler üzerinde kendinden-uyarlanabilir parametre kontrolü ................................................................................................................................82 6.5 Deneysel Sonuçlar............................................................................................83 6.5.1 Deneysel kurulum .........................................................................................83 6.5.2 Varsayılan parametre değerleri ile karĢılaĢtırma ..........................................84 6.5.3 AyarlanmıĢ parametre değerleri ile karĢılaĢtırma .........................................86 7. SONUÇ VE TARTIġMA .............................................................................. 89 KAYNAKLAR DĠZĠNĠ ......................................................................................... 94 ÖZGEÇMĠġ ......................................................................................................... 105 EKLER . ..................................................................................................................... xvii ġEKĠLLER DĠZĠNĠ ġekil Sayfa 2.1. Evrimsel algoritmalarda parametre belirleme yöntemleri .............................. 12 3.1. Uyarlanabilir parametre kontrolü akıĢ diyagramı ........................................... 20 3.2. SP'lerin aday çözüme yeni boyut olarak eklenmesi........................................ 21 4.1. Problem 1 için Interval Plot grafiği (50000 FEs) ........................................... 38 4.2. Problem 2 için Interval Plot grafiği (50000 FEs) ........................................... 39 4.3. Problem 1 için Interval Plot grafiği (100000 FEs) ......................................... 39 4.4. Problem 2 için Interval Plot grafiği (100000 FEs) ......................................... 39 4.5. Problem 1 için Interval Plot grafiği (150000 FEs) ......................................... 40 4.6. Problem 2 için Interval Plot grafiği (150000 FEs) ......................................... 40 5.1. Problem 1 için m değerinin IABC performansına etkisi ................................ 46 5.2. Problem 2 için m değerinin IABC performansına etkisi ................................ 46 5.3. Problem 1 için p değerinin IABC performansına etkisi. ................................ 47 5.4. Problem 2 için p değerinin IABC performansına etkisi ................................. 47 5.5. m ve p değerlerini tutan dizilerin yeniden ilklenmesi ve yeniden üretilmesi . 48 5.6. SaIABC için yeni çözüm dizisi yapısı ............................................................ 55 5.7. Varsayılan parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler .............................................................................................. 57 5.8. Varsayılan parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler .............................................................................................. 58 5.9. Varsayılan parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler .............................................................................................. 58 xviii ġEKĠLLER DĠZĠNĠ (devam) ġekil Sayfa 5.10. AyarlanmıĢ parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler ............................................................................................... 65 5.11. AyarlanmıĢ parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler. ................................................................................. 65 5.12. AyarlanmıĢ parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler .................................................................................. 65 5.13. 50 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları ......................................................... 71 5.14. 100 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları ......................................................... 72 5.15. 500 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları. ........................................................ 72 6.1. SaFA için yeni çözüm dizisi yapısı ................................................................. 83 xix ÇĠZELGELER DĠZĠNĠ Çizelge Sayfa 4.1. ABC algoritmalarının varsayılan parametre değerleri .................................... 35 4.2. Varsayılan parametre değerleri ile elde edilen sonuçlar ................................. 35 4.3. ABC algoritmalarının ayarlanmıĢ parametre değerleri................................... 37 4.4. AyarlanmıĢ parametre değerleri ile elde edilen sonuçlar ............................... 37 4.5. Problem 1 için literatürdeki algoritmalar ile karĢılaĢtırma. ............................ 41 4.6. Problem 2 için literatürdeki algoritmalar ile karĢılaĢtırma. ............................ 41 5.1. m değerinin IABC performansına etkisi. ........................................................ 45 5.2. p değerinin IABC performansına etkisi. ......................................................... 46 5.3. SOCO fonksiyonları için ABC algoritmalarının ayarlanmıĢ parametre değerleri. ................................................................................................................ 56 5.4. Friedman testinden elde edilen p değerleri. .................................................... 59 5.5. Varsayılan parametre değerleri ile 50 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler. ........................... 60 5.6. Varsayılan parametre değerleri ile 100 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ............................ 61 5.7. Varsayılan parametre değerleri ile 500 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler. ........................... 62 5.8. Friedman testinden elde edilen p değerleri. .................................................... 63 5.9. Friedman testinden elde edilen p değerleri. .................................................... 66 5.10. AyarlanmıĢ parametre değerleri ile 50 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler. ........................... 67 xx ÇĠZELGELER DĠZĠNĠ (devam) Çizelge Sayfa 5.11. AyarlanmıĢ parametre değerleri ile 100 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler. ............................ 68 5.12. AyarlanmıĢ parametre değerleri ile 500 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler. ............................ 69 5.13. Friedman testinden elde edilen p değerleri. .................................................. 70 5.14. Friedman testinden elde edilen p değerleri. .................................................. 73 6.1. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ....... 84 6.2. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ...... 84 6.3. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 10 boyutlu problemler için sonuçları. ......................................................................... 85 6.4. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 50 boyutlu problemler için sonuçları. ......................................................................... 85 6.5. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 100 boyutlu problemler için sonuçları. .................................................................. 86 6.6. Friedman testinden elde edilen p değerleri ..................................................... 86 6.7. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 10 boyutlu problemler için sonuçları .......................................................................... 87 6.8. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 50 boyutlu problemler için sonuçları .......................................................................... 87 6.9. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 100 boyutlu problemler için sonuçları ................................................................... 88 6.10. Friedman testinden elde edilen p değerleri ................................................... 88 xxi KISALTMALAR DĠZĠNĠ Kısaltmalar Açıklama ABC Yapay arı kolonisi ACO Karıncı kolonisi eniyilemesi AFA Uyarlanabilir ateĢ böceği algoritması AIABC Uyarlanabilir iyileĢtirilmiĢ (improved) yapay arı kolonisi BABC Best-so-far yapay arı kolonisi CABC Chaotic yapay arı kolonisi CEC IEEE Conference on Evolutionary Competition CS Guguk kuĢu arama algoritması D Problem boyutu DE Diferansiyel geliĢim algoritması EA Evrimsel algoritmalar EC Evrimsel hesaplama EP Evrimsel programlama ES Evrim stratejileri FA AteĢ böceği algoritması FEs Function evaluations (Fonksiyon hesaplama sayısı) FM Frekans modülasyonlu xxii KISALTMALAR DĠZĠNĠ (devam) Kısaltmalar Açıklama GA Genetik algoritmalar GABC Gbest-güdümlü (guided) yapay arı kolonisi GbABC Gbest yapay arı kolonisi GbdABC Gbest distance yapay arı kolonisi IABC Improved yapay arı kolonisi IncABC Artımlı (incremental) yapay arı kolonisi L Limit MABC DeğiĢtirilmiĢ (modified) yapay arı kolonisi MCN Maksimum yineleme sayısı MHA Metasezgisel algoritmalar MR Modification rate N Popülasyon büyüklüğü PSO Parçacık sürü eniyilemesi RABC Rosenbrock yapay arı kolonisi RM Rosenbrock dairesel yön metodu SaFA Kendinden-uyarlanabilir ateĢ böceği algoritması xxiii KISALTMALAR DĠZĠNĠ (devam) Kısaltmalar Açıklama SaIABC Kendinden-uyarlanabilir Imroved yapay arı kolonisi SF Ölçeklendirme faktörü (scaling factor) SN Yiyecek kaynağı sayısı SOCO Soft Computing SP Stratejik parametreler SZ Sürü zekası YO Yeniden oluĢum olasılığı 1 1. GĠRĠġ Metasezgisel algoritmalar, eniyilenecek bir problem için aday çözümü (candidate solution) yinelemeli bir Ģekilde iyileĢtirmeye çalıĢan yaklaĢım (approximation) algoritmalarıdır. MHA‟lar her zaman en iyi (optimal) çözümü garanti edemezler ancak kısa bir zaman diliminde en iyi yada en iyiye yakın çözümü bulabilme potansiyeline sahiptirler. Metasezgisel yöntemler, temel sezgisel (heuristic) yöntemleri yöneterek çözüm uzayını etkin bir Ģekilde aramayı hedefleyen yöntemlerdir. Glover (1986) tarafından ilk olarak ortaya atılan metasezgisel (metaheuristic) kavramı, üst seviye keĢfetmek veya bulmak anlamlarına gelmektedir. Eniyileme problemlerinde arama sürecine rehberlik eden stratejileri kapsamaktadır. Arama uzayında yer alan yerel en iyilerden kurtulmak için çeĢitli mekanizmaları içinde barındırırlar. MHA‟ların tasarımı, uygun parametrik Ģifrelemenin geliĢtirilmesi, uygun arama operatörlerinin belirlenmesi gibi birçok aktiviteyi içermektedir. Ayrıca MHA‟ların davranıĢlarını belirleyen parametre sayısının belirlenmesi de MHA tasarımının bir parçasıdır. Parametreler MHA‟ların tanımını tamamlarlar ve algoritmanın ideal veya ideale yakın çözümü bulup bulamayacağını belirlerler. Parametre ayarlama (parameter tuning) MHA tasarımı için oldukça önemli bir adımdır ve uzun zamandır üzerinde çalıĢılan bir araĢtırma alanıdır (Eiben et al., 1999; Eiben and Smith, 2003). Çünkü ideal parametre değerleri, algoritmanın en uygun çözüme etkin bir Ģekilde ulaĢmasını sağlamaktadır. Eniyileme algoritmaları, eniyileme problemlerinden bağımsız bir Ģekilde geliĢtirilirler. Eniyileme algoritmalarının doğasında varolan bu durum, algoritmaların bazı problemlerde baĢarılı sonuçlar üretirken bazı problemlerde baĢarısız sonuçlar üretmesine neden olabilmektedir. Bu nedenle algoritmaların çözülecek eniyileme problemine uyarlanabilir olması gerekmektedir. Parametre uyarlama (parameter adaptation), algoritmaların farklı eniyileme problemlerinde benzer performanslar sergilemeleri için önemli bir araĢtırma alanıdır. Algoritmalar farklı eniyileme problemlerinde farklı parametre değerlerine ihtiyaç duyarlar. Ayrıca bu parametre değerleri, yerel en iyilerden kaçınmak ve çözüme yaklaĢma hızını artırmak için algoritmanın çalıĢması esnasında güncellenmelidir. Eiben et al. (1999) parametre kontrol yöntemlerini üç baĢlıkta incelemiĢtir. Deterministik parametre kontrolü olarak adlandırılan ilk yöntemde parametre değerleri deterministik ve statik bir kural tarafından değiĢtirilir. Ġkinci yöntem olan 2 uyarlanabilir parametre kontrolünde ise algoritmanın çalıĢması esnasında arama uzayından gelen geri bildirimlere göre parametre değerleri güncellenmektedir. Üçüncü yöntem olan kendinden-uyarlanabilir parametre kontrolünde ise uyarlanacak parametreler aday çözümün bir parçası haline getirilmekte ve parametre değerlerinin güncellenmesi algoritmanın kendisine bırakılmaktadır. MHA‟ların bir alt kolu olan ve sürü zekasından esinlenerek ortaya çıkarılmıĢ algoritmalara sürü zekâsı tabanlı (swarm intelligence based) algoritmalar denmektedir. Sürü zekâsı (SZ), sürü halinde yaĢamlarını sürdüren, birbirleri ile etkileĢim halinde bulunan ve kendi kendilerine organize olabilen etmenler ile ilgili bir araĢtırma alanıdır. Karınca ve arı kolonileri, kuĢ ve balık sürüleri SZ‟na sahip olan baĢlıca sürü örnekleridir. Bu sürüler, yaĢamları boyunca birlikte hareket etme, beslenme, doğru yola yönlenme, vb. problemleri çözmek durumundadırlar. AraĢtırmacılar, sürülerin problem çözme kabiliyetlerinden ve davranıĢlarından esinlenerek sayısal eniyileme problemleri için yeni algoritmalar önermiĢlerdir. Örneğin; parçacık sürü eniyilemesi (particle swarm optimization - PSO) kuĢ veya balık sürüleri davranıĢlarından esinlenerek (Kennedy and Eberhart, 1995), karınca kolonisi eniyilemesi (ant colony optimization - ACO) karınca kolonilerinin beslenme davranıĢlarından esinlenerek (Dorigo, 1992), ateĢ böceği algoritması (firefly algorithm - FA) ateĢ böceklerinin sosyal yaĢamlarından esinlenerek (Yang, 2008), guguk kuĢu arama algoritması (cuckoo search algorithm - CS) guguk kuĢlarının kuluçka dönemindeki davranıĢlarından esinlenilerek (Yang and Deb, 2010) öne sürülen SZ-tabanlı algoritmalardır. Bir diğer SZ-tabanlı algoritma olan yapay arı kolonisi (artificial bee colony ABC) algoritması (Karaboga and Basturk, 2007), bal arılarının yem arama davranıĢlarından esinlenilerek ortaya çıkarılmıĢtır. ABC algoritması, az sayıda kontrol parametresine sahip olması, basitliği ve kolay geliĢtirilebilir olması nedeni ile birçok sayısal eniyileme problemlerinin çözümünde yaygın bir Ģekilde kullanılmaya baĢlanmıĢtır (Singh, 2009; Kang et al., 2009; Samrat et al., 2010). Ancak, ABC algoritmasının bir takım problemlerde diğer popülasyon tabanlı algoritmalara göre çözüme yaklaĢma hızının (convergence speed) yavaĢ olduğu ve yerel eniyilere (local optimums) takıldığı görülmektedir. Bu nedenle ABC algoritması iyileĢtirilmeye çalıĢılmıĢ ve yeni ABC versiyonları önerilmiĢtir. Improved ABC (IABC) algoritması, orijinal ABC algoritmasının çözüme yaklaĢma hızını artırmak için Gao and Liu (2011) tarafından geliĢtirilmiĢ bir ABC versiyonudur. Yeni bir ilkleme yaklaĢımı ve arama mekanizması orijinal ABC 3 algoritmasına eklenmiĢtir. Küçük boyutlu problemlerde diğer ABC algoritmaları ile rekabetçi sonuçlar veren IABC, problem boyutu büyüdükçe kötü sonuçlar vermektedir (Liao et al., 2013). FA algoritması, gerçek ateĢ böceklerinin biyokimyasal ve sosyal davranıĢlarından esinlenilenerek Yang (2008) tarafından geliĢtirilmiĢtir. AteĢ böceklerinin birbirleri ile etkileĢimlerini baz alarak geliĢtirilen FA algoritmasının çözüme yaklaĢma hızını artırmak ve yerel en iyilerden kaçınmasını sağlamak için farklı versiyonları geliĢtirilmiĢtir (Fister at al., 2013). Bu tez kapsamında, MHA‟lar probleme uyarlanabilir duruma getirilerek farklı problemlerde iyi sonuçlar üretmesi hedeflenmiĢtir ve bu kapsamda uyarlanabilir ve kendinden-uyarlanabilir parametre kontrolü için iki yeni yöntem önerilmiĢtir. Önerilen yöntemlerin baĢarılarının tespiti için iki farklı MHA üzerinde gerçekleĢtirimi yapılmıĢtır. Yaygın bir Ģekilde kullanılıyor olmaları, az sayıda parametre içermeleri, gerçekleĢtirimlerinin basit olması, yeni algoritma olmaları ve literatürde yerini almıĢ uyarlanabilir versiyonlarının olmaması nedeni ile ABC ve FA algoritmaları üzerinde çalıĢılmıĢtır. ABC algoritmalarından IABC algoritması, gerçekleĢtirimi yapılan gerçek dünya problemlerinde baĢarılı sonuçlara ulaĢması, yüksek boyutlu problemlerde bu iyi performansı gösterememesi ve yerel en iyilere kolay takılıyor olması nedeni ile ilk üzerinde çalıĢılacak algoritma olarak seçilmiĢtir. GeliĢtirilen parametre kontrol yöntemleri IABC algoritması üzerinde gerçekleĢtirilmiĢtir. Elde edilen uyarlanabilir IABC algoritmaları, baĢarılarının tespit edilmesi için Soft Computing dergisinde düzenlenen özel sayıda (Editorial scalability of evolutionary algorithms and other metaheuristics for large-scale continuous optimization problems - SOCO) (Lozano et al., 2011) önerilen fonksiyonlar üzerinde çalıĢtırılarak deneysel sonuçlar elde edilmiĢ ve diğer ABC algoritmaları baĢta olmak üzere literatürdeki algoritmalar ile karĢılaĢtırmaları yapılmıĢtır. Ayrıca geliĢtirilen yöntemler, tüm MHA‟lara uygulanabilirliğini sınamak için baĢka bir MHA olan ateĢböceği algoritması üzerinde gerçekleĢtirilmiĢ ve aynı problem kümesi üzerinde deneysel sonuçları alınarak karĢılaĢtırılması yapılmıĢtır. Tezin ikinci bölümünde, metasezgisel kavramı, metasezgisel algoritmalar ve metasezgisel algoritmalarda parametre kontrol yöntemleri aktarılmaktadır. Üçüncü bölümde, tez kapsamında metasezgisel algoritmalar için geliĢtirilen iki adet parametre kontrol yöntemi anlatılmıĢtır. Dördüncü bölümde, yapay arı kolonisi algoritmaları ve gerçekleĢtirimi yapılan iki adet gerçek dünya problemine yer 4 verilmektedir. BeĢinci bölümde, tez kapsamında geliĢtirilmiĢ olan parametre kontrol yöntemlerinin IABC üzerinde gerçekleĢtirilmesi anlatılmaktadır. Altıncı bölümde, yine aynı parametre kontrol yöntemlerinin FA algoritmasında uygulanmasına yer verilmektedir. Son bölümde ise, bu tez çalıĢmasının sonuçları ortaya konmaktadır ve tartıĢılmaktadır. 5 2. METASEZGĠSEL ALGORĠTMALARDA PARAMETRE KONTROLÜ Eniyileme (optimization), belirli alternatifler arasında ihtiyacı en etkin bir Ģekilde karĢılayacak alternatifi seçme iĢidir (Yang, 2010a). Günlük hayatımızda ve iĢ hayatımızda aslında sürekli karĢımıza çıkan problemleri eniyilemeye çalıĢırız. Örneğin; bir tatil planı yaparken, hangi yoldan ve ne tür bir seyahat Ģekli ile gidileceği, hangi otelde kalınacağı ve kaç gün süreceği gibi sorulara kalite, zaman ve ucuzluk ölçütlerine bakarak karar vermeye çalıĢırız. Dolayısı ile tatili gerçekleĢtirmek için var olan seçenekler arasında hangi seçenekler sahip olduğumuz kaynaklara ve kısıtlamalara daha uygunsa onları seçerek aslında eniyileme yaparız. Matematikte ve bilgisayar bilimlerinde ise eniyileme, mevcut çözüm alternatifleri arasından belirlenen kısıtlar göz önünde bulundurularak en iyi çözümün bulunması iĢidir. Bir eniyileme problemi bir fonksiyon ile formüle edilir ve o problemin amacına göre fonksiyona girdi olarak verilecek en uygun değerler bulunmaya çalıĢılır. Bir problemin amacı ise sonucu ya en üst seviyeye (maximize) yada en alt seviyeye (minimize) çekmektir (Yang, 2010a). Eniyileme problemlerini çözmek için eniyileme algoritmaları geliĢtirilmiĢtir. Bazı eniyileme algoritmaları sabit bir iĢleyiĢ ile yinelemeli bir Ģekilde en iyi çözümü bulmaya çalıĢırlar. Bu algoritmalar deterministik (deterministic) algoritmalar olarak bilinmektedir. Bazı eniyileme algoritmaları ise rastgelelik barındırırlar ve her çalıĢtırıldıklarında farklı çözümler elde edilebilir. Bu tür eniyileme algoritmaları ise rassal (stochastic) algoritmalar olarak adlandırılmıĢtır. Bu iki yaklaĢımın birleĢtirildiği melez algoritmalar da bulunmaktadır. Rassal algoritmalar, sezgisel ve metasezgisel yöntemleri kullanan algoritmalardır. Bu algoritmalar parametrik yapıdadırlar ve parametre değerlerinin belirlenmesi önemli bir adımdır. Tez kapsamında metasezgisel algoritmalar üzerinde çalıĢılmıĢtır. Bu bölümde ilk olarak metasezgisel kavramı tanımlanacaktır. Ġkinci olarak metasezgisel algoritmalardan bahsedilecektir ve son olarak literatürde yer alan metasezgisel algoritmalarda parametre belirleme yöntemleri tanıtılacaktır. 6 2.1 Metasezgisel Kavramı Sezgisel kavramı bulmak veya deneme yanılma yoluyla keĢfetmek anlamlarına gelmektedir. Metasezgisel ise üst seviye bulmak veya keĢfetmek anlamını taĢımaktadır. Metasezgisel yöntemler, sezgisel yöntemleri birleĢtirerek ve yöneterek problem çözümüne ulaĢmaya çalıĢırlar. Literatür incelendiğinde metasezgisel kavramı için birçok tanımlama yapıldığı görülmektedir: “Bir metasezgisel, arama uzayını araştırmak yani çözüm çeşitliliği oluşturmak (exploring) ve bulunan bilgiyi işletmek ve ondan faydalanmak (exploiting) için farklı kavramları zeki bir şekilde birleştirerek alt seviye sezgisellere rehberlik eden yinelemeli üretim sürecidir.” (Osman and Laporte, 1996). “Bir metasezgisel, arama uzayında normalde oluşan yerel en iyilerin ötesinde bir çözüm üretmek için diğer sezgisellere rehberlik eden veya diğer sezgiselleri değiştiren ana stratejilerdir.” (Glover and Laguna, 1997). “Metasezgisel, iyi ve kaliteli çözümleri etkin bir şekilde elde etmek için alt seviye sezgisellere rehberlik eden yinelemeli üst seviye bir süreçtir. Alt seviye sezgiseller, basit yerel arama algoritması veya çözüm üretici bir yöntem olabilir.” (Voss et al., 1999). “Metasezgiseller, arama uzayında yüksek kaliteli çözümlere ulaşmak için probleme özgü sezgisellere rehberlik eden yüksek seviye stratejilerdir. Amaç, yerel en iyi çözümlerden kaçınmaktır.” (Stützle, 1999). “Bir metasezgisel, arama uzayının kaliteli çözümlerini içeren bölümlerinde aramayı yoğunlaştırmak için probleme özgü sezgisellere rehberlik etmek amacıyla tasarlanan genel amaçlı sezgisel yöntemdir.” (Dorigo and Stützle, 2004). Literatürdeki tanımlar incelendiğinde bir metasezgiselin, problem çözümünde arama uzayını etkin bir Ģekilde aramak ve yerel en iyilerden kaçınmak için alt seviye sezgiselleri yönetmesi anlamına geldiği görülmektedir. 7 2.2 Metasezgisel Algoritmalar Metasezgisel algoritmalar, eniyileme problemlerini sezgisel yöntemlere rehberlik ederek çözmeye çalıĢan yaklaĢım algoritmalarıdır. MHA‟ların doğasında dinamiklik ve rastgelelik vardır. Sezgisellerin etkin bir Ģekilde yönetilmesi hedeflenilerek yerel en iyilerden kaçınmaya çalıĢırlar. MHA‟ların temel özellikleri aĢağıda verilmektedir (Blum and Roli, 2003): Metasezgiseller, arama sürecine rehberlik eden stratejilerdir. Amaç, arama uzayını etkin bir Ģekilde tarayarak en uygun veya en uyguna yakın çözümü bulmaktır. MHA‟larda basit yerel aramadan karmaĢık öğrenme süreçlerine kadar çeĢitli yöntemler kullanılmaktadır. MHA‟lar yaklaĢım algoritmalarıdır ve rastgelelik barındırırlar. Arama uzayında yerel en mekanizmaları birleĢtirirler. iyilere takılmamak için çeĢitli Metasezgiseldeki temel kavramlar soyut düzeyde açıklamalara izin verir. Metasezgiseller problemden bağımsızdırlar. Herhangi bir MHA‟da keĢif (diversification or exploration) ve faydalanma (intensification or exploitation) olmak üzere iki ana bileĢen bulunmaktadır (Blum and Roli, 2003). KeĢif, farklı çözümlerin üretilmesi yani arama uzayının tamamının araĢtırılması iken, faydalanma ise o anki aramada iyi çözümün bulunduğu arama bölgesine odaklanılması ve oradaki bilginin kullanılması anlamına gelmektedir. Metasezgiseller faydalanma ve keĢif arasındaki dengeyi oluĢturarak en iyi çözüme ulaĢmayı hedeflerler. KeĢif sayesinde yerel en iyilerden kaçınılır ve faydalanma sayesinde genel en iyiye ulaĢılmaya çalıĢılır. Ġnsanlık tarihinde birçok problem çözme süreci sezgiseller ile gerçekleĢtirilmiĢtir. 1940‟lardan 1960‟lara birçok alanda problem çözümünde sezgiseller bilimsel olarak kullanılmaya baĢlansa da en çok bilinen çalıĢmalar 8 evrimsel algoritmalar ile gerçekleĢtirilmiĢtir. Evrimsel algoritmalar (EA), eniyileme problemlerinin çözümlerinin iyileĢtirilmesi için biyolojide yer alan üreme ve doğal seleksiyon prensiplerini kullanan rassal eniyileme yöntemlerini açıklamada kullanılan bir terimdir. Evrimsel hesaplama (evolutionary computation - EC)‟nın bir alt kümesi olan EA, biyolojik evrimden esinlenerek üretilmiĢtir. Biyolojik evrimde yer alan üreme (reproduction), mutasyon, rekombinasyon (recombination) ve seçim (selection) kavramlarından türetilen mekanizmalar kullanılarak en iyi sonuca ulaĢılmaya çalıĢılır. Evrimsel hesaplama alanında yapılan araĢtırmalar 1950‟li yıllarda baĢlamıĢtır (Bremermann, 1962; Friedberg, 1958; Box, 1957). Evrimsel hesaplama alanında yapılan araĢtırmaların baĢlarında üretilen algoritmik çatılardan üç tanesi günümüzde halen yaygın olarak kullanılmaktadır: Genetik algoritmalar (genetic algorithms - GA) (Holland, 1962; Holland, 1975), evrimsel programlama (evolutionary programming - EP) (Fogel, 1962; Fogel et al., 1966), geliĢim stratejileri (evolution strategies - ES) (Rechenberg, 1964; Schwefel, 1975). Üç yaklaĢımda da farklılıklar bulunmasına rağmen, benzerlikler daha çok olduğu için birisinde yapılan çalıĢmalar diğerlerine de uyarlanabilmektedir. Metasezgisel algoritmaların tarihinde 1980‟ler ve 1990‟lar oldukça önemli adımlar içermektedir. Metalurjideki tavlanma sürecinden esinlenilerek Kirkpatrick et al. (1983) tarafından geliĢtirilen benzetimli tavlama (simulated annealing) eniyileme tekniği atılan büyük adımlardan birisidir. Diğer önemli adım ise Farmer et al. (1986) tarafından geliĢtirilen yapay bağıĢıklık sistemi (artificial immune system)‟dir. 1990‟larda metasezgisellerde hafıza kullanımı ile Tabu Arama (tabu search), Glover tarafından geliĢtirilmiĢtir. Bu yöntemde arama hareketleri bir Tabu listesinde tutulmakta ve böylece ileriki arama adımlarında daha önceden ziyaret edilen çözümlerden kaçınılmaya çalıĢılmaktadır (Glover and Laguna, 1997). 1992‟de Marco Dorigo doktora tezini eniyileme ve doğal algoritmalar üzerinde yapmıĢtır ve karıncaların haberleĢmesi ve sürü zekalarından esinlenerek geliĢtirdiği yeni algoritmanın ismini karınca kolonisi algoritmaları olarak belirlemiĢtir (Dorigo, 1992). Diğer bir önemli süreç ise 1995‟te Kennedy and Eberhart tarafından geliĢtirilen parçacık sürü eniyilemesi olmuĢtur. Daha sonra evrimsel algoritmalara yeni bir yaklaĢım getirerek üretilen vektör tabanlı evrimsel algoritma olarak bilinen diferansiyel geliĢim algoritması (differential evolution algorithms - DE) geliĢtirilmiĢtir (Storn and Price, 1997). Bu algoritmanın birçok 9 uygulamada geleneksel evrimsel algoritmalardan daha iyi sonuçlar ürettiği görülmüĢtür. 2000‟li yıllarda daha fazla geliĢim gösteren MHA‟lara yeni algoritmalar eklenmiĢtir. 2001‟de Geem et al. tarafından harmoni arama (harmony search) geliĢtirilmiĢtir. Daha sonra bakteri yem arama algoritması (bacteria foraging algorithm) Passino (2002) tarafından geliĢtirilmiĢtir. 2004‟te, internet sağlayıcı merkezlerinin optimizasyonu için Nakrani and Tovey bal arısı algoritmasını (honey bee algorithm) geliĢtirmiĢtir. Ardından yapay arı kolonisi algoritması geliĢtirilmiĢtir (Karaboga, 2005). 2008‟de ateĢ böceklerinin birbirleri ile etkileĢiminden esinlenilerek ateĢ böceği algoritması (Yang, 2008) geliĢtirilmiĢtir. 2009‟da yerçekimi kanunundan esinlenen yerçekimsel arama algoritması (Rashedi et al., 2009) ve guguk kuĢu davranıĢlarından esinlenilerek guguk kuĢu arama algoritması (cuckoo search algorithm) (Yang and Deb, 2010) geliĢtirilmiĢtir. Yukarıda adı geçen algoritmaların hepsi parametrik algoritmalardır. Her birinin tasarımında çeĢitli parametreler vardır ve aldıkları değerler algoritmanın performansını doğrudan etkilemektedir. MHA‟larda, çözülmeye çalıĢılan bir problem için en iyi sonuca ulaĢtıran değerler baĢka bir problem için değiĢkenlik gösterebilmektedir. Bu yüzden bu bileĢenlere strateji parametreleri denilmektedir. Bir MHA‟da, birden fazla strateji parametresi bulunabilir: Mutasyon operatörü ve mutasyon oranı (Herrera and Lozano, 2000; Swain and Morris, 2002), Parçacık sayısı, boyutu, aralığı (Kennedy and Eberhart, 1995), Çaprazlama operatörü ve çaprazlama oranı (Harik and Goldberg, 2000; Yang, 2002; Smith, 2002; Ho et al., 2004), Seçim mekanizması (Li and Jiang, 2000; Ting et al., 2003; Cho et al., 2003), Populasyon büyüklüğü (Lobo and Lima, 2006; Alba and Dorronsoro 2005; Whitacre et al., 2007), vb. MHA geliĢtiricileri, çözmeye çalıĢtıkları problem için en uygun parametre değerlerini çoğunlukla deneme yanılma yoluyla bulmaya çalıĢırlar. En iyi değerlere 10 ulaĢabilmek adına algoritmayı birçok defa çalıĢtırıp sonuçları değerlendirmek zorunda kalabilmektedirler. Bu yaklaĢım oldukça zaman alıcı ve hata eğilimli bir yaklaĢımdır. Bu nedenle algoritma performansına doğrudan etki eden parametrelerin değerlerinin otomatik olarak ayarlanması üzerine çalıĢmalar yoğunlaĢmıĢtır. Stratejik parametreler olarak adlandırılan bu parametrelerin alacağı uygun değerler iyi performansı netice vermektedir. Uygun parametre değerlerinin nasıl bulunacağı önemli bir araĢtırma alanıdır (Eiben et al., 1999). 2.3 Metasezgisel Algoritmalarda Parametre Ayarlama Yöntemleri MHA‟lar problemden bağımsız geliĢtirildiği için farklı problemlerde farklı performanslar sergileyebilmektedirler. Bu farklılığın giderilebilmesi için çözülecek eniyileme problemine özgü uygun parametre değerlerinin bulunması gerekmektedir. Uygun parametre değerlerinin bulunması bir MHA‟nın parametrelerinin ayarlanması (parameter tuning) anlamına gelmektedir. Herhangi bir MHA için sahip olduğu birçok parametrenin ayarlanması gerekebilmektedir. Çünkü parametrelerin alacağı değerler, algoritmaların verimliliğini ve etkinliğini etkilemektedir. Tüm problemler için sabit parametre değerleri önermek mümkün olsa da bazı problemlerde bu durum kötü sonuçlar üretilmesine neden olabilmektedir. Parametrelerin alacağı uygun değerler probleme, algoritmanın üzerinde çalıĢtırılacağı problem örneğine ve problem çözümü için harcanılacak zamana bağlıdır. Tüm problemler için evrensel uygun parametre değerleri herhangi bir MHA için mümkün değildir. Literatürde iki farklı parametre ayarlama yöntemi bulunmaktadır: çevrimdıĢı ayarlama (offline tuning) ve çevrimiçi ayarlama (online tuning) (Eiben et al., 1999). 2.3.1 ÇevrimdıĢı Ayarlama Parametre değerlerinin belirlenmesi MHA‟nın çalıĢma öncesinde olabileceği gibi çalıĢma esnasında da olabilmektedir. ÇevrimdıĢı ayarlamada parametre değerleri çalıĢma öncesi belirlenir ve çalıĢma süresince bu değerler sabit kalır. ÇevrimdıĢı ayarlama iki Ģekilde yapılabilmektedir. Eskiden beri kullanılmakta olan yöntem deneme-yanılma yolu ile parametre değerlerinin belirlenmesi Ģeklindedir. MHA geliĢtiricisinin deneyimlerine ve sezgilerine göre parametrelere değerler verilir ve algoritma o değerler ile çalıĢtırılır. Üretilen sonuçlar not edilir ve tekrar farklı parametre değerleri ile algoritma çalıĢtırılır. 11 Üretilen sonuçlar daha öncekilerle karĢılaĢtırılır ve bu Ģekilde yineleyerek uygun parametre değerlerine ulaĢılmaya çalıĢılır. Ancak çok sayıda parametresi olan MHA‟lar için bu süreç zaman alıcı, geliĢtirici odaklı ve hata eğilimli bir süreçtir. Çünkü genelde MHA geliĢtiricisi tek parametre için en uygun değeri bulduktan sonra diğer parametreye geçer ve aynı iĢlemi tekrarlar. Ancak bu durumda parametreler arasındaki iliĢki gözardı edilmektedir. Bu nedenle bu yöntemle en uygun parametre değerlerinin bulunması garanti değildir. Parametreler arasındaki iliĢkinin göz önünde bulundurulması ise deneme-yanılma yöntemi ile pek mümkün değildir. Çünkü tüm parametrelerin alabileceği değerler ile tüm kombinasyonların oluĢturulması ve herbir kombinasyon ile algoritmanın çalıĢtırılması ve her çalıĢma sonucunun birbiri ile karĢılaĢtırılması gerekmektedir. ÇevrimdıĢı ayarlamada ikinci yöntem ise parametre değerlerinin bulunması iĢini bir eniyileme problemine dönüĢtürerek baĢka bir MHA ile çözmektir. Örneğin; ABC algoritmasına ait parametrelerin alacağı değerler bir eniyileme problemi Ģeklinde formüle edilir. Bu problem bir baĢka MHA olan FA algoritması ile çözülmeye çalıĢılır. Ancak bu durumda FA algoritmasının baĢarısı önemli hale gelmektedir. Literatürde bu sürecin otomatikleĢtirilmesi ile ilgili çeĢitli çalıĢmalar bulunmaktadır: CALIBRA (Adenso-Diaz and Laguna, 2006), REVAL (Nannen and Eiben, 2007), SPO (Bartz-Beiselten, 2006) ve SPO+ (Hutter et al., 2009a) gibi çalıĢmalarda çevrimdıĢı olarak sadece sayısal parametrelerin değerlerinin belirlenmesi hedeflenilmiĢtir. F-Race ve yinelemeli F-Race (Birattari et al., 2010), ParamILS (Hutter et al., 2009b), genetik programlama (Oltean, 2005; Fukunaga, 2008) ve cinsiyet tabanlı genetik programlama (Ansotegui et al., 2009) gibi çalıĢmalarda ise sayısal parametrelerin yanında kategorik parametrelerin de otomatik olarak çevrimdıĢı belirlenmesi hedeflenilmiĢtir. Eiben et al.‟nın (1999) yaptıkları bir çalıĢmada MHA‟ların bir örneği olan EA‟lar için parametre ayarlama yöntemleri iki farklı ana alana ayrılmıĢtır (ġekil 2.1). Parametre ayarlamada algoritma çalıĢtırılmadan önce iyi parametre değerleri bulunur ve algoritma bulunan bu değerlerle çalıĢtırılır. Algoritmanın çalıĢma süresince bu değerler sabit kalmaktadır. Parametrelerin algoritmanın çalıĢma süresince sabit kalması evrimsel algoritmaların doğasına aykırıdır. Bu sebeple bu yönteme alternatif olarak parametre kontrol (parameter control) yöntemleri üzerinde çalıĢılmıĢtır. Parametre kontrol yönteminde parametrelere ilk değerler verilir ve algoritma çalıĢmaya baĢlar. ÇalıĢma süresince, arama uzayından gelen geri-bildirimlerle parametre değeri güncellenerek en uygun çözüme ulaĢılmaya çalıĢılır. 12 EA‟da Parametre Belirleme (Parameter Setting in EAs) ÇalıĢma Öncesi Parametre Ayarlama (Parameter Tuning) ÇalıĢma Esnasında Parametre Kontrol (Parameter Control) ġekil 2.1. Evrimsel algoritmalarda parametre belirleme yöntemleri 2.3.2 Çevrimiçi Ayarlama ÇevrimdıĢı ayarlamanın yüksek hesaplama maliyetine sahip olması, herbir problem örneği için parametre değerlerinin yeniden belirlenmesi gerekliliği, algoritmanın problem çözme süresince sabit parametre değerleri ile çalıĢıyor olması gibi eksiklikleri bulunmaktadır. Algoritmanın çalıĢma zamanında sabit parametre değerleri ile çalıĢması yerel en iyilere takılmalara sebep olabilmektedir. Bu nedenle parametre değerlerinin çalıĢma esnasında güncellendiği yöntemleri içeren çevrimiçi ayarlama öne sürülmüĢtür. MHA‟lar doğası gereği dinamik yapıdadırlar. Dinamik yapıda olan bir algoritmayı değeri değiĢmeyen yani statik parametre değerleri ile çalıĢtırmak MHA‟ların doğasına zıttır. Buna ek olarak, literatürdeki birçok çalıĢma hem deneysel olarak hem de teorik olarak göstermiĢtir ki evrimsel algoritmalar farklı aĢamalarında farklı parametre değerleri ile daha iyi sonuç üretmektedirler (Back, 1992; Hesser and Manner, 1991; Jain and Fogel, 2000). Bu nedenle parametre ayarlama için parametre kontrol yöntemleri kullanılmıĢtır. Bu yöntemler Eiben et al. (1999) tarafından üç sınıfa ayrılmıĢtır: Deterministik parametre kontrolü (deterministic parameter control): Bu yöntemde parametre değerleri deterministik ve statik bir kural tarafından değiĢtirilir. Bu kural önceden tanımlanmıĢ, sabit ve algoritmanın arama sürecinden bağımsızdır. Algoritma geliĢtiricisi tarafından belirlenen bu kural genellikle zamana bağlı olarak parametre değerlerini güncellemektedir. 13 Uyarlanabilir parametre kontrolü (adaptive parameter control): Algoritmanın çalıĢma esnasındaki davranıĢına göre yani arama sürecinden gelen geri-bildirimlere göre stratejik parametre değerleri güncellenir. Kendinden-uyarlanabilir parametre kontrolü (self-adaptive parameter control): Bu yöntemde uyarlanacak parametreler çözüm adaylarının bir parçası haline getirilir ve böylece onlar da çaprazlamaya uğrarlar. Uygun parametre değerleri iyi bireylerin oluĢmasına, iyi bireyler seçilerek iyi ebeveynlerin oluĢmasına, iyi ebeveynler de iyi yavruların oluĢmasına neden olarak uygun parametre değerlerinin sonraki nesle aktarılmasını sağlar. Uyarlanabilir parametre kontrolünden farklıdır. Burada parametreler evrimsel süreç içerisinde evrimsel geliĢime dahil olmakta ve değerleri iyileĢtirilmeye çalıĢılmaktadır. Bu tez kapsamında, MHA‟lar üzerinde çevrimiçi ayarlama ile uyarlanabilir ve kendinden-uyarlanabilir parametre kontrolü için iki yaklaĢım önerilmiĢtir. Uyarlanabilir parametre kontrolü için algoritmanın baĢarılı olmuĢ yinelemelerinde kullanılan parametre değerlerinin iyileĢtirilerek tekrar kullanılması gerçekleĢtirilmiĢtir. Kendinden-uyarlanabilir parametre kontrolünde ise parametre değerlerinin yönetimi algoritmanın kendisine bırakılmıĢtır. Bir sonraki bölümde, geliĢtirilen parametre kontrol yöntemleri tanıtılacaktır. 14 3. GELĠġTĠRĠLEN PARAMETRE KONTROL YÖNTEMLERĠ MHA‟larda parametre değerlerinin belirlenmesi ve bu değerlerin probleme özgü olacak Ģekilde çalıĢma zamanında güncellenmesi MHA‟ların çözüme yaklaĢma hızını ve yerel en iyilerden kaçınma kabiliyetini doğrudan etkilemektedir. MHA geliĢtiricisinin deneyimleri neticesinde elde edilen parametre değerleri baĢlangıç için uygun olsa bile çalıĢma süresince sabit kaldığı için farklı problemlerde algoritma performansını olumsuz etkileyebilmektedir. Ġkinci bir yaklaĢım ise farklı parametre değerlerinin tamamının algoritma üzerinde çalıĢtırılarak denenmesi ile en iyi sonuca ulaĢmaya çalıĢmaktır. Ancak olası parametre sayısı ve bu parametrelerin alacağı değerler kümesi düĢünüldüğünde algoritmayı tekrar tekrar çalıĢtırmak oldukça zaman alıcı olacaktır. Örneğin; 5 parametresi olan ve her bir parametresi 5 farklı değer alabilen bir algoritma için uygun değerleri bulmak üzere 100 kez çalıĢtırdığımızda oldukça zaman alan bir süreç gerçekleĢecektir. Çünkü 5 parametre 5 farklı değer alıyorsa 55= 3125 farklı parametre seti oluĢacaktır. Her bir set 100 kez tekrarlandığında 312500 kez algoritmayı çalıĢtırmak ve her çalıĢtırma sonucunda oluĢan değerleri karĢılaĢtırmak gerekecektir. Bu yaklaĢım oldukça zaman alıcı ve hata eğilimli olduğu için yeni yaklaĢımlar geliĢtirilmiĢtir. MHA‟ların probleme özgü parametre değerlerini belirlediği ve güncellediği yaklaĢımlar çözüme yaklaĢım hızını artırmakta ve yerel en iyilerden kaçınmayı sağlamaktadır. Algoritmanın probleme özgü uyarlanabilir olması nedeni ile baĢarı farklı problemlerde de korunmaktadır. Bu nedenle tez kapsamında, parametrelerin çevrimiçi yani çalıĢma zamanında güncellendiği iki farklı yaklaĢım geliĢtirilmiĢtir. Bir sonraki bölümde MHA‟lar için yapılmıĢ parametre uyarlama ile ilgili önceki çalıĢmalar verilecektir. Bölüm 3.2 ve 3.3‟te ise geliĢtirilen yöntemler anlatılacaktır. 3.1 Benzer ÇalıĢmalar Literatürde MHA‟lar için yapılmıĢ bir çok parametre uyarlama (parameter adaptation) çalıĢması yer almaktadır. MHA‟ların bir örneği olan evrimsel algoritmalar için yapılan çalıĢmalar incelendiğinde, çoğu eniyileme algoritmalarında olduğu gibi EA tasarımında kullanılan parametreler, genelde iki kategoriye ayrılmaktadır. Birinci kategori; seçim parametreleridir. Yapılan literatür taramasına göre seçim ile ilgili uyarlama çalıĢmaları incelendiğinde, popülasyon büyüklüğü uyarlaması (Lobo and Lima, 2006), popülasyon yapısı uyarlaması (Alba 15 and Dorronsoro 2005; Whitacre et al., 2007), seçim baskısı uyarlaması (Li and Jiang, 2000; Ting et al., 2003; Cho et al., 2003) üzerine çalıĢmalar yapıldığı görülmektedir. Ġkinci kategori ise arama operatörleridir. Literatürde arama operatörleri üzerine yapılan çalıĢmalar incelendiğinde, çaprazlama operatörü uyarlaması (Harik and Goldberg, 2000; Yang, 2002; Smith, 2002; Ho et al., 2004), mutasyon operatörü uyarlaması (Herrera and Lozano, 2000; Swain and Morris, 2002) üzerine ve farklı arama operatörlerinin kullanılma olasılığı ile ilgili uyarlama çalıĢmaları (Davis, 1991; Pham, 1994; Bedau and Packard, 2003; Igel et al., 2005; Espinoza et al., 2005; Whitacre et al., 2006a; Whitacre et al., 2006b) yapıldığı görülmektedir. Evrimsel algoritmaların uyarlanması ile ilgili literatür araĢtırmaları bir çok çalıĢma içerisinde yer almaktadır (Smith and Fogarty, 1997; Eiben et al., 1999; Herrera and Lozano, 2003; Lobo et al., 2007). Evrimsel algoritmalardan birisi olan diferansiyel geliĢim algoritmalarında diğer MHA‟larda olduğu gibi parametre değerlerinin algoritma performansında doğrudan etkisi bulunmaktadır. Bu nedenle yapılan çalıĢmaların çoğu en uygun parametre değerlerinin bulunmasına yoğunlaĢmıĢtır. Storn and Price (1995), popülasyon büyüklüğünün, çözülmesi düĢünülen problem boyutunun 5-20 katı olmasını ve ölçekleme faktörü için 0.5 değerinin iyi bir baĢlangıç değeri olacağını önermiĢlerdir. Gamperle et al. (2002) bir çok farklı parametre değerleri ile değerlendirme yapmıĢ ve mantıklı bir konfigürasyon olarak popülasyon büyüklüğünü 3 ve 8 boyut olacak Ģekilde, ölçekleme faktörünü 0.6 ve çaprazlama oranını [0.3-0.9] aralığında uygulamıĢlardır. Ronkkonen et al. (2005) ölçekleme faktörünün 0.9 olarak alınmasını ve çaprazlama oranını, ayrılabilir fonksiyonlarda (0, 0.2), fonksiyon parametreleri birbiri ile bağımlı ise yani fonksiyon ayrılabilir değilse (0.9, 1) olarak alınmasını önermiĢlerdir. Qin et al. (2009) ise kendinden uyarlanabilir diferansiyel geliĢim (self adaptive differential evolution - SaDE) algoritması önermiĢlerdir. Bu yaklaĢımda çaprazlama oranı, ölçekleme faktörü ve öğrenme stratejisi gibi parametrelerin değerlerinin baĢtan belirlenmesine gerek kalmamaktadır. Evrim sürecinde, parametreler ve öğrenme stratejisi öğrenme deneyimlerine göre uyarlanmaktadır. Abbass (2002) çok amaçlı eniyileme problemleri için, ölçekleme faktörünün Gaussian dağılımına N(0,1) göre belirlendiği kendinden uyarlanabilir bir yaklaĢım önermiĢtir. Diferansiyel geliĢim algoritmalarının uyarlanması ile ilgili literatür araĢtırması Das and Suganthan (2011)‟ın yaptığı çalıĢmada ayrıntılı olarak yer almaktadır. Karınca kolonisi algoritmaları için de parametre uyarlamasını içeren birçok çalıĢma yapılmıĢtır. Li and Li (2007), ACO‟da yer alan α ve β parametreleri için 16 bir uyarlama yaklaĢımı gerçekleĢtirmiĢlerdir. Aramanın ilk aĢamalarında α parametresinin değeri keĢfi artırmak için küçük bir değer olarak belirlenirken, daha sonra algoritmanın yerel arama kabiliyetini artırmak için bu değerin artması sağlanmaktadır. Diğer parametre için tam tersini gerçekleĢtirmiĢlerdir. Burada kullanılan yaklaĢım zamana bağlı olarak parametre değerlerinin güncellenmesidir. Hao et al. (2007) ve Cai et al. (2009) farklı ACO çeĢitleri önermiĢlerdir. Bulunan çözümlerin kalitelerini artırmak için p parametresini farklı değerler ile çalıĢtırmıĢlar ve en iyi parametre değerine ulaĢmaya çalıĢmıĢlardır. ACO için ilk kendinden uyarlanabilir parametre adaptasyonu Randall (2004) tarafından gerçekleĢtirilmiĢtir. Bu yaklaĢımda her bir karınca kendi parametre ayarlamalarını uyarlamakta ve her yinelemede çözüm oluĢturmadan önce belirledikleri parametre değerlerini seçmektedirler. Martens et al. (2007) AntMiner+‟ı geliĢtirmiĢlerdir. α ve β parametrelerinin değerleri (1, 3) aralığında seçilmektedir. Bir önceki yaklaĢımdan farklı olarak burada parametreler birbirinden bağımsız olarak ele alınmıĢtır. ACO‟larda parametre uyarlaması ile ilgili literatür araĢtırması Stützle et al. (2010)‟ın yaptıkları çalıĢmada ayrıntılı olarak yer almaktadır. Tez kapsamında önerilen uyarlanabilir parametre kontrol yöntemine benzer bir Ģekilde baĢarılı parametre değerlerinin saklanıldığı ve sonraki yinelemerde bu değerlerin kullanıldığı yaklaĢım DE ve ABC algoritması üzerinde gerçekleĢtirilmiĢtir (Pan et al., 2011a; Pan et al., 2011b). DE için yapılan çalıĢmada (Pan et al., 2011a); mutasyon ölçekleme faktörünü belirleyen F parametresi ve çaprazlama oranını belirleyen CR parametresinin baĢarılı değerleri çalıĢma esnasında baĢarılı listelere aktarılmakta ve ilerleyen yinelemelerde belirli bir oranda bu değerler kullanılmaktadır. Bu oran çalıĢma esnasında sabit kalmaktadır. ABC için yapılan çalıĢmada (Pan et al., 2011b) ise, iĢçi ve gözlemci arı aĢamalarında komĢu aday çözümlerin üretilmesinde kullanılan yöntem baĢarılı olursa yani çaprazlama neticesinde eski çözüm yerine yeni çözüm eklenirse bu yöntem baĢarılı listeye aktarılmaktadır. Ġlerleyen yinelemelerde baĢarılı listedeki yöntemler tekrar kullanılarak algoritmanın baĢarılı deneyimlerinden yararlanması sağlanmıĢtır. Bu çalıĢmalardan farklı olarak, tez kapsamında önerilen uyarlanabilir parametre kontrol yönteminde algoritmanın duraksaması sonrasında parametrelerin değer aralıkları uyarlanabilir bir Ģekilde güncellenmektedir. Ayrıca algoritmanın, ilerleyen yinelemelerde baĢarılı değerlerin kullanım oranı artırılması sağlanmıĢtır. Mezura-Montes and Palomeque-Ortiz (2009) tarafından DE üzerinde gerçekleĢtirilen bir çalıĢmada, tez kapsamında önerilen kendinden-uyarlanabilir parametre kontrol yöntemine benzer bir yaklaĢım kullanılmıĢtır. F ve CR 17 parametreleri DE algoritmasının aday çözümüne yeni boyut olarak eklenmiĢtir. Bu çalıĢmadan farklı olarak, tez kapsamında önerilen kendinden-uyarlanabilir parametre kontrol yönteminde algoritmanın duraksamasının kontrolü, algoritma duraksadığında stratejik parametrelerin değer aralıklarının güncellenmesi ve her yinelemede o ana kadarki en iyi aday çözümdeki ilgili boyutların kullanılması gibi yenilikler getirilmiĢtir. Birçok eniyileme probleminin çözümünde uygun parametre değerlerinin bulunması için kullanılacak kaynaklar göze alındığında eski yöntemlerin iyileĢtirilmesi gerektiği görülmektedir. Bu sebeple, parametre uyarlamasının geliĢtirilmesi ve otomatikleĢtirilmesi MHA‟ların performansını artıracağından ve geliĢtiriciler üzerindeki yükü hafifleteceğinden önemli bir araĢtırma alanıdır. 3.2 Parametre Kontrol Yöntemleri Benzer çalıĢmalar incelendiğinde, MHA‟ların iyi performans gösterebilmeleri için parametre değerlerinin problemden probleme farklılık göstermesi, çalıĢma zamanının farklı aĢamalarında bu değerlerin güncellenmesi gerektiği görülmektedir. Çevrimiçi ayarlama yöntemlerinden uyarlanabilir parametre kontrolünde, algoritmanın çalıĢma zamanında edindiği geri bildirimler kullanılarak parametre değerlerinin yönlendirilmesi gerçekleĢtirilmektedir. Kendinden uyarlanabilir parametre kontrolünde ise stratejik parametrelerin yönetimi algoritmanın kendisine bırakılmaktadır. Tez kapsamında, MHA‟lar için uygulanabilecek uyarlanabilir ve kendindenuyarlanabilir parametre kontrol yöntemleri önerilmiĢtir. Bu yöntemlerde öncelikle algoritma performansına doğrudan etki eden stratejik parametrelerin belirlenmesi gerekmektedir. Ayrıca bu parametrelerin alabileceği değer aralıkları belirlenmelidir. Belirlenen stratejik parametreler ve alabilecekleri değer aralıkları neticesinde parametrelerin kontrolü gerçekleĢtirilmektedir. 3.2.1 Stratejik Parametrelerin Belirlenmesi MHA‟lar parametrik algoritmalardır ve çeĢitli sayıda parametre içermektedirler. MHA tasarımının bir parçası olarak bu parametrelere ait değerlerin belirlenmesi gerekmektedir. Ancak bu parametrelerden bazıları algoritma performansına doğrudan etki etmektedir. Parametre kontrolünün yapılması için 18 öncelikle algoritma performansına doğrudan etki eden parametrelerin belirlenmesi gerekmektedir. Stratejik parametre olarak adlandırılan bu parametreleri tespit edebilmek için algoritmalar farklı parametre değerleri ile çalıĢtırılmalı ve sonuçları değerlendirilmelidir. Bir parametre stratejik parametre adayı olarak belirlenir. Diğer parametrelerin değerleri sabit kalacak Ģekilde stratejik parametre adayına farklı değerler verilir. Verilen farklı değerler algoritmanın ürettiği sonuçları etkiliyorsa o parametre stratejik parametre olarak belirlenir. Sonuçlarda etkisi yoksa o parametre stratejik parametre değildir. Ayrıca MHA geliĢtiricileri hangi parametrenin algoritma performansına doğrudan etki ettiğini genelde belirtmektedirler. Stratejik parametrelerin tespitinde MHA geliĢtiricilerinin önerileri de dikkate alınmalıdır. 3.2.2 Stratejik Parametrelerin Değer Aralığının Belirlenmesi Parametre kontrolünde algoritmanın çalıĢması sırasında parametre değerleri güncellenmektedir. Stratejik parametre olarak belirlenen parametrelerin alacağı değerler için değer aralığının belirlenmesi gerekmektedir. MHA geliĢtiricileri her bir parametre için alacağı değer aralığını ve değerlerini belirtmektedirler. Ancak bu değer aralıkları ve değerler problemlerden bağımsız belirlendiği için bazı problemlerde iyi sonuçlar netice verirken bazı problemlerde kötü sonuçlara neden olabilmektedir. Bu nedenle, değer aralıklarının daraltılması ve probleme özgü bir Ģekilde parametre değerlerinin yönlendirilmesi gerekmektedir. Değer aralıklarının yönetiminde algoritmanın duraksaması çalıĢma zamanı için önemli bir geri bildirimdir. Algoritmanın duraksaması arama sürecinin iyi gitmediğinin bir habercisidir. Bu kötü gidiĢe sebep olan parametre değerlerinin ve dolayısı ile değer aralıklarının değiĢtirilmesi gerektiğini gösterir. Algoritmanın duraksamasının tespiti ise kullanılacak parametre kontrol yöntemine göre değiĢkenlik gösterebilmektedir. Stratejik parametreler ve alabileceği değer aralıkları belirlendikten sonra çalıĢma zamanında parametre kontrolünün gerçekleĢtirilmesi gerekmektedir. Bir sonraki bölümde tez kapsamında önerilen uyarlanabilir parametre kontrolü, daha sonraki bölümde de kendinden-uyarlanabilir parametre kontrolü anlatılacaktır. 19 3.2.3 Uyarlanabilir Parametre Kontrolü Uyarlanabilir parametre kontrolünde, belirlenen stratejik parametrelerin değerleri algoritmanın çalıĢma zamanında arama sürecinden gelen geri bildirimlere göre güncellenmesi gerçekleĢtirilmektedir. Tez kapsamında önerilen uyarlanabilir parametre kontrol yönteminde (ġekil 3.1), stratejik parametrelerin değerleri belirlenirken algoritmanın geçmiĢ baĢarılı deneyimleri kullanılmaktadır. Bunu gerçekleĢtirebilmek için herbir stratejik parametre için rastgele üretilmiĢ değerler kümesi bir dizide (aDizisi) tutulmaktadır. Algoritma her yinelemede bu dizilerden sıradaki değeri seçer ve kendi iĢleyiĢine devam eder. Kullanılan parametre değeri o ana kadarki genel en iyi çözümü iyileĢtirmiĢse bu değer baĢarılı olarak kabul edilir ve baĢarılı değerleri tutan diziye (baĢarılıAdizisi) aktarılır. aDizisi‟ndeki tüm parametre değerleri kullanıldığında aDizisi, baĢarılı değerleri tutan baĢarılıAdizisi‟ndeki dizi elemanlarının yanında rastgele değerler ile yeniden ilklenmektedir. Bu Ģekilde algoritma daha önce baĢarılı olmuĢ parametre değerlerini yeniden kullanır ve ayrıca parametre değeri için yerel en iyilerden kaçınma adına rastgele değerler de eklenir. aDizisi‟ndeki tüm değerler kullanıldığında baĢarılıAdizisi‟ne hiçbir eleman aktarılmamıĢsa yani kullanılan dizi elemanları neticesinde genel en iyi hiç iyileĢtirilememiĢse algoritma duraksamıĢ demektir. Algoritma duraksadığında, duraksamaya neden olan parametre değer aralığı değiĢtirilir ve aDizisi elemanları belirlenen yeni aralığa göre yeniden üretilir. Yeni değer aralığının belirlenmesi MHA örneğindeki edinilen tecrübeye göre belirlenmektedir. Stratejik parametrelerin ilgili MHA‟da ne ifade ettiği ve algoritmanın iĢleyiĢini nasıl etkilediğine bakılarak yeni değer aralıkları belirlenir. 20 Stratejik Parametrelerin (SP) Belirlenmesi Stratejik Parametrelerin Değer Aralıklarının Belirlenmesi Herbir SP için bir dizi oluĢtur, belirlenen aralığa göre rastgele ilkle SP dizileri Sıradaki dizi elemanlarını MHA‟nın ilgili parametrelerine ata ve MHA‟yı iĢlet O ana kadarki genel en iyi çözüm iyileĢti mi? Evet Hayır SP dizilerindeki tüm elemanlar kullanıldı mı? BaĢarılı SP değerlerini sakla BaĢarılı SP dizileri Evet BaĢarılı SP dizileri boĢ mu ? Hayır Evet Değer aralıklarını güncelle ve SP dizilerini rastgele değerler ile yeniden üret BaĢarılı değerler ve rastgele değerler ile SP dizilerini yeniden üret ġekil 3.1. Uyarlanabilir parametre kontrolü akıĢ diyagramı 21 3.2.4 Kendinden-uyarlanabilir Parametre Kontrolü MHA‟ların performansına doğrudan etki eden stratejik parametrelerin, algoritmanın çalıĢması esnasında güncellendiği bir baĢka parametre kontrol yöntemi de kendinden-uyarlanabilir parametre kontrolüdür. Bu yöntemde belirlenen stratejik parametrelerin her birisi problem için MHA tarafından çözülmeye çalıĢılan çözüm adayına yeni boyut olarak eklenmektedir (ġekil 3.2). Bu Ģekilde MHA problemi çözmeye çalıĢırken bir taraftan kendi stratejik parametrelerinin de uygun değerlerini bulmaya çalıĢmaktadır. MHA‟larda bulunan çaprazlama sürecine stratejik parametreleri temsil eden boyutlar da dahil olmaktadır ve bu değerler MHA örneğinin çaprazlama denklemine göre aynen diğer problem boyutları gibi hesaplanmaktadır. N tane aday çözüm Stratejik Parametre için eklenmiĢ boyut X1,1 X2,1 . . Xbest,1 . . XN,1 … … … … … … … … Boyutlar (D) X1,D-1 X1,D X2,D-1 X2,D . . . . Xbest,D-1 Xbest,D . . . . XN,D-1 XN,D SP 1,D+1 SP 2,D+1 . . SP best,D+1 . . SP N,D+1 ġu anki genel en iyi çözüm ġekil 3.2. SP‟lerin aday çözüme yeni boyut olarak eklenmesi ġekil 3.2‟de N değeri popülasyon büyüklüğünü, D boyut sayısını, X problem için aday çözümleri, SP ise stratejik parametreler için eklenen boyutları temsil etmektedir. Algoritma her yineleme baĢlangıcında SP değerlerini aday çözümlerden o ana kadarki en iyi çözümün ilgili boyutlarını kullanarak günceller. Uyarlanabilir parametre kontrolüne benzer Ģekilde algoritma duraksamaya girdiğinde ilgili SP‟leri temsil eden boyutların değer aralığı değiĢtirilmektedir. Kendinden-uyarlanabilir parametre kontrol yönteminde algoritmanın duraksaması belirli sayıda yinelemede genel en iyi çözüm iyileĢtirilememiĢ ise gerçekleĢmektedir. Buradaki yineleme sayısı MHA örneğinin çalıĢma sürecinin incelenmesi ve edinilen deneyime göre belirlenmektedir. Bu değer bir kez belirlenmekte ve tüm problemlerde aynı değer kullanılmaktadır. Staratejik parametrelerin değerleri ise problemden probleme farklılık göstermekte ve bu durumun yönetimi algoritmanın kendisine bırakılmaktadır. 22 Tez kapsamında geliĢtirilen uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemleri önce ABC algoritmalarından IABC üzerinde uygulanmıĢtır ve baĢarımı test edilmiĢtir. Aynı yöntemler diğer bir MHA algoritması olan FA üzerinde uygulanmıĢtır ve IABC‟de elde edilen iyileĢmenin FA‟da gerçekleĢip gerçekleĢmediği deneysel çalıĢmalar ile tespit edilmiĢtir. 23 4. YAPAY ARI KOLONĠSĠ ALGORĠTMALARI Bir önceki bölümde anlatılan parametre kontrol yöntemlerinin hangi MHA örneğinde uygulanacağı sorusuna cevap aramak için öncelikle yapay arı kolonisi algoritmaları incelenmiĢtir. ABC algoritmalarının; yaygın bir Ģekilde kullanılıyor olması, az sayıda parametre içermesi, gerçekleĢtiriminin basit olması, çok sayıda versiyonunun bulunması, yeni bir algoritma olması ve literatürde yerini almıĢ probleme uyarlanabilir versiyonlarının henüz olmaması nedeni ile tez kapsamında geliĢtirilen yöntemlerin baĢarımının test edileceği ilk MHA olarak seçilmiĢtir. Bu bölümde literatürde bulunan güncel ABC algoritmaları anlatılacaktır. Ayrıca bu ABC algoritmalarının geliĢtirilen iki adet gerçek dünya problemi üzerindeki performanslarının karĢılaĢtırılması yapılacaktır. 4.1 Orijinal Yapay Arı Kolonisi Algoritması Yapay arı kolonisi algoritması (Karaboga and Basturk, 2007), bal arılarının yem arama davranıĢlarından esinlenilerek üretilmiĢ SZ-tabanlı bir eniyileme algoritmasıdır. ABC algoritmasında, iĢçi (employed), gözlemci (onlooker) ve izci (scout) arı olmak üzere üç tip bal arısı bulunmaktadır. ĠĢçi arılar her bir yiyecek kaynağının nektar miktarını hesaplamak ile sorumludur ve popülasyondaki iĢçi arı sayısı beslenme alanında bulunan yiyecek kaynağı sayısına eĢittir. Gözlemci arılar iyi nektar miktarına sahip yiyecek kaynağını seçmekle sorumludur ve popülasyondaki gözlemci arı sayısı iĢçi arı sayısına eĢittir. Ġzci arılar ise yeni yiyecek kaynaklarını keĢfetmek ile sorumludur. Yiyecek kaynağı tükenmiĢ olan iĢçi arılar izci arılara dönüĢmektedir ve eski yiyecek kaynağı, izci arı tarafından bulunan yeni yiyecek kaynağı ile değiĢtirilmektedir. ABC algoritmasının çatısı Algoritma 4.1‟de verilmiĢtir. Algoritma 4.1 Yapay Arı Kolonisi Algoritması Çatısı 1: Ġlkleme 2: Repeat 3: ĠĢçi Arı AĢaması: Çözüm popülasyondaki herbir çözüm için yeni çözüm üret 4: Gözlemci Arı AĢaması: Belirli bir uygunluk değerinin üzerindeki çözümleri kullanarak yeni çözüm üret. 5: Ġzci Arı AĢaması: En kötü çözüm yerine rastgele üretilmiĢ yeni çözümü ekle 6: Until (koĢullar sağlandı) Yiyecek kaynağının pozisyonu, çözülmesi hedeflenen eniyileme probleminin olası çözümünü temsil etmektedir. Yiyecek kaynağının nektar miktarının yüksek olması eniyileme probleminin olası çözümünün iyi olması anlamına gelmektedir. 24 Dolayısı ile olası çözümün kalitesi nektar miktarı ile temsil edilmektedir ve bu değer ABC algoritmasında uygunluk değeri (fitness value) olarak adlandırılmaktadır. Öncelikle, SN (yiyecek kaynağı sayısı) çözümün bulunduğu baĢlangıç popülasyonu aĢağıdaki eĢitlik kullanılarak rastgele oluĢturulmaktadır: xij x min ij ( x max x min j j j ) 4.1 xij, üretilecek çözüm adayını temsil etmektedir. xjmin, j. boyutun alabileceği minimum değer iken xjmax ise o boyutun alabileceği maksimum değeri ifade etmektedir. ij , 0 ile 1 arasında rastgele sayı üretmektedir. Diğer taraftan, her bir çözümün (veya herbir yiyecek kaynağının) bir uygunluk değeri ile limit değeri bulunmaktadır. limit değeri ilgili yiyecek kaynağının tükenip tükenmediğini kontrol etmek için kullanılır. ABC algoritmasında hesaplanmaktadır: uygunluk 1 1 fi , fi 0, fitnessi 1 abs ( fi ), fi 0 değeri aĢağıdaki eĢitliğe göre 4.2 fi, i. çözümün nesnel değerini (objective value) yani çözülecek eniyileme probleminden gelen sonucu temsil etmektedir. Ġlkleme aĢamasından sonra, iĢçi arılar aĢağıdaki eĢitliğe göre yeni aday çözümü bulmaya çalıĢırlar: vij xij ij ( xij xkj ), i k 4.3 EĢitlikteki vij bulunacak yeni çözümü, xij eski aday çözümü, φij [-1,1] aralığındaki rastgele sayıyı, xkj ise komĢu çözümü temsil etmektedir. k 1‟den SN‟e kadar, j ise 1‟den D‟ye (maksimum boyut sayısı) kadar değer almaktadır. Eğer yeni bulunan çözüm adayı eskisinden iyiyse eskisi ile değiĢtirilmektedir. Daha sonra, gözlemci arılar, iĢçi arılara benzer bir Ģekilde yeni iyi yiyecek kaynakları bulmaya çalıĢırlar. Fakat gözlemci arılar iĢçi arılardan farklı olarak yiyecek kaynaklarını seçerken belirli bir olasılık değerinin üzerindekileri seçmektedirler. Bu olasılık değeri 4.4 numaralı eĢitlikte görülmektedir: 25 pi fitnessi SN n 1 4.4 fitnessn ĠĢçi ve gözlemci arıların davranıĢlarına bakıldığında, iyi yiyecek kaynaklarını aradıkları ve iyi çözümlere odaklandıkları görülmektedir. Yerel eniyilerden kaçınmak için algoritmanın yeni çözümleri keĢfetmesi gerekmektedir. Eğer iĢçi ve gözlemci arılar bir yiyecek kaynağını limit defa iyileĢtiremezse o yiyecek kaynağı tükenmiĢ demektir. TükenmiĢ yiyecek kaynağı yeni çözümler oluĢtarabilecek kadar iyi olmayan yiyecek kaynağıdır. ABC algoritmasında, yerel eniyilerden kaçınmak için aranan yeni çözümlerin keĢfedilmesinden izci arılar sorumludur ve tükenmiĢ yiyecek kaynağının yerine 4.1 numaralı eĢitliği kullanarak yeni yiyecek kaynaklarını keĢfederler. Yapay arı kolonisi algoritması, Algoritma 4.2‟de yer almaktadır. Algoritma 4.2 Yapay Arı Kolonisi Algoritması 1: Çözüm popülasyonunu (xij) eĢitlik 4.1‟i kullanarak ilkle, i = 1...SN, j = 1...D, limiti = 0 2: Popülasyondaki çözümlerin uygunluk değerlerini eĢitlik 4.2‟yi kullanarak hesapla 3: tekrar: 1 4: Repeat 5: For i = 1 to SN do // ĠĢçi arı aĢaması 6: xi çözümünü kullanarak yeni çözümü (vi) eĢitlik 4.3‟ü kullanarak üret 7: Yeni çözümün uygunluk değeri ile eski çözümün uygunluk değerini karĢılaĢtır ve iyi olanı seç. 8: Eğer xi „den daha iyi çözüm üretilememiĢse limiti = limiti +1, üretilmiĢse limiti = 0 9: End for 10: Herbir çözüm için olasılık değerini (pi) eĢitlik 4.4‟ü kullanarak hesapla 11: For i = 1 to SN do // Gözlemci arı aĢaması 12: If random < pi then 13: xi çözümünü kullanarak yeni çözümü (vi) eĢitlik 4.3‟ü kullanarak üret 14: Yeni çözümün uygunluk değeri ile eski çözümün uygunluk değerini karĢılaĢtır ve iyi olanı seç. 15: Eğer xi „den daha iyi çözüm üretilememiĢse limiti = limiti +1, üretilmiĢse limiti = 0 16: End if 17: End for 18: If max(limiti) > limit then // Ġzci arı aĢaması 19: xi çözümünü eĢitlik 4.1‟i kullanarak rastgele üretilen çözüm ile değiĢtir 20: End if 21: Bu ana kadarki en iyi çözümü sakla 22: tekrar = tekrar + 1 23: Until (tekrar == Maksimum Tekrar Sayısı) 26 4.2 Yapay Arı Kolonisi Versiyonları KeĢif ve faydalanma, evrimsel tabanlı algoritmalarda iki önemli kavramdır. KeĢif, arama uzayının etkin bir Ģekilde araĢtırılması ile gerçekleĢmektedir. Faydalanma ise ideal çözümün olduğu düĢünülen arama uzayındaki bölgeye odaklanma ve oradaki bilgiyi kullanma Ģeklinde gerçekleĢmektedir. Algoritmaların yerel en iyilere takılmaması ve çözüme yaklaĢma hızının artırılması için bu iki kavramın dengelenmesi gerekmektedir. ABC algoritmasında iĢçi ve gözlemci arılar faydalanma iĢlemini gerçekleĢtirirken izci arılar ise keĢif iĢini üstlenmektedir. Bu iki kavramın dengelenmesi yani algoritmanın yerel en iyilerden kaçınması ve çözüme yaklaĢma hızının artırılması için diğer eniyileme algoritmalarında olduğu gibi farklı ABC versiyonları literatürde yerini almıĢtır. 4.2.1 Gbest-guided ABC (GABC) Algoritması GABC (Zhu and Kwong, 2010) algoritmasının çıkıĢ noktası, ABC algoritmasının çözüm arama denkleminin keĢifte iyi olması fakat faydalanmada zayıf olmasıdır. Bu nedenle, ABC algoritmasının faydalanmasını iyileĢtirmek amacıyla çözüm arama denklemi, genel en iyi çözümün bilgisini kullanacak Ģekilde güncellenmiĢtir. 4.3 numaralı eĢitlikte gösterilen ABC algoritmasının çözüm arama eĢitliği aĢağıdaki Ģekilde değiĢtirilmiĢtir: vij xij ij ( xij xkj ) ij ( xgbest , j xij ) 4.5 xgbest,j, o anki genel en iyi çözümün j. elemanıdır. ψij, [0,C] aralığında rastgele bir sayıdır. C parametresi keĢif ve faydalanma arasındaki dengeyi sağlamak için koyulmuĢ negatif olmayan bir sabittir. C değeri 0 olarak girilirse denklem ABC algoritmasındaki denkleme dönüĢür. 4.5 numaralı eĢitlikteki çözüm arama denkleminin faydalanması artırılmak isteniyorsa C parametresinin değeri artırılmalıdır. Ancak, C parametresinin çok büyük değerleri keĢif yeteneğini düĢürebilir. Bu nedenle C parametresi için çok büyük değerler kullanılmamaktadır. 4.2.2 Gbest ABC (GbABC) ve Gbest Distance ABC (GbdABC) Algoritmaları ABC algoritmasının faydalanma kabiliyetini artırma adına GbABC ve GbdABC algoritmaları önerilmiĢtir (Diwold et al., 2011). GABC‟ye benzer bir 27 Ģekilde, çözüm denklemi GbABC algoritmasında o ana kadarki genel en iyi çözümün bilgisini kullanacak Ģekilde değiĢtirilmiĢtir: vij xij ij ( xij xkj ) ij ( xgbest , j xij ) 4.6 4.6 numaralı eĢitlik ile 4.5 numaralı eĢitlik arasındaki fark rastgele sayı üretiminde kullanılan ψij‟nin değer aralığındaki C değiĢkeni yerine sabit 1 değerinin kullanılmasıdır. GbdABC algoritmasının arkasındaki fikir ise, eniyileme problemlerinde birçok durumda iyi çözümlerin birbirlerine yakın yerlerde olmasıdır. Bu nedenle, GbABC‟ye ek olarak iĢçi ve gözlemci arılarının kullandığı olasılık bulma denklemi aĢağıdaki Ģekilde güncellenmiĢtir. pk (1/ dist(loci , lock )) / SN (1/ dist(loc , loc )) n 1, n i i j 4.7 4.7 numaralı eĢitlikte yer alan pk, komĢu aday çözümün (xk) olasılık değeridir. locx, x. aday çözümün konumunu, dist(x,y) ise x ve y arasındaki öklid uzaklığını vermektedir. 4.2.3 Best-so-far ABC (BABC) Algoritması ABC algoritmasının keĢif ve faydalanma kabiliyetlerini iyileĢtirmek amacıyla üç ana değiĢiklik meydana getirilmiĢtir (Banharnsakun et al., 2011). Bunlardan birincisi best-so-far yöntemi olarak adlandırılmaktadır. Ġkincisi ayarlanabilir arama yönü, üçüncüsü ise nesnel değer tabanlı karĢılaĢtırmadır. KeĢif kabiliyetini artırma adına, gözlemci arıların etkinliği best-so-far yöntemi kullanılarak artırılmıĢtır. Böylece, best-so-far ABC algoritmasının çözüme yaklaĢma hızı artırılmıĢtır. ABC algoritmasındaki çözüm arama denklemi aĢağıdaki Ģekilde güncellenmiĢtir: vid xij fb ( xij xbj ) 4.8 vid, gözlemci arının bulacağı d. boyut ve i. pozisyondaki yeni aday yiyecek kaynağını temsil etmektedir. xij, j. boyuttaki i. pozisyondaki seçilmiĢ yiyecek kaynağını, φ, [-1,1] aralığındaki rastgele üretilmiĢ sayıyı, fb, o ana kadarki bulunmuĢ en iyi yiyecek kaynağının uygunluk değerini, xbj, j. boyuttaki en iyi 28 yiyecek kaynağını göstermektedir. Buradaki önemli değiĢiklik, her bir yinelemede (iteration) tüm yiyecek kaynağı değerlerinin güncellenmesidir. Yerel eniyilerden kaçınma adına, izci arılar için genel arama özelliği geliĢtirilmiĢtir. Eğer algoritma yerel eniyiye yakalanırsa, izci arı yeni yiyecek kaynağını aĢağıdaki eĢitliğe göre oluĢturmaktadır. vij xij ij ( wmax itr / MCN ( wmax wmin )) 4.9 vij, izci arı tarafından bulunan yeni yiyecek kaynağını, xij, tükenmiĢ yiyecek kaynağını, φ ise [-1,1] aralığındaki rastgele sayıyı temsil etmektedir. Arama yönünü ayarlamak için wmax ve wmin parametreleri kullanılmaktadır. itr o anki yineleme sayısını, MCN ise maksimum yineleme sayısını temsil etmektedir. ABC algoritmasında iĢçi ve gözlemci arı aĢamalarında bulunan yeni yiyecek kaynağı ile eski yiyecek kaynağının karĢılaĢtırılması uygunluk değerine göre yapılmaktadır. Burada yapılan değiĢiklik ise uygunluk değerine göre değil de problem denkleminin ürettiği nesnel değere (objective value) göre karĢılaĢtırma yapılmasıdır. Bu da yapılan üçüncü değiĢikliktir. 4.2.4 Modified ABC (MABC) Algoritması MABC algoritmasının arkasındaki fikir, ABC algoritmasının çözüme yaklaĢma hızının temel fonksiyonlarda iyi olması fakat melez (hybrid) fonksiyonlarda kötü olmasıdır. ABC algoritmasının çözüme yaklaĢma hızını artırma adına iki ana değiĢiklik gerçekleĢtirilmiĢtir (Akay and Karaboga, 2010). Bunlardan birincisi, komĢu çözümün üretilmesinde tek bir parametre güncellenmesi yerine kaç tane parametrenin değiĢtirileceğini belirleyen değiĢiklik oranı (modification rate - MR) parametresidir. EĢitlik 4.10‟da gösterilen Ģekilde rastgele üretilen bir değer (Rij) ile karĢılaĢtırılarak kontrol edilmektedir: vij xij ij ( xij xkj ),eğerR ij MR xij , değilse 4.10 EĢitlikteki vij bulunacak yeni çözümü, xij eski çözümü, φij [-1,1] aralığındaki rastgele sayıyı, xkj ise komĢu çözümü temsil etmektedir. 29 Diğer değiĢiklik ise ölçekleme faktörü (scaling factor - SF) parametresidir. ABC‟de çözüm arama denkleminde rastgele üretilen sayı [-1,1] aralığında üretilirken, MABC‟de [-SF,SF] aralığında üretilmektedir. SF parametresinin yüksek değerler alması durumunda çözüme yaklaĢma hızı artarken faydalanma düĢmektedir. 4.2.5 Chaotic ABC (CABC) Algoritması ABC‟nin çözüme yaklaĢma hızını artırma ve yerel eniyilerden kaçınma performansını artırma için kaotik haritaları kullanan CABC önerilmiĢtir (Alatas, 2010). Rastgele sayı sıraları yerine, geniĢ spektrumu olan, periyodik olmayan, tahmin edilebilir olmayan sayılar üretmesi ve etkinliği teorik olarak kanıtlanmıĢ olması sebebi ile kaotik sayı sıraları kullanılmıĢtır. Kaotik sayı sıralarının üretilmesi ve saklanılması oldukça kolay ve hızlıdır. Sayı sırasının tamamının saklanılmasına gerek yoktur. Bir kaç fonksiyonun ve birkaç parametrenin saklanılması uzun sayı sıralarının elde edilmesi için yeterlidir. Buradaki fonksiyonlar kaotik haritaları temsil ederken parametreler ise baĢlangıç koĢullarını temsil etmektedir. Sadece baĢlangıç koĢulu değiĢtirilerek birbirinden farklı uzun sayı sıraları elde edilebilmektedir. Bu sayı sıraları deterministik olmakla birlikte yeniden üretilebilir durumdadır. Birçok farklı uygulama alanlarında kullanılmıĢ ve iyi sonuçlar elde edilmiĢtir. ABC algoritmasında, ilkleme aĢamasında limit parametresinin değeri ile üretilen rastgele sayı sıraları yeni yinelemelerde sabit kalmaktadır. Bu durum ABC‟nin çözüme yaklaĢma hızını düĢürmektedir. Kaotik sayı sıralarının avantajlarından yararlanmak için, CABC‟de ilkleme ve izci arı aĢamasında kaotik sayı sıraları kullanılmaktadır. Ġlkleme aĢamasında kaotik sayı sıraları baĢlangıç yiyecek kaynaklarının oluĢturulmasında kullanılmaktadır. Ġzci arı aĢamasında ise ABC‟de yiyecek kaynağı limit parametresinin değerine kadar iyileĢtirilemeyen iĢçi arı izci arı olurken, CABC‟de limit/2 değerine kadar iyileĢtirilemeyen yiyecek kaynakları güncellenmektedir. Burada izci arılar kaotik arama ile yeni yiyecek kaynaklarını bulmaktadır. Kaotik aramada, Logistic, Circle, Gauss, Henon, Sinusoidal, Sinus, Tent adlı kaotik haritalar kullanılmaktadır. 30 4.2.6 Rosenbrock ABC (RABC) Algoritması Bu çalıĢmada (Kang et al., 2011), ABC algoritması ile Rosenbrock dairesel yön metodu (RM) birleĢtirilerek sayısal eniyileme problemleri için bir çözüm önerilmiĢtir. Önerilen algoritmada, RM, ABC için yerel faydalanma aracı olarak kullanılmaktadır. ABC‟deki uygunluk değeri hesaplama Ģekli değiĢtirilmiĢ ve sıralama tabanlı bir yaklaĢım önerilmiĢtir (eĢitlik 4.11): fitnessi 2 SP (2(SP 1)(ri 1) / SN 1) 4.11 ri, sıralama yapıldıktan sonraki i. çözümün pozisyonunu, SP ise seçim baskısını temsil etmektedir ve [1.0-2.0] aralığında değer alabilmektedir. RABC‟de ilkleme aĢamasından sonra, popülasyon değerlendirilmekte ve en iyi çözüm kaydedilmektedir. Daha sonra, RM kaydedilmiĢ en iyi çözüm ve yeni en iyi çözüm ile çalıĢtırılmaktadır. Sıralamadan sonra, orta sıradaki çözüm, önceki RM adımındaki en iyi çözüm ile yer değiĢtirmektedir. Bu aĢamadan sonra ABC devreye girerek keĢif gerçekleĢtirilmektedir. Faydalanma aĢamasında en iyi çözümün yakınlarında odaklanma yapabilmek için uyarlanabilir RM süreci iĢletilmektedir. 4.2.7 Incremental ABC (IncABC) Algoritması Bu çalıĢmada (Aydin et al., 2011), artıĢlı popülasyona sahip ve yerel aramalar ile bütünleĢtirilebilinen yeni bir ABC algoritması önerilmiĢtir. Bu yapılar, çalıĢma yazarları tarafından daha önce PSO ve ACO‟da uygulanmıĢ ve iyi sonuçlar elde edilmiĢtir. Bu nedenle, artan popülasyon yapısı ABC‟ye eklenmiĢ ve g parametresi ile kontrol edilmiĢtir. Maksimum yiyecek kaynağına ulaĢıncaya kadar her g yinelemede bir yiyecek kaynağı popülasyona dâhil edilmektedir. Ġkinci yapı olan yerel arama prosedürü olarak literatürde Powell (Powell, 1964) ve Mtsls1 (Tseng and Chen, 2008) olarak bilinen iki yerel arama birlikte kullanılmıĢtır. Her g yinelemede bir eklenecek olan yiyecek kaynağı o ana kadarki en iyi çözüm bilgisini kullanan 4.12 numaralı eĢitliğe göre eklenmektedir. X new, j xnew, j rand[0,1]( xgbest , j xnew, j ) 4.12 31 Xnew,j, yeni yiyecek kaynağının güncel pozisyonunu, xnew,j, rastgele üretilmiĢ yeni yiyecek kaynağının pozisyonunu, xgbest,j ise o ana kadarki en iyi yiyecek kaynağının pozisyonunu temsil etmektedir. Bunlara ek olarak, ABC üzerinde birkaç değiĢiklik daha yapılmıĢtır. ĠĢçi arı aĢamasında, yeni yiyecek kaynağı rastgele üretilmek yerine o ana kadarki en iyi çözüm yakınlarında üretilmektedir. Ġzci arı aĢamasında da benzer bir değiĢiklik bulunmaktadır. Ancak izci arı aĢamasında yeni bulunacak yiyecek kaynağının o ana kadarki en iyi çözüme yakınlığını kontrol etmek amacıyla Rfactor parametresi eklenmiĢtir: X new, j xnew, j Rfactor( xgbest , j xnew, j ) 4.13 4.2.8 Improved ABC (IABC) Algoritması Bu çalıĢmada (Gao and Liu, 2011), orijinal ABC algoritması üzerinde iki temel değiĢiklik gerçekleĢtirilmiĢtir. Bu değiĢikliklerden birincisi kaotik sistemelerin kullanıldığı yeni bir ilkleme yaklaĢımıdır. Ġkincisi ise orijinal ABC‟de yeni aday çözümün bulunmasında kullanılan eĢitlik (eĢitlik 4.3) yerine melez bir yaklaĢım kullanılmasıdır. Bu melez yaklaĢımda iki yeni denklem önerilmiĢtir. Bu denklemlerden birincisi o ana kadarki genel en iyi çözümün bilgisini kullanarak yeni aday çözümü belirleyen ABC/best/1 (eĢitlik 4.14) denklemidir. Diğeri ise rastgele bir komĢu aday çözüm ile çaprazlama yaparak yeni aday çözümü belirleyen ABC/rand/1 (eĢitlik 4.15) denklemidir. “ABC/best/1”: vi , m xbest , m i , j ( xi , m xr1, m ) 4.14 “ABC/rand/1”: vi , m xr1, m i , j ( xi , m xr 2, m ) 4.15 m parametresi MABC‟deki MR parametresine benzer bir Ģekilde kaç tane parametre değerinin güncelleneceğini kontrol etmek için kullanılmaktadır. xbest,m; o ana kadarki genel en iyi çözümü, xr1,m ve xr2,m rastgele aday çözümlerini, vi,m ise yeni aday çözümü temsil etmektedir. Yukarıdaki iki denklemin avantajlarını kullanmak ve dezavantajlarından kaçınmak için iki yaklaĢım melez bir Ģekilde kullanılmaktadır. Bu melez yapı p parametresi ile kontrol edilmektedir. Böylece IABC‟nin keĢif ve faydalanma kabiliyetlerinin dengelenmesi hedeflenilmiĢtir. 32 4.3 GerçekleĢtirimi YapılmıĢ Gerçek Dünya Problemleri GerçekleĢtirilen parametre uyarlama yöntemlerinin hangi ABC versiyonu üzerinde uygulanacağını belirlemek için ABC algoritmaları 2 adet gerçek dünya problemi üzerinde çalıĢtırılarak karĢılaĢtırılması yapılmıĢtır. Bu bölümde gerçekleĢtirilen gerçek dünya problemleri tanıtılacaktır. 4.3.1 Frekans Modülasyonlu Ses Dalgaları için Parametre Tahminleme Frekans Modülasyonlu (FM) ses dalgası sentezinin birçok modern müzik sistemlerinde önemli bir rolü vardır. Ses dalgaları 6 boyutlu denklemlerle ifade edilmektedir. Problemin amacı hedef sese (eĢitlik 4.16) benzer yeni bir ses (eĢitlik 4.17) üretmektir. FM sentezcisine ait parametreler eniyilenerek hedef sese en yakın sesin üretilmesi amaçlanmaktadır ve bu 6 boyutlu eniyileme problemidir. Ses dalgalarına ait eĢitlikler: y(t ) a1.sin(w1.t. a2 .sin(w2 .t. ) a3.sin(w3.t. ))) 4.16 y0 (t ) (1.0).sin((5.0).t. (1.5).sin((4.8).t. ) (2.0).sin((4.9).t. ))) 4.17 θ değeri = 2π / 100 iken parametreler için alabilecekleri değer aralığı [-6.4, 6.35] Ģeklindedir. Tahminlenen ses ile hedef ses arasındaki uygunluk fonksiyonu aĢağıda görülmektedir: 100 f ( X ) ( y (t ) y0 (t ))2 i 0 4.18 Bu problemin detayları Das and Suganthan‟ın (2010) yaptığı çalıĢmada anlatılmaktadır. 4.3.2 GeniĢ Spektrumlu Radar Çokfazlı Kod Tasarımı Radar sistemleri ve geniĢ spektrumlu haberleĢme sistemleri özel bir Ģekilde tasarlanmıĢ dikey çokfazlı kodlanarak elde edilen sinyallarin kullanılması ile sistem performanısını iyileĢtirebilirler. Otokorelasyon (autocorrelation) ve çapraz korelasyon (cross-correlation) özelliklerine sahip dikey çokfazlı kodların sentezinde kullanılan farklı mekanizmalar doğrusal olmayan (nonlinear), çok 33 değiĢkenli (multivariable) bir eniyileme problemi olarak formüle edilebilir. Bu problem aĢağıdaki denklemlerle açıklanmaktadır: genel min f ( x) max{1 ( x),..., 2 m ( x)}, xX X {( x1 ,... xn ) R n | 0 xi 2 , j 1,..., n}, 4.19 buradaki m = 2n – 1 ve; n 2i 1 ( x) cos( x ), i 1,..., n k k | 2 i j 1| 1 j 1 2i ( x) 0.5 j j n j i 1 4.20 cos( x ),i 1,..., n 1 k k | 2 i j | 1 mi ( x) i ( x),i 1,..., m 4.21 4.22 Bulunması hedeflenen değiĢkenler simetrik fazlar arasındaki farkları göstermektedir. Bu problemdeki hedef radar sinyallerini temsil eden en büyük modülleri (eĢitlik 4.20, 4.21, 4.22) minimize etmektir (eĢitlik 4.19). Probleme ait detaylar Das and Suganthan‟ın (2010) yaptığı çalıĢmada açıklanmaktadır. 4.4 Deneysel Sonuçlar (Experimental Results) Bu bölümde, ABC versiyonlarının gerçek dünya problemleri üzerindeki performansları karĢılaĢtırılacaktır. Önce deneysel kurulum anlatılacaktır. Sonraki bölümlerde önce varsayılan (default) parametre değerleri ile sonra ayarlanmıĢ (tuned) parametre değerleri ile algoritma performansları karĢılaĢtırılacaktır. Bölüm sonunda ise literatürdeki güncel algoritmalar ile ABC versiyonlarının karĢılaĢtırılması yapılacaktır. Bu bölümde ve tezin ilerleyen bölümlerinde problem 1 olarak ifade edilen; frekans modülasyonlu ses dalgaları için parametre tahminleme problemidir. Problem 2 olarak kullanılan ise geniĢ spektrumlu radar çokfazlı kod tasarımı problemidir. 34 4.4.1 Deneysel Kurulum (Experimental Setup) Bu bölümdeki temel hedef gerçekleĢtirilen gerçek dünya problemleri üzerinde en iyi sonuçları üreten ABC versiyonunu belirlemektir. Ġyi performans gösteren ABC versiyonları ile diğer güncel algoritmalar da karĢılaĢtırılacaktır. Algoritmalar ve problemler, C++ kullanılarak gerçekleĢtirilmiĢtir. Adil bir karĢılaĢtırma yapabilmek için, iki farklı Ģekilde deneysel çalıĢma yapılmıĢtır. Öncelikle ABC versiyonları geliĢtiricileri tarafından önerilen parametre değerleri kullanılarak karĢılaĢtırılmıĢtır. Daha sonra ABC versiyonları problemlere göre ayarlanmıĢ parametre değerleri ile çalıĢtırılarak sonuçlar alınmıĢ ve karĢılaĢtırma yapılmıĢtır. Bu problemler 2011 yılında düzenlenen CEC (IEEE Conference on Evolutionary Competition) konferansında algoritmaların karĢılaĢtırılması için kullanılan problemlerdir. Bu nedenle, tüm deneyler CEC 2011‟de yarıĢmadaki aynı koĢullar altında gerçekleĢtirilmiĢtir. Tüm ABC versiyonları her bir problem üzerinde 25 defa çalıĢtırılmıĢtır. Tüm çalıĢmalar bittikten sonra, fonksiyon hesaplama (function evaluations - FEs) sayısına göre 50000, 100000 ve 150000‟deki üretilen en iyi, ortanca (median) ve ortalama değerlerin karĢılaĢtırılması yapılmıĢtır. 4.4.2 Varsayılan Parametre Değerleri ile ABC Sonuçlarının KarĢılaĢtırılması ABC algoritmalarında kullanılan parametre değerleri algoritma performansları için önemli bir yere sahiptir. Bu nedenle algoritma geliĢtiricileri, algoritmalarını problemler üzerinde bir çok kez çalıĢtırarak en uygun parametre değerlerini bulmayı amaçlarlar. Tez kapsamında, ABC algoritmalarının karĢılaĢtırılmasında kullanılan varsayılan parametre değerleri algoritma geliĢtiricilerinin önerdiği değerlerdir (Çizelge 4.1). Tüm ABC versiyonları varsayılan parametre değerleri ile geliĢtirdiğimiz iki gerçek dünya problemleri üzerinde çalıĢtırılmıĢtır. Elde edilen en iyi, ortanca ve ortalama değerler karĢılaĢtırılmıĢtır (Çizelge 4.2). KarĢılaĢtırmada üstün olan değerler koyu renkle yazılmıĢtır. Çizelge 4.2‟de görüldüğü üzere, birinci problem için, en iyi değerler incelendiğinde IABC en iyi performansı göstermiĢtir. Ortanca değerler incelendiğinde RABC diğer versiyonlara göre daha iyi sonuçlar üretmiĢtir. 35 Ortalama değerler incelendiğinde GbdABC‟nin iyi sonuçlar ürettiği görülmüĢtür. Ġkinci problem için yine RABC tüm değerlerde iyi sonuçları üreten algoritma olmuĢtur. Ayrıca IABC de en iyi değerlere ulaĢan algoritma olmuĢtur. Çizelge 4.1. ABC algoritmalarının varsayılan parametre değerleri Algoritmalar BABC CABC GbABC GbdABC IABC IncABC MABC ABC RABC / Parametreler 100 10 40 15 25 8 10 62 25 SN 1 1 1 1 1 1.2 1 1 1 limit 1.5 1 C 0.2 wMin 1 wMax 1 SF 1*D 0.4 m 0.25 p 200 K 15 rItr 5 NC 1.5 SP 10-6 Rfactor 13 SNmax 8 growth Çizelge 4.2. Varsayılan parametre değerleri ile elde edilen sonuçlar Algoritma BABC CABC GbABC GbdABC IABC IncABC MABC ABC RABC FEs 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 En iyi 8.20E-02 2.76E-02 1.04E-02 1.48E-02 1.48E-02 1.48E-02 2.12E-03 2.00E-05 2.00E-05 5.73E-04 1.48E-04 8.60E-05 6.70E-07 0.00E+00 0.00E+00 1.21E-05 1.14E-05 1.09E-05 3.34E-02 3.34E-02 3.34E-02 1.58E-03 8.03E-04 8.03E-04 2.78E-06 2.20E-06 1.79E-06 Problem 1 Ortanca Ortalama 4.07E+00 3.63E+00 2.97E+00 2.77E+00 2.82E+00 2.20E+00 7.11E-01 9.26E-01 3.85E-01 6.86E-01 2.59E-01 3.24E-01 2.18E-02 7.49E-01 1.16E-02 2.67E-01 3.57E-03 1.20E-01 1.16E-02 5.89E-01 5.37E-03 1.18E-01 1.12E-03 1.14E-01 4.07E+00 4.34E+00 3.36E+00 3.37E+00 2.91E+00 2.70E+00 4.06E+00 3.23E+00 4.06E+00 3.23E+00 3.93E+00 3.22E+00 5.77E-01 9.38E-01 3.26E-01 4.90E-01 2.53E-01 3.84E-01 8.54E-02 8.98E-01 1.66E-02 5.16E-01 1.44E-02 3.14E-01 9.93E-01 1.15E-03 6.81E-01 5.49E-04 6.74E-01 3.71E-04 En iyi 6.12E-01 5.92E-01 5.91E-01 6.98E-01 6.98E-01 6.98E-01 6.73E-01 6.65E-01 6.65E-01 6.84E-01 6.59E-01 6.59E-01 5.00E-01 5.00E-01 5.00E-01 5.59E-01 5.58E-01 5.57E-01 6.90E-01 6.90E-01 6.87E-01 7.30E-01 6.51E-01 6.46E-01 5.00E-01 5.00E-01 5.00E-01 Problem 2 Ortanca 8.29E-01 8.03E-01 7.76E-01 8.81E-01 8.28E-01 8.00E-01 8.53E-01 8.11E-01 7.78E-01 8.47E-01 7.83E-01 7.78E-01 7.11E-01 7.08E-01 6.98E-01 9.07E-01 9.06E-01 9.05E-01 9.21E-01 8.97E-01 8.77E-01 8.76E-01 8.42E-01 8.14E-01 6.67E-01 6.06E-01 5.83E-01 Ortalama 8.27E-01 7.76E-01 7.58E-01 8.65E-01 8.27E-01 8.03E-01 8.55E-01 7.97E-01 7.71E-01 8.36E-01 7.94E-01 7.80E-01 7.12E-01 6.94E-01 6.81E-01 8.88E-01 8.85E-01 8.83E-01 9.17E-01 8.90E-01 8.64E-01 8.69E-01 8.38E-01 8.10E-01 6.76E-01 6.21E-01 5.94E-01 36 4.4.3 AyarlanmıĢ Parametre Değerleri ile ABC Sonuçlarının KarĢılaĢtırılması Diğer MHA‟larda olduğu gibi ABC algoritmalarında da parametre değerleri peformansı doğrudan etkilemektedir. Bu nedenle, adil bir karĢılaĢtırma için tüm ABC versiyonları çevrimdıĢı otomatik parametre ayarlama algoritması olan yinelemeli F-Race algoritması ile ayarlanmıĢ ve parametre değerleri belirlenmiĢtir. F-Race algoritması, problem örnekleri için rastgele belirlenmiĢ aday parametre değerleri ile çalıĢmaya baĢlar ve bir yarıĢmaymıĢ gibi istatistik testlere göre en kötü olan değerleri elimine eder. Yinelemeli F-Race algoritmasında ise bu süreç döngü olarak devam eder ve her döngüde bir önceki adımda oluĢturulan en iyi aday parametre değerleri etrafında yeni aday parametre değerleri kullanılır. ABC versiyonlarının karĢılaĢtırılması için gerçekleĢtirilen iki gerçek dünya problemi üzerinde yinelemeli F-Race algoritması kullanılarak ayarlanmıĢ parametre değerleri elde edilmiĢtir. Yinelemeli F-Race algoritmasının kendisine ait parametre değerleri için geliĢtiricilerinin önerdiği değerler kullanılmıĢtır. Yinelemeli F-Race algoritması birbirinden bağımsız 5 defa çalıĢtırıldıktan sonra en uygun parametre değerleri elde edilmiĢtir. AyarlanmıĢ parametre değerleri Çizelge 4.3‟te görülmektedir. AyarlanmıĢ parametre değerleri ile çalıĢtırılan ABC versiyonlarının ürettiği sonuçlar Çizelge 4.4‟te yer almaktadır. Varsayılan parametreler ile elde edilen değerlerden daha iyi olan sonuçlar koyu olarak yazılmıĢtır. Çizelge 4.4‟e göre ayarlanmıĢ parametreler ile elde edilen neredeyse tüm değerler varsayılan parametreler ile elde edilen değerlerden iyi olduğu görülmektedir. 37 Çizelge 4.3. ABC algoritmalarının ayarlanmıĢ parametre değerleri Algoritmalar BABC CABC GbABC GbdABC IABC IncABC MABC ABC RABC / Parametreler 21 88 44 82 23 9 62 54 66 SN 2.4 1.96 3.34 1.93 0.52 0.95 2.03 2.85 1.77 limit 1.46 1,54 C 0.37 wMin 0.64 wMax 0.09 SF 0.58*D 0.33 m 0.01 p 90 76 K 71 rItr 2 NC 1.88 SP 10-8 Rfactor 76 SNmax 2 growth Çizelge 4.4. AyarlanmıĢ parametre değerleri ile elde edilen sonuçlar Algoritma BABC CABC GbABC GbdABC IABC IncABC MABC ABC RABC FEs 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 50000 100000 150000 En iyi 2.21E-01 1.84E-02 9.13E-04 5.59E-04 5.46E-04 1.69E-04 1.28E-04 1.28E-04 1.28E-04 4.48E-05 3.52E-05 3.33E-05 2.23E-13 0.00E+00 0.00E+00 3.46E-05 3.42E-05 3.40E-05 3.66E-04 3.66E-04 2.63E-04 2.72E-04 7.59E-05 7.59E-05 8.47E-05 6.81E-06 3.70E-06 Problem 1 Ortanca 4.28E+00 3.70E+00 3.58E+00 3.98E-02 3.42E-02 1.09E-02 1.09E-02 6.57E-03 3.28E-03 4.86E-03 7.60E-04 6.71E-04 3.57E+00 2.91E+00 2.74E+00 2.75E+00 2.75E+00 2.75E+00 3.19E-03 1.16E-03 1.08E-03 2.30E-02 9.41E-03 6.54E-03 6.89E-04 6.80E-04 5.99E-04 Ortalama 4.30E+00 3.21E+00 2.88E+00 1.10E+00 6.34E-01 5.83E-01 5.17E-01 4.54E-01 4.51E-01 2.94E-01 1.31E-01 1.16E-01 3.21E+00 2.37E+00 1.59E+00 1.63E+00 1.62E+00 1.62E+00 1.06E+00 9.26E-01 7.38E-01 6.89E-01 6.11E-01 4.65E-01 1.26E+00 1.13E+00 1.12E+00 En iyi 6.96E-01 6.76E-01 6.58E-01 7.87E-01 7.33E-01 7.33E-01 6.46E-01 6.46E-01 6.42E-01 7.11E-01 6.14E-01 6.14E-01 5.00E-01 5.00E-01 5.00E-01 6.18E-01 5.48E-01 5.44E-01 5.93E-01 5.00E-01 5.00E-01 5.63E-01 5.62E-01 5.62E-01 5.00E-01 5.00E-01 5.00E-01 Problem 2 Ortanca 7.90E-01 7.35E-01 7.19E-01 8.77E-01 8.52E-01 8.00E-01 8.67E-01 8.41E-01 8.36E-01 8.49E-01 8.21E-01 7.98E-01 5.32E-01 5.01E-01 5.00E-01 8.13E-01 7.92E-01 7.84E-01 7.22E-01 6.77E-01 6.17E-01 8.31E-01 8.19E-01 7.82E-01 5.00E-01 5.00E-01 5.00E-01 Ortalama 7.94E-01 7.60E-01 7.39E-01 8.77E-01 8.51E-01 8.39E-01 8.52E-01 8.31E-01 8.24E-01 8.40E-01 7.97E-01 7.88E-01 5.89E-01 5.63E-01 5.57E-01 8.06E-01 7.64E-01 7.56E-01 7.19E-01 6.58E-01 6.27E-01 8.18E-01 8.00E-01 7.80E-01 5.21E-01 5.03E-01 5.03E-01 Varsayılan ve ayarlanmıĢ parametrelerle elde edilen sonuçlar incelendiğinde IABC algoritmasının her iki problemde de hedef değere ulaĢtığı görülmektedir. Ancak ortalama ve ortanca sonuçlarda birinci problemde GbdABC, ikinci problemde ise RABC algoritmalarının iyi olduğu görülmektedir. 25 farklı çalıĢma 38 sonucunda elde edilen değerlerin ortalamalarına göre belirlenmiĢ ve standart sapmalara göre aralıkların gösterildiği grafikler ġekil 4.1 - ġekil 4.6 arasında yer almaktadır. ġekil 4.1, ġekil 4.3 ve ġekil 4.5‟te ABC algoritmalarının birinci problem için sırasıyla 50000, 100000 ve 150000 fonksiyon çalıĢması neticesinde elde ettiği ortalama değerler ve 25 çalıĢma neticesinde oluĢmuĢ standart sapmaları gösteren aralıklar görülmektedir. Birinci problem için en iyiye ulaĢmıĢ IABC algoritmasının ortalama değerinin yüksek olduğu ve 25 çalıĢma sonuçlarının değer aralıklarının büyük olduğu görülmektedir. Birinci problem için en düĢük ortalama ve standart sapmaya sahip olan algoritmanın ise GbdABC olduğu görülmektedir. Ġkinci problem için ABC algoritmalarının 50000, 100000 ve 150000 fonksiyon çalıĢma sayısında ürettiği ortalama değerler ve 25 çalıĢma neticesinde oluĢmuĢ standart sapmaları gösteren aralıklar ise ġekil 4.2, ġekil 4.4 ve ġekil 4.6‟da yer almaktadır. Her iki problem için en iyi değerler incelendiğinde ideal çözüme ulaĢmıĢ olan IABC algoritmasının ikinci problem için de ortalamasının RABC‟den büyük olduğu görülmektedir. Standart sapma değerleri incelendiğinde IABC algoritmasının IncABC‟den sonra en kötü standart sapmaya sahip olduğu görülmektedir. Her iki problem için de elde edilen grafikler neticesinde IABC algoritmasının 25 çalıĢmada en iyi değerlere ulaĢmasına rağmen ortalama değerlerinin ve standart sapmalarının yüksek olması algoritmanın bazı çalıĢmalarda yerel en iyilere takıldığını göstermektedir. Interval Plot of Error Values - 50000 FEs - Problem 1 Mean Errors of Objective Value 5 4 3 2 1 0 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.1. Problem 1 için Interval Plot grafiği (50000 FEs) 39 Interval Plot of Error Values - 50000 FEs - Problem 2 Mean Errors of Objective Value 0,9 0,8 0,7 0,6 0,5 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.2. Problem 2 için Interval Plot grafiği (50000 FEs) Interval Plot of Error Values - 100000 FEs - Problem 1 3 2 1 0 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.3. Problem 1 için Interval Plot grafiği (100000 FEs) Interval Plot of Error Values - 100000 FEs - Problem 2 0,9 Mean Errors of Objective Value Mean Errors of Objective Value 4 0,8 0,7 0,6 0,5 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.4. Problem 2 için Interval Plot grafiği (100000 FEs) 40 Interval Plot of Error Values - 150000 FEs - Problem 1 Mean Errors of Objective Value 4 3 2 1 0 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.5. Problem 1 için Interval Plot grafiği (150000 FEs) Interval Plot of Error Values - 150000 FEs - Problem 2 Mean Errors of Objective Value 0,9 0,8 0,7 0,6 0,5 ABC BABC CABC GbABC GbdABC IABC IncABC MABC RABC Algorithms ġekil 4.6. Problem 2 için Interval Plot grafiği (150000 FEs) 4.4.4 Literatürdeki KarĢılaĢtırılması Algoritmalar ile ABC Sonuçlarının Bu bölümde ise iyi sonuçlar üreten ABC versiyonları ile CEC 2011‟e katılan algoritmalar karĢılaĢtırılmıĢtır. Elde edilen karĢılaĢtırmalar Çizelge 4.5 ve Çizelge 4.6‟da görülmektedir. Sonuçlar incelendiğinde ABC algoritmalarının literatürdeki güncel algoritmalar ile rekabetçi değerler elde ettiği görülmektedir. Çizelgelerde yer alan diğer algoritmaların sonuçları CEC 2011 konferansından alınmıĢtır. 41 Çizelge 4.5. Problem 1 için literatürdeki algoritmalar ile karĢılaĢtırma Algoritma RABC IABC GA-MPC SAMODE ENSML_DE EA-DE-MA Adap.DE171 ED-DE OXCoDE DE-RHC RGA CDASA mSBX-GA DE-ACr WI_DE Mod_DE_LS En iyi 3.70E-06 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.17E-11 0.00E+00 0.00E+00 0.00E+00 5.02E-20 1.00E-04 3.28E-18 6.79E-05 7.21E-15 0.00E+00 3.00E-06 Ortanca 1.12E+00 1.59E+00 0.00E+00 1.21E+00 1.78E+00 2.09E+00 3.85E+00 0.00E+00 4.40E+00 8.91E+00 9.29E+00 1.01E+00 4.20E+00 8.77E-01 3.28E+00 2.60E-05 Çizelge 4.6. Problem 2 için literatürdeki algoritmalar ile karĢılaĢtırma Algoritma RABC IABC GA-MPC SAMODE ENSML_DE EA-DE-MA Adap.DE171 ED-DE OXCoDE DE-RHC RGA CDASA mSBX-GA DE-ACr WI_DE Mod_DE_LS En iyi 5.00E-01 5.00E-01 5.00E-01 5.00E-01 1.28E+00 5.00E-01 5.00E-01 5.19E-01 5.00E-01 9.51E-01 6.77E-01 6.76E-01 6.79E-01 6.66E-01 5.00E-01 7.23E-01 Ortanca 5.03E-01 5.57E-01 7.48E-01 8.17E-01 1.42E+00 5.28E-01 5.00E-01 1.19E+00 6.84E-01 1.15E+00 9.65E-01 9.39E-01 9.84E-01 8.85E-01 6.56E-01 8.33E-01 42 5. IMPROVED ABC ÜZERĠNDE UYARLANABĠLĠR PARAMETRE KONTROLÜ Bir önceki bölümde aktarılan ABC versiyonları ve karĢılaĢtırma sonuçları incelendiğinde IABC algoritmasının her iki gerçek dünya problemi için de iyi sonuçlar ürettiği görülmektedir. GerçekleĢtirilen gerçek dünya problemleri küçük boyutlu eniyileme problemleridir. IABC algoritmasının küçük boyutlu problemlerde gösterdiği baĢarıyı problemlerin boyutları büyüdükçe koruyamadığı görülmektedir (Liao et al., 2013). IABC algoritması çeĢitli parametrelere sahiptir ve bu parametrelere iyi bir performans elde edebilmek için algoritma kullanıcısı tarafından uygun değerler verilmelidir. Ayrıca bu değerler problemden probleme farklılık göstermelidir. Herbir problem için farklı parametre değerlerinin kullanıcı tarafından deneyimlerine dayanarak vermesi hataya açık, zaman alıcı ve geliĢtirici odaklı bir yöntemdir. Bu nedenle, Eiben et al. (1999) herbir problem için uygun parametre değerlerinin bulunabilmesi için bazı parametre kontrol yöntemleri önermiĢtir. Bu yöntemlerle bulunacak parametre değerleri algoritmanın çalıĢması sırasında belirlenmektedir. Böylece, algoritma çalıĢmadan bu parametre değerlerini belirlemeye gerek kalmamaktadır. Bu görev algoritmanın kendisine bırakılmaktadır. Parametre değerleri arama sürecinden gelen geri bildirimlere göre bulunmaya çalıĢılır ve eğer gerekirse algoritmanın yinelemelerinde güncellenir. Parametre kontrolü ile; algoritma probleme kendini uyarlar, daha iyi performans ve sonuçlar üretir ve ayrıca parametre belirleme için kullanılan zaman kazanılmıĢ olur. IABC algoritmasının küçük boyutlu problemlerde gösterdiği baĢarıyı yüksek boyutlu problemlerde de gösterebilmesi için algoritmanın probleme uyarlanabilir olması gerekmektedir. Bu bilgiler ıĢığında, tez kapsamında Eiben et al. (1999)‟un önerdiği parametre kontrol yöntemlerinden esinlenerek IABC algoritması için iki yeni uyarlanabilir versiyonları üretilmiĢtir. Birincisi uyarlanabilir parametre kontrolünü kullanan uyarlanabilir IABC algoritması, ikincisi ise kendindenuyarlanabilir parametre kontrolünü kullanan kendinden-uyarlanabilir IABC algoritmasıdır. Sonraki altbölümlerde öncelikle IABC algoritması detaylı bir Ģekilde anlatılacaktır. Sonra gerçekleĢtirilen parametre kontrol yöntemlerinin IABC üzerinde nasıl uygulandığı gösterilecektir. Bu bölümün sonunda uyarlanabilir IABC ve kendinden-uyarlanabilir IABC algoritmaları üzerinde yapılan deneysel çalıĢmalar aktarılacaktır. 43 5.1 Improved ABC Algoritması için ABC Üzerindeki DeğiĢiklikler Improved ABC (IABC)‟de (Gao and Liu, 2011), orjinal ABC‟nin çözüme yaklaĢma hızını artırmak için yeni bir ilkleme yaklaĢımı ve yeni bir arama mekanizması geliĢtirilmiĢtir. Ġlkleme, ABC algoritmalarının çözüme yaklaĢma hızını ve bulunan çözümün kalitesini doğrudan etkileyen bir aĢamadır. Orjinal ABC‟deki rastgele değerlerle ilkleme yaklaĢımı yerine, IABC‟de kaotik sistemleri ve zıtlık-tabanlı öğrenme (opposition-based learning) kullanan yeni bir ilkleme yaklaĢımı kullanılmıĢtır (Algoritma 5.1). Algoritma 5.1 IABC ilkleme algoritması (Gao and Liu, 2011) 1: Kaotik iterasyon sayısını K ≥ 300 olarak belirle, i = 1, j=1. 2: While (i < SN) do 3: While (j < D) do 4: 5: DeğiĢkenleri 0 ile 1 arasında rastgele ilkle: ch0, j [0,1], k = 0. While (k < K) do 6: 7: chk+1, j = μ chk, j (1− chk, j), k = k + 1. End while. 8: Pi, j= xmin, j + chk, j (xmax, j − xmin, j), 9: j = j + 1. 10: End while. 11: i = i+1 12: End while. 13: i = 1, j=1. 14: While (i <SN) do 15: While (j < D) do 16: OPi, j = xmin, j + xmax, j − Pi, j , 17: j=j+1. 18: End while. 19: i=i+1. 20: End while. 21: Ġlk popülasyon olarak SN tane bireyi bu kümeden seç: {P (SN) U OP (SN) } Ġkinci değiĢiklik ise “ABC/best/1” ve “ABC/rand/1” olarak adlandırılan iki yeni çözüm arama denklemini içeren yeni arama mekanizmasıdır. “ABC/best/1” o ana kadarki genel en iyi çözümün bilgisini kullanarak yeni çözümleri üretmek, “ABC/rand/1” popülasyonun tamamını araĢtırmak yani keĢif kabiliyetini geliĢtirmek için kullanılmaktadır. “ABC/best/1”: vi , m xbest , m i , j ( xi , m xr1, m ) 5.1 “ABC/rand/1”: vi , m xr1, m i , j ( xi , m xr 2, m ) 5.2 m parametresi kaç tane boyutun güncelleneceğini kontrol etmek için kullanılmaktadır. xbest,m, o ana kadarki en iyi çözümü temsil etmektedir. xr1,m ve 44 xr2,m rastgele seçilen çözümleri temsil etmektedir. EĢitlik 5.1 en iyi çözüme hızlı bir Ģekilde ulaĢmayı sağlarken eĢitlik 5.2 ise yerel eniyilerden kaçınmayı sağlamaktadır. Bu iki denklemin bir arada kullanılması hem genel eniyi çözüme ulaĢma hızının artmasına hem de yerel eniyilerden kaçınılmasına olanak sağlamaktadır. Böylece IABC‟nin keĢif ve faydalanma kabiliyetlerinin dengelenmesi hedeflenilmiĢtir. Orjinal ABC‟deki iĢçi ve gözlemci arıların yeni çözüm üretmede kullandığı eĢitlik 4.3 yerine yukarıdaki eĢitlik 5.1 ve 5.2 melez bir Ģekilde kullanılmıĢtır (Algoritma 5.2). Bu melez yapı p parametresi ile kontrol edilmektedir. Algoritma 5.2 IABC yeni çözüm arama algoritması (Gao and Liu, 2011) 1: Kaynak çözüm xi, yeni çözüm vi. M parametresinin değer aralığı: 1 ≤M ≤D, p parametresinin değer aralığı: 0 ≤ p ≤1 ve m = 1. 2: rnd = rand //0 ile 1 arasında rastgele sayı. 3: If rnd < p then 4: While (m < M) do 5: Φi, m = 1 − 2*rand, 6: vi, m = xr1, m+ Φi, m (xi, m − xr2, m), //”ABC/rand/1” 7: m = m + 1. 8: End while 9: Else then 10: While (m < M) do 11: Φi, m = 1 − 2*rand, 12: vi, m = xbest, m+Φi, m (xi, m− xr1, m), //”ABC/best/1” 13: m = m + 1. 14: End while 15: End if 5.2 Stratejik Parametrelerin Belirlenmesi IABC algoritması birçok güncel eniyileme algoritmaları ile yarıĢabilir sonuçlar üretmektedir (Gao and Liu, 2011). Gao and Liu (2011)‟nun makalesinde genelde düĢük boyutlu problemler üzerinde çalıĢtırılarak sonuçlar karĢılaĢtırılmıĢtır ve iyi sonuçlar ürettiği görülmüĢtür. Ancak yüksek boyutlu problemlerde IABC algoritmasının performansının kötüleĢtiği tespit edilmiĢtir (Liao et al., 2013). DüĢük boyutlu problemlerde iyi sonuçlar üretirken yüksek boyutlu problemlerde kötü sonuç üretmesinin sebebi önerilen arama mekanizmasında kullanılan m ve p parametrelerinin probleme bağlı olarak değerlerinin değiĢmemesi olduğu görülmektedir. Tez kapsamında, bu iki parametre değerlerinin gerçekleĢtirilen gerçek dünya problemleri üzerinde algoritma performansına etkisi test edilmiĢtir. Performansa doğrudan etki eden parametreler stratejik parametre olarak adlandırılmıĢtır. Bu 45 bağlamda IABC‟nin sahip olduğu parametreler farklı değerler ile çalıĢtırılarak sonuçları incelenmiĢtir. Algoritmanın stratejik parametre adayı hariç diğer parametrelerin değeri olarak varsayılan parametre değerleri kullanılmıĢtır. IABC‟de her ABC versiyonunda olan popülasyon büyüklüğü (N) ve limit (L) parametresine ek olarak her yinelemede kaç parametrenin değiĢeceğini kontrol eden m parametresi ve yukarıda anlatılan “ABC/best/1” ile “ABC/rand/1” arasındaki melez yapıyı kontrol eden p parametresi bulunmaktadır. Bu parametrelerin stratejik parametre olup olmadığını anlamak için her bir parametrenin diğer parametrelerin değerleri sabit kalacak Ģekilde farklı değerler ile çalıĢtırılarak sonuca etkisi gözlemlenmiĢtir. Stratejik parametrelerin belirlenmesinde IABC farklı parametre değer kombinasyonları ile gerçekleĢtirilen gerçek dünya problemleri üzerinde 25‟er defa çalıĢtırılmıĢtır. Öncelikle m parametresinin stratejik parametre olup olmadığını tespit etmek için m parametresine farklı değerler verilmiĢtir. Herbir m değeri için diğer parametreler sabit tutulmuĢtur ve algoritma herbir farklı m değeri kullanılarak problemler üzerinde 25‟er defa çalıĢtırılmıĢtır. m parametresine sırasıyla popülasyon büyüklüğüne bağlı olarak 4 farklı değer verilmiĢtir. Çizelge 5.1 incelendiğinde m, popülasyon büyüklüğünün yarısı olduğunda birinci problemde 25 çalıĢmadan 12‟sinde en iyi sonuca ulaĢırken ikinci problemde ise 25 çalıĢmadan 11‟inde en iyi sonuca ulaĢmıĢtır. Ortalama sonuçlar incelendiğinde birinci problem için 0,25*N en iyi ortalama sonuçları üretirken ikinci problem için 0,50*N değeri en iyi ortalama sonuçları üretmiĢtir (ġekil 5.1 ve ġekil 5.2). m parametresinin değeri algoritma performansına doğrudan etkide bulunduğu için stratejik parametre olarak belirlenmiĢtir. Çizelge 5.1. m değerinin IABC performansına etkisi m değeri m: 0,25*N m: 0,50*N m: 0,75*N m: 1,00*N Ortalama 1,93E-01 1,33E+00 2,56E+00 3,41E+00 Problem 1 En iyi çözüme (0,00E+00) ulaĢma sayısı 0 12 6 6 Ortalama 6,99E-01 5,56E-01 6,38E-01 7,07E-01 Problem 2 En iyi çözüme (5,00E-01) ulaĢma sayısı 1 11 4 0 46 Ortalama Sonuç 4,00E+00 3,00E+00 2,00E+00 Problem 1 1,00E+00 0,00E+00 0,25*N 0,50*N 0,75*N 1,00*N m değeri ġekil 5.1. Problem 1 için m değerinin IABC performansına etkisi Ortalama Sonuç 8,00E-01 6,00E-01 4,00E-01 Problem 2 2,00E-01 0,00E+00 0,25*N 0,50*N 0,75*N 1,00*N m değeri ġekil 5.2. Problem 2 için m değerinin IABC performansına etkisi IABC‟de yeni çözüm arama mekanizması için sunulan denklemlerden (“ABC/best/1”, “ABC/rand/1”) hangisinin seçileceğine karar verilmesini sağlayan p parametresinin performansa etkisi ġekil 5.3 ve 5.4‟de görülmektedir. Çizelge 5.2 incelendiğinde, birinci problem için p olasılık değerinin 0,75 olması durumunda 25 farklı çalıĢmanın 9‟unda en iyi sonuca ulaĢıldığı ve en iyi ortalamaya ulaĢıldığı görülmektedir. Ġkinci problemde ise p = 0,50 değeri ile 25 çalıĢmanın 3‟ünde en iyi sonuca ve en iyi ortalamaya ulaĢıldığı görülmektedir. Her iki problemde de farklı p değerleri ile iyi sonuçlara ulaĢıldığı için p parametresi de stratejik parametre olarak belirlenmiĢtir. Çizelge 5.2. p değerinin IABC performansına etkisi p değeri p: 0,25 p: 0,50 Problem 1 En iyi çözüme Ortalama (0,00E+00) ulaĢma sayısı 2,33E+00 7 2,35E+00 7 Ortalama 7,03E-01 6,74E-01 Problem 2 En iyi çözüme (5,00E-01) ulaĢma sayısı 1 3 p: 0,75 1,71E+00 9,12E-01 1 9 47 Ortalama Sonuç 2,50E+00 2,00E+00 1,50E+00 1,00E+00 Problem 1 5,00E-01 0,00E+00 p: 0,25 p: 0,50 p: 0,75 p değeri Ortalama Sonuç ġekil 5.3. Problem 1 için p değerinin IABC performansına etkisi 1,00E+00 8,00E-01 6,00E-01 4,00E-01 2,00E-01 0,00E+00 Problem 2 p: 0,25 p: 0,50 p: 0,75 p değeri ġekil 5.4. Problem 2 için p değerinin IABC performansına etkisi Gao and Liu (2011) tarafından yapılan çalıĢmada, m ve p parametrelerinin algoritma performansına doğrudan etki ettiği belirtilmiĢtir. Farklı m ve p değerleri ile farklı problemler üzerinde yapılan testlerde bu iki parametrenin sonuca direkt etki ettiği sonucuna ulaĢılmıĢtır. Herbir problem için tekrar tekrar çalıĢtırılarak en uygun parametre değerlerine ulaĢılmaya çalıĢılmıĢtır. Bu testler sonucunda, problemden probleme m ve p parametrelerin değerlerinin farklılaĢtığı ve herbir problem için farklı uygun değerler aldıkları görülmüĢtür. Yukarıda anlatılan çevrimdıĢı parametre değerlerinin belirlenmesi evrimsel algoritmaların doğası gereği performans artıĢı sağlasa da çevrimiçi ayarlama yapılarak algoritma performansı çok daha iyi seviyelere gelebilmektedir. Bu nedenle belirlenen stratejik parametrelerin algoritmanın çalıĢması esnasında problem üzerindeki anlık performansına göre güncellenmesi gerçekleĢtirilmiĢtir. 5.3 Uyarlanabilir IABC (AIABC) Algoritması Eiben et al. (1999) tarafından evrimsel algoritmalar için önerilen parametre kontrol yöntemlerinden esinlenilerek probleme uyarlanabilir IABC versiyonları geliĢtirilmiĢtir. Bunlardan birincisi uyarlanabilir parametre kontrolü ile IABC 48 algoritmasının performansına doğrudan etki eden m ve p stratejik parametreleri için çevrimiçi güncelleme yaparak performans artıĢı sağlayan yaklaĢımdır. Bu yaklaĢımla algoritma probleme uyarlanabilir hale gelecek ve yüksek boyutlu eniyileme problemlerinde de iyi performans gösterecektir. Uyarlanabilir parametre kontrolünde algoritmanın çalıĢması esnasında arama sürecinden gelecek geri bildirimlere göre stratejik parametrelerin güncellenmesi söz konusudur. Bu versiyonda m ve p parametrelerinin alabileceği değerler belirlenen sınırlar dahilinde rastgele üretilmiĢ iki ayrı dizide tutulmaktadır (mDizisi ve pDizisi). Her gözlemci arı aĢamasında bu dizilerden sıradaki değerler alınarak m ve p parametrelerine atama yapılmaktadır. Eğer gözlemci arı aĢamasında kullanılan m ve p değerleri neticesinde genel eniyi çözüm değiĢmiĢse yani eski genel eniyiden daha iyi bir genel eniyi oluĢmuĢsa bu baĢarılı m ve p değerleri iki ayrı dizide saklanmaktadır (bMdizisi ve bPdizisi). ġekil 5.5 kullanılan bu 4 dizi arasındaki iliĢkiyi göstermektedir. mDizisi ve pDizisi‟ndeki tüm değerler kullanıldıktan sonra bu iki dizi bMdizisi ve bPdizisi‟ndeki değerlerin yanında rastgele değerler de kullanılarak yeniden ilklenmektedir. Böylece algoritma çalıĢma esnasında problemin farklı aĢamalarında geçmiĢ baĢarılı deneyimlerini kullanarak iyi parametre değerlerine ulaĢmaya çalıĢmaktadır. IABC algoritması üzerine eklenen kısımlar italik olarak Algoritma 5.3‟te görülmektedir. ġekil 5.5. m ve p değerlerini tutan dizilerin yeniden ilklenmesi ve yeniden üretilmesi 49 Algoritma 5.3 Uyarlanabilir IABC (AIABC) Çatısı 1: Ġlkleme 1.1: Dizileri ilkle Repeat 2: Stratejik Parametreleri güncelle 3: ĠĢçi Arı AĢaması: Çözüm popülasyondaki herbir çözüm için yeni çözüm üret 4: Gözlemci Arı AĢaması: Belirli bir uygunluk değerinin üzerindeki çözümleri kullanarak yeni çözüm üret. 4.1 Stratejik Parametrelerin başarılı değerlerini sakla 5: Ġzci Arı AĢaması: En kötü çözüm yerine rastgele üretilmiĢ yeni çözümü ekle 6: Uyarlanabilir Parametre Kontrolü Until (koĢullar sağlandı) 5.3.1. Stratejik Parametrelerin Değer Aralığının Belirlenmesi m ve p parametreleri için alabileceği değer aralığının uygun bir Ģekilde belirlenmesi de algoritma performansına olumlu katkıda bulunacaktır (Algoritma 5.7‟de 3-20 satır arası). Ġlk rastgele ilklemede m parametresinin değer aralığı 1 ile 2 arasında tutulmuĢtur. p parametresi olasılık değeri olarak kullanıldığı için 0 ile 1 arasında değer aralığına sahiptir. Sonraki ilklemelerde özellikle yüksek boyutlu problemlerde m‟nin büyük değerleri problemin çözümünde olumsuz etki edebileceğinden m parametresinin değer aralığının belirlenmesinde uyarlanabilir bir yaklaĢım gerçekleĢtirilmiĢtir. Eğer mDizisi ve pDizisindeki tüm elemanlar kullanılmıĢsa ve bu değerlerden hiç birisi gözlemci arı aĢamasında baĢarılı dizilere aktarılamamıĢsa yani genel en iyi çözüm iyileĢtirilememiĢse m parametresinin değer aralığı değiĢtirilmektedir. Duraksama olarak adlandırdığımız bu durum gerçekleĢtiğinde m‟nin değer aralığı 1 ile problem boyutu (D) * factor arasında (Algoritma 5.7‟deki GENIS strateji) ise değiĢtirilerek 1 ile 2 arasında (Algoritma 5.7‟deki DAR strateji) seçim yapılmaktadır. Tam tersi durumda yani duraksama gerçekleĢtiğinde 1 ile 2 arasındaki değer aralığı kullanılıyorsa değiĢtirilerek 1 ile D * factor arasındaki değer aralığı kullanılmaya baĢlanmaktadır. factor parametresinin baĢlangıç değeri 0.1‟dir ve her duraksamada 0.1 artırılmaktadır. Bu parametre değeri 1‟e ulaĢtığında tekrar 0.1‟e düĢürülmektedir. Diğer bir deyiĢle, m parametresinin alabileceği en yüksek değer ilk aĢamada problem boyutunun % 10‟u kadarken, her duraksama da % 10 artırılmaktadır. m parametresinin değer aralığı problem boyutuna eriĢtiğinde bu aralık tekrar problem boyutunun % 10‟u olacak Ģekilde güncellenir. Ayrıca algoritmanın her duraksama yaĢamasında mDizisi ve pDizisi adlı diziler yukarıdaki senaryo ile belirlenen değer aralığına göre yeniden ilklenmektedir. Böylece duraksamaya neden olan değerler değiĢtirilmektedir. 50 5.3.2 Stratejik Parametrelerin Uyarlanabilir Parametre Kontrolü m ve p parametrelerinin çevrimiçi değerlerinin güncellenmesi için geliĢtirilen yöntem algoritmanın çalıĢması esnasında geçmiĢ baĢarılı deneyimlerden faydalanılarak yeni değerlerin belirlenmesi Ģeklinde gerçekleĢtirilmiĢtir. Herbir parametre için alabileceği değerlerin tutulduğu diziler bulunmaktadır (m için mDizisi ve p için pDizisi). Ġlklemede dizi elemanları; mDizisii = (mi1, mi2, ... , miMAKS) mij [1, D] pDizisii = (pi1, pi2, ... , piMAKS) pij [0, 1] olacak Ģekilde ilklenmektedir (Algoritma 5.4). Herbir dizi MAKS tane değer içermektedir. Süreç sayaç olarak kullanılan syc = 1 ile baĢlamaktadır. Her iĢçi arı aĢamasından önce m = misyc, p = pisyc olacak Ģekilde değerler belirlenmektedir (Algoritma 5.5). ĠĢçi arı aĢamasında bu değerler kullanılarak algoritma iĢleyiĢine devam etmektedir. Eğer genel en iyi daha da iyileĢtirilirse o döngüde kullanılan m ve p değerleri bMdizisii ve bPdizisii dizilerine atanmaktadır (Algoritma 5.6). Sayaç değeri güncellenerek bu döngü devam etmektedir (syc = syc+1). syc sayacı dizi büyüklüğünü temsil eden MAKS değerine ulaĢtığında mDizisi ve pDizisi için yeniden ilkleme süreci çalıĢtırılmaktadır (Algoritma 5.7). Yeniden ilkleme sürecinde yukarıda anlatılan uyarlanabilir değer aralığı belirleme süreci kullanılarak değer aralıkları belirlenmektedir. 0 ile 1 aralığında oluĢturulan rastgele bir değer (r) ile değeri önceden belirlenmiĢ olasılık değeri (YO) karĢılaĢtırılarak baĢarılı değerlerden ya da belirlenen değer aralıklarında rastgele üretilen değerlerden alınarak mDizisi ve pDizisi güncellenmektedir. YO değeri çalıĢma sürecinde kademeli olarak artırılmaktadır ve bu sayede algoritma ilerledikçe daha çok baĢarılı m ve p değerlerinden kullanılmaktadır. Tekrar ilkleme aĢamasında değerlerin sadece baĢarılı listelerden alınmamasının sebebi kullanılacak değerler için arama uzayının daraltılmamasıdır. Bu nedenle rastgele bir olasılık değeri ile kontrol edilerek tekrar ilklemede rastgele değerler de kullanılmaktadır. Duraksama olması durumunda yani mDizisi ve pDizisindeki tüm değerler kullanıldığında baĢarılı dizilerin hala boĢ olması durumunda uyarlanabilir bir Ģekilde belirlenen değer aralıkları kullanılarak mDizisi ve pDizisi için değerler yeniden üretilmektedir. 51 Algoritma 5.4 mDizisi ve pDizisi‟in ilklenmesi (Algoritma 5.3‟te 1.1) 1: bMdizisi ve bPdizisi dizilerini sıfırla, syc = 0 2: For i = 0 to (MAKS – 1) do 3: mDizisi[i] = rand [1, 2] // 1 ile 2 arasında rastgele tamsayı değeri 4: pDizisi[i] = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı değeri 5: End for Algoritma 5.5 Stratejik Parametrelerin güncellenmesi (Algoritma 5.3‟te 2) 1: m = mDizisi[syc] 2: p = pDizisi[syc] Algoritma 5.6 BaĢarılı M ve p değerlerin saklanılması (Algoritma 5.3‟te 4.1) 1: If yeniEniyiCozum.uygunlukDegeri > eskiEniyiCozum.uygunlukDegeri then //Genel eniyi değiĢmiĢse 2: bMdizisi.ekle (m) 3: bPdizisi.ekle (p) 4: End if 52 Algoritma 5.7 Uyarlanabilir Parametre Kontrolü (Algoritma 5.3‟te 6. adım) 1: YO = 0.5 2: If syc+1 == MAKS then //Eğer tüm elemanlar kullanılmıĢsa 3: If bMdizisi.bosMu then //Eğer baĢarılı m ve p dizileri boĢsa, algoritma duraksamıĢsa 4: If secilenMStratejisi == DAR then 5: secilenMStratejisi = GENIS 6: If factor+0.1 <= 1 then 7: factor = factor + 0.1 8: Else factor = 0.1 9: End if 10: Else 11: secilenMStratejisi = DAR 12: End if 13: For y=0 to (MAKS-1) do 14: If secilenMStratejisi == DAR then 15: mDizisi[y] = rand [1, 2] //1 ile 2 arasında rastgele tamsayı 16: Else // 1 ile D*factor arasında rastgele tamsayı 17: mDizisi[y] = rand [1, D * factor] //0 ile 1 arasında rastgele ondalıklı sayı 18: pDizisi[y] = rand [0, 1] 19: End If 20: End for 21: Else // Eğer baĢarılı m ve p dizileri boĢ değilse 22: For y=0 to (MAKS-1) do 23: r = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı 24: If r < YO then 25: //BaĢarılı m ve p dizilerinde rastgele değerler seç 26: mDizisi[y] = bMdizisi[rastgele] 27: pDizisi[y] = sParray[rastgele] 28: Else 29: if secilenMStratejisi == DAR then 30: mDizisi[y] = rand [1, 2] //1 ile 2 arasında rastgele tamsayı 31: Else // 1 ile D*factor arasında rastgele tamsayı 32: mArray[y] = rand [1, D * factor] //0 ile 1 arasında rastgele ondalıklı sayı 33: pArray[y] = rand [0, 1] 34: End if 35: End if 36: End for 37: bMdizisi = {} 38: bPdizisi= {} 39: End if 40: syc = 0 // anlikFES: O anki fonksiyon hesaplama sayısı // maksFES: Maksimum fonksiyon hesaplama sayısı 41: YO = 0.5 + 0.4 * (anlikFES / maksFES) 42: End if 43: syc = syc + 1 53 5.4 Kendinden-uyarlanabilir IABC (SaIABC) Algoritması Algoritma 5.2‟de verilen IABC‟nin orjinal ABC‟ye eklediği yeni arama mekanizmasında orjinal ABC‟de olmayan ve IABC‟de kullanılan iki parametre kullanılmaktadır (m ve p). Bu parametreler IABC algoritmasının performansını doğrudan etkilemekte ve herbir yeni eniyileme problemi için farklı değerler almaktadır. Eiben et al. (1999) tarafından evrimsel algoritmalar için önerilen parametre kontrol yöntemlerinden kendinden-uyarlanabilir parametre kontrolünden esinlenilerek kendinden-uyarlanabilir IABC algoritması geliĢtirilmiĢtir. IABC‟de m ve p parametrelerinin değerleri kullanıcı tarafından belirlenirken uyarlanabilir IABC algoritmalarında bu parametre değerleri algoritma tarafından ilklenmekte ve çalıĢma süresince geliĢtirilen yöntemler ile güncellenmektedir. Böylece IABC‟den kullanıcı tanımlı iki parametre çıkarılarak bu yük algoritmanın kendisine bırakılmıĢtır. Algoritma 5.8‟de çatısı verilen SaIABC algoritması için orijinal IABC‟ye eklenen kısımlar italik olarak gösterilmiĢtir. Algoritma 5.8 Kendinden-uyarlanabilir IABC (SaIABC) çatısı 1: Ġlkleme Repeat 2: Stratejik Parametreleri güncelle 3: ĠĢçi Arı AĢaması: Çözüm popülasyondaki herbir çözüm için yeni çözüm üret 4: Gözlemci Arı AĢaması: Belirli bir uygunluk değerinin üzerindeki çözümleri kullanarak yeni çözüm üret. 5: Ġzci Arı AĢaması: En kötü çözüm yerine rastgele üretilmiĢ yeni çözümü ekle 6: Uyarlanabilir Değer Aralığı Belirleme Algoritması Until (koĢullar sağlandı) 5.4.1 Stratejik Parametrelerin Değer Aralığının Belirlenmesi m ve p parametrelerinin alabileceği maksimum ve minimum değerler çaprazlama neticesinde alacakları değerleri etkileyecektir. Bu nedenle değer aralıklarının belirlenmesinde uyarlanabilir bir algoritma geliĢtirilmiĢtir. p parametresi 0 ile 1 arasında ondalıklı değerler alabilmektedir. m parametresi için problem çözümünün gidiĢatına göre uyarlanabilir maksimum değer belirleme algoritması geliĢtirilmiĢtir (Algoritma 5.9). AIABC için geliĢtirilen değer aralığı belirleme yaklaĢımına benzer bir yaklaĢım kullanılmıĢtır. Burada, eğer algoritma ardarda 25 yinelemede o ana kadarki genel en iyiyi geliĢtirememiĢse yani algoritma duraksamıĢsa duraksamaya sebep olan strateji değiĢtirilmektedir. 54 Algoritma 5.9 Uyarlanabilir Değer Aralığı Belirleme Algoritması (Algoritma 5.8‟deki 6. adım.) 1: If yeniEniyiCozum.uygunlukDegeri == eskiEniyiCozum.uygunlukDegeri then //Eğer o ana kadarki genel en iyi çözüm değiĢmemiĢse 2: duraksamaSayaci = duraksamaSayaci + 1 3: Else if duraksamaSayaci = 0 4: End if 5: If duraksamaSayaci > 25 then // Algoritma duraksarsa 6: If secilenMStratejisi == DAR then 7: secilenMStratejisi = GENIS, duraksamaSayaci = 0 8: If factor+0.1 <= 1 then 9: factor = factor + 0.1 10: Else factor = 0.1 11: End if 12: Else if 13: secilenMStratejisi = DAR, duraksamaSayaci = 0 14: End if 15: End if 16: If selectedMStrategy == DAR then 17: newMaxMvalue = 2 18: newMaxPvalue = 1 19: Else if 20: newMaxMvalue = D * factor 21: newMaxPvalue = 1 22: End if 5.4.2 Stratejik Parametre Kontrolü Parametrelerin Kendinden-uyarlanabilir Kendinden-uyarlanabilir parametre kontrolünde, kontrolü sağlanacak parametreler evrimsel algoritmalarda çözüm kromozomuna gen olarak eklenirken uyarlanabilir IABC‟de çözüm vektörüne yeni boyut olarak eklenmesi sağlanmıĢtır (ġekil 5.6). IABC için stratejik parametreler olan m ve p parametreleri herbir çözüm adayına iki yeni boyut olarak eklenmiĢtir. ĠĢçi ve gözlemci arı aĢamasında çaprazlanacak boyut bu iki eklenmiĢ yeni boyuta denk gelirse klasik IABC mekanizması ile tıpkı probleme ait boyutlar gibi çaprazlanacaklar ve yeni değerleri oluĢacaktır. Böylece bu parametrelerin kontrolü algoritmanın kendisine bırakılmıĢtır. 55 N tane aday çözüm EklenmiĢ boyutlar X1,1 X2,1 . . Xbest,1 . . XN,1 … … … … … … … … Boyutlar (D) X1,D-1 X2,D-1 . . Xbest,D-1 . . XN,D-1 X1,D X2,D . . Xbest,D . . XN,D M1,D+1 M2,D+1 . . Mbest,D+1 . . MN,D+1 P1,D+2 P2,D+2 . . Pbest,D+2 . . PN,D+2 ġu anki genel en iyi çözüm ġekil 5.6. SaIABC için yeni çözüm dizisi yapısı ġekil 5.6‟daki N popülasyon büyüklüğünü, D boyut sayısını, X aday çözümü, M ve P ise sırası ile m ve p parametreleri için aday çözüme eklenen boyutları temsil etmektedir. IABC algoritmasında iĢçi ve gözlemci arı aĢamalarından önce kullanılacak m ve p değerleri için o ana kadarki genel en iyi çözüm adayının ilgili boyutlarındaki değerler alınmaktadır (Algoritma 5.10). ĠĢçi ve gözlemci arı aĢamalarında alınan bu değerlere göre IABC arama mekanizması çalıĢtırılmaktadır. Algoritma 5.10 Stratejik Parametrelerin güncellenmesi (Algoritma 5.8‟de 2) 1: m = genelEniyiCozum[D+1] 2: p = genelEniyiCozum[D+2] 5.5 Deneysel Sonuçlar 5.5.1 Deneysel Kurulum Bu bölümde, önerilen uyarlanabilir IABC versiyonları, Lozano et al. (2011) tarafından Soft Computing (SOCO) özel sayısı için sergilenen 19 farklı ölçeklenebilir eniyileme problemleri üzerinde çalıĢtırılmıĢtır. Fonksiyon tanımlarına Ek 1‟den ulaĢabilirsiniz. Tüm deneyler SOCO özel sayısında belirtilen koĢullarda gerçekleĢtirilmiĢtir; tüm algoritmalar her bir problem için 25‟er defa çalıĢtırılır ve her birinin çalıĢması maksimum fonksiyon hesaplama sayısında (5000*D, D problem boyutunu temsil etmektedir.) veya çözüm değeri eĢik değerinin (10-14) altında ise durur. GeliĢtirilen uyarlanabilir IABC algoritmalarını detaylıca test edebilmek için 3 farklı deney gerçekleĢtirilmiĢtir. Ġlk deneyde, IABC algoritması ile uyarlanabilir IABC algoritmaları ve ayrıca diğer ABC algoritmaların karĢılaĢtırılması varsayılan 56 parametre değerleri (Bkz. Çizelge 4.1) kullanılarak problem boyutları 50, 100 ve 500 olacak Ģekilde gerçekleĢtirilmiĢtir. Ġkinci deneyde aynı karĢılaĢtırmalar ayarlanmıĢ parametre değerleri (Çizelge 5.3) kullanılarak gerçekleĢtirilmiĢtir. AyarlanmıĢ parametre değerleri yinelemeli F-Race algoritması kullanılarak elde edilmiĢtir. Ve son olarak, geliĢtilen uyarlanabilir IABC algoritmaları ile güncel literatür algoritmalarının karĢılaĢtırılması yapılmıĢtır. Çizelge 5.3. SOCO fonksiyonları için ABC algoritmalarının ayarlanmıĢ parametre değerleri Algoritmalar BABC CABC GbABC GbdABC IABC IncABC MABC ABC RABC / Parametreler 6 17 12 11 28 6 11 8 10 SN 2.164 2.819 1.12 2.031 1.62 2.272 1.978 2.73 2.089 limit 1.51 2.18 C 0.33 wMin 0.73 wMax 0.97 SF 0.41*D 0.77 m 0.47 p 17 rItr 2 NC 1.86 SP 10-3.47 Rfactor 12 SNmax 12 growth Algoritmaların birbirlerine üstünlüğü istatistiksel olarak da belirlenmiĢtir. Ġstatistiksel test için Friedman testi (Friedman, 1940) kullanılmıĢtır. Parametrik olmayan Friedman testi, iki veya daha fazla algoritma performanslarının istatistiksel olarak birbirlerinden iyi olup olmadığını tespit eden bir test yaklaĢımıdır. Bu test, tüm algoritmalarının birbirleriyle karĢılaĢtırılması Ģansı vermektedir. Friedman testi için önem seviyesini (level of significance) belirleyen α değeri 0.05 olarak alınmıĢtır ve üretilen p değerleri karĢılaĢtırılmıĢtır. p değeri ne kadar küçük ise istatistiksel fark o kadar büyüktür. 5.5.2 Varsayılan Parametre Değerleri ile KarĢılaĢtırma IABC ile AIABC ve SaIABC sonuçlarının karĢılaĢtırılması Bu bölümde, problem boyutları sırası ile 50, 100 ve 500 olacak Ģekilde varsayılan parametre değerleri kullanılarak elde edilen ABC karĢılaĢtırmaları verilmiĢtir. Öncelikle, IABC algoritması ile AIABC ve SaIABC her bir test fonksiyonu 5000*D kadar çalıĢtırılarak elde edilen sonuçlar karĢılaĢtırılmıĢtır. ġekil 5.7 ile ġekil 5.9 arası her bir algoritmanın 25 farklı çalıĢma sonucu ürettiği 57 ortanca ve ortalama değerleri (sayısal sonuçlar Ek 2‟de yer almaktadır) göstermektedir. ġekil 5.7‟de, ABC algoritmaları varsayılan parametre değerleri ile 50 boyutlu SOCO problem kümesi üzerinde elde ettikleri sonuçlar karĢılaĢtırılmıĢtır. Ortanca değerler karĢılaĢtırıldığında, AIABC ve SaIABC algoritmaları 19 fonksiyondan 13‟ünde en iyi sonuca ulaĢırken orijinal IABC hiçbir fonksiyonda en iyi sonuca ulaĢamamıĢtır. ġekil 5.8‟de, 100 boyutlu SOCO problemleri sonuçları incelendiğinde, uyarlanabilir IABC algoritmalarının orijinal IABC algoritmasından daha iyi performanslar sergiledikleri görülmektedir. AIABC 11 fonksiyonda en iyi çözüme ulaĢırken, SaIABC 12 fonksiyonda ulaĢmıĢtır. Ancak, 50 boyutlu problemlerde olduğu gibi orijinal IABC yine hiçbir fonksiyonda en iyi çözüme ulaĢamamıĢtır. Daha sonra, problem boyutları her bir fonksiyon için 500‟e çıkarılmıĢtır ve elde edilen ortanca ve ortalama değerler ġekil 5.9‟da görülmektedir. Orijinal IABC yüksek boyutlu bu problemlerde düĢük performans sergilerken, uyarlanabilir IABC algoritmaları 500 boyutlu problemlerde de iyi sonuçlar üretmiĢtir. ġekil 5.9‟a göre, AIABC 10 fonksiyonda en iyi sonuca ulaĢırken SaIABC 7 fonksiyonda en iyi sonuca ulaĢmıĢtır. Orijinal IABC algoritması yine hiçbir fonksiyonda en iyi sonucu bulamamıĢtır. ġekil 5.7. Varsayılan parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler 58 ġekil 5.8. Varsayılan parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler ġekil 5.9. Varsayılan parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler Sonuçlar incelendiğinde uyarlanabilir IABC algoritmalarının fonksiyonların her boyutunda orijinal IABC‟ye göre açıkça iyi performans gösterdiği görülmektedir. Buna rağmen, sonuçların istatistiksel olarak da iyi olup olmadığı Friedman test kullanılarak belirlenmiĢtir. Önem düzeyi α = 0.05 olarak alınmıĢtır. Bu durumda, 0.05‟ten küçük p değerleri karĢılaĢtırılan algoritmalar arasında istatistiksel olarak bir fark olduğunu göstermektedir. Sonuç olarak, Çizelge 5.4‟te listelenen p değerlerine göre, uyarlanabilir IABC algoritmalarının istatistiksel olarak orijinal IABC algoritmasından daha iyi olduğu anlaĢılmaktadır. 59 Çizelge 5.4. Friedman testinden elde edilen p değerleri KarĢılaĢtırmalar IABC vs. AIABC IABC vs. SaIABC 50 D 7.05E-05 1.72E-05 100 D 1.38E-04 8.15E-06 500 D 1.14E-06 1.19E-05 ABC'ler ile AIABC ve SaIABC sonuçlarının karĢılaĢtırılması Bu bölümde, uyarlanabilir IABC algoritmaları ile diğer güncel ABC algoritmalarının karĢılaĢtırılması yapılmıĢtır. SOCO özel sayısında verilen 19 fonksiyon üzerinde, ABC, GbABC, BsfABC, MABC, CABC, GbdABC, RABC, IncABC ve uyarlanabilir IABC algoritmaları çalıĢtırılarak elde edilen ortanca değerler Çizelge 5.5-5.7‟de verilmiĢtir. ABC versiyonlarına ait sonuçlar Liao et al. (2013)‟un yaptığı çalıĢmadan alınmıĢtır. Çizelge 5.5-5.6-5.7‟den de görüleceği üzere AIABC ve SaIABC çoğu ABC versiyonlarından daha iyi performans sergilemiĢtir. Çizelge 5.5-5.6-5.7‟de sırasıyla 50, 100, 500 boyutlu SOCO fonksiyonları üzerinde elde edilen ortanca değerler listelenmiĢtir. GbABC, GbdABC, AIABC ve SaIABC diğer ABC algoritmalarına göre daha iyi performans sergilemiĢtir. Çizelge 5.5. Varsayılan parametre değerleri ile 50 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 1.42E-05 6.98E+01 5.48E+01 6.12E+00 2.83E-04 5.45E-02 1.22E-03 1.58E+04 2.37E+01 2.00E-05 2.20E+01 2.05E+00 3.48E+01 6.77E+00 7.47E-04 5.15E+00 2.86E+01 4.79E+00 1.55E-04 GbABC 0.00E+00 1.93E+00 6.58E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 8.40E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.53E-01 0.00E+00 0.00E+00 0.00E+00 5.22E+00 0.00E+00 0.00E+00 BsfABC 1.60E+03 4.08E+01 7.66E+07 1.58E+02 1.54E+01 1.10E+01 2.53E+00 6.44E+03 1.79E+02 4.03E+01 1.68E+02 8.64E+02 3.98E+07 1.23E+02 4.60E+00 2.87E+02 1.40E+05 4.48E+01 1.63E+01 MABC 0.00E+00 9.22E+00 7.49E+01 2.59E+01 0.00E+00 0.00E+00 0.00E+00 1.93E+04 2.57E-01 9.79E-08 1.47E-01 0.00E+00 7.89E+01 2.00E+01 0.00E+00 2.00E+01 4.40E+01 2.91E+00 0.00E+00 CABC 0.00E+00 6.20E+01 2.75E+00 2.32E-12 5.03E-14 0.00E+00 0.00E+00 9.15E+03 2.04E-07 0.00E+00 4.46E-07 7.98E-07 2.98E-01 1.25E-11 0.00E+00 3.46E-11 1.66E+01 2.66E-12 0.00E+00 GbdABC 0.00E+00 1.46E+00 7.24E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.38E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.05E-01 0.00E+00 0.00E+00 0.00E+00 1.05E+00 0.00E+00 0.00E+00 RABC 0.00E+00 3.30E+00 1.56E+00 4.33E-13 0.00E+00 3.01E-11 2.50E-14 1.55E+03 4.86E-02 0.00E+00 6.00E-02 4.10E-03 2.43E-01 3.83E-04 1.76E-14 1.55E-02 2.68E+00 3.73E-03 0.00E+00 IncABC 0.00E+00 5.63E+01 1.56E+00 3.28E-02 0.00E+00 2.72E-09 2.16E-11 5.85E+03 6.53E-01 0.00E+00 6.37E-01 4.87E-02 7.53E-01 2.79E-02 1.30E-11 1.78E-01 4.80E+00 8.33E-02 4.12E-13 AIABC 0.00E+00 1.73E-01 1.42E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.46E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.79E+00 5.54E-02 0.00E+00 0.00E+00 7.80E-01 0.00E+00 0.00E+00 SaIABC 0.00E+00 1.55E+00 7.05E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.68E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.03E-01 6.03E-07 0.00E+00 0.00E+00 4.58E-01 0.00E+00 0.00E+00 60 Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Çizelge 5.6. Varsayılan parametre değerleri ile 100 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 5.20E-05 9.84E+01 1.80E+02 1.59E+01 1.05E-04 1.66E-01 2.77E-03 5.71E+04 5.55E+01 7.98E-05 5.65E+01 4.92E+00 8.28E+01 1.54E+01 2.07E-03 1.27E+01 6.93E+01 1.19E+01 4.98E-04 GbABC 0.00E+00 1.80E+01 2.27E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.36E+04 0.00E+00 0.00E+00 0.00E+00 0.00E+00 2.07E+00 0.00E+00 0.00E+00 0.00E+00 4.02E+00 0.00E+00 0.00E+00 BsfABC 9.10E+03 4.61E+01 6.62E+08 3.63E+02 6.78E+01 1.38E+01 6.91E+00 2.47E+04 4.12E+02 1.35E+02 4.10E+02 6.03E+03 2.80E+08 2.92E+02 1.60E+01 2.49E+03 7.73E+06 1.17E+02 7.00E+01 MABC 0.00E+00 4.09E+01 2.01E+02 1.07E+02 0.00E+00 0.00E+00 0.00E+00 9.54E+04 8.81E+00 1.05E+00 5.05E+00 1.64E-01 2.26E+02 9.01E+01 0.00E+00 2.01E+01 2.42E+02 2.63E+01 1.05E+00 CABC 0.00E+00 9.24E+01 2.85E+01 1.70E-07 0.00E+00 0.00E+00 0.00E+00 4.07E+04 1.20E-07 0.00E+00 3.79E-07 7.58E-11 3.81E+00 7.70E-12 0.00E+00 1.94E-10 6.04E+00 6.72E-11 0.00E+00 GbdABC 0.00E+00 1.48E+01 4.29E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.22E+04 0.00E+00 0.00E+00 0.00E+00 0.00E+00 7.34E+00 0.00E+00 0.00E+00 0.00E+00 2.95E+00 0.00E+00 0.00E+00 RABC 0.00E+00 1.59E+01 1.22E+01 2.88E-08 0.00E+00 6.24E-11 1.30E-13 1.21E+04 1.81E-01 0.00E+00 1.61E-01 1.54E-02 1.91E-01 5.02E-03 5.94E-14 5.00E-02 1.25E+00 1.49E-02 0.00E+00 IncABC 0.00E+00 8.05E+01 1.27E+01 1.29E+00 0.00E+00 1.00E-08 8.03E-11 2.17E+04 1.60E+00 0.00E+00 1.77E+00 1.84E-01 1.45E+00 1.18E+00 4.94E-11 5.29E-01 8.49E+00 2.72E-01 4.18E-12 AIABC 0.00E+00 3.81E+00 1.20E+02 9.95E-01 0.00E+00 0.00E+00 0.00E+00 6.47E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.99E+00 1.99E+00 0.00E+00 0.00E+00 8.46E+00 9.95E-01 0.00E+00 SaIABC 0.00E+00 9.88E+00 9.18E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.66E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 5.53E+00 2.02E-01 0.00E+00 0.00E+00 7.35E+00 1.07E-02 0.00E+00 61 Functions f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Çizelge 5.7. Varsayılan parametre değerleri ile 500 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 4.68E-04 1.49E+02 5.72E+02 1.19E+02 3.17E-04 7.38E-01 1.74E-02 8.66E+05 3.84E+02 1.40E-03 3.94E+02 4.68E+01 5.34E+02 1.08E+02 9.30E-03 1.07E+02 2.17E+02 8.43E+01 2.95E-03 GbABC 0.00E+00 8.46E+01 2.99E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 5.56E+05 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.55E+01 1.03E+00 0.00E+00 0.00E+00 1.06E+00 2.28E-03 0.00E+00 BsfABC 1.49E+05 4.95E+01 3.26E+10 2.38E+03 1.20E+03 1.74E+01 5.25E+01 3.63E+05 2.49E+03 1.79E+03 2.48E+03 1.12E+05 2.03E+10 1.89E+03 1.77E+02 6.45E+04 3.07E+09 8.62E+02 2.51E+02 MABC 3.78E-02 1.21E+02 2.95E+03 1.49E+03 7.63E-03 2.68E+00 5.46E-06 1.87E+06 2.80E+03 2.63E+01 2.73E+03 6.63E+02 2.14E+03 1.18E+03 3.62E+00 1.45E+03 3.26E+03 7.88E+02 1.99E+01 CABC 0.00E+00 1.44E+02 1.40E+01 1.99E+00 0.00E+00 0.00E+00 0.00E+00 6.79E+05 1.70E-07 0.00E+00 1.47E-07 8.83E-10 1.94E+01 1.99E+00 0.00E+00 5.58E-09 4.00E+00 3.03E-02 0.00E+00 GbdABC 0.00E+00 8.28E+01 7.94E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 5.25E+05 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.13E+02 9.95E-01 0.00E+00 0.00E+00 1.42E+00 9.95E-01 0.00E+00 RABC 0.00E+00 8.09E+01 1.95E+01 3.08E+00 0.00E+00 4.31E-10 2.98E-12 4.14E+05 1.15E+00 0.00E+00 1.17E+00 1.89E-01 6.30E+00 2.17E+00 1.45E-12 4.49E-01 2.92E+00 2.66E-01 1.79E-13 IncABC 0.00E+00 1.12E+02 1.64E+01 1.74E+01 0.00E+00 9.15E-08 2.35E-09 2.89E+05 1.29E+01 0.00E+00 1.33E+01 1.73E+00 2.34E+01 1.32E+01 1.31E-09 4.12E+00 1.80E+01 6.01E+00 1.63E-10 AIABC 0.00E+00 3.28E+01 3.15E+02 7.96E+00 0.00E+00 0.00E+00 0.00E+00 1.07E+05 0.00E+00 0.00E+00 0.00E+00 2.10E-02 1.66E+02 1.89E+01 0.00E+00 0.00E+00 4.65E-01 6.96E+00 0.00E+00 SaIABC 0.00E+00 3.88E+01 2.96E+02 4.12E+00 0.00E+00 0.00E+00 0.00E+00 1.19E+05 1.83E-05 0.00E+00 1.07E-02 2.10E-02 1.65E+02 2.10E+01 0.00E+00 2.10E-02 3.04E+00 5.98E+00 0.00E+00 62 Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 63 Algoritmaların ürettiği sonuçlar arasında istatistiksel farklılıkların tespit edilmesi için Friedman testi, önem düzeyi α = 0.05 olacak Ģekilde uygulanmıĢtır. Çizelge 5.8‟de listelenen p değerlerine göre, AIABC ve SaIABC sonuçlarının istatistiksel olarak tüm boyutlarda ABC, MABC ve BsfABC sonuçlarından daha iyi olduğu görülmektedir. 50 ve 100 boyutlu problemlerde IncABC‟den istatistiksel olarak daha iyi sonuçlar elde edilmiĢken 500 boyutlu problemlerde istatistiksel olarak bir fark olmadığı sonucuna varılmıĢtır. Ayrıca tüm boyutlarda AIABC ve SaIABC, GbABC, CABC, GbdABC ve RABC algoritmalarının benzer performanslar sergiledikleri görülmektedir. Çizelge 5.8‟de verilen p değerlerine göre bu algoritmalar arasında istatistiksel olarak fark olmadığı görülmektedir. Çizelge 5.8. Friedman testinden elde edilen p değerleri KarĢılaĢtırmalar ABC GbABC BsfABC MABC IABC CABC GbdABC RABC IncABC vs. AIABC 5.35E-07 0.90 4.48E-10 0.004 4.93E-08 0.16 0.86 0.23 0.008 50 D vs. SaIABC 1.12E-07 0.68 6.59E-11 0.002 9.08E-09 0.09 0.90 0.14 0.003 vs. AIABC 2.09E-05 0.46 1.40E-08 0.002 4.70E-07 0.62 0.52 0.75 0.06 100 D vs. SaIABC 2.09E-06 0.81 7.14E-10 3.91E-04 3.26E-08 0.33 0.88 0.42 0.02 vs. AIABC 1.87E-05 0.64 1.61E-08 4.14E-07 2.83E-08 0.83 0.75 0.34 0.05 500 D vs. SaIABC 1.83E-04 0.32 3.20E-07 6.06E-06 5.35E-07 0.75 0.75 0.39 0.16 5.5.3 AyarlanmıĢ Parametre Değerleri ile KarĢılaĢtırma IABC ile AIABC ve SaIABC sonuçlarının karĢılaĢtırılması Deney çalıĢmalarının ikinci bölümünde, önce IABC algoritması ile uyarlanabilir IABC algoritmaları ve sonra diğer ABC algoritmaları ile karĢılaĢtırmalar ayarlanmıĢ parametre değerleri neticesinde elde edilen ortanca değerler ile karĢılaĢtırmalar yapılmıĢtır (ġekil 5.10 ile 5.12 ve Çizelge 5.10 ile 5.12 arası). Bir önceki deney çalıĢması ile aynı koĢullar ve aynı fonksiyonlar kullanılmıĢtır sadece algoritmaların daha iyi performans sergilemesi için parametre değerleri yinelemeli F-Race algoritması ile ayarlanmıĢtır. AyarlanmıĢ parametre değerleri Çizelge 5.3‟te yer almaktadır. IABC ile uyarlanabilir IABC algoritmalarının karĢılaĢtırılmasında ortanca ve ortalama sonuçlar (sayısal sonuçları Ek 2‟de bulabilirsiniz) ġekil 5.10-5.11-5.12‟de görülmektedir. ġekil 5.10‟da görüldüğü üzere, uyarlanabilir IABC algoritmaları orijinal IABC algoritmasına göre oldukça daha iyi sonuçlar üretmiĢtir. Ancak 64 orijinal IABC algoritmasında ayarlanmıĢ parametre değerleri ile varsayılan parametreler ile alınan sonuçlara göre ufak da olsa iyileĢme olduğu görülmektedir. Ortanca değerlerde IABC algoritması 50 boyutlu problemlerde 2 fonksiyonda en iyi çözüme ulaĢırken AIABC 13 ve SaIABC 14 fonksiyonda en iyi sonuca ulaĢmıĢtır. Ayrıca ortalama değerler incelendiğinde de uyarlanabilir IABC algoritmalarının orijinal IABC‟ye göre oldukça iyi sonuçlar ürettiği görülmektedir. ġekil 5.11‟de gösterilen sonuçlar ayarlanmıĢ parametre değerleri ile 100 boyutlu SOCO fonksiyonlarından elde edilen sonuçlardır. Ortalama sonuçlarda, AIABC ve SaIABC 12 fonksiyonda en iyiye ulaĢırken orijinal IABC hiçbir problemde en iyi sonucu bulamamıĢtır. ġekil 5.12‟deki ortanca ve ortalama değerler 500 boyutlu SOCO fonksiyonlarından elde edilen değerlerdir. Ortanca sonuçlar incelendiğinde AIABC 9 fonksiyonda en iyi sonucu bulurken SaIABC 8 fonksiyonda bulabilmiĢtir. Orijinal IABC yine hiçbir problemde en iyi sonuca ulaĢamamıĢtır. Uyarlanabilir IABC algoritmaların orijinal IABC algoritmasından istatistiksel olarak da iyi olduğunu tespit edebilmek için ortanca değerler üzerinde Friedman test uygulanmıĢtır. Çizelge 5.9‟daki p değerleri önem düzeyi 0.05 olacak Ģekilde toplanmıĢtır. Çizelge 5.9‟daki p değerleri incelendiğinde, tüm boyutlarda 0.05‟ten oldukça küçük olduğu görülmektedir. Bu durum uyarlanabilir IABC algoritmalarının orijinal IABC‟ye göre istatistiksel olarak da iyi sonuçlar ürettiği anlamına gelmektedir. 65 ġekil 5.10. AyarlanmıĢ parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler ġekil 5.11. AyarlanmıĢ parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler ġekil 5.12. AyarlanmıĢ parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler 66 Çizelge 5.9. Friedman testinden elde edilen p değerleri KarĢılaĢtırmalar IABC vs. AIABC IABC vs. SaIABC 50 D 100 D 500 D 4.87E-04 1.38E-04 1.72E-05 1.38E-04 8.15E-06 7.05E-05 ABC'ler ile AIABC ve SaIABC sonuçlarının karĢılaĢtırılması Bu deney çalıĢmasında, AIABC ve SaIABC, ayarlanmıĢ parametre değerleri ile yine SOCO dergisi özel sayısındaki aynı fonksiyon kümesi üzerinde çalıĢtırılarak 8 farklı ABC versiyonları ile karĢılaĢtırılmıĢtır. Varsayılan parametre değerleri ile elde edilen değerler karĢılaĢtırıldığında ayarlanmıĢ parametre değerleri ile CABC, GbABC, GbdABC, MABC, BsfABC, AIABC ve SaIABC benzer sonuçlar üretirken ABC, RABC ve IncABC daha iyi sonuçlar üretmiĢlerdir. Çizelge 5.10-5.11-5.12‟de listelenen değerler sırasıyla 50-100-500 boyutlu 19 SOCO fonksiyonları üzerinden elde edilen ortanca değerlerdir. Bu sonuçlara göre AIABC ve SaIABC, BsfABC ve MABC‟den tüm boyutlarda daha iyi sonuçlar üretmiĢtir. Ancak ABC, GbABC, CABC, GbdABC, RABC ve IncABC uyarlanabilir IABC algoritmaları ile benzer performans sergilemiĢlerdir. Çizelge 5.10. AyarlanmıĢ parametre değerleri ile 50 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 0.00E+00 5.79E+00 4.08E+00 8.78E-01 6.23E-12 0.00E+00 0.00E+00 7.51E+03 0.00E+00 0.00E+00 0.00E+00 2.75E-09 2.59E-01 9.95E-01 0.00E+00 1.12E-08 6.50E+00 1.05E-09 0.00E+00 GbABC 0.00E+00 3.23E-01 1.59E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 8.00E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.75E-01 0.00E+00 0.00E+00 0.00E+00 5.22E+00 0.00E+00 0.00E+00 BsfABC 0.00E+00 3.45E+01 5.70E+01 4.58E+01 2.70E-02 0.00E+00 0.00E+00 1.26E+03 3.03E-02 1.05E+00 3.07E-02 6.23E-04 5.60E+00 3.48E+01 0.00E+00 2.92E-04 4.10E+01 9.95E-01 1.52E+00 MABC 0.00E+00 2.13E+01 8.44E+01 6.07E+01 0.00E+00 0.00E+00 0.00E+00 1.10E+04 2.15E+00 1.39E-07 2.69E+00 1.07E-02 7.72E+01 4.64E+01 0.00E+00 3.82E-01 7.32E+01 1.66E+01 4.70E-01 CABC 0.00E+00 9.08E+00 1.43E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 9.79E+03 1.85E-04 0.00E+00 3.92E-04 2.60E-05 8.53E-02 6.51E-07 0.00E+00 1.03E-04 8.11E-01 5.73E-06 0.00E+00 GbdABC 0.00E+00 1.67E-01 1.87E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.30E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.36E+00 5.45E-14 0.00E+00 0.00E+00 5.40E+00 0.00E+00 0.00E+00 RABC 0.00E+00 1.20E-03 3.53E+01 9.95E-01 0.00E+00 0.00E+00 0.00E+00 2.22E+00 0.00E+00 0.00E+00 0.00E+00 4.24E-14 4.01E+00 3.98E+00 0.00E+00 7.23E-11 3.75E+01 9.95E-01 0.00E+00 IncABC 0.00E+00 2.43E+01 2.80E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.72E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.08E-01 0.00E+00 0.00E+00 0.00E+00 3.33E+00 0.00E+00 0.00E+00 AIABC 0.00E+00 9.09E-01 7.66E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.70E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.96E+00 0.00E+00 0.00E+00 0.00E+00 3.24E-01 2.74E-13 0.00E+00 SaIABC 0.00E+00 8.63E-01 6.07E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.71E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 2.12E-01 0.00E+00 0.00E+00 0.00E+00 2.17E+00 0.00E+00 0.00E+00 67 Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Çizelge 5.11. AyarlanmıĢ parametre değerleri ile 100 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 0.00E+00 3.67E+01 4.60E+01 2.13E+00 0.00E+00 0.00E+00 0.00E+00 3.39E+04 4.18E-07 0.00E+00 6.91E-07 1.30E-08 2.05E+00 1.99E+00 0.00E+00 1.35E-08 1.48E+01 9.95E-01 0.00E+00 GbABC 0.00E+00 6.05E+00 4.31E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.20E+04 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.70E+00 0.00E+00 0.00E+00 0.00E+00 1.52E+01 0.00E+00 0.00E+00 BsfABC 0.00E+00 4.56E+01 1.92E+02 8.16E+01 5.57E-02 1.07E-11 0.00E+00 4.98E+03 1.39E+01 4.20E+00 2.29E-01 3.29E-05 6.96E+01 9.45E+01 0.00E+00 1.08E-02 2.97E+01 5.18E+01 7.35E+00 MABC 0.00E+00 6.32E+01 1.74E+02 1.90E+02 0.00E+00 8.19E-08 1.53E-14 6.96E+04 1.66E+02 2.10E+00 1.54E+02 1.37E+00 2.09E+02 1.42E+02 1.06E-14 2.13E+01 3.30E+02 9.57E+01 3.15E+00 CABC 0.00E+00 3.70E+01 8.95E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 3.90E+04 8.53E-04 0.00E+00 9.34E-04 9.58E-05 8.28E-01 4.20E-06 0.00E+00 2.24E-04 2.41E+00 1.11E-05 0.00E+00 GbdABC 0.00E+00 3.92E+00 1.04E+02 0.00E+00 0.00E+00 0.00E+00 0.00E+00 2.82E+04 0.00E+00 0.00E+00 0.00E+00 0.00E+00 2.34E+01 3.14E-11 0.00E+00 0.00E+00 1.39E+01 0.00E+00 0.00E+00 RABC 0.00E+00 2.87E-01 2.39E+01 8.95E+00 0.00E+00 0.00E+00 0.00E+00 2.27E+02 0.00E+00 0.00E+00 0.00E+00 3.07E-11 2.71E+01 6.96E+00 0.00E+00 3.94E-09 2.38E+01 2.98E+00 0.00E+00 IncABC 0.00E+00 5.33E+01 2.04E+01 9.95E-01 0.00E+00 0.00E+00 0.00E+00 1.90E+04 0.00E+00 0.00E+00 0.00E+00 0.00E+00 9.38E-01 9.95E-01 0.00E+00 0.00E+00 6.30E+00 0.00E+00 0.00E+00 AIABC 0.00E+00 7.77E+00 1.57E+02 0.00E+00 0.00E+00 0.00E+00 0.00E+00 7.21E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 7.19E+01 0.00E+00 0.00E+00 2.66E-13 1.26E+01 2.56E-12 0.00E+00 SaIABC 0.00E+00 7.08E+00 9.66E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.35E+03 0.00E+00 0.00E+00 0.00E+00 0.00E+00 5.61E+00 9.95E-01 0.00E+00 0.00E+00 6.90E+00 1.07E-02 0.00E+00 68 Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Çizelge 5.12. AyarlanmıĢ parametre değerleri ile 500 boyutlu problemlerde uyarlanabilir IABC ve diğer ABC algoritmalarının ürettiği ortanca değerler ABC 0.00E+00 1.08E+02 3.86E+01 2.29E+01 0.00E+00 0.00E+00 0.00E+00 5.43E+05 3.13E-06 0.00E+00 1.07E-02 2.89E-07 3.95E+01 1.69E+01 0.00E+00 1.19E-06 1.02E+00 5.97E+00 0.00E+00 GbABC 0.00E+00 6.72E+01 2.57E+01 0.00E+00 0.00E+00 0.00E+00 0.00E+00 5.27E+05 0.00E+00 0.00E+00 0.00E+00 0.00E+00 6.83E+01 9.95E-01 0.00E+00 0.00E+00 1.29E+01 7.02E-07 0.00E+00 BsfABC 0.00E+00 4.94E+01 4.41E+02 9.40E+02 3.48E-10 1.01E+00 0.00E+00 9.15E+04 3.04E+02 4.20E+01 1.54E+02 6.28E-02 6.59E+02 6.42E+02 1.05E+00 1.84E-01 1.15E+02 5.46E+02 2.10E+00 MABC 4.57E+00 1.35E+02 4.58E+04 2.08E+03 7.43E-01 1.98E+01 1.26E-02 1.23E+06 3.48E+03 4.20E+01 3.47E+03 9.64E+02 2.75E+03 1.66E+03 7.54E+00 1.97E+03 3.60E+03 9.39E+02 2.52E+01 CABC 0.00E+00 1.02E+02 2.46E+00 3.43E-08 0.00E+00 0.00E+00 0.00E+00 5.06E+05 6.63E-03 0.00E+00 6.29E-03 7.45E-04 7.86E+00 8.86E-05 0.00E+00 3.01E-03 5.99E-01 1.98E-04 0.00E+00 GbdABC 0.00E+00 5.83E+01 2.21E+02 1.13E+00 4.01E-04 0.00E+00 0.00E+00 5.06E+05 0.00E+00 0.00E+00 0.00E+00 2.26E-01 1.88E+02 1.35E+00 0.00E+00 1.08E-01 2.30E+01 1.97E-06 0.00E+00 RABC 0.00E+00 2.21E+01 5.07E+01 7.56E+01 0.00E+00 0.00E+00 0.00E+00 1.12E+05 7.72E+00 0.00E+00 8.96E+00 1.10E-01 5.48E+01 4.88E+01 0.00E+00 3.03E-02 3.20E+01 1.79E+01 0.00E+00 IncABC 0.00E+00 9.61E+01 9.79E+00 2.98E+00 0.00E+00 0.00E+00 0.00E+00 3.20E+05 0.00E+00 0.00E+00 0.00E+00 0.00E+00 4.14E+00 9.95E-01 0.00E+00 0.00E+00 1.49E+00 0.00E+00 0.00E+00 AIABC 0.00E+00 3.78E+01 5.60E+02 5.03E+00 0.00E+00 0.00E+00 0.00E+00 1.27E+05 0.00E+00 0.00E+00 0.00E+00 1.16E-13 3.56E+02 3.98E+00 0.00E+00 3.90E-11 2.25E+00 9.95E-01 0.00E+00 SaIABC 0.00E+00 3.66E+01 2.82E+02 1.99E+01 0.00E+00 0.00E+00 0.00E+00 1.16E+05 2.15E-02 0.00E+00 2.15E-02 0.00E+00 1.58E+02 2.69E+01 0.00E+00 2.10E-02 3.70E+00 6.25E+00 0.00E+00 69 Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 70 Varsayılan parametre değerleri ile yapılan deney çalıĢmasına benzer olarak, ayarlanmıĢ parametre değerleri ile elde edilen ortanca sonuçlar üzerinde de aynı önem düzeyi α = 0.05 kullanılarak Friedman test uygulanmıĢtır. Çizelge 5.13‟te test sonucu elde edilen p değerleri yer almaktadır. Yapılan istatistiksel test sonucunda AIABC ve SaIABC algoritmalarının BsfABC, MABC ve IABC algoritmalarından istatistiksel olarak daha iyi olduğu görülmüĢtür. Diğer ABC versiyonlarının sonuçları ile istatistiksel fark olmadığı görülmüĢtür. Bu durum uyarlanabilir IABC algoritmalarının ABC, GbABC, CABC, GbdABC, RABC ve IncABC ile benzer sonuçlar ürettikleri yani rekabetçi sonuçlar verdikleri anlamı taĢımaktadır. Çizelge 5.13. Friedman testinden elde edilen p değerleri Comparisons ABC GbABC BsfABC MABC IABC CABC GbdABC RABC IncABC 50 D vs. AIABC vs. SaIABC 0.16 0.11 0.83 0.66 2.95E-04 1.23E-04 3.98E-05 1.50E-05 5.35E-07 1.66E-07 0.23 0.16 0.70 0.54 0.23 0.16 0.98 0.80 100 D vs. AIABC vs. SaIABC 0.23 0.13 0.68 0.92 8.81E-04 2.69E-04 5.40E-06 1.13E-06 4.14E-07 7.44E-08 0.57 0.39 0.73 0.98 0.68 0.46 0.75 1.0 500 D vs. AIABC vs. SaIABC 0.56 0.92 0.56 0.28 0.003 0.014 1.90E-07 2.36E-06 7.81E-07 8.55E-06 0.75 0.42 0.48 0.83 0.33 0.62 0.33 0.14 5.5.4 Literatürdeki Algoritmalar ile AIABC ve SaIABC Sonuçlarının KarĢılaĢtırılması Son olarak, geliĢtirilen uyarlanabilir ve kendinden-uyarlanabilir IABC algoritmaları Lozano et al. 2011‟de Soft Computing dergisi özel sayısına katılan güncel algoritmalar ile yine aynı fonksiyon kümesi üzerinde ve aynı Ģartlarda karĢılaĢtırılmıĢtır. KarĢılaĢtırmada uyarlanabilir IABC algoritmaları için ayarlanmıĢ parametre değerleri ile elde edilen ortanca sonuçlar kullanılmıĢtır. SOCO özel sayısına katılan 13 algoritmanın yanında katılan algoritmalar için referans olarak kullanılan 3 temel algoritmanın (Diferansiyel geliĢim algoritması, CHC algoritması (Eshelman and Schaffer, 1993) ve G-CMA-ES algoritması (Auger and Hansen, 2005)) ortanca sonuçları karĢılaĢtırmada kullanılmıĢtır. Bu 16 algoritma parametre eniyileme algoritmaları arasında literatürdeki güncel algoritmalar olarak ele alınmıĢtır. 71 Diğer deney çalıĢmalarında olduğu gibi sırasıyla 50, 100 ve 500 boyutlu SOCO fonksiyonları üzerinde elde edilen ortanca değerlerin karĢılaĢtırması sırasıyla ġekil 5.13, ġekil 5.14 ve ġekil 5.15‟te verilmiĢtir. Sonuçlar incelendiğinde AIABC ve SaIABC algoritmalarının diğer algoritmalarla rekabetçi sonuçlar verdiği görülmektedir. 50 boyutlu SOCO fonksiyonlarında MOS-DE ve SaIABC 14 fonksiyonda; AIABC 13 fonksiyonda; DE-D40-Mm, jDElscop ve SaDE-MMTS ise 12 fonksiyonda ideal çözüme ulaĢmıĢlardır. 100 boyutlu SOCO fonksiyonlarında MOS-DE yine 14 fonksiyonda ideal sonuca ulaĢırken AIABC ve SaIABC 12 fonksiyonda ideal sonuca ulaĢmıĢtır. 500 boyutlu problemlerde ise AIABC 8 fonksiyonda, SaIABC 9 fonksiyonda, MOS-DE ise yine 14 fonksiyonda ideal sonucu bulmuĢtur. ġekil 5.13. 50 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları 72 ġekil 5.14. 100 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları ġekil 5.15. 500 boyutlu SOCO fonksiyonları için uyarlanabilir IABC algoritmaları ve literatürdeki güncel algoritmaların sonuçları Önceki deney çalıĢmalarında olduğu gibi bu deney çalıĢmasında elde edilen ortanca değerler üzerinde de önem seviyesi 0.05 olacak Ģekilde Friedman testi uygulanmıĢtır (Çizelge 5.14). 50 boyutlu fonksiyon sonuçları üzerinden elde edilen p değerleri incelendiğinde AIABC ve SaIABC algoritmalarının CHC, DE, GCMA-ES, EM323, EvoPROpt, RPSO-vm ve VXQR1 algoritmalarından istatistiksel olarak daha iyi olduğu ancak diğer algoritmalar ile istatistiksel bir farkın bulunmadığı görülmektedir. 73 100 boyutlu fonksiyon sonuçları için elde edilen p değerleri incelendiğinde SaIABC ve AIABC algoritmalarının CHC, G-CMA-ES ve EvoPROpt algoritmalarından istatistiksel olarak daha iyi olduğu görülmektedir. Bu üç algoritma haricindeki diğer algoritmalar ile istatistiksel olarak bir fark bulunmamaktadır. Son olarak, Friedman testinden 500 boyutlu fonksiyonlar için elde edilen p değerleri incelendiğinde AIABC ve SaIABC algoritmaları istatistiksel olarak CHC, G-CMA-ES ve EvoPROpt algoritmalarından daha iyi olduğu tespit edilmiĢtir. 500 boyutlu problem sonuçları için AIABC ve SaIABC algoritmalarından istatistiksel olarak daha iyi olan tek algoritma MOS-DE algoritması olmuĢtur. Çizelge 5.14. Friedman testinden elde edilen p değerleri Boyutlar KarĢılaĢtırmalar CHC DE G-CMA-ES DE-D40-Mm EM323 EvoPROpt GaDE GODE jDElscop MA-SSW MOS-DE RPSO-vm SADE-MMTS SOUPDE IPSO-Powell VXQR1 50 D vs. vs. AIABC SaIABC 6.08E-09 6.69E-09 0.0146 0.0167 5.54E-05 5.93E-05 0.898 0.910 0.0146 0.0153 5.54E-05 5.93E-05 0.724 0.736 0.104 0.115 0.860 0.872 0.421 0.422 0.460 0.460 0.034 0.035 0.860 0.898 0.395 0.395 0.860 0.847 0.0127 0.0134 100 D vs. vs. AIABC SaIABC 7.41E-08 8.10E-08 0.131 0.1438 3.85E-04 4.10E-04 0.7118 0.688 0.0917 0.0948 7.88E-04 8.35E-04 0.4797 0.45 0.368 0.3946 0.282 0.2890 0.531 0.5310 0.115 0.1192 0.08 0.0886 0.552 0.574 0.987 0.9487 0.52 0.4698 0.08 0.0828 500 D vs. vs. AIABC SaIABC 4.20E-07 9.63E-07 0.3116 0.4127 4.35E-04 7.01E-04 0.574 0.51 0.098 0.1623 9.37E-04 0.0018 0.2475 0.1878 0.6414 0.8096 0.127 0.1013 0.05 0.077 0.0245 0.0153 0.6645 0.8096 0.531 0.4407 0.8724 0.9871 0.3946 0.2818 0.0917 0.1192 Orijinal IABC algoritması yüksek boyutlu problemlerde kötü performans sergilemekteydi. Literatürdeki güncel algoritmalar ile yapılan karĢılaĢtırma sonucunda tez kapsamında geliĢtirilen uyarlanabilir IABC algoritmalarının yüksek boyutlu problemlerde de iyi sonuçlar ürettikleri görülmüĢtür. 74 6. ATEġ BÖCEĞĠ ALGORĠTMASI ÜZERĠNDE UYARLANABĠLĠR PARAMETRE KONTROLÜ AteĢ böceği algoritması (firefly algorithm - FA) (Yang, 2008), gerçek ateĢ böceklerinin biyokimyasal ve sosyal yönlerinden esinlenilerek üretilmiĢ sürü zekası tabanlı bir eniyileme algoritmasıdır. Az sayıda parametreye sahip olması, kolay anlaĢılabilir olması, gerçekleĢtiriminin basit olması gibi nedenlerle bir çok eniyileme problemlerinde kullanılmaktadır. Bu avantajlarının yanında metasezgisel bir algoritma olması nedeni ile orijinal FA‟nın bazı problemlerde kolay bir Ģekilde yerel en iyilere takıldığı ve bazı problemlerde çözüme yaklaĢma hızının yavaĢ olduğu görülmektedir. Tez kapsamında daha önceki bölümlerde gösterildiği üzere metasezgisel algoritmaların probleme uyarlanabilir olması performans artıĢı sağlamaktadır. Literatürde FA algoritması ile ilgili çözüme yaklaĢma hızının artırılması ve yerel eniyilerden kaçınmak adına yapılan çalıĢmalar bulunmaktadır (Tian et al., 2012; Tilahun and Ong, 2012; Gandomi et al., 2013). ABC algoritmaları üzerinde yapılan çalıĢmaya benzer bir Ģekilde güncel FA versiyonları üzerinde karĢılaĢtırma yapılması ve önerilen parametre kontrol yöntemlerinin hangi FA versiyonu üzerinde gerçekleĢtirileceğine karar verilmesi planlanmıĢtı. Ancak literatürde yayınlanmıĢ FA çalıĢmalarında yer alan baĢarılı sonuçlara, gerçekleĢtirimi yapılan FA versiyonları ile ulaĢılamadığı için orijinal FA üzerinde uyarlanabilir parametre kontrol yöntemleri uygulanmıĢtır. Orijinal FA‟da ateĢ böceklerinin taĢınmasında kullanılan denklem bazı problemlerde yerel en iyilere takılmaya ya da çözüme yaklaĢma hızının düĢmesine neden olabilmektedir. Metasezgisel algoritmalar, problemlerden bağımsız geliĢtirildiği için algoritmalar bazı problemlerde iyi sonuçlar üretebilirken bazılarında kötü sonuçlar üretebilmektedir. Bu nedenle algoritmaların problem çözümündeki geri bildirimleri kullanarak kendilerini çevrimiçi yani algoritmanın çalıĢması sırasında parametre değerlerini güncelleyerek performans artıĢı sağlanmalıdır. Bu bağlamda tez kapsamında geliĢtirilen uyarlanabilir parametre kontrol yöntemleri kullanılarak FA algoritması probleme uyarlanabilir hale getirilmiĢtir. 75 6.1 AteĢ Böceği Algoritması AteĢ böceği algoritması, ateĢ böceklerinin yanıp sönme davranıĢları üzerine kurgulanmıĢ bir algoritmadır. Algoritmanın temelinde üç ana ilke bulunmaktadır. Bu ilkeler; Tüm ateĢ böcekleri etkileyebilirler, cinsiyet farketmeksizin birbirlerini Cazibeleri (attractiveness) parlaklıkları ile orantılıdır. Az parlak olan ateĢ böceği daha parlak olan ateĢ böceğine yaklaĢır, Bir ateĢ böceğinin parlaklığı eniyilenecek fonksiyondan ürettiği değer ile belirlenir, Ģeklindedir. Bir eniyileme problemini FA ile yinelemeli bir Ģekilde çözmek için N tane ateĢ böceği sürüsü kullanılmaktadır. xi, i. ateĢ böceğinin çözümünü temsil etmektedir ve f(xi) ise bu aday çözümün maliyetini yani en iyiye olan uzaklığını göstermektedir. Minimizasyon problemlerinde bu maliyetin en düĢük olması problem çözüm adayının kaliteli olduğunun göstergesidir. Öncelikle, tüm ateĢ böcekleri için xi, problem boyutu kadar elemana sahiptir ve rastgele değerlerle ilklenmektedir. Herbir aday çözümün (xi) eniyilenecek problemden döndürdüğü değer ilgili ateĢ böceğinin parlaklığını/ıĢık yoğunluğunu (I) ifade etmektedir ve eĢitlik 6.1‟deki gibi formüle edilmiĢtir. 6.1 0, baĢlangıç ıĢık yoğunluğunu (light intensity), 𝛾, ıĢık soğurma katsayısını (light absorption coefficient), r ise iki ateĢ böceği arasındaki uzaklığı temsil etmektedir. Bir ateĢ böceğinin çekiciliği (attractiveness), diğer ateĢ böceğinin parlaklığına ve uzaklığına bağlıdır. Bu nedenle çekicilik 𝛽, eĢitlik 6.2‟deki gibi tanımlanmıĢtır. 𝛽 𝛽 6.2 𝛽0, iki ateĢ böceği arasındaki uzaklığı gösteren r‟nin 0 olduğundaki çekicilik değeridir. 𝛽0, 0 ile 1 arası değer alabilmektedir. 𝛽0 değerinin 1’e yakın olması en parlak ateş böceğinin diğer ateş böceklerinin yerlerinin değişmesinde çok 76 güçlü etki edeceği anlamına gelmektedir. 𝛽 değerine bağlı olarak daha az çekici olan i. ateĢ böceği daha çok çekici olan ve bu nedenle etkilendiği j. ateĢ böceğinin yanına gider. Bu taĢınma iĢlemi 6.3 numaralı eĢitliğe göre gerçekleĢir. 𝛽 ( ) 6.3 i. ateĢ böceğinin aday çözümünü, 𝑗, j. ateĢ böceğinin aday çözümünü temsil eder. Ġki ateĢ böceği arasındaki uzaklık Kartezyen (Cartesian) uzaklık ile belirlenir: 𝑖, √∑ EĢitlik 6.3‟teki 6.4 i, Gauss (Gaussian) dağılımı ile belirlenmektedir (Lukasik and Zak, 2009; Yang, 2010b). Bazı çalıĢmalarda ise Levi dağılımı kullanılmıĢtır (Yang, 2010c). Orijinal FA‟da (Yang, 2008) değeri [0,1] aralığında düzgün dağılım ile belirlenmektedir ve 𝛽0 değeri 1 olarak kullanılmıĢtır. Algoritma çatısı Algoritma 6.1‟de, algoritmanın detayları ise Algoritma 6.2‟de verilmiĢtir. Algoritma 6.1 AteĢ Böceği Algoritması Çatısı 1: Ġlkleme 2: Repeat while (koĢul) 3: AteĢ böceklerini taĢı 4: Çekicilik değerlerini güncelle 5: AteĢ böceklerini sırala 6: O ana kadarki en iyi çözümü bul 7: End while Algoritma 6.2 AteĢ Böceği Algoritması 1: Çözüm popülasyonunu (xi) rastgele değerler kullanarak ilkle, i = 1...n 2: 𝛾, ıĢık soğurma katsayısının değerini belirle 3: tekrar: 1 4: Repeat while (tekrar < Maksimum Tekrar Sayısı) 5: For i = 1 to n do // tüm n tane ateĢ böceği için 6: For j = 1 to n do // tüm n tane ateĢ böceği için 7: IĢık yoğunluğu Ii , xi için f(xi)‟den gelen değer ile belirlenir. 8: If Ij > Ii then 9: i. konumdaki ateĢ böceğini j. konuma eĢitlik 6.3‟ü kullanarak taĢı 10: End if 11: AteĢ böceklerinin çekicilik değerlerini eĢitlik 6.2‟yi kullanarak güncelle 12: Yeni çözümleri ve ıĢık yoğunluklarını hesapla 13: End for j 14: End for i 15: AteĢ böceklerini sırala ve o ana kadarki en iyi çözümü bul 16: tekrar = tekrar + 1 17: End while 18: End. 77 6.2 Stratejik Parametrelerin Belirlenmesi AteĢ böceklerinin taĢınmasında kullanılan denklem incelendiğinde ateĢ böceklerinin yer değiĢimi sabit adım büyüklüğünde gerçekleĢtiği görülmektedir. EĢitlik 6.3‟teki baĢlangıç çekicilik değeri olan 𝛽0„ın değeri orijinal FA‟da 1 olarak alınmıĢtır. Böylece yer değiĢiminin çekiciliği en yüksek olana göre yapılması sağlanmıĢtır. IĢık soğurma katsayısı olan 𝛾 ise 0 ile 10 arasında sabit bir değer olarak belirlenmiĢtir. 𝛾‟nin 0 olması çekiciliğin etkin rol oynamasına, değeri büyüdükçe de çekiciliğin etkinliğinin azaltılmasına neden olmaktadır. EĢitlik 6.3‟teki son terim olan ‟nın değeri ise 0 ile 1 arasında düzgün dağılım ile belirlenen değere sahiptir. Yer değiĢimi için adım büyüklüğünü temsil eden ‟nın küçük değerleri küçük yer değiĢimi anlamına gelecektir ve yerel en iyiye yakalanma riskini artırmaktadır. Büyük değerleri ise ateĢ böceğinin genel en iyi değeri atlamasına neden olabilecektir. Bu nedenle değeri algoritma performansında önemli bir etkiye sahiptir. Bu parametrelerden değeri algoritma performansına doğrudan etki etmektedir. Çevrimiçi ayarlama yapılarak algoritma performansının iyileĢtirilmesi hedeflenmektedir. Bu nedenle belirlenen stratejik parametrenin algoritmanın çalıĢması esnasında problem üzerindeki anlık performansına göre güncellenmesi tez kapsamında geliĢtirilen gerçekleĢtirilmiĢtir. parametre kontrol yöntemleri kullanılarak 6.3 Uyarlanabilir FA (AFA) Algoritması Uyarlanabilir IABC algoritmalarına benzer bir Ģekilde, Eiben et al. (1999) tarafından yapılan sınıflandırmadan esinlenilerek tez kapsamında geliĢtirilen iki farklı uyarlanabilir parametre kontrol yöntemi FA algoritması üzerinde gerçekleĢtirilmiĢtir. Bunlardan birincisi uyarlanabilir parametre kontrolü ile FA algoritmasının performansına doğrudan etki eden stratejik parametresi için çevrimiçi güncelleme yaparak performans artıĢı sağlayan yaklaĢımdır. Bu yaklaĢımla algoritma probleme uyarlananilir hale gelecek ve iyi performans göstermesi sağlanacaktır. Uyarlanabilir parametre kontrolünde algoritmanın çalıĢması esnasında arama sürecinden gelecek geri bildirimlere göre stratejik parametrelerin güncellenmesi söz konusudur. Bu versiyonda parametresinin alabileceği değerler, belirlenen sınırlar dahilinde rastgele üretilmiĢ bir dizide tutulmaktadır (alfaDizisi). Her yinelemede bu 78 diziden sıradaki değerler alınarak parametresine atama yapılmaktadır. Eğer ateĢ böceklerinin taĢınması aĢamasında kullanılan değeri neticesinde genel en iyi çözüm değiĢmiĢse yani eski genel en iyiden daha iyi bir genel en iyi oluĢmuĢsa bu baĢarılı değerleri bAlfaDizisi‟nde saklanmaktadır. alfaDizisi‟ndeki tüm değerler kullanıldıktan sonra bu dizi, baĢarılı değerleri tutan bAlfaDizisi‟ndeki değerlerin yanında rastgele değerler de kullanılarak yeniden ilklenmektedir. Böylece algoritma çalıĢma esnasında problemin farklı aĢamalarında geçmiĢ baĢarılı deneyimlerini kullanarak iyi parametre değerlerine ulaĢmaya çalıĢmaktadır. FA algoritması üzerine eklenen kısımlar italik olarak Algoritma 6.3‟te görülmektedir. Algoritma 6.3 Uyarlanabilir AteĢ Böceği Algoritması (AFA) Çatısı 1: Ġlkleme 1.1: alfaDizisi’ni ilkle Repeat while (koĢul) 2: Stratejik Parametreleri güncelle 3: AteĢ böceklerini taĢı 3.1: Stratejik Parametrelerin başarılı değerlerini sakla 4: Çekicilik değerlerini güncelle 5: AteĢ böceklerini sırala 6: O ana kadarki en iyi çözümü bul 7: Uyarlanabilir Parametre Kontrolü End while 6.3.1 Stratejik Parametrelerin Değer Aralığının Belirlenmesi Orijinal FA makalesinde (Yang, 2008) yukarda stratejik parametre olarak belirlenen değişkeni için değer aralığı 0 ile 1 arasında olacak Ģekilde belirlenmiĢtir. Ancak algoritmayı doğru bir Ģekilde yönlendirmek için bu değer aralığında farklı iki strateji uygulanmıĢtır. GENIS adlı stratejide ’nın alabileceği minimum değer 0, maksimum değer ise 1‟dir. DAR adlı stratejide ise ’nın alabileceği minimum değer 0, maksimum değer ise factor değiĢkeni kadardır. factor değiĢkeninin değeri her DAR adlı strateji kullanıldığında 1‟i geçmeyecek Ģekilde 0.1 kadar artırılmaktadır. Algoritma duraksadığında strateji değiĢikliğine gidilir. alfaDizisi‟ndeki tüm değerler kullanılmasına rağmen algoritma bAlfaDizisi‟ne değer aktaramamıĢsa baĢka bir deyiĢle kullanılan değerler o ana kadarki genel en iyi çözümü iyileĢtirememiĢse algoritma duraksamıĢ demektir. Duraksamaya neden olan strateji GENIS ise DAR stratejiye geçilir, DAR ise GENIS stratejiye geçilir. Strateji yönetimi Algoritma 6.7‟de 2-20 arasındaki satırlarda yer almaktadır. 79 6.3.2 Stratejik Parametrelerin Uyarlanabilir Parametre Kontrolü Uyarlanabilir parametre kontrolünde algoritmanın arama sürecinden gelen geri bildirimlere göre stratejik parametrelerin güncellenmesi yapılmaktadır. FA algoritmasında tek bir stratejik parametre bulunmaktadır. Bu nedenle, bu parametrenin alacağı değerleri tutan bir dizi ile baĢarılı değerlerin aktarıldığı baĢka bir dizi olmak üzere iki dizi kullanılmıĢtır. FA algoritmasında yer alan dizide tutulmaktadır. parametresinin alacağı değerler alfaDizisi adlı Ġlklemede dizi elemanları; alfaDizisii = ( 1 i , i 2 , ... , MAKS ) i i j [0, 1] olacak Ģekilde MAKS tane değer rastgele ilklenmektedir (Algoritma 6.4). Yineleme syc = 1 ile baĢlamakta ve her yinelemede dizinin sıradaki elemanı = syc olacak Ģekilde kullanılmaktadır (Algoritma 6.5). AteĢ böcekleri yer i değiĢtiğinde genel en iyi çözüm iyileĢmiĢse değeri bAlfaDizisii dizisine atanmaktadır (Algoritma 6.6). Yinelemeler devam ederken sayaç değiĢkeni syc = syc + 1 olacak Ģekilde artırılmaktadır. Bu sayaç değeri MAKS değerine ulaĢtığında yani alfaDizisi‟ndeki tüm elemanlar kullanıldığında bu dizi tekrar ilklenmektedir (Algoritma 6.7). Tekrar ilklemede baĢarılı değerlerin yanında belirlenen stratejiye göre rastgele derğerler de kullanılmaktadır. Hangi oranda baĢarılı değerlerden ve rastgele değerlerden alınacağı YO değiĢkeni ve 0 ile 1 aralığında rastgele oluĢturulan bir değer (r) ile belirlenmektedir. YO = 0.5 ile ilklendikten sonra değeri algoritma ilerledikçe artırılarak daha çok baĢarılı değerlerinin kullanılması sağlanmıĢtır. BaĢarılı değerlerin yanında rastgele değerler kullanılmasının amacı, parametresi için yerel en iyilere takılmamak ve uygun değere ulaĢmak için keĢfi artırmaktır. Algoritma duraksadığında alfaDizisi‟ndeki elemanlar belirlenen stratejiye göre yeniden oluĢturulmaktadır. Bu Ģekilde baĢarısız olan elemanlar değiĢtirilerek süreç tekrar çalıĢtırılmaktadır. Algoritma 6.4 alfaDizisi‟nin ilklenmesi (Algoritma 6.3‟te 1.1) 1: bAlfaDizisi dizisini sıfırla, syc = 0 2: For i = 0 to (MAKS – 1) do 3: alfaDizisi[i] = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı değeri 4: End for 80 Algoritma 6.5 Stratejik Parametrelerin güncellenmesi (Algoritma 6.3‟te 2) 1: = alfaDizisi[syc] Algoritma 6.6 BaĢarılı değerlerin saklanılması (Algoritma 6.3‟te 3.1) 1: If yeniEniyiCozum.parlakligi > eskiEniyiCozum.parlakligi then //Genel eniyi değiĢmiĢse 2: bAlfaDizisi.ekle ( ) 3: End if Algoritma 6.7 Uyarlanabilir parametre kontrolü ve dizilerin yönetimi (Algoritma 6.3‟te 7) 1: YO = 0.5 2: If syc+1 == MAKS then //Tüm dizi elemanları kullanılmıĢsa 3: If bAlfaDizisi.bosmu then //BaĢarılı dizisi boĢsa, algoritma duraksamaya girmiĢse 4: If secilenAStratejisi == DAR then 5: secilenAStratejisi = GENIS 6: If factor+0.1 <= 1 then 7: factor = factor + 0.1 8: Else factor = 0.1 9: End if 10: Else if 11: secilenAStratejisi = DAR 12: End if 13: For y=0 to (MAKS-1) do 14: If secilenAStratejisi == DAR then 15: alfaDizisi[y] = rand [0, factor] //0 ile factor arasında ondalıklı sayı değeri 16: Else if 17: alfaDizisi[y] = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı değeri 18: End if 19: End for 20: Else if //BaĢarılı dizisi boĢ değilse 21: For y=0 to (LP-1) do 22: r = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı 23: If r < YO then // BaĢarılı dizisinden rastgele değer seç 24: alfaDizisi[y] = bAlfaDizisi[rastgele] 25: Else if // BelirlenmiĢ değer aralığı stratejisine göre rastgele değerler seç 26: If secilenAStratejisi == DAR then 27: alfaDizisi[y] = rand [0, factor] //0 ile factor arasında ondalıklı sayı değeri 28: Else if 29: alfaDizisi[y] = rand [0, 1] // 0 ile 1 arasında rastgele ondalıklı sayı değeri 30: End if 31: End if 32: End for 33: bAlfaDizisi = {} 34: End if 35: syc = 0 // anlikFES: O anki fonksiyon hesaplama sayısı // maksFES: Maksimum fonksiyon hesaplama sayısı 36: YO = 0.5 + 0.4 * (anlikFES / maksFES) 37: End if 38: syc = syc + 1 81 6.4 Kendinden-uyarlanabilir FA (SaFA) Algoritması Tez kapsamında Eiben et al. (1999) tarafından evrimsel algoritmalar için önerilen parametre kontrol yöntemlerinden kendinden-uyarlanabilir parametre kontrolünden esinlenilerek üretilen yöntem FA algoritması üzerinde gerçekleĢtirilmiĢtir. FA„da parametresinin değeri algoritma kullanıcısı tarafından belirlenirken uyarlanabilir FA algoritmalarında bu parametrenin değeri algoritma tarafından yönetilmektedir. Kullanıcı deneyimlerine veya algoritma geliĢtiricisinin önerisine göre belirlenen parametre değeri algoritmanın problemden probleme farklı performans sergilemesine neden olmaktadır. Bu nedenle stratejik öneme sahip olan parametrenin problemden probleme değiĢkenlik göstermesi gerekmektedir. Ayrıca çalıĢma zamanında güncellenerek algoritmanın yerel en iyilerden kaçınmasını ve çözüme yaklaĢma hızının artırılması sağlanmaktadır. Kendinden-uyarlanabilir FA algoritmasının genel hatları Algoritma 6.8‟de verilmiĢtir. Kendinden-uyarlanabilir parametre kontrolü için orijinal FA algoritmasına eklenen kısımlar italik olarak yazılmıĢtır. Algoritma 6.8 Kendinden-uyarlanabilir FA algoritması (SaFA) çatısı 1: Ġlkleme Repeat while (koĢul) 2: Stratejik Parametreleri güncelle 3: AteĢ böceklerini taĢı 4: Çekicilik değerlerini güncelle 5: AteĢ böceklerini sırala 6: O ana kadarki en iyi çözümü bul 7: Uyarlanabilir Değer Aralığı Belirleme Algoritması End while 6.4.1 Stratejik Parametrelerin Değer Aralığının Belirlenmesi Algoritma performansına doğrunda etki eden parametresinin kontrolü algoritmanın kendisine bırakılmıĢtır. Bu parametre için alabileceği maksimum ve minimum değerler uyarlanabilir bir Ģekilde gerçekleĢtirilmiĢtir. Normalde 0 ile 1 arasında değerler alabilen parametresi için arama sürecinden gelen geri bildirimlere göre değer aralığı üzerinde değiĢiklikler yapılmaktadır. Böylece algoritma doğru değer aralığına yönlendirilmekte ve böylece kaliteli değerler arasından seçim yapılmaktadır. Değer aralığının belirlenmesi için AFA algoritmasına benzer bir yaklaĢım kullanılmıĢtır. Algoritmanın duraksaması, AFA algoritmasından farklı olarak, belirli bir sayıda ardarda algoritma genel en iyiyi iyileĢtiremediği durumda gerçekleĢmiĢ sayılmaktadır. SaIABC‟ye benzer bir 82 Ģekilde 25 ardarda yinelemede genel en iyi iyileĢmemiĢse algoritma duraksamıĢ kabul edilmiĢtir. Algoritma duraksadığında AFA algoritmasında olduğu gibi strateji değiĢikliği gerçekleĢmektedir. GENIS adlı stratejide değer aralığı 0 ile 1 aralığına çekilmektedir. DAR adlı stratejide ise değer aralığı 0 ile factor aralığına çekilmektedir. factor değiĢkeni her DAR adlı strateji kullanıldığında 1‟i aĢmayacak Ģekilde 0.1 artırılmaktadır ve 1‟e eriĢtiğinde tekrar 0.1‟e düĢürülmektedir. Uyarlanabilir değer aralığı belirleme algoritması Algoritma 6.9‟da verilmiĢtir. Algoritma 6.9 Uyarlanabilir değer aralığı belirleme (Algoritma 6.8‟de 7) 1: If yeniEniyiCozum.cekicilikDegeri == eskiEniyiCozum.cekicilikDegeri then //Genel eniyi değiĢmemiĢse 2: duraksamaSayaci = duraksamaSayaci + 1 3: Else if duraksamaSayaci = 0 4: End if 5: If duraksamaSayaci > 25 then // Algoritma duraksama sürecine girmiĢse 6: If secilenAStratejisi == DAR then 7: secilenAStratejisi = GENIS, duraksamaSayaci = 0 8: If factor+0.1 <= 1 then 9: factor = factor + 0.1 10: Else if factor = 0.1 11: End if 12: Else if 13: secilenAStratejisi = DAR, duraksamaSayaci = 0 14: End if 15: End if 16: If secilenAStratejisi == DAR then 17: yeniMaksADegeri = factor 18: Else if 19: yeniMaksADegeri = 1 20: End if 6.4.2 Stratejik Parametre Kontrolü Parametrelerin Kendinden-uyarlanabilir SaIABC‟ye benzer bir Ģekilde FA‟da stratejik parametre olan parametresi için aday çözüm dizisine yeni bir boyut eklenmiĢtir (ġekil 6.1). Bu boyutun değer aralığı bir önceki bölümde anlatılan uyarlanabilir değer aralığı belirleme algoritmasına göre belirlenmektedir. FA algoritmasında her yinelemede tüm boyutlar çaprazlanmaktadır. Bu nedenle, parametresi için eklenen boyut da her yinelemede çaprazlamaya girmektedir ve yeni değerler elde edilmektedir. Bu Ģekilde parametre değerinin yönetimi algoritmanın kendisine bırakılmıĢtır. 83 N tane aday çözüm EklenmiĢ boyut X1,1 X2,1 . . Xbest,1 . . XN,1 … … … … … … … … Boyutlar (D) X1,D-1 X2,D-1 . . Xbest,D-1 . . XN,D-1 X1,D X2,D . . Xbest,D . . XN,D α 1,D+1 α 2,D+1 . . α best,D+1 . . α N,D+1 ġu anki genel en iyi çözüm ġekil 6.1. SaFA için yeni çözüm dizisi yapısı ġekil 6.1‟deki N popülasyon büyüklüğünü, D boyut sayısını, X aday çözümü, ise parametresi için eklenen boyutu temsil etmektedir. Tüm aday çözümlerde son boyut parametresini temsil etmektedir. Algoritma çalıĢma zamanında her yinelemede aday çözümler arasından o ana kadarki genel en iyi çözüme ait değerini kullanmaktadır (Algoritma 6.10). Algoritma 6.10 Stratejik Parametrelerin güncellenmesi (Algoritma 6.8‟de 2) 1: = genelEniyiCozum[D+1] 6.5 Deneysel Sonuçlar 6.5.1 Deneysel Kurulum GeliĢtirilen uyarlanabilir FA versiyonları yüksek boyutlu ve zor fonksiyonlar içermesi nedeni ile SOCO dergisi özel sayısı yarıĢmasında önerilen klasik fonksiyon kümeleri kullanılarak orijinal FA algoritması ile karĢılaĢtırılmıĢtır. Orijinal FA, AFA ve SaFA algoritmaları önce varsayılan parametre değerleri ile (Çizelge 6.1) daha sonra yinelemeli F-Race algoritması ile ayarlanmıĢ parametre değerleri ile (Çizelge 6.2) SOCO fonksiyonlar üzerinde 25‟er defa fonksiyon çalıĢma sayısı 5000*D oluncaya veya en iyi sonuca ulaĢıncaya kadar çalıĢtırılmıĢtır. 84 Çizelge 6.1. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri Algoritmalar / Parametreler N alpha beta gamma FA AFA SAFA 20 0.5 0.2 1.0 20 0.2 1.0 20 0.2 1.0 Çizelge 6.2. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri Algoritmalar FA AFA SAFA / Parametreler 87 69 57 N 0.0047 alpha 0.065 0.15 0.245 beta 6.157 7.2 3.0 gamma 6.5.2 Varsayılan Parametre Değerleri ile KarĢılaĢtırma Orijinal FA ve uyarlanabilir FA algoritmaları, uyarlanabilir IABC algoritmalarının karĢılaĢtırılmasına benzer bir Ģekilde önce FA için önerilen varsayılan parametre değerleri kullanılarak ilk deney çalıĢması gerçekleĢtirilmiĢtir. Algoritmalar sırasıyla 10, 50 ve 100 boyutlu SOCO fonksiyonları üzerinde 25‟er defa çalıĢtırılmıĢ, elde edilen ortanca ve ortalama değerler Çizelge 6.3-6.4-6.5‟te listelenmiĢtir. Sonuçlar incelendiğinde, geliĢtirilen uyarlanabilir FA algoritmaları orijinal FA algoritmasından hemen hemen her fonksiyonda daha iyi olduğu görülmektedir. Orijinal FA‟dan iyi olan sonuçlar koyu renkle gösterilmiĢtir. 10 boyutlu problem sonuçlarını içeren Çizelge 6.3 incelendiğinde, AFA algoritması FA algoritmasından tüm problemlerde daha iyi sonuçlar üretmiĢtir. SaFA algoritması ise 19 fonksiyonun 16‟sında daha iyi sonuçlar üretmiĢtir. Çizelge 6.4‟te gösterilen 50 boyutlu problem sonuçları incelendiğinde AFA algoritmasının yine tüm problemlerde daha iyi olduğu ve SaFA algoritmasının 19 fonksiyondan 17‟sinde FA‟dan daha iyi sonuç ürettiği görülmektedir. Daha sonra problemlerin boyutları 100‟e çıkarılmıĢtır ve sonuçlar alınmıĢtır (Çizelge 6.5). AFA yine her problemde FA‟dan daha iyi sonuçlar üretmiĢtir. SaFA ise ortanca değerlerde 19 fonksiyonun 17‟sinde, ortalama değerlerde ise 18 fonksiyonda daha iyi sonuçlar üretmiĢtir. 85 Çizelge 6.3. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 10 boyutlu problemler için sonuçları Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 1.19E+03 6.63E-02 2.00E-01 1.85E+01 1.53E-01 3.25E-01 2.04E+07 7.89E+02 6.23E+02 4.56E+01 1.30E+01 2.07E+01 1.09E+01 6.94E-01 6.93E-01 1.18E+01 2.03E+00 9.91E+00 1.01E+01 7.47E-02 2.01E+00 8.68E+02 6.84E-02 1.63E-01 5.27E+01 1.32E+01 6.00E+01 9.68E+01 1.97E+00 7.60E+00 4.62E+01 1.28E+01 5.61E+01 6.87E+02 1.07E+01 1.16E+01 7.09E+06 2.67E+01 3.16E+01 3.60E+01 1.24E+01 5.65E+01 1.19E+01 1.06E-01 1.07E+00 1.15E+02 3.02E+01 3.13E+01 7.82E+01 4.74E+01 5.20E+01 1.38E+01 7.62E+00 1.14E+01 3.15E+01 2.11E+00 8.97E+00 Ortalama Sonuçlar FA AFA SaFA 1.14E+03 1.12E+00 2.46E-01 1.89E+01 4.99E-01 2.53E+00 2.24E+07 3.02E+03 6.48E+02 4.48E+01 1.47E+01 2.21E+01 1.09E+01 6.83E-01 6.87E-01 1.17E+01 1.62E+00 9.90E+00 9.90E+00 1.79E-01 8.59E+00 8.47E+02 8.44E-01 1.67E-01 5.16E+01 1.24E+01 5.89E+01 9.80E+01 2.41E+00 7.13E+00 4.56E+01 1.20E+01 5.56E+01 6.73E+02 1.08E+01 1.20E+01 7.09E+06 3.68E+02 3.08E+01 3.49E+01 1.30E+01 5.86E+01 1.18E+01 2.61E-01 1.28E+00 1.15E+02 3.02E+01 3.29E+01 7.72E+01 4.82E+01 5.54E+01 1.40E+01 7.25E+00 1.16E+01 3.18E+01 2.01E+00 8.69E+00 Çizelge 6.4. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 50 boyutlu problemler için sonuçları Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 4.40E+04 2.58E+00 4.29E+00 7.13E+01 8.12E-01 4.99E+01 8.40E+09 5.00E+02 9.48E+02 5.45E+02 2.25E+02 5.05E+02 3.82E+02 9.99E-01 1.04E+00 1.86E+01 3.99E+00 2.00E+01 1.02E+06 7.60E+00 2.16E+02 3.58E+04 5.01E+01 2.02E+02 4.30E+02 1.91E+02 2.47E+02 3.03E+03 3.37E+01 4.46E+01 4.22E+02 2.04E+02 3.36E+02 2.58E+04 8.15E+01 6.74E+01 4.20E+09 3.86E+02 6.02E+02 4.11E+02 1.55E+02 3.76E+02 1.37E+03 2.33E+01 5.21E+02 1.08E+04 1.64E+02 1.34E+02 3.95E+07 7.40E+02 4.90E+02 1.54E+02 7.98E+01 1.70E+02 1.46E+03 3.42E+01 5.22E+01 Ortalama Sonuçlar FA AFA SaFA 4.37E+04 2.80E+00 4.57E+00 7.06E+01 3.09E+00 4.90E+01 8.54E+09 5.84E+03 1.02E+03 5.44E+02 2.31E+02 5.12E+02 3.84E+02 1.10E+00 1.04E+00 1.86E+01 4.00E+00 2.01E+01 1.07E+07 7.79E+00 2.94E+02 3.57E+04 5.78E+01 2.34E+02 4.30E+02 1.88E+02 3.44E+02 3.01E+03 3.35E+01 4.40E+01 4.21E+02 1.84E+02 3.38E+02 2.51E+04 1.01E+02 7.01E+01 4.04E+09 9.34E+03 6.64E+02 4.10E+02 1.65E+02 3.96E+02 1.93E+03 2.27E+01 5.81E+02 1.06E+04 1.67E+02 1.38E+02 4.04E+07 1.47E+03 6.40E+02 1.53E+02 7.95E+01 1.73E+02 1.44E+03 3.46E+01 1.62E+02 86 Çizelge 6.5. FA ve uyarlanabilir FA algoritmalarının varsayılan parametre değerleri ile 100 boyutlu problemler için sonuçları Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 1.46E+05 1.28E+01 2.19E+01 1.04E+02 4.67E+01 7.34E+01 5.49E+10 7.87E+03 1.13E+04 1.34E+03 5.56E+02 1.00E+03 1.30E+03 1.11E+00 1.12E+00 1.99E+01 4.92E+00 2.02E+01 8.04E+24 2.97E+01 9.83E+03 1.47E+05 7.48E+02 3.08E+03 9.60E+02 5.54E+02 6.87E+02 9.31E+03 7.17E+01 9.65E+01 9.52E+02 5.32E+02 7.04E+02 9.25E+04 1.84E+02 1.48E+02 2.41E+10 1.53E+03 3.05E+03 9.79E+02 4.60E+02 7.86E+03 5.32E+14 8.08E+01 7.57E+03 4.17E+04 3.46E+02 2.86E+02 8.29E+08 1.16E+03 1.65E+03 3.98E+02 1.96E+02 3.69E+02 5.02E+03 8.09E+01 1.15E+02 Ortalama Sonuçlar FA AFA SaFA 1.48E+05 5.21E+01 2.26E+01 1.03E+02 4.60E+01 7.23E+01 5.17E+10 7.56E+03 1.17E+04 1.35E+03 6.27E+02 1.11E+03 1.30E+03 1.11E+00 1.15E+00 1.99E+01 7.23E+00 2.03E+01 7.80E+25 4.63E+01 2.38E+04 1.47E+05 1.31E+03 3.43E+03 9.55E+02 5.11E+02 6.86E+02 9.24E+03 7.37E+01 9.65E+01 9.52E+02 5.08E+02 7.02E+02 9.10E+04 2.21E+02 1.47E+02 2.51E+10 4.40E+04 3.16E+03 9.85E+02 5.07E+02 8.26E+02 7.22E+15 8.21E+01 4.21E+04 4.15E+04 3.47E+02 2.82E+02 8.71E+08 4.61E+03 1.54E+03 3.97E+02 2.06E+02 3.73E+02 5.03E+03 8.13E+01 3.47E+02 Yapılan Friedman testi sonucunda elde edilen p değerlerine göre geliĢtirilen uyarlanabilir FA algoritmalarının orijinal FA algoritmasından istatistiksel olarak tüm boyutlarda daha iyi olduğu görülmektedir (Çizelge 6.6). Çizelge 6.6. Friedman testinden elde edilen p değerleri KarĢılaĢtırmalar FA vs. AFA FA vs. SaFA 10 D 8.64E-08 0.015 50 D 8.64E-08 0.015 100 D 3.48E-08 0.006 6.5.3 AyarlanmıĢ Parametre Değerleri ile KarĢılaĢtırma Ġkinci deney çalıĢmasında yinelemeli F-Race algoritması ile elde edilmiĢ ayarlanmıĢ parametre değerleri kullanılmıĢtır. Yine aynı koĢullarda gerçekleĢtirilen deney çalıĢmasına ait sonuçlar Çizelge 6.7-6.9‟da verilmiĢtir. Elde edilen ortanca ve ortalama sonuçlar incelendiğinde genelde uyarlanabilir FA algoritmalarının daha iyi olduğu görülmektedir. Ancak sonuçlar varsayılan parametre değerlerine oranla burada birbirlerine daha yakındır. Uyarlanabilir FA algoritmaları varsayılan parametre değerleri ile FA algoritmasının 87 ayarlanmıĢ parametre değerlerinde elde ettiği sonuçlara benzer sonuçlar elde etmiĢtir. Bu durum stratejik parametrenin algoritma tarafından yönetildiğinde ayarlanma iĢleminin algoritmanın kendisi tarafından yapıldığını göstermektedir. Çizelge 6.7. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 10 boyutlu problemler için sonuçları Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 3.55E-01 1.63E-02 1.28E-01 5.51E-01 1.37E-01 2.02E-01 6.36E+02 7.89E+02 3.08E+02 6.97E+01 1.26E+01 1.57E+01 5.03E-01 2.39E-01 7.60E-01 1.83E+01 2.27E+00 2.13E+00 2.04E+00 7.03E-02 9.29E-02 2.25E-01 6.40E-02 9.06E-02 5.42E+01 1.13E+01 9.11E+00 8.58E+00 1.04E+00 2.02E+00 5.31E+01 9.45E+00 9.69E+00 1.01E+01 1.07E+01 1.25E+01 3.51E+01 2.76E+01 2.53E+01 5.00E+01 1.85E+01 1.83E+01 1.81E+00 1.34E-01 8.92E-02 2.73E+01 2.57E+01 2.73E+01 7.52E+01 3.90E+01 4.34E+01 1.89E+01 5.73E+00 5.12E+00 9.85E+00 2.04E+00 7.23E-01 Ortalama Sonuçlar FA AFA SaFA 3.62E-01 1.51E+00 1.73E+00 2.87E+00 4.38E-01 5.64E-01 5.97E+02 2.63E+03 1.48E+03 6.96E+01 1.40E+01 1.70E+01 5.01E-01 6.72E-01 7.21E-01 1.79E+01 1.51E+00 1.72E+00 2.14E+00 1.25E-01 2.42E-01 2.15E-01 8.58E-01 2.18E+00 5.44E+01 1.00E+01 9.27E+00 8.92E+00 2.84E+00 2.22E+00 5.12E+01 9.41E+00 9.22E+00 1.01E+01 1.20E+01 1.34E+01 3.62E+01 5.21E+02 1.42E+02 5.22E+01 1.73E+01 1.80E+01 1.70E+00 4.12E-01 2.69E-01 2.71E+01 2.50E+01 2.52E+01 7.82E+01 4.03E+01 4.22E+01 1.95E+01 5.47E+00 5.39E+00 9.53E+00 1.89E+00 1.21E+00 Çizelge 6.8. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 50 boyutlu problemler için sonuçları Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 1.07E+01 2.07E+00 1.95E+00 7.61E+00 5.67E-01 7.40E+00 1.45E+03 5.79E+02 2.73E+02 4.88E+02 2.07E+02 2.46E+02 1.10E+00 9.81E-01 9.54E-01 2.01E+01 3.95E+00 4.09E+00 1.07E+01 3.35E+00 4.31E+00 2.50E+01 2.23E+01 2.26E+01 3.27E+02 1.19E+02 1.83E+02 1.00E+01 2.51E+01 2.96E+01 3.21E+02 1.20E+02 1.49E+02 4.25E+01 7.56E+01 7.52E+01 8.21E+02 2.67E+02 2.69E+02 3.53E+02 1.64E+02 1.56E+02 3.41E+01 1.11E+01 1.45E+01 1.22E+02 1.50E+02 1.59E+02 4.07E+02 5.44E+02 3.92E+02 1.38E+02 8.14E+01 8.07E+01 5.02E+01 2.73E+01 3.06E+01 Ortalama Sonuçlar FA AFA SaFA 1.06E+01 3.94E+00 1.28E+01 7.78E+00 3.92E+00 8.97E+00 1.44E+03 7.33E+03 8.89E+02 4.94E+02 2.91E+02 2.37E+02 1.10E+00 1.41E+00 1.06E+00 2.01E+01 3.84E+00 3.93E+00 1.47E+02 4.02E+00 4.15E+00 2.57E+01 5.57E+01 2.43E+01 3.26E+02 1.40E+02 1.73E+02 1.06E+01 2.54E+01 2.95E+01 3.19E+02 1.34E+02 1.51E+02 4.28E+01 9.93E+01 8.35E+01 8.27E+02 9.56E+03 4.29E+03 3.48E+02 1.66E+02 1.67E+02 7.46E+01 1.26E+01 1.48E+01 1.18E+02 1.66E+02 1.62E+02 4.12E+02 1.70E+03 1.26E+03 1.37E+02 7.93E+01 7.88E+01 4.91E+01 2.74E+01 3.03E+01 88 Çizelge 6.9. FA ve uyarlanabilir FA algoritmalarının ayarlanmıĢ parametre değerleri ile 100 boyutlu problemler için sonuçları Functions f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar FA AFA SaFA 3.23E+01 9.62E+00 7.60E+00 7.78E+00 2.72E+01 3.61E+01 8.64E+03 4.72E+03 6.56E+03 9.18E+02 5.70E+02 5.11E+02 1.30E+00 1.07E+00 1.08E+00 2.03+01 4.68E+00 4.53E+00 4.12E+00 8.24E+00 1.51E+01 3.08E+02 5.10E+02 5.10E+02 6.49E+02 4.65E+02 4.71E+02 2.98E+01 6.19E+01 6.92E+01 6.61E+02 4.53E+02 4.32E+02 9.96E+01 1.58E+02 1.75E+02 3.19E+03 7.54E+02 8.72E+02 7.05E+02 4.71E+02 3.60E+02 2.92E+01 4.06E+01 6.05E+01 1.62E+02 3.20E+02 3.35E+02 1.39E+03 1.14E+03 1.01E+03 2.97E+02 1.81E+02 1.69E+02 7.99E+01 7.76E+01 7.10E+01 Ortalama Sonuçlar FA AFA SaFA 3.22E+01 9.75E+01 2.53E+01 7.82E+00 2.64E+01 3.63E+01 9.74E+03 1.65E+03 7.22E+03 9.23E+02 6.27E+02 5.58E+02 1.29E+00 2.19E+00 1.07E+00 2.03E+01 4.54E+00 4.84E+00 1.38E+01 8.44E+00 1.61E+01 3.14E+02 8.97E+02 5.62E+02 6.46E+02 4.31E+02 4.42E+02 2.99E+01 6.32E+01 6.75E+01 6.59E+02 4.41E+02 4.00E+02 1.03E+02 2.72E+02 1.94E+02 3.21E+03 9.04E+02 9.63E+02 7.10E+02 4.78E+02 4.02E+02 7.07E+01 4.02E+01 6.20E+01 1.68E+02 4.08E+02 3.28E+02 1.37E+03 5.37E+03 2.48E+03 3.03E+02 1.90E+02 1.79E+02 7.90E+01 7.65E+01 7.20E+01 Elde edilen ortanca sonuçlar üzerinde gerçekleĢtirilen Friedman testine göre AFA ve SaFA algoritmaları, FA algoritmasından 10 ve 50 boyutlu problemlerde istatistiksel olarak daha iyi sonuçlar üretirken 100 boyutlu problemlerde istatistiksel olarak bir fark görülmemektedir (Çizelge 6.10). Çizelge 6.10. Friedman testinden elde edilen p değerleri KarĢılaĢtırmalar FA vs. AFA FA vs. SaFA 10 D 1.38E-04 0.001 50 D 0.001 0.009 100 D 0.17 0.29 89 7. SONUÇ VE TARTIġMA Bu tez çalıĢmasında, MHA‟ların sahip oldukları parametrelere verilen değerlerin, belirlenen değerlerin algoritmanın çalıĢması süresince sabit kalmasının, çalıĢma zamanında bu değerlerin güncellenmesinin algoritma performansına etki edip etmediği sorularına cevap aranmıĢtır. Bu bağlamda, MHA‟lar için parametre kontrol yöntemleri incelenmiĢ ve uyarlanabilir parametre kontrol yöntemi ile kendinden-uyarlanabilir parametre kontrol yöntemi geliĢtirilmiĢtir. Bu yöntemlerin geliĢtirilmesindeki amaç: Problemlerden bağımsız geliĢtirilen uyarlanabilir hale gelmesini sağlamak, Bazı problemlerde baĢarılı olup bazılarında kötü performans sergileyen MHA‟ların iyi performanslarını baĢarısız olduğu problemlerde göstermesini sağlamak, Problemden probleme değiĢmesi gereken MHA‟lara ait parametre değerlerinin algoritma kullanıcısından bağımsız otomatik olarak yönetilmesini sağlamak, MHA‟ların çalıĢması sırasında parametre değerlerinin güncellenerek yerel en iyilerden kaçınmasını sağlamak ve çözüme yaklaĢma hızını artırmak, MHA kullanıcılarından parametre değerlerinin belirlenmesi yükünü alıp MHA‟nın kendisine vererek zaman kazancı sağlamaktır. MHA‟ların problemlere Bu hedefler doğrultusunda tez kapsamında gerçekleĢtirilen çalıĢmalar aĢağıdaki baĢlıklar altında özetlenebilir: MHA’lar için uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemlerinin geliĢtirilmesi: Eiben et al. (1999) tarafından EA‟lar için önerilen sınıflandırmadan esinlenerek MHA‟lar için uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemleri geliĢtirilmiĢtir. Uyarlanabilir parametre kontrolünde algoritmanın arama sürecinden gelen geri bildirimler kullanılarak parametre değerlerinin güncellenmesi sağlanmıĢtır. Bu 90 yöntemde baĢarılı olmuĢ stratejik parametre değerlerinin tekrar kullanılması sağlanarak algoritmanın geçmiĢ baĢarılı deneyimlerini yinelemesi gerçekleĢtirilmiĢtir ve böylece algoritmanın çözüme yaklaĢım hızı artırılmıĢtır. Algoritmanın çalıĢma sırasında duraksamaya girmesi durumunda kullanılan parametre değerleri yeniden üretilerek algoritmanın yerel en iyilerden kaçınması sağlanmıĢtır. Kendinden-uyarlanabilir parametre kontrolünde ise parametre değerlerinin yönetimi algoritmanın kendisine bırakılmıĢtır. Stratejik parametreler algoritmanın problem boyutlarını içeren aday çözümüne yeni boyutlar olarak eklenmektedir. Problemi çözmek için çaprazlamaya tabi tutulan aday çözümler iyileĢtirilirken stratejik parametre değerleri de iyileĢtirilmektedir. IABC için uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemlerinin gerçekleĢtirilmesi: MHA‟lar için tasarlanan yöntemlerin baĢarımının test edilmesi için IABC algoritması üzerinde bu yöntemlerin gerçekleĢtirimi yapılmıĢtır. Öncelikle günümüzde yaygın bir Ģekilde kullanılan ABC algoritmalarının gerçek dünya problemleri üzerinde karĢılaĢtırılması yapılmıĢ ve orada baĢarılı olan IABC algoritması yöntemlerin üzerinde uygulanması için seçilen algoritma olmuĢtur. IABC algoritmasının küçük boyutlu problemlerde baĢarılı olmasına rağmen bu baĢarısını yüksek boyutlu problemlere taĢıyamadığı görülmüĢtür. GeliĢtirilen parametre kontrol yöntemleri gerçekleĢtirilerek IABC algoritmasının yüksek boyutlu problemlerde de baĢarılı olması sağlanmıĢtır. Probleme uyarlanabilir hale gelen IABC algoritmalarının baĢarılı olup olmadığının tespiti için SOCO dergisi özel sayısında sunulan fonksiyon kümesi üzerinde deneysel çalıĢmalar yapılmıĢtır. Elde edilen sonuçlar önce diğer ABC versiyonları ile sonra da literatürdeki diğer algoritmalar ile karĢılaĢtırılmıĢ ve uyarlanabilir IABC algoritmalarının (AIABC ve SaIABC) baĢarılı olduğu sonucuna ulaĢılmıĢtır. KarĢılaĢtırmalarda Friedman testi kullanılarak sonuçların istatistiksel olarak da baĢarısı tespit edilmiĢtir. FA için uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemlerinin gerçekleĢtirilmesi: MHA‟lar için tasarlanan parametre kontrol yöntemlerinin IABC algoritmasında elde ettiği baĢarının baĢka bir MHA‟da da elde edilip edilmeyeceğinin tespiti 91 için FA algoritması üzerinde geliĢtirilen yöntemler uygulanmıĢtır. IABC ile benzer Ģekilde gerçekleĢtirilen AFA ve SaFA algoritmaları yine aynı SOCO fonksiyon kümesi üzerinde orijinal FA ile karĢılaĢtırılarak baĢarımları tespit edilmiĢtir. GerçekleĢtirilen uyarlanabilir FA algoritmalarının (AFA ve SaFA) orijinal FA‟ya göre baĢarılı sonuçlar elde ettikleri görülmüĢtür. MHA‟lar için tasarlanan ve iki MHA örneğinde gerçekleĢtirimi yapılan parametre kontrol yöntemlerinde problemden probleme değiĢkenlik göstermesi gereken ve ayrıca çalıĢma zamanında güncellenen stratejik parametre değerlerinin algoritmaların performanslarını iyileĢtirdiği görülmektedir. Ancak geliĢtirilen yöntemlerde üzerinde durulması gereken bazı noktalar bulunmaktadır. Uyarlanabilir parametre kontrolünde stratejik parametrelerin yönetimi dizilerle sağlanmaktadır. Stratejik parametrelerin olası değerlerinin saklanıldığı dizilerin boyutunun baĢtan belirlenmesi gerekmektedir. Tüm dizi elemanları kullanıldığında baĢarılı olan değerlerin olup olmamasına göre algoritmanın duraksamaya girip girmediği belirlenmektedir. Dolayısı ile algoritmanın duraksamaya girmesinde kullanılan dizilerin boyutları önemli bir yere sahiptir. Buna ek olarak, kendindenuyarlanabilir parametre kontrol yönteminde algoritmanın duraksamasını kontrol eden mekanizmada kullanılan ardarda baĢarısız yineleme sayısının da değerinin baĢtan belirlenmesi gerekmektedir. Algoritmanın duraksamasını tespit eden bu değer de performansa etki etmektedir. Ayrıca her iki yöntemde de algoritmalar duraksadıktan sonra baĢarısız değerlerden kurtulmak için ilgili parametrelerin alabileceği değer aralıkları güncellenmektedir. Yeni değer aralıklarının belirlenmesinde kullanılan mekanizma da uyarlanabilir algoritmaların performanslarını etkileyen bir baĢka etkendir. Algoritmaların duraksamasının kontrolünde kullanılan ve algoritmalar duraksadığında parametrelerin yeni değer aralıklarının belirlenmesinde kullanılan değerlerin belirlenmesi yapılan analizler ve deneysel çalıĢmalar neticesinde gerçekleĢtirilmiĢtir. Bu değerler belirlendikten sonra algoritmalar tüm problemlere uyarlanabilir hale gelmektedir. Böylece problemden probleme değiĢkenlik göstermesi ve ayrıca çalıĢma zamanında güncellenmesi gereken stratejik parametrelerin yönetimi tüm problemlerde sabit kalacak ve bir kez belirlendikten sonra değiĢmeyecek değerlerin kullanıldığı uyarlanabilir parametre kontrol yöntemlerine ve dolayısı ile algoritmanın kendisine bırakılmıĢtır. Bir baĢka deyiĢle, iyi bir performans için algoritma kullanıcısının her problemde değerini yeniden belirlemek zorunda olduğu stratejik parametrelerin yönetimi, uyarlanabilir 92 algoritmalarda geliĢtirilen ve her problem için geçerli olan parametre kontrol yöntemlerine bırakılarak daha iyi performanslar elde edilmektedir. Tez kapsamında yapılan deneysel çalıĢmaların sonuçları incelendiğinde, uyarlanabilir algoritmaların varsayılan parametre değerleriyle elde ettiği sonuçların diğer algoritmaların çevrimdıĢı ayarlanmıĢ parametre değerleriyle elde ettiği sonuçlar ile rekabetçi olduğu görülmektedir. Bu durum, çevrimdıĢı ayarlama yapmaya gerek kalmadan uyarlanabilir MHA‟ların iyi performans sergilediğini göstermektedir. Böylece performans artıĢının yanında ciddi anlamda zaman kazancı da sağlanmıĢ olmaktadır. Tez kapsamında geliĢtirilen uyarlanabilir ve kendinden-uyarlanabilir parametre kontrol yöntemlerinin hem performans hem de zaman kazancı sağladığı görülmektedir. Ancak yukarda sözü edilen konularda yöntemlerin iyileĢtirilmesi gerekmektedir: Algoritmaların duraksamasını kontrol eden mekanizmaların daha zeki hale getirilmesi gerekmektedir. Her ne kadar problemden bağımsız değiĢkenlerle kontrolü sağlansa da daha zeki yöntemlerle baĢarı artırılabilir. Algoritmalar duraksadıktan sonra ilgili stratejik parametrelerin değer aralıklarının belirlenmesi için daha zeki yöntemler geliĢtirilebilir. Bu Ģekilde duraksamaya sebep olan değerler yerine algoritmanın baĢarısını artıracak değerlere daha hızlı bir geçiĢ sağlanmıĢ olacaktır ve bu durum baĢarıyı artıracaktır. Tez kapsamında yapılan analizler neticesinde MHA‟lar için parametre değerlerinin algoritma performansına doğrudan etki ettiği görülmektedir. Algoritma geliĢtiricisinin deneyimleri ile veya deneme-yanılma yoluyla bulunan parametre değerleri bazı problemlerde iyi sonuçlar üretse de diğer problemlerde çok kötü sonuçlara sebep olabilmektedir. Bu nedenle bu parametrelerin problemden probleme değerlerinin yeniden belirlenmesi ve yerel en iyilere takılmamak ve çözüme yaklaĢma hızını artırmak adına çalıĢma zamanında zeki bir Ģekilde güncellenmesi gerekliliği ortaya çıkmıĢtır. GeliĢtirilen yöntemler ile baĢarılı sonuçlar elde edilmiĢ olsa da bu alanda bulunacak yeni parametre kontrol yöntemlerine ihtiyaç vardır. Bu tez kapsamında geliĢtirilen yöntemlerin ve ilgili MHA örneklerine uygulanmalarından kazanılmıĢ olan deneyimlerin; farklı 93 MHA‟ların probleme uyarlanabilir versiyonlarının geliĢtirilebileceğini, yeni parametre kontrol yöntemlerinin geliĢtirilmesine rehberlik edeceğini ve bu tez çalıĢmasının ileriki çalıĢmalar için bir örnek oluĢturacağı düĢünülmektedir. 94 KAYNAKLAR DĠZĠNĠ Abbass, H., 2002, The Self-adaptive pareto differential evolution algorithm, IEEE Congress on Evolutionary Computation (CEC), 831-836 pp. Adenso-Diaz, B. and Laguna, M., 2006, Fine-tuning of algorithms using fractional experimental designs and local search, Operations Research 54(1), 99–114 pp. Akay, B. and Karaboga, D., 2010 A modified artificial bee colony algorithm for real-oarameter optimization, Information Sciences, Article in Press, doi:10.1016/j.ins.2010.07.015. Alatas, B., 2010, Chaotic bee colony algorithms for global numerical optimization, Expert Systems with Applications 37, 5682–5687 pp. Alba, E. and Dorronsoro, B., 2005, The Exploration/Exploitation Tradeoff in Dynamic Cellular Genetic Algorithms, IEEE Transactions on Evolutionary Computation, Volume 9, 126-142 pp. Ansotegui Gil, C., Sellmann, M., and Tierney, K., 2009, A gender-based genetic algorithm for the automatic configuration of solvers, CP'2009, Springer, Heidelberg, Volume 5732 of LNCS, 142-157 pp. Auger, A. and Hansen, N., 2005, A restart CMA evolution strategy with increasing pop- ulation size. In: Proceedings of the 2005 Congress on Evolutionary Computation (CEC 2005), IEEE Press, Piscataway, NJ, 1769–1776 pp. Aydin, D., Liao, T., Montes de Oca, M. A. and Stützle, T., 2011, Improving Performance via Population Growth and Local Search: The Case of the Artificial Bee Colony Algorithm, Technical Report No: TR/IRIDIA/2011015. Back, T., 1992, Self adaptation in genetic algorithms, Toward a Practice of Autonomous Systems: Proceedings of the 1st European Conference on Artificial Life, MIT Press, Cambridge, MA, 263–271 pp. Banharnsakun, A., Achalakul, T. and Sirinaovakul, B., 2011, The best-so-far selection in artificial bee colony algorithm, Applied Soft Computing 11(2), 2888-2901 pp. 95 KAYNAKLAR DĠZĠNĠ (devam) Bartz-Beielstein, T., 2006, Experimental Research in Evolutionary Computation: The New Experimentalism, Springer, Berlin, Germany. Bedau, M. A. and Packard, N. H., 2003, Evolution of evolvability via adaptation of mutation rates, Biosystems, Volume 69, 143-162 pp. Birattari, M., Yuan, Z., Balaprakash, P., and Stutzle, T., 2010, F-race and iterated f-race: An overview, experimental methods for the analysis of optimization Algorithms, Springer, Berlin, Germany, 311-336 pp. Blum, C. and Roli, A., 2003, Metaheuristics in combinatorial optimization: Overview and conceptual comparison, ACM Computer Survey, 35, 268-308 pp. Box, G. E. P., 1957, Evolutionary operation: A method for increasing industrial productivity, Applied Statistics, Volume 6, 81-101 pp. Bremermann, H. J., 1962, Optimization through evolution and recombination, Self-Organizing Systems, 93–106 pp. Cai, Z., Huang, H., Qin, Y. and Ma, X., 2009, Ant colony optimization based on adaptive volatility rate of pheromone trail, International Journal of Communications, Network and System Sciences 2(8):792-796 pp. CEC 2011, Proceedings of the IEEE Congress on Evolutionary Computation, New Orleans, LA, USA, 5-8 June, 2011. IEEE 2011 ISBN 978-1-42447834-7. Cho, D. H., Kim, J. K., Jung, H. K. and Lee, C. G., 2003, Optimal design of permanentmagnet motor using autotuning niching genetic algorithm," IEEE Transactions on Magnetics, Volume 39, 1265-1268 pp. Das, S. and Suganthan, P. N., 2010, Problem Definitions and Evaluation Criteria for CEC 2011, Competition on Testing Evolutionary Algorithms on Real World Optimization Problems, Technical Report, Jadavpur University and Nanyang Technological University. Das, S. and Suganthan, P. N., 2011, Differential evolution: A survey of the state-of-the-art, IEEE Trans. on Evolutionary Computation, Volume 15, no. 1, 4-31 pp. 96 KAYNAKLAR DĠZĠNĠ (devam) Davis, L., 1991, Handbook of Genetic Algorithms, Van Nostrand Reinhold New York. Diwold, K., Aderhold, A., Scheidler A. and Middendorf, M., 2011, Performance evaluation of artificial bee colony optimization and new selection schemes, Memetic Computing, doi: 10.1007/s12293-011-0065-8. Dorigo, M., 1992, Optimization, learning and natural algorithms (in italian). Ph.D. thesis, DEI, Politecnico di Milano, Italy, 140 p. Dorigo, M. and Stützle, T., 2004, Ant Colony Optimization, MIT press, Cambridge, MA. Eiben, A.E., Hinterding, R., and Michalewicz, Z., 1999, Parameter control in evolutionary algorithms, IEEE Transactions on Evolutionary Computation, 3(2):124–141 pp. Eiben, A.E. and Smith, J.E., 2003, Introduction to Evolutionary Computation, Springer. Eshelman, L. J. and Schaffer, J. D., 1993, Real-coded genetic algorithms and interval- schemata. In: Whitley DL (ed) Foundation of Genetic Algorithms 2, Morgan Kaufmann, San Mateo, CA, pp 187–202 pp. Espinoza, F. P., Minsker, B. S. and Goldberg, D. E., 2005, Adaptive hybrid genetic algorithm for groundwater remediation design, Journal of Water Resources Planning and Management, Volume 131, 14-24 pp. Farmer, J. D., Packard, N. and Perelson, A., 1986, The immune system, adaptation and machine learning, Physica D, 2, 187-204 pp. Fister, I., Fister, Jr. I., Yang, X. S., and Brest, J., 2013, A comprehensive review of firefly algorithms, Swarm and Evolutionary Computation, ISSN 2210-6502, Volume 13, 34-46 pp. Fogel, L. J., 1962, Autonomous automata, Industrial Research, Volume 4, 14-19 pp. Fogel, L. J., Owens, A. J. and Walsh, M. J., 1966, Artificial Intelligence Through Simulated Evolution, Wiley. 97 KAYNAKLAR DĠZĠNĠ (devam) Friedberg, R. M., 1958, A learning machine: Part I, IBM Journal of Research and Development, Volume 2, 2-13 pp. Friedman, M., 1940, A comparison of alternative tests of significance for the problem of m rankings, The Annals of Mathematical Statistics 11(1):86–92 pp. Fukunaga, A. S., 2008, Automated discovery of local search heuristics for satisfiability testing, Evolutionary Computation, 16(1):31-61 pp. Gamperle, R., Muller, S. D. and Koumoutsakos, A., 2002, Parameter study for differential evolution, In proceedings of WSEAS NNA-FSFS-EC, Interlaken, Switzerland, 293–298 pp. Gandomi, A. H., Yang, X. S., Talatahari, S. and Alavi, A. H., 2013, Firefly algorithm with chaos, Communications in Nonlinear Science and Numerical Simulation, Volume 18, no. 1, 89-98 pp. Gao, W. and Liu, S., 2011, Improved artificial bee colony algorithm for global optimization, Information Processing Letters 111(17), 871-882 pp. Geem, Z. W., Kim, J. H. and Loganathan, G. V., 2001, A new heuristic optimization: Harmony search, Simulation, 76, 60–68 pp. Glover, F., 1986, Future paths for integer programming and links to artificial intelligence, Computers and Operations Research, 13, 533-549 pp. Glover F. and Laguna M., 1997, Tabu Search, Kluwer, Boston. Hao, Z., Huang, H., Qin, Y. and Cai, R., 2007, An ACO algorithm with adaptive volatility rate of pheromone trail, Computational Science, ICCS 2007, 7th International Conference, Proceedings, Part IV, LNCS, Volume 4490, Springer, Heidelberg, Germany, 1167-1170 pp. Harik G. R. and Goldberg, D. E., 2000, Learning linkage through probabilistic expression, Computer Methods in Applied Mechanics and Engineering, Volume 186, 295–310 pp. 98 KAYNAKLAR DĠZĠNĠ (devam) Herrera, F. and Lozano, M., 2000, Two-Loop Real-Coded Genetic Algorithms with Adaptive Control of Mutation Step Sizes, Applied Intelligence, Volume 13, 187- 204 pp. Herrera, F. and Lozano, M., 2003, Fuzzy adaptive genetic algorithms: design, taxonomy, and future directions, Soft Computing-A Fusion of Foundations, Methodologies and Applications, Volume 7, 545-562 pp. Hesser, J. and Manner, R., 1991, Towards an optimal mutation probablity in genetic algorithms, Proceedings of the 1st Conference on Parallel Problem Solving from Nature, number 496 in Lecture Notes in Computer Science, Springer, Berlin, Heidelberg, New York, 23–32 pp. Ho, S. Y., Shu, L. S. and Chen, J. H., 2004, Intelligent evolutionary algorithms for large parameter optimization problems, IEEE Transactions on Evolutionary Computation, Volume 8, 522-541 pp. Holland, J. H., 1962, Outline for a logical theory of adaptive systems, Journal of the ACM (JACM), Volume 9, 297-314 pp. Holland, J. H., 1975, Adaptation in natural and artificial System, Ann Arbor: The University of Michigan Press, Volume 20. Hutter, F., Hoos, H. H., Leyton-Brown, K., and Murphy, K. P., 2009a, An experimental investigation of model-based parameter optimisation: SPO and beyond, Proceedings of GECCO 2009, ACM press, New York, NY, 271-278 pp. Hutter, F., Hoos, H. H., Leyton-Brown, K., and Stutzle, T., 2009b, ParamILS: An automatic algorithm configuration framework, Journal of Artificial Intelligence Research, 36:267-306 pp. Igel, C., Friedrichs, F. and Wiegand, S., 2005, Evolutionary optimization of neural systems: The use of strategy adaptation. Trends and Applications in Constructive Approximation, International Series of Numerical Mathematics, Volume 151, 103-123 pp. 99 KAYNAKLAR DĠZĠNĠ (devam) Jain, A. and Fogel, D. B., 2000, Case studies in applying fitness distributions in evolutionary algorithms, II. comparing the improvements from crossover and gaussian mutation on simple neural Networks, Proceeding of the 2000 IEEE Symposium on Combinations of Evolutionary Computation and Neural Networks, 91-97 pp. Kang, F., Li, J. and Xu, Q., 2009, Structural inverse analysis by hybrid simplex artificial bee colony algorithms, Comput. Struct. 87, 861-870 pp. Kang, F., Li, J. and Ma, Z., 2011, Rosenbrock artificial bee colony algorithm for accurate global optimization of numerical functions, Information Sciences 181, 3508-3531 pp. Karaboga D., 2005, An idea based on honey bee swarm for numerical optimization, Technical Report TR06, Erciyes University, Turkey. Karaboga, D. and Basturk, B., 2007, A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm, J. Global Optimization 39(3), 459-471 pp. Kennedy, J. and Eberhart, R. C., 1995, Particle swarm optimization, in: Proc. of IEEE International Conference on Neural Networks, Piscataway, NJ, 1942–1948 pp. Kirkpatrick, S., Gelatt, C. D., and Vecchi, M. P., 1983, Optimization by simulated annealing, Science, 220 (4598), 671–680 pp. Li, Y. and Li W., 2007, Adaptive ant colony optimization algorithm based on information entropy: Foundation and application, Fundamenta Informaticae 77(3):229-242 pp. Li, B. and Jiang, W., 2000, A novel stochastic optimization algorithm, IEEE Transactions on Systems, Man and Cybernetics, Volume 30, 193-198 pp. Liao, T., Aydin D. and Stützle T., 2013, Artificial bee colonies for continuous optimization: framework, experimental analysis, and improvements, Swarm Intelligence 7(4): 327-356 pp. 100 KAYNAKLAR DĠZĠNĠ (devam) Lobo, F. G. and Lima, C. F., 2006, Revisiting evolutionary algorithms with onthe-fly population size adjustment, Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, 1241-1248 pp. Lobo, F. G., Lima, C. F. and Michalewicz, Z., 2007, Parameter Setting in Evolutionary Algorithms, Springer: Studies in Computational Intelligence, Volume 54. Lozano, M., Molina, D. and Herrera, F., 2011, Editorial scalability of evolutionary algorithms and other metaheuristics for large-scale continuous optimization problems. Soft Computing 15(11), 2085–2087 pp. Lukasik, S. and Zak, S., 2009, Firefly algorithm for continuous constrained optimization tasks, 1st International Conference on Computational Collective Inttelligence, Semantic Web, Social Networks and Multiagent Systems, Springer-Verlag Berlin, Heidelberg, 169-178 pp. Martens, D., Backer, M. D., Haesen, R., Vanthienen, J., Snoeck, M. and Baesens, B., 2007, Classification with ant colony optimization, IEEE Transactions on Evolutionary Computation 11(5), 651–665 pp. Mezura-Montes, E. and Palomeque-Ortiz, A. G., 2009, Self-adaptive and deterministic parameter control in differential evolution for constrained optimization, Constraint-Handling in Evolutionary Optimization, Volume 138, 95-120 pp. Nakrani, S. and Tovey, C., 2004, On honey bees and dynamic server allocation in Internet hosting centers, Adaptive Behavior, 12, 223-240 pp. Nannen, V. and Eiben, A. E., 2007, Relevance estimation and value calibration of evolutionary algorithm parameters, Proceedings of IJCAI 2007, 975-980 pp. Oltean, M., 2005, Evolving evolutionary algorithms using linear genetic programming, Evolutionary Computation, 13(3):387-410 pp. Osman, I.H. and Laporte,G., 1996, Metaheuristics: A bibliography, Ann. Oper. Res. 63, 513–623 pp. 101 KAYNAKLAR DĠZĠNĠ (devam) Pan, Q-K., Suganthan, P. N., Wang, L., Gao, L. and Mallipeddi, R., 2011a, A differential evolution algorithm with self-adapting strategy and control parameters, Computers and Operations Research, Volume 38 (1), 394-408 pp. Pan, Q-K., Tasgetiren, M. F., Suganthan, P. N. and Chua, T. J., 2011b, A discrete artificial bee colony algorithm for the lot-streaming flow shop scheduling problem, Information Sciences, Volume 181 (12), 2455-2468 pp. Passino, K. M., 2002, Biomimicry of bacterial foraging for distributed optimization and control, IEEE Control System Magazine, 52-67 pp. Pham, Q. T., 1994, Competitive evolution: a natural approach to operator selection, Progress in Evolutionary Computation, Lecture Notes in Artificial Intelligence, Volume 956, 49-60 pp. Powell, M., 1964, An efficient method for finding the minimum of a function of several variables without calculating derivatives, The Computer Journal 7(2), 155 p. Qin, A. K., Huang, V. L. and Suganthan, P. N., 2009, Differential evolution algorithm with strategy adaptation for global numerical optimization, IEEE Transactions on Evolutionary Computation, Volume 13, 398–417 pp. Randall, M., 2004, Near parameter free ant colony optimisation, Ant Colony Optimization and Swarm Intelligence: 4th InternationalWorkshop, ANTS 2004, LNCS, Volume 3172, Springer, Heidelberg, Germany, 374-381 pp. Rashedi, E., Nezamabadi-pour, H. and Saryazdi, S., 2009, GSA: A Gravitational Search Algorithm, Information Sciences, Volume 179 (13), 2232-2248 pp. Rechenberg, I., 1964, Cybernetic Solution Path of an Experimental Problem, Library Translation, Volume 1122. 102 KAYNAKLAR DĠZĠNĠ (devam) Ronkkonen, J., Kukkonen, S. and Price, K. V., 2005, Real parameter optimization with differential evolution, In proceedings of IEEE Congress on Evolutionary Computation, Volume 1, Piscataway, NJ: IEEE Press, 506–513 pp. Samrat, L., Udgata, S. and Abraham, A., 2010, Artificial bee colony algorithm for small signal model parameter extraction of MESFET, Eng. App. Artificial Intelligence 11, 1573-2916 pp. Schwefel, H. P., 1975, Evolutionsstrategie und Numerische Optimierung, Technische Universität Berlin. Singh, A., 2009, An artificial bee colony algorithm for the leaf-constrained minimum spanning tree problem, Applied Soft Computing, Volume 9, 625631 pp. Smith, J. E. and Fogarty, T. C., 1997, Operator and parameter adaptation in genetic algorithms, Soft Computing-A Fusion of Foundations, Methodologies and Applications, Volume 1, 81-87 pp. Smith, J., 2002, On Appropriate Adaptation Levels for the Learning of Gene Linkage, Genetic Programming and Evolvable Machines, Volume 3, 129155 pp. Storn, R. and Price, K., 1995, Differential Evolution - a Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Spaces, Technical Report TR-95-012, ICSI. Storn R. and Price K., 1997, Differential evolution - a simple and efficient heuristic for global optimization over continuous spaces, Journal of Global Optimization, 11, 341–359 pp. Stützle, T., 1999, Local Search Algorithms for Combinatorial Problems: Analysis, Improvements and New Applications, Infix, Sankt Augustin, Germany. 103 KAYNAKLAR DĠZĠNĠ (devam) Stützle, T., Lopez-Ibanez, M., Pellegrini, P., Maur, M., Montes de Oca, M., Birattari, M. and Dorigo, M., 2010, Parameter Adaptation in Ant Colony Optimization, Technical Report, IRIDIA, 2010-002, Universite Libre de Bruxelles, Belgium. Swain, A. K. and Morris, A. S., 2002, Performance improvement of selfadaptive evolutionary methods with a dynamic lower bound, Information Processing Letters, Volume 82, 55-63 pp. Tian, Y. F., Gao, W. M., and Yan, S., 2012, An improved inertia weight firefly optimization algorithm and application, International Conference on Control Engineering and Communication Technology (ICCET 2012), pp. 64-68 pp. Tilahun, S. L. and Ong, H. C., 2012, Modified firefly algorithm, Journal of Applied Mathematics, Volume 2012, Article ID 467631. Ting, C. K., Li, S. T. and Lee, C., 2003, On the harmonious mating strategy through tabu search, Information Science, Volume 156, 189-214 pp. Tseng, L. and Chen, C., 2008, Multiple trajectory search for large scale global optimization, In: CEC 2008, Piscataway, NJ, IEEE Press, 3052-3059 pp. Voss S., Martello, S., Osman, I. H. and Roucairol, C., 1999, Metaheuristics: Advances and Trends in Local Search Paradigms for Optimization, Kluwer Academic Publishers, Boston. Whitacre, J. M., Pham, T. Q. and Sarker, R. A., 2006a, Credit assignment in adaptive evolutionary algorithms, Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, 1353-1360 pp. Whitacre, J. M., Pham, T. Q. and Sarker, R. A., 2006b, Use of statistical outlier detection method in adaptive evolutionary algorithms, Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, 1345-1352 pp. Whitacre, J. M., Sarker, R. A. and Pham, Q. T., 2007, The Self-Organization of Interaction Networks for Nature-Inspired Optimization, IEEE Transactions on Evolutionary Computation. 104 KAYNAKLAR DĠZĠNĠ (devam) Yang, S., 2002, Adaptive crossover in genetic algorithms using statistics mechanism, Proceedings of the Eighth International Conference on Artificial Life, 182-185 pp. Yang, X. S., 2008, Firefly algorithm, Nature-Inspired Metaheuristic Algorithms, Luniver Press, Frome, UK, 79-90 pp. Yang, X. S., 2010a, Nature-inspired Metaheuristic Algorithms, Luniver press, 1 p. Yang, X. S., 2010b, Firefly algorithm stochastic test functions and design optimization, Int. J. Bio-Inspired Computation, vol. 2, no. 2, 78-84 pp. Yang, X. S., 2010c, Firefly algorithm, Levy flights and Global Optimization, Research and Development in Intelligent Systems XXVI, Springer, 209218 pp. Yang, X. S. and Deb, S., 2010, Engineering optimization by cuckoo search, Int. J. Math. Modelling Num. Optimisation, 1(4), 330–343 pp. Zhu, G. and Kwong, S., 2010, Gbest-guided artificial bee colony algorithm for numerical function optimization, Applied Mathematics and Computation 217(7), 3166–3173 pp. 105 ÖZGEÇMĠġ Genel Adı Soyadı : AraĢ. Gör. Bekir AfĢar YazıĢma Adresi: Bilgisayar Müh. Bölümü, Ege Üniversitesi, Bornova, Ġzmir Doğum Tarihi ve Yeri: 10.01.1986, Kozan Tel: 2323115331 GSM: 5383830962 E-Posta: bekir.afsar@ege.edu.tr Faks: 2323399405 Eğitim Öğrenim Dönemi Üniversite Derece (*) Öğrenim Alanı 2007 – Devam Ediyor Doktora Ege Üniversitesi Bilgisayar Mühendisliği ABD 2003 - 2007 Lisans Dokuz Eylül Üniversitesi Bilgisayar Mühendisliği Akademik ve Mesleki Deneyim Görev Dönemi 2007 – Devam Ediyor Unvan AraĢtırma Görevlisi Üniversite (Kurum) Ege Üniversitesi Bölüm Bilgisayar Mühendisliği EKLER Ek 1 Ek 2 Ek 3 SOCO Fonksiyon Kümesi IABC ve uyarlanabilir IABC algoritmalarının SOCO fonksiyonları üzerinde ürettiği sonuçlar Sözlük (Ġngilizce-Türkçe) Name Definition f1: Shifted Sphere Function z Range Uni. / Multi. Separable [-100, 100]n U yes [-100, 100]n U no [-100, 100]n M no n i 0 n i f2: Shifted Schwefel's Problem 2.21 maxi {| zi ,1 i n |} f3: Shifted Rosenbrock's Function 100( z n 1 2 i i 1 zi 1) 2 ( zi 1) 2 n [-5, 5]n M yes f5: Shifted Griewank's Function n n z 1 zi2 cos( i ) 1 1000 i 1 i i 1 [-600, 600]n M no [-32, 32]n M yes [-10, 10]n U yes [-65.536, 65.536]n U no [-100, 100]n U no [-15, 15]n U no f6: Shifted Ackley's Function i 1 20e |z f8: Shifted Schwefel's Problem 1.2 ( z n cos(2 zi ) i 1 20 e i 1 i i 1 j 1 j )2 n 1 f9: Shifted Extended f10 e 1 n | |zi | i n i 1 n n f7: Shifted Schwefel's Problem 2.22 i 1 n zi2 1 n 0.2 f 10( z , z i i 1 i 1 ) f 10( zn , z1 ), where f 10( x, y) ( x y ) (sin (50( x y ) ) 1) 2 n 1 f10: Shifted Bohachevsky (z i 1 2 i 2 0.25 2 2 2 0.1 2 zi21 0.3cos(3 zi ) 0.4cos(4 zi 1 ) 0.7) EK 1 10n ( zi2 10 cos(2 zi )) SOCO Fonksiyon Kümesi (Lozano et al., 2011) f4: Shifted Rastrigin's Function Name Definition f11: Shifted Schaffer (z n 1 i 1 2 i 2 zi21 ) 0.25 (sin 2 (50( zi2 zi21 )0.1 ) 1) Range Uni. / Multi. Separable [-100, 100]n U no f12: Hybrid Composition Function 1 NS F 9 F1, mns 0.25 [-100, 100]n M no f13: Hybrid Composition Function 2 NS F 9 F 3, mns 0.25 [-100, 100]n M no f14: Hybrid Composition Function 3 NS F 9 F 4, mns 0.25 [-5, 5]n M no f15: Hybrid Composition Function 4 NS F10 NS F 7, mns 0.25 [-10, 10]n M no f16: Hybrid Composition Function 5 NS F 9 F1, mns 0.5 [-100, 100]n M no f17: Hybrid Composition Function 6 NS F 9 F 3, mns 0.75 [-100, 100]n M no f18: Hybrid Composition Function 7 NS F 9 F 4, mns 0.75 [-5, 5]n M no f19: Hybrid Composition Function 8 NS F10 NS F 7, mns 0.75 [-10, 10]n M no EK 2 Çizelge 1: Varsayılan parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 3.38E-01 0.00E+00 0.00E+00 2.55E+01 1.73E-01 1.55E+00 1.66E+01 1.42E+01 7.05E+00 2.85E+02 0.00E+00 0.00E+00 4.31E-01 0.00E+00 0.00E+00 1.77E+01 0.00E+00 0.00E+00 6.89E-14 0.00E+00 0.00E+00 1.46E+03 1.68E+03 7.46E+01 2.68E+02 0.00E+00 0.00E+00 1.30E+01 0.00E+00 0.00E+00 2.44E+02 0.00E+00 0.00E+00 1.03E+02 0.00E+00 0.00E+00 1.38E+02 4.79E+00 3.03E-01 2.33E+02 5.54E-02 6.03E-07 1.05E+00 0.00E+00 0.00E+00 2.07E+02 0.00E+00 0.00E+00 3.29E+02 7.80E-01 4.58E-01 8.15E+01 0.00E+00 0.00E+00 8.87E+00 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 8.41E+00 1.35E-02 0.00E+00 2.48E+01 1.71E-01 1.57E+00 2.85E+05 3.58E+01 2.75E+01 2.75E+02 1.99E-01 8.80E-02 7.57E-01 0.00E+00 1.86E-03 1.54E+01 0.00E+00 0.00E+00 4.43E-10 0.00E+00 0.00E+00 1.51E+03 1.59E+03 2.05E+02 2.58E+02 1.16E-08 4.30E-04 1.31E+01 0.00E+00 0.00E+00 2.40E+02 0.00E+00 3.90E-06 1.46E+02 1.05E-08 1.94E-02 1.63E+06 2.07E+01 4.51E+00 2.25E+02 1.08E+00 6.37E-01 1.25E+00 0.00E+00 0.00E+00 2.11E+02 3.88E-02 1.94E-02 3.83E+02 1.84E+00 1.95E+00 8.43E+01 2.00E-01 5.99E-01 9.16E+00 0.00E+00 0.00E+00 Çizelge 2: Varsayılan parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 1.07E+01 0.00E+00 0.00E+00 3.85E+01 3.81E+00 9.88E+00 1.76E+04 1.20E+02 9.18E+01 7.18E+02 9.95E-01 0.00E+00 1.27E+00 0.00E+00 0.00E+00 1.90E+01 0.00E+00 0.00E+00 2.29E−07 0.00E+00 0.00E+00 6.47E+03 6.66E+03 2.62E+03 5.61E+02 0.00E+00 0.00E+00 2.88E+01 0.00E+00 0.00E+00 5.69E+02 0.00E+00 0.00E+00 3.49E+02 0.00E+00 0.00E+00 3.77E+02 6.99E+00 5.53E+00 5.92E+02 1.99E+00 2.02E-01 6.07E+00 0.00E+00 0.00E+00 4.55E+02 0.00E+00 0.00E+00 6.88E+02 8.46E+00 7.35E+00 2.49E+02 9.95E-01 1.07E-02 2.41E+01 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 1.31E+02 8.21E-02 0.00E+00 3.81E+01 3.76E+00 9.87E+00 1.16E+07 1.53E+02 1.02E+02 7.22E+02 1.67E+00 3.81E-01 3.01E+00 0.00E+00 1.57E-02 1.87E+01 0.00E+00 0.00E+00 1.25E-04 0.00E+00 0.00E+00 7.24E+03 6.77E+03 4.01E+03 5.58E+02 2.07E-03 5.73E-06 2.82E+01 0.00E+00 0.00E+00 5.68E+02 4.29E-04 4.54E-03 4.05E+02 0.00E+00 1.39E-10 1.70E+07 1.66E+02 1.97E+02 5.79E+02 3.52E+00 9.79E-01 7.39E+00 0.00E+00 0.00E+00 5.97E+02 1.94E-02 5.70E-02 1.22E+03 1.64E+01 1.53E+01 2.48E+02 1.99E+00 8.77E-01 2.39E+01 0.00E+00 0.00E+00 Çizelge 3: Varsayılan parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 4.19E+03 0.00E+00 0.00E+00 4.87E+01 3.28E+01 3.88E+01 4.14E+08 3.15E+02 2.96E+02 4.10E+03 7.96E+00 4.12E+00 2.26E+01 0.00E+00 0.00E+00 1.93E+01 0.00E+00 0.00E+00 1.02E+02 0.00E+00 0.00E+00 1.57E+05 1.07E+05 1.19E+05 3.13E+03 0.00E+00 1.83E-05 1.18E+02 0.00E+00 0.00E+00 3.16E+03 0.00E+00 1.07E-02 3.68E+03 2.10E-02 2.10E-02 2.16E+08 1.66E+02 1.65E+02 3.13E+03 1.89E+01 2.10E+01 1.79E+02 0.00E+00 0.00E+00 3.35E+03 0.00E+00 2.10E-02 2.79E+06 4.65E-01 3.04E+00 1.37E+03 6.96E+00 5.98E+00 1.70E+02 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 5.45E+03 7.33E-02 8.39E-04 4.93E+01 3.27E+01 3.89E+01 4.89E+08 3.25E+02 4.42E+02 4.14E+03 1.71E+01 1.46E+01 4.10E+01 2.34E-04 3.58E-03 1.93E+01 0.00E+00 0.00E+00 1.00E+02 2.62E-11 0.00E+00 1.61E+05 1.12E+05 1.23E+05 3.13E+03 2.58E-03 1.21E-02 1.41E+02 4.20E-02 0.00E+00 3.16E+03 2.07E-03 1.32E-02 4.40E+03 1.10E-01 9.68E-02 6.09E+08 1.91E+02 2.00E+02 3.12E+03 2.90E+01 2.79E+01 3.26E+02 0.00E+00 0.00E+00 3.61E+03 3.48E-02 2.77E-02 1.74E+07 1.69E+01 1.36E+01 1.37E+03 9.05E+00 6.93E+00 3.32E+02 0.00E+00 0.00E+00 Çizelge 4: AyarlanmıĢ parametre değerleri ile 50 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 0.00E+00 0.00E+00 0.00E+00 8.24E+00 9.09E-01 8.63E-01 7.82E+01 7.66E+00 6.07E+00 1.09E+02 0.00E+00 0.00E+00 6.86E-02 0.00E+00 0.00E+00 2.48E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 0.00E+00 1.70E+03 1.71E+03 1.38E+01 4.90E+01 0.00E+00 0.00E+00 6.30E+00 0.00E+00 0.00E+00 4.13E+01 0.00E+00 0.00E+00 5.12E+01 0.00E+00 0.00E+00 1.25E+02 1.96E+00 2.12E-01 7.93E+01 0.00E+00 0.00E+00 4.13E−01 0.00E+00 0.00E+00 9.70E+01 0.00E+00 0.00E+00 2.27E+02 3.24E-01 2.17E+00 3.40E+01 2.74E-13 0.00E+00 3.15E+00 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 2.46E+00 0.00E+00 0.00E+00 9.15E+00 9.01E-01 9.53E-01 3.94E+05 3.42E+01 3.03E+01 1.05E+02 1.12E-06 8.80E-02 1.91E-01 0.00E+00 3.94E-04 3.38E+00 0.00E+00 0.00E+00 1.00E-14 0.00E+00 0.00E+00 1.75E+03 1.55E+03 4.81E+01 5.54E+01 0.00E+00 3.80E-03 6.57E+00 0.00E+00 0.00E+00 5.17E+01 0.00E+00 4.64E-03 5.90E+01 0.00E+00 1.94E-02 1.36E+02 1.12E+01 4.97E+00 8.22E+01 2.79E-01 8.02E-02 4.91E-01 0.00E+00 0.00E+00 1.26E+02 1.12E-14 1.94E-02 2.47E+02 1.40E+00 1.65E+01 3.43E+01 2.73E-13 5.72E-01 2.81E+00 0.00E+00 0.00E+00 Çizelge 5: AyarlanmıĢ parametre değerleri ile 100 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 1.08E+00 0.00E+00 0.00E+00 2.73E+01 7.77E+00 7.08E+00 1.68E+02 1.57E+02 9.66E+01 4.36E+02 0.00E+00 0.00E+00 9.31E−01 0.00E+00 0.00E+00 8.96E+00 0.00E+00 0.00E+00 1.24E-14 0.00E+00 0.00E+00 7.21E+03 6.35E+03 1.18E+03 3.43E+02 0.00E+00 0.00E+00 2.10E+01 0.00E+00 0.00E+00 3.51E+02 0.00E+00 0.00E+00 1.90E+02 0.00E+00 0.00E+00 3.48E+02 7.19E+01 5.61E+00 3.23E+02 0.00E+00 9.95E-01 3.15E+00 0.00E+00 0.00E+00 3.44E+02 2.66E-13 0.00E+00 5.93E+02 1.26E+01 6.90E+00 1.18E+02 2.56E-12 1.07E-02 1.78E+01 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 2.48E+01 0.00E+00 0.00E+00 2.73E+01 7.74E+00 7.12E+00 1.77E+07 1.53E+02 1.05E+02 4.59E+02 2.79E-01 2.39E-01 1.53E+00 0.00E+00 5.65E-13 1.06E+01 0.00E+00 0.00E+00 2.66E-14 0.00E+00 0.00E+00 7.45E+03 6.45E+03 1.45E+03 3.40E+02 0.00E+00 6.17E-03 2.13E+01 0.00E+00 0.00E+00 3.41E+02 0.00E+00 1.01E-02 3.36E+02 0.00E+00 0.00E+00 9.38E+04 5.73E+01 2.48E+01 3.37E+02 1.27E+00 5.11E+00 3.07E+00 0.00E+00 0.00E+00 3.99E+02 1.35E-02 4.06E-02 6.08E+02 2.22E+01 1.65E+01 1.21E+02 2.79E-01 5.72E-01 1.68E+01 0.00E+00 0.00E+00 Çizelge 6: AyarlanmıĢ parametre değerleri ile 500 boyutlu problemlerde üretilen ortanca ve ortalama değerler Fonksiyonlar f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 Ortanca Sonuçlar IABC AIABC SaIABC 3.09E+03 0.00E+00 0.00E+00 4.71E+01 3.78E+01 3.66E+01 2.46E+08 5.60E+02 2.82E+02 3.56E+03 5.03E+00 1.99E+01 2.24E+01 0.00E+00 0.00E+00 1.91E+01 0.00E+00 0.00E+00 1.34E+01 0.00E+00 0.00E+00 1.27E+05 1.16E+05 8.50E+04 2.96E+03 0.00E+00 2.15E-02 1.30E+02 0.00E+00 0.00E+00 2.94E+03 0.00E+00 2.15E-02 2.68E+03 1.16E-13 0.00E+00 7.09E+07 3.56E+02 1.58E+02 2.75E+03 3.98E+00 2.69E+01 6.15E+01 0.00E+00 0.00E+00 2.97E+03 3.90E-11 2.10E-02 4.35E+03 2.25E+00 3.70E+00 1.21E+03 9.95E-01 6.25E+00 1.17E+02 0.00E+00 0.00E+00 Ortalama Sonuçlar IABC AIABC SaIABC 3.89E+03 0.00E+00 6.63E-03 4.74E+01 3.78E+01 3.65E+01 3.35E+08 5.62E+02 3.28E+02 3.54E+03 7.11E+00 4.58E+01 2.92E+01 1.82E-10 2.33E-02 1.91E+01 0.00E+00 0.00E+00 1.34E+01 2.90E-14 0.00E+00 1.27E+05 1.30E+05 1.08E+05 2.96E+03 0.00E+00 3.98E-02 1.30E+02 0.00E+00 0.00E+00 2.95E+03 0.00E+00 2.61E-02 3.41E+03 9.37E-02 1.63E-01 2.58E+08 3.29E+02 2.30E+02 2.75E+03 5.82E+00 4.28E+01 1.28E+02 0.00E+00 0.00E+00 3.44E+03 5.07E-03 1.37E-01 6.40E+06 3.65E+01 1.34E+01 1.21E+03 1.91E+00 9.20E+00 1.96E+02 3.36E+00 0.00E+00 EK 3 SÖZLÜK (ĠNGĠLĠZCE-TÜRKÇE) ĠNGĠLĠZCE TÜRKÇE Adaptive Uyarlanabilir Ant colony optimization Karınca kolonisi eniyilemesi Approximation YaklaĢım Artificial bee colony Yapay arı kolonisi Artificial immune system Yapay bağıĢıklık sistemi Attractiveness Cazibe Autocorrelation Otokorelasyon Bacteria foraging algorithm Bakteri yem arama algoritması Candidate solution Aday çözüm Cross-correlation Çapraz-korelasyon Cuckoo search algorithm Guguk kuĢu arama algoritması Convergence speed Çözüme yaklaĢma hızı Default Varsayılan Deterministic Deterministik Differential algorithms Diferensiyal algoritmalar Diversification ÇeĢitlendirme Employed ĠĢçi Evolution strategies Evrim stratejileri Evolutionary computation Evrimsel hesaplama ĠNGĠLĠZCE TÜRKÇE Evolutionary programming Evrimsel programlama Exploitation Faydalanma Exploration KeĢif Firefly algorithm AteĢ böceği algoritması Fitness value Uygunluk değeri Genetic algorithms Genetik algoritmalar Heuristic Sezgisel Honey bee algorithm Bal arısı algoritması Intensification YoğunlaĢtırma Level of significance Önem seviyesi Light absorption coefficient IĢık soğurma katsayısı Light intensity IĢık yoğunluğu Local optimums Yerel en iyiler Maximize En üst seviyeye çekmek Mean Ortalama Median Ortanca Metahueristic Metasezgisel Metaheuristic algorithms Metasezgisel algoritmalar Minimize En alt seviyeye çekmek Multivariable Çok değiĢkenli Nonlinear Doğrusal olmayan Objective value Nesnel değer ĠNGĠLĠZCE TÜRKÇE Offline tuning ÇevrimdıĢı ayarlama Online tuning Çevrimiçi ayarlama Onlooker Gözlemci Oppositon-based learning Zıtlık-tabanlı öğrenme Optimal En iyi Optimization Eniyileme Parameter adaptation Parametre uyarlama Parameter control Parametre kontrolü Parameter setting Parametre belirleme Parameter tuning Parametre ayarlama Particle swarm optimization Parçacık sürü eniyilemesi Recombination Rekombinasyon Reproduction Üreme Scaling factor Ölçekleme faktörü Scout Ġzci Selection Seçim Self-adaptive Kendinden-uyarlanabilir Simulated annealing Tavlama benzetimi Stochastic Rassal Swarm intelligence based Sürü zekası tabanlı Tabu search Tabu arama Tuned AyarlanmıĢ ĠNGĠLĠZCE TÜRKÇE Tuning Ayarlama