Pobierz artykuł PDF

Transkrypt

Pobierz artykuł PDF
HEURYSTYCZNA PROCEDURA SZEREGOWANIA ZADA W SYSTEMIE MASZYN
RÓWNOLEGŁYCH PRZY OGRANICZONEJ DOSTPNOCI ZASOBÓW
ZBIGNIEW BUCHALSKI
Politechnika Wrocławska
Streszczenie
Celem artykułu jest prezentacja rezultatów badaĔ problemu czasowo-optymalnego szeregowania zadaĔ i rozdziału zasobów w systemie maszyn równoległych.
System ten posiada m równoległych maszyn, na których naleĪy wykonaü n zadaĔ.
Zakładamy, Īe wszystkie zadania są niezaleĪne i liczba zadaĔ jest wiĊksza od liczby
maszyn. Zakładamy ponadto, Īe wystĊpuje stałoĞü przydziału zasobów do maszyn
podczas wykonywania całego zbioru zadaĔ. Dla zadanej funkcji czasu realizacji
zadaĔ sformułowano model matematyczny problemu. PoniewaĪ problem ten naleĪy
do klasy problemów NP-zupełnych zaproponowano pewien algorytm heurystyczny
dla rozwiązania postawionego problemu. Zaprezentowano rezultaty eksperymentów
obliczeniowych wykonanych na bazie podanego w pracy algorytmu heurystycznego.
Słowa kluczowe: systemy maszyn równoległych, szeregowanie zada, rozdział zasobów,
algorytmy heurystyczne.
1. Wprowadzenie
Rozwój równoległych systemów przetwarzania informacji pocignł za sob intensywny rozwój problematyki szeregowania zada i rozdziału zasobów. Szczególnego znaczenia nabiera problem minimalizacji długoci uszeregowania zada na maszynach. Zadania optymalizacji zarówno
dyskretnej, jak i cigłej nale do klasy problemów bardzo trudnych zarówno z teoretycznego, jak
i obliczeniowego punktu widzenia i najczciej nale do klasy problemów NP-zupełnych, a wic
s do skomplikowane. Przy rozwizywaniu tych problemów wystpuj istotne trudnoci natury
obliczeniowej. Pojawiaj si bardzo trudne zagadnienia rozstrzygnicia złoonoci obliczeniowej
rozpatrywanych problemów. Rozstrzygnicia te s istotne z punktu widzenia konstrukcji efektywnych obliczeniowo algorytmów rozwizujcych te problemy [1, 2, 4, 5, 6, 12, 13, 14, 15, 19,
21].
Wyniki teorii złoonoci obliczeniowej oraz rozmiar problemów praktycznych w sposób
jednoznaczny eliminuj z rozwaa algorytmy dokładne, pozostawiajc do zastosowania
praktycznego jedynie algorytmy heurystyczne umoliwiajce rozwizanie postawionych
problemów w krótkim czasie z zadowalajca dokładnoci. Fakt ten jest typowy dla tej klasy
problemów optymalizacji dyskretnej i w przypadku, kiedy zaley nam na krótkim czasie oblicze,
jedynym podejciem jest zastosowanie algorytmów heurystycznych. Badania nad algorytmami
heurystycznymi, dostarczajcymi rozwiza zagadnie, w których zastosowanie metod
dokładnych jest nieefektywne lub wrcz niemoliwe, stanowi jedn z najszybciej rozwijajcych
si gałzi nauki [7, 8, 16, 17, 18, 20, 22, 23].
Celem niniejszej pracy jest znalezienie takiego uszeregowania n niezalenych niepodzielnych
zada na m maszynach pracujcych równolegle oraz takiego przydziału zasobu podzielnego
w sposób cigły do tych maszyn, aby minimalizowa czas Tzak zakoczenia wykonywania
272
POLSKIE STOWARZYSZENIE ZARZĄDZANIA WIEDZĄ
Seria: Studia i Materiały, nr 31, 2010
wszystkich zada. Sposób wykonania zada okrela niezbdna do tego ilo zasobu. Tematyka ta
poruszana ju była we wczeniejszych pracach autora [9, 10, 11].
W artykule zaprezentowanono algorytm heurystyczny wyznaczajcy czasowo-optymalne
szeregowanie n zada niezalenych niepodzielnych i ograniczonej liczby jednostek zasobu
nieodnawialnego podzielnego w sposób cigły do m maszyn pracujcych równolegle.
Przedstawiono wyniki bada numerycznych przeprowadzonych na algorytmie dla losowo
generowanych danych.
2. Sformułowanie zagadnienia
Rozpatrzmy system maszyn połczonych równolegle przedstawiony na poniszym rysunku:
Rys. 1. System maszyn równoległych
ródło: Opracowanie własne.
Na system maszyn równoległych nakładamy nastpujce załoenia:
(I) posiada m rónych maszyn M = {1, 2,..., k,..., m}, na których naley wykona
n niezalenych zada Z = {1, 2,..., i,..., n},
(II) zadanie moe by wykonywane na dowolnej maszynie i w trakcie jego wykonywania nie
moe by przerywane,
(III) liczba zada do wykonania jest wiksza od liczby maszyn n > m,
(IV) realizacja kadego z zada na maszynach musi nastpowa niezwłocznie po zakoczeniu
wykonywania poprzedniego zadania lub nastpi w chwili zerowej, gdy zadanie
realizowane jest jako pierwsze na jednej z maszyn.
Niech N oznacza globaln ilo zasobów nieodnawialnych, a przez uk oznaczmy t cz
zasobów, które zostan przydzielone k-tej maszynie
w trakcie wykonywania zada
uszeregowanych na tej maszynie. Ograniczenie dotyczce zasobów jest nastpujce:
m
u
k =1
k
≤ N , uk ≥ 0, 1 ≤ k ≤ m.
Zbigniew Buchalski
Heurystyczna procedura szeregowania zadaĔ w systemie maszyn równoległych
przy ograniczonej dostĊpnoĞci zasobów
273
Czas wykonywania i-tego zadania na k-tej maszynie okrelony jest przez nastpujc funkcj
Ti(uk, k):
b
Ti (u k , k ) = a ik + ik , u k ∈ {1,2,..., N }, 1 ≤ k ≤ m, 1 ≤ i ≤ n.
(1)
uk
Parametry aik > 0 i bik > 0 charakteryzuj i-te zadanie i k-t maszyn.
Naley znale takie uszeregowanie zada na maszynach i taki przydział ograniczonych
zasobów do maszyn równoległych, aby minimalizowa czas zakoczenia wykonania całego zbioru
zada Tzak.
3. Model matematyczny zagadnienia
Jeeli oznaczymy przez Zk ⊂ Z zbiór zada uszeregowanych na k-tej maszynie, to Tzak
znajdziemy rozwizujc nastpujcy problem minimalizacyjny:
max Ti (u k , k ) .
Z1 , Z 2 ,..., Z m 1≤ k ≤ m
i∈Z k
u1 ,u 2 ,...,u m
Ograniczenia nałoone na rozwizanie tego problemu s nastpujce:
T zak =
min
(2)
m
• Z r ∩ Z s = φ ; r , s = 1,2,..., m, r ≠ s,
Z
k
= Z,
k =1
m
•
u
k
≤ N,
k =1
• u1, u2, ..., um – całkowite dodatnie.
Ograniczenie (III) powoduje, e problem do rozwizania jest do skomplikowany.
Przyjmiemy zatem najpierw, e zasoby nieodnawialne u1, u2, ..., um s cigłe. Przy tym załoeniu
wyznaczymy rozwizanie optymalne, a nastpnie zaokrglimy otrzymane wartoci zasobów uk do
najbliszych liczb naturalnych (krok 16 algorytmu heurystycznego w punkcie 4). Uwzgldniajc
t relaksacj minimalny czas Tzak zakoczenia wykonywania zbioru zada Z przez system maszyn
równoległych znajdziemy rozwizujc nastpujcy problem minimalizacji dyskretno-cigłej:
T zak = min max Ti ' (u k , k ) (3)
Z1 , Z 2 ,..., Z m 1≤ k ≤ m
i∈Z k
u1 ,u 2 ,...,u m
przy nastpujcych ograniczeniach:
m
• Z r ∩ Z s = φ ; r ,s = 1,2,..., m,
r ≠ s,
Z
k
= Z,
k =1
m
•
u
k
≤ N ; u k ≥ 0, k = 1,2,..., m,
k =1
gdzie: Ti ' : [0, N ]× {1,2,.., m} → R jest rozszerzeniem nastpujcej funkcji
Ti : {1,2,..., N }× {1,2,.., m} → R + i okrelone jest przez funkcj:
+
274
POLSKIE STOWARZYSZENIE ZARZĄDZANIA WIEDZĄ
Seria: Studia i Materiały, nr 31, 2010
bik
, u k ∈ [0, N ] , 1 ≤ k ≤ m, 1 ≤ i ≤ n.
uk
Do rozwizania postawionego problemu pomocny bdzie nastpujcy lemat:
Lemat 1. Jeeli uk* , Z k* , k = 1,2,..., m s rozwizaniami optymalnymi zadania (3), to:
Ti ' (u k , k ) = a ik +
(4)
m
3.
u
*
k
= N ; uk* > 0, k : Z k* ≠ φ , k = 1,2,..., m;
k =1
u k* = 0, k : Z k* = φ , k = 1,2,..., m;
T (u , k ) = const;
'
4.
i
*
k
k : Z k* ≠ φ , k = 1,2,..., m.
i∈Z k*
Warunek (i) w Lemacie 1 oznacza, e w przydziale czasowo-optymalnym zasobów i zada do
maszyn wykorzystuje si wszystkie jednostki zasobów, a warunek (ii), e czasy pracy tych
maszyn, na których wykonywane s jakie zadania, s identyczne.
Zdefiniujmy funkcj F(Z1, Z2, ..., Zm) okrelon dla m zbiorów Z1, Z2, ..., Zm, dla których
zachodzi ograniczenie (i) dla wzoru (3). Warto tej funkcji jest rozwizaniem nastpujcego
układu równa:
bik
i∈ Z k
a ik +
= F ( Z 1 , Z 2 , ... , Z m ); k : Z k ≠ ∅ , k = 1, 2 , ... , m
uk
i∈ Z k
(5)
m
u k = N ; u k > 0 , k : Z k ≠ ∅ , k = 1, 2 , ... , m .
k =1
Wykorzystujc Lemat 1 oraz (5), zadanie (3) mona przedstawi w postaci:
T zak = min F (Z 1 , Z 2 ,..., Z m ) ,
(6)
Z1 , Z 2 ,..., Z m
przy ograniczeniach:
Z r ∩ Z s = φ , r , s = 1,2,..., m, r ≠ s,
1.
m
Z
2.
Jeeli
k =1
Z1* , Z 2* ,.., Z m* jest
k
= Z.
rozwizaniem zadania (6), to uk* , Z k* , k = 1,2,..., m , gdzie
bik
i∈Z k*
; k : Z k* ≠ φ , 1 ≤ k ≤ m ,
aik
uk* = F Z1* , Z 2* ,..., Z m* −
i∈Z k*
0
; k : Z k* = φ , 1 ≤ k ≤ m
(
jest rozwizaniem zadania (3).
) (7)
Zbigniew Buchalski
Heurystyczna procedura szeregowania zadaĔ w systemie maszyn równoległych
przy ograniczonej dostĊpnoĞci zasobów
275
4. Algorytm heurystyczny
Maszyny wchodzce w skład systemu maszyn równoległych róni si pod wzgldem
szybkoci wykonywania zada. Decyduje o tym ilo zasobów przydzielanych poszczególnym
maszynom. Dlatego te k-ta maszyna bdzie tym szybsza im wicej zasobów uk jej przydzielono.
Przedstawiony w pracy algorytm heurystyczny szereguje najpierw zadania na jednakowych
maszynach, tj. takich, do których przydzielona została jednakowa liczba dostpnych zasobów
N
u k = , k = 1, 2, ... , m (kroki 4÷
÷11). Po tym uszeregowaniu nastpuje zrónicowanie maszyn pod
m
wzgldem liczby przydzielonych im zasobów i sprawdzenie, czy skrócony został czas zakoczenia
wykonywania wszystkich zada Tzak (kroki 12÷
÷15)..
Zakładamy, e maszyn najszybsz jest maszyna pierwsza ze zbioru M, a maszyn
najwolniejsz jest maszyna m-ta. Miar szybkoci realizacji i-tego zadania przez k-t maszyn jest
współczynnik zasobów β ; β > 1. Maszynie m-tej, czyli najwolniejszej przydzielamy um zasobów
wg nastpujcej zalenoci:
N
um =
m −1
(8)
1+
[(m − k ) ⋅ β ]
k =1
a pozostałym maszynom przydzielamy liczb zasobów wg wzoru:
u k = (m − k ) ⋅ β ⋅ u m ;
k = 1, 2, ... , m − 1 .
(9)
Algorytm heurystyczny wyznaczajcy czasowo-optymalne szeregowanie zada niezalenych
na maszynach równoległych ma nastpujc posta:
krok 1. Oblicz
czasy
wykonywania
zada
na
poszczególnych
maszynach
Ti (u k , k ) = a ik +
bik
, i = 1, 2, ..., n, k = 1, 2, .., m dla losowo generowanych
uk
N
.
m
Uszereguj malejco zadania wg czasów ich trwania tworzc list L tych zada.
Oblicz redni czas TĞr wykonywania zada przez kad z maszyn wg wzoru:
parametrów aik, bik oraz dla zadanej wartoci u k =
krok 2.
krok 3.
n
T (u , k )
i
TĞr =
krok 4.
krok 5.
krok 6.
k
i =1
m
;
i ∈ Z , k ∈ M , uk =
N
.
m
Przydzielaj na przemian najdłusze i najkrótsze zadania z listy L do pierwszej wolnej
maszyny, poczynajc od maszyny pierwszej do momentu, gdy suma czasów
wykonywania zada przydzielonych tej maszynie nie przekroczy czasu TĞr a nastpnie
usu te zadania z listy L.
Jeeli s jeszcze maszyny, którym nie przydzielono adnych zada to wró do kroku 4.
W przeciwnym wypadku przejd do kroku 6..
Przydzielaj kolejno najkrótsze zadania z listy L do kolejnych maszyn od pierwszej
poczynajc a na m-tej koczc a nastpnie usu te zadania z listy L. Jeeli lista L si
276
krok 7.
krok 8.
krok 9.
krok 10.
krok 11.
krok 12.
krok 13.
krok 14.
krok 15.
krok 16.
POLSKIE STOWARZYSZENIE ZARZĄDZANIA WIEDZĄ
Seria: Studia i Materiały, nr 31, 2010
jeszcze nie wyczerpała to wykonaj krok 7. W przeciwnym wypadku przejd do kroku
8.
Przydzielaj kolejno najkrótsze zadania z listy L do maszyn w odwrotnej kolejnoci ni
w kroku 6, tzn. od m-tej poczynajc a na pierwszej koczc a nastpnie usu te zadania
z listy L. Jeeli lista L si jeszcze nie wyczerpała to wró do kroku 6. W przeciwnym
wypadku przejd do kroku 8.
Oblicz czas zakoczenia wykonywania wszystkich zada Tzak dla uszeregowania zada
N
na maszynach utworzonego w krokach 4÷7 i dla u k = .
m
Oblicz sumaryczne czasy wykonywania zada uszeregowanych na poszczególnych
maszynach.
Usu najkrótsze zadanie z maszyny o najdłuszym sumarycznym czasie wykonywania
zada i przydziel je do maszyny o najkrótszym sumarycznym czasie wykonywania
zada.
Oblicz czas zakoczenia wykonywania wszystkich zada Tzak po zamianie zada
w kroku 10. Jeeli czas ten ulegnie skróceniu, to wró do kroku 9. W przeciwnym
wypadku anuluj ostatnio wykonan czynno w kroku 10 i zakocz szeregowanie
zada na maszynach.
Dla zadanego współczynnika β przydziel zasoby uk, k = 1, 2, ..., m poszczególnym
maszynom wyliczone z zalenoci (8) i (9).
Dla uszeregowania zada na maszynach utworzonego w krokach 4÷11 i dla liczby
zasobów uk przydzielonych maszynom w kroku 12 oblicz czas zakoczenia
wykonywania wszystkich zada Tzak.
Powtórz krok 12 i krok 13 dla nastpnych zwikszajcych si kolejno siedmiu wartoci
współczynnika β. Po zakoczeniu tych prób przejd do kroku 15.
Porównaj wartoci czasów zakoczenia wykonywania wszystkich zada Tzak
z kolejnych prób i wybierz najkrótszy z tych czasów.
Wyznacz dyskretne iloci zasobów uˆα ( k ) , k = 1, 2, ... , m według zalenoci:
uα ( k ) + 1; k = 1,2,..., ∆,
uˆα ( k ) = uα ( k ) k = ∆ + 1, ∆ + 2, ... , m,
m
gdzie ∆ = N −
u oraz α jest tak permutacj elementów zbioru M = {1, 2, ..., m},
j
j =1
e uα (1) − uα (1) ≥ uα ( 2 ) − uα ( 2 ) ≥ ... ≥ uα ( m ) − uα ( m ) .
Jeeli istniej takie maszyny, którym przydzielono zerowe iloci zasobów, to przydziel
kadej z tych maszyn po jednej jednostce zasobu pobierajc je z kolejnych maszyn
poczynajc od maszyny, której przydzielono najwiksz ilo zasobów..
5. Wyniki eksperymentów obliczeniowych
Na bazie przedstawionego w poprzednim punkcie pracy algorytmu heurystycznego
przeprowadzono eksperymenty obliczeniowe. Algorytm wykonuje za kadym razem osiem prób
znalezienia najlepszego, z punktu widzenia czasu realizacji zbioru zada, rozwizania. Po
Zbigniew Buchalski
Heurystyczna procedura szeregowania zadaĔ w systemie maszyn równoległych
przy ograniczonej dostĊpnoĞci zasobów
277
wykonaniu serii prób z rónymi wartociami współczynnika podziału zasobów β, porównywane s
ze sob czasy realizacji zbioru zada i wybierany jest najkrótszy z nich.
Eksperymenty obliczeniowe przeprowadzono dla omiu zwikszajcych si kolejno wartoci
współczynnika podziału zasobów β ze zbioru {3, 6, …, 24}. Parametry aik, bik, charakteryzujce
i-te zadanie i k-t maszyn wylosowane zostały ze zbioru {5, 10, …, 50} przez generator
o jednostajnym rozkładzie prawdopodobiestwa. Obliczenia przeprowadzono dla zadanej liczby
zada n = 30, 60, 90, 120, liczby maszyn m = 3, 6, 9, 12, 15 oraz dla ograniczonej liczby zasobów
N = 10.000. Dla kadej kombinacji n i m wygenerowano 40 instancji. Nastpnie dokonano analizy
porównawczej zaproponowanego w pracy algorytmu heurystycznego ze znanym z literatury
algorytmem LPT (Longest Processing Time) [3]. Rezultaty tej analizy zostały przedstawione
w Tabeli 1.
W Tabeli 1 wystpuj nastpujce wielkoci:
n
– liczba zada,
m – liczba maszyn,
TzakH – czas zakoczenia wykonywania wszystkich zada ze zbioru Z przy wykorzystaniu
algorytmu
heurystycznego,
TzakLPT – czas zakoczenia wykonywania wszystkich zada ze zbioru Z przy wykorzystaniu
algorytmu
LPT,
∆ – rednia procentowa poprawa czasu T w stosunku do T :
H
H
LPT
zak
LPT
∆H =
SH
LPT
S
zak
H
Tzak − Tzak
⋅ 100%
TzakH
– redni czas oblicze dla algorytmu heurystycznego,
– redni czas oblicze dla algorytmu LPT.
Tabela 1. Wyniki analizy porównawczej algorytmu heurystycznego i algorytmu LPT
n/m
30/3
60/3
90/3
120/3
30/6
60/6
90/6
120/6
30/9
60/9
90/9
120/9
30/12
Liczba instancji, dla których:
∆H
SH
SLPT
TzakH < TzakLPT
TzakH = TzakLPT
TzakH > TzakLPT
%
sek
sek
21
20
21
24
21
21
22
24
20
22
23
24
20
1
2
2
1
2
3
2
2
2
0
3
4
1
18
18
17
15
17
16
16
14
18
18
14
12
19
1,9
2,5
3,1
3,8
2,0
2,6
3,5
4,5
2,2
2,8
3,3
4,2
2,3
1,6
2,9
4,4
7,3
1,9
3,4
5,8
7,7
2,2
3,8
6,4
8,4
2,6
1,4
2,6
3,9
6,3
1,7
2,9
4,5
6,8
2,0
3,4
5,7
6,9
2,1
278
POLSKIE STOWARZYSZENIE ZARZĄDZANIA WIEDZĄ
Seria: Studia i Materiały, nr 31, 2010
n/m
Liczba instancji, dla których:
∆H
SH
SLPT
TzakH < TzakLPT
TzakH = TzakLPT
TzakH > TzakLPT
%
sek
sek
21
23
25
21
24
25
28
2
0
2
1
1
2
0
17
17
13
18
15
13
12
2,8
3,9
4,8
2,4
2,9
3,7
4,9
4,5
6,5
9,4
2,8
4,9
7,8
9,9
3,8
5,8
8,6
2,4
4,2
6,5
8,5
60/12
90/12
120/12
30/15
60/15
90/15
120/15
ródło: Opracowanie własne.
6. Uwagi kocowe
Przedstawione w poprzednim punkcie eksperymenty obliczeniowe wykazały, e jako
szeregowania zada na równoległych maszynach na bazie zaproponowanego w pracy algorytmu
heurystycznego uległa poprawie w stosunku do szeregowania za pomoc znanego z literatury
H
LPT
algorytmu LPT. Kilkuprocentowa poprawa czasu T zak w stosunku do T zak moe by zacht do
dalszych prac nad efektywnymi algorytmami heurystycznymi.
Zastosowanie podanego w pracy algorytmu heurystycznego jest wskazane przede wszystkim
dla systemów produkcyjnych o duej liczbie zada, gdy wówczas rednia procentowa poprawa
∆Ηjest najwiksza. Zaproponowany algorytm moe słuy zarówno do rozdziału operacji na
stanowiska produkcyjne wyposaone w odpowiednie maszyny w dyskretnych systemach
produkcyjnych, jak i do szeregowania programów w wieloprocesorowych systemach
komputerowych.
%LEOLRJUDILD
[1] Bianco L.i in., Preemptive scheduling of multiprocessor tasks on the dedicated processors
system subject to minimal lateness. Information Processing Letters, 46, 1993, pp. 109–113.
[2] Bianco L. i in., Linear algorithms for preemtive scheduling of multiprocessor tasks subject
to minimal lateness. Discrete Applied Mathematics, 72, 1997, pp. 25–46.
[3] Błaewicz J. i in., Badania operacyjne dla informatyków, WNT, Warszawa 1983.
[4] Błaewicz J. i in., Scheduling independent multiprocessor tasks before deadlines. Discrete
Applied Mathematics 65 (1–3), 1996, pp. 81–96.
[5] Błaewicz J. i in., Scheduling in Computer and Manufacturing Systems. Springer-Verlag,
Berlin-Heidelberg, 1993.
[6] Błaewicz J., Liu Z., Scheduling multiprocessor tasks with chain constraints. European
Journal of Operational Research, 94, 1996, pp. 231–241.
[7] Boctor F. F., A new and efficient heuristic for scheduling projects will resources restrictions and multiple execution model. European Journal of Operational Research, vol. 90,
1996, pp. 349–361.
[8] Brah S.A., Loo L.L., Heuristics for scheduling in a flow shop with multiple processors,
European Journal of Operational Research, Vol. 113, No. 1, 1999, pp. 113–122.
Zbigniew Buchalski
Heurystyczna procedura szeregowania zadaĔ w systemie maszyn równoległych
przy ograniczonej dostĊpnoĞci zasobów
279
[9] Buchalski Z., Szeregowanie zadaĔ na róĪnych maszynach równoległych z razdziałem ograniczonych zasobów. Zeszyty Naukowe Politechniki lskiej, Automatyka, No. 1389, Gliwice, 1998, pp. 77–84.
[10] Buchalski Z., A Program Scheduling Heuristic Algorithm in Multiprocessing Computer
System with Limited Memory Pages. Polish Journal of Environmental Studies, Vol. 15, No.
4C, 2006, pp. 26–29.
[11] Buchalski Z., Minimising the Total Processing Time for the Tasks Scheduling on the Parallel Machines System. Proc. of the 12th IEEE International Conference on Methods and Models in Automation and Robotics, Domek S., Kaszyski R. (Eds.), Midzyzdroje, Poland,
MMAR 2006, 28–31 August 2006, pp. 1081–1084.
[12] Cheng J., Karuno Y., Kise H., A shifting bottleneck approach for a parallel-machine flowshop scheduling problem, Journal of the Operational Reasearch Society of Japan, Vol. 44,
No. 2, 2001, pp. 140–156.
[13] Gupta J.N.D., Hariri A.M.A., Potts C.N., Scheduling a two-stage hybrid flow shop with
parallel machines at the first stage, Annals of Operations Research, Vol. 69, No. 0, 1997,
pp. 171–191.
[14] Hoogeveen J.A., Lenstra J.K., Veltman B., Preemptive scheduling in a two-stage multiprocessor flow shop in NP-hard, European Journal of Operational Research, Vol. 89, No.1,
1996, pp. 172–175.
[15] Janiak A., Kovalyov M., Single machine scheduling subject to deadlines and resources dependent processing times. European Journal of Operational Research, vol. 94, 1996, pp.
284–291.
[16] Józefowska J. i in., Discrete-continuous scheduling to minimize maximum lateness, Proceedings of the Fourth International Symposium on Methods and Models in Automation
and Robotics MMAR’97, Midzyzdroje, Poland, 1997, pp. 947–952.
[17] Józefowska J. i in., Local search metaheuristics for discrete-continuous scheduling problems, European Journal of Operational Research, 107, 1998, pp. 354–370.
[18] Józefowska J., Wglarz J., Discrete-continous scheduling problems – mean completion time
result, European Journal of Operational Research, vol. 94, No. 2, 1996, pp. 302–310.
[19] Józefowska J., Wglarz J., On a methodology for discrete-continous scheduling, European
Journal of Operational Research, Vol. 107, No. 2, 1998, pp. 338–353.
[20] Ng C.T. i in., Group Scheduling with controllable setup and processing times: minimizing
total weighted completion time, Ann. Oper. Res., 133, 2005, pp. 163–174.
[21] Nowicki E., Smutnicki C., The flow shop with parallel machines. A Tabu search approach.
European Journal of Operational Research, 106, 1998, pp. 226–253.
[22] Santos D.L., J.L., Deal D.E., An evaluation of sequencing heuristics in flow shops with multiple processors, Computers and Industrial Engineering, Vol. 30, No. 4, 1996, pp. 681–691.
[23] Wglarz J., Multiprocessor scheduling with memory allocation – a deterministic approach.
IEEE Trans. Comput., C-29, 1980, pp. 703–710.
280
POLSKIE STOWARZYSZENIE ZARZĄDZANIA WIEDZĄ
Seria: Studia i Materiały, nr 31, 2010
HEURISTIC PROCEDURE OF TASK SCHEDULING IN PARALLEL MACHINE
SYSTEM WITH LIMITED RESOURCE ACCESS
Summary
The aim of the paper is to present results of research on the problem of timeoptimal tasks scheduling and resources allocation in parallel machines system. We
consider system having m parallel machines. This system can execute n tasks. We
assume that all n tasks are independent and number of tasks is greater than number
of machines. We also assume that is constancy of resources allocation in execution
time all tasks set. For some tasks processing time function the mathematical model of
this problem is formulated. Because our problem belongs to the class of NP-complete problems we propose an heuristic algorithm for solution of this problem. Some
results of executed numerical experiments for basis of proposed heuristic algorithm
are presented.
Keywords: parallel machines systems, task scheduling, resources allocation, heuristic algorithms.
Zbigniew Buchalski
Instytut Informatyki, Automatyki i Robotyki
Wydział Elektroniki
Politechnika Wrocławska
ul. Janiszewskigo 11/17, 50-372 Wrocław
e-mail: [email protected]