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

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

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

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

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

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

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

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

Fonksiyon Optimizasyonunda Genetik Algoritmalar

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

Zeki Optimizasyon Teknikleri

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

METASEZGİSEL YÖNTEMLER. Genetik Algoritmalar

KISITLI OPTİMİZASYON

GENETİK ALGORİTMALARA GİRİŞ

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ

İÇİNDEKİLER BASİT EŞİTSİZLİKLER. HARFLİ İFADELER Harfli İfadeler ve Elemanları Eşitsizlik Sembolleri ve İşaretin Eşitsizlik İfadesi...

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

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ

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

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

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

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

doğrusal programlama DOĞRUSAL PROGRAMLAMA (GENEL)

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

DOĞRUSAL PROGRAMLAMADA DUALİTE (DUALITY)

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

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

VEKTÖR UZAYLARI 1.GİRİŞ

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

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

İstatistik ve Olasılık

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

TRAKYA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MAKİNA MÜHENDİSLİĞİ ANABİLİM DALI DOKTORA PROGRAMI ŞEKİL TANIMA ÖDEV 2 KONU : DESTEK VEKTÖR MAKİNELERİ

MAK 210 SAYISAL ANALİZ

Web Madenciliği (Web Mining)

Lineer Cebir. Doç. Dr. Niyazi ŞAHİN TOBB. İçerik: 1.1. Lineer Denklemlerin Tanımı 1.2. Lineer Denklem Sistemleri 1.3. Matrisler

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

Örnek. Aşağıdaki veri setlerindeki X ve Y veri çiftlerini kullanarak herbir durumda X=1,5 için Y nin hangi değerleri alacağını hesaplayınız.

METASEZGİSEL YÖNTEMLER

EŞİTLİK KISITLI TÜREVLİ YÖNTEMLER

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ü

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

EM302 Yöneylem Araştırması 2 Çok değişkenli DOP ların çözümü. Dr. Özgür Kabak

İ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

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA

Chapter 9. Elektrik Devreleri. Principles of Electric Circuits, Conventional Flow, 9 th ed. Floyd

Lineer Programlama. Doğrusal terimi, hem amaç hem de kısıtları temsil eden matematiksel fonksiyonların doğrusal olduğunu gösterir.

İşaret ve Sistemler. Ders 3: Periyodik İşaretlerin Frekans Spektrumu

MATEMATİK ÖĞRETMENLİK ALAN BİLGİSİ - DENEME SINAVI DENEME. Diğer sayfaya geçiniz.

YÖNEYLEM ARAŞTIRMASI - III

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

BULANIK MANTIK VE SİSTEMLERİ BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK Bilişim Teknolojileri Mühendisliği ABD Doktora Programı

İleri Diferansiyel Denklemler

Nesne Yönelimli Programlama

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

EGE ÜNİVERSİTESİ EGE MYO MEKATRONİK PROGRAMI

Matris Cebiriyle Çoklu Regresyon Modeli

Başlangıç Temel Programının Bilinmemesi Durumu

Doğrusal Programlama. Prof. Dr. Ferit Kemal Sönmez

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

Aşağı Link MC-CDMA Sistemlerinde Kullanılan PIC Alıcının EM-MAP Tabanlı Olarak İlklendirilmesi

BİRİNCİ DERECEDEN BİR BİLİNMEYENLİ DENKLEMLER

Makine Öğrenmesi 2. hafta

MAK 308 MAKİNA DİNAMİĞİ Bahar Dr. Nurdan Bilgin

TAMSAYILI PROGRAMLAMA

Özyineleme (Recursion)

DENKLEM SİSTEMLERİ. ifadesinde a sayısı bilinmeyenin katsayısı ve b ise sabit sayıdır.

KATI CİSİMLERİN BAĞIL İVME ANALİZİ:

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

Zeki Optimizasyon Teknikleri

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

Fonksiyon Minimizasyonunda Simulated Annealing Yöntemi

Genetik Algoritmalar. Prof.Dr.Adem KALINLI

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Yöneylem Araştırması II

LYS YE DOĞRU MATEMATİK TESTİ

Yeşilköy Anadolu Lisesi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

a) x +3 = 8 b) x -4 = -2 c) x -7 = 4 d) x +5 = 6 e) x +8 = 2 f) x -1= -8 x +3 = 5 denkleminin çözümünü bulunuz.

0.1 Zarf Teoremi (Envelope Teorem)

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

Bu bölümde cebirsel yapıların temelini oluşturan Grup ve özelliklerini inceleyeceğiz.

Ders 8: Verilerin Düzenlenmesi ve Analizi

MONTE CARLO BENZETİMİ

Hatalar ve Bilgisayar Aritmetiği

(m+2) +5<0. 7/m+3 + EŞİTSİZLİKLER A. TANIM

1 Lineer Diferansiyel Denklem Sistemleri

Bu ders boyunca, ilk önce sayısal kontrol sistemlerinin temellerini tanıtıp, daha sonra birkaç temel pratik uygulamasından bahsedeceğiz.

Zeki Optimizasyon Teknikleri

Simpleks Yönteminde Kullanılan İlave Değişkenler (Eşitliğin yönüne göre):

NİSAN 2010 DENEMESİ A)75 B)80 C)85 D)90 E)95 A)0 B)1 C)2 D)3 E)4

TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ

Tesadüfi Değişken. w ( )

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜMÜ YÖNEYLEM ARAŞTIRMASI DERSİ LINDO

8.Konu Vektör uzayları, Alt Uzaylar

Fonksiyonlarda limiti öğrenirken değişkenlerin limitini ve sağdan-soldan limit kavramlarını öğreneceksiniz.

EMM3208 Optimizasyon Teknikleri

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

Transkript:

GENETİK ALGORİTMALARA GİRİŞ (II) BİNARİ KODLANMIŞ GA 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ı Değişkenlerin seçilmesi ve amaç fonksiyonu Değişken kodlama ve kod çözme Çok Parametreleri Problemler Seçim mekanizması 2

Giriş GA nın temelde uygulanan iki temel kodlama biçimi vardır. İkili sayı sisteminde kodlama (1010101010111100 vb.) Reel sayı kümesinde tanımlanmış olmak kaydıyla onlu sayı sisteminde kodlama (2,36 vb.) Her iki algoritma genetik tekrarlı birleşme (recombination) ve doğal seçim modellemesine benzer prosedürleri takip eder. Binari ve reel sayılarda kodlanmış değişkenler ile amaç veya maliyet olarak adlandırılan fonksiyonu minimize etmek için kullanılır. 3

Binari GA String = x 1 x 2 x n 4

Değişkenlerin seçilmesi ve amaç fonksiyonu Amaç fonksiyonu giriş değişkenlerin setinden yani stringlerden çıkış üretir ve matematiksel bir fonksiyon veya bir deney olabilir. Burada amaç giriş değişkenleri için uygun değerler bularak istenilen bir şekilde çıkışı değiştirmektir. Bu nedenle uygun amaç fonksiyonu belirlemek ve hangi değişkenlerin kullanılacağına karar vermek oldukça önemlidir. GA literatüründe amaç fonksiyonu çıkışını belirlemek için uygunluk terimi yaygın biçimde kullanılır. Uygunluk maksimizasyon problemini ifade eder. GA p1, p2,.pn gibi verilen N adet değişkenle ifade edilen popülasyon ile başlar. Eğer kromozom N boyutlu optimizasyon problemi ise o zaman kromozom N elemanlı satır vektörü olarak yazılır. 5

Değişkenlerin seçilmesi ve amaç fonksiyonu Maksimizasyon: maliyet1 = f (kromozom) = f (p 1, p 2,..., p N ) Minimizasyon: maliyet2 = f (kromozom) = -f (p 1, p 2,..., p N ) 6

Değişkenlerin seçilmesi ve amaç fonksiyonu Bir otomobilin yakıt menzilini ifade eden amaç fonksiyonu ifade eden fonksiyon aşağıdaki gibi olsun. Kullanıcı problemde hangi değişkenin çok etkili olduğuna bilmelidir. Çok fazla değişken GA yı kötüye götürebilir. Yakıt menzilini optimize etmek için arabanın büyüklüğü, motorun büyüklüğü, malzemelerin ağırlığı gibi değişkenler önemlidir. Boya rengi, far tipleri gibi diğer değişkenlerin yakıt menzili üzerinde etkisi oldukça azdır veya hiç yoktur. Bazen değişkenlerin doğru sayısı ve seçimi tecrübe veya deneme optimizasyon çalıştırması ile belirlenebir. 7

Değişkenlerin seçilmesi ve amaç fonksiyonu 0 w, x, y, z 10 Bütün değişkenleri 1 ila 10 arasında yer alan yukarıda verilen amaç fonksiyonu optimizasyon algoritmasına yardımcı olmak için basitleştirilmiştir. w ve z terimleri ilgili bölgede son derece küçüktür ve bunlar çoğunlukla göz ardı edilebilir. Çoğu optimizasyon problemlerinde kısıtlar veya değişken sınırı bulunur. Araba ağırlığının sıfır olması veya araba genişliğinin 10 m olması pratik olmayan değişken değerleridir. Ancak kısıtsız değişkenler her değeri alabilir. 8

Değişkenlerin seçilmesi ve amaç fonksiyonu Kısıtlı değişkenler üç şekilde karşımıza çıkarlar. 1) >, < ve >= <= operatörleri ile değişken üzerine uygulanır. Bir değişken sınırı aştığında değişken sınır değerine getirilir. Eğer x=11 olursa o zaman x=10 değerine eşitlenir. 2) Değişkenler doğal kısıtları içeren yeni değişkenlere dönüşebilir. Eğer x 0 ila 10 arasında sınırlara sahip ise o zaman x=5sin(y)+5 kısıtlı x değişkeni ve kısıtsız y değişkeni arasında bir dönüşüm olup kısıtlı optimizasyon problemini kısıtsız optimizasyon problemine dönüştürür. 3) Belli sayıda değişken değerler seti mevcut olabilir. Bütün değerler verilen bölgenin içinde olabilir. 9

Değişkenlerin seçilmesi ve amaç fonksiyonu Bağımlı değişkenler optimizasyon algoritmaları için özel problemler ortaya çıkarırlar. Zira değişen bir değişen aynı zamanda diğer değişkenin değerini de değiştirir. Örneğin otomobilin büyüklüğü ve ağırlığı bağımlıdır. Otomobilin büyüklüğünü arttırmak ağırlığını artırmak ile aynı şeydir (malzeme türü gibi başka faktörler değişmedikçe ). Diğer taraftan Fourier serisi katsayıları gibi bağımlı değişkenler birbirleri ile etkilemezler. Eğer 10 tane katsayı bir fonksiyonu ifade etmek için yetersizse daha fazlası diğer 10 adet katsayıyı tekrar hesaplamadan eklenebilir. GA literatüründe değişken etkileşimi epistasis (genlerin karşılıklı etkileşimi) olarak adlandırılır. 10

Değişkenlerin seçilmesi ve amaç fonksiyonu Epistasis yok denecek kadar az olduğunda minimum arayan algoritma en iyi sonucu verir. Epistasis orta ve yüksek düzeyli olduğunda GA daha iyi performans sergiler. Rastsal arama algoritmaları epistasis çok yüksek olduğunda en iyi performanslarını gösterirler. 11

Değişken kodlama ve kod çözme Değişken değerler binari olarak gösterildiğinden sürekli değerleri binariye dönüştüren veya tersi durum için bir yöntemin olması gerekir. Kuantizasyon (niceleme) sürekli değerlerin aralığını örnekler ve örneklediği numuneleri çakışmayan alt aralıklara ayırır. Daha sonra her bir alt aralığa farklı bir ayrık değer atanır. Gerçek fonksiyon değeri ile kuantizasyon seviyesi arasındaki fark kuantizasyon hatası olarak bilinir. 12

13 Değişken kodlama ve kod çözme

Değişken kodlama ve kod çözme Bessel fonksiyonu ve 6- bitlik kuantize edilmiş versiyonunun değişimi 14

Değişken kodlama ve kod çözme Yukarıda anlatılanlardan daha basit olarak binari bir sayı belli bir aralıktaki reel sayıya lineer ölçekleme ile kolayca dönüşebilir. Buna göre gerekli dönüşümü yapmak için N bitlik binari önce sayı aşağıdaki gibi 10 tabanlı pozitif bir tamsayıya dönüştürülür. l l -1...... 2 1 k 1 0 - - - - - - 0 1 x(k) z = l k=1 x(k) 2 k 1 r = mz + c r min = mz min + c r mak = mz mak + c 15

Değişken kodlama ve kod çözme Burada r min, r mak, z min ve z mak maksimum ve minimum olası reel ve pozitif tamsayılardır. 0000..0000 formunda gösterilen en küçük l bitlik binari sayının10 tabanlı sayı sisteminde karşılığı 0 olup bu durumda z min =0 dır. Z mak ise r z mak = 2 l 1 r mak r min 16 z min z mak z

Değişken kodlama ve kod çözme r mak r min = m(z mak z min ) m = r mak r min 2 l 1 m = r mak r min z mak z min c = r min + m z min c = r min r = r mak r min 2 l 1 z + r min 17

Değişken kodlama ve kod çözme Örnek: Verilen bir problemde x bilinmeyen parametresini temsil eden 10101 binari stringi 2,2 ila 3,9 arasında eşleştiriniz. x = (10101) 2 l = 5 bit z = 5 x(k) 2 k 1 k=1 = 1 2 4 + 0 2 3 + 1 2 2 + 0 2 1 + 1 2 0 = 21 r mak = 3,9 r min = 2,2 r = r mak r min 2 l 1 z + r min = = 3,3516 3,9 2,2 2 5 1 21 + 2,2 18

Hassasiyet Problemi Yukarıdaki örnekte 10101 binari sayısı 2,2 ila 3,9 arasındaki reel bir sayı ile eşleştirildi. Yukarıda verilen binari sayıdan sonra gelen 10110 sayısıdır. Bu sayının desimal karşılığı 22 olup aynı aralıkta bu sayıya karşılık gelen sayı ise 3,4065 reel sayısıdır. Bu 3,3516 ila 3,4065 arasında herhangi bir reel sayının mümkün olamayacağı problemini tanımlar. Bu tip sayı gösteriminde bu temel bir sorun teşkil eder. Karmaşık sayılı bilinmeyenlere sahip problemler reel ve imajiner kısımlar ayrı bir çift reel parametre olarak ele alınarak üstesinden gelinebilir. Ancak bu şekilde bilinmeyen sayısı ikiye katlanır. 19

Hassasiyet Problemi Hassasiyeti artırmanın tek yolu ya arama uzayını küçültmek ya da bilinmeyenleri temsil eden stringin bit uzunluğunu arttırmaktır. Bu problemi ortadan kaldırmak için farklı gösterimler kullanmak mümkündür ancak birçok problem için bunun gereksiz olduğu görülmüştür. Arama uzayını gereğinden fazla büyük yapılmaması ve uygun string uzunluğu seçilmesiyle gerek duyulan hassasiyet genellikle sağlanabilir. Çok fazla sayıda bilinmeyenli problemler için her bir değişken için mümkün olan en küçük string uzunluğunu kullanmak önem arz eder. 20

Çok Parametreleri Problemler Gösterim şekli birden daha fazla bilinmeyen içeren problemlere doğru genişletilmesi kısmen basit olduğunu doğrular. M adet bilinmeyen her biri l j uzunluğunda olan alt stringlerden oluşmuş olsun. L = M j=1 l j Bu alt stringler daha sonra birleşerek L uzunluğundaki bir popülasyon bireyini oluştursun. Örneğin verilen a ve b gibi iki bilinmeyenli bir problemin eğer çözüm için ilk tahmin a =10110 b=11000 ise daha birleşme ile olur. a b = 1011011000 21

Çok Parametreleri Problemler Bu noktada iki şey net olarak açıklamalıdır: İlki a ve b yi ifade etmekte kullanılan alt stringlerin aynı uzunlukta olmasına gerek yoktur. Bu farklı parametrelere atanmış hassasiyet derecesinin değişmesine yol açar ve aramayı hızlandırabilir. İkincisi genel olarak çaprazlama kesim noktası parametreler arasında olmayacağı ancak parametre içinde olacağı anlaşılmalıdır. Bunun GA ile ilgisi parametre stringlerinin parçalara ayrılması ve tekrar birleştirilmesinin olmadık biçimde rastgele aramadan çok daha fazla bir şeye yol açtığı gözükmektedir. 22

Çok Parametreleri Problemler Örnek: max f ( x, y) 21.5 x sin(4 x) y sin(20 y) 3.0 x 12.1 4.1 y 5.8 23

Çok Parametreleri Problemler Rastrigin Fonksiyonu Max( f (x, y ) 20 x 2 10 cos(2 x ) y 2 10 cos(2 y )) 5.12 x 5.12 5.12 y 5.12 24

Çok Parametreleri Problemler l l x l y 18 15 33 33bit 000001010100101001101111011111110 18bit 15bit 25

Doğal seçim Yeni popülasyonu oluşturmak için mevcut topluluktan çaprazlama ve mutasyon işlemine tabi tutulacak bireylerin seçilmesi gerekir. Teoriye göre iyi olan bireyler yaşamını sürdürmeli ve bu bireylerden yeni bireyler oluşturulmalıdır. Bu nedenle tüm seçilim yöntemlerinde uygunluk değeri fazla olan bireylerin seçilme olasılığı daha yüksektir. En bilinen seçim yöntemleri 1) Rulet Çemberi 2) Turnuva 3) Sıralama 26

Doğal seçim Bu seçimde bireylerin uygunluk değerlerine göre olasılıkları belirlenir. p i = f i / f j Burada p i i inci bireyin olasılık değeri, f i i inci bireyin uygunluk değeri ve f j ise toplam uygunluk değeridir. 27

Doğal seçim Bu seçim biçimi rulet çemberi mekanizması ile aynıdır. Her bir bireyin uygunluğunun toplam uygunluk değerine oranı olacak şekilde çember parçalara ayrılır. Daha sonra tekerlek döndürülür ve durduğu dilim çaprazlama için ebeveyn olarak seçilir. 28

Doğal seçim Bu seçim stratejisinin bazı dezavantajları vardır. 1) Minimizasyon problemlerinde kullanılmaz. 2) Popülasyon yakınsarken seçim baskısı kaybolur. 3) Olasılık değeri yüksek olan bireyin seçilmesine yatkınlık vardır. 29