Professional Documents
Culture Documents
Toplamson GA
Toplamson GA
GA, sezgisel bir metot olduğundan dolayı verilen bir problem için kesin
sonucu bulamayabilir ancak bilinen metotlarla çözülemeyen yada çözüm
zamanı problemin büyüklüğü ile üstel olarak artan problemlerde kesin
sonuca çok yakın çözümler verebilir. GA, fonksiyon eniyilemesi,
çizelgeleme, mekanik öğrenme, tasarım, hücresel üretim gibi alanlarda
başarılı uygulama alanları bulunmaktadır.
Genetik
Direk Hesaplama Direk Hesaplama Algoritmalar
Teknikleri Teknikleri
Tavlama
Benzetimi
Fibonacci Dinamik
Programlama
Newton Yasaklı
Arama
Dolaylı Hesaplama
Tekniği Karınca
Kolonileri
Birebir sayma tekniğinde; çözüm için aynı anda bir noktadan başlayarak
ilgili olan her bir nokta araştırılır. Bu tekniği geliştirmek çok basit ama
önemli hesaplama teknikleri gerektirebilir. Sayma tekniğine en iyi örnek
dinamik programlamadır.
1.2.1. Gen
Kromozom yapısında kendi başına birer genetik bilgi taşıyan en ufak
yapı birimine gen denir. Kısmi bilgiler taşıyan bu ufak yapıların bir araya
gelmesiyle bütün bir çözüm kümesini oluşturan kromozom (dizi)
meydana gelir.
1.2.2. Kromozom
Bir yada birden fazla gen yapısının bir araya gelerek problemin
çözümüne ait tüm bilgiyi içeren dizilere kromozom denir.
Kromozomların bir araya gelmesiyle popülasyon (yığın) oluşturulur.
Yığındaki her bir bireye kromozom, kromozomdaki her bir bilgiye gen
denir. Kromozomlar, üzerinde durulan problemin olası çözüm bilgilerini
içermektedir.
Ceza işlevi yaklaşımı kısıt sayısı az olan problemler için uygun olduğunu
savunan Michalewicz, kısıt sayısı fazla olan problemler için yeni genetik
operatörlerin geliştirilmesinin GA’nın etkinliğinin artacağını
belirtmişlerdir (1).
F
%30
C
%20
E
%15 D
%5
Tek noktalı ve çok noktalı çaprazlama işlemi GA’da ilk akla gelen
çaprazlama yöntemleridir. Ancak problemin özelliğine göre farklı
tiplerde çaprazlama yapmak da mümkündür. Bu çaprazlama
yöntemlerinden birkaç tanesini kısmını kısıtlı eniyileme problemleri için
inceleyecek olunursa aşağıda belirtilen tiplerde çaprazlama yapmakta
mümkündür. Atölye çizelgeleme gibi kısıtlı en iyileme problemlerinde,
gen kodlamanın farklı olmasından ve probleme uygun çeşitli çaprazlama
türleri üzerinde çalışmalar yapılmıştır. Bunlardan bazıları;
Pozisyona dayalı çaprazlama
Sıraya dayalı çaprazlama
Kısmi planlı çaprazlama
1. Ebeveyn 347110489233
2. Ebeveyn 001472892100
Kalıp 111000110010
1.Çocuk 347472482130
2.Çocuk 001110899203
Şekil 8. Pozisyona dayalı çaprazlama
1. Ebeveyn 123456789045
2. Ebeveyn 746128353196
Kalıp 100010100000
1.Çocuk 172456389045
2.Çocuk 146528373196
Değişim işlemi, p m olasılığı ile tek bir pozisyonun rasgele değişimi olup
bu işlem oluşturulmuş neslin elverişli durumunu birden bozabileceği için
önemlidir. Sonuçta p m .l . N adet değişim gerçekleşir. Böylece p m
olasılığı küçük tanımlanır (14).
Değişim Öncesi Değişim Sonrası
1. Çocuk 10110 1 1010 1.Çocuk 10110 0 1010
Komşu iki işi değiştirme; şekil 12.’de görüldüğü gibi rasgele seçilen iki
komşu gen yer değiştirilir (15).
Keyfi iki işi değiştirme; şekil 13.’de görüldüğü gibi rasgele seçilen iki
gen yer değiştirilir.
Şekil 16.’dan görüldüğü gibi genetik işlem sonrası oluşan yeni dizide
fazla ve/veya kaybolan genler bulunmaktadır. Bu dizinin tamir edilip bir
sonraki nesle aktarılarak GA’nın çalışmasına devam edilir. Bu
yaklaşımda probleme özgü genetik operatörler kullanılır. Amaç genetik
operatörler sonucunda elde edilen yeni dizlerin uygun birer çözüm
kümesini içermesidir (2,8).
E
Oluşan yeni bireylerin kromozom içeriklerini
gerçek kromozom içeriğiyle kaşılaştır. Eksik, fazla Uygunluk değeri en yüksek olan kromozomu
ya da hiç olmayan gen çeşidini yeni kromozom problemin çözümü olarak al
yapısında koru. Tamir popülasyonunu oluştur
Dur
Bu bölümde GA’nın şema teoremi ve çok basit bir örnek ile GA’nın adım
adım çözümü gösterilecektir.
f
f j
[11]
N
şeklinde yazıldığında kopya ile çoğalan şemanın büyüme değeri;
f (H )
m( H , t 1) m( H , t ).
f
[12]
olmaktadır. Eşitlikten de görüleceği gibi şemanın ortalama uygunluk
değerinin popülasyonun ortalama uygunluk değerine oranı kadar şema
büyümektedir. Popülasyonun ortalamasının altındaki uygunluk değeri ile
şema azalan sayıda örnek alırken, popülasyon ortalamasının üstündeki
uygunluk değeri ile şema sonraki nesilde artan sayıda örnek almaktadır.
Yalnız üreme işlemi altında dizi oranlarına göre popülasyondaki bütün
şemalar büyür ve çürürler. Çaprazlama işlemi sonucunda şemanın hayatta
kalma olasılığı;
( H )
ps 1 [13]
l 1
olur. Burada, (H ) ile tanımlanan şema uzunluğudur. Çaprazlama
işleminden sonra şemanın hayatta kalması demek çaprazlama
pozisyonunun şema uzunluğunun dışında seçilmesi anlamına gelir. Bu
pozisyonun belirlenmesinde kullanılan çaprazlama olasılığı p c olarak
tanımlanırsa, çaprazlama işlemi sonucu şemanın hayatta kalma olasılığı
aşağıdaki gibi ifade edilir.
( H )
p s ≥1 pc . [14]
l 1
Genellikle çaprazlama olasılığı %50’den daha büyük seçilerek diziler
arasında bit değişimi yeterince sağlanmaktadır.
1000
800
x 2 600
400
200
0
1 5 9 13 17 21 25 31 x
GA, üreme işlemi ile başlar. Üreme işlemi için bu örnekte rulet tekerleği
kullanılmıştır. Başlangıç popülasyonundaki bireylerin uygunluk
değerlerine göre üreme işlemi için kullanılacak rulet tekerleği şekil 19’da
gösterilmiştir.
%49,2
2
4
%30.5
1
3
%14,4
%5,5
GA’nın ikinci operatörü olan çaprazlama işlemi iki adımda devam eder.
Öncelikle popülasyondaki yeni bireyler rasgele eşleştirilir. Daha sonra
eşleşen bireylerin karşılıklı bit değişimi için rasgele çaprazlama
pozisyonu belirlenir. Çizelge 3’de 1.ve 2. bireyler ile 3. ve 4. bireyler
eşleştirilmiştir. Ayrıca çaprazlama pozisyonları gösterilmiştir.
Şemanın Bekle
Gerçek Beklenen Gerçek
Uygunluğu nen Dizil
Şemalar Diziler Kopya Kopya Kopya Diziler
Kopya er
( f (H ) ) Sayısı Sayısı Sayısı
Sayısı
H1 1**** 2,4 496 3,20 3 2,3,4 3,20 3 2,3,4
H2 *10** 2,3 320 2,18 2 2,3 1,64 2 2,3
H3 1***0 2 576 1,97 2 2,3 0,0 1 4
Kp=1,680, Kp=1,680,
Ki=43,52 16804352 Ki=49,41 16804941
Kp=3,562, 35622941 Kp=3,562, 35622352
Ki=29,41 Ki=23,52
Çizelge 6 Denetleyici katsayıları için çok noktalı çaprazlama
Çaprazlama Öncesi Çaprazlama Sonrası
Kp=1,680, Kp=1,560,
Ki=43,52 16804352 Ki=49,41 15604941
Kp=3,562, 35622941 Kp=3,682, 36822352
Ki=29,41 Ki=23,52
Değişim operatörü ise yine 0 ile 1 arasında üretilen bir sayı ( r [0,1] )
ile değişim oranı p m karşılaştırılır. Eğer r p m ise her iki ebeveyne de
değişim operatörü uygulanır. Çizelge 7.’de değişime uğramış her iki
ebeveyn için kromozom durumu ve denetleyici katsayılarının almış
olduğu değerler gösterilmiştir. Eğer r p m ise ebeveynlere değişim
işlemi uygulanmayacaktır. Şekil 20’de geliştirilen GA’nın akış şeması
gösterilmiştir.
H
soy < max_soy Son
soy+=1
H
i < pop_boyut
E H
i < pop_boyut
i +=1
fi 'yi hesapla
Popülasyonda E
ftop += fi
Yerine koy i +=1
fi 'yi
Eşleştirme
değerlendir
Havuzunu
fi oluştur
f top m, n
Uygunluk
değerlendirme
ve Seçim
E
m=1; m<(2.pop_boyut); m+=2
E H
n=1; n< pop_boyut; m++
Rasgele
r 'yi üret
H
r [0,1]
Rasgele
r 'yi üret
r [0,1]
H
r < pc
H
r < pm E
m ve m+1
E çiftini
çaprazla
n'yi
değişime
uğrat
Değişim Çaprazlama
Şekil 21’de gösterilen ekran görüntüsünün sol kısımda bir simülatör için
ARM modeli, köprü tipi çevirici devresi, ve simülatör çalışması ile
çalışma zamanı, sistemin çalışma şartları olan referans hız ve yük
değerleri ve motordan ölçülen anlık hız değeri gözlenmektedir. Sağ
kısımda ise alt bölümlere ayrılmış, ARM parametreleri paneli, genetik
uyarlamalı denetleyici paneli, ARM modeli ve enerji dönüşümü paneli
ve ARM çıkış dalga formları (hız, akım, gerilim ve çıkış torku) paneli
bulunmaktadır.
11 12 10 13 2
Parçaparti_ID
Öncelik_ID
İş_ID
Makine_ID
Parça _ID
1 2 3 4 5 6 7 8 9 10 11 12 13
A1 :11 11 12 12 12 0 0 13 0 0 14 14 14
Genetik operatörlerin uygulanmasından sonraki dizi yapısı
'
A :11
1 0 12 12 0 12 13 13 0 0 0 0