24

Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

  • Upload
    doanque

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Szeregowanie zada«Wykªad nr 5

dr Hanna Furma«czyk

4 kwietnia 2013

dr Hanna Furma«czyk Szeregowanie zada«

Page 2: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Procesory dedykowane

Przypomnienie:

zadania s¡ podzielone na operacje (zadanie Zj skªada si¦ z

operacji Oij do wykonania na maszynach Mi , o dªugo±ciach

czasowych pij); zadanie ko«czy si¦ wraz z wykonaniem swej

najpó¹niejszej operacji,

dopuszcza si¦ sytuacje, gdy zadanie nie wykorzystuje

wszystkich maszyn (operacje puste),

»adne dwie operacje tego samego zadania nie mog¡

wykonywa¢ si¦ rownocze±nie,

»aden procesor nie mo»e rownocze±nie pracowa¢ nad ró»nymi

operacjami.

dr Hanna Furma«czyk Szeregowanie zada«

Page 3: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Procesory dedykowane cd.

Trzy gªówne typy systemów obsªugi dla maszyn dedykowanych:

system przepªywowy (ang. �ow shop) - operacje ka»dego

zadania s¡ wykonywane przez procesory w tej samej kolejno±ci

wyznaczonej przez numery maszyn (przykªad 3),

system otwarty (ang. open shop) - kolejno±¢ wykonania

operacji w obr¦bie zada« jest dowolna (przykªad 2),

system gniazdowy (ang. job shop) - dla ka»dego zadania

mamy dane przyporz¡dkowanie maszyn operacjom oraz

wymagan¡ kolejno±¢.

dr Hanna Furma«czyk Szeregowanie zada«

Page 4: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Flow-shop - system przepªywowy

Twierdzenie

Problem F3||Cmax jest NP-trudny.

Dowód

Redukcja Problemu Podziaªu (PP):

Dany jest ci¡g liczb naturalnych a1, a2, . . . , an t». S =∑n

i=1 ai jest

l. parzyst¡.

Pytanie: Czy istnieje jego podci¡g o sumie S/2?

Redukcja: bierzemy n zada« o czasach (0, ai , 0) i = 1, . . . , n oraz

jedno z czasami (S/2, 1, S/2). Pytamy o istnienie uszeregowania z

Cmax ≤ S + 1.

S/2

… 1 …

S/20

M1

M2a1

an

M3

S+1

dr Hanna Furma«czyk Szeregowanie zada«

Page 5: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Flow-shop - system przepªywowy

Twierdzenie

Problem F3||Cmax jest NP-trudny.

Dowód

Redukcja Problemu Podziaªu (PP):

Dany jest ci¡g liczb naturalnych a1, a2, . . . , an t». S =∑n

i=1 ai jest

l. parzyst¡.

Pytanie: Czy istnieje jego podci¡g o sumie S/2?

Redukcja: bierzemy n zada« o czasach (0, ai , 0) i = 1, . . . , n oraz

jedno z czasami (S/2, 1, S/2). Pytamy o istnienie uszeregowania z

Cmax ≤ S + 1.

S/2

… 1 …

S/20

M1

M2a1

an

M3

S+1

dr Hanna Furma«czyk Szeregowanie zada«

Page 6: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Flow-shop - system przepªywowy

Twierdzenie

Problem F3||Cmax jest NP-trudny.

Dowód

Redukcja Problemu Podziaªu (PP):

Dany jest ci¡g liczb naturalnych a1, a2, . . . , an t». S =∑n

i=1 ai jest

l. parzyst¡.

Pytanie: Czy istnieje jego podci¡g o sumie S/2?

Redukcja: bierzemy n zada« o czasach (0, ai , 0) i = 1, . . . , n oraz

jedno z czasami (S/2, 1, S/2). Pytamy o istnienie uszeregowania z

Cmax ≤ S + 1.

S/2

… 1 …

S/20

M1

M2a1

an

M3

S+1

dr Hanna Furma«czyk Szeregowanie zada«

Page 7: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System zwykªy a permutacyjny (PF)

Permutacyjny system przepªywowy (PF)

system przepªywowy + kolejno±¢ podejmowania operacji z

poszczególnych zada« musi by¢ jednakowa na ka»dej maszynie

(permutacja numerów zada«).

Zwykªy system przepªywowy

Operacje w zadaniach wykonuj¡ si¦ w tej samej kolejno±ci

(numeracja procesorów) ale kolejno±¢ podejmowania zada« mo»e

si¦ zmienia¢ pomi¦dzy maszynami. Jest to mo»liwe nawet w

harmonogramie optymalnym.

dr Hanna Furma«czyk Szeregowanie zada«

Page 8: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System zwykªy a permutacyjny (PF)

Permutacyjny system przepªywowy (PF)

system przepªywowy + kolejno±¢ podejmowania operacji z

poszczególnych zada« musi by¢ jednakowa na ka»dej maszynie

(permutacja numerów zada«).

Zwykªy system przepªywowy

Operacje w zadaniach wykonuj¡ si¦ w tej samej kolejno±ci

(numeracja procesorów) ale kolejno±¢ podejmowania zada« mo»e

si¦ zmienia¢ pomi¦dzy maszynami. Jest to mo»liwe nawet w

harmonogramie optymalnym.

dr Hanna Furma«czyk Szeregowanie zada«

Page 9: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Przykªad

m = 4, n = 2. Czasy wykonania (1, 4, 4, 1) dla Z1 i (4, 1, 1, 4) dlaZ2.

Harmonogramy permutacyjne:

14

M1 Z1 Z

2M2 Z

1Z2

M3 Z

1Z2

M4 Z

1Z2

14

M1

Z2

Z1

M2

Z2

Z1

M3

Z2

Z1

M4

Z2

Z1

dr Hanna Furma«czyk Szeregowanie zada«

Page 10: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Przykªad

Harmonogram niepermutacyjny:

12

M1Z1

Z2

M2

Z1

Z2

M3

Z2

Z1

M4

Z2

Z1

dr Hanna Furma«czyk Szeregowanie zada«

Page 11: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Obserwacje

Je»eli pij > 0, to istnieje optymalne uszeregowanie �ow shopu, w

którym kolejno±¢ podejmowania zada« jest jednakowa na

pierwszych dwóch maszynach, oraz jednakowa na ostatnich dwóch.

Harmonogram optymalny dla PFm||Cmax (pij > 0) jest optymalny

dla Fm||Cmax przy m ≤ 3 (sprawdzamy wi¦c tylko harmonogramy

permutacyjne, mniej do przeszukania!).

dr Hanna Furma«czyk Szeregowanie zada«

Page 12: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Obserwacje

Je»eli pij > 0, to istnieje optymalne uszeregowanie �ow shopu, w

którym kolejno±¢ podejmowania zada« jest jednakowa na

pierwszych dwóch maszynach, oraz jednakowa na ostatnich dwóch.

Harmonogram optymalny dla PFm||Cmax (pij > 0) jest optymalny

dla Fm||Cmax przy m ≤ 3 (sprawdzamy wi¦c tylko harmonogramy

permutacyjne, mniej do przeszukania!).

dr Hanna Furma«czyk Szeregowanie zada«

Page 13: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Szukanie Cmax dla zadanej permutacji zada« - skan z ksi¡»ki M.

Pinedo (Scheduling. Theory, Algorithms and Systems; Prentice Hall

2002)

dr Hanna Furma«czyk Szeregowanie zada«

Page 14: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

dr Hanna Furma«czyk Szeregowanie zada«

Page 15: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Warto±¢ Cmax si¦ nie zmienia dla problemu dualnego - zadania

wykonujemy w odwrotnej kolejno±ci (permutacja Zn, . . . ,Z1),odwrotna kolejno±¢ maszyn Mm, . . . ,M1 - przykªad.

dr Hanna Furma«czyk Szeregowanie zada«

Page 16: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

dr Hanna Furma«czyk Szeregowanie zada«

Page 17: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

F2||Cmax, (F2|pmtn|Cmax)

Jedyny problem �ow rozwiazywalny w czasie wielomianowym, kiedy

to zadania s¡ dowolne.

Algorytm Johnsona, O(n log n)

1 Podziel zadania na zbiory N1 = {Zj : p1j < p2j},N2 = {Zj : p1j ≥ p2j}.

2 Porz¡dkuj N1 w kolejno±ci niemalej¡cej p1j a N2 wedªug

nierosn¡cego p2j3 Utwórz harmonogram permutacyjny (maksymalnie �przesuni¦ty

w lewo�) na podstawie kolejno±ci N1,N2.

Przykªad - slajdy Giaro (str. 93)

dr Hanna Furma«czyk Szeregowanie zada«

Page 18: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

F3||Cmax

Zmody�kowany algorytm Johnsona

Stosujemy, gdy M2 jest zdominowana przez M1 (∀i ,jp1i ≥ p2j) lubprzez M3 (∀i ,jp3i ≥ p2j) mo»na u»y¢ Johnsona stosuj¡c

zmody�kowane czasy wykonania (p1i + p2i , p2i + p3i ), i = 1, . . . , n.

Przykªad - slajdy dodatkowe

dr Hanna Furma«czyk Szeregowanie zada«

Page 19: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

F ||Cmax, n = 2

Algorytm gra�czny

1 Na osi OX odkªadamy kolejne odcinki o dªugo±ci

p11, p21, . . . , pm1 (czasy pracy maszyn nad Z1). Na osi OY

odkªadamy odcinki o dªugo±ci p12, p22, . . . , pm2 (czasy pracy

maszyn nad Z2).

2 Zaznaczamy obszary zakazane � wn¦trza prostok¡tów

b¦d¡cych iloczynami kartezja«skimi odpowiednich odcinków

(ta sama maszyna nie pracuje równocze±nie nad dwoma

zadaniami).

3 Szukamy najkrótszej ªamanej o odcinkach równolegªych do osi

(praca jednej maszyny) lub biegn¡cych pod k¡tem π/4(równoczesna praca obu maszyn), ª¡cz¡cej (0, 0) z(∑

i pi1,∑

i pi2). Jej dªugo±¢ to dªugo±¢ harmonogramu.

(d((x1, x2), (y1, y2)) = max{|x1 − x2|, |y1 − y2|}).

Przykªad - slajdy Giaro (str. 98)

dr Hanna Furma«czyk Szeregowanie zada«

Page 20: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System przepªywowy permutacyjny proporcjonalny,Fm|pmtn, pij = pj |Cmax

Reguªa SPT-LPT

Zbiór zada« podzielony jest na dwie cz¦±ci:

1. cz¦±¢: pj1 ≤ pj2 ≤ · · · ≤ pjk2. cz¦±¢: pjk ≥ pjk+1 ≥ · · · ≥ pjn

Mo»e by¢ kilka takich podziaªów

dr Hanna Furma«czyk Szeregowanie zada«

Page 21: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System przepªywowy permutacyjny proporcjonalny,Fm|pmtn, pij = pj |Cmax

Reguªa SPT-LPT

Zbiór zada« podzielony jest na dwie cz¦±ci:

1. cz¦±¢: pj1 ≤ pj2 ≤ · · · ≤ pjk2. cz¦±¢: pjk ≥ pjk+1 ≥ · · · ≥ pjn

Mo»e by¢ kilka takich podziaªów

dr Hanna Furma«czyk Szeregowanie zada«

Page 22: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System przepªywowy permutacyjny proporcjonalny,Fm|pmtn, pij = pj |Cmax

Twierdzenie

Dla problemu Fm|pmtn, pij = pj |Cmax

Cmax =n∑

j=1

pj + (m − 1)max{p1, . . . , pn}

i nie zale»y od uszeregowania.

Dowód

Do zrobienia na ¢wiczeniach

dr Hanna Furma«czyk Szeregowanie zada«

Page 23: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

System przepªywowy permutacyjny proporcjonalny,Fm|pmtn, pij = pj |Cmax

Twierdzenie

Dla problemu Fm|pmtn, pij = pj |Cmax

Cmax =n∑

j=1

pj + (m − 1)max{p1, . . . , pn}

i nie zale»y od uszeregowania.

Dowód

Do zrobienia na ¢wiczeniach

dr Hanna Furma«czyk Szeregowanie zada«

Page 24: Szeregowanie zadan - Wyk ad nr 5hanna/szeregowanie/w5_4_04.pdf · Zbiór zada« podzielony jest na dwie cz¦±ci: 1. cz¦±¢: p j 1 p j 2 p j k 2. cz¦±¢: p j k p j k +1 p j n

Zªo»ono±¢ �ow shop

Ksi¡»ka P. Brucker - str. 248-249.

dr Hanna Furma«czyk Szeregowanie zada«