You are on page 1of 62

|  


 



| 
http://gokselucer.blogspot.com
goksel.ucer@netsis.com.tr
22 Mart 2007, Sürüm 1.5
Ä erik
_ |  
 |
Œ R rim süreci,
Œ Uygulama adımları,
ΠParametreler,
Œ GA kodlama türleri,
Œ Basit örnek,
ΠAra lar
_ |  

 |
|  

|
 
R rim ?

_ R rimsel süre bir   


  

_ Äyi olan örneklerden daha iyi örneklerin
oluşması doğaldır.
_ Se imlerde kullanılan kalite faktörüne
[ adı erilmektedir.
·emel e rim algoritması (RA)
·emel e rim algoritması (RA)




 
 

 
 
 


 






 
 


 

  ! "   

 
 
 

#
#
RA i in temel ka ramlar

_ O   [  


Œ -itlenin büyüklüğü RA¶nın en önemli
parametresidir.
_ U     
Œ larklı jenerasyonların oluşmasını e
ulaşılabilecek tüm özümlere gidişi sağlar
_ â 
 
Œ eni jenerasyonlardan öğrenilen bilgidir.
ΠAma fonksiyonuna gitmek i in birincil
derecede ara olarak kullanılabilir
RA i in temel ka ramlar
_ m   [[
 
Œ eni jenerasyonların oluşumuna paralel
da ranış farklılıkları da ortaya ıkar.
Œ ·üm bunların arasından amaca gitmek i in
[ fonksiyonu kullanılmalıdır.
_   
Œ Älk başlangı özüm kitlesi, tüm özüm kümesini
temsil etmez
Œ Se im işlemi, bu kümeyi oluşturmada önemli bir
etkendir.
Œ   sürecini izlemek, se im süreci anlamına
gelmektedir!
GA giriş ± 1

_ GA doğadaki e rim yöntemlerini kullanan bir


arama yöntemidir.
_ GA yöntemi ilk olarak, John Holland e
arkadaşlarının yaptığı alışmalarda 1970¶li
yıllarda ortaya ıkmıştır.
_ GA¶nın temel amacı, fazla sayıda kısıt
i eren e karmaşık eniyileme sorunlarının
özümlerini, yazılımlar yardımıyla
araştırmaktır.
GA giriş ± 2
_ -onuyla ilgili Goldberg, 1989 yılında ³| 

        
   
   adlı klasik sayılacak eseri yayınlamıştır.

_ Bu eserle birlikte, konu üzerine yapılan alışmalar


büyük hız kazanmıştır.
GA nedir?

_ GA, rastsal arama tekniklerini


kullanarak özüm bulmaya alışan,
parametre kodlama esasına dayanan
bir arama tekniğidir.
_ Bir eri grubu i inde özel bir eriyi
bulmak i in kullanılır.

^|
 
GA kullanım alanları

_ Hat dengeleme
_ apay sinir ağları
_ Görüntü işleme
_ Gezgin satıcı problemi (· )
_ Rniyileme yöntemleri
Œ Bakım, ser is, depo toplama s.
GA ile klasik eniyileme
arasındaki temel farklar

_ GA parametrelerin kendileri ile değil,


parametre takımının kodlanmış bir haliyle
uğraşırlar.
_ GA ama fonksiyonunun türe lerini e bir
takım ek bilgileri değil, doğrudan ama
fonksiyonunun kendisini kullanırlar.
_ GA¶da deterministlik değil rastlantısal ge iş
kuralları kullanılır.
 ^ 
GA uygulama adımı ± 1

_ GA basit olarak aşağıdaki temel


adımlardan oluşmaktadır:
1. Älk değerlendirme,

2. sonraki değerlendirme,

3. Ve daha sonraki değerlendirme,

4. Sistemin ne zaman durması gerektiğine


karar er!
GA uygulama adımı ± 2
1. Başlangı popülasyonunu rastlantısal olarak üret.
2. Popülasyon i indeki tüm kromozomların ama
fonksiyonu değerlerini hesapla.
3. ·ekrar üreme, aprazlama e mutasyon
operatörlerini uygula.
4. Oluşturulan her yeni kromozomun ama fonksiyonu
değerlerini bul.
5. Ama fonksiyonu değerleri kötü olan kromozomlar
popülasyondan ıkar.
6. 3-5 arasındaki adımlar tekrar et.
GA uygulama gösterimi

 

Negne itsky, Pearson Rducation, 2005


GA terimleri
_ | 
Œ -alıtsal molekülde bulunan e organizmanın
karakterlerinin tayininde rol oynayan kalıtsal
birimlere denir.
Œ apay sistemlerde gen, kendi başına anlamlı
bilgi taşıyan en kü ük birim olarak tanımlanır.
_ 
" #

Œ Birden fazla genin bir araya gelerek oluşturduğu
diziye denir.
Œ -romozomlar, alternatif aday özümleri
gösterirler.
GA terimleri

_  $%  
Œ -romozomlardan oluşan topluluğa denir.
Œ Popülasyon, ge erli alternatif özüm kümesidir.
Œ Popülasyondaki birey sayısı (kromozom)
genelde sabit tutulur.
Œ GA¶da popülasyondaki birey sayısı ile ilgili genel
bir kural yoktur.
Œ Popülasyondaki kromozom sayısı arttık a
özüme ulaşma süresi (iterasyon sayısı) azalır.
GA terimleri

_  
Œ -odlama GA¶nın ok önemli bir kısmını
oluşturmaktadır.
Œ Probleme GA uygulanmadan önce,
erinin uygun şekilde kodlanması
gerekmektedir.
Œ -urulan genetik modelin hızlı e gü enilir
alışması i in bu kodlamanın doğru
yapılması gerekmektedir.
GA kodlama türleri

Π 
 
_ Her kromozom ikili diziye sahiptir { 0, 1 }
_ Bu dizideki her bit, özümün belli
karakteristiğini temsil eder eya tüm dizi bir
sayıyı temsil eder.
_ -odlamada en sık kullanılan yöntemdir
_ Örnek { 10101001 }
GA kodlama türleri

Π
%   
_ üzenleme problemlerinde kullanılır.
_ Burada her kromozom, sayıları bir sırada temsil
etmektedir.
_ Permütasyon kodlama, gezgin satıcı e izelgeleme
problemleri i in kullanışlıdır.

-romozom A 78941
-romozom B 87914
GA kodlama türleri
Π &
 
_ Ger ek sayılar gibi karmaşık değerlerin
kullanıldığı problemlerde, ikili kodlama zor
olduğu i in doğrudan değer kodlanması
kullanılabilir


"  1.2324 3.5354 4.6465 3.5556


" # oğu, Batı, Güney, -uzey
GA kodlama türleri
Π&  
_ Bu yöntem gelişen, değişen programlar eya ifâdeler
i in kullanılır.
_ Örneğin GA. Ağa kodlamada her kromozom, bâzı
nesnelerin (örneğin fonksiyonlar ya da programlama
dilindeki komutlar gibi) ağacıdır.
GA ile özüme giderken
kullanılan işlemler
_ |
   [ 
Œ Rn geniş özüm kümesinden en dar
özüm kümesine doğru ilerlemek
_ |  


Π $
" â
 

_ Programda iki değişikliğin yapılması
Π=   
_ Programda tek bir değişikliğin yapılması
Arama stratejileri
_  

Œ Bir önceki özüme ait hi bir bilgi kullanılmıyorsa
_ Õ â  
Œ Uygun bir özüm bul ± dönüştür ± yenisi iyi ise
sakla değil ise değiştir ± de am et
_ 
Œ Arama maliyeti a ısından   
arasındadır.
Œ Örnek bir kitle ile işleme de am eder e tüm
olasılık uzayını sınırlar.
Œ Älk başlangı ta belirtilen noktalar ile işleme
de am eder.
GA parametreler

_ ð  ' 
Œ eni popülasyonun se ilmesinde ka ferdin
se ileceği e hangi fertlerin eşleme i in
se ileceği se im fonksiyonuyla sağlanır.
Œ Rbe eynler uygunluk değerlerine göre eşleşmek
üzere se ilirler.
Se im yöntemi ± 1
_  ( )
ð  
_ Rn basit se im yöntemi olarak bilinmektedir.
º *+*,
_ ·üm fertler birbirine bitişik bir şekilde düz bir izgi
üzerine dizilirler.
_ Her bir ferde ilişkin bölümün uzunluğu, onun uygunluk
değeri kadar olur.
_ Rasgele sayı üretilir e rasgele sayı hangi bölüm
i erisine gelirse, o bölümün ait olduğu fert se ilir.
_ Äşlem ulaşılacak popülasyonun gerekli adedi elde
edilene kadar de am eder.
Se im yöntemi ± 2
_  ð  
Œ Rn iyi kromozomun U ok yüksek ise, Rulet-
Çemberi se im yöntemi problem
yaratabilir(Sürekli yüksek olasılığa sahip
kromozom se ilecek). Bu nedenle, Rank se im
yöntemi uygulanabilir.
Œ Popülasyon uygunluk değerine göre tersten
sıralanır. ani en iyi kromozom N adetlik bir
popülasyonda N değerini alır
Œ Se im bu değerlere göre yapılır.
GA se im grafikleri
 ( )

ð  

 ð  
-. 

 ð  
ð 
*
Se im yöntemi ± 3
_ 

*/ ð  '
 |  
Œ Bu se imin ana düşüncesi, kromozomların büyük kısmının
bir sonraki nesilde hayatta kalmak zorunda olmasıdır.
Œ eni ocuklar oluşturmak i in her nesilde U yüksek
birka kromozom se ilir.
Œ U düşük bâzı kromozomlar atılır e yeni ocuk onun
yerine yerleştirilir.
Œ Popülasyonun geri kalan kısmı yeni nesilde hayattadır.
Œ Bu yöntemde alt popülasyon oluşturulduktan sonra
uygunluklar hesaplanır, en kötü kromozomlar yerlerini
başlangı popülasyonundaki en iyi kromozomlara bırakır.
GA parametreler
_  $
" 0
*1 =  
' 
Œ Çaprazlama oranı, fertlerin eşleştiklerinde
mutasyon yapıp yapmayacaklarına ilişkin
olasılığı ifâde eden orandır.
Œ Rğer eşleşme sonucunda aprazlama da
oluşursa, yeni e genellikle ebe eynlerinden
farklı bireyler elde edilmiş olur.
Œ Rğer aprazlama ger ekleşmezse, bu takdirde
ebe eynlerinin kopyası olan yeni fertler oluşur.

(Baskak e Rrok, 2004)


Çaprazlama
_ Çaprazlama, iki kromozomun ( özümün) birbirleri arasında
gen alış erişinde bulunup iki yeni kromozom oluşturmasıdır.
_ Genetik algoritmadaki en önemli parametrelerden bir tanesidir.
_ Äkili yöntemle kodlanmış değişkenlerin yaptıkları üreme
faaliyeti, kromozomların aprazlamasına benzemesi
dolayısıyla böyle adlandırılmaktadır.
_ Rğer kodlamada ger ek değerler kullanılıyorsa, klasik
aprazlama yöntemi yerine daha farklı yöntemler
kullanılmaktadır.
_ Se im yöntemi ile yapay se im sonucunda elde edilen yeni
popülasyon dizisinden rastsal olarak iki kromozom se ilir e
karşılıklı aprazlama işlemine tâbi tutulur.

(Holland, 1975)
Çaprazlama gösterimi

Negne itsky, Pearson Rducation, 2005


Çaprazlama şekilleri
·   *
á


Ä  *
á


 1  
á

GA parametreler
_ =  0
*1 =  ' 
Œ Mutasyon Oranı, mutasyon olasılığını gösteren orandır.
Ama me cut kromozomların genlerinin bir ya da birka ını
değiştirerek yeni kromozomlar elde etmektir.
Œ Genelde mutasyon olasılığı (0.01 gibi) düşük
tutulmaktadır.
ΠBu nedenle mutasyon etkileri kromozomlarda az
görülmektedir.
Œ Mutasyon sırasında kromozomdaki gen sayısı değişmez,
sabit kalır.
Œ Mutasyon yapılmasının bir başka amacı da,
popülasyondaki eşitliliğin azalmamasını sağlamaktır
Mutasyon gösterimi

Negne itsky, Pearson Rducation, 2005


GA parametreler
_ º2  
Œ GA¶ın en önemli parametrelerinden bir tanesi uygunluk
fonksiyonu se imidir.
Œ Bu fonksiyon ile, kromozom i erisindeki kodlanmış ya da
kodlanmamış bilgiler özümlenerek sayısal bir değer elde
edilir.
Œ Bir başka ifadeye, kromozomun ya da özümün sisteme
uygulanmasıyla elde edilecek ıktıya ulaşılır.
Uygunluk fonksiyonu

2343 53
|
 **
lonksiyon 1  
lonksiyon 2  6
lonksiyon 3 ! 7
lonksiyon 4 8 96
lonksiyon 5 : :7
Uygunluk fonksiyonu

_ -romozomların uygunluk değerlerini


belirleyecek uygunluk fonksiyonu,
örneğimizde: ·ur mesafesi, yani
seyahat edilen şehirler arası mesafe
toplamıdır. olayısıyla en iyi
kromozom en kü ük toplama sahip
kromozom olacaktır.
Basit uygulama - ·SP

_ ·
 O
 ·O
Œ Her şehir 1 kere ziyaret edilecek
Œ ·oplam seyahat mesafesi minimum
olacak
Uygulama ± Şehir bilgileri

ð ;
 ð ;
< 9ð ;
 8ð ;
|

ð ;
# !ð ;
 6ð ;
2 =ð ;
/

> ;
 ± (3 5 7 2 1 6 4 8)
> ;
 ± (2 5 7 6 8 1 3 4)
Çaprazlama

v  (3 5 7 2 1 6 4 8)

v  (2 5 7 6 8 1 3 4)

' v (8 5 7 2 1 6 3 4)

  


 !      
  
   !     
Mutasyon

-. (5 8 7 2 1 6 3 4)

ð 
(5 8 6 2 1 7 3 4)

   " 




    
 #
      
30 şehir i in ·SP

00

0
0 0 0 30 0 0 0 0 0 0 00

o
Çözüm n ± 941km
· 

  

1 4 9 1
Çözüm m ± 800km
71 44
54 62 ·ð 7

. 4 =77
58 69
54
120 67
74 78
7 64
100
25 62
18 54
24
80 42
4 50
18 40
60


13 40
25 38
45
40 21
44 35
54 67
20
64 60
22 60
18
0 40
240 4210 20 30 40 50 60 70 80 90 100
4 50 3
2 99
Çözüm m ± 652km
· 

  

2 5 6
Rn iyi özüm ± 420km
42
·   
   
 

20
2
2
00
2

0
4
44
0


0
40

20

0
20 0 20 0 40 0 0 0 0 0 00
4 
4
·SP performansı
·               






     





En i i

En    
 r  a la m
              
  

        
GA faydaları

_ -a ramların kolay tasarlanması


_ Çok ama lı eniyileme yöntemleri ile
kullanılabilmesi
_ Çok karmaşık ortamlara uyarlanması
_ -ısa sürelerde iyi sonu lar erebilmesi
GA ara ları

_ Rniyileme i in kullanılacak GA
tasarımı, uygun bir kod geliştirme
ortamında ger ekleştirilebilir
Œ ââ â$  %
 & 


'()   
_ ·he Genetic Algorithm Optimization
·oolbox (GAO·) for Matlab 5
|  


|
 
GP

_ 1950 yılında     


_ 1963 yılında ise ML alanında ilk
gelişme sağlandı
Œ ML alanındaki ilerleme aslında
³bilgisayarların kendi kendisini
programlamasıydı´.
_ GP ise ML alanının  )
 **
.
GP

_ ::7 senesinde $
*
 tarafından
geliştirildi.
_ onanımların teknolojiye paralel
ilerlemesi, yazılımların da ilerlemesini
sağlamıştır.
_ Bu ilerleme, daha ok yazılım
uygulamalarının e otomasyonlarının
gelişimine katkı sağlamıştır.
GP

_ — # !!!    

eya

_ ³ # !!    


anlamında kullanılabilir.
(*
 +)
GP

_ Rniyileme yöntemleri i in etkin e


erimli bir yöntemdir
_ Bilim e mühendislik alanlarında
yaygın olarak kullanılmaktadır
GP

_ GP, GA¶nın bir uzantısı olarak


düşünülebilir.
_ GP sadece bit dizi düzeninde yer alan
sorunları özmek i in kullanılmaz,
bilgisayarların özebileceği sorunlar da
kullanılır.
GP adımları

1. Girdilerin belirlenmesi (&) )


2. ·emel fonksiyonların se ilmesi (*, +, -, /,
mod, sqrt, ^ )
3. Uyumluluk fonksiyonunun belirlenmesi
4. -ontrol parametrelerinin belirlenmesi
(maksimum tekrar sayısı)
5. Sonu lara uygun yöntemin belirlenmesi
GP¶da aprazlama

Negne itsky, Pearson Rducation, 2005


GP¶da mutasyon

Negne itsky, Pearson Rducation, 2005


GA e GP ne zaman
kullanılmalıdır?

_ Alternatif özümlerin ya aş eya ok


zor olmasında
_ Çözümün yeni bir yaklaşım ile
denenmesinde
-aynaklar
_ Banzhaf, W., ³Genetic Programming, An Introduction´,
California
_ Langdon, W., ³loundation of Genetic Programming´, Germany
_ Alp, A., ³Geometrik problemlerin özümünde kullanılan yapay
zeka yöntemleri e ger ekleştirimleri´
_ Äş i, Ö., ³Ulaştırma probleminin genetik algoritma ile özümü´
_ Pittman, J., ³Genetic algorithm for ariable selection´
_ Williams, W., ³Genetic algoritms: A ·utorial´
_ Äş i Ö., -orukoğlu S., Genetik Algoritma aklaşımı e
öneylem Araştımasında Bir Uygulama, önetim e Rkonomi,
2003, Cilt:2, Sayı:2
_ Baskak M., Rrol V., Sipariş tipi atölyelerde iş sıralama
problemi i in bir genetik algoritma uygulaması, ARM2004
Bildiri -itap ığı

You might also like