Algoritma
Adım adım örnek
Aşağıdaki çevrim, Erciyes Üniversitesi ABC sayfasındaki "Step by Step Procedure of ABC" belgesinden birebir alınmıştır. Rastgele seçilen komşu (k), boyut (j) ve Φ değerleri de belgedeki değerlerdir; aynı sayılarla adım adım takip edebilirsiniz.
min f(x) = x1² + x2², −5 ≤ xi ≤ 5, D = 2
Başlangıç: 3 besin kaynağı (−5, 5) aralığında düzgün dağılımla üretildi.
| # | Konum x | f(x) | Uygunluk |
|---|---|---|---|
| 0 | ( 1.4112, −2.5644) | 8.5678 | 0.1045 |
| 1 | ( 0.4756, 1.4338) | 2.2820 | 0.3047 |
| 2 | (−0.1824, −1.0323) | 1.0990 | 0.4764 |
1Görevli arı fazı
Her görevli arı υi,j = xi,j + Φij(xi,j − xk,j) ile bir aday üretir ve açgözlü seçim uygular.
1. görevli arı
k=1, j=0, Φ=0.8050 → υ0 = (2.1644, −2.5644)
f=11.2610, uygunluk=0.0816. 0.0816 < 0.1045 → iyileşme yok, deneme sayacı artırıldı.
2. görevli arı
k=2, j=1, Φ=0.0762 → υ1 = (0.4756, 1.6217)
f=2.8560, uygunluk=0.2593. 0.2593 < 0.3047 → iyileşme yok, deneme sayacı artırıldı.
3. görevli arı
k=0, j=0, Φ=−0.0671 → υ2 = (−0.0754, −1.0323)
f=1.0714, uygunluk=0.4828. 0.4828 > 0.4764 → İYİLEŞTİ, çözüm değiştirildi, sayaç sıfırlandı.
2Olasılık hesabı
pi = fiti / Σfit — nektarı bol kaynak daha çok gözcü çeker.
p
0.1172 · 0.3416 · 0.5412
Üçüncü kaynak en yüksek olasılığa sahip.
3Gözcü arı fazı
Gözcüler kaynakları pi olasılığıyla seçip aynı formülle aday üretir.
1. gözcü arı
i=2 → υ2 = (−0.0754, −2.2520)
f=5.0772, uygunluk=0.1645. 0.1645 < 0.4828 → iyileşme yok.
2. gözcü arı
i=1 → υ1 = (0.1722, 1.4338)
f=2.0855, uygunluk=0.3241. 0.3241 > 0.3047 → İYİLEŞTİ.
3. gözcü arı
i=2 → υ2 = (0.0348, −1.0323)
f=1.0669, uygunluk=0.4838. 0.4838 > 0.4828 → İYİLEŞTİ.
4Kâşif arı fazı
Deneme sayacı limiti aşan kaynak terk edilir ve yerine rastgele yeni bir kaynak üretilir.
Deneme sayaçları
1 · 0 · 0
Hiçbiri limit = 6'yı aşmadı → terk edilen kaynak yok, kâşif arı bu çevrimde devreye girmedi.
Çevrim sonu — en iyi çözüm hafızaya alındı.
| # | Konum x | f(x) | Uygunluk |
|---|---|---|---|
| 0 | ( 1.4112, −2.5644) | 8.5678 | 0.1045 |
| 1 | ( 0.1722, 1.4338) | 2.0855 | 0.3241 |
| 2 | ( 0.0348, −1.0323) | 1.0669 | 0.4838 |
En iyi: (0.0348, −1.0323)