• Sonuç bulunamadı

4.1 Global Arama Algoritması (Genetik Algoritma)

4.1.1 Đkili kodlu genetik algoritmalar

4.1.1.4 Başlangıç popülasyonu

Kromozom, başlangıçta verilen popülasyon miktarına göre rasgele üretilir. Bu durumda Nipop×Nbit adet bitlerle matris oluşturulur. Nipop, başlangıç

popülasyonunun toplam sayısıdır; N ise, her bir kromozomun bit sayısıdır. bit Matrisin her bir satırı, bir kromozomu temsil eder. Rasgele üretilen popülasyondaki parametreler, amaç fonksiyonunda yerlerine konularak ve uygunluk değerleri hesaplanarak değerlendirilir.

4.1.1.5 Doğal seçim

Doğal seçim, algoritmanın her bir iterasyonunda meydana gelir. Bu aşamada, ne kadar kromozomun elde tutulacağına karar vermek keyfidir. Kromozomlarda gelecek nesil içerisinde yer alma mücadelesi başlamaktadır. Popülasyon içerisinde bütün kromozomların seçilmesi, gelecek nesle çok fazla katkısı olmamaktadır. Genetik algoritmalarda değişik seçim metotları vardır:

a) Ağırlıklı seçim: Đlk olarak amaç fonksiyonunda, kromozomların uygunluk değerleri hesaplanır. Hesaplanan uygunluk değerleri en küçükten en büyüğe doğru sıralanır. Npop ≤Nipop ise kromozom tutulur, geriye kalan kromozomlar atılır. Burada

pop

N değeri Nipop’a kadar olabilir. Genelde popülasyonun %50 ’sinin seçilmesi

uygun seçenektir. Seçilen Npop’un yarısı N , yarısı da iyi Nkötü olarak ayrılır. N iyi

b) Eşik değer seçim: Eşik değerden küçük olan kromozomlar yaşamaya devam eder, eşik değeri aşan kromozomlar ölür. Bu tekniğin avantajı, kromozomların sıralanmasına gerek olmamasıdır.

c) Rulet tekerleği seçim: Bu metodun uygulanması için, ilk önce kromozomların toplam uygunluk değeri hesaplanır. Kromozomlar, toplam uygunluk değerine bölünerek her bir kromozom için 0 1− arasında değişen seçim ihtimalleri bulunur. Daha sonra, kümülatif ihtimaller hesaplanır. Popülasyon sayısı kadar rasgele 0 1− arasında sayılar üretilir. Üretilen rasgele sayı, birinci kromozomun kümülatif seçim ihtimalinden küçük ise, birinci kromozom seçilir. Eğer değilse, ikinci kromozomun veya diğerlerinin kümülatif ihtimalleriyle karşılaştırılarak hangisinden küçükse o kromozom seçilir.

d) Turnuva Seçimi: Bu yöntemde bir grup k bireyi rasgele olarak seçilir. Bu k bireyleri daha sonra bir turnuvaya katılır ve en iyi uygunluklu birey seçilir. Çaprazlama için iki turnuva tutulur. Bunlardan biri her bir ebeveyni seçmek içindir. Bir ebeveyn, bir kereden daha fazla üretmek için seçilebilir. Turnuva seçiminin avantajı, popülasyonun daha kötü bireylerinin seçilmeyecek olması ve bundan dolayı kötü bireylerin özelliklerinin sonraki neslin genetik yapısına katılmayacak olmasıdır. Ayrıca en iyi bireyler tekrar üretim sürecinde baskın olmayacaktır.

4.1.1.6 Eşleştirme

Đki adet yeni nesil üretmek için N kromozomların bulunduğu eşleştirme iyi

havuzundan iki tane kromozom seçilir. Eşleştirme, seçilen kromozomlar arasında gerçekleştirilir. Eşleştirmenin değişik yöntemleri vardır:

1 Yukarıdan aşağıya doğru eşleştirme: Eşleştirmeye, listenin en üstünden başlanır ve eşleştirme için seçilen N kromozomların sayısına ulaşana kadar devam iyi

edilir. Böylece, kromozom2i 1 ile kromozom , 2i i 1, 2, 3,...,=

(

Niyi 2

)

için eşleştirilir. Bu metot, doğal bir yöntem olmamakla beraber yeni başlayanlar için kolay bir yoldur.

2 Rasgele eşleştirme: Kromozomların eşleştirilmesinde rasgele sayı üreteci kullanılır. Kromozomlar 1’den başlayarak N ’ye kadar sıralanır. Birinci iyi

eşleştirmeyi bulmak için iki adet rasgele sayı üretilir.

{

}

Kromozom=roundup Niyi×rasgele sayı

Burada “roundup” fonksiyonu, sayıları en yüksek sayıya yuvarlar

3 Ağırlıklı rasgele eşleştirme: Bu yöntem, eşleştirme havuzundaki kromozomların, amaç fonksiyonunda hesaplanan uygunluk değerlerine göre seçilme ihtimallerini dikkate alır. En düşük uygunluk değerine sahip kromozom, eşleştirme ihtimali en yüksek kromozom olurken en yüksek uygunluk değerine sahip kromozom eşleştirme ihtimali en düşük olarak düşünülür. Üretilen rasgele sayı, hangi kromozomun seçileceğini belirler.

4.1.1.7 Çaprazlama

Đki adet yeni birey elde etmek için, kromozomların bulunduğu eşleme havuzundan iki adet kromozom seçilir. Eşleme sürecinde, seçilen kromozomlardan bir ve birden fazla yeni birey oluşturma olayına “çaprazlama” denir. Öncelikle kromozomun ilk biti ile son biti arasında çaprazlama noktası rasgele seçilir. Birinci kromozomun çaprazlama noktasının solundaki bitlerin hepsi ikinci kromozoma geçerken, benzer tarzda ikinci kromozomun çaprazlama noktasının solundaki bitler de birinci kromozoma geçerler. Sonuçta meydana gelen yeni kromozomlar, her iki kromozomun karakterlerini içermektedirler. Çaprazlama oranı, bir popülasyonda ne kadar kromozomun çaprazlamaya tabi tutulacağını belirler.

1 2 Kromozom 00100110011 101 Kromozom 01010110000 100 yer değişecek yer değisecek   =  ↓↑ ⇒   =  6 44 7 4 48 6 44 7 4 48 1 2 101 100 Nesil Nesil = = 01010110000 00100110011

Şekil 4.4 Tek noktalı çaprazlama

4.1.1.8 Mutasyon

bitlerin küçük bir yüzdesini değiştirir. Mutasyon ile kromozomdaki bitler “1” ise “0”, “0” ise “1” yapılır. Npop×Nbit’lik bir popülasyon matrisinde, mutasyon noktaları

rasgele seçilir. Mutasyonun % değeri artırılırsa, algoritma daha geniş parametre uzayını tarama yapar. Son iterasyonda mutasyon meydana gelmez.

1 1

Kromozom 001001 0011101 Kromozom 001001 0011101

mutasyon için seçilen bit ↑

= 0 ⇒ = 1

Şekil 4.5 Tek bitlik mutasyon

4.1.1.9 Gelecek nesil

Đterasyon sonucunda, çaprazlamaya ve mutasyona uğramış kromozomların uygunluk değerleri hesaplanarak yeni nesil elde edilir. Bir sonraki adımda kromozomlar uygunluk değerlerine göre yeniden sıralanır ve eşleştirme havuzuna konur. Tekrar; çaprazlama, mutasyon ve sıralamadan sonra yeni bir nesil daha elde edilir ve bu işlemler uygun bir çözüme ulaşılıncaya kadar veya iterasyon sayısınca devam eder. Her yeni neslin uygunluk değerlerinin iterasyon sayısınca artması beklenir.

4.1.1.10 Yakınsama

Genetik algoritma, iterasyon sayısına veya uygun bir çözüme ulaşıncaya kadar çalışır. Bütün kromozomların uygunluk değerleri değişmiyorsa algoritma durdurulmalıdır. Çoğu genetik algoritmalar, genel ortalama, standart sapma ve minimum uygunluk değeri gibi istatistikleri tutarlar. Bu istatistikler, yakınsama testi için bir ölçü olabilir.

Popülasyonun ortalama uygunluk değeri, algoritmanın yakınsaması hakkında bilgi vermesi bakımından önemli bir kriterdir. Örneğin, maksimizasyon probleminde, farklı iki seçim metodu karşılaştırılıyor ise ortalama uygunluk değeri yüksek olan seçim metodu daha iyi sonuç vermektedir, denilebilir.

Global arama algoritmasının (genetik algoritmanın) amacındaki en ciddi problem sonuçların kalitesiyle ilgilidir. Sonuçların özellikle en uygun çözüme ulaşılıp ulaşılamamasıdır. Güvencenin bazı derecelerini sağlamanın bir yolu farklı

mutasyon oranları altında elde edilen sonuçları karşılaştırmaktır. Sabit sonuçların olumlu olması için, ayrıca kromozom popülasyonunun boyutunu artırmak gerekmektedir.

Benzer Belgeler