SlideShare a Scribd company logo
Evrimsel Algoritmalar
İsmail Akbudak
151281011
4 Aralık, 2015
Özet
1) Genetik Algoritmalar (GA)
a) Tarihi bilgiler
b) GA Tanımı
c) Kullanım Alanları
d) GA bileşenleri
i. Popülasyon
ii. Çaprazlama
iii. Mutasyon
iv. Seçilim
e) Örnek uygulama
f) Kod örneği
2) Genetik Programlama
a) Kod örneği
b) Kullanım Alanları
GA Nedir?
 Genetik algoritmalar, doğada gözlemlenen evrimsel sürece
benzer bir şekilde çalışan arama ve eniyileme yöntemidir.
 Karmaşık çok boyutlu arama uzayında en iyinin hayatta
kalması ilkesine göre bütünsel en iyi çözümü arar.
 Genetik algoritmalar problemlere tek bir çözüm üretmek
yerine farklı çözümlerden oluşan bir çözüm kümesi üretir.
Böylelikle, arama uzayında aynı anda birçok nokta
değerlendirilmekte ve sonuçta bütünsel çözüme ulaşma
olasılığı yükselmektedir.
Tarihi Bilgiler
1859: Charles Darwin tarafından doğal seçilim, kalıtım, evrim gibi terimler
tanımladı
1954: Bilgisayar simülasyonlarının evrimi 1954’lerin başlarında Nils Aall Barricelli,
çalışmaları ile başlamıştır. Princeton Üniversitesi (ABD)
1957: Alex Fraser ilk GA geliştirmiştir.
1966: Yapay zekanın bir parçası olarak, evrimsel hesaplama Lawrence J. Fogel
tarafından ortaya atılmıştır.
1970-75: GA, John Holland ve öğrencileri tarafından, Michigan Üniversitesi’nde
daha da geliştirilmiştir. ‘GA Babası’
1980 -90: GA ve Swarm Intelligence Method’un popülerliği arttı.
GA Kullanım Alanları
Bilim ve mühendislik yanında iş dünyasında geniş bir anlamda
kullanımı mevcut.
 Bilim ve mühendislik
I. Optimizasyon ve arama problemlerinde
a) TSP
II. Planlama ve zaman çizelgeleme işlemlerinde
 İş dünyası
I. eBay tarafından ürünleri öne çıkarmak için
II. GA dayalı müzik önerileri sunulması
Survival of the Fittest - Using Genetic Algorithm for Data Mining Optimization
Use Case Example
Apply GA to K-Means
Global Optimum
Standard K-Means
Local Optimum
+50% Accuracy
eBay GA Kullanımı
Müzik Önerileri İçin GA Kullanımı
GA Akış Şeması
GA Bileşenleri
Mutasyon Çaprazlama
SeçilimPopülasyon
GA Sözde Kodu
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
GA Örnek Uygulama
 Max One : İkilik sayı sisteminden(1 ve 0) oluşan L
uzunluğunda ki string de bulunan 1 ifadesinin sayısının
maksimum yapılması problemini düşünelim
 Tipik GA gerekli olanlar
I. Çözüm uzayının genetik temsili gösterimi
II. Çözüm uzayını değerlendirmek için uygunluk çözümü
GA : Genetik Temsili Gösterimi
 Birey ikilik sayı sisteminin sayıları ile ifade edilir.
 Örneğin;
L = 10 uzunluğu için bir bireyimizin temsili şu şekilde olabilir:
1 = 0000000001 (10 bit)
2 = 0000000010 (10 bit)
Algoritma: 1. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Başlangıç Popülasyonu
 Popülasyon sayısını n ile ifade edecek olursak; bu örnek için n = 6
kişilik bir popülasyonumuz olacak.
 Başlangıç popülasyonumuzu rastgele aşağıdaki gibi oluşturuyoruz.
s1 = 1111010101
s2 = 0111000101
s3 = 1110110101
s4 = 0100010011
s5 = 1110111101
s6 = 0100110000
Algoritma: 2. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Uygunluk Fonksiyonu: f()
Rastgele oluşturulan başlangıç popülasyonumuz:
s1 = 1111010101 f (s1) = 7
s2 = 0111000101 f (s2) = 5
s3 = 1110110101 f (s3) = 7
s4 = 0100010011 f (s4) = 4
s5 = 1110111101 f (s5) = 8
s6 = 0100110000 f (s6) = 3
---------------------------------------------------- = 34
Algoritma: 3. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Seçilim (1)
 Daha sonra rulet tekerleği yöntemi ile uygunluk orantılı
seçim uygulayarak popülasyon sayısını arttırıyoruz.
 Daha sonra birey çıkarma işlemini bir çok kere tekrar
ediyoruz en az başlangıç popülasyonun da bulunan birey sayısı
kadar.
 Sonuç olarak ana popülasyon sayımıza geri dönüyoruz (n = 6)
Birey i seçilebilmek için şu
olasılığa sahip olacak :
i
if
if
)(
)(3
Bu alan uygunluk
değeri ile orantılı2
1
4
n
Seçilim (2)
 Seçilimden sonra aşağıdaki popülasyonu elde ettiğimizi
varsayalım:
s1` = 1111010101 (s1)
s2` = 1110110101 (s3)
s3` = 1110111101 (s5)
s4` = 0111000101 (s2)
s5` = 0100010011 (s4)
s6` = 1110111101 (s5)
Algoritma: 4. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Çaprazlama (1)
 Her bir çift için çaprazlama olasılığına göre çaprazlama
yapılıp yapılmayacağına karar veriyoruz.
 Bu örnekte (s1`, s2`) ve (s5`, s6`) çiftelerini çaprazlama
uygulayacağımızı varsayalım.
 Her bir çift için rastgele bir çaprazlama noktası
seçelim. Mesela ilk çift için 2, ikinci çift içinde 5 olsun.
Çaprazlama (2)
 Çaprazlamadan önce:
s1` = 1111010101
s2` = 1110110101
s5` = 0100010011
s6` = 1110111101
 Çaprazlamadan sonra:
s1`` = 1110110101
s2`` = 1111010101
s5`` = 0100011101
s6`` = 1110110011
Algoritma: 5. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Mutasyon (1)
 Mutasyon uygulamadan önce:
s1`` = 1110110101
s2`` = 1111010101
s3`` = 1110111101
s4`` = 0111000101
s5`` = 0100011101
s6`` = 1110110011
 Mutasyon uyguladıktan sonra:
s1``` = 1110100101
s2``` = 1111110100
s3``` = 1110101111
s4``` = 0111000101
s5``` = 0100011101
s6``` = 1110110001
Mutasyon (2)
 Son olarak rastgele mutasyon uyguluyoruz. Küçük bir
olasılıkta (mesela 0.1) yeni hatalı bireylerin oluşmasını
sağlıyoruz.
 Mutasyon’un amacı arama uzayında hareketi
sağlamaktır (local or global)
Algoritma: 6. Adım
produce an initial population of individuals
evaluate the fitness of all individuals
while termination condition not met do
select fitter individuals for reproduction
recombine between individuals
mutate individuals
evaluate the fitness of the modified individuals
generate a new population
End while
Yeni Popülasyonun Uygunluğu
 Mutasyon uyguladıktan sonra:
s1``` = 1110100101 f (s1```) = 6
s2``` = 1111110100 f (s2```) = 7
s3``` = 1110101111 f (s3```) = 8
s4``` = 0111000101 f (s4```) = 5
s5``` = 0100011101 f (s5```) = 5
s6``` = 1110110001 f (s6```) = 6
---------------------------------------------------------- = 37
Örnek Sonucu
 1 jenerasyonda toplam popülasyonun uygunluk değeri
34’den 37’ye yükselerek, yaklaşık olarak ~9% bir artış
göstermiş oldu
 Bu noktada izlediğimiz bu adımları herhangi bir durma
koşulu ile karşılaşana dek devam ediyoruz.
Bireylerin Dağılım Grafikleri
Jenerasyon 0’da Bireylerin Dağılım
Jenerasyon N’de Bireylerin Dağılım
Ruby Kod Örneği
Karşılaşılan Sorunlar
 Temel implementasyonu seçmenin sorunları:
I. Genetik gösterim
II. Popülasyon büyüklüğü, mutasyon oranı, ...
III. Seçilim ve silme politikaları
IV. Çaprazlama, mutasyon operatorleri
 Sonlandırma kriteri
 Performans, ölçeklendirebilirlik
 Çözüm sadece hesaplama fonksiyonu kadar iyi olabilir
(çoğunlukla en zor kısım)
Ne zaman GA?
 Alternatif çözümler çok yavaş veya aşırı derece karışık
ise
 Yeni yaklaşımları incelemek için keşifçi bir araca ihtiyaç
duyuluyorsa
 Problem GA ile başarılı bir şekilde çözülmüş problem ile
aynı ise
 Var olan bir çözümü melezleştirmek için
 GA faydaları, temel sorun gereksinimlerini
karşılamalarıdır
Genetik Programlama
 Genetik programlama(GP), evrimsel algoritma tabanlı
programlama metodolojisidir.
 Genetik programlamada amaç evrim teorisinden esinlenerek
oluşturulan genetik algoritmalar kullanılarak kullanıcı
tarafından tanımlanmış görevlerin yerine getirilmesidir.
Örnek Bir Fonksiyon
Ağaç şeklinde gösterilmiş bir fonksiyon
Fonksiyon Ağaçları İle GA Örneği
Ağaç şeklinde gösterilmiş
bir fonksiyona genetik
algoritma bileşenlerinden
çaprazlama uygulanması
örneği;
GP Kullanım Alanları
 Bilim ve mühendislik
I. Fonksiyon ağaçlarının hesaplanması
II. Oyun ağaçlarında
I. Satranç
III. Ağaçlarla ifade edilebilen problemlerde diyebiliriz.
 İş dünyası
I. Borsa
Ruby Kod Örneği
Teşekkürler !
Referanslar
 Clever Algorithms: Nature-Inspired Programming Recipes By Jason Brownlee PhD
(http://cleveralgorithms.com/)
 Genetic Algorithms: A Tutorial By Dr. Nysret Musliu , Associate Professor Database
and Artificial Intelligence Group, Vienna University of Technology.
 Introduction to Genetic Algorithms, Assaf Zaritsky Ben-Gurion University
 Data Conference 2013, Or LeviData AnalystCatalog & ClassificationeBay
Structured Data
 Genetic Algorithm https://en.wikipedia.org/wiki/Genetic_algorithm
 Genetic Programming https://en.wikipedia.org/wiki/Genetic_programming
 Genetic Algorithms for the Travelling Salesman Problem: A Review of
Representations and Operators, P. LARRA ˜NAGA, C.M.H. KUIJPERS, R.H. MURGA, I.
INZA and S. DIZDAREVI

More Related Content

PPTX
Genetik algoritma
PDF
Introduction to Optimization with Genetic Algorithm (GA)
PPTX
Genetic algorithm
PPT
Geneti̇k algori̇tma
PDF
Genetic Algorithms
PDF
Genetik Algoritma & Programlama (Dr.Hakan Erdun)
PDF
Genetic Algorithm (GA) Optimization - Step-by-Step Example
PPTX
Genetic algorithm
Genetik algoritma
Introduction to Optimization with Genetic Algorithm (GA)
Genetic algorithm
Geneti̇k algori̇tma
Genetic Algorithms
Genetik Algoritma & Programlama (Dr.Hakan Erdun)
Genetic Algorithm (GA) Optimization - Step-by-Step Example
Genetic algorithm

What's hot (20)

PDF
Genetic algorithm fitness function
PDF
Variant (SNP) calling - an introduction (with a worked example, using FreeBay...
PPTX
Genetic algorithm raktim
PPT
The ClinGen Sequence Variant Interpretation Working Group: Refining Criteria ...
PPT
Genetic algorithm
PPT
Genetic algorithms
PDF
Nature-Inspired Optimization Algorithms
PPTX
GENETIC ALGORITHM
PPTX
Introduction to particle swarm optimization
PPT
PPTX
Genetic Algorithm by Example
PDF
PR-409: Denoising Diffusion Probabilistic Models
PPT
Human cloning project
DOCX
Job shop scheduling problem using genetic algorithm
PPT
Open Source Tools & Data Science Competitions
PPTX
Evolutionary Computing - Genetic Algorithms - An Introduction
PDF
Nature-Inspired Metaheuristic Algorithms
PPTX
A Simple Explanation of XLNet
PDF
Application of Genome-Wide Association Study (GWAS) and transcriptomics to st...
PPTX
Genetic Algorithm
Genetic algorithm fitness function
Variant (SNP) calling - an introduction (with a worked example, using FreeBay...
Genetic algorithm raktim
The ClinGen Sequence Variant Interpretation Working Group: Refining Criteria ...
Genetic algorithm
Genetic algorithms
Nature-Inspired Optimization Algorithms
GENETIC ALGORITHM
Introduction to particle swarm optimization
Genetic Algorithm by Example
PR-409: Denoising Diffusion Probabilistic Models
Human cloning project
Job shop scheduling problem using genetic algorithm
Open Source Tools & Data Science Competitions
Evolutionary Computing - Genetic Algorithms - An Introduction
Nature-Inspired Metaheuristic Algorithms
A Simple Explanation of XLNet
Application of Genome-Wide Association Study (GWAS) and transcriptomics to st...
Genetic Algorithm
Ad

Viewers also liked (12)

PPTX
Genetik Algoritma Nasıl Çalışır
PPTX
Evrimsel algoritma
PPTX
Çoklu Asansörler için bir Genetik Algoritma Önerisi, Kullanımın Yoğun Olduğu ...
PDF
Yapay arı kolonisi algoritması
PDF
Karınca kolonisi algoritması
PPTX
Karar ağaçlari
PPTX
Yzm 2116 Bölüm 1 - Veri Yapılarına Giriş
PPT
Artificial bee colony (abc)
PDF
MARKA OLUSTURMAK
DOC
Araştirma teknikleri ders notu
PPTX
Gestalt kurami
PPTX
What is Big Data?
Genetik Algoritma Nasıl Çalışır
Evrimsel algoritma
Çoklu Asansörler için bir Genetik Algoritma Önerisi, Kullanımın Yoğun Olduğu ...
Yapay arı kolonisi algoritması
Karınca kolonisi algoritması
Karar ağaçlari
Yzm 2116 Bölüm 1 - Veri Yapılarına Giriş
Artificial bee colony (abc)
MARKA OLUSTURMAK
Araştirma teknikleri ders notu
Gestalt kurami
What is Big Data?
Ad

Evrimsel Algoritmalar - Genetik Algoritma ve Genetik Programlama

  • 2. Özet 1) Genetik Algoritmalar (GA) a) Tarihi bilgiler b) GA Tanımı c) Kullanım Alanları d) GA bileşenleri i. Popülasyon ii. Çaprazlama iii. Mutasyon iv. Seçilim e) Örnek uygulama f) Kod örneği 2) Genetik Programlama a) Kod örneği b) Kullanım Alanları
  • 3. GA Nedir?  Genetik algoritmalar, doğada gözlemlenen evrimsel sürece benzer bir şekilde çalışan arama ve eniyileme yöntemidir.  Karmaşık çok boyutlu arama uzayında en iyinin hayatta kalması ilkesine göre bütünsel en iyi çözümü arar.  Genetik algoritmalar problemlere tek bir çözüm üretmek yerine farklı çözümlerden oluşan bir çözüm kümesi üretir. Böylelikle, arama uzayında aynı anda birçok nokta değerlendirilmekte ve sonuçta bütünsel çözüme ulaşma olasılığı yükselmektedir.
  • 4. Tarihi Bilgiler 1859: Charles Darwin tarafından doğal seçilim, kalıtım, evrim gibi terimler tanımladı 1954: Bilgisayar simülasyonlarının evrimi 1954’lerin başlarında Nils Aall Barricelli, çalışmaları ile başlamıştır. Princeton Üniversitesi (ABD) 1957: Alex Fraser ilk GA geliştirmiştir. 1966: Yapay zekanın bir parçası olarak, evrimsel hesaplama Lawrence J. Fogel tarafından ortaya atılmıştır. 1970-75: GA, John Holland ve öğrencileri tarafından, Michigan Üniversitesi’nde daha da geliştirilmiştir. ‘GA Babası’ 1980 -90: GA ve Swarm Intelligence Method’un popülerliği arttı.
  • 5. GA Kullanım Alanları Bilim ve mühendislik yanında iş dünyasında geniş bir anlamda kullanımı mevcut.  Bilim ve mühendislik I. Optimizasyon ve arama problemlerinde a) TSP II. Planlama ve zaman çizelgeleme işlemlerinde  İş dünyası I. eBay tarafından ürünleri öne çıkarmak için II. GA dayalı müzik önerileri sunulması
  • 6. Survival of the Fittest - Using Genetic Algorithm for Data Mining Optimization Use Case Example Apply GA to K-Means Global Optimum Standard K-Means Local Optimum +50% Accuracy eBay GA Kullanımı
  • 7. Müzik Önerileri İçin GA Kullanımı
  • 10. GA Sözde Kodu produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 11. GA Örnek Uygulama  Max One : İkilik sayı sisteminden(1 ve 0) oluşan L uzunluğunda ki string de bulunan 1 ifadesinin sayısının maksimum yapılması problemini düşünelim  Tipik GA gerekli olanlar I. Çözüm uzayının genetik temsili gösterimi II. Çözüm uzayını değerlendirmek için uygunluk çözümü
  • 12. GA : Genetik Temsili Gösterimi  Birey ikilik sayı sisteminin sayıları ile ifade edilir.  Örneğin; L = 10 uzunluğu için bir bireyimizin temsili şu şekilde olabilir: 1 = 0000000001 (10 bit) 2 = 0000000010 (10 bit)
  • 13. Algoritma: 1. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 14. Başlangıç Popülasyonu  Popülasyon sayısını n ile ifade edecek olursak; bu örnek için n = 6 kişilik bir popülasyonumuz olacak.  Başlangıç popülasyonumuzu rastgele aşağıdaki gibi oluşturuyoruz. s1 = 1111010101 s2 = 0111000101 s3 = 1110110101 s4 = 0100010011 s5 = 1110111101 s6 = 0100110000
  • 15. Algoritma: 2. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 16. Uygunluk Fonksiyonu: f() Rastgele oluşturulan başlangıç popülasyonumuz: s1 = 1111010101 f (s1) = 7 s2 = 0111000101 f (s2) = 5 s3 = 1110110101 f (s3) = 7 s4 = 0100010011 f (s4) = 4 s5 = 1110111101 f (s5) = 8 s6 = 0100110000 f (s6) = 3 ---------------------------------------------------- = 34
  • 17. Algoritma: 3. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 18. Seçilim (1)  Daha sonra rulet tekerleği yöntemi ile uygunluk orantılı seçim uygulayarak popülasyon sayısını arttırıyoruz.  Daha sonra birey çıkarma işlemini bir çok kere tekrar ediyoruz en az başlangıç popülasyonun da bulunan birey sayısı kadar.  Sonuç olarak ana popülasyon sayımıza geri dönüyoruz (n = 6) Birey i seçilebilmek için şu olasılığa sahip olacak : i if if )( )(3 Bu alan uygunluk değeri ile orantılı2 1 4 n
  • 19. Seçilim (2)  Seçilimden sonra aşağıdaki popülasyonu elde ettiğimizi varsayalım: s1` = 1111010101 (s1) s2` = 1110110101 (s3) s3` = 1110111101 (s5) s4` = 0111000101 (s2) s5` = 0100010011 (s4) s6` = 1110111101 (s5)
  • 20. Algoritma: 4. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 21. Çaprazlama (1)  Her bir çift için çaprazlama olasılığına göre çaprazlama yapılıp yapılmayacağına karar veriyoruz.  Bu örnekte (s1`, s2`) ve (s5`, s6`) çiftelerini çaprazlama uygulayacağımızı varsayalım.  Her bir çift için rastgele bir çaprazlama noktası seçelim. Mesela ilk çift için 2, ikinci çift içinde 5 olsun.
  • 22. Çaprazlama (2)  Çaprazlamadan önce: s1` = 1111010101 s2` = 1110110101 s5` = 0100010011 s6` = 1110111101  Çaprazlamadan sonra: s1`` = 1110110101 s2`` = 1111010101 s5`` = 0100011101 s6`` = 1110110011
  • 23. Algoritma: 5. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 24. Mutasyon (1)  Mutasyon uygulamadan önce: s1`` = 1110110101 s2`` = 1111010101 s3`` = 1110111101 s4`` = 0111000101 s5`` = 0100011101 s6`` = 1110110011  Mutasyon uyguladıktan sonra: s1``` = 1110100101 s2``` = 1111110100 s3``` = 1110101111 s4``` = 0111000101 s5``` = 0100011101 s6``` = 1110110001
  • 25. Mutasyon (2)  Son olarak rastgele mutasyon uyguluyoruz. Küçük bir olasılıkta (mesela 0.1) yeni hatalı bireylerin oluşmasını sağlıyoruz.  Mutasyon’un amacı arama uzayında hareketi sağlamaktır (local or global)
  • 26. Algoritma: 6. Adım produce an initial population of individuals evaluate the fitness of all individuals while termination condition not met do select fitter individuals for reproduction recombine between individuals mutate individuals evaluate the fitness of the modified individuals generate a new population End while
  • 27. Yeni Popülasyonun Uygunluğu  Mutasyon uyguladıktan sonra: s1``` = 1110100101 f (s1```) = 6 s2``` = 1111110100 f (s2```) = 7 s3``` = 1110101111 f (s3```) = 8 s4``` = 0111000101 f (s4```) = 5 s5``` = 0100011101 f (s5```) = 5 s6``` = 1110110001 f (s6```) = 6 ---------------------------------------------------------- = 37
  • 28. Örnek Sonucu  1 jenerasyonda toplam popülasyonun uygunluk değeri 34’den 37’ye yükselerek, yaklaşık olarak ~9% bir artış göstermiş oldu  Bu noktada izlediğimiz bu adımları herhangi bir durma koşulu ile karşılaşana dek devam ediyoruz.
  • 29. Bireylerin Dağılım Grafikleri Jenerasyon 0’da Bireylerin Dağılım Jenerasyon N’de Bireylerin Dağılım
  • 31. Karşılaşılan Sorunlar  Temel implementasyonu seçmenin sorunları: I. Genetik gösterim II. Popülasyon büyüklüğü, mutasyon oranı, ... III. Seçilim ve silme politikaları IV. Çaprazlama, mutasyon operatorleri  Sonlandırma kriteri  Performans, ölçeklendirebilirlik  Çözüm sadece hesaplama fonksiyonu kadar iyi olabilir (çoğunlukla en zor kısım)
  • 32. Ne zaman GA?  Alternatif çözümler çok yavaş veya aşırı derece karışık ise  Yeni yaklaşımları incelemek için keşifçi bir araca ihtiyaç duyuluyorsa  Problem GA ile başarılı bir şekilde çözülmüş problem ile aynı ise  Var olan bir çözümü melezleştirmek için  GA faydaları, temel sorun gereksinimlerini karşılamalarıdır
  • 33. Genetik Programlama  Genetik programlama(GP), evrimsel algoritma tabanlı programlama metodolojisidir.  Genetik programlamada amaç evrim teorisinden esinlenerek oluşturulan genetik algoritmalar kullanılarak kullanıcı tarafından tanımlanmış görevlerin yerine getirilmesidir.
  • 34. Örnek Bir Fonksiyon Ağaç şeklinde gösterilmiş bir fonksiyon
  • 35. Fonksiyon Ağaçları İle GA Örneği Ağaç şeklinde gösterilmiş bir fonksiyona genetik algoritma bileşenlerinden çaprazlama uygulanması örneği;
  • 36. GP Kullanım Alanları  Bilim ve mühendislik I. Fonksiyon ağaçlarının hesaplanması II. Oyun ağaçlarında I. Satranç III. Ağaçlarla ifade edilebilen problemlerde diyebiliriz.  İş dünyası I. Borsa
  • 39. Referanslar  Clever Algorithms: Nature-Inspired Programming Recipes By Jason Brownlee PhD (http://cleveralgorithms.com/)  Genetic Algorithms: A Tutorial By Dr. Nysret Musliu , Associate Professor Database and Artificial Intelligence Group, Vienna University of Technology.  Introduction to Genetic Algorithms, Assaf Zaritsky Ben-Gurion University  Data Conference 2013, Or LeviData AnalystCatalog & ClassificationeBay Structured Data  Genetic Algorithm https://en.wikipedia.org/wiki/Genetic_algorithm  Genetic Programming https://en.wikipedia.org/wiki/Genetic_programming  Genetic Algorithms for the Travelling Salesman Problem: A Review of Representations and Operators, P. LARRA ˜NAGA, C.M.H. KUIJPERS, R.H. MURGA, I. INZA and S. DIZDAREVI

Editor's Notes