• Nie Znaleziono Wyników

Problem przydziału zadań i zasobów do różnych maszyn równoległych

N/A
N/A
Protected

Academic year: 2022

Share "Problem przydziału zadań i zasobów do różnych maszyn równoległych"

Copied!
8
0
0

Pełen tekst

(1)

ZESZYTY NAUK O W E POLITECHNIKI ŚLĄSKIEJ Seria: AUTOM ATYKA z. 117

1996 Nr kol. 1337

Zbigniew BUCHALSKI Politechnika Wrocławska Instytut Cybernetyki Technicznej

PR O B L E M PRZY DZIA ŁU ZADAŃ I ZASO BÓ W D O R Ó Ż N Y C H M A SZ Y N R Ó W N O L E G Ł Y C H

Streszczenie. Praca dotyczy zagadnienia czasowo-optymalnego przydziału zasobu nieodnawialnego podzielnego w sposób ciągły i n zadań do m różnych maszyn równoległych. Każde zadanie może być wykonywane na dowolnej maszynie i w trakcie wykonywania nie m oże być przerywane. Przedstawiono algorytm heurystyczny.

Algorytm ten przetestowany został dla losowo wybranych zestawów danych.

P R O B L E M O F T A SK S AND R ESO UR CES A LLO C A TIO N IN D IF FE R E N T P A R A L L E L M A C H IN E S

Sum m ary. In the paper the problem o f time-optimal allocation o f n tasks and nonrcncwable resources to m different parallel machines is considered. The mathematical model o f the problem is formulated and heuristic algorithm is presented.

Som e computational results and effectiveness o f this algorithm are shown.

1. W stęp

Problematyka czasowooptymalnego rozdziału zadań i zasobów jest intensywnie rozwijana już od wielu lat [2, 4, 11, 12, 13, 14], Niniejsza praca bazuje na wynikach badań tej problematyki i jest kontynuacją wcześniejszych prac autora [5, 6, 7, 8],

W prezentowanej pracy zakłada się, że czas wykonywania zadań na maszynach zależy od ilości zasobu nieodnawialnego podzielnego w sposób ciągły, przydzielonego tym maszynom. W rozdziale drugim formułuje się zadanie czasowo-optymalnego przydziału zadań i zasobu nieodnawialnego do m różnych maszyn równoległych.

Ponieważ problem należy do klasy NP-trudnych, więc jest dość skomplikowany.

W rozdziale trzecim podaje się algorytm heurystyczny rozwiązujący postawiony problem.

W rozdziale czwartym przedstawione są wyniki eksperymentów obliczeniowych przeprowa­

dzonych na tym algorytmie.

(2)

12 Z.Buchalski

2. S form u łow an ie problem u

Rozpatrzmy dyskretny system produkcyjny, o którym zakładamy, że:

(i) posiada m różnych maszyn M = {l, 2 , , na których należy wykonać n niezależnych zadań J - {1,2 n \ ,

(ii) zadanie m oże być wykonywane na dowolnej maszynie i w trakcie jego wykonywania nie może byc (i.xryw an c,

(iuj posiada N jednakowycn jeunustek zasobu nieodnawialnego,

(iv) k-ta maszyna w trakcie wykonywania zadań jej przydzielonych Ik c z J wykorzystuje część jednostek zasobu nieodnawialnego uk i w każdej chwili może w ykonywać tylko jedno

zadanie,

/n

^Tuk < N , uk > 0 , fc=i

(v) czas wykonania zadania i-iego na k-tej maszynie, jeżeli przydzielono jej uk jednostek zasobu nieodnawialnego, określony jest funkcją

Ti(uk , k ) = ai k + ^ , uk k s M , i e J , uk

gdzie ą k > Q,blk > 0 parametry określające i-te zadanie i k-tą maszynę.

Rozpatrywane zadanie sprowadza się do znalezienia czasowo-optym alnego przydziału zadań Ik i zasobu nieodnawialnego uk do m maszyn równoległych przy spełnieniu pow yższych założeń. Tak w ięc należy rozwiązać problem minimalizacji:

min (1)

przy ograniczeniach:

m

(i) I[ C\IS ~ <f), l , s = 1 ,2 ,....m , ( J I k - J y k=1 m

(ii) Y i uk * N , k - 1

(iii) rĄ, «2, - całkow ite dodatnie.

Ograniczenie (iii) powoduje, że postawiony problem jest dość skomplikowany. D latego też w dalszych rozważaniach przyjmiemy założenie upraszczające polegające na rezygnacji z dy- skretności zasobu nieodnawialnego. Przy tym założeniu wyznaczymy przydział czasow o- optymalny zadań i zasobu do maszyn, a następnie zaokrąglimy otrzymaną wartość zasobu do najbliższych liczb naturalnych. Uwzględniając to, należy rozwiązać następujące zadanie minimalizacji dyskretno-ciągłej:

(3)

Problem przydziału zadań i zasobów. JLŁ

/ r ' n r £ * / ( » * . * ) [ (2)

h-h.- Jn, ^ k^m \iFj

przy ograniczeniach:

«1 (i) 7 , 0 / , = ęl, /,$ = 1,2.../n, l * s ,

k-l m

(ii) i^ S O , k = \ 2 , . . . , m

k= \

gdzie:

7/:[0, / / ] x {l,2,.../7i} —> /?+ jest rozszerzeniem funkcji 7]:{l,2,...,AT}x {],2,..,7ti] - » 7?+

określonym identycznym wzorem jak 7j, i e / .

f,(uk, k ) = ą k + ^ , ;/,e [0 ,fV ], i 6 J . uk

Rozwiązaniami zadania (2) przy ograniczeniach (i), (ii) są wartości ukll'k , k = 1,2

LEM AT 1

Jeżeli uk,Ik , k = 1,2,.. .,7« są rozwiązaniami zadania (2), to:

(i) '¡Tuk = N ; uk > 0 ,k :l 'k * <f>,k e M \ u k = 0,k'.l'k = </,k e M ,

k c M

(ii) '£ f i ( u ' k, k ) = c o n s l , k : l ’k * <p, k e M .

i e j ’k

Warunek (i) w LEMACIE 1 mówi, że w przydziale czasowo-optymalnym zadań i zasobów do maszyn wykorzystuje się wszystkich N zasobów, a warunek (ii), że czasy pracy tych maszyn, które wykonują jakieś zadania,są identyczne.

Zdefiniujmy teraz funkcję Q ( Ą , I i , . •■,/«) określoną dla m zbiorów Iv I2, . . . , I m, dla m

których zachodzi I ,r >Is = <j>, l , s = \ , 2 , . . . m , / * j ; ( J Ik = J .

k -1

Wartość funkcji m) dla ustalonych m zbiorów 7,, 72,...,7 m spełniających pow yższe ograniczenia jest rozwiązaniem następującego układu równań:

I X

= Q M Im) . k : l k * t . k e M , O )

'¿Tuk = N \ uk > 0 ,k :Ik * 0 , k s A f . kĄ*4ke.M

(4)

1A Z.Buchalski

Zadanie (2) przyjmuje w ięc ostateczną postać:

min przy ograniczeniach:

(i) = l , s = 1 , 2 , . . m, l * s , (¡0 U W -

k=1

Jeżeli jest rozwiązaniem zadania (4), to uk ,l'k, k s A7, gdzie

(

4

)

uk =

Y . bik

Q [h > h < Y,taik

i ( Ul

,k :I k *Ą>,k e M ,

(

5

)

O, ,k : I k = Ą > , k e M jest rozwiązaniem zadania (2).

Z definicji funkcji Q określonej przez (3) wynika, że wartość funkcji Q dla odpowiednich 71, / 2,...,7 m jest rozwiązaniem następującego równania:

Y , bik

m .

I — Ł -

¿=1 T = 1-

spełnia

N Q - I o,*

V i e J k .

(

6

)

(

7

)

M ożna wykazać, ż e funkcja Q jest dobrze określona, tzn. istnieje jedno i tylko jedno rozwiązanie równania (6) spełniające (7) dla ustalonych

3. A lgorytm heurystyczny

Przebieg algorytmu heurystycznego jest następujący:

Krok 1: Oblicz czasy wykonania zadań na poszczególnych maszynach dla a;• = t § , i = l ,2 ,...,n . Krok 2: Znajdź czasowo-optym alne uszeregowanie n zadań na m różnych maszynach

7 ,,/2 Im przyjmując, że zadania są niepodzielne oraz czas realizacji i-tego zadania na k-tej maszynie jest równy = Tik, i = 1,2 ,...,n ,k e M .

Kro k 3: W yznacz liczby zasobu przydzielonego poszczególnym maszynom ( « i,«2, przy założeniu że maszyny te wykonują odpowiednio zadania 7l, / 2, . . . , / m. D la tych maszyn k, dla których Ik = tj> (tzn. nie są na nich wykonywane żadne zadania),

(5)

Problem przydziału zadań i zasobów. 15

przyjmij, że uk = 0; natomiast dla pozostałych maszyn wyznacz uk w taki sposób, aby czasy pracy tych maszyn były identyczne oraz żeby

kcM

Om ówimy teraz poszczególne kroki algorytmu:

Krok 1: W ielkości i $ , i = 1 ,2 ,...,« powinny być tak zdefiniowane, aby charakteryzowały poszczególne zadania. Przyjęliśmy, że t/f =JV ,i = 1 ,2 ,...,« . Stąd czas realizacji i-tego zadania na k-tej maszynie będzie równy Tt( N , k ) = + — , i = 1 ,2 ,...,« , k eiW .

N

K rok 2: W kroku tym należy rozwiązać klasyczny problem szeregowania n niepodzielnych zadań na m równoległych maszynach. Problem ten jest, jak wiadomo, problemem NP-trudnym [1,3]. Jednakże istnieje szereg algorytmów heurystycznych [9,10] dla tego typu zagadnienia. Tutaj przyjęto algorytm C z pracy [10], Algorytm ten ma następującą postać:

krok a: Dla każdego zadania wyliczamy wartość 7jmin = min Tlk,i = 1 ,2 ,...,« . Następnie szeregujemy zadania wg niemalejących wartości 7]min, tworząc listę zadań,

k ro k b : Podstawiamy

lk = ip,lk =

0

,k

= 1,2,...,/«,

krok c: D la pierwszego zadania z listy (oznaczmy go przez i) znaleźć

\ < . k < m , dla których zachodzi tk + Tik ś t, + Tihl = 1,2 m , i podstawić Ik - J k kj [i },lk = l k + Tjk oraz wyrzucić to zadanie z listy. Jeżeli otrzymana lista nie jest pusta, to przejść do początku kroku c. W przeciwnym wypadku STOP.

K ro k 3: W kfoku tym należy znaleźć Q będące rozwiązaniem równania (6) i spełniające:

u* = N;uk > 0 , k : I k * <f>,k e M .

lS/cSm

Następnie przyjąć, że:

ieJk k:Ik * $ , k a M

« * - • ^3 aik

,e /jt

0, k: Ik * § , k e M

(6)

15.

Z.Buchalski

4. P rzykłady testujące i w yniki obliczeń

N a bazie pow yższego algorytmu przeprowadzono badania numeryczne. Dla określonej liczby n zadań, m maszyn wygenerowano 15 zestawów £fy,Z}y,/ = \ , 2 , . . . , n , j - l,2 ,...,/ n . Liczby ify.Ąy wylosowane zostały ze zbioru {0,0.1,02,...,9.9,10.0} przez generator o jednostajnym rozkładzie prawdopodobieństwa. Wyniki przedstawione zostały w tablicy 1.

Tablica 1 Wyniki badań numerycznych algorytmu heurystycznego

n/m S M

sek sek

30/2 2,3 2

30/4 3,3 3

30/5 3,7 4

30/10 5,8 6

50/2 4,8 5

50/4 6,6 6

50/5 7,1 7

50/10 10,4 10

70/2 8.0 8

70/4 9,9 10

70/5 11,0 11

70/10 15,6 15

W kolumnie S znajduje się średni czas obliczeń w sek dla 15 zestawów danych przy różnych liczbach n zadań i m maszyn, a w kolumnie M mediana tych czasów.

Przejdźmy teraz do analizy różnicy między rozdziałem zadań i zasobów do różnych maszyn równoległych, wyznaczonym przez zaproponowany wyżej algorytm heurystyczny, a czasowo-optym alnym rozdziałem zadań i zasobów, ale tylko dla przypadku dw óch różnych maszyn, uzyskanym w e wcześniejszych pracach autora [5],

Jako kryterium porównawcze rozważymy wartość:

^ e c / / V f x 100%,

O

gdzie: Q [ l \ ,¡1 >—>I m) ' czas wykonania zadań dla przydziału suboptymalnego w yznaczonego przez podany algorytm heurystyczny,

(7)

Problem przydziału zadań i zasobów 17

, / j , Im j - czas wykonania zadań dla przydziału czasowo-optymalnego.

Wyniki dla m=2 przedstawiono w tablicy 2.

Tablica 2 Wynik porównania algorytmu optymalnego i heurystycznego

n/2

% %

30/2 2,9 2,8

50/2 3,1 3,0

70/2 3,0 2,9

W kolumnie Sa znajduje się średnia wartość cr wyrażona w % dla 15 zestawów danych, a w kolumnie M a - mediana z wartości piętnastu er.

Analizując tablicę 2 widzimy, że błąd względny między czasem wykonania zadań przy przydziale suboptymalnym a czasem wykonania zadań przy przydziale czasowo-optymalnym jest rzędu 3%.

Z powyższej analizy wynika, że zaproponowany algorytm heurystyczny charakteryzuje się stosunkow o krótkim czasem obliczeń w stosunku do algorytmu wyznaczającego przydział czasowo-optym alny i niewielką różnicą między czasem wykonania zadań dla przydziału suboptymalnego a czasem wykonania zadań dla przydziału czasowo-optymalnego. Dlatego też algorytm ten z powodzeniem można zastosować, gdy pracujemy w systemie on-line.

LITERATURA

1. B łażew icz J.: Złożoność obliczeniowa algorytmów i problemów szeregowania zadań.

Wydawnictwo Politechniki Poznańskiej, Poznań 1979.

2. B łażew icz J., Cellary W., Słowiński R., Węglarz J.: Algorytmy sterowania rozdziałem zadań i zasobów w kompleksie operacji. Wydawnictwo Politechniki Poznańskiej, Poznań

1979.

3. B łażew icz J., Lenstra J.K., Rinnooy Kan A.H.G.: Scheduling subject to resource constraints: classification and complexity. Discrete Appl. Math., Mathematisch Centrum, Amsterdam 1980.

4. Bubnicki Z.: Optymalizacja kompleksów operacji w sterowaniu dyskretnymi procesami produkcyjnymi. Prace VII K K A tom 111, Rzeszów 1977.

5. Buchalski Z.: Pew ne zagadnienie przydziału zadań i zasobu nieodnawialnego do dwóch różnych maszyn w dyskretnym systemie produkcyjnym. Zeszyty N aukowe Politechniki Śląskiej, Seria Automatyka, z. 74, str. 49-57.

(8)

la.

Z.Buchalski

6. Buchalski Z.: Som e problem o f time-optimal allocation o f memory and tasks in multi­

processor computer systems. Polish Cybemtical Society, Vol. 2 Cybernetics in control and computer systems engineering, Warsaw 1985, pp. 41-49.

7. Buchalski Z.: Zagadnienia czasowo-optymalnego szeregowania zadań i rozdziału zasobów w systemie wielomaszynowym. Prace Konferencji Naukowo-Technicznej "Problematyka budowy i eksploatacji maszyn i urządzeń w ujęciu systemowym", AGH Kraków 1986, str.

62-69.

8. Buchalski Z.: Algorytm dla problemu szeregowania zadań na maszynach dla pewnych funkcji czasu wykonywania zadań. Zeszyty Naukowe Politechniki Śląskiej N r 970, Seria Automatyka, z. 94, str. 61-68.

9. Dempster M .A .H ., Lenstra J.K., Rinnooy Kan A.H.G.: Deterministic and stochastic scheduling, Proceedings o f an Advanced Study and Research Institute on Theoretical Approaches to Scheduling Problems, 1981.

10. Ibarra O.H., Kim C.E.: Heuristic algorithms for scheduling independent tasks on nonidentical processors. Journal o f Assoc. Comput. Mach. 24, 1977, pp. 280-289.

11. Ishii H., Martel C., Masuda T., Nishida T.: A generalized uniform processor system. Oper.

Res., vol. 33, nr 2, 1985, pp. 346-362.

12. Słowiński R.: Multiobjective Network Scheduling with Efficient U se o f Renewable and Non-Renewable Resources. European Journal o f Operational Research, nr 7, 1981, pp.

265-273.

13. Węglarz J.: Project Scheduling with Continously-Divisible Doubly Constrained Resources, Mgt. Sci, vol. 27, nr 3, 1981.

14. W ęglarz J.: Sterowanie w systemach typu kompleks operacji. PW N, Warszawa-Poznań 1981.

Recenzent: Prof, dr hab. inż. Jan Węglarz W płynęło do Redakcji do 30.06.1996 r.

A b stract

This paper deals with the problem o f time-optimal allocation o f nonrenewable resources and n tasks to m different parallel machines for some processing time function

Tj{uk ,k ) = ai k + — ,uk e { l , 2, . . . , N } , k e M , i s J where at k > 0,/\k > 0 arc parameters uk

determined i-th task and k-th machines. It is shown, that the problem is o f NP-type and it is very difficult problem. In this paper heuristic algorithm is presented. The results o f the numerical experiments for n=30,50,70 and m =2,4,5,10 are enclosed.

Cytaty

Powiązane dokumenty

ZESZYTY NAUKOWE POLITECHNIKI ŚLĄSKIEJ Seria: AUTOMATYKA z. W pracy sformułowano problem szeregowania zadań na równoległych maszynach. Zakłada się, że dla każdego

problem szeregowania zadań na identycznych maszynach równoległych, w przypadku braku podzielności zadań i przy ograniczeniach kolejnościowych jest NP-zupełny nawet

W pracy rozważany jest problem czasowo-optymalnego szeregowania zadań i rozdziału zasobów na różnych maszynach równoległych.. Założono, że zadania są niezależne i

Algorytm przeszukiwania tabu został wprowadzony przez Glovera [4, 5], a przegląd najnowszych w yników można znaleźć w [6], Podobnie jak w przypadku symulowanego

W pracy, obok podsumowania dotychczasowych wyników dotyczących problemu minimalizacji średniego czasu przepływu zadań w systemie równoległego przydziału zasobów,

Problem ten polega na sprawdzeniu, czy dla ustalonej wa rtości zmiennej progowej V, istnieje dopu sz cz al ny pr zy dz ia ł o koszcie V.. In tencją tej prscy Jest

W pierwszym kroku ¡obliczeń wyznacza się liczbę monterów oraz przydział operacji na stanowiska dla minimalnej wartości czasu cyklu.

ny wzrost zainteresowania problemami szeregowania zadań na maszynach z uwzględnieniem dodatkowych zasobów. Szczególnie cenne wyniki w tym zakresie uzyskano w ostatnich dwóch