M ateu sz G O R C Z Y C A , A d a m JA N IA K P o litech n ik a W rocław ska
M I N I M A L I Z A C J A P O Z I O M U Z A S O B U P R Z Y O G R A N I C Z E N I U N A D Ł U G O Ś Ć U S Z E R E G O W A N I A Z A D A Ń O M O D E L A C H
D Y N A M I C Z N Y C H N A P R O C E S O R A C H R Ó W N O L E G Ł Y C H
S t r e s z c z e n i e . R o zp atry w an y je s t p ro b lem m in im alizacji p o zio m u zasobu koniecznego do w y k o n an ia z a d a ń n a rów noległych p ro ceso rach p rz y o gra
niczeniu n a długość uszeregow ania. Z a d a n ia d a n e są m o d elam i d y n am icz
nym i, gdzie prędkość w ykonyw ania z a d a n ia w d anej chw ili zależy o d ilości przydzielonego m u zasobu. Zasób je s t odn aw ialn y i p o d zieln y w sposób cią
gły. W y kazan o w łasności pro b lem u i skonstru o w an o alg o ry tm o p ty m aln eg o ro z d ziału zasobu.
T H E M I N I M I Z A T I O N O F R E S O U R C E L E V E L O N P A R A L L E L P R O C E S S O R S W I T H C O N S T R A I N E D M A K E S P A N
A N D D Y N A M I C M O D E L O F T A S K S
S u m m a r y . T h e p ro b lem of resource level m in im iza tio n on a p arallel p ro cessors w ith c o n stra in e d m akespan is considered. T h e d y n am ic m odel of ta s k is given, w here th e sp eed of change of ta s k p ro cessin g s ta te in every m om en t d ep e n d s on a m o u n t of allo ted resource. T h e resou rce is renew able a n d co n tin u o u sly divisible. Some p ro p e rtie s of th e p ro b lem are proved an d alg o rith m of o p tim a l resource allo ca tio n is co n stru c te d .
1 . W s t ę p
K lasyczny m od el za d an ia, gdzie czas jego w ykonyw ania je s t z a d a n y z góry i stały , często okazyw ał się zb y t p ro sty do m odelow an ia problem ów p ra k ty c zn y ch z zad o w alając ą dok ład n o ścią. Ju ż w la ta c h 60. zaprop on ow an o m o d el d y n am icz
ny, gdzie w ykonyw anie z a d a n ia in te rp re tu je się jak o proces, w k tó ry m szybkość zm ian y s ta n u zależy w każdej chwili od ilości pew nego zasobu p rzydzielonego do teg o procesu. Z asób ta k i je s t p odzielny w sposób ciągły, a jego ilość z a d a n a z góry i ograniczona.
D otychczas b a d a n o w ieloprocesorow e pro b lem y szeregow ania z a d a ń o m o
delach dyn am iczn y ch d la k ry te riu m długości uszeregow ania [4, 1], średniego czasu
144 M. G orczyca, A. J a n ia k
p rz ep ły w u [3] oraz m aksym alnej nieterm inow o ści [1]. R o zw ażano rów nież p ro b lem z zad an y m ograniczeniem n a dłu g o ść uszeregow ania p rz y k ry te riu m po ziom u za
sobu [2] - w ykazano p ew n e w łasności teg o p ro b lem u i za p ro po no w an o a lg o ry tm heurystyczny. P ro b lem te n sform ułow ano w ro zdziale 2. W rozdziale 3 w ykazano nowe w łasności pro b lem u , k tó re w y k o rzy stan o w rozdziale 4 do sk o n stru o w an ia a lg o ry tm u opty m aln eg o ro z d ziału zasobu.
2 . S f o r m u ł o w a n i e p r o b l e m u
D any je s t zbiór n iepodzielnych z a d a ń J — { 1 , 2 , . . . , n } do w y k o n an ia n a zbiorze procesorów M = { 1 , 2 , , m} . P rzyjm ujem y, że z a d an y je s t n ajp ó źn ie jsz y m ożliw y te rm in zakończenia w szystkich z a d a ń C > 0. Do w y k o n a n ia z a d a n ia oprócz p ro ceso ra niezb ęd n y je s t ta k ż e zasób p o d zieln y w sposób ciągły. Szybkość w ykonyw ania za d a n ia j E J w chw ili t zależy od ilości przydzielonego m u zasobu:
gdzie:
• Xj ( t ) - s ta n z a d a n ia j w chw ili t E [0,07],
• / j ( ') * fu n k cja rosn ąca, ciąg ła , w k lęsła i s p e łn ia ją c a w a ru n ek f j (0) — 0 ,
• Uj(t) - ilość zasobu przydzielonego do z a d a n ia j w chw ili t E [0,
C).
K ażde za d an ie j E J m a z a d a n y s ta n p o czątk o w y £ j(0 ) = 0 oraz s ta n końcow y Xj > 0, k tó ry m usi zo stać osiągnięty, aby za d an ie z o stało w ykonane. O znaczm y przez
Sj
= m a x { i : Xj ( t ) = 0} iCj
= min{£ : Xj ( t ) — Xj }, j = 1 , . . . , n , m o m en t odpow iednio rozpoczęcia i zak o ńczenia w ykonyw ania z a d a n ia j .N iech fu n kcja qj (t ) sy g n alizu je w ykonyw anie z a d a n ia j w n a s tę p u ją c y sp o
sób:
q.ft\ 4 i %(<) = 1 gdy Sj <t < Cj,
1 Qj(t) — Q w p rzeciw nym w yp ad ku .
O znaczm y przez Q( t ) = E ?=1
Qj{t)
liczbę z a d a ń w ykonyw anych w m om encie t. R o zd zia łem zasobu b ędziem y n azyw ać funkcję w ektorow ą u ( i) =
U
2(t),
. . . , u ra(i)] sp e łn ia ją c ą w arunki:1. 0 <
Sj
<Cj
< Ć dla j — 1, . . . , n , 2. Uj(t) > 0 d la t E[Sj,
C j], j = l , . . . , n ,3.
Uj(t)
= 0 d la t E [0,Sj)
U{Cj,
Ć], j = 1 , . . . , n ,4.
Uj(t)
je s t p rz ed ziała m i ciąg łe d la t € [Sj,Cj
], j — i , . . . , n ,Q.
5- fs- = %> i = 1,• • • ,n , 6 . Q( t ) < m d la i G [0, Ć],
P ro b le m po leg a n a znalezieniu tak ieg o ro z d z ia łu zasob u u * (i), k tó ry zm i-
A n
n im alizu je k ry te riu m poziom zasob u R ( u ( t ) ) — m a x uj{t )- A nalizow any pro-
t€[0,ć] j — \
b lem je s t N P -tru d n y [2],
3. W ł a s n o ś c i p r o b l e m u
L e m a t 1 . Dla dow olnych 0 < u j < 112, £1 > 0, X2 > 0, Ti > 0, T2 > 0 oraz ciągłej, w klęsłej i rosnącej fu n k c ji / ( • ) spełn ia ją cej w a ru n ek /(O) = 0, jeżeli zachodzi x \ = f ( u \ ) ■ T \ oraz X2 = f ( u2) ■ T2, to:
(a) dla każd ej liczby u \ takiej, że u \ < u \ < is tn ie je liczba u'2 taka, że f ~ l { K ) < u'2 < U2 oraz
x \ + X2 = f ( u i ) ■ Ti + f { u 2) • T2 = / ( u i ) ■ T i + f ( u 2) • T2, (1)
tł! • T l + «2 • T2 > u \ - Ti + u2 ■ T2, (2)
gdzie I< = r n / ( tn ) + T ; - /M ;
(b) dla każd ej liczby u'2 takiej, że < u2 < U2, is tn ie je liczba u j taka, że u i < u[ < f ~ l { K ) oraz spełnione są w arun ki (1) i (2).
Dowód. R ozw ażm y n a jp ie rw p u n k t (a). W pierw szej kolejności wykażem y, że istn ie je liczb a u 2, d la k tó rej je s t sp ełn io n y w a ru n e k (1). W eźm y dow olną licz
b ę u \ talcą, że u \ < u j < f ~ x( K ) . P rz e k s z ta łc a ją c ró w n anie (1) o trzy m u jem y f l u 2) = i t ‘ ( / ( w ) - f ( u 'i )) + / O 2). P oniew aż ^ > 0 i f ( u i ) - f ( i Ą ) < 0 to f ( u 2) < f ( u2), a więc skoro fu n k cja / ( • ) je s t ro sn ą ca, to u2 < U2- Z drugiej strony, aby za chodziło u2 > m usi zach o d zić f { u 2) > K . K o rz y sta ją c z ró w n a n ia ( 1) o trzy m u jem y j k ■ ( / ( u i ) - f { u [ ) ) + f { u 2) > K , k tó re po p ro sty ch p rz e k sz ta łc e n ia c h sp ro w ad za się do u[ <
P okażem y te ra z , że m a ją c liczbę u2 s p e łn ia ją c ą w a ru n ek (1), sp ełn io n y je st ta k ż e w a ru n ek (2). W zw iązku z ty m , że f ( u i ) < f ( u [ ) < f ( u 2) < f ( u2), m o żna zapisać:
/ ( u i ) = (1 - a ) ■ / ( t u ) + o ■ f ( u 2), a € (0 ,1 ), (3) f { Ą ) = ¡3 ■ f { u i ) + (1 - 1 3 ) . f ( u 2), 13 G (0 ,1 ). (4) P o d sta w ia ją c ró w n a n ia (3) i (4) do ró w n a n ia ( 1), o trzy m u jem y p o p ro sty c h prze
k sz ta łc e n ia c h ^ = 5^ . Z drugiej s tro n y w y k o rz y stu ją c funkcję o d w ro tn ą / - 1 (-) z
146 M. G orczyca, A. J a n ia k
ró w n ań (3) i (4) o trzym ujem y:
u i = / _ 1 ( ( l - a ) - / ( « i ) + a - / ( ' « 2) ) , 4 =
r l (P ■ f ( ui) +
( i - p) ■ f i u
2)) •Z w ypukłości funkcji / _1 (-) m am y:
u \ < ( l - a ) - / “ 1 (/( w i) ) + a - / ~ 1 ( / ( « 2) ) ,
«2 < ■ Z “ 1 ( / ( ^ i ) ) + (1 — /?) • / _1 ( / ( l i 2)) , czyli
u[ < (1 — a ) ■ u i + a ■ U2, (5)
u'2
<(3 ■ u\
+ (1 —0)
•U
2-
(6)W y k o rzy stu ją c p ro p o rc ję § = yf o ra z su m u jąc nierów ności (5) - (6) o trzy m u jem y nierów ność (2). W an alogiczny sp o s ó b m o żn a w ykazać p o p raw n ość p u n k tu (b) lem atu .
□
Jeżeli w pew nym p rz ed ziale cz asu [£1, ¿2] p rz y d z ia ł zaso bu do z a d a ń je s t s ta ły i p rz y b ie ra w a rto ści u j , j — 1 to z m ia n a s ta n u my(¿2) — &j(t 1) =
¡ti f j ( u j { t ) ) d t = f j ( u j ) • /¿ 2 dt = f j { u j ) • (¿2 - ¿1).
3.1. P rz y p a d e k n < m
T w i e r d z e n i e 1. K a żd e m u ro zd zia ło w i zasobu u (f ), pow odującem u w przedziale czasu o n iezerow ej długości p ew ną zm ia n ę sta n ó w zadań, odpowiada ro zd zia ł za sobu o niegorszej w artości fu n k c ji kry te ria ln e j, sta ły w ty m przedziale i pow odujący taką sa m ą zm ia n ę stanów zadań.
Dowód. Niech u(i) b ęd zie w ro z p a try w a n y m p rz ed ziale fu n k cją schodkow ą. W eź
m y d w a sp o śró d schodków o czasie trw a n ia odpow iednio Tj i T2 o raz o w arto ściach ro z d ziału zaso b u odpow iednio u j \ i u j2, j — 1, . . . , n . Z m ian a stan ó w z a d a ń w ty ch p rz e d z ia ła c h to xj i = ) - Ti, j = 1, . . . , n , i = 1, 2 , n a to m ia s t poziom zasobu R i = £ j = i uji, i = 1, 2 .
Z a stą p m y ro zd ział za so b u o w a rto ściach Uj\ i Uj2 ro z d ziałem o w arto ści U j , j — 1 , . . . , n, w p rz ed ziale o d łu g o śc i T = Tj + To. zm ien iając y m s ta n z a d a ń o x j = Xj \ + Xj2 i o poziom ie za so b u R — Z)”= i Uj. R ów nanie x j = Xj i + Xj2 m o żna zapisać jak o f j ( u j ) - T = / j ( u j i ) - T i + / j ( t i j 2)-T 2 i dalej f j ( u j ) = h {ui l)'Tl+f{ui 2)'1'2, a n a stę p n ie Uj = f ~ 1 ( } O 2 ^'r 2 ) _ O z n acz ając a — p rz y czym zachodzi 0 < p- = j \ + rK < *> o trz y m u je m y 1 — a = Z atem Uj = f ~ l ( a ■ f j ( u j i ) + (1 — a ) ■ f j { u j2)). Z w ypukłości funkcji m a m y Uj < a ■ + (1 - a) ■ 2)), czyli uj < a • Uj] + (1 — a ) ■ Uj2- S tą d R < a ■ R \ -I- (1 — a ) ■ R2, z czego o trzy m u jem y R < m a x { /? i, R.?}.
Ł ącząc w te n sposób kolejne schodki funkcji u (f ) o trz y m a m y s ta ły w czasie rozd ział zasobu, p rz y czym poziom zasobu b ęd zie m n iejszy niż p oziom zaso bu w funkcji schodkow ej. Z tw ierd z en ia o całkow aniu L eb esg u e’a wiemy, że k ażdą funkcję c ią g łą m ożem y przy b liży ć fu nk cją schodkow ą z dow olnie m a ły m błęd em .
□
Z tw ie rd z e n ia 1 w ynika, że p rz y d ział zasob u u * (i) = u* = co n st. ta k i, że u* = f f 1 ) i = d a je o p ty m a ln ą w arto ść funkcji k ry teria ln ej R ( u*) = E ”= i u*.
3.2. P rz y p a d e k n > m
N iech tt b ęd zie d la ro z d ziału zasobu u(£) ta k ą p e rm u ta c ją num erów z a d ań , że Cw(i) < Cjr(2) < ■ • • < CV(n)- Z ałóżm y d la upro szczen ia, że n je s t n a tu ra ln ą p e rm u ta c ją zb io ru J , tj. tt(j ) — j , j = 1 , . . . , n.
W ł a s n o ś ć 1. Is tn ie je o p tym a ln y rozdział zasobu, sp ełn ia ją cy dla pew nej p erm u- tacji tt w arunki:
1. R o zd zia ł zasobu je s t sta ły w przed ziałach [0,
C\]
i(Cj-i,Cj\,
j = 2 , n.2. Z achodzi C n = Ć .
Dowód. Pokażem y, że d la każdego ro zd ziału zasobu u ( i ) istn ie je ro zd ział zaso bu u ; (£) sp e łn ia ją c y w a ru n k i 1-2 o niegorszej w artości funkcji k ry te ria ln e j. Istn ien ie ro z d ziału zaso b u u' ( t ) sp ełn iając eg o w aru n ek 1 w ynika w p ro st z tw ierd z en ia 1.
Z ałóżm y dalej d la uproszczenia, że rozdział zasobu u (i) sp e łn ia w aru n ek 1. Jeżeli d la ro z d z ia łu u( f ) zachodzi C n < CJ, to zgodnie z tw ierd zen iem 1 m o
żem y ro zd ział zaso bu o zerowej w artości w przed ziale ( Cn , C) o raz niezerow ej w przed ziale ( C^j Cn], gdzie k = m a x { j : Cj < C n }, z a stą p ić ro zd ziałem zaso bu s ta ły m w p rz ed ziale ( Cy, C] o niegorszej w artości funkcji k ry te ria ln e j, sp e łn ia ją c ty m sam y m w a ru n ek 2.
□
4 . A l g o r y t m o p t y m a l n e g o r o z d z i a ł u z a s o b u
W dalszej części a rty k u łu d la każdego ro z d z ia łu zasob u u ( f ) , s p e łn ia ją c e go w aru n k i 1-2, będ ziem y n a z w a ć p rzed zia ła m i te sp o śró d przed ziałó w [0,
C\], (Cj, Cj+
1], j = 1 , . . . , n — 2 oraz(Cn-\,C],
k tó re m a ją niezerow ą długość. Z atem każdy ro z d ział zaso b u u( f ) sp e łn ia ją c y w a ru n k i 1 - 2 sk ła d a się z p < n p rzedziałów . O znaczm y przez Wj = { j : qj(t) = 1 w i-ty m przed ziale}, i — 1, . . . ,p, zbiór z a d a ń w ykonyw anych w i-ty m przedziale. D la tak ieg o ro z d ziału zaso bu is t
nieje ciąg w = W \ , . . . , W p , zw any dalej uszeregow aniem , s p e łn ia ją c y w arunki:
I. \WĄ < rn, i = II. [fi = l W i = J; III. Jeżeli za d an ie p o ja w ia się w więcej niż jed ity m zbiorze uszeregow ania w , to są to zb io ry o kolejnych n um e
rach. W a ru n ek I z a p ew n ia sp ełn ien ie o g ran iczen ia n a liczbę procesorów , w a ru n ek
148 M. G orczyca, A. J a n ia k
I I g w a ran tu je, że w szy stk ie z a d a n ia b ę d ą w ykonane, a w a ru n e k I I I z a p ew n ia nieprzeryw alność za d ań .
O znaczm y p rzez x 3i oraz Ujj, j — 1 . . . . , n, i — l
, . . . ,
pod pow iednio zm ian ę s ta n u oraz ilość za so b u p rz y d zielo n ą do z a d a n ia j- te g o w ¿-tym p rzedziale, n a to m ia st przez Tj, i = l , . . . , p czas trw a n ia i-teg o p rz ed ziału . O p ty m a ln e zm ian y stan ó w z a d a ń Xji o ra z długości trw a n ia p rzed ziałó w Ti d la dow olnego uszeregow an ia w są otrzy m y w an e p rzez rozw iązan ie n a stęp u ją ceg o p ro b lem u p ro g ram o w an ia w ypukłego:
( f ) (7)
p
Y , T i = C , (8 )
i=1 P
Y . %jk ~ > j = 1,
• • ■ •
n , (9)k=l
x jk 2^ 0 ) j € k 1, . . . ,p , ( 10)
X jk = 0 , j 4 W k , k = l , . . . , p , ( U )
T j > 0, k = 1 , . . . ,p . ( 12)
O graniczenie (8) w ynika z w a ru n k u 2 w łasności 1, o graniczenie (9) zap ew n ia, że każde z z a d a ń z o stan ie w całości w ykonane, n a to m ia s t o g ran iczen ia ( 10) - ( 12) w y
n ik a ją ze sform ułow ania p ro b lem u i definicji uszeregow ana w . D la d anego uszerego
w an ia w o p ty m aln y ro z d ział zasobu Uji, j = 1 , . . . , n, i = 1, . . . , pje s t w yliczany p rzez rozw iązanie p ro b lem u (7)-(12) i p rz y w y k o rz y stan iu w zoru Uji = ( ^ ) -
5 . P o d s u m o w a n i e
W a rty k u le z b a d a n o w łasności p ro b lem u d la isto tn e j z p ra k ty c zn eg o p u n k tu w idzenia klasy w klęsłych funkcji p rędkość/ zasób. S k on stru ow ano a lg o ry tm o p ty m alnego ro z d ziału zaso b u d la p rz y p a d k u liczby z a d a ń nie większej o d liczby p roce
sorowe A lg o ry tm te n w y k o rzy stan o n a stę p n ie p rz y k o n stru o w a n iu a lg o ry tm u o p ty m alnego ro z d ziału z a so b u d la dowolnej liczby za d ań . D o w y z n aczen ia o p ty m aln eg o ro z d z ia łu zasobu konieczne je s t rozw iązanie p ro b lem u o p ty m aliz acji w y p u k łe j. A u- to rz y są wr tra k c ie b a d a n ia w łasności p ro b lem u p o zw alający c h ograniczyć zarówmo p rz e strz e ń rozdziałów- zasobu, ja k i liczbę uszeregow ań.
L IT E R A T U R A
1. J a n ia k A.: W y b ra n e p ro b lem y i alg o ry tm y szeregow ania z a d a ń i ro z d ziału zasobów . A kadem icka O ficyna W y d a w n icza P L J , W arszaw a 1999.
2. J a n ia k A., S łoniński P.: M inim izing th e reso u rce Level in a S cheduling P ro blem w ith D y n am ic M odels of Jo b s on P a ra lle l M achines. A u to m a ty k a 5, 2001, p. 283-288.
3. Józefow ska J ., W ęglarz J.: D iscrete-c o n tin u o u s scheduling p ro b lem s - M ean co m p letio n tim e resu lts. E u ro p e a n J o u rn a l of O p e ra tio n a l R esearch , Vol. 94, No. 2, 1996, p. 302-309.
4. Józefow ska J ., W ęglarz J.: O n a m eth o d o lo g y for d iscre te-co n tin u o u s sche
duling. E u ro p e a n J o u rn a l of O p e ra tio n a l R esearch, Vol. 107, No. 2, 1998, p.
338-353.
R ecenzent: P rof. d r h ab. inz. T ad eusz C zachorski
A b s t r a c t
T h e re so u rce level m in im iza tio n p ro b lem on a p arallel processo rs is con
sidered. M ax im al m ak esp a n is given in advance. T h e m od el of ta s k s is d y n am ic one. For each ta s k a concave fu n c tio n is given, t h a t re la te s th e sp ee d o f change of ta s k processin g s ta te a t a tim e to th e am o u n t of co n tin u o u sly divisible resource a llo tte d to th is task . T h e reso u rce is renew able. For each ta s k th e re is also given its beg in n in g a n d its final s ta te , w hich m u st b e achieved in o rd e r to co m p lete th is ta sk . T h e o b jectiv e is to find reso u rce allo ca tio n over tim e a n d ta s k schedule, th a t m inim ize th e re so u rce level.
In th is p a p e r, som e p ro p e rtie s of th e p ro b lem a re proved, w hich allows us to c o n s tru c t a lg o rith m , t h a t finds o p tim a l reso u rce a llo c a tio n for a given ta s k schedule by solving a convex o p tim iz a tio n problem .