"Popülasyon optimizasyon algoritmaları: Yarasa algoritması (Bat Algorithm, BA)" makalesi için tartışma

 

Yeni makaleye göz atın: Popülasyon optimizasyon algoritmaları: Yarasa algoritması (Bat Algorithm, BA).

Bu makalede, düzgün fonksiyonlar üzerinde iyi yakınsama gösteren yarasa algoritmasını inceleyeceğiz.

BA algoritmasını uygularken, birçok kaynakta makalelerin yazarlarının algoritmayı tamamen farklı şekillerde tanımladıkları gerçeğiyle karşılaştım. Farklılıklar hem kilit noktaların tanımlanmasındaki terimlerin kullanımında hem de temel algoritmik özelliklerdeydi, bu yüzden kendim nasıl anladığımı size anlatacağım. Ekolokasyonun altında yatan temel fiziksel ilkeler, önemli sınırlamalar ve kurallar ile algoritmaya uygulanabilir. Yarasaların MinFreq ile MaxFreq arasında değişen frekansta ses atımları kullandığını varsayıyoruz. Frekans yarasa hızını etkiler. Yarasanın mevcut konumundaki yerel arama durumundan en iyi çözümün yakınındaki global arama durumuna geçişi etkileyen koşullu ses yüksekliği kavramı da kullanılmaktadır. Optimizasyon boyunca atım frekansı artarken, ses yüksekliği azalır.

BA algoritmasının yalancı kodu (Şekil 1):

1. Yarasa popülasyonunu başlat.
2. Frekans, hız ve yeni çözümleri oluştur.
3. Yerel bir çözüm ara.
4. Global çözümü güncelle.
5. Ses yüksekliğini azalt ve atım frekansını artır.
6. Durma kriteri karşılanana kadar 2. adımdan itibaren tekrarla.

scheme

Şekil 1. BA algoritmasının blok diyagramı

Yazar: Andrey Dik

Neden: