10.07.2015 Views

Akademik Bilişim '10 10 - 12 Şubat 2010 Muğla

Akademik Bilişim '10 10 - 12 Şubat 2010 Muğla

Akademik Bilişim '10 10 - 12 Şubat 2010 Muğla

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

İş Akış Çizelgeleme Problemi Üzerinde NEH, FRB3 ve FRB4 Sezgisellerinin KarşılaştırılmasıMuaz Salih Kurnaz, Özge Kart• Makineler her zaman uygundur.• Her bir makine yalnızca bir işi işleyebilirve her bir iş yalnızca bir makinede işlenir.• Makinede işlenen işin yarıda kesilmesimümkün değildir.• Eğer bir işin gireceği makinede başka biriş varsa, diğer iş, makinenin boşalmasınıkuyrukta beklemek zorundadır.Genellikle işlerin permütasyonuyla bir çok sıralamaelde edilebilir. Bu permütasyonlar makinedenmakineye değiştiği için çözüm aralığı( n ! m ) tane çizelgeden oluşur. Ancak iş akışçizelgeleme literatüründe bu genel durum çoknadir göz önüne alınır. Tüm makineler içinaynı permütasyon kullanılarak basitleştirilir.Bundan dolayı olası çizelge sayısı n! tanedirve problem Graham ve arkadaşları [2] tarafındanF/prmu/Cmax olarak gösterilmiştir. Buproblem aynı zamanda permütasyon iş akış çizelgelemeproblemi olarak bilinir.Biz bu makalede, bu permütasyon iş akış çizelgelemeproblemlerine çözüm olarak geliştirilenNEH [3] algoritmasının olumsuz yanlarınıdüzeltmeye çalışmak üzere önerilen FRB3 veFRB4 algoritmaları [4] üzerinde çalışmıştır.Zaman ve performans yönlerinden bu üç yöntemibirbirleriyle karşılaştırılmıştır.2. NEH (Nawaz Enscore Ham ) SezgiseliNEH prosedürü, tüm makinelerdeki uzun işlenmesüresine sahip işlerin mümkün olduğuncaerken bitirilmesi esasına dayanmaktadır. NEHüç adımdan oluşur:1) Tüm işlerin toplam işlenme zamanlarınınbulunması,Pjm= ∑ P (1)i=1ij2) İşlerin azalan sıraya göre sıralanması,6263) j işinin, j = 1, 2…..n, olmak üzere alınıp sıralanmışişlerin arasında tüm olası pozisyonlarayerleştirilerek en iyi pozisyonun bulunması.Örnek olarak; Sıralanan n iş içerisinden toplamişlem zamanları en yüksek olan iki iş seçilir.Seçilen iki iş sıraya konarak tamamlanma süreleribulunur. Kısmi olarak bulunan bu sürelerdenen küçük olan iş sırası seçilerek bu ikiişin birbirlerine olan önceliği belirlenmiş olur.Daha sonra toplam işlem zamanı en büyük olandiğer bir iş seçilir. Bu iş; olası tüm pozisyonlarakonarak tekrardan kısmi tamamlama süresibulunur ve bu süre bir sonraki adımlarda kullanılmaküzere sabitlenir. Bütün işler yerleştirilenedek aynı işlemler uygulanır.Sıralanan işlerin işlem süresi (Cmax) aşağıdakiformülle hesaplanır:C i,π(j)=max{C i-1,π(j),C i,π(j-1)}+p iπ(j), (2)C max=C m,π(n),j bir işin kaçıncı sırada olduğunu, C i,j, j işinini makinesinde tamamlanma süresini gösterir.Ayrıca, C 0,π(j)=0 ve C i,π(0)=0, i M, j N.C max‘ın hesaplanma karmaşıklığı O(nm) dir.Görüldüğü gibi, adım(1) in karmaşıklığı O(nm)dir. İkinci adım yalnızca sıralamadır ve onunda karmaşıklığı O(nlogn) dir. Adım(3) de ise nadımdan oluşan bir döngü bulunmaktadır. Herj. adımda j işi yerleştirilir ve yerleştirilen her işiçin C maxdeğeri hesaplanır. Böylece, toplamdan( n + 1 )/ 2 −1yerleştirme yapılmış olur.(j= 1 olması yapılacak yerleştirmenin olmadığıanlamına gelmektedir.) Son adımda n işe ulaştığımıziçin karmaşıklık O(n 3 m) dir. Büyük ndeğerleri için algoritma yavaş çalışabilmektedir.Bir önceki formüldeki gibi j. işi pozisyonayerleştirirken, k, tüm C i,hh ={k −1,k −2,...,1} bir önceki yerleştirmede hesaplanmıştır.Taillard[5] da buna benzer bir yöntem izlemiştir.Sonuç olarak verilen adımdaki tüm yerleştirmelerinkarmaşıklığı O(nm) olarak hesaplanır.Bu durum NEH in toplam karmaşıklığınıO(n 2 m) e kadar azaltır. Bu geliştirilen metot”NEHT” ya da “Taillard hızlandırıcılı NEH”olarak adlandırılır. İlerideki bölümlerde de gösterileceğiüzere NEHT, büyük değerler için bileoldukça hızlı çalışmaktadır. Bazı yazarlar, genelolarak NEH metodunun ilk ve ikinci adımlarıüzerinde çalışmışlardır. Framinan ve arkadaşları[6] henüz adım (3) ün uygulanmadığıişler için 177 farklı ilk sıra üzerinde çalışmışlardır.Cmax üzerine yaptıkları çalışmalarda,Nawaz ve arkadaşlarının [3] yaptıkları sıranınen etkin sıra olduğunu görmüşlerdir. Ruiz vearkadaşları [7] NEH in adım(2) den sonra bazıişlerin rastgele olarak aralarında değiştirilmişşeklini kullanmışlardır. Bu da NEH metodununevrimsel algoritmalarda ilk popülasyon içinfarklı iyi bireylerin yaratılmasında kullanılmasınısağlamıştır. Son zamanlarda Kalczynski veKamburowski [8] tie-breaking (düğüm çözme)kuralını öne sürmüşlerdir. Bu kural, adım(3) deişleri yerleştirirken bir düğüm gözlendiğindeuygulanır. Bu düğüm çözme kuralı iki makinelidurumlar için optimum sonuçlar verir. Herdurumda, algoritma üzerindeki iyileştirmeleroldukça azdır ve nitekim FRB3 sezgisellerininde NEH ‘ e göre avantajı, %0.17 olduğu hesaplanmıştır[4].3. FRB3 sezgiseliNEH metodunun olumsuz bir özelliği, sıralanmışbir işin yerinin, yeni işler geldikçe hepsabit kalmasıdır. Fakat bu yeni gelen işlerle,yerlerin tekrardan değiştirilmesi çoğu zamandaha iyi sonuçlar vermektedir. FRB sezgiselleriNEH ‘in bu olumsuz yanını düzeltip daha iyisonuçlar üretmeye çalışmaktadır.FRB3 sezgiseli FRB sezgiselleri arasında eniyi sonuçları verenidir. Birbiriyle aynı mantığasahip olan FRB1 ve FRB2 algoritmalarını iyileştirmekamacıyla geliştirilmiştir. FRB3 algoritmasıaşağıda adım adım gösterilmiştir [9]:Adım1. Tüm işlerin toplam işlenme süreleriaşağıdaki denklem uygulanarak hesapla.<strong>Akademik</strong> Bilişim’<strong>10</strong> - XII. <strong>Akademik</strong> Bilişim Konferansı Bildirileri<strong>10</strong> - <strong>12</strong> Şubat 20<strong>10</strong> Muğla Üniversitesi627Pjm= ∑ P (3)i=1ijAdım2. İşlerin azalan sıraya göre sırala.Adım3. j=1, …, n olmak üzere j işini al ve sıralanmışişler arasındaki tüm olası pozisyonlarayerleştirilerek toplam işlem süresinin en az olduğupozisyonun belirle ve j işini o pozisyonayerleştir.Adım4. P jdizisi içerisinde h=1,…, olmak üzereh işinin al ve sıralanmış işler arasındaki tümolası pozisyonlara yerleştirilerek toplam işlemsüresinin en az olduğu pozisyonu belirlenip hişini o pozisyona yerleştir.Adım5. Tüm işler yerleşmişse dur, yerleşmemişseAdım3 ‘ e geri dön.4. FRB4 SezgiseliFRB3’ün mantığına benzemekle birlikte, FRB3‘ten belirgin bir farklılık gösterir. İç döngüdetüm işlerin yeniden yerleştirilmesi yerine, yeniyerleştirilen işin ön ve arkadan k kadar uzağındaolan işler yeniden yerleştirilir. Bununsebebi ise, yeni yerleştirilen işin çok uzağındabulunan işlerin, yakın olanlara göre daha azetkilenmesidir. Bu metodun en kötü durumdakarmaşıklığı O(kn2m) dir. Buradaki k sayısı,iç döngüdeki yerleştirme işlemi için olası tümpozisyonların sayısıdır. Genellikle k sayısınınküçük olduğu durumlarla (k

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!