Tibbi Bilisim Standartlari ve Anlamsla Web Teknolojileri Temelli

advertisement
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ğerR 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)},
xX
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
mi ( 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:
[email protected]
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 zi21  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 zi21 ) 0.25 (sin 2 (50( zi2  zi21 )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
Download