DisABC: A new artificial bee colony algorithm for binary optimization

“DisABC: A new artificial bee colony algorithm for binary optimization” başlıklı çalışma Mina Husseinzadeh Kashan, Nasim Nahavandi ve Ali Husseinzadeh Kashan tarafından yapılmış olup Applied Soft Computing dergisinin 2012 yılında yayınlanan 12.sayısının 342–352.sayfalarında basılmıştır.

Popülasyon çeşitliliğini artırmak için Bao and Zeng [L. Bao, J-c. Zeng, Comparison and analysis of the selection mechanism in the artificial bee colony Algorithm, Ninth International Conference on Hybrid Intelligent Systems (2009) 411–416.] 3 seçim stratejisi önermiştir

1-disruptive selection strategy,
2-tournament selection strategy
3-rank selection strategy

İkili yapıların benzerlik ve farklılıkları (similarity/dissimilarity between binary structures)

Çalışmada benzerlik ölçüm birimi olarak Jaccard’ın benzerlik katsayısı esas alınmıştır. (Jaccard’s coefficient of similarity)

Benzerlik hesabı aşağıdaki şekilde yapılmaktadır.

similarity

Çalışmanın başlangıcında Bernoulli process olarak adlandırılan işlem ile üretilen rastgele sayı 0,5’ten küçükse 0 büyükse 1 şeklinde binary sayılar üretilerek popülasyon oluşturulur.

DisABC ile yerel arama modülü hibritlenmiştir. Bu yerel arama modülü 0 olan bitleri 1, 1 olan bitleri 0 yapmaktadır. Böylelikle çözümdeki toplam 1 sayısı değişmemektedir. plocal değişkeni DisABC’nin yerel arama modülünü hangi oranla çağıracağını belirler. nlocal değişkeni de üretilecek olan çözümü niteler.
local-search-method

DisABC algoritmasının sözde kodu:

disabc

Çalışmada neden UFLP(uncapacitated facility location problem) problemi ile test yapıldı?
1-UFLP tamamen binary bir problemdir. Sürekli ve integer değerli değişkenleri yoktur.
2-Herhangi bir binary vektör çözüm olarak alınabilir. Böylece üretilen çözümün feasible mı infeasible mı olduğunu kontrol etmeye gerek yoktur.
3-UFLP’nin sonucu kesin belli olan tesp problemleri hazırdır.

Algoritmanın ürettiği değer ile optimim değer arasındaki farkın optimum değere bölümünün 100 ile çarpımının 30 çalıştırmadaki ortalaması GAP değişkenine aktarılmıştır. Böylece algoritmanın performansı ölçülmüştür.

gap

Çalışmada test problemlerinin optimumları bilindiğinden optimum elde edildiği durumda çalışma durdurulmuştur. Bu noktada #EVL değişkenine o ana kadar kaç çözümün üretildiği ve değerlendirildiği kaydedilmiştir. Bu da algoritmanın yakınsama(convergence) performansının analizi için faydalı olabilir. #OPT değişkeni ile de kaç defa optimum değere ulaşıldığı kaydedilmiştir.

Çalışmada sabit bir Q değeri kullanmak yerine iterasyona bağlı bir şekilde değişen Q değeri aşağıdaki formülle hesaplanarak kullanılmıştır.Araştırmaların sonucunda Qmax=0,9 Qmin=0,5 arasında bir değişimin en verimli sonucu verdiği gösterilmiştir.

qmax-qmin

Aşağıdaki grafikte farklı değerlerde çözüme nasıl yakınsama yapıldığı görülmektedir:

yakinsama

Çalışmada işçi arı sayıları 10,20,30 alınmış ve yapılan testlerde 30 alınmasının daha faydalı olacağı gösterilmiştir.

nb

NBSG algoritmasındaki inheritance ve disinheritance bölümlerine ayar vermek için kullanılan ps parametresi 0,5 ve 1 seçilerek testler yapılmıştır.

ps = 0.5 puts equal weight on the greedy (exploitation) and random (exploration) selection strategy,
while ps = 1 puts entire weight on the random selection strategy (exploration).

“M. Sevkli, A.R. Guner, A continuous particle swarm optimization algorithm for uncapacitated facility location problem, ANTS 2006 (2006) 316–323.” ilgili çalışmada PSO + Local search ile gayet başarılı sonuçlar elde etmiştir.

Çalışmayı indirmek için:
disabc-a-new-artificial-bee-colony-algorithm-for-binary-optimization

Etiketler:

Yorum Yapın