Esnek Atölye Tipi Çizelgeleme
Problemlerinde Toplam Akış
Süresini Minimize Eden Bir Hibrit
Harmoni Arama Algoritması (2013...
Atölye Tipi Çizelgeleme (JSP)
KISITLAR
• n iş – m makine
• Her iş için farklı sayıda işlem
• Her işlem için öncelik sırası...
Atölye Tipi Çizelgeleme için
GANNT Diyagramı
Esnek Atölye Tipi Çizelgeleme (FJSP)
• Aynı işlemi yapan makine seti (setleri)
• Gerçek üretim ortamlarına daha uyumlu

• ...
FJSP Modeli
•
•
•
•
•
•
•
•

q adet bağımsız iş J:,J1,J2,…,Jq}
r adet makine M={M1,M2,…,Mr}
Her Ji için gereken işlemler O...
FJSP Modeli
• Problem:
– Her işlemi uygun bir makineye atama (Rotalama)
– Makineler için işlem sıralaması belirleme (Sıral...
Örnek P-FJSP Problemi

O1,1 : 1 numaralı işin 1. işlemi
Harmoni Arama Algoritması
• Zong Woo Geem, 2001
• Müzisyenin notalarla harmoni oluşturması
• Perde – Kalite – Şiddet

Uyum...
Harmoni Arama
• Harmoni Hafızası
– GA’da en iyilerin kalması yöntemine benzer
– En iyi harmoniler hafızaya alınacak
– *0,1...
Neden Harmoni Arama ?
• Avantajları
– Daha hızlı
– Basit yapı

– Az parametre
– Kolay uygulama

• Dezavantajı:
– Sürekli y...
Önerilen Hibrit Harmoni Arama Algoritması
• HM: Harmoni hafızası
• HM= {X1,X2, … , XHMS} ; XHMS=harmoni hafızası boyutu
• ...
Algoritma Akışı
1.
2.
3.
4.
5.

Parametreler ve durdurma kriteri belirlenir
Başlangıç HM, rastgele ve sezgisel yardımı ile...
Harmoni Vektörü Özellikleri
•
•
•
•
•

Xi={xi(1), xi(2), … , xi(n)} ; i. harmoni vektörü
Xi aynı zamanda reel sayı vektörü...
İşlem Numaralandırma
• Her işleme bir ID atanır
• Örn:
Örnek P-FJSP Problemi

O1,1 : 1 numaralı işin 1. işlemi
Makine Atama Vektörü
•
•
•
•

Harmoni vektörünün ilk kısmı
İşlem sayısı (l) kadar makine atama olur
MA=,u(1), u(2), … , u(...
Makine Atama Vektörü Oluşturma
• s(j): j işlemi için uygun alternatif makine sayısı
• round(x): en yakın sayıya yuvarla
• ...
İşlem Sırası Vektörü
•
•
•
•
•

Harmoni vektörünün ikinci kısmı
l adet işlem sıralanır
OS=,v(1), v(2), … , v(l)Sorun: İşle...
İşlem Sırası Vektörü Oluşturma

•
•

Largest Position Value (LPV) ??? (MAKALEYİ HOCAYA SOR)
L. Wang, Q. Pan, M. Fatih Tasg...
Çizelge Tipleri ve Arama Uzayı Daraltma
•

•
•

•
•

Aktif Çizelge: Makine işleme sıraları değiştirildiğinde en az bir işl...
Aktif Çizelge Elde Etme
• Mk makinesinde işlenecek bir Oi,j işlemi alınır.
• Mk‘nın Oi,j‘yi yerleştirecek bir boş zamanı o...
İki Vektörlü Kodun Açılması İşlemi Sahte Kodu
Harmoni Hafızası Başlatma – Sezgisel Kullanımı
• Lokalizasyon Yaklaşımı (AL) uygulanır

• Her işlem için en kısa işlem zam...
Harmoni Hafızası Başlatma – Rastgele Yöntemi
• Önemli çünkü;
– Yakınsama hızı
– Son sonuç kalitesini belirler

• X =,x(1),...
Yeni Harmoni Vektörü Oluşumu
• Hafıza kriteri, perde ayarlaması ve rastgele seçim kriterleri
• Xnew ={xnew(1), xnew(2), … ...
Yeni Harmoni Oluşturma Sahte Kodu
Probleme Bağlı Yerel Arama
•
•
•

HS’de yok
Ayrımlı grafik modeli (disjunctive graph)
Nodlar
– S sahte başlangıç nodu
– E ...
Ayrımlı (Disjunctive) Grafik Devam
Ayrımlı Grafik sayesinde bulunan 3 önemli sonuç:
1.
2.
3.

Kritik yolu kısaltmak toplam...
Genel Kritik İşlemler
•

İşlem süreleri tam sayı ve dar aralıkta bulunan rakamlardan oluşan çizelgelerde
birden çok kritik...
Probleme Bağlı Yerel Arama Sahte Kodu
Harmoni Vektörü Güncelleme
• Belirtilen işlemler belirli iterasyon sayıları
kadar yapılır
• Eğer Xnew , Xworst ‘ten iyiyse...
Deney Kurulumu
• PC özellikleri: 2.83 GHz 15.9 GB Ram hafızası
•

Test Grupları:
– Kacem data
– Fdata
– BRdata
– DPdata
– ...
BR Verilerine göre standart sapmalar

KACEM verilerine göre örnek kıyaslama

Çözdürülen GA’lara göre yakınsama eğrileri
TEŞEKKÜRLER
Mustafa Tanyer
Esnek Atölye Tipi Çizelgeleme Problemleri için Bir Melez Harmoni Arama Algoritması
Upcoming SlideShare
Loading in...5
×

Esnek Atölye Tipi Çizelgeleme Problemleri için Bir Melez Harmoni Arama Algoritması

739

Published on

A hybrid harmony search algorithm for the flexible job shop
scheduling problem

Yuan Yuan, Hua Xu, Jiadong Yang

State Key Laboratory of Intelligent Technology and Systems,
Tsinghua National Laboratory for Information Science and Technology,
Department of Computer Science and Technology,
Tsinghua University,
Beijing 100084, PR China

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
739
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Esnek Atölye Tipi Çizelgeleme Problemleri için Bir Melez Harmoni Arama Algoritması

  1. 1. Esnek Atölye Tipi Çizelgeleme Problemlerinde Toplam Akış Süresini Minimize Eden Bir Hibrit Harmoni Arama Algoritması (2013) Yuan Yuan, Hua Xu, Jiadong Yang State Key Laboratory of Intelligent Technology and Systems, Tsinghua National Laboratory for Information Science and Technology, Department of Computer Science and Technology, Tsinghua University, Beijing 100084, PR China Mustafa Tanyer 31.12.2013
  2. 2. Atölye Tipi Çizelgeleme (JSP) KISITLAR • n iş – m makine • Her iş için farklı sayıda işlem • Her işlem için öncelik sırası • Bir işlemi sadece bir makine yapabilir * • Bir makinede bir anda en fazla bir iş • İşlemler bölünemez • t = 0 ‘da bütün makineler müsait • Göz ardı edilebilir set up süreleri KARAR FONKSİYONU: • İşleri makinelerde nasıl sıralayalım ki verilen performans göstergesi optimal olsun?
  3. 3. Atölye Tipi Çizelgeleme için GANNT Diyagramı
  4. 4. Esnek Atölye Tipi Çizelgeleme (FJSP) • Aynı işlemi yapan makine seti (setleri) • Gerçek üretim ortamlarına daha uyumlu • + kısıt: işlem makine atama (daha zor) • JSP NP-zor dolayısıyla FJSP NP-zor
  5. 5. FJSP Modeli • • • • • • • • q adet bağımsız iş J:,J1,J2,…,Jq} r adet makine M={M1,M2,…,Mr} Her Ji için gereken işlemler Oi,1,Oi,2,…,Oi,ni Her işlem için öncelik kısıtı var Oi,j işlemi Mi,j makine kümesinde yapılabilir Mi,j ⊂ M ise P-FJSP, Mi,j = M ise T-FJSP (bir iş yeterli) İşlem süreleri makinelere bağımlı Pi,j,k = Oi,j işinin Mk makinesinde işlem süresi
  6. 6. FJSP Modeli • Problem: – Her işlemi uygun bir makineye atama (Rotalama) – Makineler için işlem sıralaması belirleme (Sıralama) • Amaç: Toplam işlem süresi minimizasyonu – Cmax= max1≤i≤q(Ci)
  7. 7. Örnek P-FJSP Problemi O1,1 : 1 numaralı işin 1. işlemi
  8. 8. Harmoni Arama Algoritması • Zong Woo Geem, 2001 • Müzisyenin notalarla harmoni oluşturması • Perde – Kalite – Şiddet Uyum • Bir Müzisyenin Doğaçlama Yapması – Bildiği bir parça çalabilir (Harmoni Hafızası) – Bildiği bir parçanın benzerini çalabilir (Perde ayarı) – Tamamen doğaçlama yapabilir (Rastgele yöntemi)
  9. 9. Harmoni Arama • Harmoni Hafızası – GA’da en iyilerin kalması yöntemine benzer – En iyi harmoniler hafızaya alınacak – *0,1+ aralığında harmoni kabul parametresi • 0’a çok yakın – yakınsama gecikir • 1’e çok yakın – arama kalitesizleşir • Perde Ayarlaması – GA’daki mutasyon operatörüne benzer – Harmoni hafızasını değiştirir – Bant aralığı* ve perde ayarlama oranı parametreleri • 0’a çok yakın - yakınsama gecikir • 1’e çok yakın - iyi sonuçlar kaybedilir • Rastgele Yöntemi – Rastgele sonuç üretir – Perde ayarlaması - yerel arama /// Rastgele yöntemi - global arama
  10. 10. Neden Harmoni Arama ? • Avantajları – Daha hızlı – Basit yapı – Az parametre – Kolay uygulama • Dezavantajı: – Sürekli yapısı
  11. 11. Önerilen Hibrit Harmoni Arama Algoritması • HM: Harmoni hafızası • HM= {X1,X2, … , XHMS} ; XHMS=harmoni hafızası boyutu • Xi={xi(1), xi(2), … , xi(n)} ; i. harmoni vektörü • Xbest , Xworst ; En iyi ve en kötü harmoni vektörleri • Daha küçük f(X) daha iyi harmoni
  12. 12. Algoritma Akışı 1. 2. 3. 4. 5. Parametreler ve durdurma kriteri belirlenir Başlangıç HM, rastgele ve sezgisel yardımı ile belirlenir HM’deki her vektör FJSP’ye uygulanır Xbest ve Xworst bulunur Yeni bir harmoni hafızası; – – – hafıza faktörleri, perde ayarı ve rastgele seçim dikkate alınarak belirlenir 6. Yeni harmoni hafızasında yerel arama yapılır* 7. Xworst ile bulunan harmoni vektörü kıyaslanır 8. Durdurma kriteri sağlanana kadar işlem devam eder
  13. 13. Harmoni Vektörü Özellikleri • • • • • Xi={xi(1), xi(2), … , xi(n)} ; i. harmoni vektörü Xi aynı zamanda reel sayı vektörü l , FJSP’de yapılacak toplam işlem sayısı olsun n = 2l Harmoni vektörü 2 parçadan (2 vektör kodu) oluşur: – X(1) = ,x(1), x(2), . . ., x(l)- : İşlem-makine atama bilgileri – X(2) = ,x(l + 1), x(l + 2), . . ., x(2l)- : Makinelerdeki işlem sıraları
  14. 14. İşlem Numaralandırma • Her işleme bir ID atanır • Örn:
  15. 15. Örnek P-FJSP Problemi O1,1 : 1 numaralı işin 1. işlemi
  16. 16. Makine Atama Vektörü • • • • Harmoni vektörünün ilk kısmı İşlem sayısı (l) kadar makine atama olur MA=,u(1), u(2), … , u(l)u(i) : i işini uygun makine setinde kaçıncı makinenin yaptığı • Örn:
  17. 17. Makine Atama Vektörü Oluşturma • s(j): j işlemi için uygun alternatif makine sayısı • round(x): en yakın sayıya yuvarla • 1 ile s(j) arasında bir tam sayı (makine) bulundu
  18. 18. İşlem Sırası Vektörü • • • • • Harmoni vektörünün ikinci kısmı l adet işlem sıralanır OS=,v(1), v(2), … , v(l)Sorun: İşlem önceliklerini yansıtma ihtiyacı Çözüm: İşlem tabanlı gösterim
  19. 19. İşlem Sırası Vektörü Oluşturma • • Largest Position Value (LPV) ??? (MAKALEYİ HOCAYA SOR) L. Wang, Q. Pan, M. Fatih Tasgetiren, Minimizing the total flow time in a flow shop with blocking by using hybrid harmony search algorithms, Expert Systems with Applications 37 (12) (2010) 7929– 7936.
  20. 20. Çizelge Tipleri ve Arama Uzayı Daraltma • • • • • Aktif Çizelge: Makine işleme sıraları değiştirildiğinde en az bir işlemin daha erken bitirildiği ve hiçbir işlemin daha geç bitirilmediği bir çizelge bulunamıyor ise Yarı Aktif Çizelge: Makine sıralaması değiştirilmeden hiçbir işlem daha erken bitirilemiyorsa Gecikmesiz Çizelge: İşlenmeyi bekleyen bir işlem varken hiçbir makine boşta değilse Simon French: Toplam işlem süresi minimizasyonunda optimal diziliş “aktif çizelgelerden birindedir. (kanıtlanmış, 1982) Yani, arama uzayı uygulanabilir aktif çizelgelere düşürülebilir
  21. 21. Aktif Çizelge Elde Etme • Mk makinesinde işlenecek bir Oi,j işlemi alınır. • Mk‘nın Oi,j‘yi yerleştirecek bir boş zamanı olup olmadığı aranır. – Varsa Oi,j boş zamana yerleştirilir – Yoksa Oi,j sona yerleştirilir • [SX, EX], Mk‘da bir boş zaman aralığı, • ci,j , Oi,j işleminin tamamlanma süresi olursa sağlanır ise uygun bir zaman aralığı vardır.
  22. 22. İki Vektörlü Kodun Açılması İşlemi Sahte Kodu
  23. 23. Harmoni Hafızası Başlatma – Sezgisel Kullanımı • Lokalizasyon Yaklaşımı (AL) uygulanır • Her işlem için en kısa işlem zamanlı makine seçilir • Her bir makine için toplam işlem süresi bulunur • Her makine için en fazla kalan işlemi bulunan iş öncelikli olarak işlemler sıralanır (MWR kuralı) • Sıralama harmoni vektörüne çevrilir
  24. 24. Harmoni Hafızası Başlatma – Rastgele Yöntemi • Önemli çünkü; – Yakınsama hızı – Son sonuç kalitesini belirler • X =,x(1), x(2), … , x(n)- harmoni vektörü Her bir x(i) için: uygulanarak bulunur
  25. 25. Yeni Harmoni Vektörü Oluşumu • Hafıza kriteri, perde ayarlaması ve rastgele seçim kriterleri • Xnew ={xnew(1), xnew(2), … , xnew(n)} yeni harmoni vektörü olsun: Hafıza kriteri Rastgele seçim kriteri HMCR: HM’de kaydedilenlerden bir değer seçme olasılığı • Eğer xnew(j) , HM içinden seçildi ise perde ayarlaması yapılır: PAR: Perde ayarlama oranı parametresi
  26. 26. Yeni Harmoni Oluşturma Sahte Kodu
  27. 27. Probleme Bağlı Yerel Arama • • • HS’de yok Ayrımlı grafik modeli (disjunctive graph) Nodlar – S sahte başlangıç nodu – E sahte bitiş nodu – Diğer nodlar işlemler • Oklar – Birleştirici oklar (C): aynı işin art arda işlemleri – Ayırıcı oklar (D): aynı makinede yapılan art arda işler • • Nod üstündeki rakamlar: işlem süreleri Ayırıcı Grafik 2 önemli özellik: – – Uygulanabilir çizelgelerde dönüşsel (cyclic) yollar yoktur Eğer grafik dönüşsel değilse en uzun yol kritik yoldur, toplam işlem süresini verir. Makaledeki grafik ve nod isimleri yanlış Bu yüzden internet örneği
  28. 28. Ayrımlı (Disjunctive) Grafik Devam Ayrımlı Grafik sayesinde bulunan 3 önemli sonuç: 1. 2. 3. Kritik yolu kısaltmak toplam süreyi kısaltır Kritik yolda bulunmayan nodların değişimi gereksizdir Dolayısıyla, Kritik yol üzerindeki nodlar üzerinde çalışılır Dolayısıyla, kritik yol üzerindeki nod’un yeri öncelik kuralları dikkate alınarak, başka makineye atanarak değiştirilir. Yapılan işlem kritik yolu büyütürse başka nod denenir, Belirtilen işi tek makine yapıyorsa başka nod denenir. KRİTİK YOL ÜSTÜNDEKİ NOD SAYISI ÇOK YÜKSEK İSE?
  29. 29. Genel Kritik İşlemler • İşlem süreleri tam sayı ve dar aralıkta bulunan rakamlardan oluşan çizelgelerde birden çok kritik yol olma olasılığı çok yüksektir – İşlem yükü azalıyor, kod yükü artıyor Eğer Böyle Bir Çizelge Varsa: • Bir işlemin en erken başlama süresi, toplam süreyi uzatmayan en geç başlama süresine eşitse bu işlem“kritik işlem”dir • Ayrımlı grafikteki bir kritik yolda yalnız kritik işlemler bulunur • Bir kritik işlem bütün kritik yollarda bulunuyorsa bir “genel kritik işlem”dir  Eğer iki kritik işlemin işlem sürelerinde çakışma varsa ikisi de genel kritik işlem olamaz. • Genel kritik işlem varsa, sadece onlar yer değiştirir, kritik işlemlere dokunulmaz. Çünkü böyle durumlarda kritik işlemlerin değişmesi toplam süreyi düşürmez • Bu prosedür yerel aramadaki işlem sayısını azaltarak etkinliği artırır.
  30. 30. Probleme Bağlı Yerel Arama Sahte Kodu
  31. 31. Harmoni Vektörü Güncelleme • Belirtilen işlemler belirli iterasyon sayıları kadar yapılır • Eğer Xnew , Xworst ‘ten iyiyse değiştirilir, • Yeniden etiketleme yap • Eğer Xnew , Xworst ‘ten kötüyse hiçbir şey yapma
  32. 32. Deney Kurulumu • PC özellikleri: 2.83 GHz 15.9 GB Ram hafızası • Test Grupları: – Kacem data – Fdata – BRdata – DPdata – BCdata – HUdata Çalıştırma Sayıları 30 30 30 5 5 5 Kıyaslama Kriterleri: BCmax: Çalıştırmalar arasındaki en kısa toplam akış süreleri AV(Cmax): Ortalama toplam akış süreleri SD: Toplam akış süresi standart sapmaları AV(CPU): Ortalama sonuca ulaşma süreleri **AV(CPU) değerleri orijinal makalelerden alınma • Kıyaslanan algoritmalar makalelerden alınma •Bilgisayar özellikleri farklı • Ayrıca 2 farklı GA çözdürülüyor •Program dilleri farklı • Bu algoritma parametrelerini yazar atıyor HHS Parametreleri: • Harmoni hafızası büyüklüğü (HMS) = 5 • Harmoni hafızası gözden geçirme oranı (HMCR) = 0.95 • Perde ayarlama oranı (PAR) = 0.3 • Kısıtlama oranı (&) = 1 • Doğaçlama sayısı (NI) = iterasyona bağımlı • Yerel arama maksimum sayısı (loopmax) = Iterasyona bağımlı
  33. 33. BR Verilerine göre standart sapmalar KACEM verilerine göre örnek kıyaslama Çözdürülen GA’lara göre yakınsama eğrileri
  34. 34. TEŞEKKÜRLER Mustafa Tanyer

×