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ü

Benzer belgeler
Karınca Koloni Algoritması 1

Karınca Koloni Algoritması 2

Zeki Optimizasyon Teknikleri

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

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

Wichita State University Libraries SOAR: Shocker Open Access Repository

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

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

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

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

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

METASEZGİSEL YÖNTEMLER

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

2. REGRESYON ANALİZİNİN TEMEL KAVRAMLARI Tanım

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

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

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

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

YÖNEYLEM ARAŞTIRMASI - III

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

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

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

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

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

Fonksiyon Minimizasyonunda Simulated Annealing Yöntemi

Zeki Optimizasyon Teknikleri

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

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

Uzaktan Algılama Teknolojileri

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

Çok katmanlı ileri sürümlü YSA da standart geri yayıyım ve momentum geri yayılım algoritmalarının karşılaştırılması. (Eğitim/Hata geri yayılım)

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Yapay Bağışık Sistemler ve Klonal Seçim. Bmü-579 Meta Sezgisel Yöntemler Yrd. Doç. Dr. İlhan AYDIN

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

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

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

Zeki Optimizasyon Teknikleri

ARAZİ ÖLÇMELERİ. Temel Ödev I: Koordinatları belirli iki nokta arasında ki yatay mesafenin

METASEZGİSEL YÖNTEMLER. Genetik Algoritmalar

HİDROLİK MAKİNALAR YENİLENEBİLİR ENERJİ KAYNAKLARI

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

Web Madenciliği (Web Mining)

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

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ENERJİ SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ ISI TRANSFERİ LABORATUARI

Bugünkü Değer Hesaplamaları

Zeki Optimizasyon Teknikleri

Aks ağırlığı hesaplamaları. Aks ağırlık hesaplamaları hakkında genel bilgiler

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA


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

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

İleri Diferansiyel Denklemler

NÜMER IK ANAL IZ. Nuri ÖZALP. Sabit Nokta ve Fonksiyonel Yineleme. Bilimsel Hesaplama Matemati¼gi

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

İleri Diferansiyel Denklemler

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

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

ALTIN ORAN ARAMA (GOLDEN SECTION SEARCH) METODU

BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi. İlhan AYDIN

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

Kompozit Malzemeler ve Mekaniği. Yrd.Doç.Dr. Akın Ataş

Fonksiyon Optimizasyonunda Genetik Algoritmalar

Bu bölümde Coulomb yasasının bir sonucu olarak ortaya çıkan Gauss yasasının kullanılmasıyla simetrili yük dağılımlarının elektrik alanlarının çok

Analog Alçak Geçiren Filtre Karakteristikleri

BLM-431 YAPAY ZEKA. Ders-5 Bilgili Arama Yöntemleri. Yrd. Doç. Dr. Ümit ATİLA

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

1D D D

İstatistik ve Olasılık

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

RÜZGAR ENERJİSİ KAYNAĞI VE BELİRSİZLİK

ALTERNATİF AKIMIN TEMEL ESASLARI

Makine Öğrenmesi 2. hafta

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

4.6. Dinamik Gerilim Kararlılığını Etkileyen Faktörler

BÖLÜM 3: TEK-ÇÖZÜM TABANLI METASEZGİSELLER. Bölüm Hedefi

Karar Destek Sistemi

Örnekleme Yöntemleri

EVREN, ÖRNEK, TEMSİLİYET. Prof. Mustafa Necmi İlhan

BİRİNCİ BASIMA ÖN SÖZ

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

Algoritma Geliştirme ve Veri Yapıları 10 Graf Veri Modeli. Mustafa Kemal Üniversitesi

MONTE CARLO BENZETİMİ

BBO Algoritmasının Optimizasyon Başarımının İncelenmesi Optimization Performance Investigation of BBO Algorithm

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

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

DİNAMİK. Ders_9. Doç.Dr. İbrahim Serkan MISIR DEÜ İnşaat Mühendisliği Bölümü. Ders notları için: GÜZ

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

BÖLÜM 12 STUDENT T DAĞILIMI

DENEY 5 TRANSİSTOR KUTUPLAMA KARARLILIK ve DC DUYARLILIk

Genel olarak test istatistikleri. Merkezi Eğilim (Yığılma) Ölçüleri Dağılım (Yayılma) Ölçüleri. olmak üzere 2 grupta incelenebilir.

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Yapay Arı Kolonisi Algoritması İle Erzincan İlinde Olası Deprem Sonrası Helikopter İle Hasar Tespiti İçin En Kısa Rotanın Belirlenmesi

K En Yakın Komşu Methodu (KNearest Neighborhood)

ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİNE GİRİŞ

YÖNEYLEM ARAŞTIRMASI - I

Selçuk Üniversitesi. Mühendislik-Mimarlık Fakültesi. Kimya Mühendisliği Bölümü. Kimya Mühendisliği Laboratuvarı. Venturimetre Deney Föyü

GENETİK ALGORİTMALARA GİRİŞ

İTKİLİ MOTORLU UÇAĞIN YATAY UÇUŞ HIZI

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

Transkript:

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ü

Karınca Koloni Algoritması Bilim adamları, böcek davranışlarını inceleyerek başarılı optimizasyon algoritmaları geliştirmişlerdir. Bu teknikler birçok bilimsel alanda ve mühendislik problemlerinde başarıyla uygulanmıştır. Teknikler, statik problemlerdeki yüksek performanslarına ilaveten, dinamik özellik gösteren problemlerde de yüksek derecede esnekliğe sahiptirler. Karınca algoritmaları ilk olarak Dorigo ve meslektaşları tarafından; gezgin satıcı problemi (GSP) ve kuadratik atama (QAP) gibi zor optimizasyon problemlerinin çözümü için geliştirilmiştir. Optimizasyon problemlerinin çözümü amacıyla karınca algoritmaları üzerine birçok çalışma devam etmektedir. Bu çalışma alanlarından bazıları, komünikasyon ağlarının belirlenmesi, grafik renklendirme, iş çizelgeleme vs.dir

Karınca Koloni Algoritması Karıncalar, yiyecek kaynaklarından yuvalarına en kısa yolu görme duyularını kullanmadan bulma yeteneğine sahiptirler. Aynı zamanda, çevredeki değişime adapte olma yetenekleri vardır. Dış etkenler sonucu takip ettikleri mevcut yol artık en kısa yol değilse, yeni en kısa yolu bulabilmektedirler. ŞEKİL 1 de de görüldüğü gibi karıncalar, başlangıçta düz bir hattı takip etmekte ve bu esnada feromon olarak adlandırılan bir maddeyi yol güzergahına bırakarak kendilerinden sonra gelen karıncaların yollarını bulmalarını kolaylaştırmaktadırlar. ŞEKİL 1. Gerçek karıncaların en kısa yolu bulması

Karınca Koloni Algoritması Önlerine bir engel konulduğunda feromonları takip edemediklerinden, karıncalar gidebilecekleri iki yoldan birini öncelikle rastsal olarak seçmektedirler. Kısa olan yoldan birim zamandaki geçiş daha fazla olacağından bırakılan feromon miktarı da daha fazla olur. Buna bağlı olarak, zaman içerisinde kısa olan yolu tercih eden karıncaların sayısında artış olur. Belli bir süre sonra tüm karıncalar kısa yolu tercih ederler. Başta rastsal hareket eden karıncaların izleri kontrol ederek yüksek olasılılıkla izlerin yoğun olduğu yönü takip etmesi otokatalitik bir davranış şeklidir ve karıncaların karşılıklı etkileşiminde sinerjik bir etki vardır. Algoritma, karınca kolonilerinden esinlenerek geliştirildiğinden sisteme, karınca sistemi (KS), algoritma ise karınca kolonileri algoritması (KKA) olarak adlandırılır. Karınca kolonileri optimizasyon problemlerinde kullanılır. Karınca sistemindeki karıncalar doğal karıncalardan farklıdır. Hafızaya sahiptirler, tamamen kör değildirler ve zamanın kesikli olduğu bir çevrede yaşarlar

KARINCA KOLONİSİ ALGORİTMASI Yapay karıncalardan oluşan Karınca Kolonisi Algoritması, yapay feromon izlerinin güncelleştirilmesiyle tekrarlanan bir yapıya sahiptir. Algoritmanın çalışma sürecinde, karıncalar tarafından güncellenen feromon izleriyle iyi bir çözümün bulunması için bilgi oluşturulmakta ve her iterasyonda bu bilgiler güncellenmektedir. Karınca kolonisi algoritmasına ait döngü ŞEKİL 2 deki gibidir.

2.1 Geçiş Kuralı KKA da bir tur esnasında, i noktasında bulunan k karıncası için, sonraki j noktasını seçerken iki alternatif yol söz konusudur. İlk alternatif, gidebileceği yollar içerisinden feromon miktarlarına bağlı olarak hesaplanan seçim değerlerinden maksimum olanını seçmesidir. Genellikle bu yolla tercih yapma olasılığı (q0) %90 olarak belirlenmektedir. İkinci alternatifte ise yollardaki feromon miktarı göz önüne alınarak oluşturulan olasılık dağılımına bağlı olarak yollar seçilir. Aşağıda bu geçiş kuralına göre i noktasında bulunan k karıncasının u adet alternatif noktadan hangisine gideceğinin belirlendiği formül görülmektedir:

2.1 Geçiş Kuralı Burada t (i,u), (i,u) hattındaki feromon izidir. h(i,u) = 1/d (i,u) i noktasından u noktasına uzaklığın tersidir. Jk (i) i noktasındaki k karıncası tarafından henüz gidilmemiş şehirleri temsil etmektedir. b (b > 0) feromonun güncellenmesinde, uzaklığın göreli önemliliğini belirleyen parametredir. q0 (0<q0< 1)çözüm uzayını araştırmanın göreli önemliliğini gösteren parametredir.

2.1 Geçiş Kuralı q<=q0 olması durumunda ise ikinci geçiş kuralı uygulanır. Bu kurala göre gidilecek bir sonraki nokta hesaplanan seçim değerlerine bağlı olarak rastsal olarak seçilmektedir. Dolayısıyla feromon miktarının daha yoğun olduğu yolların seçilme olasılığı daha fazla olacaktır. Gidilebilecek yolların seçilme olasılıkları aşağıdaki formülle hesaplanmaktadır

2.2 Feromon güncellemesi Tüm karıncalar turlarını tamamladıktan sonra feromon miktarları güncellenmektedir. İlk olarak tüm yollardaki feromonlar, belirlenen oranda (buharlaşma oranı) buharlaştırılmaktadır. Daha sonra karıncaların geçiş yapmış oldukları yollardaki feromon miktarları, o yolu kullanan karıncanın toplam yol uzunluğuyla ters orantılı olarak arttırılmaktadır. Böylelikle daha kısa yola sahip karıncaların kullandıkları yollardaki feromon miktarları daha fazla artış göstermektedir. Feromon güncellemesi iki yolla yapılabilmektedir. Bunlar Lokal feromon güncellemesi ve Global Feromon güncellemesidir.

2.2.1 Lokal Feromon Güncellemesi Tüm karıncalar turlarını tamamladıktan sonra, eski feromon miktarları belli bir oranda buharlaştırılır, her bir karıncanın turu boyunca geçiş yapmış olduğu yollarda belli bir miktarda feromon artışı sağlanır. Lk(t+1) karıncanın toplam tur uzunluğudur. Lokal feromon güncellemesi, turları dinamik olarak değiştirerek geçiş yapılan yolları cazip hale getirir. Karıncalar değişen feromon miktarlarına bağlı olarak her iterasyonda turlarını da değişmektedirler. Böylelikle sürekli olarak kısa turları bulmak amaçlanmaktadır.

2.1.2.2. Global feromon güncellemesi KKA da global feromon güncellemesi geçerli adımdaki en iyi sonuca sahip karıncanın izlediği yolun feromon düzeyinin arttırılmasından oluşur ve iterasyonlarda bulunan en iyi sonuçların belli bir oranda ileriki iterasyonalara aktarılmasını sağlar. Global feromon güncellemesi lokal e benzer. Aşağıdaki denkleme göre yapılır.

2.3 Optimum 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. GSP 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

2.4 Parametre Değerleri α değeri, ilgili yolun feromon miktarının önemini belirlemektedir. α değerinin yüksek olması feromonun yoğun olduğu yolların seçilme olasılığını arttırmaktadır. β değeri ise yol uzunluklarının, bir sonraki noktanın seçimindeki etkisini belirlemektedir. β değeri arttıkça tesadüfilik artmaktadır. ŞEKİL 3 te α ve β parametrelerinin aldığı çeşitli değerler karşısında çözümün nasıl etkilendiği gösterilmiştir

Örnek: 3.47 Teta Teta[0]=5^a*(1/6)^b=3.47 77.92 0.044 0.82 0.13 Olasılıklar 0.044 0.044 0,864 0,864 Kümülatif olasılıklar

Örnek: Gezgin satıcı şehir 1 den başlar ve şehir 3 e gelir. Burada amaç bir sonraki şehri belirlemektir. Şekilde feromon ve mesafe bilgileri verilmiştir. İlk adım sonraki gidilecek şehirleri belirlemek için teta değerlerinin belirlenmesidir. Teta hesabı için alfa=3 ve beta=2 alınmıştır. Bu iki değer global sabitlerdir. Teta değeri 1 ve 3 şehirleri için hesaplanmaz. Çünkü bu şehirler zaten trial vektöründedir. Eğer feremon değeri fazla ise teta artar. Fakat mesafe fazla ise teta azalır.

Örnek: Teta değerleri hesaplandıktan sonra olasılıklar belirlenir. Daha sonra kümülatif olasılıklar belirlenir. Şehir 1 in olasılığı 0.044 (3.47/77.92=0.044) olarak hesaplanmıştır. Diğer şehirlerin olasılığı da benzer şekilde hesaplanır. Gidilecek şehri belirlemek için roulet tekerleği belirlenmiştir. Burada [0,1] aralığında rastgele bir p değeri üretilir. P değeri kümülatif dizisinde [2] ile [3] arasında yer alır. Böylece şehir 2 bir sonraki şehir olarak seçilir.

Örnek: Algoritmanın çalışmasında kesikli (discrete) zaman (t) kullanılır. Her zaman aralığında her bir karınca bir birim yer değiştirir. Her yer değiştirmede 1 birim feromen maddesi bırakır. Başlangıçta (t=0) hiçbir yolda (kenarda) feromen maddesi yoktur

Örnek: Örnekte karıncalar 0 ile gösterilen yuvadan çıkarak 5 düğümündeki yeme engeli aşarak ulaşacaklardır. Bir müddet sonra en kısa yol 0-3-4-5 bulunacaktır. Düğümler arasındaki yol birim cinsinden şekilde verilmiştir. Başlangıçta feromon miktaları 0 dır. Her yoldan geçtiklerinde 1 birim feromon bırakırlar. Feromon eşik değeri 25 tir. Dolayısıyla bir yolun seçilmesi için karıncaların bu yolu 25 kez geçmesi gerekir. Feromonun uçuculuk değeri ihmal edilmekte ve karıncaların aynı hızda ilerlediği düşünülmektedir. Karınca sayısı 10 dur.

Örnek: Örneğin üst ve alt yolu 5 er karınca seçsin. Karıncalar her geçtiklerinde yolda 1 birim feromon bırakır. Alt yol daha kısa olduğu için bu yolu izleyen karıncalar daha önce yuvaya ulaşır. Kenardaki feromon miktarları ise [0-3] kenarı için 10 birim (5 karıncadan dolayı) [0-1] kenarı için 5 birim olacaktır. Feromon değeri 25 değerini aşınca yuvadan çıkan karıncalar bu yolu izleyerek yem e ulaşmaya çalışırlar.