GENETİK ALGORİTMALARA GİRİŞ (VII)

Benzer belgeler
GENETİK ALGORİTMALARA GİRİŞ (V)

GENETİK ALGORİTMALARA GİRİŞ (III)

GENETİK ALGORİTMALARA GİRİŞ (II) BİNARİ KODLANMIŞ GA

GENETİK ALGORİTMA ÖZNUR CENGİZ HİLAL KOCA

GENETİK ALGORİTMALARA GİRİŞ (II) BİNARİ KODLANMIŞ GA

METASEZGİSEL YÖNTEMLER. Genetik Algoritmalar

YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR

Zeki Optimizasyon Teknikleri

GENETİK ALGORİTMALAR. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım. Mehmet Ali Aytekin Tahir Emre Kalaycı

GENETİK ALGORİTMALAR BÜŞRA GÜRACAR

GENETİK ALGORİTMALARA GİRİŞ

Genetik Algoritmalar. Bölüm 1. Optimizasyon. Yrd. Doç. Dr. Adem Tuncer E-posta:

Fonksiyon Optimizasyonunda Genetik Algoritmalar

Google Maps ve Genetik Algoritmalarla GSP Çözümü İçin Öneri

PARÇACIK SÜRÜ OPTİMİZASYONU BMÜ-579 METASEZGİSEL YÖNTEMLER YRD. DOÇ. DR. İLHAN AYDIN

GENETİK ALGORİTMALARA GİRİŞ (I)

Serdar BİROĞUL YÜKSEK LİSANS TEZİ (ELEKTRİK EĞİTİMİ) GAZİ ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ ANKARA

İLERİ ALGORİTMA ANALİZİ GENETİK ALGORİTMA

Ev Tipi Yenilenebilir Hibrit Sistem İçin Mikro-Genetik Algoritma ile Optimal Yük Planlaması

Fonksiyon Minimizasyonunda Simulated Annealing Yöntemi

GENETİK ALGORİTMALARA GİRİŞ (IV)

KARINCA KOLONİ ALGORİTMASI BMÜ-579 Meta Sezgisel Yöntemler. Yrd. Doç. Dr. İlhan AYDIN Fırat Üniversitesi, Bilgisayar Mühendisliği Bölümü

OPTİMİZASYON TEKNİKLERİ. Kısıtsız Optimizasyon

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms) Genetik Algoritma

MIT OpenCourseWare Ekonomide İstatistiksel Yöntemlere Giriş Bahar 2009

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Ders 1- Yapay Zekâya Giriş. Erhan AKDOĞAN, Ph.D.

Tek Değişkenli Optimizasyon OPTİMİZASYON. Gradient Tabanlı Yöntemler. Bisection (İkiye Bölme) Yöntemi

MAK 210 SAYISAL ANALİZ

Zeki Optimizasyon Teknikleri

Zeki Optimizasyon Teknikleri

Uzaktan Algılama Teknolojileri

Programlama Dilleri 1. Ders 3: Rastgele sayı üretimi ve uygulamaları

GENETİK ALGORİTMALARA GİRİŞ (VI)

METASEZGİSEL YÖNTEMLER

Rasgele Sayıların Özellikleri

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

GridAE: Yapay Evrim Uygulamaları için Grid Tabanlı bir Altyapı

VERİ MADENCİLİĞİ (Veri Ön İşleme-2) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

Kümeler arası. Küme içi. uzaklıklar. maksimize edilir. minimize edilir

BKİ farkı Standart Sapması (kg/m 2 ) A B BKİ farkı Ortalaması (kg/m 2 )

Rasgele Sayı Üretme. Rasgele Sayıların Özellikleri. İki önemli istaiksel özelliği var :

RASTGELE SAYI ÜRETİMİ VE UYGULANAN TESTLER HAZIRLAYAN: ÖZLEM AYDIN

BMB204. Veri Yapıları Ders 12. Dizgi Eşleme (String Matching) Algoritmaları İleri Veri Yapıları

Bir Normal Dağılım Ortalaması İçin Testler

T.C. DOKUZ EYLÜL ÜNİVERSİTESİ SOSYAL BİLİMLER ENSTİTÜSÜ EKONOMETRİ ANABİLİM DALI EKONOMETRİ DOKTORA PROGRAMI

Web Madenciliği (Web Mining)

GENETĠK ALGORĠTMALAR ĠLE HAFTALIK DERS PROGRAMININ HAZIRLANMASI

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

Yrd. Doç. Dr. A. Burak İNNER

Bu durumu, konum bazında bileşenlerini, yani dalga fonksiyonunu, vererek tanımlıyoruz : ) 1. (ikx x2. (d)

Ara Sınav 1. Algoritmalara Giriş 14 Ekim 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Kitapçık 14

Kredi Limit Optimizasyonu:

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

7. BÖLÜM İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI .= Genel: Vektörler bölümünde vektörel iç çarpım;

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms)

Temel ve Uygulamalı Araştırmalar için Araştırma Süreci

Kısıtsız Optimizasyon OPTİMİZASYON Kısıtsız Optimizasyon

Esnek Hesaplamaya Giriş

Yrd. Doç. Dr. A. Burak İNNER Bilgisayar Mühendisliği

13. Olasılık Dağılımlar

Tedarik Zinciri Yönetiminde Yapay Zeka Teknikler

BÖLÜM 3 OPERAT A ÖRLER

4. ÜRÜN GELİSTİRME İŞLEMİ

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#1: ALGORİTMA KAVRAMI

MONTE CARLO BENZETİMİ

Zeki Optimizasyon Teknikleri

Ayrık Fourier Dönüşümü

ERCİYES ÜNİVERSİTESİ KİMYA ANABİLİM DALI

STP1 +2 FONKSİYON. Step Motor Eğitim Seti. Tamamen mekatronik özel tasarım. Pratik Becerileri kazanmak ve Proje Odaklı Uzmanlık İçin

KARAR TEORİSİ. Özlem AYDIN. Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü

OPTIMIZASYON Bir Değişkenli Fonksiyonların Maksimizasyonu...2

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

Zeki Optimizasyon Teknikleri. Karınca Algoritması (Ant Algorithm)

Temel ve Uygulamalı Araştırmalar için Araştırma Süreci

Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir.

İleri Diferansiyel Denklemler

MAK 210 SAYISAL ANALİZ

YZM VERİ YAPILARI DERS#9: HASH FONKSİYONLARI

SAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

Bilgisayar programlamanın üç temel mantık yapısından biridir. Diğer ikisi ise Seçilim(Selection) ve Döngü(Loop, Iteration)dür.

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

ALP OĞUZ ANADOLU LİSESİ EĞİTİM ÖĞRETİM YILI BİLGİSAYAR BİLİMİ DERSİ 2.DÖNEM 2.SINAV ÖNCESİ ÇALIŞMA SORULARI VE YANITLARI

MAK 305 MAKİNE ELEMANLARI-1

TÜRKİYE NİN NÜFUSU. Prof.Dr.rer.nat. D.Ali Ercan ADD Bilim Kurulu Başkanı Nükler Fizik Uzmanı. dn (t) / dt = c. n (t)

Genetik Algoritmalar. Prof.Dr.Adem KALINLI

İstatistik ve Olasılık

EM302 Yöneylem Araştırması 2. Dr. Özgür Kabak

EM302 Yöneylem Araştırması 2 Doğrusal Olmayan Programlamaya Giriş. Dr. Özgür Kabak

Hatalar Bilgisi ve İstatistik Ders Kodu: Kredi: 3 / ECTS: 5

GEZGİN SATICI PROBLEMİ İÇİN BİR MEMETİK ALGORİTMA ÖNERİSİ

Genel Graf Üzerinde Mutlak 1-merkez

Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

Algoritmalar. Sıralama Problemi ve Analizi. Bahar 2017 Doç. Dr. Suat Özdemir 1

Transkript:

GENETİK ALGORİTMALARA GİRİŞ (VII) Nedim TUTKUN Düzce Üniversitesi Elektrik Elektronik Mühendisliği Bölümü nedimtutkun@duzce.edu.tr Düzce Üniversitesi Elektrik&Elektronik Mühendisliği Bölümü Konuralp 81620 Düzce

Bölüm Konu Başlıkları Kombinatoryal Optimizasyon Kısıtlı Optimizasyon Çok Amaçlı Optimizasyon Hibrit Algoritmalar Farklı Seçim Biçimleri Farklı Çaprazlama ve Mutasyon Biçimleri 2

GA optimal çözümleri bulmada en iyi bazen zorlanır. Ancak geniş karmaşık arama uzayında optimal çözümüne yakın çözümleri bulma konusunda iyidirler. Yeterli zaman verildiğinde, GA genellikle optimal çözüme yakınsar, ancak uygulamada bunun hızlı bir süreç olması olası değildir. Global optimuma biraz daha yaklaşmak için birçok etkili geleneksel algoritma bulunur. Bu durum tepeleri bulmak için GA nın çok güçlü bir optimizasyon tekniği olduğunu ve bunlara tırmanmak için ise geleneksel yöntemleri kullanmayı ifade eder. Algoritmanın son hali elimizdeki probleme ve mevcut kaynaklara bağlıdır. Bu hibrit çözüme en basit yaklaşım, son popülasyondaki en uygun birey tarafından temsil edilen gerçek değerli çözüm vektörünü geleneksel bir aramanın başlangıç noktası olarak kullanmaktır. 3 Hibrit Algoritmalar

Hibrit Algoritmalar Geleneksel arama algoritması bir NAG (nümerik algoritma grubu) rutini gibi ticari olarak derlenmiş ya da sayısal yöntemler ile ilgili bir metinden alınmış olabilir. Başka bir yaklaşım, GA tarafından kullanılan string gösteriminde kalmak ve bitleri doğrudan yapıcı bir şekilde değiştirmeye çalışmaktır. Bunu gerçekleştirmenin bir yolu eğirme camının zemin durumunun değerlendirildiği bir örnek üzerinde gösterilmiştir. Bu örnekte, stringdeki her bit ziyaret edilerek, değeri mutasyona uğratılarak ve popülasyondaki bireyin uygunluğu yeniden hesaplanarak yerel tepelere tırmanılır. Eğer uygunlukta bir iyileşme sağlanırsa mutasyona devam edilir. 4

Hibrit Algoritmalar Çok basit başka bir olasılık ise ilk bilinmeyen parametredeki elit stringe 1 ekleyerek veya çıkararak (örneğin 1101 + 1 = 1110), tekrar uygunluk değerini hesaplayarak ve eğer iyileşme olursa ekleme ve çıkarmaya devam ederek tepeye tırmanmaktır. Ekleme (çıkarma) işlemi ilk bilinmeyen parametrenin ayarlanması herhangi bir fayda sağlamayana kadar bu işlem tekrar edilir. Diğer parametreler de daha sonra benzer şekilde ele alınır. GA stringleri ile çalışma GA nın koşturulması sırasında böyle tekniklerin herhangi bir zamanda uygulanması gibi bir avantaja sahiptir. Bu çalışma daha çok kısıtlanmış GA temelli arama için başlangıç noktası olarak nihai çözüm vektörünün kullanılmasının etkili olduğu bulunmuştur. 5

Hibrit Algoritmalar Gerçek kodlamaya geçilince GA string gösteriminin binari şekline geri dönüştürülmesi zor olduğundan bazı parametrelerin almış olduğu değerler doğrudan string olarak gösterilemez. Bununla birlikte, bu gibi gerçek değerli yöntemler genellikle çok etkilidir. Diğer bir yöntem daha önceden açıklandığı üzere GA da binari sayı kullanmamaktır. Arama uzayının birçok skalada karmaşık olduğuna inanılırsa, hemen GA dan vazgeçerek başka bir yöntemi kullanmak hatalı bir çözüme yol açabilir. Daha önce bir örnekte verilen likit kristal problemi, böyle bir uzayı içermektedir. 6

Hibrit Algoritmalar Performansı ve yakınsama hızını artırmanın diğer yolu sezgisel yöntemlerden faydalanmaktır. Bu şekilde başka bir örnek ise GSP deki (gezgin satıcı problemi) şehirler arası mesafelerin kullanılmasıdır. Bu bilgi iyileştirilmiş üniform çaprazlama operatör tipini üretmek için kullanmıştır. Her bir eşten değişik şehirler alarak yavru stringleri oluşturmaktan ziyade yavru, coğrafi olarak mevcut şehre en yakın şehri miras alır. Alternatif olarak uygunluk hesaplamaları -genellikle algoritmanın en çok zaman alan işidir- başlangıçta yaklaşık biçimde yapılabilir. Örneğin, deneysel verilerle en küçük kareler minimizasyonunu kullanan problemlerde, GA'nın rasgele, düzenli veya diğer veri alt kümesi kullanarak ve belirli sayıda jenerasyon koşturarak gerçekleştirilebilir. Daha sonra başlangıçtaki alt küme, daha fazla veriyi ve diğer nesilleri işleyecek şekilde genişletilir. Bu işlem, tüm veriler dikkate alınana kadar tekrarlanır. 7

Alternatif Seçim Yöntemleri GA içindeki seçim baskısı, performansının merkezinde yer alır ve bu baskının seviyesi yüksek oranda probleme bağlıdır. Eğer popülasyon çok zorlanırsa hızlı ilerleme f max değerinde durgunluğa yakın küçük bir ilerleme ile devam edilir. Bu şaşırtıcı değildir. Yüksek seçim baskısı ile popülasyon süper birey olarak adlandırılan bir veya birkaçı tarafından domine edilir. Popülasyonda çok az genetik çeşitlilik ile problem uzayındaki yeni alanlara -olası olmayan mutasyon kombinasyonları yolu hariç- ulaşılamaz hale gelir. Bu baskının etkisini göstermenin bir başka yolu, popülasyon alt kümesine doğru mekanizmanın nasıl yönlendirileceğini düşünmek ile olur (genelde en iyisi budur). 8

Alternatif Seçim Yöntemleri Büyük oranda yönlendirilmiş mekanizmalar, yol odaklı bir arama ile sonuçlanırken daha düşük oranda yönlendirilmiş mekanizmalar ise hacim odaklı bir arama ile sonuçlanır. Seçim baskısı devralma süresi ile karakterize edilebilir. Esasen bu popülasyonu tamamen domine eder hale getirecek başlangıç popülasyonu içindeki en iyi birey için alınan jenerasyonların sayısıdır. (Mutasyon ve çaprazlama uygulanmamıştır). değeri yalnızca seçim mekanizmasına değil, bazı mekanizmalar için de fonksiyonun en uygun hale getirilmesine bağlıdır. Eğer uygunluk orantılı seçim kullanılırsa o halde f x = x a, Γ 1 a (NlnN 1) f x = exp (ax), Γ 1 a NlnN 9

Alternatif Seçim Yöntemleri Diğer seçim mekanizmaları yaygın olup aynı zamanda örnekleme hatalarını en aza indirirken işin özünde bütün bunlar GA'yı fırsat ile keşif arasında gerilmiş bir ipte yürümeye teşvik etmeye çalışırlar. Genellikle bu gibi mekanizmalar eğer bir bireyin daha düşük bir uygunluğa sahip olması durumunda seçilme olasılığı daha düşük olduğu varsayımı yapılır. Guo ve Huang çalışmalarında bunun bu şekilde olmadığıdır. 10

Stokastik Örnekleme Hataları Uygunluk orantılı seçim, stokastik bir yöntemdir. Ortalama olarak denemelerin sayısı, τ i, (sonraki jenerasyonda) ve i. birey f i = 2 f ave τ i = 2 τ ave Burada τ ave ortalama bir uygunluğa sahip bireyin elde ettiği denemelerin sayısıdır (tipik olarak 1). Bu sayı her zaman gerçekleşmez. GA lar rastgele sayı üreteçleri çok sayıda çağrı yapar ve yeterince çağrı yapıldığında şaşırtıcı bazı modeller ortaya çıkabilir. Aşağıda verilen Tablo ve Şekilde, N = 20 ve G = 200,000 için kullanılan yazılımdaki rulet tekerleği algoritması kullanım sonuçlarını göstermektedir. 11

Stokastik Örnekleme Hataları Elit birey için edilen sonuçlar kullanılan problem nedeniyle tüm g için f(g) = 5fave (g) ve bir sonraki jenerasyonda ortalama beş denemeye sahip olan elit üyeler içindir. Gerçekten en çok tahsis edilen deneme sayısı beş olsa da, başka birçok olasılık ayrıca ortaya çıkabilir. 621 kez yapılan deneme en uygun birey elde edilememiştir. Bu elitizm uygulanmadıkça en iyi çözümün göz ardı edilebileceği anlamına gelir. Tersi durumda f max bazen nerdeyse popülasyonu baskı altına alır. Böyle fazla veya az seçme algoritmanın performansına büyük ölçüde zarar verebilir ve problemi minimize etmek için birkaç alternatif seçim yöntemi tasarlanmıştır. 12

Stokastik Örnekleme Hataları Tablo. Beklenen deneme sayısı ile uygunluk orantılı seçim (f= x 2, N = 20, G = 200000, έ = 0, Я = 1) tarafından verilen gerçek sayı arasındaki fark tarafından gösterilen stokastik örnekleme hataları. Deneme Sayısı Beklenen Sıklık Gerçek Sıklık Deneme Sayısı Beklenen Sıklık Gerçek Sıklık 1 0 4166 9 0 5286 2 0 13318 10 0 2023 3 0 26922 11 0 587 4 0 38036 12 0 160 5 200000 40334 13 0 17 6 0 33714 14 0 2 7 0 22599 15 0 2 8 0 12213 16 0 0 13

Stokastik Örnekleme Hataları Elit üye örneklerinin dağılımı: bu problemde beklenen sayı her zaman beş olmalıdır. 14

Stokastik Örnekleme Yerine koymalı stokastik örnekleme rulet tekerleği seçiminin başka bir adıdır. Bireyler seçildiğinde aynı zamanda havuza geri gönderilerek aynı bireyin birden fazla seçimini mümkün kılar. Bu değişim şu şekilde sonuçlanabilir ve i. bireyi için beklenen deneme sayısı aşağıdaki gibidir. τ i g τ i exp g 15 Yerine koymadan stokastik örnekleme (seçilen kişileri havuza geri döndürmez) maksimum sayıda deneme yapmaya zorlar ve bireyi bire eşitlemek için alır. Bu seçim mekanizmasındaki en büyük frendir. Bununla birlikte en uygun bireye tahsis edilmiş deneme sayısına, τ best,, bazen sıfıra eşitleyerek olanak sağlar.

Stokastik Örnekleme Geriye kalanlı stokastik örnekleme (yerine koymalı ve yerine koymadan) τ exp i g değerini hesaplar ve aşağıdaki gibi ifade edilir. τ i g = INT τ exp i g ; i = 1 N Burada INT( ) tamsayı fonksiyonu ifade etmektedir. Genel olarak bu, yeni popülasyonda bazı boşlukları doldurulmamış halde bırakacaktır. Daha sonra yerine koymalı stokastik örnekleme kalan yerleri küsuratlı kısımları kullanarak doldurur. Böylece rulet çarkı yuvalarına tayin yapmak için aşağıdaki ifade kullanılır. τ exp i g INT τ exp i g ; i = 1 N 16

Stokastik Örnekleme Yöntem yerine koyma olmadan da 0 ile 1 arasında rastgele bir R + sayısı üreterek kullanılabilir. Buna göre aşağıdaki durum geçerli olmak kaydıyla bir birey seçilir: r + τ i exp g INT τ i exp g Stokastik evrensel örnekleme aynı zamanda N eşit aralıklı işaretleyicileri olan bir rulet çarkını kullanır. Tekerlek sadece bir kez döndürülür ve bir işaretleyiciye bitişik bütün bireyler seçilir. 17

Sıralama Yöntemleri Eğer uygunluk değerine göre sıralanmış bir liste içinde bir bireyin pozisyonu τ i değerini hesaplamak için kullanılır ve bu şekilde süper fit bireylerinin problemlerin önüne geçilir. Bu sonraki jenerasyonlarda uygun seviyede bir seçim baskısı sağlarken erken yakınsama problemlerinin de büyük ölçüde önüne geçer. En basit biçiminde mevcut popülasyon sıralanır ve seçilen bireylerin en iyi %50'si bir sonraki jenerasyona gönderilir. Daha sonra seçilen tüm bireylere yerine koyma olmaksızın seçilen rastgele çiftler ile çaprazlama uygulanır. Bazı çalışmalarda daha incelikli yöntemler sunulmuştur. Bunlardan birisi τ exp best yi elle çözmek ve exp N'ye eşit bir alanı çevreleyen τ best vasıtasıyla doğrusal bir eğri uygulamaktır. 18

Sıralama Yöntemleri Eğri yüksekliği her bir birey için τ i exp şekilde gösterildiği gibi sağlamaktadır. Bu yaklaşımdaki problemlerden biri probleme bağlı bir τ exp i değerinin seçme ihtiyacıdır. Diğer yöntemler ise doğrusal olmayan eğri kullanımıdır. Sıra temelli seçim için devralma süresi nasıl uygulandığına, özellikle de τ exp i değerine bağlıdır, ancak Γ InN nin derecesidir, yani düşüktür. bu değer uygunluk orantılı seçimindeki ile daha 19

Sıralama Yöntemleri 20 Doğrusal sıralama

Turnuva Seçimi Turnuva seçimi hem etkili hem de hesaplama açısından daha iyidir. Burada ilk önce çift bireyler rastgele seçilir ve 0-1 aralığında rastgele sayı (r R + ) üretilir. Eğer R + > r, 0.5< r 1 ise, iki bireyden uygunluk değeri büyük olan, değilse uygunluk değeri küçük olan seçilir. Aynı zamanda r değerinin de el ile ayarlanması gerekir. Diğer uygulamalarda q adet birey başlangıçta bir sonraki jenerasyona giden en iyi tek birey ile seçilmesidir. Böyle bir yaklaşım şu şekildedir: Γ 1 lnq lnn + ln lnn Bu q, 2 den uzaklaştıkça devralma zamanının hızlı bir şekilde azalacağı anlamına gelir. (örneğin binari turnuvaları gibi.) 21

Sigma Ölçeklemesi Lineer uygunluk ölçeklendirmesi verilen beklenen deneme sayısı ile popülasyon uygunluk standart sapmasının f σ kullanımı ile genişletilebilir. τ i exp = 1 + f i g f ave (g) 2f σ 22

Kalıcı Durum Algoritmaları BGA jenerasyonel bir algoritma olup her jenerasyonda yeni bir popülasyon oluşturur (bazılarının ebeveynleri çaprazlama veya mutasyonla bozulmaya uğramadan doğrudan kopyalanmış olmasına rağmen). Kalıcı durum algoritmaları her jenerasyonun en az uygunluğu olan bireylerinin sadece birkaçını çaprazlama ve mutasyonla değiştirir ve bu nedenle jenerasyonlar arasında az sayıda uygunluk değerlendirmesi gerektirir. Değiştirilen bireylerin fraksiyonuna, jenerasyon aralığı denir. Bu algoritmalar, özdeş genotiplerin tüm tahminler için her zaman aynı f değerine döndüğü problemlerde son derece etkili olduğunu kanıtlamıştır (bu durum her zaman gürültülü ve zamana göre değişen veriler ile benzer olmayabilir). 23

Alternatif Çaprazlama Yöntemleri Tek nokta çaprazlama çeşitli nedenlerle eleştirilmektedir. Kısa, düşük dereceli şemaları avantajlı şekilde birleştirmesine rağmen, çoğunlukla tüm şemalar için aynı ii yapamaz. Örneğin, aşağıda verilen şemalar için Tek nokta çaprazlama 010####1 ###00### 01000##1 şemasını oluşturamaz. Böyle pozisyonel durum uzunca tanımlanan bit uzunluklarına sahip şemalar kısmi bozulmalara uğrayacağını anlamına gelir. Çocuklar anne-baba ile aynı olacağı için kesme noktasının bir tarafıyla aynı olan stringlerin çaprazlamasının hiçbir etkisi olmaz. İndirgenmiş yedek operatör mümkün olduğunca yeni bireyler üretmek için çaprazlamayı kısıtlar. Bu bit değerlerinin farklı olduğu noktalarda kesme noktalarını sınırlandırarak elde edilir. 24

İki Noktalı Çaprazlama Pozisyonel durumu azaltmak için birçok araştırmacı iki kesim noktasının rastgele seçildiği ve iki kesim arasındaki kromozomun yerinin değiştirildiği iki noktalı çaprazlama kullanmaktadır. 00/0100/111 11/1011/000 00 1011 111 11 0100 000 Tek noktalı çaprazlamada olduğu gibi iki noktalı çaprazlamanın işlemediği birçok şema vardır ve kesme noktasındaki çok sayıda sayı denenmiştir. 25

Üniform Çaprazlama Üniform çaprazlama çok noktalı çaprazlama fikrini sınırına getirir ve her noktadaki biti değişmeye zorlar. Bu durum özellikle ilk jenerasyonlarda son derece bozucu bir etki yapar. Parametreli çaprazlama stringler arasındaki bit alış verişine olasılık (tipik olarak 0.5-0.8 aralığında) uygulayarak bu bozulmayı azaltır. 26

Hızın Dikkate Alınması Çoğu pratik uygulamada amaç fonksiyonları, Ω, hesaplamak için geçen süre, herhangi bir genetik işlemi gerçekleştirmek için geçen zamanı aşacaktır. Bu nedenle, bu işlemleri zamana bağlı olarak optimize etmeye çalışmak için çok az gereksinim duyulur. Minimum çalışma süresini belirlemenin yolu, deneme yapmak ve Ωi(g) hız tahmininde bulunmaktır. Bunun iki olasılık vardır: önceli mevcut değerlerden enterpolasyon yapmak ya da bazı jenerasyonlar için Ωi(g) nin yaklaşık değerini kullanmaktır. Bu g < g' için yaklaşım yapılarak olabilir, daha sonra bu g g' için gerçek hesaplamaya dönüştürülerek yapılabilir. Bu yaklaşım bir çalışmada deneysel alt veri kümesinin ilk jenerasyonlarında kullanılmıştır. 27

Hızın Dikkate Alınması Bariz ancak önemli bir olasılık, belirli bir kromozom için bir kez bulunmuşsa Ωi(g)'nin yeniden hesaplanmamasını sağlamaktır. Bu, çalıştırma sırasında hesaplanan tüm Ω değerlerinin bir (olası sıralı) listesinin tutulmasını gerektirir. Açıkçası, bu liste kapsamlı bir listeye dönüşme potansiyeline sahiptir ve sakladığı değerler g - 1'den g - k'ye kadar olabilir; listeyi deneme ve Ω nın başka bir değerinin tahmini için geçen süreye ait tarihsel süreç k ile gösterilmiştir. Yeni hesaplamalar listenin altına yerleştirilirse kazanımı en üst düzeye çıkarmak için listeyi ters sırada aramak faydalı olur. 28

Hızın Dikkate Alınması Başka bir olasılık, ayrı bilgisayarlarda, ayrı Ω(g) tahminleri yapmak için bir bilgisayar ağı kullanmaktır. Bütün bu hususlara ilaveten, l j 'nin minimum değerlerinin kullanılmasını sağlamak (j = 1,...,M) ve değerlerin aralığını korumak için her parametrenin olabildiğince az olabilmesi gerekir. Hem aralık hem de dize uzunluğu jenerasyon işlevleri olabilir ancak belirli jenerasyonlar boyunca arama uzayı alanlarını etkili bir şekilde yok ettiği için bakım yapılmalıdır. Alternatif olarak karmaşık bir GA, basit yapı taşlarından karmaşık çözümler oluşturmak için kullanılabilir. 29

Diğer Kodlamalar Burada daha çok binari kodlu GA'lar üzerinde durulmuştur. Ancak bazı araştırmacılar kodlama problem uzayına mümkün olduğu kadar yakın olduğunda GA'ların daha etkili olduklarını belirtmişlerdir. Bilim ve mühendislikteki pek çok problem 10 tabanlı sayıların kullanılmasını gerektirir. Ne yazık ki, gerçek değerli bir kodlama kullanmak için çaprazlama ve mutasyon operatörleri olarak neyin kullanılacağına dair çok sayıda soru mevcuttur. Bu konuda birçok olasılık tanıtılmış ve bazı araştırmalarda bu detaylıca tartışılmıştır. Mesela, Reeves binari olmayan alfabe kullanan popülasyon boyutlarının etkileri hakkında değerlendirmelerde bulunmuştur. 30

Diğer Kodlamalar Bazıları ise çaprazlama için bir olasılık (i ve k bireyleri arasında) üzerinde durmuştur. r i g + 1 = r i g r k g r i g R ; k j Burada R, rastgele ölçekleme faktörüdür (tipik olarak -0.25 ila 1.25 aralığı içindedir). Mutasyon çeşitli şekillerde dahil edilebilir, örneğin: r i g + 1 = r i g + R ± g r i g ; R g = 0 = R ± R g 0 iken g G 31

Diğer Kodlamalar Bununla birlikte olayların çok karmaşık hale getirilmesi gerekmez ve binari gösterim genellikle çok iyi sonuç verir. Goldberg'in belirttiği gibi GA'lar kullanılan kodlamaya göre genellikle iyidir. Bu konuda iki basit kodlama kuralı önerir. 1. Anlamlı Yapı Blokları Prensibi: Kullanıcı kısa, esas problem ile ilgili düşük-dereceli şemalara ve diğer sabit pozisyonlardaki görece ilgili olmayan şemalara uygun bir kodlama seçmelidir. 2. Minimum Alfabe İlkesi: Kullanıcı problemin doğal ifadesine izin veren en küçük alfabeyi seçmelidir. 32

Diğer Kodlamalar 33 Binari kodlama kullanımının pek çok problem için makul bir seçim olmasının nedenini bulmak nispeten kolaydır. 4 bitlik ikili sayı gösterimi ya da alfabenin ilk 16 harfi ile ikili sayıları bire bir haritalama yöntemi ile f(x)=x 2, 0 x 15, fonksiyonunu çözerken ortaya çıkabilecek stringleri bazılarını düşünün. Aşağıda verilen tabloda, muhtemel binari ve binari olmayan stringler ile birlikte x e ait beş olası değeri göstermektedir. Liste azalan şekilde sıralandığında, az eleman sayısı ile daha uygun adayların binari stringleri arasında görsel bağlantı olduğu açıktır: stringin sol tarafının tümünde 1 vardır. İkili olmayan durumda böyle benzerlikler mevcut değildir. Bu benzerlikler arama yönteminin esası olduğundan bunların sayıları maksimize edilmelidir.

Diğer Kodlamalar Aradaki farkı vurgulamanın diğer bir yolu, iki gösterimde bulunan şema sayısını saymaktır. Eleman sayısı k için, bu (k + 1) L olacaktır. Her iki kodlamadan da aynı doğruluk gerektiği için, L ikili durumda 4 ve ikili olmayan durumda da 1 olmalıdır. Bu nedenle, ikili gösterim, (2 + 1) 4 = 81 şemayı ve ikili olmayan gösterimi (16 + 1) = 17 şemayı (a'dan n'ye artı #) içermekte olup, ikili gösterimin açıkça avantajlı olduğu görülmektedir. 34

Diğer Kodlamalar İkili olan ve ikili olmayan gösterimlerin karşılaştırması. x f C (binari) C (binari olmayan) 1 1 0001 a 2 4 0010 b 3 9 0011 c 12 144 1100 1 14 196 1110 m 35

Logaritmik Gösterim 36 Pek çok bilimsel ve mühendislik probleminde önemli olan bilinmeyenlerin göreceli doğruluğudur. Bu gibi durumlarda, bilinmeyenlerin logaritmasının kodlanması daha uygun olabilir. Bu, gerektiğinde makul bir doğruluk sağlanarak, fazladan string uzunluklarına gerek kalmadan çok geniş bir alanın aranmasına olanak sağlayacaktır. Örneğin, bilinmeyen bir r, 1 ile 1.000 arasında herhangi bir değer alabilir ve cevabın 100 de 1 olması gerekiyorsa, problem uzayı ile ikili gösterim arasındaki basit bir doğrusal haritalama sadece 1/100=0.01 ile değiştirmek için komşu noktalara gerek duyar. Bu da, yaklaşık 1 civarında olan r değerlerinin gerekli %1 doğrulukla ayırt edilebilmesini sağlar.

Logaritmik Gösterim Bununla birlikte, r = 1.000 civarındaki hassaslık halen 0.01, yani 100.000 de 1 ya da % 0.001 olacaktır. Bu stringin çoğunun gereksiz olduğu anlamına gelir. Logaritmik haritalama kullanarak gerekli doğruluk daha kısa bir stringli uzay boyunca sağlanabilir, bunun sonucunda performans daha da artırılır. 37

Gray Kodlama Problem uzayına mümkün olduğunca en yakın kodlama kullanıldığında GA nın en başarılı olabileceği yukarıdaki bölümde önerilmişti. Bu nedenle fenotipteki "küçük" bir değişiklik, genotipte benzer bir "küçük" değişikliği göstermelidir. İkili bir kodlama için bu böyle değildir. Fenotipi r olup 0 r 63 aralığında olan ve genotipi l = 6 olduğunda 011111 = 31 olur. Fenotipin değerini bir arttırmak için altı bitten birinde değişiklik yapması gerekecektir, 100000=32. Diğer taraftan genotipteki küçük bir değişiklik fenotipte çok büyük bir değişime neden de olabilir. Gray ikili kodlama, problem uzayında herhangi bir çift bitişik noktanın, gösterim uzayındaki tek bir bit ile farklı olmasını sağlayarak bunu azaltır. 38

Gray Kodlama Birçok problem için bu komşuluk özelliğinin performansı arttırdığı bilinmektedir ve tam sayı, gerçek veya karmaşık değerli bilinmeyenlerle ilgili çoğu problem için Gray kodlamanın kullanılması uygun görülmektedir. Aşağıdaki Tablo l = 4 için binari ve Gray eşdeğer listesini göstermektedir. Ayrıca Gray i standart binariye dönüştürmek için BASIC kodu verilmektedir. 39

Gray Kodlama Binari ve Gray kodlama karşılaştırması. Binari Gray Binari Gray 0000 0000 1000 1100 0001 0001 1001 1101 0010 0011 1010 1111 0011 0010 1011 1110 0100 0110 1100 1010 0101 0111 1101 1011 0110 0101 1110 1001 0111 0100 111I 1000 40

Gray Kodlama Gray'i standart ikiliğe dönüştürmek için BASIC kodu. Bin (1) = Gray (1) FOR i = 2 TO L IF Bin(i - 1) = Gray(i) THEN ELSE NEXT i END IF Bin(i) = 0 Bin(i) = 1 Not: Gray ve binari stringler, Gray ve Bin (her biri L uzunluğunda) ilk öğenin en önemli olduğu dizilerde tutulduğu varsayılır. 41

Meta GA 42 Burada dahili GA ayarlarını (Pc, Pm, N, vb.) dikkatle seçme ihtiyacı ve optimum ayarlarının büyük ölçüde probleme bağlı olduğu bir çok kez tekrar edildi. Bu ayarlar için ayrı bir GA ile neden seçilmesin ki şeklinde doğal bir soru ortaya çıkabilir. Dahası, arama uzayının biçimi f best f* olarak değişebilir, bu da ideal dahili ayarların zaman içinde sabit olmayabileceğini ifade eder. Bu doğal olarak, çalıştırma işlemi sırasında dahili ayarları en iyi duruma getirmek için bir GA kullanma imkânı sunar. Her dahili parametre için tek bir değer gerekiyorsa ve GA benzer problemlerle tekrar tekrar kullanılacak olursa, GA'lardan oluşan bir popülasyonu kontrol etmek ve kullanmak için meta GA kullanmak görece daha kolay olabilir.

Meta GA Bununla birlikte, zor problemlerde veya GA'nın yalnızca birkaç kez kullanılacağı yerde ek hesaplama gerekliliği muhtemelen yaklaşımı gerçekçi yapmaz. Ayarların gerçek zamanlı olarak uyum sağlama yeteneği, son derece verimli algoritmaların tasarımına izin verebilir ve özellikle araştırma için ilginç bir yoldur. 43

Mutasyon Şimdiye kadar mutasyon tek bir biçimde tanıtıldı: string içinde bitlerin çok nadiren rastgele döndürülmesidir. Geleneksel olarak, çaprazlama ile kıyaslandığında mutasyon ikincil bir mekanizma olarak görülmüştür. Bununla birlikte, daha merkezi bir role sahip olabileceği konusu giderek ağırlık kazanmaktadır. Daha önce anlatıldığı üzere mutasyon operatörünün görevi daha çok, popülasyonun tüm lokasyonlarda olası her bit değerini (0 ve 1) koruduğunu gösteren bir araç olmasıdır. Eğer mutasyon daha yönlendirilmiş bir şekilde uygulanırsa, yani kendisi arama sürecinin bir parçası olacaksa, operatöre daha fazla ayrıcalık yapmasının makul olduğu anlaşılabilir. 44

Mutasyon Örneğin, binari gösterimle (standart veya Gray) mutasyona bağlı bozulmanın büyüklüğü, kromozom mutasyonunun meydana geldiği yere bağlıdır. L = 10, r min = 0 ve r max = 1023 olan tek bir parametre problemi göz önüne alındığında, kromozomun bir ucundaki bir mutasyon r'yi ± 1 değiştirirken, diğer ucunda r, ± 512 ile değişebilir. Bu analiz, çalışma bittiğinde, popülasyonun umut verici çoğunluğunun global optimumun yakınında olduğunu ve düşük dereceli bitlere mutasyon uygulanmasının avantajlı olabileceğini gösterir. Tersine, daha önceki jenerasyonlardaki yüksek dereceli bitlerin mutasyonu, uzayın tam olarak araştırılmasına yardımcı olurken, daha az anlamlı bitlerin mutasyonu bu araştırmaya çok az fayda sağlayacaktır. 45

Mutasyon Diğer ihtimaller ise daha uygun bireylerin performansını düşürmeden araştırmayı arttırmak için daha düşük seviyede uygunluğa sahip bireylere yönelik mutasyona meyilli olmak ya da olasılığı azaltmak için P m 'yi g nin bir fonksiyonu haline getirmektir. Alternatif olarak mutasyon, g = G'den sonra nihai çözüme yakın aşamada için tepeye tırmanma algılayıcısı olarak kullanılabilir. Bu, ancak yapıcı olduğu ispatladığı (yani artmış f max ) zaman, elit üyede bulunan her bilinmeyeni yavaşça artırıp (veya azaltarak) tahmin yoluyla bulmak için mutasyon kullanılır. Optimal mutasyon oranlarını ayarlama hakkında bazı çalışmalara bakılabilir. 46

Paralel GA Şema işlemiyle sağlanan örtülü paralellik dışında, GA'nın popülasyona dayalı yaklaşımı onları paralel veya ağa bağlı bilgisayarlarda çalıştırılması için ideal hale getirir. Birçoğu için bilgisayar gücündeki artışa bağlı olarak paralel çözümde basit bir hız artışı olmasına rağmen, diğerleri sıralı makinelerde bile performansı artırdığı düşünülen sahte paralel yaklaşımları kullanmaktadır. Global Paralel GA lar popülasyona tek bir birim gibi davranmakta ve farklı bireyleri farklı işlemcilere atamaktadır. En basit örnek, seçim ve genetik operatörleri kontrol edecek bir bilgisayar ya da işlemci ve amaç fonksiyonu gerçekleştirmek amacıyla bir dizi başka makine (veya işlemci) kullanmaktadır. 47

Paralel GA Amaç fonksiyon değerlendirmesi çok zaman alırsa, küçük bir ek kod ve fazla sayıda bilgisayar ile büyük bir hızlanma sağlanabilir. Göç veya Ada GA'ları doğal dünyada bulunan alt popülasyonların coğrafi dağılımını taklit etmeye çalışırlar. Bu kromozomların temaları ya da alt popülasyonlarının seçim ve çaprazlama kullanarak evrim geçirmelerine izin verilir, ancak ara sıra bireylerin alt popülasyonlar arasında göç etmesine izin verilmelidir. Difüzyon, komşuluk, hücresel veya ince taneli GA lar göç metodolojisinde kullanılan alt popülasyon engellerini kaldırır ve onları coğrafi mesafe kavramıyla değiştirir. Bireylerin yalnızca yakın komşuları ile çoğalmalarına izin verilir. Paralel GA lar, daha ayrıntılı olarak başka kaynaklarda anlatılmıştır. 48