• Sonuç bulunamadı

Sürekli optimizasyon problemlerinde Mısır akbabası optimizasyon algoritması

N/A
N/A
Protected

Academic year: 2021

Share "Sürekli optimizasyon problemlerinde Mısır akbabası optimizasyon algoritması"

Copied!
83
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

T.C.

SELÇUK ÜNĠVERSĠTESĠ FEN BĠLĠMLERĠ ENSTĠTÜSÜ

SÜREKLĠ OPTĠMĠZASYON

PROBLEMLERĠNDE MISIR AKBABASI OPTĠMĠZASYON ALGORĠTMASI

Ay Sh Gol ĠHSAN ALĠ

YÜKSEK LĠSANS TEZĠ

Bilgisayar Mühendisliği Anabilim Dalı

ġubat - 2019 KONYA Her Hakkı Saklıdır

(2)
(3)
(4)

iv

ÖZET

YÜKSEK LĠSANS TEZĠ

SÜREKLĠ OPTĠMĠZASYON PROBLEMLERĠNDE MISIR AKBABASI OPTĠMĠZASYON ALGORĠTMASI

Ay Sh Gol ĠHSAN ALĠ

Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Anabilim Dalı

DanıĢman: Prof. Dr. Erkan ÜLKER 2019, 73 Sayfa

Jüri

Prof. Dr. Erkan ÜLKER Dr. Öğr. Üyesi Hasan Ali AKYÜREK

Dr. Öğr. Üyesi Sait Ali UYMAZ

Bilindiği gibi deve kuşu yumurtaları oldukça büyük bir yapıya sahiptir. Her deve kuşu yumurtası yaklaşık 20 tavuk yumurtası büyüklüğündedir. Büyüklüğü dolayısı ile deve kuşu yumurtası zengin bir protein kaynağıdır. Doğada terk edilmiş deve kuşu yumurtasını gören tüm hayvanlar hayatta kalabilmek için bu yumurtanın kabuğunu kırıp zengin besin kaynağına ulaşmaya çalışır. Çakallar, kurtlar ve kuşlar için deve kuşu yumurtasının kabuğunu kırma görevi oldukça zordur. Mısır Akbabası (MA) kuşu üstün zekâ ve becerisi ile bu zorlu görevin üstesinden kolayca gelmektedir. Bunun gibi, Mısır Akbabasının yaşam tarzı ve hayatta kalabilmek için sergilediği davranışlar pek çok bilim insanın dikkatini çekmiştir. MA kuşunun bu özelliğinden esinlenerek davranış tarzı bilim insanları tarafından modellenmiş ve Mısır Akbabası Optimizasyon Algoritması (MAOA) önerilmiştir. MAOA orijinalinde ayrık problemlerin çözümü için üretilmiş bir algoritmadır. Bu tez çalışmasında, önce MAOA’nın ayrık problemlerde başarısı incelenmiştir. MAOA’nın çoğunlukla yerel optimuma takılması ve performansının kötü olması sebebi ile iyileştirilmesi gerektiği görülmüş ve ayrık problemlerin çözümünde daha iyi performans sergileyen geliştirilmiş bir MAOA (GMAOA) önerilmiştir. Sürekli optimizasyon problemlerinin MAOA ile çözümü literatürde ilk kez bu tez kapsamında çalışılmış ve performans analizi yapılmıştır. Sürekli optimizasyon problemlerinde MAOA’nın performans sonuçları incelemiş, MAOA sonuçlarının optimum değerden uzak olduğu görülerek MAOA’nın iyileştirilmesi hedeflenmiş ve sürekli problemler için yeni bir GMAOA önerilmiştir. Yeni geliştirilen algoritmalar, ayrık optimizasyon problemleri olan Gezgin Satıcı Problemi (GSP) ve Sırt Çantası Problemi (SÇP) üzerinde, sürekli optimizasyon problemleri olan ve iyi bilinen Kısıtsız Optimizasyon Test Problemleri (KOTP) ile test edilmiştir. Optimizasyon problemleri ile elde edilen orijinal MAOA sonuçları ve GMAOA sonuçları hem birbirleriyle hem de literatürden seçilen sezgisel algoritmalar ile karşılaştırılarak performans analizleri yapılmış ve önerilen yöntemlerin başarısı gösterilmiştir.

Anahtar Kelimeler: Mısır Akbabası Optimizasyon Algoritması, Sezgisel Yöntemler, Sürekli

(5)

v

ABSTRACT

MS THESIS

THE EGYPTIAN VULTURE OPTIMIZATION ALGORITHM IN CONTINUOUS OPTIMIZATION PROBLEMS

Ay Sh Gol IHSAN ALI

THE GRADUATE SCHOOL OF NATURAL AND APPLIED SCIENCE OF SELÇUK UNIVERSITY

THE DEGREE OF MASTER OF SCIENCE IN COMPUTER ENGINEERING Advisor: Prof. Dr. Erkan ULKER

2019, 73 Pages Jury

Prof. Dr. Erkan ULKER

Assist. Prof. Dr. Hasan Ali AKYUREK Assist. Prof. Dr. Sait Ali UYMAZ

The ostrich egg has a very large size. Each the ostrich egg is about 20 chicken eggs. Ostriches leaves the ostrich egg in nature and continues to live. Due to its size, ostrich eggs are a rich source of protein. All the animals that saw the abandoned ostrich egg in nature try to break the ostrich eggs shell and reach the rich food source in order to survive. For coyotes, wolves and birds, the task of breaking the ostrich eggs shell is quite difficult. In the nature, only EV can overcome this challenging task with superior intelligence and skill. The life style of Egyptian Vulture (EV) and the behaviors that it exhibited to survive attracted the attention of many scientists. EV the way of behavior is modeled by scientists and the Egyptian Vulture Optimization Algorithm (EVOA) has been proposed. In the literature EVOA is an algorithm for discrete problems. In this thesis, the success of EVOA in discrete problems was investigated but higher than optimum values were obtained. EVOA is improved and this developmented algorithm performs better in the discrete problems. The solution of continuous optimization problems with EVOA has been studied in this thesis for the first time in the literature and performance analysis has been performed. EVOA performance results were examined but the result was that the results of EVOA were far from the optimum value. EVOA is improved and this developmented algorithm performs better in the continous problems. The success of algorithms were examined with the Travelling Salesman Problem (TSP) and Knapsack Problem (KP). After, EVOA has been tested with Benchmark Optimization Test Problem (BOTP). Performance analysis of the original EVOA results and performance analysis of the improved EVOA results were compared and the success of the proposed methods was shown. The performance of EVOA was compared with other heuristic algorithms and the success of the proposed methods was shown.

Keywords: Artificial Intelligence, Continuous Algorithm, Egyptian Vulture Optimization Algorithm,

(6)

vi

ÖNSÖZ

Algoritmanın konusu, deneysel çalışmaların yönlendirilmesi, sonuçların değerlendirilmesi ve yazım aşamasında yapmış olduğu önemli katkılarından dolayı tez danışmanım Prof. Dr. Erkan ÜLKER'e sonsuz teşekkürlerimi sunarım.

Hayatım boyunca sevgi ve ilgilerini üzerimden hiç eksik etmeyen beni her konuda destekleyen ve yüreklendiren anneme ve babama minnetlerimi sunarım.

Ay Sh Gol İHSAN ALİ KONYA - 2019

(7)

vii ĠÇĠNDEKĠLER ÖZET ... iv ABSTRACT ... v ÖNSÖZ ... vi ĠÇĠNDEKĠLER ... vii SĠMGELER VE KISALTMALAR ... ix 1. GĠRĠġ ... 1 2. KAYNAK ARAġTIRMASI ... 3 3. MATERYAL VE YÖNTEM ... 6

3.1. Kullanılan Veri Setleri ... 6

3.1.1. Gezgin satıcı problemi ... 6

3.1.2. Sırt çantası problemi ... 7

3.1.3 Sürekli Kısıtsız Optimizasyon Test Problemleri ... 8

4. MAOA’DA KULLANILAN KIYASLAMA ALGORĠTMALARI ... 9

4.1 Parçacık Sürü Optimizasyonu ... 9

4.2 Genetik Algoritması ... 10

4.3 Karınca Koloni Optimizasyonu ... 10

4.4 Fibonacci Gösterge Algoritması ... 11

5. ORĠJĠNAL MISIR AKBABA OPTĠMĠZASYON ALGORĠTMASI ... 12

5.1 Çakıl Fırlatma ve Çatlak Noktayı Bulma ... 12

5.2. Yuvarlama İşlemi ... 13

5.3. Açı Değiştirme İşlemi ... 14

5.4. Durma Ya Da Devam Kararı ... 15

6..AYRIK PROBLEMLER ĠÇĠN GELĠġTĠRĠLMĠġ MISIR AKBABA OPTĠMĠZASYON ALGORĠTMASI ... 16

6.1. MAOA En Yakın Komşu veya En Uzak Komşu İşlemi ... 16

6.1.1. MAOA En Yakın Komşu Yapısı ... 17

6.1.2. MAO Algoritmasında En Uzak Komşu Yapısı ... 18

7. SÜREKLĠ PROBLEMLERĠN ÇÖZÜMÜNDE MAOA KULLANIMI ... 20

7.1. Parametre Değerlerinin Girilmesi ... 20

7.2. Çakıl Taşı Fırlatma Ve Çatlak Nokta Bulma İşlemi ... 21

7.3. Yuvarlama İşlemi ... 22

7.4. Açı Değiştirme İşlemi ... 23

7.5. MAO Algoritmasında En Yakın Komşu Veya En Uzak Komşu İşlemi ... 24

(8)

viii

8..SÜREKLĠ PROBLEMLERDE MAOA’NIN ĠYĠLEġTĠRĠLMESĠ VE

GELĠġTĠRĠLMESĠ ... 26

8.1. Bellek Oluşturulması ve Güncellenmesi İşlemi ... 26

8.2. Mutasyon işlemi ... 28

9. ARAġTIRMA SONUÇLARI VE TARTIġMA ... 29

9.1. Gezgin Satıcı Problemi Üzerinde Performans Testleri ... 29

9.2. Sırt Çantası Problemi Üzerinde Performans Testleri ... 39

9.3. Sürekli Kısıtsız Optimizasyon Problemleri Üzerinde Performans Testleri ... 43

10. SONUÇ ... 59

KAYNAKLAR ... 70

ÖZGEÇMĠġ ... 73

(9)

ix

SĠMGELER VE KISALTMALAR Simgeler

k Şehir Sayısı

p Nesne Değeri

f Çantanın En Fazla Taşıma Kapasitesi

q Nesne

M Çantanın Kazanç Değeri

w Nesne Ağırlık Değeri

d Kısıtsız Optimizasyon Test Probleminin Boyutu

Parçacık İçindeki Noktanın Yinelenmesi

Parçacığın Pozisyonu

Parçacık Hızı

r Rastgele Sayılar

Kısaltmalar

MA Mısır Akbabası

MAOA Mısır Akbabası Optimizasyon Algoritması

GMOA Gelişmiş Mısır Akbaba Optimizasyon Algoritması

GSP Gezgin Satıcı Problemi

SÇP Sırt Çantası Problemi

KOTP Kısıtsız Optimizasyon Test Problemi

EV Egyptian Vulture

EVOA Egyptian Vulture Optimization Algorithm

TSP Travelling Salesman Problem

KP Knapsack Problem

BOTP Benchmark Optimization Test Problem

SG Savurma Gücü

ÇB Çakıl Boyutu

YD Yuvarlama Derecesi

YY Yuvarlama Yönü

PB Popülasyon Büyüklüğü

ADO Açı Değiştirme Oranı

RO Rastgelelik Oranı

MO Mutasyon Oranı

MB Mutasyon Biti

PSO Parçacık Sürü Optimizasyon

KKO Karınca Koloni Optimizasyonu

GA Genetik Algoritması

FGA Fibonacci Gösterge Algoritması

Mak Maksimum Değer

Min Minimum Değer

Ort Ortalama Değer

Byt Boyut

GSP Gezgin Satıcı Problemi Kütüphanesi

Gbest Genel En İyi (Global Best)

Pbesti Yerel En İyi (Local Best)

(10)

x

NP Nondeterministic Polynomial (Belirleyici Olmayan Polinom)

Örn Örnek

N Popülasyon Büyüklüğü

TSPLIB Travelling Salesman Problem Library (Gezgin Satıcı Problem Kütüphanesi)

(11)

1. GĠRĠġ

Tüm canlılar hayatta kalabilmek için doğadan besin bulma çabası içine girmektedirler. Hayvanlar doğada dolaşarak kendilerini uzun süre tok tutabilecek besini aramaktadırlar. Mısır Akbabası (MA) kuşu da hayatta kalabilme savaşı veren canlılardan biridir.

MA, başı siyah ve vücudu beyaz renge sahip olan, küçük cüsseli bir hayvandır. Türkiye'de ve Avrupa’da en çok görülen akbaba türüdür. MA’lar, bazı kültürler tarafından uğursuzluk getirdiğine inanılarak öldürülebilmektedir. Bu sebeple pek çok örgüt ve hayvan severler tarafından koruma altına alınmaya çalışılmıştır.

MA küçük cüssesine rağmen zekâ ve becerileri ile bilim insanlarını kendisine hayran bırakmıştır. Deve kuşları yumurtalarını düz ve kurak arazilere terk ederek hayatlarına devam etmektedirler. Her bir deve kuşu yumurtası yaklaşık bir kilogram ağırlığındadır. Deve kuşu yumurtası yiyen bir canlı, üç ya da dört günlük protein ihtiyacını bu gıdadan karşılayabilmektedir. Bu nedenle doğada hayatta kalma savaşı veren canlılar için deve kuşu yumurtaları oldukça iyi bir besin kaynağıdır (Sur ve ark., 2013a).

Doğada deve kuşu yumurtası bulan canlılar, yumurtayı kırarak besine ulaşmaya çalışırlar fakat bu eylem yumurtanın büyük olması sebebi ile oldukça zordur. Çakallar, kurtlar ve diğer canlılar deve kuşu yumurtalarını pençeleri ve ağızları ile kırmaya çalışmış fakat başarılı olamamışlardır. Deve kuşu yumurtasını sadece MA üstün zekâ ve becerisi ile kırabilmekte ve bu sayede tüketebilmektedir (Sur ve ark., 2013b).

MA, doğada bulduğu deve kuşu yumurtasını yine doğada bulduğu bir taş ile kırmayı başarmıştır. MA kuşu bu eylemi yaparken farklı davranışlar sergilemiştir. Yumurtaya taşı fırlatmış, yumurta kırılmayınca aynı noktayı hedefleyerek taşı tekrar fırlatılmıştır. Bu işlemi birkaç kez tekrarlamış ama yine de besine ulaşılamamışsa bu kez açısını değiştirerek tekrar farklı açıdan denemelerine devam etmiştir. Bu işlemler sonrasında deve kuşu yumurtasının kabuğu kırılarak hedeflenen besine ulaşılmıştır.

MA’nın besine ulaşmak için sergilemiş olduğu davranışlardan esinlenilerek gerçek problemlere çözümler elde edilmeye çalışılmış ve Mısır Akbabası

(12)

Optimizasyon Algoritması (MAOA) önerilmiştir. İlk önerildiği çalışmada Gezgin satıcı probleminde tek amaçlı olarak çalışılmıştır (Sur ve ark., 2013b).

Tez çalışmasında önce MA’nın davranış modelini temsil eden MAOA’nın performansı incelenmiştir. Performansını düşüren etkenlere odaklanılarak ayrık problemler özelinde geliştirilmiş bir MAOA ortaya konulmuştur. Sürekli optimizasyon problemlerinin çözümü için MAOA’nın literatürde çalışılmadığı tespit edildikten sonra, orijinal MAOA sürekli optimizasyon problemlerinin çözümünde kullanılmak üzere yeniden şekillendirilmiştir. Performans testleri yapıldıktan sonra, önerilen algoritmanın geliştirilmiş versiyonu da tez kapsamında ortaya konulmuştur.

Tezin organizasyonu şöyledir. Sonraki bölümde MAOA üzerinde yapılmış kaynak araştırması sunulmuştur. Daha sonra tezde kullanılan materyal ve yöntemlerden bahsedilmiştir. Önerilen algoritmaların çalışma şekilleri ve akış yapıları verildikten sonra yapılan testlere yer verilmiştir. Nihayetinde önerilen algoritmalar ve MAOA hakkında yorumlamalar yapılarak tez dokümanı sonlandırılmıştır.

(13)

2. KAYNAK ARAġTIRMASI

Mısır Akbabası, doğada en zeki kuş olarak kabul edilmiştir. Bu kuşun yaptığı davranışlardan esinlenerek yeni bir doğa esinli algoritma olan Mısır Akbabası Optimizasyonu Algoritması (MAOA) Sur ve ark. (2013a) tarafından önerilmiştir. Çalışmada, Mısır Akbabasının yiyecek elde etmek için yaptığı davranış ve temel becerilerinden esinlenilmiştir. Sunulan çalışmada MAOA, Sırt Çantası Probleminde (SÇP) çalışılarak ele alınmıştır (Sur ve ark., 2013a).

Sur ve ark. (2013b)nın 2013 yılında yaptığı başka bir çalışmada ise MAOA kullanarak Gezgin Satıcı Problemi çözülmüştür. GSP kütüphanesinden veri kümeleri kullanılarak problemlerin çözümleri örneklerle gösterilmiştir (Sur ve ark., 2013b).

Sur ve ark. (2014) tarafından yapılan başka bir çalışmada, MAOA ile Karayolu Trafik Yönetim planlaması yapılmıştır. Çalışmada, MAOA’nın matematiksel modelleme adımları gösterilmiştir. Yol ağı sorunu Gezgin Satıcı Problemi (GSP) üzerinde çalışılmıştır. Grafik yol tabanları için rota planlamasının nasıl uygulanabileceği incelenmiştir. Uzaklığa bağlı olarak yol ve bekleme süresi değerleri algoritma ile hesaplanmıştır. Algoritma ile bulunan yol ağı sonuçlarının, Karınca Koloni Optimizasyon Algoritması ve Akıllı Su Damlaları ile sonuçların karşılaştırılması yapılmıştır (Sur ve ark., 2014).

Kumar ve ark. (2016), Araç rotalama için MAOA’nın uyarlanmasını yaparak, araç yönlendirme problemini MAOA ile çözmüşlerdir. Makalede, MAOA için birkaç uygulama yapılmış ve başarısı kanıtlanmıştır (Kumar ve ark., 2016).

Ekonomik ve Emisyon Bildirimi İçin Bouzeboudja ve ark. (2013) tarafından yapılan çalışmada MAOA nın kullanımı, maliyet ve diğer parametrelerin azaltılması, emisyonlar, kayıplar ve çevre dengesi açılarından incelemiştir. Arama yapılarak, doğayı simüle etmek için birçok süreçte MAOA kullanılmıştır (Naama ve ark., 2013).

MAOA’nın başka bir ayrık problem olan Sırt Çantası Problemi (SÇP) üzerinde kullanımı amacıyla Doğada Algılanan Algoritmalarda Ayrık Problemler adlı bir çalışma Shukla ve ark. (2017) tarafından yapılmıştır. Makalede, ayrık problem olan SÇP’de MAOA kullanılmıştır (Shukla ve ark., 2017).

(14)

Mısır Akbabasının alışkanlıklarına göre ayarlanan Oransal İntegral Türevi ile Kontrol Cihazı Parametrelerinin Optimizasyonu Issa ve ark. (2017) tarafından yayımlanmıştır. Makalede MAOA, Türev parametrelerini ayarlamak için kullanılmıştır. İntegral kare gibi geçici tepki kriterlerinde hata oranını en aza indirerek Ziegler-Nichols yöntemi kullanılmıştır. MAOA ile de aynı işlemler yapılmış ve sonuçta MAOA’nın Ziegler-Nichols yönteminden daha iyi performans elde ettiği kanıtlanmıştır (Issa ve ark., 2017).

Fister ve ark. (2013), Doğanın Kısa Bir İncelemesi - Optimizasyon İçin İlham Verici Algoritmalar isimli çalışmasında, doğadan ilham alınan birçok algoritmalarla birlikte MAOA da incelenmiştir. Yapılan çalışmalara göre algoritmalar Sürü Zekası Temelli Algoritmalar ve Biyo-Esinli Algoritmaları olmak üzere iki sınıfa ayrılmıştır. MAOA ise Biyo-Esinli Algoritma olarak sınıflandırılmıştır (Fister Jr ve ark., 2013).

Ateşböceği Optimizasyon Algoritması ve MAOA’nın modifiyesi ile Üretim Hücresi Tasarım probleminin çözümü için Almonacid ve ark. (2017) tarafından yapılan çalışmada, parçaların hareketlerini en aza indirmek amaçlanmıştır. Yapılan testlerde MAOA kullanılmış ve diğer metotlarla kıyaslamalar yapılmıştır (Almonacid ve ark., 2016).

Orijinal MAOA’nın performans düşüklüğü görülerek, en yakın ve en uzak komşu yapılarının eklendiği bir algoritmik yapı ile Mısır Akbabası Optimizasyonunun Geliştirilmesi tez yazarı Ali ve ark. 2017tarafından gerçekleştirilmiştir. MAOA’na en yakın veya en uzak komşu yapısı eklenmiş, GSP problemi üzerinde testleri yapılmış ve orijinal MAOA’nın performans artırımı gerçekleştirilmiştir (Ali ve ark., 2017).

Hareket Halindeki Çöpçülerin Yıllık Aramalarının Araştırılması üzerine bir çalışma López ve ark. (2017) tarafından yapılmıştır. Optimal yiyecek arama teorisi, hayvanların arama stratejilerini optimize ederek gıda kaynakları bulma başarısını en üst düzeye çıkaracaklarını öngörmektedir. Bu çalışmada MA’da incelenerek değerlendirmelerde bulunulmuştur (López-López ve ark., 2013).

(15)

Yadav ve ark. (2017) tarafından yapılan bir çalışmada ise doğadan esinlenilen algoritmaların incelenmesi yapılarak, doğadan esinlenmiş meta-sezgisel algoritmaların bir analizi yapılmıştır. Makalede, MAOA ve birçok optimizasyon algoritmaları incelenmiş ve MAOA detaylarıyla anlatılmıştır (Yadav ve ark., 2017).

Yapılan kaynak araştırmalarında MAOA’nın farklı ayrık problemlerde uygulamaları üzerine kısıtlı sayıda çalışmalara rastlanmıştır. Bu çalışmalarda çoğunlukla MAOA, önerildiği orijinal hali ile kullanılmıştır. Literatürde, sürekli optimizasyon problemlerinin çözümü üzerine herhangi bir çalışma görülememiştir.

(16)

3. MATERYAL VE YÖNTEM

Orijinal Mısır Akbabası Optimizasyon Algoritması (MAOA), Gezgin Satıcı Probleminde Sur ve ark. (2013b) tarafından ve Sırt Çantası Probleminde (2013a) ayrık olarak çalışılmıştır. Tezin bu bölümünde tez kapsamında kullanılan veri setleri ile başlanarak, algoritmanın detayları, yapılan öneriler ve geliştirilmiş versiyonları hakkında bilgilendirmeler sunulmuştur.

3.1. Kullanılan Veri Setleri 3.1.1. Gezgin satıcı problemi

Gezgin Satıcı Problemi (GSP), NP-Zor bir problem türüdür. Temel olarak problemin amacı, bir satıcının k tane şehri ya da durağı en kısa yoldan gezmesini sağlamaktır. Bu problemin çözümü için çeşitli algoritmalar geliştirilmiş ve en iyi sonuca ulaşılmaya çalışılmıştır (Schrijver, 2005). Gezgin satıcı problemi, sezgisel optimizasyon metotlarının en iyiye yaklaşma politikaları için test aracı haline gelmiştir (Lenstra ve ark., 1979).

Gezgin satıcı problemi çözümü en zor problemlerden biridir. Nedeni ise, en iyi turu bulabilmek için tüm turların eksiksiz gözden geçirilmesinin yoğun işlem yükü getirmesidir. Bir tur, k adet şehir olduğu için k! kadar olası yol vardır, ancak yozlaşmalar (dejenerasyon) yüzünden iki birbirinden farklı çözümlerin sayısı, k!’den azdır. Burada, birbirinden farklının anlamı toplam tur mesafelerinin birbirinden farklı olmasıdır. Verilen bir tur için k şehrin hangisinden tura başlanacağı, toplam kat edilecek mesafe bazında, sonuca etki etmez. Bu yozlaşma birbirinden farklı toplam tur sayısını k kadar bir faktörle azaltır. Benzer şekilde, verilen bir tur için, satıcının iki yönden hangisine doğru hareket ettiğinin de bir önemi yoktur. Bu da birbirinden farklı toplam tur miktarını 2 faktörü ile biraz daha azaltır. Böylece, k-şehirli bir tur için göz önüne alınacak k! / 2k kadar farklı toplam tur vardır. 5 şehirli bir problem için 120 / 10 = 12 farklı tur vardır. Bu da bilgisayar ile çözümü kısa sürecek bir problemdir. Ancak 10 şehirli bir problem, 3628800 / 20 = 181440 farklı tura; 30 şehirli bir problem ise 4x ’dan daha fazla olası farklı tura sahiptir. Şehir sayısı arttıkça çözüm uzayı katlanarak artmaktadır (Özkan, 2010).

(17)

( ) ( ) (3.1)

Herhangi bir GSP’nin kesin çözümü için, sayım tekniği kullanılmak zorundadır. Sezgisel yöntemler çözüm uzayının çok büyük olması ve arama sürecinde yerel optimuma takılmalarından dolayı, her zaman kesin çözüme ulaşamamaktadırlar. Ancak küçük ölçekli GSP’nin çözümünde tam sonuca ulaşıldığı görülmüştür. Sayım tekniği ise her olasılığı denediği için kesin sonuca ulaşmaktadır ama çözüm zamanı sezgisel yöntemlere göre çok uzun sürmektedir. Çeşitli üniversitelerde yapılan çalışmalarla sayım tekniği yöntemi kullanılmakta, çözümler süper bilgisayarlardan oluşan ağlarda yapılmaktadır. Hesaplanan en iyi çözümler sezgisel yöntemlerle kıyaslanmaktadır (Özsağlam, 2009).

3.1.2. Sırt çantası problemi

Sırt çantası problemi (SÇP) mevcut verilerden en yüksek verimi almayı amaçlayan algoritma olarak pek çok problemlerde kullanılmaktadır. Örnek ile anlatacak olursak, hırsız girdiği bir evden sırt çantasına yükte hafif, değerde pahalı eşyaları bularak belirli kapasitedeki sırt çantasını doldurmaya çalışmaktadır. Çözülmeye çalışılan problemlerde her eşyanın bir değeri ve ağırlığı vardır.

SÇP’nin 0-1 Torba yönteminde eşyaların ağırlıklarına ve çantanın kapasitesine bakılmaktadır. Eşyaların tamamı çantaya sığıyorsa, eşyaların tamamı çantanın içine alınabilmektedir. Aksi takdirde ise eşyanın bir kısmını alıp bir kısmını bırakmak bu yöntem için mümkün olmamaktadır. SÇP’de nesne q, nesne ağırlık değeri wi > 0,

nesne değeri pi > 0, çantanın kazanç değeri M parametreleri kullanılır.

(3.2)

(3.3)

(18)

0 ≤ xi ≤1, 1 ≤ xi ≤ q xi değeri, 0 veya 1 olabilmektedir. 0 olması durumunda i

elemanından alınmıyor, 1 olduğunda ise i elemanının tamamı alınıyor demektir (Balas ve ark., 1980).

3.1.3 Sürekli Kısıtsız Optimizasyon Test Problemleri

Standart algoritmadaki değişikliğin, algoritmanın performansına etkisini test etmek için Kısıtsız Optimizasyon Test Problemleri (KOTP) seçilmiştir. Literatürde geliştirilen algoritmaların performansını test etmede kullanılan bu problemler, Surjanovic ve Bingham (2017) tarafından aktarılmıştır. İlgili fonksiyonların detayları ilerleyen bölümlerde verildiği için burada kısaca bahsedilmiştir (Surjanovic ve ark., 2017).

(19)

4. MAOA’DA KULLANILAN KIYASLAMA ALGORĠTMALARI

MAOA’nın performansını kıyaslamak için literatürden farklı algoritmalar incelenmiştir. Bu algoritmalar ise Parçacık Sürü Optimizasyon (PSO) Algoritması, Genetik Algoritma (GA), Karınca Koloni Algoritması (KKA) ve Fibonacci Gösterge Algoritmasıdır (FGA). Algoritmaların detayları aşağıdaki bölümlerde verilmiştir.

4.1 Parçacık Sürü Optimizasyonu

İnsanların konuşarak iletişim kurmaları gibi kuşlar ve balıklarda birbirleri ile iletişim kurabilmektedirler. Bu iletişimi esas alan Parçacık Sürü Optimizasyonu (PSO) algoritması, kuşların yön tayininden ve balık sürülerinin sosyal davranışlarından esinlenmiştir. PSO’da popülasyonu oluşturan bireylere parçacık denir. Bu parçaların her biri hareketli olarak kabul edilir. Bu parçacıklar, potansiyel çözümü taşımaktadır. Her parça en iyi durumunu hatırlama özelliğine sahiptir ve bu parçacıklar bilgi alışverişinde bulunabilmektedirler. Problem parametreleri, istenen problem için parçacıkların boyutlarını belirtir. İlk başta, parçacıklar belirtilen aralıktaki arama alanında tamamen rastgele dağıtılır. Her parçacığın hareketi, hedef fonksiyona göre yinelenmektedir. Parçacık pozisyonları Denklem 4.1 ve 4.2’e göre güncellenir.

( ) ( ) (4.1)

(4.2)

ifadesi, parçacık içindeki noktanın yinelenmesini göstermektedir. parçacığın pozisyonunu belirlemektedir yenilenir ve parçacıkların hız vektörünün olduğunu gösterir. f1 ve f2, en iyi parçacık çözümünü (PBesti) ve en iyi

sistem çözümünü (GBest) hız vektörü üzerindeki etkisini belirler.

r1 ve r2, [0-1] aralığında rasgele sayılardır. (Kennedy ve Eberhart, 1995). Algoritma,

yineleme sayısına ulaşmak veya hedeflenen hata değerlerine ulaşmak için çalışır (Yan ve ark., 2012).

(20)

4.2 Genetik Algoritması

Doğada gözlemlenen evrimsel sürece benzer bir şekilde çalışan bir optimizasyon yöntemidir. Karmaşık, çok boyutlu arama uzayında en iyinin hayatta kalması ilkesine göre küresel çözümü arar. (Goldberg, 1999)

Genetik algoritmalarda Çaprazlama ve Mutasyon olarak bilinen iki adet temel genetik işlemci vardır. Çaprazlama için popülâsyondan iki adet birey seçilir. Bu bireylerde çaprazlanacak nokta belirlenir ve bu noktadan itibaren bireylerin elemanları karşılıklı olarak yer değiştirilir. Böylece iki adet yeni birey elde edilir. Mutasyon işlemcisi ile bireylerin genleri değiştirilir. Bu değişim popülasyonun genel olarak %1-%5 ini kapsamaktadır. Mutasyon popülasyonda çeşitliliğe neden olur ve problem sonucunun yerel çözümlere takılmasını önler.

Çaprazlama operatörü, genetik algoritmanın performansını etkileyen önemli parametrelerinden biri olarak karşımıza gelmektedir. Çaprazlama, ana bireyde seçili genler üzerinde işlem yaparak yeni yavrular oluşturur. Bunun en basit şekli, rasgele bir kesme noktası (çaprazlama noktası) seçip, bu noktadan önceki her şeyi ilk atadan, sonraki her şeyi ikinci atadan alıp birleştirerek yavruyu oluşturmaktır (Fığlalı ve ark., 2002).

4.3 Karınca Koloni Optimizasyonu

Temel ilkeleri ilk kez MarcoDorigo tarafından ortaya atılmış olan Karınca Koloni Optimizasyonu, karınca kolonilerinin feromon salgılayarak yiyecek kaynakları ile yuvaları arasındaki en kısa yolu bulma yöntemlerinden esinlenerek oluşturulmuş bir tekniktir (Demircioğlu, 2009).

Karıncalar yiyecek ararken çevrelerini rastgele şekilde araştırırlar (Mahi ve ark., 2015). Karıncalardan biri yiyecek kaynağı bulduğunda bu kaynağı kalite ve miktar açısından değerlendirir ve bir miktarını yuvasına taşır. Karınca yuvasına geri dönüş yolunda yol güzergâhına kimyasal feromon izleri adı verilen bir madde bırakır. Bırakılan feromon miktarı karıncanın bulduğu yiyecek miktarı ve kalitesiyle ilişkilidir. Yola bırakılan bu feromon izleri diğer karıncaların bu yiyecek kaynağına ulaşabilmesi için yol gösterir. Bu feromon izleriyle karıncalar arasındaki dolaylı ilişki karıncaların yuvalarıyla yiyecek kaynağı arasındaki en kısa yolu bulmalarına yardımcı olur.

(21)

Karınca Koloni Optimizasyonun asıl kaynağı gerçek karıncaların yiyecek arama hareketidir (Serin, 2009).

4.4 Fibonacci Gösterge Algoritması

Fibonacci, fibonacci rakamları ile ortaya çıkan İtalyan bir matematikçidir. Tüm zaman aralıklarına uygulanabildiği için teknik analizlerde kullanılmaktadır. Fibonacci analizindeki temel mantık, doğanın düzeninde görülen matematiksel yapının, finans piyasalarında da geçerli olduğudur. Fibonacci göstergesi borsada tüccarlar arasında kullanılan popüler cihazdan biridir. Fibonacci göstergesi, maksimum, minimum fiyatları ve bir hisse senedinin fiyatının hangi periyotlarda olacağını tahmin etmek için kullanılmaktadır. Fibonacci Gösterge Algoritması (FGA) ise Fibonacci göstergesinden ilham alınan yeni bir meta-sezgisel algoritmadır (Etminaniesfahani ve ark., 2018).

(22)

5. ORĠJĠNAL MISIR AKBABA OPTĠMĠZASYON ALGORĠTMASI

MA, besin bulmada sergilediği becerileri ve zekâsı ile farklı algoritmalara ilham vermiş ve problemlerin çözümü için kullanılmaya başlanmıştır. Mısır Akbabası Optimizasyon Algoritması (MAOA) ilk defa önerildiğinde GSP üzerinde anlatıldığı için bu başlıkta, MAOA GSP temelinde anlatılacaktır (Sur ve ark., 2013b). MAOA’nın çalışma prensibi ana hatlarıyla Şekil 5.1.’deki gibidir;

E H

ġekil 5.1. Orijinal MAOA’nın akış şeması.

5.1 Çakıl Fırlatma ve Çatlak Noktayı Bulma

MA kuşu ve diğer canlılar için doğada terk edilmiş vaziyette olan deve kuşu yumurtalarını kırmak oldukça zordur. MA deve kuşu yumurtasını kırmaya çalışırken önemli iki davranış sergiler. Bunlardan ilki yumurtayı kırmak için doğadan çakıl taşı arar, bulur ve deve kuşu yumurtasının yanına gagası ile taşıyarak getirir. İkinci önemli davranışı ise gagası ile çakıl taşını fırlatma işlemidir. Yumurtaya ilk kez çakıl taşını fırlatırken rastgele bir şekilde fırlatır, yumurta kırılmamış ise birkaç kez daha aynı işlemi tekrarlar ve yumurtanın kabuğunu kırarak başarı ile besine ulaşır.

Algoritmadaki Savurma Gücü (SG) ve Çakıl Boyutu (ÇB) parametreleri yapılacak aksiyonu belirtmektedir. Her iki parametrede sayısaldır (doğal sayı). SG = 0

Durma Kararı

Çakıl Fırlatma ve Çatlak Noktayı Bulma İşlemi

Yuvalama İşlemi

Açı Değiştirme İşlemi

Bitiş Başlangıç

(23)

ve ÇB = 0 ise hiçbir işlem yapılmazken SG ≥ 1 olduğunda silme, ÇB ≥1 olduğunda ise ekleme işlemi yapılmaktadır. SG ve ÇB parametreleri probleme özgü olarak farklı amaçlarla kullanılabilmektedir. Önerilmiş orijinal MAOA da ise SG ve ÇB parametrelerine 1 ve 0 olarak değer atanmaktadır. Bu sebeple SG ve ÇB parametreleri kullanılmaya devam edilmiştir.

Örnek olarak GSP için bu aşamanın nasıl yapıldığı belirtilebilir. GSP’de muhtemel gezilecek şehir sırasının (6, 2, 10, 8, 3, 7, 1, 5, 9) olduğunu kabul edelim (Şekil 5.2. (B)). Bu şehir sırası MAOA’da deve kuşu yumurtasının verileri olarak kabul edilmektedir. 18 ve 30 nolu şehirler sırası ise çakıl taşının verileri olarak kabul edilmiştir (Şekil 5.2. (A)). ÇB ≥ 1 olasılığında çakıl taşı yumurtaya atıldığında veri setinin yeni hali (6, 2, 10, 8, 3, 7, 18, 30, 1, 5, 9) olarak değişmiştir (Şekil 5.2. (C)). Eğer MA kuşu deve kuşu yumurtasındaki çatlak noktayı çıkarmak isterse yani SG ≥ 1 durumunda (6, 2, 10, 8, 3, 5, 9) olarak yeni veri seti oluşturabilmektedir (Şekil 5.2. (D)).

(Çakıl Taşı (A))

(Sağlam Yumurta (B))

(Çatlak Yumurta (C))

(Yumurtanın Farklı Açısı (D))

ġekil 5.2. Çakıl fırlatma ve çatlak noktayı bulma.

5.2. Yuvarlama ĠĢlemi

MA, deve kuşu yumurtasına taş fırlattıktan sonra çatlak noktayı bulma kabiliyetine de sahiptir. Deve kuşu yumurtası kırılmamış ise yumurtadaki çatlağı bulan MA yumurtanın pozisyonunu değiştirir, çatlak kısmı üste gelecek şekilde yerleştirir ve çakıl taşının çatlak kısma gelmesini kolaylaştırır. Bu işleme yuvarlama denir.

18 30

6 2 10 8 3 7 1 5 9

6 2 10 8 3 7 18 30 1 5 9

(24)

Yuvarlanan yumurtanın üzerindeki çatlak noktaya birkaç kez daha çakıl taşı isabet ettirerek yumurtayı kırmaya çalışır. MA çatlaklara atılan taş hamlesi ile kırılma işleminin daha hızlı ve kolay olmasını sağlamıştır.

Yuvarlamanın Derecesi (YD) parametresi ile yapılacak yuvarlamanın kaç defa

olacağı belirtilmektedir. Yuvarlamanın Yönü (YY) parametresi ise yuvarlamanın sağa mı yoksa sola mı olacağını belirten ve rastgele olarak ikili değer [0-1] alan bir parametredir. YY parametresi 0 olursa (YY = 0) yuvarlama soldan sağa doğru, YY parametresi 1 olursa (YY = 1) yuvarlama sağdan sola doğru olmaktadır. Örnek verilecek olursa YD = 3 ve YY = 0 parametre değerleri rastgele bir şekilde belirlenmiştir. YD ve YY parametrelerinin belirlenmesi ile GSP’deki bir tur sırası için kullanılan veriler (4, 9, 3, 8, 5, 1, 7, 2, 6) (Şekil 5.3. (A)) iken yuvarlama işlemi ile veriler birinci yuvarlamada soldan sağa doğru kaydırılarak (9, 3, 8, 5, 1, 7, 2, 6, 4) olmaktadır (Şekil 5.3. (B)). İşlemin tekrarlanması halinde yani ikinci yuvarlamanın da yapılacağı kabul edilirse yeni veri seti (3, 8, 5, 1, 7, 2, 6, 4, 9) olarak yenilenir (Şekil 5.3. (C)). Veri setindeki veriler en son (8, 5, 1, 7, 2, 6, 4, 9, 3) olarak son kez yenilerek yuvarlama işlemi tamamlanmıştır (Şekil 5.3. (D)).

(A)

(B)

(C)

(D)

ġekil 5.3. Yuvarlama işlemi.

5.3. Açı DeğiĢtirme ĠĢlemi

MA’nın tüm denemelere rağmen deve kuşu yumurtasını kıramaması durumunda, bu kez çakıl taşını farklı bir açıdan atmaya karar verir. Böylece kırılma olasılığını artırmış olur. Bunun sebebi ise yumurtaların bazı kısımlarında zar ve kabuk arasında oldukça büyük hava katmanı bulunurken bazı bölgelerinde ise hava

4 9 3 8 5 1 7 2 6

9 3 8 5 1 7 2 6 4

3 8 5 1 7 2 6 4 9

(25)

katmanının çok az olmasıdır. MA çakıl taşını hava katmanın fazla olduğu kısma denk getirir ise kabuğu kırmak kolaylaşır. Örnek üzerindeki Açı değiştirme işlemi öncesindeki tur sırası (6, 2, 1, 7, 10, 5, 9) şeklindedir (Şekil 5.4. (A)). Algoritmanın adaptasyonunda yuvarlama işlemi verinin bir bölümüne yapılabileceği gibi tamamına da yapılabilir. Hangi bölüme uygulanacağına kullanıcı karar vermektedir veya bu işlem genelde rastgele yapılmaktadır. Açı değiştirme işleminde rastgele belirlenen bölgenin başlangıç noktasını 3 ve bitiş noktasının 5 olduğu kabul edildiğinde, bu bölgelerde yer alan (1, 7, 10) sırasının açısının değişmesi gerektiği görülmektedir. İşlem sonrasında yeni sıra (6, 2, 10, 7, 1, 5, 9) şeklinde oluşmaktadır (Şekil 5.4. (B)).

(A)

(B)

ġekil 5.4. Açı değiştirme işlemi.

5.4. Durma Ya Da Devam Kararı

MAOA’da yapılan tüm işlemler sonucunda uygunluk değeri hesaplanır ve istenilen optimum sonuca ulaşılması durumda durma kararı verilir, optimum değere ulaşılmaması durumunda ise MAOA işlemleri tekrarlanır ve optimum değer aranarak uygunluk değeri hesaplanmaya devam edilir (Sur ve ark., 2013b).

6 2 1 7 10 5 9

(26)

6. AYRIK PROBLEMLER ĠÇĠN GELĠġTĠRĠLMĠġ MISIR AKBABA OPTĠMĠZASYON ALGORĠTMASI

MAOA’ndan daha iyi sonuçlar elde edilmesi için tez kapsamında MAOA geliştirilmiştir. Bu amaçla, orijinal MAOA’na Açı değiştirme işleminden sonra En

Yakın Komşu veya En Uzak Komşu İşlemi eklenmiştir. GMAOA’nın yeni versiyonu

Şekil 6.1.’de sunulmuştur.

E H

ġekil 6.1. Ayrık problemler için geliştirilen MA algoritması.

6.1. MAOA En Yakın KomĢu veya En Uzak KomĢu ĠĢlemi

Ayrık problemler için önerilen MAOA’nın performansını artırmak amacıyla orijinal MAOA geliştirilerek kullanılmasının uygun olacağı öngörülmüştür. Bu sebeple, orijinal algoritmaya Açı Değiştirme işleminden sonra En Yakın Komşu veya

En Uzak Komşu yapısı eklenmiştir. En Yakın Komşu veya En Uzak Komşu işleminin

çalışma prensibi birbirine benzese de, birbirinden farklı çalışmaktadır. En Yakın Komşu Veya En Uzak Komşu yapısı aşağıda sunulmuştur.

Durma Kararı

Çakıl Fırlatma ve Çatlak Noktayı Bulma İşlemi

Yuvarlama İşlemi

Açı Değiştirme İşlemi

En Yakın KomĢu veya En Uzak KomĢu ĠĢlemi

Bitiş Başlangıç

(27)

6.1.1. MAOA En Yakın KomĢu Yapısı

Mühendislikte kullanılan veri setleri genelde rastgele bir şekilde oluşturularak değerlerine göre sıralanmaktadır. Ayrık problemlerde MAOA için veri seti oluşturulurken, veri setinden başlangıç ve bitiş noktaları rastgele seçilmektedir. Seçilen başlangıç noktasına en yakın komşu hesaplanarak bulunmuş ve veri setindeki başlangıç noktasını yanına eklenmiştir. Sonraki işlemde ise bitiş noktasına tekrar dönülerek en yakın komşu aranmış ve bulunan en yakın komşu veri setinde bitiş noktasının yanına eklenmiştir. Sonraki adımlarda başlangıç noktasının en yakın komşusunun değerlerine bakılarak tekrar en yakın komşu aranarak bulunur ve veri setindeki yerine eklenir. Başlangıç noktasından mı bitiş noktasına, bitiş noktasından mı başlangıç noktasına gidileceği yön bilgisine tekrar en yakın mesafeye bakılarak karar verilmiştir. Şekil 6.2.’deki yeni veri seti sıralaması, asimetrik GSP için Tablo 6.1.’deki veri setlerindeki mesafe değerlerine bakılarak En Yakın Komşu yöntemi ile oluşturulmuştur.

Tablo 6.1. Rastgele oluşturulan örnek veri seti üzerinde şehirlerarası uzaklık değerleri.

Açı değiştirme işleminden sonra elde edilmiş bir tur sırasının (1, 2, 3, 4, 5) olduğunu düşünelim. Bu tur sırasının üzerinden rastgele seçilmiş iki şehirden ilki 5 ve sonraki 3 olsun (Tablo 6.2. (A)). Tablo 6.2.’e bakılarak başlangıç noktasındaki 5 ile komşuları arasındaki mesafe hesaplanmıştır. 5’e en yakın komşu 4 olarak hesaplanmış ve veri setindeki yerine eklenmiştir (Tablo 6.2. (B)). Bitiş noktasına geri dönülerek 3’e en yakın komşu 2 olarak belirlenmiş ve bitiş noktasının yanına eklenmiştir (Tablo 6.2. (C)). Başlangıç noktasının en yakın komşusu olan 4’e, en yakın komşu 1 olarak hesaplanmış ve veri setindeki yerine eklenmiştir (Tablo 6.2. (D)). Tablo1’deki başlangıç ve bitiş noktasının mesafe değerlerine bakılarak, kısa mesafede olduğu için bitiş noktasından başlangıç noktasına gidilmesine karar verilmiştir (Tablo 6.2. (E)) (Ali ve ark., 2017). ġehirler 1 2 3 4 5 1 2 3 4 5 0 3 2 10 8 9 0 7 1 3 17 5 0 8 15 3 16 9 0 2 5 9 3 7 0

(28)

Tablo 6.2. En yakın komşu işlemi. (A) (B) (C) (D) (E)

6.1.2. MAO Algoritmasında En Uzak KomĢu Yapısı

MAOA’da optimum değere en kısa ve kolay şekilde ulaşabilmek için veri setleri En Uzak Komşu yapısı MAOA’yla yeniden oluşturulmuştur. En Uzak Komşu yapısının çalışma prensibine göre, ilk adım olarak yine veri setinden rastgele başlangıç ve bitiş noktaları seçilir (Tablo 6.4. (A)). Verilerin birbirine yakınlık uzaklık mesafelerini belirlemek için Tablo 6.3’e bakılır. En yakın komşu algoritmasına ters olarak başlangıç noktasına en uzak nokta seçilir ve başlangıç noktasının yanına yazılır (Tablo 6.4.

(B)). Bitiş noktasına en uzak komşu bulunur ve bitiş noktasının yanına yazılır (Tablo 6.4. (C)). Tekrar başlangıç noktasına dönülerek, başlangıç noktasına en uzak komşusu bulunarak yazılır ve sıra yeniden oluşturulur (Tablo 6.4. (D)). Şehir sayısının daha fazla olması durumunda işlemler şehirler bitene kadar tekrarlanmıştır. Başlangıç noktasından mı bitiş noktasına, bitiş noktasından mı başlangıç noktasına gidileceği yön bilgisine en uzak mesafeye bakılarak karar verilmiştir (Tablo 6.4. (E)) (Ali ve ark., 2017).

Tablo 6.3.Şehirler arası uzaklık.

5 3 5 4 3 5 4 1 3 5 4 2 1 3 5 4 2 1 3 ġehirler 1 2 3 4 5 1 2 3 4 5 0 3 1 7 9 9 0 15 8 2 7 5 0 4 7 13 15 9 0 6 5 9 18 6 0

(29)

Tablo 6.4. En uzak komşu işlemi. (A) (B) (C) (D) (E) . 5 3 5 4 3 5 4 2 3 5 4 1 2 3 5 4 1 2 3

(30)

7. SÜREKLĠ PROBLEMLERĠN ÇÖZÜMÜNDE MAOA KULLANIMI

Sürekli problemlerde MAOA ilk kez bu tez kapsamında önerilmiş ve KOTP ile performans testleri gerçekleştirilmiştir. Genel olarak ayrık problemler için önerilen tanımındaki MAOA işlemleri sırasıyla yapılmıştır. Sürekli problemlerde orijinal MAOA’nın çalışma prensibi Şekil 7.1.’de gösterilmiştir. Sonraki bölümlerde ise detay olarak verilmiştir.

E H

ġekil 7.1. Sürekli problemlerin çözümünde MAOA.

7.1. Parametre Değerlerinin Girilmesi

MAOA literatürde sürekli problemlerin çözümü için ilk kez tez kapsamında kullanılmıştır. Burada, ayrık problemlerde olduğu gibi sürekli problemlerin boyutuna göre temsil metodu seçilip olası bir aday olarak üretilir. Kısıtsız test problemi kullanıcı tarafından seçilir/belirlenir. Belirlenen test problemi ile sürekli problemde kullanılacak olan d boyutu, problem denklemi ve global minimum değerleri otomatik olarak

Durma Kararı

Parametre Değerlerinin Girilmesi

Çakıl Fırlatma ve Çatlak Noktayı Bulma İşlemi

Yuvarlama İşlemi

Açı Değiştirme İşlemi

En yakın Komşu veya En Uzak Komşu İşlemi

Başlangıç

(31)

belirlenmektedir veya kullanıcı girebilir. Popülasyon büyüklüğü (N) ve Açı Değiştirme

Oranı (ADO) ise kullanıcı tarafından belirlenir. Gerekli olan parametre değerleri

Tablo 7.1.’de sunulmuştur.

Tablo 7.1. Kullanıcı tarafından belirlenen parametre değerleri.

Örnek olarak kullanıcı tarafından Sphere Test Fonksiyonu seçilmiş olsun ve N = 6, ADO = 2 olarak belirlendiğini kabul edelim. Buna uygun olarak x1 ve x2değerleri rastgele olarak belirlenir. Tablo 7.2.’de belirlenmiş değerler sembolik olarak gösterilmiştir.

Tablo 7.2. Rastgele olarak belirlenen x1 ve x2 değerleri.

7.2. Çakıl TaĢı Fırlatma Ve Çatlak Nokta Bulma ĠĢlemi

Ayık problemlerde de kullanılan Çakıl Taşı Fırlatma Ve Çatlak Nokta Bulma İşlemi sürekli problemlerde de kullanılmaya devam edilmiştir. Sürekli problemlerde

Savurma Gücü (SG) ve Çakıl Boyutu (ÇB) rastgele olarak ikili değer [0-1] alırlar. ÇB

parametre değeri 1 olursa SG parametre değeri 0 olmaktadır, ÇB parametre değeri 0 olduğu durumunda ise SG parametre değeri 1 olmaktadır. Hiçbir zaman SG ve ÇB parametre değerleri eşit olmamaktadır. SG veya ÇB parametre değeri 0 olması durumda hiçbir işlem gerçekleştirilmemiştir. ÇB değeri 1 olduğunda, ekleme işlemi gerçekleştirilmiştir. SG değeri 1 olması olasılığında ise silme işlemi gerçekleştirilmiştir. Aday kümeler sürekli değerler alabildiği için değerlerin

Kullanılan Parametreler Kısaltma Min – Mak Değerleri

Popülasyon Büyüklüğü N 1 - ∞

Açı Değiştime Oranı ADO 1 - ∞

Aday Çözüm x1 x2 1 1 2 2 0 1 3 3 5 4 4 2 5 0 3 6 3 1

(32)

modifikasyonlarında açısal değerler kullanılmıştır. xmak ve xmin arasındaki mesafenin en uzun olduğu kabul edilirse bu aralık 360 derecelik (açısal) değerdir. Uzaklık üzerinde hareket bu nedenle en kısa olduğunda 1/360 birim olmaktadır.

Örneğe devam edilirse seçilen Sphere Test Fonksiyonu için xmak = 5.12, xmin = -5.12 olduğu bilinmektedir. O halde minimum adım büyüklüğü 0.028( -5.12–(-5,12)/360 ) olarak bulunmaktadır. Yapılan işlemlerle birlikte işlemler sonunda yenilenen x1 ve x2 değerleri Tablo 7.3.’de gösterilmiştir.

Tablo 7.3. Parametre değerleri.

7.3. Yuvarlama ĠĢlemi

Ayrık problemlerde kullanılan Yuvarlama İşleminde, sürekli MAOA’ndakine

benzer şekilde Yuvarlanma Yönü (YY) ve Yuvarlamanın Derecesi (YD) parametreleri kullanılmaya devam edilmiştir. YD parametresini bulmak için adım büyüklüğü değerine ihtiyaç vardır.

( ) (7.1)

YY parametresi YD parametresine bağlı olarak çalışmaktadır. YY = 0 olması halinde YD sonucu kadar silme (aritmetik çıkarma) işlemi yapılır. YY = 1 olduğu durumlarda ise YD sonucu kadar ekleme (aritmetik toplama) işlemi yapılır.

Seçilen örnek için xmakdeğeri 5.12, xmin değeri ise -5.12 olduğu bilinmektedir. O halde YD = 5.12 – (-5,12) / 360 = 0.028 olarak bulunmaktadır. YY parametresi ise

Aday Çözüm x1 x2 SG ÇB x1yeni x2yeni

1 1 2 1 0 0.972 1.972 2 0 1 0 1 0.028 1.028 3 3 5 1 0 2.972 4.972 4 4 2 0 1 4.028 2.028 5 0 3 0 1 0.028 3.028 6 3 1 1 0 2.972 0.972

(33)

rastgele olarak ikili değer alır. Yapılan işlemler sonunda yenilenen x1 ve x2 değerleri Tablo 7.4.’de gösterilmiştir.

Tablo 7.4. Yuvarlama işlemi.

7.4. Açı DeğiĢtirme ĠĢlemi

Yapılan deneylerde açı değiştirme işleminin göz ardı edilmesi / atlanması durumunda daha başarılı sonuçlar elde edilmiştir. Açı değiştirme işlemi opsiyoneldir. Normal şartlarda açı değiştirme işlemi ile yumurtanın açısı değişerek kırılmayan yumurtanın kabuğunun kırılması sağlanır. Sürekli problemlerde Açı Değiştirme İşlemi kullanıcı tarafından arayüzden belirlenmektedir. Rastgele olarak seçilen x1 ve x2 değerlerinin yerleri değişerek yeni popülasyon oluşturulur.

x1 ve x2 şeklinde iki değişkenli ve 6 satırlık örnek üzerinde, ADO = 2 olarak kullanıcı tarafından belirlendiğini kabul edelim. Örnekte rastgele olarak iki satırdan, dört birey seçilmiştir. Açı Değiştirme işlemi, rastgele belirlenen x1 ve x2 değerlerinin yerleri değiştirilerek yapılmaktadır. Örneğin rastgele seçilen 3. satırdaki, (2.944, 4.944) değerleri, işlem sonucunda (4.944, 2.944) şeklinde yenilenmiştir. Yine rastgele olarak seçilen 6. satırdaki (2.944, 0.944) değerleri, işlem sonucunda (0.944, 2.944) olarak güncellenmiş ve x1 ve x2’nin yeni halleri Tablo 7.5.’de gösterilmiştir.

Aday Çözüm x1 x2 YY YD x1yeni x2yeni 1 0.972 1.972 1 0.028 0.944 1.944 2 0.028 1.028 0 0.028 0.056 1.056 3 2.972 4.972 1 0.028 2.944 4.944 4 4.028 2.028 0 0.028 4.056 2.056 5 0.028 3.028 0 0.028 0.056 3.056 6 2.972 0.972 1 0.028 2.944 0.944

(34)

Tablo 7.5. Açı değiştirme işlemi.

Aday Çözüm x1 x2 x1yeni x2yeni

1 0.944 1.944 0.944 1.944 2 0.056 1.056 0.056 1.056 3 2.944 4.944 4.944 2.944 4 4.056 2.056 4.056 2.056 5 0.056 3.056 0.056 3.056 6 2.944 0.944 0.944 2.944

7.5. MAO Algoritmasında En Yakın KomĢu Veya En Uzak KomĢu ĠĢlemi

Gelişmiş ayrık problemlerde de kullanılan En Yakın Komşu veya En Uzak Komşu İşlemi sürekli problemlerde de kullanılmaya devam edilmiştir. Bu işlemler popülasyondan rastgele seçilen bir birey üzerinde gerçekleştirilmektedir. En Yakın

Komşu işlemi veya En Uzak Komşu işlemi yine rastgele seçilerek yeni popülasyon oluşturulur. En yakın komşu yaklaşımı benimsendiyse mevcut konum değerinden bir çıkarma işlemi yapılır, en uzak komşu yaklaşımı benimsendiyse mevcut konum değerine bir toplama işlemi yapılır. Çıkarılacak ya da eklenecek değerin ne olduğuna kod içinde karar verilmektedir. Genel bir yaklaşım sabit bir değer olarak ve önceden verilmesi şeklindedir.

Örnek üzerinde yapılan rastgele seçimler sonunda x değeri 0.056 olarak seçilmiş olsun. Ayrıca rastgele olarak En Yakın Komşu işlemi seçilmiş, sabit değer 0.001 olarak verilmiş ve işleme tabi tutulmuş olsun. Yapılan işlem sonunda yeni x değeri Tablo 7.6’da gösterilmiştir.

Tablo 7.6. En yakın komşu veya en uzak komşu işlemini eklenmesi.

Aday Çözüm x1 x2 x1yeni x2 yeni

1 0.944 1.944 0.944 1.944 2 0.056 1.056 0.055 1.056 3 4.944 2.944 4.944 2.944 4 4.056 2.056 4.056 2.056 5 0.056 3.056 0.056 3.056 6 0.944 2.944 0.944 2.944

(35)

7.6. Durma veya Devam Kararı

MAOA’sındaki tüm işlemlerin tamamlanması ve optimum sonuç bulunması ile durma kararı verilerek iterasyon sonlandırılır. Optimum değere ulaşılamaması durumunda ise MAOA’na devam kararı verilerek iterasyona devam edilir ve optimum sonuç bulunmaya çalışılır. Tablo 7.7.’de x1 ve x2 parametrelerinin son hali sunulmuştur.

Tablo 7.7. Durma veya devam kararı.

x1 x2 0.944 1.944 0.055 1.056 4.944 2.944 4.056 2.056 0.056 3.056 0.944 2.944

(36)

8. SÜREKLĠ PROBLEMLERDE MAOA’NIN ĠYĠLEġTĠRĠLMESĠ VE GELĠġTĠRĠLMESĠ

MAOA’nın sürekli optimizasyon problemlerindeki performansının geliştirilebilmesi için, orijinal MAOA’na Bellek İşlemi ve Mutasyon İşlemi eklenerek daha iyi sonuçların elde edilmesi hedeflenmiştir. Şekil 8.1.’de akış şeması olarak gösterilmiştir. Sonraki bölümlerde ise detaylı olarak verilmiştir.

E H

ġekil 8.1. Geliştirilmiş ve iyileştirilmiş sürekli problemlerde MAOA.

8.1. Bellek OluĢturulması ve Güncellenmesi ĠĢlemi

MAOA literatürde sürekli problemlerin çözümü için ilk kez tez kapsamında kullanılmıştır. Ayrık problemlerde olduğu gibi sürekli problemlerin boyutuna göre temsil metodu seçilip olası bir aday olarak üretilir ve Popülasyon Büyüklüğü (N),

Durma Kararı

Parametre Değerlerinin Girilmesi

Bellek OluĢturulması ve Güncellenmesi ĠĢlemi

Çakıl Fırlatma ve Çatlak Noktayı Bulma İşlemi

Yuvarlama İşlemi

Açı Değiştirme İşlemi

Mutasyon ĠĢlemi

Bitiş Başlangıç

(37)

Rastgelelik Oranı (RO) ve Mutasyon Oranı (MO) kullanıcı tarafından belirlenir.

Mevcut iterasyon eğer ilk iterasyonsa adaylardan oluşan popülasyon bireyleri rastgele olarak belirlenir.

Sürekli MAOA’na iyileştirme olarak bellek eklenmiştir. İlk başta bellek boş olduğu için ilk iterasyonun sonuçları olduğu gibi belleğe kaydedilmiş ve Şekil 8.2.’de sunulmuştur. İkinci iterasyon başlangıcında ise kullanıcının belirlediği RO’ya göre rastgele yeni değerlerde yazılır ve geri kalan bölüme ise ilk iterasyondaki optimum değerlere sahip bireyler eklenir ve yeni popülasyon oluşturulmuş olur. İterasyon tamamlanarak belleğe kaydedilmiş ve Şekil 8.3.’de sunulmuştur. Üçüncü iterasyon başlangıcında ise, Rastgelelik Oranına göre rastgele değerler yazılır, diğer kısma ise bellekten seçilen değerler yazılır. Böylece yeni popülasyonla üçüncü iterasyonda tamamlanmış ve Şekil 8.4.’de sunulmuştur.

Bundan sonraki süreçlerde her bir iterasyon için popülasyon değerleri ile bellekteki aday değerler karşılaştırılır. Mevcut popülasyondaki daha iyi değerler ile bellek güncellenir. Güncellenen aday kadar kötü çözüm bellekten silinir. Böylece bellek boyutunun sabit kalması sağlanır.

ġekil 8.2. Başlangıçtaki popülasyon havuzu ve belleğin oluşturulması (RO: rastgelelik oranı).

(38)

ġekil 8.4. İki iterasyon sonraki popülasyon ve belleğin durumu (B: ikinci iterasyondaki popülasyon).

8.2. Mutasyon iĢlemi

Sürekli optimizasyon problemlerinin çözümü için Mutasyon İşlemi MAOA’na eklenerek MAOA geliştirilmiştir. Verilen her hangi bir problem için başlangıçta aday çözümler üretilir. Mutasyon işleminde, kullanıcının belirlediği orana göre rastgele aday ya da adaylar seçilerek mutasyon işlemi yapılmaktadır. Mutasyon işleminde adayın tamamı değil sadece verinin belli bir bölümü değişmektedir.

Çalışılan örnek için, GMAOA’da Mutasyon Oranı (MO) kullanıcı tarafından % 20 olarak belirlenmiş ise, Popülasyon büyüklüğü N = 30 kabul edildiğinde x1 ve x2’den rastgele olarak 6 farklı (N * MO = 30 * % 20) yeni x değeri üretilecektir.

Mutasyon biti (MB) rastgele belirlenir. MB ≤ 0.5 ise MB = 0 olarak kabul edilir ve

çıkarma işlemi yapılır. MB ≥ 0.6 ise MB = 1 olarak kabul edilir toplama işlemi yapılır. Veri setlerindeki mutasyon işleminde oluşan küçük değişiklikler ile optimum değere ulaşma olasılığı arttırılmaktadır. Tablo 8.1.’de Mutasyon öncesi ve sonrası değerler belirlenen mutasyon bitine göre gösterilmiştir.

Tablo 8.1. Mutasyon işlemi.

Aday Çözüm x1 x2 MB

Aritmetik

ĠĢlem x1yeni x2yeni

1 0.944 1.944 0 - 0.916 1.916 2 0.055 1.056 0 - 0.027 1.028 3 4.944 2.944 1 + 4.972 2.972 4 4.056 2.056 0 - 4.028 2.028 5 0.056 3.056 1 + 0.084 3.084 6 0.944 2.944 1 + 0.972 2.972

(39)

9. ARAġTIRMA SONUÇLARI VE TARTIġMA

Ayrık ve sürekli test problemlerinde MAOA ve GMAOA, i5-5200U işlemcili 2.20Ghz 8,00GB özellikli bilgisayarda uygulanmıştır. Ayrık optimizasyon problemleri için MAOA ve GMAOA’nın sonuçları Gezgin Satıcı Probleminde (GSP) ve Sırt Çantası Probleminde (SÇP) çalıştırılmıştır. Ayrıca sürekli optimizasyon problemlerinde algoritma test edilmiş ve performansı gösterilmiştir. Deneylerin yapıldığı tüm veri setleri için elde edilen sonuçlar bu bölümde sunulmuştur.

9.1. Gezgin Satıcı Problemi Üzerinde Performans Testleri

MOAO’nın GSP çözümü için C# ta bir kod yazılmıştır. Yazılan kodun arayüz görüntüsü Şekil 9.1.’de sunulmuştur. Bu arayüz sayesinde çalışılacak kütüphane bir düğme ile seçilebilmektedir. TSPLIB kütüphanesinden şehirler, arayüzün sol üst bölümünde listelenmektedir. GSP için TSPLIB kütüphanesinden seçilen 11 tane şehir kullanılmıştır. Bu şehirler Berlin52, Eil51, Eil76, Eil101, Kora100, Rat99, St70, Gr299, Gr120 ve Gr666’dır.

Arayüzün sağ üst kısmında ise şehirlerin birbirine uzaklıkları gösterilmektedir. MAOA için yapılan testlerle seçilen parametreler Tablo 9.1.’de sunulmuştur. Tablo 9.2.’de ise GSP kütüphanesinden seçilen şehirlerin sayıları ve optimum tur uzunlukları gösterilmiştir (Mahi ve ark., 2015). Ayrıca şehirler için rastgele belirlenen nüfus yoğunlukları da Tablo 9.2.’de sunulmuştur. MAOA ilk önerildiği çalışmada (Sur ve ark., 2013a) GSP üzerinde çalışılmıştır. Tez çalışmasında bu nedenle MAOA ve GMAOA’da çalışmalar yapılmıştır. Deneysel çalışmalarda her bir problem 30 defa çalıştırılmıştır. Şekil 9.1.’deki test değeri ile kullanıcı kaç defa çalıştırılacağını söyleyebilmektedir. Her bir problem çözümü için iterasyon sayısı da arayüzden girilebilmektedir. Problemler ele alınırken ideal tur uzunluğunun yanında şehirlerin nüfus bilgileri de optimizasyon parametresi olarak seçilebilir. Tez kapsamında yapılan çalışmalarda ideal nüfus yoğunluğu, tur uzunluğu, nüfus yoğunluğu / tur uzunluğu ve tur uzunluğu / nüfus yoğunluğu gibi hedef fonksiyonlara göre optimizasyon çalışmaları yapılmıştır. Bu çalışmalar gerçek hayatta doğal affet ve diğer acil durumlarda kullanılmaktadır. Kullanıcının tercihine göre, tur uzunluğu hesaplanmadan

(40)

sadece nüfus yoğunluğu baz alınarak şehirlere gidilmektedir veya sadece tur uzunluğu incelenerek optimum tur uzunluğu oluşturularak yeni bir rota oluşturulması hedeflenmektedir. Aynı zamanda kullanıcının seçimi ile tur uzunluğu ve nüfus yoğunluğu baz alınarak optimum tur uzunluğunu oluşturabilmektir. Bu seçeneklerle hem can ve mal kaybı en aza indirgenmesi hem de tur uzunluğunun kısalması hedeflenmektedir. Bu nedenle geliştirilen kodda hedef fonksiyona özel seçimlerin yapılabileceği düğmeler konulmuştur. Yapılan seçimlere göre sol alttaki pencerede her bir iterasyonda hesaplanan değerler gösterilmektedir. İterasyon sonucu oluşan popülasyondaki optimum bulunan değerde sağ alt köşede gösterilmiştir. GMAOA ve MAOA için 300 iterasyon sonucunda nüfus yoğunluğu, tur uzunluğu, nüfus yoğunluğu / tur uzunluğu ve tur uzunluğu / nüfus yoğunluğu kriterlerine göre elde edilen tur uzunlukları sırasıyla Tablo 9.3., Tablo 9.4., Tablo 9.5. ve Tablo 9.6.’da sunulmuştur. Aynı tablolarda MAOA ve GMAOA ile 300 iterasyon sonucundaki hesaplanan minimum (Min), ortalama (Ort) ve Standat sapma (Std Sp.) değerleri ayrı sütunlar olarak verilmiştir.

Tablo 9.1. MAOA ve GMAOA için deneysel testlerle belirlenen parametre değerleri.

Parametre Değer

Popülasyon Büyüklüğü 30 İterasyon Sayısı 300 Açı Değiştirme Oranı 3

Mutasyon Oranı 0.5

Rastgelelik Oranı 0.4

(41)

Tablo 9.2. MAOA algoritması ile GSP çözümü için seçilen şehir sayısı değerleri, ideal tur uzunlukları

ve şehirler için varsayılan nüfus yoğunluğu.

Kütüphane Adı ġehir Sayısı ġehir Ġçin Ġdeal Tur Uzunluğu ġehir Ġçin Nüfus Yoğunluğu

Berlin52 52 7542 25566 Eil51 51 426 27644 Eil76 76 538 34220 Eil101 101 629 67230 Kora100 100 21282 123669 Rat99 99 1211 120874 St70 70 675 56984 Gr229 229 134602 185231 Gr120 120 6942 14236 Gr666 666 294358 254655 Gr431 431 171414 123540

Tablo 9.3. MAOA ve GMAOA hedef fonksiyon olarak nüfus yoğunluğu seçilmesi ile 300 iterasyon

sonucundaki elde edilen nüfus yoğunluğu değerleri.

Nüfus Yoğunluğu

MAOA GMAOA

GSP Kütüphanesinden

Seçilen ġehirler Min Ort

Std Sp. Min Ort Std Sp. Berlin52 13667 13743.5 13.16 11007 11753.4 12.02 Eil51 780 796.2 20.13 655 710.9 10.92 Eil76 662 689.3 24.26 659 675.7 17.15 Eil101 832 892.7 20.41 812 845.4 25.03 Kora100 24740 25120.1 25.13 24122 24891.3 17.51 Rat99 1607 1677.7 27.33 1661 1721.5 10.61 St70 795 821.6 14.23 788 792.3 16.23 Gr229 14521 14892.7 18.1 14127 14361.7 11.98 Gr120 7919 8022.2 16.71 7899 7929.9 12.45 Gr666 31564 31749.6 12.34 36210 37011.4 17.33 Gr431 21033 21361.1 21.16 20144 20895.3 13.04

(42)

Tablo 9.4. MAOA ve GMAOA’na tur uzunluğunun hedef fonksiyon olarak seçilmesi ile 300 iterasyon

sonucundaki elde edilen tur uzunlukları.

Tur Uzunluğu GSP Kütüphanesinden Seçilen ġehirler MAOA GMAOA Min Ort Std Sp. Min Ort Std Sp. Berlin52 8956 9123.1 15.02 8238 8277.7 16.28 Eil51 521 575.4 15.23 475 499.5 13.2 Eil76 578 598.3 11.25 581 601.1 14.23 Eil101 743 789.1 13.56 651 669.9 17.03 Kora100 23213 23974.5 14.66 21365 2198.49 18.12 Rat99 1581 1920.6 15.61 1228 1245.7 18.62 St70 734 791.7 12.31 690 699.3 14.61 Gr229 134627 145023.9 17.13 168120 168797.4 12.89 Gr120 7189 7199.1 13.14 7007 7145.1 11.71 Gr666 299997 300123.3 23.14 294367 299875.3 11.89 Gr431 193451 204503.5 24.12 171420 171998.4 17.13

Tablo 9.5. MAOA ve GMAOA’na tur uzunluğu / nüfus yoğunluğunun hedef fonksiyon olarak

seçilmesi ile 300 iterasyon sonucundaki elde edilen tur uzunluğu / nüfus yoğunluğu değerleri.

Tur Uzunluğu / Nüfus Yoğunluğu GSP Kütüphanesinden Seçilen ġehirler MAOA GMAOA Min Ort Std Sp. Min Ort Std Sp. Berlin52 19214 20569.2 16.74 15427 15987.2 17.23 Eil51 831 866.6 18.99 812 894.4 16.22 Eil76 913 965.4 23.36 895 924.2 11.06 Eil101 769 889.3 20.88 741 765.3 17.35 Kora100 27240 28012.3 20.94 25437 25498.1 27.23 Rat99 1677 1720.3 21.34 1567 1925.7 19.61 St70 907 982.5 23.45 821 873.3 18.31 Gr229 18006 18459.4 32.45 17641 17923.5 33.40 Gr120 14290 148963.6 34.14 10241 11365.6 41.22 Gr666 34561 35652.7 36.28 34673 35627.1 43.17 Gr431 27143 28129.9 31.12 27145 28933.7 47.15

(43)

Tablo 9.6. MAOA ve GMAOA’na nüfus yoğunluğu / tur uzunluğunun hedef fonksiyon olarak

seçilmesi ile 300 iterasyon sonucundaki elde edilen nüfus yoğunluğu / tur uzunluğu değerleri.

Nüfus Yoğunluğu / Tur Uzunluğu GSP Kütüphanesinden Seçilen ġehirler MAOA GMAOA Min Ort Std Sp. Min Ort Std Sp. Berlin52 17264 185635.2 10.66 11899 12365.3 12.12 Eil51 756 795.5 19.26 777 801.6 12.12 Eil76 687 703.3 12.06 724 761.8 17.15 Eil101 761 794.8 12.44 723 762.3 15.33 Kora100 24349 24859.1 13.9 23254 24652.7 12.21 Rat99 17028 17895.6 11.45 1407 1478.7 17.66 St70 771 812.2 22.36 796 809.9 11.22 Gr229 24510 25623.3 14.93 15124 16554.2 10.81 Gr120 10347 11032.4 13.64 9710 10226.3 13.35 Gr666 33611 35262.9 14.66 31665 31998.4 18.13 Gr431 24569 26789.7 19.88 204561 216545.1 11.24

GSP kütüphanesinden seçilen 11 şehir için nüfus yoğunluğuna göre elde edilen sonuçlara bakıldığında MAOA 2 şehirde başarılı sonuçlar elde ederken, GMAOA’nın 9 şehirde başarılı sonuç elde ettiği Tablo 9.3.’de görülmektedir. GSP’deki 11 şehir için tur uzunluğundan elde edilen sonuçlara bakıldığında ise MAOA 2 şehirde başarılı sonuçlar elde ederken, GMAOA’nın 9 şehirde başarılı sonuç elde ettiği Tablo 9.4.’de gösterilmiştir. GSP’deki 11 şehir için tur uzunluğu / nüfus yoğunluğu işleminden elde edilen sonuçlara göre MAOA 2 şehirde başarılı sonuçlar elde ederken 9 şehirde GMAOA başarılı sonuçlar elde ettiği Tablo 9.5.’de görülmektedir. Benzer şekilde Nüfus yoğunluğu / tur uzunluğu işleminde toplam 11 şehrin sadece 2 tanesinde MAOA başarılı sonuç elde ederken 9 tanesinde ise GMAOA başarılı sonuç elde ettiği Tablo 9.6.’da görülmektedir.

Ortalama değerler incelendiğinde ise, nüfus yoğunluğuna göre ortalama değerler açısından MAOA 2 şehirde GMAOA ise 9 şehirde başarılı sonuçlar elde etmiş ve Tablo 9.3.’de gösterilmiştir. GSP’den seçilen 11 şehir için tur uzunluğundan elde edilen ortalama değerlere bakıldığında MAOA 2 şehirde, GMAOA ise 9 şehirde başarılı sonuçlar vermiş ve Tablo 9.4.’de gösterilmiştir. Tur uzunluğu / nüfus yoğunluğu işleminden elde edilen ortalama değerler incelendiğinde MAOA 3 şehirde, GMAOA 8 şehirde iyi sonuçlar elde etmiş ve sonuçlar Tablo 9.5.’de sunulmuştur. Nüfus yoğunluğu / tur uzunluğu işlemi de toplam 11 şehrin ortalama değerlerine

(44)

bakıldığında MAOA 2 şehirde, GMAOA 9 şehirde iyi sonuçlar elde etmiş ve sonuçlar Tablo 9.6.’da sunulmuştur.

Standart sapma değerleri incelendiğinde, nüfus yoğunluğuna göre elde edilen sonuçlara bakıldığında MAOA 3, GMAOA ise 8 şehirde başarılı sonuçlar elde etmiş ve Tablo 9.3.’de gösterilmiştir. GSP’deki 11 şehir için tur uzunluğundan elde edilen standart sapma değerleri incelendiğinde ise MAOA 6 şehirde başarılı sonuçlar elde ederken GMAOA’nın 5 şehirde başarılı sonuç elde ettiği Tablo 9.4.’de gösterilmiştir. GSP’deki 11 şehir için tur uzunluğu / nüfus yoğunluğu işleminden elde edilen standart sapma sonuçlarına göre MAOA 6 şehirde başarılı sonuçlar elde ederken 5 şehirde GMAOA başarılı sonuçlar elde etmiş ve sonuçlar Tablo 9.5.’de sunulmuştur. Nüfus yoğunluğu / tur uzunluğu işlemi de toplam 11 şehrin 5 tanesinde MAOA başarılı sonuç elde ederken 6 tanesinde ise GMAOA başarılı sonuç elde etmiş ve sonuçlar Tablo 9.6.’da gösterilmiştir.

Yapılan deneysel çalışmalarda tur uzunluğu hariç olmak üzere diğer amaç fonksiyonları hedef alan ve literatürde verilmiş bir çalışma olmadığı için, yazar tarafından PSO algoritması ile de kodlar yazılmış ve GMAOA ile PSO’nun performans kıyaslaması yapılmıştır. Elde edilen sonuçlar bu çalışmanın sonuçları ile de kıyaslanmıştır. Deneysel sonuçlar, nüfus yoğunluğu ile elde edilen değerlere göre kıyaslandığında 11 şehirden 6 tanesinde PSO algoritması, 5 tanesinde de GMAOA iyi değerler elde etmiştir. Tur uzunluğu ile elde edilen değerlere göre kıyaslandığında 11 şehirden 6 tanesinde PSO algoritması, 5 tanesinde de GMAOA iyi değerler elde etmiştir. Tur uzunluğu / nüfus yoğunluğu değerlerine göre karşılaştırıldığında 11 şehirde 4 tanesinde PSO ve 7 tanesinde ise GMAOA iyi değerler elde edilmiştir. Nüfus yoğunluğu / tur uzunluğu açısından ise, 11 şehirden 6 tanesinde PSO algoritması, 5 tanesinde ise GMAOA iyi değerler vermiştir. Karşılaştırma tabloları sırasıyla Tablo 9.7, 9.8, 9.9 ve 9.10’da sunulmuştur. Tüm iterasyonlar sonucundaki elde edilen değerler ayrıca kayıt altına alınmıştır.

Ortalama değerler incelendiğinde ise, nüfus yoğunluğuna göre ortalama değerler açısından 7 şehirde PSO, 4 şehirde ise GMAOA başarılı sonuçlar elde etmiş ve sonuçlar Tablo 9.7.’de gösterilmiştir. GSP’den seçilen 11 şehir için tur uzunluğundan elde edilen ortalama değerlere bakıldığında ise 6 şehirde PSO ve 5

Şekil

ġekil 5.1. Orijinal MAOA’nın akış şeması.
ġekil 5.2.  Çakıl fırlatma ve çatlak noktayı bulma.
ġekil 6.1. Ayrık problemler için geliştirilen MA algoritması.
Tablo 6.1. Rastgele oluşturulan örnek veri seti üzerinde şehirlerarası uzaklık değerleri
+7

Referanslar

Outline

Benzer Belgeler

Bir kalibrasyon metodunun özgünlüğü kesinlik, doğruluk, bias, hassasiyet, algılama sınırları, seçicilik ve uygulanabilir konsantrasyon aralığına

附醫營養室通過衛生署HACCP食品安全標章

ise son derece ilginç, Bodosaki, Pera Palas'a kalmak için gelmiş, ancak sa­ laş görünüşü nedeniyle içeri alınma­ mıştı.. Bodosaki buna çok sinirlenmiş ve oteli

Uluslararası Oyuncak Kütüphanesi Konferansı, Güney Afrika/Tshwane’da (Pretoria) 24 ülkeden 270 kișinin katılımı ile gerçekleștirilmiștir.. Üç yılda bir

Yani, verimsiz ve devlet için yük olan kamu işletmeleri özelleştirilmeli, sendikalı ve sigortalı çalışma koşulları zayıflatılmalı, bir işi kadrolu- güvenceli

Korkan hastalar, aşırı kaygılı hastalar, kooperasyon kurulamayan çocuklar, mental retardasyonlu hastalar veya fiziksel özürlü kişiler gibi birçok hasta grubunda gerekli

O sırada önceleri sarayın siit- çübaşısıyken kısa zamanda çok büyük bir servetin sahibi olan Hristaki Zografos adlı ünlü banker hemen devreye

Ghanim (2017), Coefficient estimates for some general subclasses of analytic and bi-univalent functions, Africa Math., 28, 693-706. Gochhayat (2010), Certain subclasses of analytic