• Sonuç bulunamadı

3. MATERYAL VE YÖNTEM

3.8. Diferansiyel Gelişim Algoritması

3.8.3. Değiştirilmiş diferansiyel gelişim algoritması

Klasik diferansiyel gelişimin bazı problemler için yeterli olmadığını gören araştırmacılar performansı geliştirmek için klasik diferansiyel gelişimde çeşitli değişiklikler yaparak yeni algoritmalar geliştirmişlerdir. Bu değişiklikler popülasyonda, başlangıç işlemlerinde, diferansiyel mutasyonda, çaprazlamada, amaç ve kısıt fonksiyonu değerlendirmelerinde ve seçim işleminde yapılmıştır.

Çok-Popülasyonlu Diferansiyel Gelişim: Popülasyon diferansiyel gelişimin üzerinde işlem gerçekleştiği bir nesne olarak ele alınabilir. Klasik diferansiyel gelişim algoritmasında iki popülasyon ( ) kullanılmaktadır, ancak bu popülasyonlar aslında aynı popülasyonun gelişiminde yararlanılan ve farklı aşamalarda hedef popülasyonu oluşturmada kullanılan popülasyonlardır. Bu nedenle klasik diferansiyel gelişim tek-popülasyonlu bir algoritmadır. Çeşitli çok-popülasyonlu diferansiyel gelişim stratejileri önerilmiştir. Bunlardan ilki yedek popülasyon kullanmaktır. Üretilen yeni çocuk bireyin ebeveyn birey haricinde popülasyon içindeki tüm bireylerden iyi olduğu durumlarda klasik diferansiyel gelişimde bu çocuk birey yerine ebeveyn birey

67

kullanılmaktadır. Üretilen uygunluk değeri çok iyi olan çocuk bireylerin heba edilmemesi açısından uygunluk değeri iyi olan çocuk bireylerin yeni bir yedek popülasyonda tutularak popülasyondaki diğer kötü uygunluk değerine sahip bireylerin yerine geçmesi önerilmiştir (Ali ve Törn 2004). Problem boyutunun tam olarak bilinmemesinden kaynaklanan bilgi eksiliği içeren optimizasyon problemlerinde popülasyon içinde belirli gruplar oluşturularak bu farklı gruplar ile gelişimi sağlamaya çalışmak da farklı bir yaklaşım olarak kullanılmıştır. Burada her grup, problemin farklı boyutları için arama gerçekleştirmekte ve gruplar kendi aralarında yarışmaktadırlar (Qing 2004). Birden fazla optimum bölgelere sahip problemlerde altpopülasyon yaklaşımı geliştirilmiştir. Bu yaklaşıma göre her optimum bölge için popülasyon bölünmekte ve o bölgeler için yerel arama gerçekleştirilmektedir. Arama süresince bazen bu altpopülasyonlar birbirleri ile bilgi alışverişinde bulunup gidişatlarını değiştirebilmektedirler. Bu yaklaşım paralel hesaplamaya çok uygundur. Bu yaklaşımlara ek olarak popülasyonda optimizasyon parametrelerinin tanım aralığına göre ters kullanan ve bu şekilde çeşitliliği arttırmaya çalışan zıt-tabanlı yaklaşımlar da geliştirilmiştir.

Rastgele Olmayan Başlangıç İşlemi: Klasik diferansiyel gelişimde başlangıç popülasyonu genellikle rastgele oluşturulmaktadır. Ancak problem hakkında önceden bir bilgi birikimi varsa veya hangi bölgelere daha fazla ağırlık verilebileceği biliniyorsa bu durumda başlangıç popülasyonu taraflı bir şekilde istenen bölgelere daha fazla birey gelecek şekilde oluşturulabilir.

Farklı Biçimlerdeki Diferansiyel Mutasyon: Diferansiyel gelişim algoritmasında mutasyonun kilit rol oynadığı bilinmektedir, bu nedenle en çok mutasyon üzerinde durulmuş ve bunun üzerinde birçok çalışma yapılmıştır. Pertürbasyon mutasyonda zamanından önce yakınsamayı engellemek için fark vektörüne bağımsız bir gürültü terimi eklenmektedir (Chen 2002). Trigonometrik mutasyonda (Fan ve Lampinen 2003) üç fark vektörü en iyi şekilde oluşturularak işlem gerçekleştirilmektedir. Çoklu mutasyonda (Wu ve ark. 2006) birden fazla fark vektörü oluşturulmaktadır. Bu mutasyonların yanında iyi bireylerin mutasyona uğrama olasılığını arttıran üniform olmayan mutasyon (Sarimveis ve Nikolakopoulos 2005) ve bir vektöre uygulanan sadece bir fark vektörü yerine muhtemel fark vektörleri seti içerisinden seçilen en uygun

68

fark vektörünü kullanan diferansiyelden bağımsız mutasyon işlemi (Ali ve Fatti 2006) geliştirilmiştir.

Özel Çaprazlama İşlemleri: Çaprazlama işlemi genetik algoritmalarda en etkin ve üzerinde en çok çalışılan operasyon olmakla birlikte diferansiyel gelişim algoritmasında mutasyon operasyonu aynı önemi kazanmıştır. Diferansiyel gelişimde çaprazlama işlemi üzerinde genetik algoritmalar kadar durulmamış ve biraz ihmal edilmiştir. Klasik diferansiyel gelişim algoritmasında mutasyon sonucunda oluşturulan vektör ( ) anne vektör ( ) ile eşleşmekte ve çocuk vektör ( ) oluşturulmaktadır. Bu tertip iki şekilde değiştirilebilmektedir; birinci yaklaşımda eşleşen partner değiştirilmekte, ikinci yaklaşımda ise eşleşme sonucunda oluşan çocuk sayısı değiştirilmektedir. Birinci yaklaşımda değişen eş anne vektör olmakta ve çoğunlukla en iyi vektör (birey) ( ) anne vektör olarak eşleşmeye maruz bırakılmaktadır (Babu ve Angira 2003).

İkinci yaklaşımda ise genellikle çocuk sayısı olarak iki alınmaktadır.

Amaç ve Kısıt Fonksiyonu Değerlendirmede Bazı Yaklaşımların Kullanılması: Birçok pratik uygulamada özellikle mühendislik problemlerinde amaç ve kısıt fonksiyonlarının hesaplanması zaman alıcı ve uğraştırıcı olmaktadır. Bu nedenle bazı araştırmacılar sonucun hassasiyetine etki etmeksizin gelişim işleminin bazı aşamalarında amaç ve kısıt fonksiyonlarının kolay hesaplanması için bazı yaklaşımlar geliştirmişlerdir (Pahner ve Hameyer 2000).

Alternatif Seçim Mekanizmaları: Klasik diferansiyel gelişimde anne-çocuk rekabetinde her çocuk ( ) kendi annesiyle ( ) yarışmaktadır. Eğer çocuk ( ) annesinden ( ) daha iyi uygunluk değerine sahip değilse popülasyon içindeki diğer tüm bireylerden daha iyi uygunluk değerine sahip olsa bile ( ) elenmektedir.

Benzer olarak anne birey ( ) popülasyondaki diğer tüm bireylerden daha iyi uygunluk değerine sahip olsa bile ( ) eğer çocuk bireyin ( ) uygunluk değerinden daha iyi değilse ( > ) elenecektir. Böylece ilerleyen aşamalarda bireyler birbirine çok benzeyecektir ve popülasyon çeşitliliği risk oluşturabilecektir. Buna engel olmak için seçim işleminde birçok farklı yaklaşım önerilmiştir. Çapraz Seçim işleminde üretilen çocuk birey ( ) yine annesi ( ) ile yarıştırılmakta ancak yarışı kazanması sonucunda elenen anne birey olmamakta, ya

69

popülasyon ( ) içerisinden rastgele seçilen ve uygunluk değeri çocuk bireyinkinden düşük olan birey elenmekte ya da popülasyon içindeki en kötü birey ( ) elenmektedir. Grup Seçim yaklaşımı Noman ve Iba (2006) tarafından uygunluk değeri iyi olan bireylerin eleme işlemine maruz bırakılmaması ve popülasyon içinde neslini devam ettirebilmesi amacıyla uygunluk değeri iyi olan ve yeni üretilen çocuk bireylerden oluşan yeni bir birlik oluşturarak bu birey topluluğunun yeni nesillere aktarılması işlemidir. Ancak bu yaklaşımda ek bir sıralama işlemi yapılması gerektiğinden birey sayısı arttıkça işlem süresi artmakta ve hesapsal açıdan yoğunluk yaşanmaktadır. Benzerlerin seçimi işleminde popülasyon çeşitliliğini arttırmak için üretilen çocuk birey annesiyle yarıştırılmamakta onun yerine çocuk bireye çok yakın bireyler seçilerek bu bireyler içerisinden çocuk bireye en yakın birey yarışa dahil edilmektedir. Ancak burada benzer bireyleri bulmak için yapılan tüm popülasyon içindeki yakın vektörleri hesaplama işlemi hesapsal açıdan ek bir yük oluşturmaktadır (Thomsen 2004). Eşik değerlerde seçme işlemi diferansiyel gelişimin çok iyi sonuç veremediği gürültülü problemler için Das ve ark. (2005d) tarafından önerilen bir yaklaşımdır. Buna göre gürültünün şiddetine göre çocuk birey ( ) ancak belirli eşik değerlerin belirttiği sınırlar içerisinde annesinin ( ) yerine geçebilmektedir.