Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Bloklamalı Akış Tipi Çizelgeleme Problemlerinde Toplam Akış Süresini Minimize Eden Kesikli Yapay Arı Kolonisi Algoritması 12.11.2013
1. Bloklamalı Akış Tipi Çizelgeleme
Problemlerinde Toplam Akış Süresini
Minimize Eden Kesikli Yapay Arı
Kolonisi Algoritması (2012)
Deng Guanlong, XU Xhenhao, Gu Xingsheng
Key Laboratory of Advanced Control and Optimization for Chemical Process, Ministry of
Education, East China
University of Science and Technology, Shanghai 200237, China
Mustafa Tanyer
12.11.2013
2. Permutasyon Akış Tipi Çizelgeleme
• Makineler için iş sıraları aynı
•Makineler arası sınırsız kapasiteli bufferlar
• 0 buffer veya makinede bekleme ihmal
• örn: Kimyasal süreçler
İş Parçası
M1
M2
Makine
M3
M4
3. Bloklamalı Akış Tipi Çizelgeleme
• Limitli veya 0 buffer
• Biten iş makinede bekler
• Diğer makine boş olunca transfer yapılır
• Amaç: Akış süresi minimizasyonu (makespan)
• Notasyon: Fm/block/Cmax
• m > 2 makine için NP-hard
4. Makale Konusu
• Beklemeli akış tipi çizelgeleme
• DABC çözüm metasezgiseli*
• Minimum toplam tamamlanma zamanı
• Başlangıç popülasyonu: NEH algoritması*
• Açgözlü algoritması kullanılarak
• İşçi
• Gözcü
• Kaşif
arı şemaları üretimi
• Sonuçların diğer algoritmalarla kıyaslanması
*Prof Dr. Derviş Karaboğa (2005)
*Navaz-Enscore-Ham
5. Sınırlamalar
• n iş N = {1,2,⋅ ⋅ ⋅,n} / m makine M = {M1,M2 ,⋅ ⋅ ⋅,Mm}
• M1 – M2 – M3 …… - Mm proses sıralaması
• pij: j işinin i makinesinde tamamlanma süresi
• Makine- max 1 iş, İş- max 1 makine (aynı anda)
• pij sürekli, bölünemez
• İş sıralaması tüm makinelerde aynı
• Beklemeler makinenin içinde (blocking)
• Amaç: Toplam akış süresi minimizasyonu
6. Formülasyon
• π = {π (1),π (2),⋅⋅ ⋅,π (n)} iş permutasyonu
• TFT(π)= π permutasyonunun toplam akış süresi
• dπ ( j),i = π ( j) işinin Mi den ayrılma zamanı
8. Kesikli Yapay Arı Kolonisi Algoritması (DABC)
• 3 tip arı
• İşçi
(Employed)
• Gözcü (Onlooker)
• Kaşif
(Scout)
•Başlangıç Popülasyonu = Besin Kaynağı
• İşlem Sırası: İşçi – Gözcü – Kaşif
• ABC kullanımı zor (sürekli – kesikli dönüşümü)
9. 1. Yerel Arama Genel Özellikleri
• “Araya ekleme” (Insertion) tabanlı
• Herhangi bir işin yerini değiştirme
•
,
permutasyonunda bir iş olsun
•
, s’nin yer almadığı alt dizi*
•
s işinin h. sıraya yerleştirildiği permutasyon
•
amaç fonksiyonunu min. eden
*ω :omega
10. Yerel Arama Yöntemi
•
permutasyonu rastgele oluşturuldu
•
, içerisindeki her bir işlem
•
için
bulundu
•
akış değeri ‘den küçük ise değiştir (açgözlü)
• 2’den n’e kadar her değer için işlemi tekrarla.
12. 2. Yerel Arama Genel Özellikleri
• Yer değiştirme (Swap) tabanlı
•
,
permutasyonunda bir iş olsun
• s işinin diğer işlerle yeri değiştirilir.
•
amaç fonk. min. eden permutasyon bulunur.
14. Başlangıç
• -1: tane sonuç rastgele seçilir.
• 1 tane sonuç NEH-WPT algoritmasından alınır.
•
: her bir seçilen sonuç
• Hepsine “araya ekleme” yerel araması uygulanır.
• Sonuçlar başlangıç popülasyonu olarak kullanılır.
15. İşçi Arı Aşaması
•
tane işçi arı kullanılır.
• Bir sonuca komşu bir sonuç üretilmesini sağlar.
•
prosedürü kullanılacak. (pr1 ve pr2 parametreleri)
• pr1 tane farklı iş seçilir ve ekleme kümesine (EL) konulur.
• EL’ den bir iş seç, kendi yeri hariç n-1 yere yerleştir.
• Akış zamanlarına bak, en düşük pr2 sıralamayı kaydet.
• pr2’ ye kaydedilen iş sıralarından birini rasgele seç ve ilk sıra ile
değiştir. * Bu aşamada değişiklik esas kayıtta yapılmaz, fazladan bir
kayıt tutulur. Değişikliğe gözcü arı karar verir.
• EL’ de eleman kalmayana kadar bu işlemi yap.
• Denemesi yapılan 5 strateji:
St. 1
St 2
St 3
St 4
St 5
pr1
2
3
3
4
2
pr2
8
1
3
3
n-1
16. Gözcü Arı Aşaması
• İşçi arı tarafından bulunan sonuçlar üstünde çalışır.
•Hem “araya ekleme” hem “yer değiştirme” tabanlı arama
(Yerel optimum’dan kurtulmak için)
• Önce
kullanılır.
• Sonra
kullanılır.
( π iyileşti ise sonraki adım, değilse sonlandırılır)
•
uygulanır
( π iyileşti ise 2. adıma dönülür, değilse sonlandırılır)
• Bulunan sonuç, başlangıç popülasyonu ile karşılaştırılır.
• İyi ise değiştirilir, kötü ise değiştirilmez.
17. Kaşif Arı Aşaması
• Uygun sonuç (besin kaynağı) üretir.
•
, pr1:8 ve pr2: 3 değerleri için uygulanır.
• “Araya ekleme” tabanlı arama yapılır.
• Popülasyondan “turnuva seçimi” ile seçilen 2 değerin
kötüsü ile, kaşif arının bulduğu değer değiştirilir.
18. DABC’nin uygulanması
•
•
‘in şu ana kadar bulunan en iyi sonuç,
‘nin işçi arıların bulduğu sonuçlar
olduğunu kabul edersek,
• Gözcü arının bulduğu sonucun başlangıçtaki sonuçtan
kötü olduğu durumda uygulama başta seçilen adet
sonuçtan rasgele seçilen başka bir tanesine atlar.
20. Sonuçlar
• Önerilen DABC algoritması, Taillard'ın test değerleri
kullanılarak denendi.
• 20 iş 5 makine – 100 iş 20 makine arası 90 değer
• Kodlama: C++
• Bilgisayar: Intel i5-2400 işlemci 3.1 ghz hız 2GB Ram
• = 10 kabul ediliyor
• Önerilen DABC ve bilinen diğer algoritmalarla deney
10’ar kez tekrarlanıyor
•
•
•
•
= A algoritması toplam akış zamanı
= En iyi toplam akış zamanı
= Oransal yüzdelik fark
22. Varyans Analizi (Anova)
• Çoklu gruplar için yapılan
bir t-testi analizi
• LSD: En küçük önemli fark
aralıkları
• Üst üste binme yok
• %95 güven aralığında
ortalamalar farklı
23. Yakınsama Eğrileri
• Ta47 ve Ta 67 rastgele seçildi
• Deneme yapılan 4 algoritma
değeri için aynı sürede
verdikleri sonuçlar kıyaslandı
• En iyi sonuçlar DABC_D ‘nin
24. Sonuç
•
•
•
•
•
•
•
Beklemeli akış tipi çizelgeleme problemleri
Toplam Akış Süresi minimizasyonu
Kesikli yapay arı kolonisi algoritması methodu
Başlangıç popülasyonu açgözlü + NEH_WPT ile
Arı aşamaları farklılaştırılmış
Taillard test değerleri ile denendi
Daha iyi sonuçlar