• Sonuç bulunamadı

5. GSP İÇİN PSO ALGORİTMASININ BCO YÖNTEMİ İLE

5.2. FCM-PSO Algoritması

Literatürde PSO algoritmasının GSP üzerindeki başarımını arttırmak için genellikle diğer yöntemler ile birleştirilmesi veya diğer sezgisellerden operatörler alarak hibrit yapılar oluşturulması yoluna başvurulmaktadır. Bu şekildeki geliştirmeler ne yazık ki PSO algoritmasının orijinalliğini bozmanın yanı sıra algoritmanın diğer sezgisellere göre avantajı olan basit ve hızlı olma özelliklerini de devre dışı bırakmaktadır.

Küçük ölçekli problemlerde oldukça başarılı sonuçlar veren PSO algoritmasının problem ölçeği büyüdükçe çözüm kalitesi ve/veya başarısının düşmesi, bu çalışmanın özünü oluşturan büyük ölçekli problemleri algoritmanın temel şeklini değiştirmeden daha küçük boyutlu problemlere bölüp kabul edilebilir düzeyde çözüm hızı kaybına karşılık daha iyi sonuçlar elde etme düşüncesine yol açmıştır. Bu düşünce doğrultusunda büyük ölçekli problemleri PSO ile rahatlıkla çözülebilecek düzeye getirecek hızlı bir kümeleme algoritması olarak BCO yöntemi seçilmiştir. Önceki bölümlerde de belirtildiği üzere k-ortalamalar yöntemine göre kümeleme yönünden avantajları olan BCO yöntemi küme elemanları için her bölümleme sonrasında küme üyelik değerleri sunarak PSO algoritmasına da kümeler üzerinde işlem yaparken yol gösterici olmaktadır.

Bu çalışma kapsamında geliştirilmiş olan FCM-PSO algoritmasının varyasyonları detaylı olarak aşağıda açıklanmıştır. Oluşturulan yapı PSO algoritmasının öncülü olarak BCO yöntemini kullanıyor olmakla birlikte algoritma ve kodlama esnekliği sayesinde modüler bir şekilde literatürde mevcut olan herhangi bir kümeleme algoritması ile her hangi bir sezgisel veya sezgisel olmayan algoritmanın birleştirilerek kullanılabilmesine de imkan sağlaması öngörülmektedir.

5.2.1. FCM-PSO-M algoritması ve sahte kodu

BCO yöntemi ile PSO algoritmasını birlikte kullanarak PSO’nun GSP’deki başarımını arttırmaya yönelik geliştirilen ilk varyant FCM-PSO-M’dir. Bu algoritma TSPLIB[97] veri setinden konum ve nokta bilgilerini okumaktadır. Bu veriler BCO yöntemi ile istenilen sayıda daha küçük boyutlu alt kümeye ayırılmaktadır. Elde edilen bu alt kümelerin her biri için standart PSO algoritması optimale yakın tur değerini elde etmek üzere çalıştırılmaktadır. Optimize edilen bu alt kümelerin hangi sıra ile birbirine

70

bağlanacakları da küme merkezlerinin yine PSO algoritması ile en kısa tur oluşturacak şekilde sıralanması ile elde edilmektedir. Algoritma alt kümelerin hangi sıra ile bağlanacağını oluşturduktan sonra kümeleri ardışık çiftler şeklinde iki alt küme merkezi arasında çizilen doğrunun orta noktasına en yakın elemanları her iki alt kümede bağlantı noktası olarak seçmektedir. Alt kümelerden ilkinde seçilmiş bu bağlantı noktası oluşturulmuş optimize alt turun son elemanı oluncaya kadar tur sırası korunacak şekilde elemanlar döngüsel olarak ötelenmektedir. Birleştirilecek ikinci alt kümede ise bağlantı noktası olarak belirlenen nokta optimize edilmiş alt turun ilk elemanı olacak şekilde tur elemanları döngüsel olarak ötelenmektedir. Birbirine bağlanacak olan alt turlar birinci alt turun son elemanından sonra ikinci alt turun ilk elemanı başlayacak şekilde ikinci alt tur eklenerek birleştirilmektedir. Bu şekildeki birleştirmeler bu yapıya sonraki alt turların da sırası ile eklenerek tamamlanmakta ve bir çözümü temsil eden sonuç elde edilmektedir.

Bu algoritma yapısı teorik olarak, GSP probleminin çözümü olan optimum tur oluşturulduğunda aradaşık ziyaret edilecek noktalar olarak yer alması beklenmeyen birbirinden uzak konumlardaki düğümleri de içeren büyük boyutlu ve dolayısı ile çözüm zorluğu içerdiği düğüm sayısı ile üstel şekilde artan bu problemleri daha küçük problemler olarak yapılandırarak çözüme daha hızlı ulaşmayı amaçlamaktadır.

Yukarıda sözel olarak açıklanmış olan FCM-PSO-M algoritmasının sahte kodu ise Tablo 5.3.’te ve MATLAB ile kodlanmış olan algoritmanın akış diyagramı da Şekil 5.3.’te verilmiştir;

Tablo 5.3. PSO-FCM-M algoritması sahte kodu

1. Çözülecek olan probleme ait şehirlerin konumlarını metin dosyasından oku. 2. c1, c2, w popülasyon büyüklüğü, nesil sayısı, alt küme sayısı parametrelerini ata.

3. BCO algoritması ile istenilen alt küme sayısında kümeleme gerçekleştir.

4. PSO alt fonksiyonunu standart parametreler ile başlat. Amaç fonksiyonu küme merkezlerini bağlayan rotanın optimize edilmesidir.

PSO alt fonksiyonu

4.1 Başlangıç: Popülasyondaki her bir i parçacığı için 4.1.1 Rasgele başlangıç konumlarını oluştur. 4.1.2 Rasgele başlangıç hızlarını oluştur. 4.1.3 Amaç fonksiyonu değerlerini değerlendir. 4.1.4 Pbest değerlerini ata.

4.1.5 En iyi Pbest değerini Gbest değeri olarak ata.

4.1.6 Konum değerini hız değeri ile güncelle.

71

Tablo 5.3.(Devam) PSO-FCM-M algoritması sahte kodu 4.2.1 Rassal sayıları oluştur.

4.2.2 Hızları ve konumları vijt 1 wvtij c r (P1 1 bestijt x ) c r (Gijt 2 2 best jt x )ijt

ve

t 1 t t

ij ij ij

x x v formülleri ile güncelle.

4.2.3 Her bir parçacık için amaç fonksiyonu değerlerini değerlendir.

4.2.4 Her bir parçacığın Pbest değerini bu adımdaki amaç fonksiyonu değeri

ile karşılaştır. Bu adımdaki amaç fonksiyonu değeri daha iyi ise Pbest

değerini güncelle.

4.2.5 Bu adımdaki her bir parçacığın Pbest değerlerinin en iyisini Gbest değeri

ile karşılaştır. Bu adımdaki en iyi Pbest değeri Gbest değerinden iyi ise

Gbest değerini güncelle.

4.2.6 Eğer durma kriteri gerçeklendi ise Gbest ve ilgili konum değerlerini ver.

Aksi halde 4.2 adımına geri dön.

5. Küme merkezlerini optimal bağlama sırasını kaydet ve ardışık kümeler için bağlantı noktasını küme merkezleri arasında çizilen doğrunun orta noktasına en yakın olan noktalar olarak seçerek belirle.

6. PSO alt fonksiyonunu standart parametreler ile başlat. Amaç fonksiyonu her bir kümenin iç rotasının optimize edilmesidir.

PSO alt fonksiyonu

6.1 Başlangıç: Popülasyondaki her bir i parçacığı için 6.1.1 Rasgele başlangıç konumlarını oluştur. 6.1.2 Rasgele başlangıç hızlarını oluştur. 6.1.3 Amaç fonksiyonu değerlerini değerlendir. 6.1.4 Pbest değerlerini ata.

6.1.5 En iyi Pbest değerini Gbest değeri olarak ata.

6.1.6 Konum değerini hız değeri ile güncelle.

6.2 Durma kriteri gerçekleşene kadar aşağıdaki adımları tekrarla 6.2.1 Rassal sayıları oluştur.

6.2.2 Hızları ve konumları vijt 1 wvtij c r (P1 1 bestijt x ) c r (Gijt 2 2 best jt x )ijt

ve

t 1 t t

ij ij ij

x x v formülleri ile güncelle.

6.2.3 Her bir parçacık için amaç fonksiyonu değerlerini değerlendir.

6.2.4 Her bir parçacığın Pbest değerini bu adımdaki amaç fonksiyonu değeri

ile karşılaştır. Bu adımdaki amaç fonksiyonu değeri daha iyi ise Pbest

değerini güncelle.

6.2.5 Bu adımdaki her bir parçacığın Pbest değerlerinin en iyisini Gbest değeri

ile karşılaştır. Bu adımdaki en iyi Pbest değeri Gbest değerinden iyi ise

Gbest değerini güncelle.

6.2.6 Eğer durma kriteri gerçeklendi ise Gbest ve ilgili konum değerlerini ver.

Aksi halde 4.2 adımına geri dön.

7. Alt kümelerin küme içi optimum turlarını 5. adımda elde edilen kümelerin bağlama sırasına uygun şekilde sıra ile bağlantı noktalarından birbirine ekleyerek yukarıdaki tabloda gösterildiği gibi nihai turu oluştur.

72

Şekil 5.3. Matlab ile kodlanmış olan PSO-FCM-M algoritması akış diyagramı

Tablo 5.3 ve Şekil 5.3.’te değinilmiş olan alt turların birleşimi işlemi, A – Z aralığında harfler ile gösterilmiş 23 düğümlü farazi bir problemin 5 kümeye bölündüğü ve olası bağlantı noktalarının ve bağlantı sıralarının tabloda berlirtildiği gibi olduğu kabulü altında varsayımsal olarak Tablo 5.4.’te örneklendirilmiştir.

73

Tablo 5.4.’te, oluşturulmuş olduğu kabul edilen 5 kümenin her birinin kendi içinde tur uzunluğunu en azlayacak şekilde PSO ile optimize edildiği ve elde edilmiş olan kümelerin merkezlerinin ayrı bir GSP olarak ele alınıp PSO ile çözüldüğü ve elde edilebilecek optimize bağlantı sıralarının bu şekilde olduğu kabul edilmiştir. Ardışık her küme çifti için belirlenecek olan bağlantı noktalarının Tablo 5.4.’te gösterildiği gibi oluştuğu kabul edildiğinde kümelerin ardışık olarak koyu ve büyük harf ile gösterilen elemanlardan birleştirilmesi ile nihai bütünleşik turun elde edilmiş olacaktır. Tablo 5.4. Alt tur birleştiriminin gösterimi

1. Küme 2. Küme 3. Küme 4. Küme 5. Küme Alt küme elemanları a,b,c,d,e f,g,h,i,j k,l,m,n,o p, r, s,t,u v,y,z PSO alt küme optimum turlar 1. Küme 2. Küme 3. Küme 4. Küme 5. Küme

b-c-e-a-d i-j-f-g-h k-n-m-o-l p-r-u-t-s z-v-y PSO alt küme optimum bağlantı

sırası

3 – 5 – 2 – 1 – 4

PSO alt küme optimum turlar 3. Küme 5. Küme 2. Küme 1. Küme 4. Küme k-n-m-o-l z-v-y i-j-f-g-h b-c-e-a-d p-r-u-t-s Ardışık kümelerin bağlantı

noktalarının belirlenmesi

3.K-5.K 5.K-2.K 2.K-1.K 1.K-4.K m-v y-f h-e d-u Kümelerin bağlantı noktalarını

hizalama

3. Küme 5. Küme 2. Küme 1. Küme 4. Küme o-l-k-n-M- -V-y-z i-j-f-g-h b-c-e-a-d p-r-u-t-s İlk birleşik küme 3. Küme – 5. Küme 2. Küme 1. Küme 4. Küme o-l-k-n-m-v-y-z i-j-f-g-h b-c-e-a-d p-r-u-t-s Ardışık kümelerin bağlantı noktaları 5.K-2.K

y-f Kümelerin bağlantı noktalarını

hizalama

3. Küme – 5. Küme 2. Küme 1. Küme 4. Küme y-z-o-l-k-n-m-V- -F-g-h-i-j b-c-e-a-d p-r-u-t-s Birleşik küme 3. Küme – 5. Küme – 2. Küme 1. Küme 4. Küme y-z-o-l-k-n-m-v-f-g-h-i-j b-c-e-a-d p-r-u-t-s Ardışık kümelerin bağlantı noktaları 2.K-1.K

h-e Kümelerin bağlantı noktalarını

hizalama

3. Küme – 5. Küme – 2. Küme 1. Küme 4. Küme i-j-y-z-o-l-k-n-m-v-f-g-H- -E-a-d-

b-c

p-r-u-t-s Birleşik küme 3. Küme – 5. Küme – 2. Küme – 1. Küme 4. Küme i-j-y-z-o-l-k-n-m-v-f-g-h-e-a-d-b-c p-r-u-t-s Ardışık kümelerin bağlantı noktaları 1.K-4.K

d-u Kümelerin bağlantı noktalarını

hizalama

3. Küme – 5. Küme – 2. Küme – 1. Küme 4. Küme b-c-i-j-y-z-o-l-k-n-m-v-f-g-h-e-a-D- -U-t-s-p-r Birleşik küme 3. Küme – 5. Küme – 2. Küme – 1. Küme – 4. Küme

74

Mantıksal yapısı Tablo 5.3., Tablo 5.4. ve Şekil 5.3’te verilmiş olan yapıyı daha anlaşılır kılmak üzere gerçek hayat problemi örneği şeklinde ülkemiz şehirleri üzerinden ifade edecek olursak, ideal turda 81 ili en kısa mesafeyi kat edecek şekilde dolaşmak isteyen bir gezgin satıcının çözümünde ardışık olarak Edirne – Ardahan – İstanbul – Erzurum – Ankara … şeklinde ülkenin batısı ile doğusu arasında sürekli olarak gidiş ve gelişler içeren bir rotanın en kısa yolu vermemesi öngörülmektedir. Problem önerilen algoritma ile mantıksal olarak ele alındığında ise problemin tamamı olan Şekil 5.4.’teki her bir şehri birlikte değerlendiren 81! Çözüm üzerinden araştırma yapmak yerine problem hali hazırda Şekil 5.5.’te olduğu gibi bölgelere ayrılmış olarak ele alınmaktadır. Bu yöntem ile 81! Olası çözüm içeren problem uzayının tamamı üzerinde araştırma yapmak yerine problem 8! - 10! arasında olası çözüme sahip alt problemler üzerinde çalışılmaktadır.

Şekil 5.4. Türkiye iller haritası [98]

75

5.2.1.1. FCM-PSO-M algoritmasının uygulanması

BCO yöntemi ile PSO algoritmasının kümelere ayırma, alt tur optimize etme ve tekrar birleştirme işlemlerinin adımları rasgele olarak oluşturulmuş olan 30 noktalı bir problem üzerinde 5 kümeye bölünecek şekilde görsel olarak aşağıdaki şekillerde ki gibi uygulanmıştır.

Şekil 5.6. 30 noktalı rasgele oluşturulmuş problem

Geliştirilmiş olan FCM-PSO-M algoritması ile Şekil 5.6.’da görsel olarak ifade edilmiş olan problem örneği ele alındığında, öncelikle Şekil 5.3.’te yer alan akış diyagramına uygun şekilde problem istenilen sayıda alt kümeye MATLAB standart BCO komutu ile bölünecektir. Bulanık kümeleme sonucu elde edilmiş olan kümlerin Şekil 5.7.’deki gibi oluştuğu varsayılmıştır.

76

Şekil 5.8. 30 noktalı rasgele oluşturulmuş problemin küme merkezleri

A-B-C-D-E şekline farklı eleman sayılarındaki beş kümenin merkezleri Şekil 5.8.’de gösterildiği gibi 1-2-3-4-5 şeklinde koordinat ekseni üzerinde BCO algoritması tarafından hesaplanarak bulunmuş olsun. Bu noktada algoritma hem küme merkezlerini 5 noktalı bir GSP olarak ele alarak kümelerin optimum bağlanma sıralarını hesaplamakta, hem de her bir kümenin elemanlarını kendi içinde bir GSP problemi olarak çözerek küme içi optimum rotalarını hesaplamak üzere çalışmaktadır.

Şekil 5.9. 30 noktalı rasgele oluşturulmuş problemin optimum rotaları

Ele alınan problem için optimal küme bağlama sırasının 1-2-3-5-4-1 şeklinde bir döngü olduğu ve her kümenin kendi iç optimal rotalarının ise Şekil 5.9.’da gösterildiği gibi olduğu varsayıldığında algoritma kümeleri birleştirme işlemine optimal küme

77

bağlama sırasının ilk iki elemanı olan 1 ve 2 küme merkezlerine sahip olan A ve B kümeleri ile başlayacaktır.

Şekil 5.10. 30 noktalı rasgele oluşturulmuş problemin A – B kümeleri birleşim noktalarının belirlenmesi

FCM-PSO-M algoritmasında küme bağlantı noktalarının belirlenmesinde bağlanacak küme çiftlerinin merkezleri arasında çizilecek doğrunun orta noktasına her iki kümede de en yakın olan noktalar seçilmektedir. Şekil 5.10.’da 1-2 küme merkezlerini birleştiren kırmızı doğrunun orta noktasına en yakın noktalar A kümesi için 11, B kümesi için 12 olarak belirlenmiştir.

78

A ve B kümelerinin kendi iç optimum rotalarının 11 ve 12 noktalarından birleştirilmesi işlemi için A kümesinin 1-13-11-19-29-6-2-1 şeklindeki optimal turu birleşim noktası 11 en sonda yer alacak şekilde 19-29-6-2-1-13-11-19 şekline getirilmektedir. GSP problemi için rotanın eleman sırası değişmediği sürece başlangıç ve bitiş noktalarının kaydırılması çözümü değiştirmemektedir. Benzer şeklide B kümesi için de 16-3-4-10- 25-15-30-24-12-16 şeklinde elde edilmiş olduğu kabul edilen küme içi rota birleşim noktası olan 12 başa taşınacak şekilde 12-16-3-4-10-25-15-30-24-12 şeklinde tekrar yazılabilir. 19-29-6-2-1-13-11 – 12-16-3-4-10-25-15-30-24 şeklinde bağlanacak olan A ve B kümeleri Şekil 5.12.’de görülmektedir.

Şekil 5.12. 30 noktalı rasgele oluşturulmuş problemin A – B kümelerinin birleşimi Küme merkezlerinin optimal bağlantı sırasında 1-2-3-5-4-1 olduğundan, sonraki adımda 1-2 bağlantısı ile elde edilmiş olan AB kümesi 3 numaralı küme merkezine sahip olan C kümesi ile birleştirilecektir. 2 ve 3 ile gösterilmiş olan küme merkezleri arasında çizilmiş olan doğru ve bu doğrunun orta noktasına her iki kümede de en yakın olan elemanlar Şekil 5.13.’te gösterildiği üzere AB kümesi için 10 ve C kümesi için 5 düğümleri olmuştur. Belirlenmiş olan bu noktalardan AB ve C kümelerinin birleştirilmesi ise Şekil 5.14.’te verilmiştir.

79

Şekil 5.13. 30 noktalı rasgele oluşturulmuş problemin AB – C kümelerinin birleşim noktalarının belirlenmesi

Şekil 5.14. 30 noktalı rasgele oluşturulmuş problemin AB – C kümeleri bağlantıları Birleştirilmiş ABC kümesi ve bu kümeye ait rota ile sonraki adımlarda sırası ile bu birleşik kümeye eklenecek olan E ve D kümeleri Şekil 5.15.’te gösterilmektedir.

80

Şekil 5.15. 30 noktalı rasgele oluşturulmuş problemin AB – C kümelerinin birleşimi ABC kümesi ile E kümesinin birleşim noktaları önceki adımlarda olduğu gibi belirlendiğinde Şekil 5.16.’da gösterildiği gibi 20 ve 7 noktaları olarak elde edilmiştir.

Şekil 5.16. 30 noktalı rasgele oluşturulmuş problemin ABC – E kümelerinin birleşim noktalarının belirlenmesi

81

Şekil 5.17. 30 noktalı rasgele oluşturulmuş problemin ABC – E kümelerinin birleşimi Birleşik ABCE kümesi ve bu kümenin iç rotası Şekil 5.17.’de verilmiştir. 4 ve 5 numaraları küme merkezlerinin birleşim noktaları olan 27 ve 8 düğümleri Şekil 5.18.’de gösterilmiştir.

Şekil 5.18. 30 noktalı rasgele oluşturulmuş problemin ABCE – D kümelerinin birleşim noktalarının belirlenmesi

Belirlenmiş olan 27 ve 8 düğümleri üzerinden ABCE ve D kümelerinin birleştirilmesi Şekil 5.19.’da gösterildiği şekilde olacaktır.

82

Şekil 5.19. 30 noktalı rasgele oluşturulmuş problemin ABCE - D kümelerinin birleşimi Bütün birleştirme işlemleri neticesinde elde edilmiş olan 30 noktayı da içeren birleşik tur Şekil 5.20.’de görülmektedir.

83

5.2.2. FCM-PSO-M2 algoritması ve sahte kodu

BCO yöntemi ile PSO algoritmasını birlikte kullanarak PSO’nun GSP’deki başarımını arttırmaya yönelik geliştirilen ikinci varyant FCM-PSO-M2’dir.

Bu algoritma da FCM-PSO-M algoritması gibi TSPLIB veri setinden konum ve nokta bilgilerini okumaktadır. Bu veriler BCO yöntemi ile istenilen sayıda daha küçük boyutlu alt kümeye ayrılmakta, bu alt kümeler de BCO algoritması ile ikinci kez kendi içinde alt kümelere bölünmektedir. Elde edilen bu ikinci düzey alt kümelerin her biri için standart PSO algoritması optimale yakın tur değerini elde etmek üzere çalıştırılmaktadır. Optimize edilen ikinci düzey alt kümelerin hangi sıra ile birbirine bağlanacakları da küme merkezlerinin yine PSO algoritması ile en kısa tur oluşturacak şekilde sıralanması ile elde edilmektedir. Algoritma ikinci düzey alt kümelerin hangi sıra ile bağlanacağını oluşturduktan sonra, ardışık çiftler şeklinde iki alt küme merkezi arasında çizilen doğrunun orta noktasına en yakın elemanları her iki alt kümede bağlantı noktası olarak seçmektedir. Alt kümelerden ilkinde seçilmiş bu bağlantı noktası oluşturulmuş optimize alt turun son elemanı oluncaya kadar tur sırası korunacak şekilde elemanlar döngüsel olarak ötelenmektedir. Birleştirilecek ikinci alt kümede ise bağlantı noktası olarak belirlenen nokta optimize edilmiş alt turun ilk elemanı olacak şekilde tur elemanları döngüsel olarak ötelenmektedir. Birbirine bağlanacak olan alt turlar birinci alt turun son elemanından sonra ikinci alt turun ilk elemanı başlayacak şekilde ikinci alt tur eklenerek birleştirilmektedir. Bu şekildeki birleştirmeler bu yapıya sonraki alt turlar da sırası ile eklenerek tamamlanmakta ve birinci düzey alt kümelere ait PSO ile elde edilmiş iç rotalar oluşturulmaktadır. Birinci düzey kümelerin bağlantı sırası da PSO algoritması ile optimize edilmekte ve sonrasında bu sıraya göre kümeler birleştirilerek problemin bütününe ait bir çözümü temsil eden sonuç elde edilmektedir.

Yukarıda sözel olarak ifade edilmiş olan FCM-PSO-M2 algoritmasına ait detaylı sahte kod Tablo 5.5.’te verilmiştir. Aynı algoritmanın akış diyagramı ise Şekil 5.21.’de gösterildiği gibi MATLAB programında kodlanmıştır.

84 Tablo 5.5. PSO-FCM-M2 algoritması sahte kodu

1. Çözülecek olan probleme ait şehirlerin konumlarını metin dosyasından oku. 2. c1, c2, w popülasyon büyüklüğü, nesil sayısı, 1. ve 2. düzey alt küme sayısı

parametrelerini ata.

3. BCO algoritması ile istenilen 1. düzey alt küme sayısında kümeleme gerçekleştir. 4. 1. düzey alt kümelerin her birini 2. düzey alt küme sayısında yeni kümelere böl. 5. PSO alt fonksiyonunu standart parametreler ile başlat. Amaç fonksiyonu 2. düzey

alt küme merkezlerini bağlayan rotanın optimize edilmesidir. PSO alt fonksiyonu

5.1 Başlangıç: Popülasyondaki her bir i parçacığı için 5.1.1 Rasgele başlangıç konumlarını oluştur. 5.1.2 Rasgele başlangıç hızlarını oluştur. 5.1.3 Amaç fonksiyonu değerlerini değerlendir. 5.1.4 Pbest değerlerini ata.

5.1.5 En iyi Pbest değerini Gbest değeri olarak ata.

5.1.6 Konum değerini hız değeri ile güncelle.

5.2 Durma kriteri gerçekleşene kadar aşağıdaki adımları tekrarla 5.2.1 Rassal sayıları oluştur.

5.2.2 Hızları ve konumları vijt 1 wvijt c r (P1 1 bestijt x ) c r (Gtij2 2 best jt x )ijt vext 1ij xijt vijt formülleri ile güncelle.

5.2.3 Her bir parçacık için amaç fonksiyonu değerlerini değerlendir.

5.2.4 Her bir parçacığın Pbest değerini bu adımdaki amaç fonksiyonu değeri

ile karşılaştır. Bu adımdaki amaç fonksiyonu değeri daha iyi ise Pbest

değerini güncelle.

5.2.5 Bu adımdaki her bir parçacığın Pbest değerlerinin en iyisini Gbest değeri

ile karşılaştır. Bu adımdaki en iyi Pbest değeri Gbest değerinden iyi ise

Gbest değerini güncelle.

5.2.6 Eğer durma kriteri gerçeklendi ise Gbest ve ilgili konum değerlerini ver.

Aksi halde 5.2 adımına geri dön.

6. Küme merkezlerini optimal bağlama sırasını kaydet ve 2. alt düzeydeki ardışık kümeler için bağlantı noktasını küme merkezleri arasında çizilen doğrunun orta noktasına en yakın olan noktalar olarak seçerek belirle.

7. PSO alt fonksiyonunu standart parametreler ile başlat. Amaç fonksiyonu her bir 2. alt düzey kümenin iç rotasının optimize edilmesidir.

PSO alt fonksiyonu

7.1 Başlangıç: Popülasyondaki her bir i parçacığı için 7.1.1 Rasgele başlangıç konumlarını oluştur. 7.1.2 Rasgele başlangıç hızlarını oluştur. 7.1.3 Amaç fonksiyonu değerlerini değerlendir. 7.1.4 Pbest değerlerini ata.

7.1.5 En iyi Pbest değerini Gbest değeri olarak ata.

7.1.6 Konum değerini hız değeri ile güncelle.

7.2 Durma kriteri gerçekleşene kadar aşağıdaki adımları tekrarla 7.2.1 Rassal sayıları oluştur.

7.2.2 Hızları ve konumları vt 1ij wvtij c r (P1 1 bestijt x ) c r (Gtij 2 2 best jt x )ijt

ve

t 1 t t

ij ij ij

x x v formülleri ile güncelle.

85

Tablo 5.5.(Devam) PSO-FCM-M2 algoritması sahte kodu

7.2.4 Her bir parçacığın Pbest değerini bu adımdaki amaç fonksiyonu değeri

ile karşılaştır. Bu adımdaki amaç fonksiyonu değeri daha iyi ise Pbest

değerini güncelle.

7.2.5 Bu adımdaki her bir parçacığın Pbest değerlerinin en iyisini Gbest değeri

ile karşılaştır. Bu adımdaki en iyi Pbest değeri Gbest değerinden iyi ise

Gbest değerini güncelle.

7.2.6 Eğer durma kriteri gerçeklendi ise Gbest ve ilgili konum değerlerini ver.

Aksi halde 7.2 adımına geri dön.

8. 2. alt düzey kümelerin küme içi optimum turlarını 5. adımda elde edilen kümelerin bağlama sırasına uygun şekilde sıra ile bağlantı noktalarından birbirine

Benzer Belgeler