Karınca Koloni Algoritması 2

Benzer belgeler
Karınca Koloni Algoritması 1

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ü

Zeki Optimizasyon Teknikleri

1 Actions-> Generate Random TSP yolunu izleyerek 100 şehirden oluşan bir gezgin satıcı problemi oluşturunuz.

İLERİ ALGORİTMA ANALİZİ KARINCA KOLONİ ALGORİTMASI

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

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

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

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

Karınca Kolonisi Algoritmasının Zaman Çizelgelemesi Üzerine: Bir Modellemesi ve Uygulaması

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

Doğal Hesaplama (COMPE 564) Ders Detayları

Zeki Optimizasyon Teknikleri

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

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

Fonksiyon Optimizasyonunda Genetik Algoritmalar

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

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

DENGELEME HESABI-I DERS NOTLARI

GA, AS, ACS VE MMAS ALGORİTMALARI PERFORMANSLARININ GEZGİN SATICI PROBLEMİ ÇÖZÜMÜ ÜZERİNDE DEĞERLENDİRİLMESİ

Anadolu Üniversitesi Endüstri Mühendisliği Bölümü İST328 Yöneylem Araştırması 2 Dersi Bahar Dönemi. Hazırlayan: Doç. Dr.

Hülya Özdağ (YTÜ Matematik Bölümü Ö.Ü.) Nilgün Aygör (YTÜ Matematik Bölümü Ö.Ü.) Aykut Parlak (YTÜ Matematik Mühendisliği)

Oluşturulan evren listesinden örnekleme birimlerinin seçkisiz olarak çekilmesidir

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

YAPI STATİĞİ II (Hiperstatik Sistemler) Yrd. Doç. Dr. Selçuk KAÇIN

Zeki Optimizasyon Teknikleri

Zeki Optimizasyon Teknikleri

METASEZGİSEL YÖNTEMLER

Karar Destek Sistemi

OPTİMUM GÜÇ AKIŞININ YAPAY ARI KOLONİSİ İLE SAĞLANMASI

T.C. BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MAKİNE VE İMALAT MÜHENDİSLİĞİ BÖLÜMÜ MIM331 MÜHENDİSLİKTE DENEYSEL METODLAR DERSİ

İLERİ ALGORİTMA ANALİZİ TABU ARAMA ALGORİTMASI (TABU SEARCH)

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

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

Montaj Hatti Tasarımı ve Analizi - 5

MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

Wichita State University Libraries SOAR: Shocker Open Access Repository

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

Montaj Hatti Tasarımı ve Analizi - 8

İZMİR İN GEZGİN SATICISI

METASEZGİSEL YÖNTEMLER. Genetik Algoritmalar

YÖNEYLEM ARAŞTIRMASI - III

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

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

Esnek Hesaplamaya Giriş

YTÜ Makine Mühendisliği Bölümü Mekanik Anabilim Dalı Genel Laboratuvar Dersi Eğilme Deneyi Çalışma Notu

ÖZEL EGE LİSESİ 13. OKULLAR ARASI MATEMATİK YARIŞMASI 8. SINIF ELEME SINAVI TEST SORULARI

Self Organising Migrating Algorithm

Makine Öğrenmesi 2. hafta

AST416 Astronomide Sayısal Çözümleme - II. 6. Monte Carlo

İleri Diferansiyel Denklemler

ANT SYSTEM ALGORİTMASININ JAVA İLE GÖRSELLEŞTİRİLMESİ

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

Burma deneyinin çekme deneyi kadar geniş bir kullanım alanı yoktur ve çekme deneyi kadar standartlaştırılmamış bir deneydir. Uygulamada malzemelerin

Kafes Sistemler. Birbirlerine uç noktalarından bağlanmış çubuk elemanların oluşturduğu sistemlerdir.

Uzaktan Algılama Teknolojileri

11.Hafta En kısa yollar I-II-III Devam. Negatif Ağırlıklı En Kısa Yollar Doğruluk Çözümleme

KARINCA KOLONİSİ ALGORİTMASI İLE BİLGİSAYAR AĞLARININ TOPOLOJİK EN İYİLENMESİ TOPOLOGICAL OPTIMIZATION OF COMPUTER NETWORKS USING ANT COLONY ALGORİTHM

Her bir polis devriyesi ancak bir çağrıyı cevaplayabilir. Bir çağrıya en fazla bir devriye atanabilir.

DOĞRUSAL ANTEN DİZİLERİNDE OPTİMUM DEMET ŞEKİLLENDİRME AMACIYLA KARINCA KOLONİ OPTİMİZASYON ALGORİTMASININ KULLANILMASI ÖZET

BURSA TEKNİK ÜNİVERSİTESİ DOĞA BİLİMLERİ, MİMARLIK VE MÜHENDİSLİK FAKÜLTESİ MAKİNE MÜHENDİSLİĞİ BÖLÜMÜ 3 NOKTA EĞME DENEYİ FÖYÜ

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

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

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

Poisson Dağılımı Özellikleri ve Olasılıkların Hesaplanması

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

Aks yük hesaplamaları. Aks yükleri ve yük hesaplamaları ile ilgili genel bilgi

FABRİKA ORGANİZASYONU Üretim Planlama ve Yönetimi 2. Uygulama: Sipariş ve Parti Büyüklüğü Hesaplama

Karınca Koloni Algoritması. Prof.Dr.Adem KALINLI

BURULMA (TORSİON) Dairesel Kesitli Çubukların (Millerin) Burulması MUKAVEMET - Ders Notları - Prof.Dr. Mehmet Zor

Gezgin Satıcı Probleminin Benzetilmiş Tavlama Yöntemiyle Çözümünde Paralel Hesaplamanın Kullanılması

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

Örnekleme Yöntemleri

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

Toplam Olasılık Prensibi

Bu bölümde; Çok ölçütlü karar verme yöntemlerinden biri olan TOPSİS yöntemi anlatılacaktır.

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

İleri Diferansiyel Denklemler

Ders 9: Kitle Ortalaması ve Varyansı için Tahmin

Fonksiyon Minimizasyonunda Simulated Annealing Yöntemi

Genel Graf Üzerinde Mutlak 1-merkez

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

KOMBİNATORYAL OPTİMİZASYON

Yöneylem Araştırması II

İSTATİSTİKSEL PROSES KONTROLÜ

İleri Diferansiyel Denklemler

Akış tipi çizelgeleme problemi için KKE parametre eniyileme

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

Hipotez Testleri. Mühendislikte İstatistik Yöntemler

Güz Yarıyılı Balıkesir Üniversitesi, Endüstri Mühendisliği Bölümü EMM4129 ÇİZELGELEME. (Paralel Makine Çizelgeleme)

Saha İş Gücü Yönetim Sistemi ve Güzergah Optimizasyonu

İSTATİSTİK EXCEL UYGULAMA

KANGURU ALGORİTMASI ve GEZGİN SATICI PROBLEMİNE UYGULANMASI

Bugünkü Değer Hesaplamaları

İzostatik Sistemlerin Hareketli Yüklere Göre Hesabı

KARINCA KOLONİSİ ALGORİTMASI İLE GEZEN SATICI PROBLEMİNİN ÇÖZÜMÜ

KARADENİZ TEKNİK ÜNİVERSİTESİ MADEN MÜHENDİSLİĞİ BÖLÜMÜ KAYA MEKANİĞİ LABORATUVARI

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

1986 ÖYS. 1. Aşağıdaki ABC üçgeninde. BD kaç cm dir? C) 3 A) 11 B) 10 C) 3 D) 8 E) 7 E) 2

Transkript:

Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ Web: http://ikucukkoc.baun.edu.tr Karınca Koloni Algoritması 2 7

TSP ve ACO Algoritması Gezgin satıcı problemi (travelling salesman problem-tsp) yöneylem araştırması ve teorik bilgisayar bilimi alanlarında incelenen bir "kombinatorik optimizasyon" problemidir. Kapasite kısıtlamasının olmadığı tek bir araçlık klasik Hamilton turlu problem Gezgin satıcı problemidir. Gezgin satıcı problemi, en önemli algoritma problemlerinden biridir. Karınca algoritmaları ilk olarak TSP problemlerinin çözümü için uygulanmıştır ve etkili çözüm ürettikleri gözlenmiştir. MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 2

ACO Akış Diyagramı ACO Akış Diyagramı Genel Akış: ACO algoritmasının çalışma prensibi yandaki şekilde verilmiştir. Anlatımı kolaylaştırmak açısından TSP probleminin çözümüne yönelik bir yol izlenmiştir. Kısaca; Koloni büyüklüğü sayısınca karınca birer birer bırakıldıktan sonra, her bir karıncanın ürettiği çözümlerin fitness değerleri hesaplanır. Tüm koloni turunu tamamlayınca, tüm yollardan buharlaşma oranı miktarınca feromon buharlaştırılır ve elde edilen çözümlerin fitness değerlerine göre, her bir karınca tarafından üretilen çözüm (güzergah, path) üzerinde bulunan yollara feromon bırakılır. Koloni tarafından bulunan en iyi çözüm üzerinde bulunan bağlantılara yeniden feromon bırakılır (global pheromone update). Bunun amacı bulunan en iyi çözüm üzerindeki bağlantıların diğer karıncalar tarafından tercih edilme ihtimalini artırmaktır. Durdurma kriteri sağlanana kadar yeni karınca kolonileri bırakılır ve sonuçta döngü sonlandırılarak bulunan en iyi çözüm rapor edilir. H Adım 5 Adım 2 ACO parametrelerini ayarla Yeni bir koloni oluştur (koloni büyüklüğü kadar karınca tanımla) Adım Adım 4 Adım 1 Başla Yeni çözüm üretmesi için bir karıncayı serbest bırak ve çözüm üretsin Tüm karıncalar turlarını tamamladı mı? Feromon buharlaştır ve yerel feromon güncelle Koloni tarafından üretilen en iyi çözümü bul ve bu güzergah üzerine tekrar feromon bırak Adım 6 Durdurma kriteri sağlandı mı? Dur ve en iyi çözümü (en yoğun feromon içeren güzergahı) göster H 17/12/2017

Çözüm Üretilmesi Her bir karıncanın çözüm üretmesine (Adım ) ilişkin prosedür yandaki şekilde verilmiştir. Her karınca rastgele bir noktadan arama yapmaya başlar. Genellikle uygulanan prosedür, her şehre bir tane olmak üzere şehir sayısı kadar karıncayı bırakmaktır. Adım.1 Adım teki her bir karınca için çözüm oluşturma prosedürü Rastgele bir noktadan (şehirden) başla Adım.2 Bulunulan şehirle bağlantılı her bir şehrin seçilme olasılığını hesapla (daha önce ziyaret edilmemiş olmak kaydıyla) Adım. Rastgele bir sayı belirle ve seçilme olasılığına göre bir şehir seç Adım.4 Seçilen şehre geç ve bu şehri ziyaret edilenler listesine ekle Tüm şehirler ziyaret edildi mi? H Adım.5 Turu tamamla ve fitness değerini hesapla MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 4

Çözüm Üretilmesi Adım.2 deki bağlantılı şehirlerin seçim olasılıklarının hesaplanması aşağıdaki formülasyona göre yapılır. p ij = τ ij α ηij β σ k Zi τ ik α η ik β p ij : i şehrinden j şehrine geçme olasılığı (seçim olasılığı) τ ij : i ve j noktaları arasındaki feromon miktarı η ij : i şehrinden j şehrinin görünürlüğü (sezgisel bilgi) Z i : i şehrinden ziyaret edilebilecek şehirler kümesi Adım.1 Adım teki her bir karınca için çözüm oluşturma prosedürü Rastgele bir noktadan (şehirden) başla Adım.2 Bulunulan şehirle bağlantılı her bir şehrin seçilme olasılığını hesapla (daha önce ziyaret edilmemiş olmak kaydıyla) Adım. Rastgele bir sayı belirle ve seçilme olasılığına göre bir şehir seç Adım.4 Seçilen şehre geç ve bu şehri ziyaret edilenler listesine ekle Problemimiz için (TSP), sezgisel bilgi genelde 1/d ij dir. Burada d ij, i şehri ile j şehri arasındaki uzaklıktır (veya ulaşım maliyeti). Adım.5 Tüm şehirler ziyaret edildi mi? Turu tamamla ve fitness değerini hesapla H MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 5

Çözüm Üretilmesi Bağlantılı her bir şehrin seçim olasılıkları hesaplandıktan sonra, [0-1] aralığında rastgele bir sayı belirlenir ve seçim olasılıkları dikkate alınarak bu sayıya göre bir şehir seçilir (Adım.). ğer i şehrinden j şehrine bağlantı yoksa (veya j şehri zaten ziyaret edilmişse) p ij = 0 kabul edilir ve böylece tekrar ziyaret edilmesi engellenmiş olur. Tüm şehirler ziyaret edilene kadar bu prosedür tekrar edilir ve ilgili karınca için bir tur tamamlanmış olur (Adım.5). Adım.1 Adım teki her bir karınca için çözüm oluşturma prosedürü Rastgele bir noktadan (şehirden) başla Adım.2 Bulunulan şehirle bağlantılı her bir şehrin seçilme olasılığını hesapla (daha önce ziyaret edilmemiş olmak kaydıyla) Adım. Rastgele bir sayı belirle ve seçilme olasılığına göre bir şehir seç Adım.4 Seçilen şehre geç ve bu şehri ziyaret edilenler listesine ekle Tüm şehirler ziyaret edildi mi? H Adım.5 Turu tamamla ve fitness değerini hesapla MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 6

ACO Akış Diyagramı Feromon Güncelleme Kolonideki tüm karıncalar turunu tamamladıktan sonra, karıncalar tarafından izlenen güzergahlar üzerine feromon bırakılır (Adım 4). Bu sırada tüm güzergahlar üzerinden bir miktar feromon buharlaştırılır (ρ oranınca). Bırakılan feromon miktarı, izlenen güzergahın uzunluğu ile ters orantılıdır. Yani, güzergah uzunluğu arttıkça, bırakılan feromon miktarı azalır (veya tam tersi). Böylece, kısa olan yollar üzerinde feromon birikimi daha fazla olacak ve diğer karıncalar tarafından seçilme olasılığı artacaktır. Güzergah üzerindeki bağlantılara bırakılacak feromon miktarı aşağıdaki formülasyon kullanılarak güncellenir: Burada; τ ij (t + 1) (1 ρ)τ ij (t) + τ ij (t) m τ ij t = τ k ij (t) k=1 τ ij k t = ቊ Q/L k eğer (i, j) tur k 0 değilse H Adım 5 Adım 2 ACO parametrelerini ayarla Yeni bir koloni oluştur (koloni büyüklüğü kadar karınca tanımla) Adım Adım 4 Adım 1 Yeni çözüm üretmesi için bir karıncayı serbest bırak ve çözüm üretsin Tüm karıncalar turlarını tamamladı mı? Feromon buharlaştır ve yerel feromon güncelle Koloni tarafından üretilen en iyi çözümü bul ve bu güzergah üzerine tekrar feromon bırak Adım 6 Başla Durdurma kriteri sağlandı mı? Dur ve en iyi çözümü (en yoğun feromon içeren güzergahı) göster H 17/12/2017 7

ACO Akış Diyagramı Durdurma Kriteri Koloni tarafından bulunan en iyi çözüm üzerinde bulunan bağlantılara yeniden feromon bırakılır (Adım 5, global feromon güncelleme). Bunun amacı bulunan en iyi çözüm üzerindeki bağlantıların diğer karıncalar tarafından tercih edilme ihtimalini artırmaktır. Durdurma kriteri sağlanana kadar bu döngü tekrar edilir ve sonuçta bulunan en iyi çözüm (tüm koloniler tarafından bulunan global en iyi çözüm) rapor edilir. Durdurma kriteri genelde maksimum koloni sayısıdır. Aslında bu kriter, GA ya benzer şekilde bir anlamda iterasyon sayısını temsil etmektedir. Burada koloni sayısı olarak salt bir şekilde "maksimum koloni sayısı" alınabileceği gibi, yine GA ya benzer şekilde "iyileşme olmadan geçen maksimum koloni sayısı" da alınabilir. H Adım 5 Adım 2 ACO parametrelerini ayarla Yeni bir koloni oluştur (koloni büyüklüğü kadar karınca tanımla) Adım Adım 4 Adım 1 Yeni çözüm üretmesi için bir karıncayı serbest bırak ve çözüm üretsin Tüm karıncalar turlarını tamamladı mı? Feromon buharlaştır ve yerel feromon güncelle Koloni tarafından üretilen en iyi çözümü bul ve bu güzergah üzerine tekrar feromon bırak Adım 6 Başla Durdurma kriteri sağlandı mı? Dur ve en iyi çözümü (en yoğun feromon içeren güzergahı) göster H 17/12/2017 8

Parametreler α ve β Parametreleri: α ve β, feromon miktarı ile sezgisel bilginin önemini kontrol etmek üzere kullanılan iki sabittir. ğer α = 0 ise, en yakın bağlantılı nokta çok daha büyük olasılıkla seçilecektir. ğer β = 0 ise, bu kez sezgisel bilgi göz ardı edilecek ve algoritmanın en iyi yolu bulma kabiliyetini olumsuz etkileyecektir. α ve β parametreleri için en uygun değer aralığı yandaki grafikte verilmiştir. Karınca Sayısı: Karınca sayısının arttırılması çözümde iyileşmeye neden olur. Fakat hesaplamaları arttırdığı için karınca sayısının fazla arttırılması işlem zamanlarının uzamasına neden olur. TSP problemlerinde yapılan denemeler sonucunda karınca sayısının şehir sayısına eşit seçilmesinin uygun olacağı sonucuna varılmıştır. Karınca sayısı, problem büyüklüğüne ve uygulama alanına bağlı olarak değişir. MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 9

Parametreler Koloni Sayısı GA daki iterasyon sayısına karşılık gelir. Denemeler sonucu yeterli büyüklükte belirlenmesi iyi çözüm üretilmesi için önemlidir. Koloni sayısının çok büyük belirlenmesi, tıpkı karınca sayısının çok büyük belirlenmesi gibi programın çalışma zamanını uzatır. Buharlaşma Oranı: Genelde (0< ρ <1) aralığında ve sıfıra yakın bir değer olarak belirlenir (örn. ρ = 0.1 gibi). Bu oranın çok yüksek belirlenmesi durumunda (örn. ρ = 0.8 gibi) en iyi çözümün bulunması çok zaman alır. Çok düşük belirlenmesi ise (örn. ρ = 0.001 gibi) algoritmanın yerel optimumlara takılmasına sebep alacaktır. Q Sabiti Çözülen problemin yapısına göre belirlenen bir sabittir. Feromon matrisindeki bağlantılar üzerine bırakılacak olan feromon miktarında belirleyici role sahiptir. Buharlaşma oranı (ρ) ile dengeli olacak şekilde belirlenmelidir. ğer ρ çok büyük, Q çok küçük olursa: Bağlantılar üzerindeki feromon miktarları zamanla çabuk yok olacak ve önemli bağlantıların diğer karıncalar tarafından seçilme ihtimali daha az olacaktır. Çözümün bulunması çok fazla zaman alacaktır. ğer ρ çok küçük, Q çok büyük olursa: Bazı bağlantılar üzerinde çok çabuk aşırı miktarlarda feromon birikimi söz konusu olacak ve alternatif yolların aranması zorlaşacaktır. Bu durumda prematüre gelişim söz konusu olacak ve algoritma bir yerel optimumda takılı kalacaktır. MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 10

11 Örnek: TSP için ACO Algoritması MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017

Örnek: TSP için ACO Algoritması Problem verisi: Şehirlerin birbirlerine olan uzaklıkları d ij : i şehrinden j şehrine olan uzaklık A B 6 2 2 5 6 C 6 4 Şehirler Arası Mesafe Matrisi A B C D A 6 2 B 5 2 C 6 5 6 4 D 2 2 6 6 4 6 D MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 12

Şehirlerin görünürlükleri, 1/d ij (sezgisel bilgi) Şehirlerin Görünürlükleri A B C D A 0, 0,17 0,50 0, B 0, 0,20 0,50 0, C 0,17 0,20 0,17 0,25 D 0,50 0,50 0,17 0,17 0, 0, 0,25 0,17 A B 6 2 5 2 D 6 C 6 4 Parametreler Karınca Sayısı=5 α = 1, β = 1.5, Q = 1, ρ = 0.1 Başlangıç feromonu miktarı = 1 Her karınca başlangıçta rastgele bir şehre yerleştirilir. MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 1

14 İlk Koloni MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017

Tüm karıncalar tek tek çözüm üretir. İlk karınca: A 6 B 2 D 6 A--B-D-C-A Toplam mesafe: 20 C A'dan sonra ikinci şehrin seçimi AB 0,19245009 0,806494952 0,28625287 0,28625287 0,8674 AC 0,06804182 0,806494952 0,08466779 0,22992067 AD 0,55591 0,806494952 0,4882646 0,7617471 A* 0,19245009 0,806494952 0,28625287 1 A'den sonra üçüncü şehrin seçimi B* 0,19245009 0,85491471 0,4992067 0,4992067 0,798 C 0,125 0,85491471 0,2426189 0,82494456 D 0,06804182 0,85491471 0,176505544 1 AB'den sonra dördüncü şehrin seçimi BC 0,089442719 0,44299611 0,201904074 0,201904074 0,9541 BD* 0,55591 0,44299611 0,798095926 1 Son şehrin seçimi DC* 0,06804182 0,06804182 1 1 0,158 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 15

A'dan sonra ikinci şehrin seçimi AB 1 1 0, 0,1925 0,1925 0,8065 0,286 0,286 0,8674 AC 1 1 6 0,1667 0,0680 0,0680 0,8065 0,0844 0,20 AD 1 1 2 0,5000 0,56 0,56 0,8065 0,484 0,7614 A* 1 1 0, 0,1925 0,1925 0,8065 0,286 1,0000 A'den sonra üçüncü şehrin seçimi B* 1 1 0, 0,1925 0,1925 0,855 0,4992 0,4992 0,798 C 1 1 4 0,2500 0,1250 0,1250 0,855 0,24 0,825 D 1 1 6 0,1667 0,0680 0,0680 0,855 0,1765 1,0000 AB'den sonra dördüncü şehrin seçimi BC 1 1 5 0,2000 0,0894 0,0894 0,440 0,2019 0,2019 0,9541 BD* 1 1 2 0,5000 0,56 0,56 0,440 0,7981 1,0000 Son şehrin seçimi DC* 1 1 6 0,1667 0,0680 0,0680 0,0680 1,0000 1,0000 0,158 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 16

İkinci Karınca: B C B'den sonra ikinci şehrin seçimi BA 0,19245009 0,827896289 0,22456761 0,22456761 0,45 BC 0,089442719 0,827896289 0,1080614 0,40492901 BD* 0,55591 0,827896289 0,4270509 0,7675429 B 0,19245009 0,827896289 0,22456761 1 A 6 2 6 BD'den sonra üçüncü şehrin seçimi DA 0,55591 0,48966154 0,72207702 0,72207702 0,85 DC* 0,06804182 0,48966154 0,1896149 0,86106851 D 0,06804182 0,48966154 0,1896149 1 D B-D-C-A--B Toplam mesafe: 20 BDC'den sonra dördüncü şehrin seçimi CA* 0,06804182 0,1904182 0,52470445 0,52470445 0,06 C 0,125 0,1904182 0,647529555 1 Son şehrin seçimi A* 0,19245009 0,19245009 1 1 0,5478 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 17

Üçüncü karınca: B 5 C C'den sonra ikinci şehrin seçimi CA 0,0680414 0,5052548 0,1941125 0,194112511 0,04 CB* 0,0894427 0,5052548 0,2551675 0,44928004 CD 0,0680414 0,5052548 0,1941125 0,6492546 C 0,125 0,5052548 0,566075 1 A 6 2 D 6 C-B-D--A-C Toplam mesafe: 22 CB'den sonra üçüncü şehrin seçimi BA 0,1924501 0,784557 0,260612 0,26061209 0,6547 BD* 0,5554 0,784557 0,4787754 0,7987691 B 0,1924501 0,784557 0,260612 1 CBD'den sonra dördüncü şehrin seçimi DA 0,5554 0,421594772 0,886095 0,88609522 0,8645 D* 0,0680414 0,421594772 0,161905 1 Son şehrin seçimi A* 0,1924501 0,19245009 1 1 0,568 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 18

Dördüncü Karınca: A 2 B D 6 C D-A-B--C-D Toplam mesafe: 18 4 D'den sonra ikinci şehrin seçimi DA* 0,55591 0,84189545 0,41904761 0,41904761 0,057 DB 0,55591 0,84189545 0,41904761 0,88609522 DC 0,06804182 0,84189545 0,08069529 0,91904761 D 0,06804182 0,84189545 0,08069529 1 DA'dan sonra üçüncü şehrin seçimi AB* 0,19245009 0,452941561 0,424889448 0,424889448 0,245 AC 0,06804182 0,452941561 0,150221105 0,575110552 A 0,19245009 0,452941561 0,424889448 1 DAB'den sonra dördüncü şehrin seçimi BC 0,089442719 0,281892809 0,172969 0,172969 0,7541 B* 0,19245009 0,281892809 0,68270661 1 Son şehrin seçimi C* 0,125 0,125 1 1 0,5756 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 19

Beşinci Karınca: B 5 C 'den sonra ikinci şehrin seçimi A* 0,19245009 0,577941561 0,2992 0,2992 0,1954 B 0,19245009 0,577941561 0,2992 0,6659846 C 0,125 0,577941561 0,21628484 0,88226944 D 0,06804182 0,577941561 0,11770557 1 A D 6 6 -A-B-C-D- Toplam mesafe: 2 A'dan sonra üçüncü şehrin seçimi AB* 0,19245009 0,614044862 0,141729 0,141729 0,087 AC 0,06804182 0,614044862 0,110808486 0,424222215 AD 0,55591 0,614044862 0,575777785 1 AB'den sonra dördüncü şehrin seçimi BC* 0,089442719 0,44299611 0,201904074 0,201904074 0,102 BD 0,55591 0,44299611 0,798095926 1 Son şehrin seçimi CD* 0,06804182 0,06804182 1 1 0,457 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 20

Feromon Güncelleme Feromon güncelleme yaparken, her bir bağlantı üzerine bırakılacak toplam feromon miktarını hesaplamak için her bir karınca tarafından bırakılacak feromonlar toplanır. m τ ij t = τ k ij (t) k=1 τ ij k t = ቊ Q/L k eğer (i, j) tur k 0 değilse Örneğimizdeki beş adet karınca tarafından AB bağlantısı üzerine bırakılacak olan feromon: AB AB 1 ( t) AB 2 ( t) AB ( t) AB 4 ( t) ( t) 0 0 0 (1/18) (1/ 2) 0.099 5 ( t) olarak hesaplanır. Feromon matrisindeki AB bağlantısı için mevcut feromon miktarından yapılan buharlaştırma ve yukarıda hesaplanan feromonun eklenmesi sonrasında ise, feromon matrisindeki AB bağlantısı için güncel feromon miktarı aşağıdaki gibi hesaplanır: τ ij t + 1 1 ρ τ ij t + τ ij t = 1 0.1 1 + 0.099 = 0.999 AB Feromon matrisindeki diğer tüm bağlantıların (örn. AC, AD, A, BA, BC ) feromon miktarları da benzer şekilde güncellenir. Son olarak en iyi güzergah (D-A-B--C-D) üzerindeki bağlantılara τ ij t kadar yeniden feromon yüklenir (global feromon güncelleme) ve bir sonraki iterasyona (koloni 2) geçilir. AB ( t) MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 21

Feromon Güncelleme Başlangıç Feromon Matrisi Yüklenecek Yerel Feromon Miktarları A B C D A B C D A 1 1 1 1 A 0,09904 0,045455 0 0,1 B 1 1 1 1 B 0 0,04478 0,145455 0,055556 C 1 1 1 1 C 0,1 0,045455 0,09904 0 D 1 1 1 1 D 0,055556 0 0,1 0,0889 1 1 1 1 0,0889 0,1 0,055556 0 Buharlaştırma ve Yerel Feromon Yükleme Sonrası Feromonlar n İyi Karıncanın İzlediği Güzergah A B C D A B C D A 0,99904 0,945455 0,9 1 A 1 B 0,9 0,94478 1,045455 0,955556 B 1 C 1 0,945455 0,99904 0,9 C 1 D 0,955556 0,9 1 0,9889 D 1 0,9889 1 0,955556 0,9 1 Mesafe: 18 Global Feromon Yükleme Sonrası Feromon Miktarları A B C D A 1,054589 0,945455 0,9 1 B 0,9 0,94478 1,045455 1,011111 C 1 0,945455 1,054589 0,9 D 1,011111 0,9 1 0,9889 0,9889 1 1,011111 0,9 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 22

2 İkinci Koloni MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017

Karınca 1 A'dan sonra ikinci şehrin seçimi AB 1,05 1,054589 0, 0,1925 0,200 0,7779 0,2609 0,2609 0,642 AC 0,95 0,945455 6 0,1667 0,0680 0,064 0,7779 0,0827 0,46 AD* 0,9 0,9 2 0,5000 0,56 0,182 0,7779 0,4090 0,7526 A 1 1 0, 0,1925 0,1925 0,7779 0,2474 1,0000 AD'den sonra üçüncü şehrin seçimi DB* 0,9 0,9 2 0,5000 0,56 0,182 0,4529 0,7025 0,7025 0,565 DC 1 1 6 0,1667 0,0680 0,0680 0,4529 0,1502 0,8528 D 0,98 0,98 6 0,1667 0,0680 0,0667 0,4529 0,1472 1,0000 ADB'den sonra dördüncü şehrin seçimi BC 0,94 0,94 5 0,2000 0,0894 0,0841 0,2785 0,019 0,019 0,6674 B* 1,01 1,01 0, 0,1925 0,1944 0,2785 0,6981 1,0000 Son şehrin seçimi C* 1,01 1,01 4 0,2500 0,1250 0,126 0,126 1,0000 1,0000 0,757 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 24

Karınca 2 B'den sonra ikinci şehrin seçimi BA 0,9 0,9 0, 0,1925 0,172 0,8218 0,2108 0,2108 0,45 BC 0,94 0,94478 5 0,2000 0,0894 0,0844 0,8218 0,1027 0,14 BD* 1,05 1,045455 2 0,5000 0,56 0,696 0,8218 0,4498 0,762 B 1,01 1,011111 0, 0,1925 0,1946 0,8218 0,268 1,0000 BD'den sonra üçüncü şehrin seçimi DA* 1,01 1,01 2 0,5000 0,56 0,571 0,4918 0,7261 0,7261 0,184 DC 1 1 6 0,1667 0,0680 0,0680 0,4918 0,18 0,8644 D 0,98 0,98 6 0,1667 0,0680 0,0667 0,4918 0,156 1,0000 BDA'dan sonra dördüncü şehrin seçimi AC 0,94 0,94 6 0,1667 0,0680 0,0640 0,2564 0,2494 0,2494 0,445 A* 1 1 0, 0,1925 0,1925 0,2564 0,7506 1,0000 Son şehrin seçimi C* 1,01 1,01 4 0,2500 0,1250 0,126 0,126 1,0000 1,0000 0,48 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 25

Karınca C'den sonra ikinci şehrin seçimi CA 1 1 6 0,1667 0,0680 0,0680 0,61 0,2025 0,2025 0,78 CB 0,94 0,94 5 0,2000 0,0894 0,0841 0,61 0,2502 0,4526 CD 1,05 1,05 6 0,1667 0,0680 0,0714 0,61 0,2126 0,6652 C* 0,9 0,9 4 0,2500 0,1250 0,1125 0,61 0,48 1,0000 C'den sonra üçüncü şehrin seçimi A* 0,98 0,98 0, 0,1925 0,1886 0,442 0,4264 0,4264 0,15 B 1 1 0, 0,1925 0,1925 0,442 0,451 0,8615 D 0,9 0,9 6 0,1667 0,0680 0,0612 0,442 0,185 1,0000 CA'dan sonra dördüncü şehrin seçimi AB 1,05 1,05 0, 0,1925 0,2021 0,520 0,884 0,884 0,64 AD* 0,9 0,9 2 0,5000 0,56 0,182 0,520 0,6116 1,0000 Son şehrin seçimi DB* 0,9 0,9 2 0,5000 0,56 0,182 0,182 1,0000 1,0000 0,564 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 26

Karınca 4 D'den sonra ikinci şehrin seçimi DA 1,01 1,011111 2 0,5000 0,56 0,575 0,8104 0,4411 0,4411 0,562 DB* 0,9 0,9 2 0,5000 0,56 0,182 0,8104 0,926 0,88 DC 1 1 6 0,1667 0,0680 0,0680 0,8104 0,0840 0,9177 D 0,98 0,98 6 0,1667 0,0680 0,0667 0,8104 0,082 1,0000 DB'den sonra üçüncü şehrin seçimi BA 0,9 0,9 0, 0,1925 0,172 0,4517 0,85 0,85 0,87 BC 0,94 0,94 5 0,2000 0,0894 0,0841 0,4517 0,1862 0,5696 B* 1,01 1,01 0, 0,1925 0,1944 0,4517 0,404 1,0000 DB'den sonra dördüncü şehrin seçimi A* 0,98 0,98 0, 0,1925 0,1886 0,149 0,5990 0,5990 0,4541 C 1,01 1,01 4 0,2500 0,1250 0,126 0,149 0,4010 1,0000 Son şehrin seçimi AC* 0,94 0,94 6 0,1667 0,0680 0,0640 0,0640 1,0000 1,0000 0,56 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 27

Karınca 5 'den sonra ikinci şehrin seçimi A* 0,99 0,9889 0, 0,1925 0,190 0,5704 0,7 0,7 0,241 B 1 1 0, 0,1925 0,1925 0,5704 0,74 0,6711 C 1,01 1,011111 4 0,2500 0,1250 0,1264 0,5704 0,2216 0,8926 D 0,9 0,9 6 0,1667 0,0680 0,0612 0,5704 0,1074 1,0000 A'dan sonra üçüncü şehrin seçimi AB 1,05 1,054589 0, 0,1925 0,200 0,5855 0,466 0,466 0,692 AC 0,95 0,945455 6 0,1667 0,0680 0,064 0,5855 0,1099 0,4565 AD* 0,9 0,9 2 0,5000 0,56 0,182 0,5855 0,545 1,0000 AD'den sonra dördüncü şehrin seçimi DB* 0,9 0,9 2 0,5000 0,56 0,182 0,862 0,828 0,828 0,542 DC 1 1 6 0,1667 0,0680 0,0680 0,862 0,1762 1,0000 Son şehrin seçimi BC* 0,94 0,94 5 0,2000 0,0894 0,0841 0,0841 1,0000 1,0000 0,89 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 28

Feromon Güncelleme* İlk İterasyon Sonrası Feromon Matrisi Yüklenecek Yerel Feromon Miktarları A B C D A B C D A 1,054589 0,945455 0,9 1 A 0 0,05 0,18824 0,0625 B 0,9 0,94478 1,045455 1,011111 B 0 0,125 0,0625 0,108824 C 1 0,945455 1,054589 0,9 C 0,058824 0,0625 0,05 0,125 D 1,011111 0,9 1 0,9889 D 0,0625 0,2824 0 0 0,9889 1 1,011111 0,9 0,175 0 0,12124 0 Buharlaştırma ve Yerel Feromon Yükleme Sonrası Feromonlar n İyi Karıncanın İzlediği Güzergah A B C D A B C D A 0,9491 0,900909 0,99824 0,9625 A 1 B 0,81 0,9741 1,00409 1,018824 B 1 C 0,958824 0,91409 0,9991 0,95 C 1 D 0,9725 1,04824 0,9 0,89004 D 1 1,06504 0,9 1,0124 0,81 1 Mesafe: 16 Global Feromon Yükleme Sonrası Feromon Miktarları A B C D A 0,9491 0,900909 0,99824 1,025 B 0,81 0,9741 1,065909 1,018824 C 0,958824 0,975909 0,9991 0,95 D 1,05 1,04824 0,9 0,89004 1,06504 0,9 1,09824 0,81 MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 29

Notlar İterasyonlar bu şekilde devam ettirilerek, belirli bir koloni sayısına ulaşılınca algoritma sonlandırılabilir ve tüm koloniler tarafından bulunan mevcut en iyi çözüm yazdırılır. Örneğin bu boyuttaki bir problem için maksimum koloni sayısı 15 olabilir. Fakat problem boyutu büyüdükçe, maksimum koloni sayısının da artırılması gerekir. Aksi halde en iyi çözüm yakalanamayabilir. Her bir koloni turunun sonucunda güncellenen feromon matrisi, bir sonraki karınca kolonisi tarafından kullanılır. Sezgisel bilgi matrisi değişmez. Algoritmanın sonuna kadar hücre değerleri aynı kalır. Yukarıdaki örnek problemin çözümüne ilişkin oluşturulmuş hesaplama tablolarına aşağıdaki linkten ulaşılabilir: http://ikucukkoc.baun.edu.tr/lectures/mm411/mm411-ws.zip MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017 0

Kaynakça Çayıroğlu, İ., Optimizasyon Teknikleri Ders Notları, Karabük Üniversitesi, http://www.ibrahimcayiroglu.com/dokumanlar/optimizasyonteknikleri/optimizasyonteknikleri- 6.Hafta-Karinca_Koloni_Algoritmasi.pdf, rişim Tarihi: 10 Kasım 2017. Keedwell,. C., Nature Inspired Computation Lecture Notes, xeter Universitesi, http://emps.exeter.ac.uk/computer-science/staff/eckeedwe M. Dorigo and T. Stützle. Ant Colony Optimization, MIT Press, Cambridge, 2004. Aydın, İ., Meta Sezgisel Yöntemler Ders Notları, Fırat Üniversitesi, http://web.firat.edu.tr/iaydin/bmu579/bmu_579_bolum6.pdf, rişim Tarihi 14 Kasım 2017. Akyol, S., Alataş, B., Güncel Sürü Zekası Optimizasyon Algoritmaları, Nevşehir Üniversitesi Fen Bilimleri nstitü Dergisi 1 (2012) 6-50. Tamer, S., Karakuzu, C., Parçacık Sürüsü Optimizasyon Algoritması ve Benzetim Örnekleri, http://www.emo.org.tr/ekler/e5d75028d92047a_ek.pdf, rişim Tarihi: 12.11.2017. ACO Website (by Dorigo), http://iridia.ulb.ac.be/~mdorigo/aco/aco.html MM411 - Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ 17/12/2017