METASEZGİSEL YÖNTEMLER. Genetik Algoritmalar

Benzer belgeler
Zeki Optimizasyon Teknikleri

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

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

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

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

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

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

Fonksiyon Optimizasyonunda Genetik Algoritmalar

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

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

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

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

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

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

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

Genetik Algoritmalar (GA) Genetik Algoritmalar Đçerik Nesin Matematik Köyü E rim Ç lı l ş ı ta t yı Nisan, 2012 Mustafa Suphi Erden

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

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

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

Genetik Algoritmalar. Prof.Dr.Adem KALINLI

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

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

Yerel Arama Teknikleri ve Optimizasyon (Local Search and Optimisation)

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

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ü

İleri Diferansiyel Denklemler

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

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

ÜÇ BOYUTLU KARAYOLU GÜZÂRGAH OPTİMİZASYONUNDA KARAR DESTEK SİSTEMİ OLARAK GENETİK ALGORİTMALARIN KULLANIMI

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA

Gezgin Satıcı Probleminin Karınca Kolonisi ve Genetik Algoritmalarla Eniyilemesi ve Karşılaştırılması

GENETİK ALGORİTMA İLE RÜZGAR TÜRBİNİ KANAT SAYISI SEÇİMİ

Zeki Optimizasyon Teknikleri

Fonksiyon Minimizasyonunda Simulated Annealing Yöntemi

Genetik Algoritma ile Elde Edilen Uyumlu Renklerin Web Şablonları Üzerinde Gerçeklenmesi

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

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

Daha komplike uygulamalar elektronik ticaret, elektronik kimlik belgeleme, güvenli e-posta,

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

Genel Graf Üzerinde Mutlak 1-merkez

Algoritmalar. Heap Sort. Bahar 2017 Doç. Dr. Suat Özdemir 1

Web Madenciliği (Web Mining)

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

METASEZGİSEL YÖNTEMLER

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

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

Zeki Optimizasyon Teknikleri

6.Hafta Kıyım Fonksiyonu (Hashing), BST. Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme

EV TİPİ YENİLENEBİLİR HİBRİT SİSTEM İÇİN MİKRO-GENETİK ALGORİTMA İLE OPTİMAL YÜK PLANLAMASI

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

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

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

MAT223 AYRIK MATEMATİK

GEZGİN SATICI PROBLEMİ TABANLI BİR SİSTEMİN DİNAMİK BULANIK GENETİK ALGORİTMALAR İLE OPTİMİZASYONU

MAT223 AYRIK MATEMATİK

Hardy Weinberg Kanunu

İSTATİSTİKSEL TAHMİNLEME. Örneklem istatistiklerinden hareketle ana kütle parametreleri hakkında genelleme yapmaya istatistiksel tahminleme denir.

BIP116-H14-1 BTP104-H014-1

Rasgele Sayıların Özellikleri

BİLİMSEL ARAŞTIRMA YÖNTEMLERİ

10.Sınıf Biyoloji. Genetik. cevap anahtarı

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

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR

RASSAL SAYI ÜRETİLMESİ

Web Madenciliği (Web Mining)

Karınca Koloni Algoritması 2

BLM-431 YAPAY ZEKA. Ders-3 Durum Uzayında Arama. Yrd. Doç. Dr. Ümit ATİLA

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

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

Algoritmalara Giriş Ekim 10, 2005 Massachusetts Institute of Technology Professors Erik D. Demaine ve Charles E. Leiserson. Problem Seti 3 Çözümler

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

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

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

ELEKTRONİK ÇİZELGE. Hücreleri Biçimlendirme. Formülleri Kullanma. Verileri Sıralama. Grafik Oluşturma 1) HÜCRELERİ BİÇİMLENDİRME

2-D KESİM OPTİMİZASYONU

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data)

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

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

GEZGİN SATICI PROBLEMİ. Feasible Çözümler? Optimal Çözüm?

İ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

BİL-142 Bilgisayar Programlama II

Uzaktan Algılama Teknolojileri

Helikopter Dolaşım Sistemi

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Bölüm 4 Aritmetik Devreler

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

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

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

SINAV YÖNERGESİ. Numarası : CEVAP. Adı Soyadı : ANAHTARI A) 512 B) 513 C) 256 D) 1024 E) 1025 A) 252 B) 256 C) 3024 D) 126 E) =?

İZMİR İN GEZGİN SATICISI

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

DOĞRUSAL OLMAYAN REGRESYON ANALİZİNDE GERÇEK DEĞER KODLAMALI GENETİK ALGORİTMA

Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR

KARINCA OPTİMİZASYONU. Harun Kayıkçı

Bit, Byte ve Integer. BIL-304: Bilgisayar Mimarisi. Dersi veren öğretim üyesi: Dr. Öğr. Üyesi Fatih Gökçe

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

Transkript:

METASEZGİSEL YÖNTEMLER Genetik Algoritmalar

1970 li yıllarda John Holland tarafından geliştirilmiştir. 1989 yılında David E. Goldberg Genetik Genetik Algoritma Algoritma Uygulamaları üzerine klasik eser olarak kabul edilen kitabını yayınladı. Popülasyon tabanlı algoritmadır. Her birey problemin çözümü olmaya adaydır. Stokastik algoritmadır. Çözümler genellikle bit dizileri olarak kodlanır. Bireyleri değerlendirme fonksiyonu probleme yönelik olarak çalışan en önemli kısımdır. GENETİK ALGORİTMA

Popülasyon (Topluluk): Çözüm kümesini oluşturan bireylerin tümüdür. Kromozom: Çözüm için kullanılan bireyler. Gen: Kromozom içindeki anlamlı en küçük bilgidir. Locus: Kromozom içindeki gen in bulunduğu yerdir. Mutasyon: Bir kromozomda rastgele yapılan değişikliktir. Jenerasyon: Yeni bir topluluktur. Mating: Bireyler arasındaki eşlemedir. TERMİNOLOJİ

Çözümün veya bireyin gösterimi ve başlangıç popülasyonunun oluşturulması Bireylerin değerlendirilmesi (Fitness function) Bireylerin yeni topluluk için seçilmesi Yeni bir jenerasyon oluşturma İŞLEMLER

Bilinen bir çözüm kümesi alınarak başlanabilir. Rastgele bireyler oluşturulur. Belirli kriterleri sağlayan bireyler oluşturulur. Popülasyondaki birey sayısı genellikle 100 ile 300 arasında seçilir. Bireylerin Değerlendirilmesi Kromozomların çözüme uygunluk değerleri belirlenir Bireylerin Değerlendirilmesi BAŞLANGIÇ POPÜLASYONUNU Her problem için uygun bir değerlendirme fonksiyonu kullanılması gerekir. Probleme yönelik olarak çal Probleme yönelik olarak çalışan kısımdır. OLUŞTURMA Değerlendirme her yeni jenerasyonun tüm bireyleri için yapılır.

Birey seçme Elitizm Seçilen iki bireyi çaprazlama Bir bireyin herhangi bir gen inin mutasyon işlemiyle rastgele değiştirilmesi Birey seçme Deterministik Rulet tekerleği YENİ Rastgele POPÜLASYON OLUŞTURMA Turnuva seçimi

1. Olası çözümlerin kodlandığı bir çözüm grubu oluştur 1. Populasyon oluşturma 2. Toplumdaki her kromozomun ne kadar iyi olduğunu bul 1. Uygunluk fonksiyonu hesabı 3. Seçilen kromozomları eşleyerek yeniden kopyalama ve değiştirme operatörleri uygula 1. Rulet tekerleği 2. Turnuva seçimi 3. Çaprazlama 4. Mutasyon işlemleri STANDART BİR GENETİK ALGORİTMA YORDAMI

4. Yeni kromozomlara yer açmak için eski kromozomlar çıkartılarak sabit büyüklükte bir toplum sağlanır 5. Tüm kromozomların uygunlukları tekrar hesaplanır 6. İşlemler tekrarlanarak verilmiş zaman içerisinde daha iyi olan yeni nesillerin oluşturulması sağlanır 7. Populasyonun hesaplanması ile en iyi bireylerin olduğu çözüm elde edilir. STANDART BİR GENETİK ALGORİTMA YORDAMI

GENETİK ALGORİTMA OPERATÖRLERİ Kromozomların şifrelenmesi a) İkili kodlama Her bir kromozom 0 ve 1 lerden oluşan bit dizisidir ve ikili dizi ile ifade edilir. Kromozom A 10011111 Kromozom B 11011110 b) Permutasyon kodlama Bu kodlama gezgin satıcı problemi ve iş sıralama problemleri gibi sıralama problemlerinde Kromozom A 3 kullanılır. 5 1 2 4 7 6 0 Kromozom B 5 3 4 2 1 0 6 7 c) Değer Kodlama Bu kodlama gerçel gibi kompleks sayıların yer aldığı problemlerde kullanılır. Kromozom A 3.2 6.5 0.8 9.4 Kromozom B ABCDE Kromozom C (geri), (sağ), (ileri), (sol)

GENETİK ALGORİTMA OPERATÖRLERİ Kromozomların şifrelenmesi d) Ağaç Kodlama Ağaç kodlama program geliştirmek için uygundur. Örneğin Lisp ve Prolog gibi dillerde ağaç yapısı kullanılır. Örneğin televizyon yarışmalarında iyi bildiğimiz verilen hedefe en yakın sonucu üretecek aritmetik ifadenin bulunmasıdır. Bir kelime Bir İşlem programı Bu ifade sayılardan ve +, -, *, / aritmetik işlemlerden oluşur. İlk dört giriş sayısı 1 ile 10 arasından ve son iki sayı 25, 50, 75,100 arasından seçilir. Sınırlama ise yarışmacının her sayıyı bir kez kullanabilmesidir. Her zaman tam çözüm bulunmaz z - / g 3

ÇAPRAZLAMA VE MUTASYON Çaprazlama İkili kodlanmış kromozomlarda 4 çeşit çaprazlama gerçekleştirilir. Tek noktalı çaprazlama Çift noktalı çaprazlama Aritmetik takas Tek biçimli (uniform) çaprazlama Bitler rastgele biçimde iki ebeveynden yeni kromozoma kopyalanır. 11001011+11011111=11001001(AND) ve işlemi

ÇAPRAZLAMA VE MUTASYON Mutasyon Mutasyon işlemi, problemin populasyondaki çözümlerinin yerel optimuma düşmesini engellemek için kullanılır İkili şifreleme için, rastgele seçilen birkaç 0 dan 1 e veya 1 den 0 a değiştirilebilir.

ÇAPRAZLAMA VE MUTASYON Permutasyon kodlanmış kromozomlarda Çaprazlama: bir çaprazlama noktası seçilir. Bu noktaya kadar olan ifade birinci ebeveynden kalan ise diğer ebeveynden kopyalanarak yeni kromozom oluşturulur. 1 2 3 4 5 6 7 8 9 4 5 3 6 8 9 7 2 1 =1 2 3 4 5 9 7 2 1 Mutasyon: iki gen seçilir ve bunların yerleri değiştirilir. 1 2 3 4 5 6 7 8 9 7 1 8 3 4 5 6 7 2 9 7

ÇAPRAZLAMA VE MUTASYON Değer Kodlanmış Kromozomlarda Çaprazlama: ikili kromozomlarda yapılabilen tüm takas türleri burada da yapılır. Mutasyon: seçilen değerlerden küçük bir sayı çıkarılarak veya eklenerek yeni kromozom oluşturulur. (1.29 5.68 2.86 4.11 5.55) (1.29 5.68 2.73 4.11 5.55) Ağaç kodlanmış kromozomlarda çaprazlama: her iki ebeveynde birer takas noktası seçilerek parçalanır. Bu noktaların altındaki kısımlar aralarında değiştirilip yeni bireyler oluşturulur. Mutasyon: seçilen düğümlerdeki numaralar veya işlemler değiştirilir. - / / / g g * * g z 3 4 z 4 z z/3-g g/4*z 4*z/g

GENETİK ALGORİTMANIN PARAMETRELERİ 1. Çaprazlama olasılığı: Takasın hangi olasılıkta olduğunu belirler. Çaprazlama olasılığı %0 ile %100 arasındadır. Çaprazlama olasılığı %0 ın ve %100 ün anlamı nedir? 2. Mutasyon olasılığı: Mutasyonun hangi sıklıkla olacağını belirler. Mutasyon olasılığı %0 ile %100 arasındadır. 3. Diğer parametreler:

ÖRNEK: X parametresinin 0 ve 15 arasında değiģken olduğu (15x-x^2) fonksiyonun maksimum değerini bulalım. Kolaylık için biz x i sadece integer değerlerden alacağız. Böylece, kromozomlar dört bit le ifade edilebilir Farz edelim ki; kromozom populasyon boyutu 6, çaprazlama olasılığı 0,7 ve mutasyon olasılığı 0.001 dir.

ÖRNEK: GA rasgele bir şekilde üretilen birler ve sıfırlarla altı adet 4-bit string ile doldurularak kromozomların başlangıç popülasyonunu oluşturur. Başlangıç popülasyonu Tablo 2 de gösterilen gibi görünebilir. Tablo 2 deki son kolon, populasyonun toplam uygunluğuna bireysel kromozomların uygunluk oranını gösterir. Bu oran, eşleşme için kromozomların seçilme şansını tanımlar. Böylece, x3 ve x4 kromozomlarının çok düşük bir seçilme olasılığı varken, x5 ve x6 kromozomlarının yeterli şansı vardır.

ÖRNEK: SEÇİM Eşleşme için bir kromozom seçiminde, rulet tekerleği seçimi tekniğini kullanarak, [0,100] aralığında rasgele bir sayı üretilir ve kümülatif oranının rasgele sayıyı içerdiği kromozom seçilir. Bu, uygunluklarıyla orantılı olarak tekerlek üzerinde bir alana sahip her bir kromozomun yer aldığı bir tekerleğin dönmesi gibidir. Örneğimizde, biz altı kromozomlu bir başlangıç popülasyonuna sahibiz. Böylece, sonraki nesilde aynı populasyon boyutunu kurmak için, altı rasgele sayı üretilecektir.(bu, rulet tekerleğinin altı kez dönmesi gibidir.) ilk iki dönme, x6 ve x2 ebeveyn olmak için seçebilir; ikinci dönme çifti, x1 ve x5 kromozomlarını seçebilir ve son iki dönüş x2 ve x5 kromozomlarını seçebilir.

ÖRNEK: ÇAPRAZLAMA Bir çift ebeveyn kromozom seçildikten sonra, çaprazlama operatörü uygulanır. Öncelikle çaprazlama operatörü rasgele bir şekilde, iki ebeveyn kromozomu kıracak ve bu noktadan sonra kromozomların parçalarını değiştirecek bir çaprazlama noktası seçer. Sonuç olarak iki yeni yavru oluşturulur. Mesela, iki kromozom x6 ve x2 ikinci genden sonra çaprazlanabilir. Her biri iki yavru üretir. Aşağıdaki gibi gösterilir: Eğer bir çift kromozom çaprazlanmazsa, yavrular bireylerin tam kopyası olarak oluşturulur. 0.7 çaprazlama olasılığı genellikle iyi sonuç üretir.

ÖRNEK: MUTASYON Doğada nadiren olan Mutasyon, gendeki bir değişikliği temsil eder. Bu, uygunlukta önemli bir gelişmeye neden olabilir. Fakat çoğunlukla, oldukça faydalı sonuçları vardır. Mutasyonun rolü, arama algoritmasının bir local optimuma takılmamasının garantisini sağlamaktır. Seçim sırası ve çaprazlama operatörleri herhangi bir homojen çözüm kümesinde durgunlaşabilir. Böyle şartlar altında, tüm kromozomlar özdeştir ve bu yüzden populasyonun ortalama uygunluğu geliştirilemeyebilir. Çözüm sadece optimal ( veya local olarak oldukça optimal) olmak görünebilir. Çünkü arama algoritması daha fazla ilerlemeyebilir. Mutasyon rasgele bir aramaya eşdeğerdir ve genetik farklılıkların kaybının korunmasında bize yardım eder.

ÖRNEK: MUTASYON Mutasyon operatörü bir kromozomda rasgele bir Şekilde seçilen geni çevirir. Mesela, aşağıda gösterildiği gibi, x1 ikinci geninde ve kromozom x2 de üçüncü geninde mutasyona uğratılmış olabilir. Mutasyon, bazı olasılıklı kromozomda, herhangi bir gende meydana gelebilir. Mutasyon olasılığı doğada oldukça küçüktür ve genetik algoritmalarda oldukça küçük tutulur. Tipik olarak 0.001 ile 0.01 aralığında.

GEZGİN SATICI PROBLEMİNİN GENETİK ALGORİTMALARLA UYGULAMASI GA ların uygulanmasına ilişkin incelenecek olan GSP de 8 Şehir olduğunu varsayalım. Hatırlatalım ki problemde amaç, satıcının her şehre yalnızca bir kere uğrayarak turunu en kısa yoldan tamamlamasıdır. Satıcının başladığı şehre geri dönme zorunluluğunun olmadığını varsayalım. (Yani burada amaç döngü değil, Hamilton yolunun bulunmasıdır.) Şehirler birbirine bağlı olmakta ve uzaklıklar verilmektedir bu şartlar içerisinde toplam alınan yolun minimum değerini bulmaya çalışacağız Şekil. 8 şehirli GSP şeması

BAŞLANGIÇ POPÜLASYONUN OLUŞTURULMASI: GSP de 8 şehir olduğunu kabul etmiştik. Şehirleri 0 dan 7 ye kadar numaralandırdığımızı düşünürsek, her gen bir şehre karşılık gelecektir. Bu durumda kromozomlarımız ve başlangıç popülasyonumuz rastlantısal olarak aşağıdaki gibi oluşturulabilir.(popülasyon büyüklüğü 5 olarak seçilmiştir.) 10275463 71302564 24170536 41653720 60534217

POPULASYON İÇİNDEKİ HER KROMOZOMUN AMAÇ FONKSİYONUNUN DEĞERİNİN HESAPLANMASI: ilk kromozomumuza bakarsak, bu kromozomun amaç fonksiyonu değeri, şartta verilen şehirlerarası yol uzunluklarına bağlı olarak aşağıdaki şekilde hesaplanır: 10275463 1 den 0 a 5 km 2 den 7 ye km 5 den 4 e 3 km 6 dan 3 e 5 km 0 dan 2 ye 3 km 7 den 5 e 4 km 4 den 6 ya 6 km ise; Bu kromozomun gösterdiği yolun toplam uzunluğu 27 km, yani amaç fonksiyonun değeri 27 olacaktır.

TEKRAR ÜRETME, ÇAPRAZLAMA VE MUTASYON OPERATÖRLERİNİN UYGULANMASI: Goldberg probleminde uygulanan çaprazlama işlemini GSP nin kromozomlarına uygularsak bazı güçlüklerle karşılaşabiliriz. Örneğin, rastgele bir şekilde üçüncü ve dördüncü kromozomları seçelim ve çaprazlama noktası 5 olsun. Bu durumda çaprazlama şu şekilde olacaktır. Görüldüğü gibi yeni oluşan kromozomlar, GSP problemi için olumlu bir sonuç vermez. Çünkü satıcımız, tüm şehirleri gezmeli ve her şehre yalnızca bir kez uğramalıydı, fakat çaprazlama sonrası kromozomlarda bazı şehirlere hiç gidilmemekte yada şehirlere uygun gelen düğümlere iki kere başvurulmaktadır.

TEKRAR ÜRETME, ÇAPRAZLAMA VE MUTASYON OPERATÖRLERİNİN UYGULANMASI Örneğin çaprazlama sonrası oluşan ilk kromozomumuza dikkat edecek olursak, 3., 5. ve 6. şehirlere hiç gidilmediğini ve 0., 2. ve 7. şehirlere iki defa uğrandığını gözlemleriz. Böyle bir olumsuz durumda ikinci bir işleme gerek duyulur. Yani kısıtlamaları sağlamayan uygunsuz kromozomların standartlaştırılması gerekmektedir. Standartlaştırma için aşağıdaki basit kural uygulanabilir: Kromozom içinde tekrar eden ilk şehir ziyaret edilmeyen en küçük numaralı şehir ile değiştirilsin. Bu standartlaştırma kuralı akla ilk gelen kurallardan biridir.

TEKRAR ÜRETME, ÇAPRAZLAMA VE MUTASYON OPERATÖRLERİNİN UYGULANMASI Çaprazlama ve standartlaştırma sonrası durum; 34156720 41027536 Böyle bir durumda ikili düzende kodlanmış olan kromozomların daha avantajlı olabileceği görülmektedir. Ancak ikili düzende kodlama da kromozomların çok uzun olması, ya da problemin yapısına uygun olmaması gibi sorunlar çıkabilmektedir. Şimdi de Goldberg problemindeki gibi mutasyon operatörüne geçelim. Ancak bu rasgele seçilen kromozomlar üzerindeki iki genin yerlerini değiştirmekle gerçekleştirilir. Rastgele olarak seçtiğimiz 5. kromozomumuzun ikinci ve yedinci genlerini seçtiğimizi varsayalım. Bu durumda; mutasyondan önceki durum mutasyondan sonraki durum 60534217 67534210