+ All Categories
Home > Documents > Acyklické digrafy

Acyklické digrafy

Date post: 30-Jan-2017
Category:
Upload: ledat
View: 225 times
Download: 0 times
Share this document with a friend
138
Acyklick´ e digrafy Stanislav Pal´ uch Fakulta riadenia a informatiky, ˇ Zilinsk´ a univerzita 7. apr´ ıla 2016 Stanislav Pal´ uch, Fakulta riadenia a informatiky, ˇ Zilinsk´ a univerzita Acyklick´ e digrafy 1/38
Transcript
Page 1: Acyklické digrafy

Acyklicke digrafy

Stanislav Paluch

Fakulta riadenia a informatiky, Zilinska univerzita

7. aprıla 2016

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 1/38

Page 2: Acyklické digrafy

Acyklicky digraf, orientovany strom

Definıcia

Acyklicky digraf je taky digraf, ktory neobsahuje orientovany cyklus.

Definıcia

Orientovany strom je neorientovane suvisly digraf, ktory neobsahujepolocyklus.

Poznamka

Ak−→G = (V ,H) je acyklicky digraf, potom nemoze obsahovat’ hrany

(u, v) a (v , u) sucasne, lebo by v tomto prıpade obsahoval i cyklus(u, (u, v), v , (v , u), u).

Poznamka

(u, (u, v), v , (u, v), u) nie je polocyklus, lebo obsahuje tu istu orientovanuhranu (u, v) dvakrat.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 2/38

Page 3: Acyklické digrafy

Acyklicky digraf, orientovany strom

Definıcia

Acyklicky digraf je taky digraf, ktory neobsahuje orientovany cyklus.

Definıcia

Orientovany strom je neorientovane suvisly digraf, ktory neobsahujepolocyklus.

Poznamka

Ak−→G = (V ,H) je acyklicky digraf, potom nemoze obsahovat’ hrany

(u, v) a (v , u) sucasne, lebo by v tomto prıpade obsahoval i cyklus(u, (u, v), v , (v , u), u).

Poznamka

(u, (u, v), v , (u, v), u) nie je polocyklus, lebo obsahuje tu istu orientovanuhranu (u, v) dvakrat.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 2/38

Page 4: Acyklické digrafy

Acyklicky digraf, orientovany strom

Definıcia

Acyklicky digraf je taky digraf, ktory neobsahuje orientovany cyklus.

Definıcia

Orientovany strom je neorientovane suvisly digraf, ktory neobsahujepolocyklus.

Poznamka

Ak−→G = (V ,H) je acyklicky digraf, potom nemoze obsahovat’ hrany

(u, v) a (v , u) sucasne, lebo by v tomto prıpade obsahoval i cyklus(u, (u, v), v , (v , u), u).

Poznamka

(u, (u, v), v , (u, v), u) nie je polocyklus, lebo obsahuje tu istu orientovanuhranu (u, v) dvakrat.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 2/38

Page 5: Acyklické digrafy

Acyklicky digraf, orientovany strom

Definıcia

Acyklicky digraf je taky digraf, ktory neobsahuje orientovany cyklus.

Definıcia

Orientovany strom je neorientovane suvisly digraf, ktory neobsahujepolocyklus.

Poznamka

Ak−→G = (V ,H) je acyklicky digraf, potom nemoze obsahovat’ hrany

(u, v) a (v , u) sucasne, lebo by v tomto prıpade obsahoval i cyklus(u, (u, v), v , (v , u), u).

Poznamka

(u, (u, v), v , (u, v), u) nie je polocyklus, lebo obsahuje tu istu orientovanuhranu (u, v) dvakrat.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 2/38

Page 6: Acyklické digrafy

Acyklicky digraf

Ku kazdemu acyklickemu digrafu−→G = (V ,H) mozno zostrojit’ graf

G ′ = (V ,H ′) s tou istou mnozinou vrcholov V a s mnozinou hran H ′

definovanouH ′ = {{u, v} | (u, v) ∈ H} . (1)

H ′ je vlastne mnozina hran H, v ktorej”zabudneme“ na orientaciu.

Pretoze acyklicky digraf moze pre kazdu dvojicu vrcholov u ∈ V , v ∈ V ,kde u 6= v , obsahovat’ najviac jednu z orientovanych hran (u, v), (v , u),platı

|H ′| = |H|.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 3/38

Page 7: Acyklické digrafy

Acyklicky digraf

1

2 3

4 5

6

1

2 3

4 5

6

1

2 3

4 5

6

a) b) c)

Obr.: a) Neorientovane suvisly acyklicky digraf,

ktory nie je orientovanym stromom.

b) Orientovany strom−→G . c) Neorientovany strom prıslusny k

−→G .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 4/38

Page 8: Acyklické digrafy

Vlastnosti orientovanych stromov

Veta

Nasledujuce tvrdenia su ekvivalentne:

a) Digraf−→G = (V ,H) je orientovany strom.

b) V digrafe−→G = (V ,H) existuje pre kazde u, v ∈ V jedina u–v

polocesta.

c) Digraf−→G = (V ,H) je neorientovane suvisly a kazda orientovana

hrana mnoziny H je mostom.

(Mostom v orientovanom digrafe rozumieme taku orientovanuhranu, po vybratı ktorej stupne pocet komponentov digrafu).

d) Digraf−→G = (V ,H) je neorientovane suvisly a |H| = |V | − 1.

e) V digrafe−→G = (V ,H) platı |H| = |V | − 1 a

−→G neobsahuje

polocyklus.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 5/38

Page 9: Acyklické digrafy

Vlastnosti acyklickych digrafov

VetaNech

−→G = (V ,H) je acyklicky digraf.

Potom V obsahuje aspon jeden vrchol z taky, ze ideg(z) = 0a aspon jeden vrchol u taky, ze odeg(u) = 0.

Dokaz.

Nechµ(v1, vk) = (v1, (v1, v2), v2, . . . , (vk−1, vk), vk)

je orientovana cesta v digrafe−→G s najvacsım poctom hran.

Ukazeme, ze odeg(vk) = 0.

v1 v2 vk

Keby odeg(vk) > 0,existovala by aspon jedna hrana (ciarkovane) vychadzajuca z vk ,

ktora predlzuje cestu µ(v1, vk) (spor s tym, ze je najdlhsia)

alebo uzaviera cyklus (spor s acyklicnost’ou−→G )

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 6/38

Page 10: Acyklické digrafy

Vlastnosti acyklickych digrafov

VetaNech

−→G = (V ,H) je acyklicky digraf.

Potom V obsahuje aspon jeden vrchol z taky, ze ideg(z) = 0a aspon jeden vrchol u taky, ze odeg(u) = 0.

Dokaz.

Nechµ(v1, vk) = (v1, (v1, v2), v2, . . . , (vk−1, vk), vk)

je orientovana cesta v digrafe−→G s najvacsım poctom hran.

Ukazeme, ze odeg(vk) = 0.

v1 v2 vk vi

Keby odeg(vk) > 0,existovala by aspon jedna hrana (ciarkovane) vychadzajuca z vk ,

ktora predlzuje cestu µ(v1, vk) (spor s tym, ze je najdlhsia)

alebo uzaviera cyklus (spor s acyklicnost’ou−→G )

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 6/38

Page 11: Acyklické digrafy

Vlastnosti acyklickych digrafov

VetaNech

−→G = (V ,H) je acyklicky digraf.

Potom V obsahuje aspon jeden vrchol z taky, ze ideg(z) = 0a aspon jeden vrchol u taky, ze odeg(u) = 0.

Dokaz.

Nechµ(v1, vk) = (v1, (v1, v2), v2, . . . , (vk−1, vk), vk)

je orientovana cesta v digrafe−→G s najvacsım poctom hran.

Ukazeme, ze odeg(vk) = 0.

v1 v2 vkvi

Keby odeg(vk) > 0,existovala by aspon jedna hrana (ciarkovane) vychadzajuca z vk ,

ktora predlzuje cestu µ(v1, vk) (spor s tym, ze je najdlhsia)

alebo uzaviera cyklus (spor s acyklicnost’ou−→G )

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 6/38

Page 12: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

Veta

Digraf−→G = (V ,H) je acyklicky prave vtedy, ked’ jeho vrcholy mozno

usporiadat’ do postupnosti

v1, v2, . . . , vn (2)

(t.j, precıslovat’) tak, ze platı:

Ak (vi , vk) ∈ H potom i < k . (3)

Definıcia

Ocıslovanie vrcholov v1, v2, . . . , vn acyklickeho digrafu−→G = (V ,H), pre ktore platı:

ak (vi , vk) ∈ H, potom i < k ,

nazveme monotonnym ocıslovanım vrcholov acyklickeho digrafu.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 7/38

Page 13: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

Veta

Digraf−→G = (V ,H) je acyklicky prave vtedy, ked’ jeho vrcholy mozno

usporiadat’ do postupnosti

v1, v2, . . . , vn (2)

(t.j, precıslovat’) tak, ze platı:

Ak (vi , vk) ∈ H potom i < k . (3)

Definıcia

Ocıslovanie vrcholov v1, v2, . . . , vn acyklickeho digrafu−→G = (V ,H), pre ktore platı:

ak (vi , vk) ∈ H, potom i < k ,

nazveme monotonnym ocıslovanım vrcholov acyklickeho digrafu.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 7/38

Page 14: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

Algoritmus

Algoritmus I. na monotonne ocıslovanie acyklickeho digrafu−→G = (V ,H).

Krok 1. Poloz i := 1.

Krok 2. {Digraf−→G = (V ,H) obsahuje aspon jeden taky vrchol

v ∈ V , ze ideg(v) = 0.}Vezmi taky vrchol v ∈ V , ze ideg(v) = 0 a poloz vi := v.

Krok 3. Ak V − {v} = ∅ STOP,

inak−→G :=

−→G − {v}, i := i + 1 a Goto Krok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 8/38

Page 15: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

Algoritmus

Algoritmus I. na monotonne ocıslovanie acyklickeho digrafu−→G = (V ,H).

Krok 1. Poloz i := 1.

Krok 2. {Digraf−→G = (V ,H) obsahuje aspon jeden taky vrchol

v ∈ V , ze ideg(v) = 0.}Vezmi taky vrchol v ∈ V , ze ideg(v) = 0 a poloz vi := v.

Krok 3. Ak V − {v} = ∅ STOP,

inak−→G :=

−→G − {v}, i := i + 1 a Goto Krok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 8/38

Page 16: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

Algoritmus

Algoritmus I. na monotonne ocıslovanie acyklickeho digrafu−→G = (V ,H).

Krok 1. Poloz i := 1.

Krok 2. {Digraf−→G = (V ,H) obsahuje aspon jeden taky vrchol

v ∈ V , ze ideg(v) = 0.}Vezmi taky vrchol v ∈ V , ze ideg(v) = 0 a poloz vi := v.

Krok 3. Ak V − {v} = ∅ STOP,

inak−→G :=

−→G − {v}, i := i + 1 a Goto Krok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 8/38

Page 17: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

AlgoritmusAlgoritmus II. na monotonne ocıslovanie vrcholov acyklickeho

digrafu−→G = (V ,H).

Krok 1. Pre kazde v ∈ V prirad’ znacku d(v) := ideg(v). Urcipodmnozinu V0 vrcholovej mnoziny V s nulovou znackou d, t. j.

V0 = {v | v ∈ V , d(v) = 0}.

Poloz k := |V0| a prvky z mnoziny V0 zorad’ do l’ubovol’nejpostupnosti P = v1, v2, . . . , vk . Poloz i := 1.

Krok 2. Postupne pre kazdy vrchol w ∈ V+(vi ) urob:d(w) := d(w)− 1. Ak d(w) = 0 potom zarad’ vrchol w na koniecpostupnosti P, t. j. poloz k := k + 1, vk := w.

Krok 3. Ak k = n = |V | STOP, inak poloz i := i + 1 a GOTOKrok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 9/38

Page 18: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

AlgoritmusAlgoritmus II. na monotonne ocıslovanie vrcholov acyklickeho

digrafu−→G = (V ,H).

Krok 1. Pre kazde v ∈ V prirad’ znacku d(v) := ideg(v). Urcipodmnozinu V0 vrcholovej mnoziny V s nulovou znackou d, t. j.

V0 = {v | v ∈ V , d(v) = 0}.

Poloz k := |V0| a prvky z mnoziny V0 zorad’ do l’ubovol’nejpostupnosti P = v1, v2, . . . , vk . Poloz i := 1.

Krok 2. Postupne pre kazdy vrchol w ∈ V+(vi ) urob:d(w) := d(w)− 1. Ak d(w) = 0 potom zarad’ vrchol w na koniecpostupnosti P, t. j. poloz k := k + 1, vk := w.

Krok 3. Ak k = n = |V | STOP, inak poloz i := i + 1 a GOTOKrok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 9/38

Page 19: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

AlgoritmusAlgoritmus II. na monotonne ocıslovanie vrcholov acyklickeho

digrafu−→G = (V ,H).

Krok 1. Pre kazde v ∈ V prirad’ znacku d(v) := ideg(v). Urcipodmnozinu V0 vrcholovej mnoziny V s nulovou znackou d, t. j.

V0 = {v | v ∈ V , d(v) = 0}.

Poloz k := |V0| a prvky z mnoziny V0 zorad’ do l’ubovol’nejpostupnosti P = v1, v2, . . . , vk . Poloz i := 1.

Krok 2. Postupne pre kazdy vrchol w ∈ V+(vi ) urob:d(w) := d(w)− 1. Ak d(w) = 0 potom zarad’ vrchol w na koniecpostupnosti P, t. j. poloz k := k + 1, vk := w.

Krok 3. Ak k = n = |V | STOP, inak poloz i := i + 1 a GOTOKrok 2.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 9/38

Page 20: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

4

3

5

1

8

2

6

7

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 21: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

3

5

1

8

2

7

4

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 22: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

3

5

1

8

24

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 23: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

4 5

1

8

2

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 24: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

1

8

25

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 25: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

8

2

1

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 26: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

2

8

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 27: Acyklické digrafy

Monotonne ocıslovanie vrcholov acyklickeho digrafu

8

i v(i) 1 2 3 4 5 6 7 8d(v)

- - 2 2 2 2 3 0 0 2

1 6 2 2 1 1 0 2

2 7 2 2 0 0 2 2

3 3 1 2 1 1

4 4 1 2 0 1

5 5 0 1 1

6 1 0 0

7 2

8 8

6 7 5 1 2 843

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 10/38

Page 28: Acyklické digrafy

Tranzitıvny digraf

Definıcia

Hovorıme, ze acyklicky digraf−→G = (V ,H) je tranzitıvny, ak pre

l’ubovol’ne dve orientovane hrany (u, v) ∈ H, (v ,w) ∈ H existujeorientovana hrana (u,w) ∈ H.

u

v

wV tranzitıvnom digrafe ku kazdej dvojici hran (u, v), (v ,w)

existuje aj ”priama”hrana (v ,w).

Veta

Acyklicky digraf−→G je tranzitıvny prave vtedy, ked’ ku kazdej orientovanej

u–v ceste v−→G existuje orientovana hrana (u, v) ∈ H.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 11/38

Page 29: Acyklické digrafy

Tranzitıvny digraf

Definıcia

Hovorıme, ze acyklicky digraf−→G = (V ,H) je tranzitıvny, ak pre

l’ubovol’ne dve orientovane hrany (u, v) ∈ H, (v ,w) ∈ H existujeorientovana hrana (u,w) ∈ H.

u

v

wV tranzitıvnom digrafe ku kazdej dvojici hran (u, v), (v ,w)

existuje aj ”priama”hrana (v ,w).

Veta

Acyklicky digraf−→G je tranzitıvny prave vtedy, ked’ ku kazdej orientovanej

u–v ceste v−→G existuje orientovana hrana (u, v) ∈ H.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 11/38

Page 30: Acyklické digrafy

Tranzitıvny uzaver, tranzitıvna redukcia

Definıcia

Hovorıme, ze digraf−→G T je tranzitıvny uzaver digrafu

−→G , ak

−→G T je

minimalny tranzitıvny digraf obsahujuci ako podgraf digraf−→G .

Hovorıme, ze digraf−→G R je tranzitıvna redukcia digrafu

−→G , ak

−→G R je

minimalny faktorovy podgraf digrafu−→G s rovnakou dosiahnutel’nost’ou

vrcholov ako digraf−→G .

a) Digraf−→G . b) Tranzitıvny uzaver

−→G T digrafu

−→G .

c) Tranzitıvna redukcia−→G R digrafu

−→G .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 12/38

Page 31: Acyklické digrafy

Tranzitıvny uzaver, tranzitıvna redukcia

Definıcia

Hovorıme, ze digraf−→G T je tranzitıvny uzaver digrafu

−→G , ak

−→G T je

minimalny tranzitıvny digraf obsahujuci ako podgraf digraf−→G .

Hovorıme, ze digraf−→G R je tranzitıvna redukcia digrafu

−→G , ak

−→G R je

minimalny faktorovy podgraf digrafu−→G s rovnakou dosiahnutel’nost’ou

vrcholov ako digraf−→G .

a) Digraf−→G . b) Tranzitıvny uzaver

−→G T digrafu

−→G .

c) Tranzitıvna redukcia−→G R digrafu

−→G .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 12/38

Page 32: Acyklické digrafy

Tranzitıvny uzaver, tranzitıvna redukcia

Definıcia

Hovorıme, ze digraf−→G T je tranzitıvny uzaver digrafu

−→G , ak

−→G T je

minimalny tranzitıvny digraf obsahujuci ako podgraf digraf−→G .

Hovorıme, ze digraf−→G R je tranzitıvna redukcia digrafu

−→G , ak

−→G R je

minimalny faktorovy podgraf digrafu−→G s rovnakou dosiahnutel’nost’ou

vrcholov ako digraf−→G .

51

3

5

6

3

1 1

3

54

2 2

4

2

4

7 7 7

66

a) b) c)a) Digraf

−→G . b) Tranzitıvny uzaver

−→G T digrafu

−→G .

c) Tranzitıvna redukcia−→G R digrafu

−→G .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 12/38

Page 33: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

0|0 ∞|0

∞|0

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 34: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

0|0

∞|0

∞|0 −10|1

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 35: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

0|0 −10|1

∞|0 −20|2

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 36: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

−10|1

−20|2

∞|0 −30|3

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 37: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

−20|2

−30|3 −40|1−10|1

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 38: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

−30|3 −40|1

−50|0−20|2

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 39: Acyklické digrafy

Problem najkratsej cesty v prıpade vseobecnych cien hran

Ak v digrafe−→G = (V , h, c) existuje orientovany cyklus zapornej ceny,

algoritmy na hl’adanie najkratsej cesty zlyhavaju.

1 2

3

−10

−10−10

−40|1

−50|0

−60|0−30|3

V acyklickych digrafoch je vsak problem najkratsej cesty polynomialneriesitel’ny aj v prıpade vseobecnej ceny hran.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 13/38

Page 40: Acyklické digrafy

Najkratsia cesta v acyklickom digrafe

AlgoritmusAlgoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V

v hranovo ohodnotenom acyklickom digrafe−→G = (V ,H, c) s vseobecnou

cenou hrany c(h).Krok 1. Monotonne ocısluj vrcholy digrafu

−→G , nech

P = v1, v2, . . . , vn je postupnost’ vrcholov digrafu−→G zoradena podl’a

monotonneho ocıslovania. Zisti index vrchola u v postupnosti P.Nech i je index taky, ze u = vi .

Krok 2. Pre kazdy vrchol v ∈ V prirad’ znacky t(v), x(v).

Poloz t(u) := 0, t(j) := ∞ pre vsetky j 6= u, j ∈ V .

Poloz x(j) := 0 pre vsetky j ∈ V .

Krok 3. Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak t(w) > t(vi ) + c(vi ,w),

potom t(w) = t(vi ) + c(vi ,w), a x(w) := vi .

Krok 4. i := i + 1. Ak i = n STOP, inak GOTO Krok 3.♣

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 14/38

Page 41: Acyklické digrafy

Najkratsia cesta v acyklickom digrafe

AlgoritmusAlgoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V

v hranovo ohodnotenom acyklickom digrafe−→G = (V ,H, c) s vseobecnou

cenou hrany c(h).Krok 1. Monotonne ocısluj vrcholy digrafu

−→G , nech

P = v1, v2, . . . , vn je postupnost’ vrcholov digrafu−→G zoradena podl’a

monotonneho ocıslovania. Zisti index vrchola u v postupnosti P.Nech i je index taky, ze u = vi .

Krok 2. Pre kazdy vrchol v ∈ V prirad’ znacky t(v), x(v).

Poloz t(u) := 0, t(j) := ∞ pre vsetky j 6= u, j ∈ V .

Poloz x(j) := 0 pre vsetky j ∈ V .

Krok 3. Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak t(w) > t(vi ) + c(vi ,w),

potom t(w) = t(vi ) + c(vi ,w), a x(w) := vi .

Krok 4. i := i + 1. Ak i = n STOP, inak GOTO Krok 3.♣

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 14/38

Page 42: Acyklické digrafy

Najkratsia cesta v acyklickom digrafe

AlgoritmusAlgoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V

v hranovo ohodnotenom acyklickom digrafe−→G = (V ,H, c) s vseobecnou

cenou hrany c(h).Krok 1. Monotonne ocısluj vrcholy digrafu

−→G , nech

P = v1, v2, . . . , vn je postupnost’ vrcholov digrafu−→G zoradena podl’a

monotonneho ocıslovania. Zisti index vrchola u v postupnosti P.Nech i je index taky, ze u = vi .

Krok 2. Pre kazdy vrchol v ∈ V prirad’ znacky t(v), x(v).

Poloz t(u) := 0, t(j) := ∞ pre vsetky j 6= u, j ∈ V .

Poloz x(j) := 0 pre vsetky j ∈ V .

Krok 3. Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak t(w) > t(vi ) + c(vi ,w),

potom t(w) = t(vi ) + c(vi ,w), a x(w) := vi .

Krok 4. i := i + 1. Ak i = n STOP, inak GOTO Krok 3.♣

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 14/38

Page 43: Acyklické digrafy

Najkratsia cesta v acyklickom digrafe

AlgoritmusAlgoritmus na hl’adanie najkratsıch orientovanych u–v ciestz pevneho vrchola u ∈ V do vsetkych dosiahnutel’nych vrcholov v ∈ V

v hranovo ohodnotenom acyklickom digrafe−→G = (V ,H, c) s vseobecnou

cenou hrany c(h).Krok 1. Monotonne ocısluj vrcholy digrafu

−→G , nech

P = v1, v2, . . . , vn je postupnost’ vrcholov digrafu−→G zoradena podl’a

monotonneho ocıslovania. Zisti index vrchola u v postupnosti P.Nech i je index taky, ze u = vi .

Krok 2. Pre kazdy vrchol v ∈ V prirad’ znacky t(v), x(v).

Poloz t(u) := 0, t(j) := ∞ pre vsetky j 6= u, j ∈ V .

Poloz x(j) := 0 pre vsetky j ∈ V .

Krok 3. Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak t(w) > t(vi ) + c(vi ,w),

potom t(w) = t(vi ) + c(vi ,w), a x(w) := vi .

Krok 4. i := i + 1. Ak i = n STOP, inak GOTO Krok 3.♣

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 14/38

Page 44: Acyklické digrafy

Najdlhsia cesta

DefinıciaNech

−→G = (V ,H, c) je hranovo ohodnoteny digraf, u ∈ V , v ∈ V .

Najdlhsia orientovana u–v cesta v digrafe−→G = (V ,H, c) je ta orientovana

u–v cesta, ktora ma zo vsetkych u–v ciest najvacsiu dlzku.

Analogicky definujeme najdlhsiu cestu v hranovo ohodnotenom grafe

G = (V ,H, c).

PoznamkaUloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom je c(h) ≥ 0 pre ∀h ∈ H, je polynomialne

riesitel’na.

Uloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom cena hrany moze nadobudat’ aj zaporne hodnoty,

je vo vseobocnosti t’azka – nemame pre nu polynomialny algoritmus.

Uloha hl’adania najdlhsej cesty v digrafe−→G = (V ,H, c) moze byt’

prevedena na ulohu hl’adania nakratsej cesty v digrafe−→G = (V ,H, c), kde

c(h) = −c(h). Vo vseobecnom prıpade je to t’azka uloha.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 15/38

Page 45: Acyklické digrafy

Najdlhsia cesta

DefinıciaNech

−→G = (V ,H, c) je hranovo ohodnoteny digraf, u ∈ V , v ∈ V .

Najdlhsia orientovana u–v cesta v digrafe−→G = (V ,H, c) je ta orientovana

u–v cesta, ktora ma zo vsetkych u–v ciest najvacsiu dlzku.

Analogicky definujeme najdlhsiu cestu v hranovo ohodnotenom grafe

G = (V ,H, c).

PoznamkaUloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom je c(h) ≥ 0 pre ∀h ∈ H, je polynomialne

riesitel’na.

Uloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom cena hrany moze nadobudat’ aj zaporne hodnoty,

je vo vseobocnosti t’azka – nemame pre nu polynomialny algoritmus.

Uloha hl’adania najdlhsej cesty v digrafe−→G = (V ,H, c) moze byt’

prevedena na ulohu hl’adania nakratsej cesty v digrafe−→G = (V ,H, c), kde

c(h) = −c(h). Vo vseobecnom prıpade je to t’azka uloha.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 15/38

Page 46: Acyklické digrafy

Najdlhsia cesta

DefinıciaNech

−→G = (V ,H, c) je hranovo ohodnoteny digraf, u ∈ V , v ∈ V .

Najdlhsia orientovana u–v cesta v digrafe−→G = (V ,H, c) je ta orientovana

u–v cesta, ktora ma zo vsetkych u–v ciest najvacsiu dlzku.

Analogicky definujeme najdlhsiu cestu v hranovo ohodnotenom grafe

G = (V ,H, c).

PoznamkaUloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom je c(h) ≥ 0 pre ∀h ∈ H, je polynomialne

riesitel’na.

Uloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom cena hrany moze nadobudat’ aj zaporne hodnoty,

je vo vseobocnosti t’azka – nemame pre nu polynomialny algoritmus.

Uloha hl’adania najdlhsej cesty v digrafe−→G = (V ,H, c) moze byt’

prevedena na ulohu hl’adania nakratsej cesty v digrafe−→G = (V ,H, c), kde

c(h) = −c(h). Vo vseobecnom prıpade je to t’azka uloha.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 15/38

Page 47: Acyklické digrafy

Najdlhsia cesta

DefinıciaNech

−→G = (V ,H, c) je hranovo ohodnoteny digraf, u ∈ V , v ∈ V .

Najdlhsia orientovana u–v cesta v digrafe−→G = (V ,H, c) je ta orientovana

u–v cesta, ktora ma zo vsetkych u–v ciest najvacsiu dlzku.

Analogicky definujeme najdlhsiu cestu v hranovo ohodnotenom grafe

G = (V ,H, c).

PoznamkaUloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom je c(h) ≥ 0 pre ∀h ∈ H, je polynomialne

riesitel’na.

Uloha hl’adania najkratsej cesty v hranovo ohodnotenom digrafe−→G = (V ,H, c), v ktorom cena hrany moze nadobudat’ aj zaporne hodnoty,

je vo vseobocnosti t’azka – nemame pre nu polynomialny algoritmus.

Uloha hl’adania najdlhsej cesty v digrafe−→G = (V ,H, c) moze byt’

prevedena na ulohu hl’adania nakratsej cesty v digrafe−→G = (V ,H, c), kde

c(h) = −c(h). Vo vseobecnom prıpade je to t’azka uloha.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 15/38

Page 48: Acyklické digrafy

Projekt – Metody casoveho planovania

Projekt sa sklada z elementarnych cinnostı

Elementarna cinnost’ – je cinnost’, ktoru z prijateho rozlisovaciehohl’adiska povazujeme za nedelitel’nu.

Pre kazdu elementarnu cinnost’ je dany cas vykonavania, ktory jenemenny. Jednotlive elementarne cinnosti vsak mozu mat’ vovseobecnosti rozne casy vykonavania.

Niektore elementarne cinnosti sa mozu vykonavat’ sucasne, avsakniektore cinnosti mozu zacat’ az po ukoncenı inych cinnostı.

DefinıciaBudeme hovorit’, ze cinnost’ A predchadza cinnosti B a pısat’ A ≺ B,ak sa cinnost’ B moze zacat’ vykonavat’ az po skoncenı vykonavaniacinnosti A.Ak A ≺ B, budeme tiez hovorit’ ze cinnost’ A je predchodca cinnosti Balebo cinnost’ B je naslednık cinnosti A.Vzt’ah A ≺ B je binarnou relaciou na mnozine vsetkych elementarnychcinnostı.Budeme ju volat’ precedencna relacia alebo relacia precedencie.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 16/38

Page 49: Acyklické digrafy

Projekt – Metody casoveho planovania

Projekt sa sklada z elementarnych cinnostı

Elementarna cinnost’ – je cinnost’, ktoru z prijateho rozlisovaciehohl’adiska povazujeme za nedelitel’nu.

Pre kazdu elementarnu cinnost’ je dany cas vykonavania, ktory jenemenny. Jednotlive elementarne cinnosti vsak mozu mat’ vovseobecnosti rozne casy vykonavania.

Niektore elementarne cinnosti sa mozu vykonavat’ sucasne, avsakniektore cinnosti mozu zacat’ az po ukoncenı inych cinnostı.

DefinıciaBudeme hovorit’, ze cinnost’ A predchadza cinnosti B a pısat’ A ≺ B,ak sa cinnost’ B moze zacat’ vykonavat’ az po skoncenı vykonavaniacinnosti A.Ak A ≺ B, budeme tiez hovorit’ ze cinnost’ A je predchodca cinnosti Balebo cinnost’ B je naslednık cinnosti A.Vzt’ah A ≺ B je binarnou relaciou na mnozine vsetkych elementarnychcinnostı.Budeme ju volat’ precedencna relacia alebo relacia precedencie.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 16/38

Page 50: Acyklické digrafy

Projekt – Metody casoveho planovania

Projekt sa sklada z elementarnych cinnostı

Elementarna cinnost’ – je cinnost’, ktoru z prijateho rozlisovaciehohl’adiska povazujeme za nedelitel’nu.

Pre kazdu elementarnu cinnost’ je dany cas vykonavania, ktory jenemenny. Jednotlive elementarne cinnosti vsak mozu mat’ vovseobecnosti rozne casy vykonavania.

Niektore elementarne cinnosti sa mozu vykonavat’ sucasne, avsakniektore cinnosti mozu zacat’ az po ukoncenı inych cinnostı.

DefinıciaBudeme hovorit’, ze cinnost’ A predchadza cinnosti B a pısat’ A ≺ B,ak sa cinnost’ B moze zacat’ vykonavat’ az po skoncenı vykonavaniacinnosti A.Ak A ≺ B, budeme tiez hovorit’ ze cinnost’ A je predchodca cinnosti Balebo cinnost’ B je naslednık cinnosti A.Vzt’ah A ≺ B je binarnou relaciou na mnozine vsetkych elementarnychcinnostı.Budeme ju volat’ precedencna relacia alebo relacia precedencie.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 16/38

Page 51: Acyklické digrafy

Projekt – Metody casoveho planovania

Projekt sa sklada z elementarnych cinnostı

Elementarna cinnost’ – je cinnost’, ktoru z prijateho rozlisovaciehohl’adiska povazujeme za nedelitel’nu.

Pre kazdu elementarnu cinnost’ je dany cas vykonavania, ktory jenemenny. Jednotlive elementarne cinnosti vsak mozu mat’ vovseobecnosti rozne casy vykonavania.

Niektore elementarne cinnosti sa mozu vykonavat’ sucasne, avsakniektore cinnosti mozu zacat’ az po ukoncenı inych cinnostı.

DefinıciaBudeme hovorit’, ze cinnost’ A predchadza cinnosti B a pısat’ A ≺ B,ak sa cinnost’ B moze zacat’ vykonavat’ az po skoncenı vykonavaniacinnosti A.Ak A ≺ B, budeme tiez hovorit’ ze cinnost’ A je predchodca cinnosti Balebo cinnost’ B je naslednık cinnosti A.Vzt’ah A ≺ B je binarnou relaciou na mnozine vsetkych elementarnychcinnostı.Budeme ju volat’ precedencna relacia alebo relacia precedencie.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 16/38

Page 52: Acyklické digrafy

Projekt – Metody casoveho planovania

Projekt sa sklada z elementarnych cinnostı

Elementarna cinnost’ – je cinnost’, ktoru z prijateho rozlisovaciehohl’adiska povazujeme za nedelitel’nu.

Pre kazdu elementarnu cinnost’ je dany cas vykonavania, ktory jenemenny. Jednotlive elementarne cinnosti vsak mozu mat’ vovseobecnosti rozne casy vykonavania.

Niektore elementarne cinnosti sa mozu vykonavat’ sucasne, avsakniektore cinnosti mozu zacat’ az po ukoncenı inych cinnostı.

DefinıciaBudeme hovorit’, ze cinnost’ A predchadza cinnosti B a pısat’ A ≺ B,ak sa cinnost’ B moze zacat’ vykonavat’ az po skoncenı vykonavaniacinnosti A.Ak A ≺ B, budeme tiez hovorit’ ze cinnost’ A je predchodca cinnosti Balebo cinnost’ B je naslednık cinnosti A.Vzt’ah A ≺ B je binarnou relaciou na mnozine vsetkych elementarnychcinnostı.Budeme ju volat’ precedencna relacia alebo relacia precedencie.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 16/38

Page 53: Acyklické digrafy

Relacia precedencie.

Poznamka

Relacia precedencie ≺ je tranzitıvna, t. j. platı:Ak A ≺ B, B ≺ C, potom aj A ≺ C.

Ak elementarna cinnost’ B musı cakat’ na skoncenie cinnosti A a cinnost’

C musı cakat’ na skoncenie cinnosti B, tym skor musı cinnost’ C cakat’ naukoncenie cinnosti A.

Relacia precedencie ≺ je antireflexıvna, t. j.:Pre ziadne A ∈ E neplatı A ≺ A.

V opacnom prıpade by zaciatok cinnosti A musel cakat’ na jej vlastnykoniec, co je technologicky nezmysel.Dosledok: Z toho d’alej vyplyva, ze neexistuje postupnost’ cinnostıA1,A2, . . . ,An taka, ze

A1 ≺ A2 ≺ · · · ≺ An ≺ A1,

lebo potom by z tranzitivity vyplyvalo A1 ≺ A1.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 17/38

Page 54: Acyklické digrafy

Relacia precedencie.

Poznamka

Relacia precedencie ≺ je tranzitıvna, t. j. platı:Ak A ≺ B, B ≺ C, potom aj A ≺ C.

Ak elementarna cinnost’ B musı cakat’ na skoncenie cinnosti A a cinnost’

C musı cakat’ na skoncenie cinnosti B, tym skor musı cinnost’ C cakat’ naukoncenie cinnosti A.

Relacia precedencie ≺ je antireflexıvna, t. j.:Pre ziadne A ∈ E neplatı A ≺ A.

V opacnom prıpade by zaciatok cinnosti A musel cakat’ na jej vlastnykoniec, co je technologicky nezmysel.Dosledok: Z toho d’alej vyplyva, ze neexistuje postupnost’ cinnostıA1,A2, . . . ,An taka, ze

A1 ≺ A2 ≺ · · · ≺ An ≺ A1,

lebo potom by z tranzitivity vyplyvalo A1 ≺ A1.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 17/38

Page 55: Acyklické digrafy

Bezprostredna precedencia. Uloha casoveho planovania.

Definıcia

Hovorıme, zecinnost’ A bezprostredne predchadza cinnosti B a pıseme A ≺≺ B,ak A ≺ B a neexistuje cinnost’ C taka, ze A ≺ C a sucasne C ≺ B.

Ak A ≺≺ B budeme tiez hovorit’ zecinnost’ A je bezprostredny predchodca cinnosti B,alebocinnost’ B je bezprostredny naslednık cinnosti A.

Definıcia

Uloha casoveho planovania U je dana mnozinou elementarnych cinnostıE , precedencnou relaciou ≺ na mnozine E a realnou funkciou p : E → R

prirad’ujucou kazdej cinnosti A ∈ E jej trvanie p(A) (p – processing time).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 18/38

Page 56: Acyklické digrafy

Bezprostredna precedencia. Uloha casoveho planovania.

Definıcia

Hovorıme, zecinnost’ A bezprostredne predchadza cinnosti B a pıseme A ≺≺ B,ak A ≺ B a neexistuje cinnost’ C taka, ze A ≺ C a sucasne C ≺ B.

Ak A ≺≺ B budeme tiez hovorit’ zecinnost’ A je bezprostredny predchodca cinnosti B,alebocinnost’ B je bezprostredny naslednık cinnosti A.

Definıcia

Uloha casoveho planovania U je dana mnozinou elementarnych cinnostıE , precedencnou relaciou ≺ na mnozine E a realnou funkciou p : E → R

prirad’ujucou kazdej cinnosti A ∈ E jej trvanie p(A) (p – processing time).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 18/38

Page 57: Acyklické digrafy

Digraf precedencie

DefinıciaDigraf precedencie ≺ alebo precedencny digraf pre prıslusnu ulohu Ucasoveho planovania je vrcholovo ohodnoteny digraf

−→G≺ = (V ,H, p),

ktoreho mnozinou vrcholov je mnozina vsetkych elementarnych cinnostı,

ohodnotenie p(v) > 0 vrchola v ∈ V je cas spracovania prıslusnej elementarnej

cinnosti a mnozinou orientovanych hran je

H≺ = {(A,B)| A,B ∈ V , A ≺ B}.

DefinıciaDigraf bezprostrednej precedencie ≺≺ pre prıslusnu ulohu U casoveho

planovania je vrcholovo ohodnoteny digraf

−→G≺≺ = (V ,H≺≺, p),

ktoreho mnozinou vrcholov je mnozina vsetkych elementarnych cinnostı,

ohodnotenie p(v) > 0 vrchola v ∈ V je cas spracovania prıslusnej elementarnej

cinnosti a mnozinou orientovanych hran je

H≺≺ = {(A,B)| A,B ∈ V , A ≺≺ B}.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 19/38

Page 58: Acyklické digrafy

Digraf precedencie

DefinıciaDigraf precedencie ≺ alebo precedencny digraf pre prıslusnu ulohu Ucasoveho planovania je vrcholovo ohodnoteny digraf

−→G≺ = (V ,H, p),

ktoreho mnozinou vrcholov je mnozina vsetkych elementarnych cinnostı,

ohodnotenie p(v) > 0 vrchola v ∈ V je cas spracovania prıslusnej elementarnej

cinnosti a mnozinou orientovanych hran je

H≺ = {(A,B)| A,B ∈ V , A ≺ B}.

DefinıciaDigraf bezprostrednej precedencie ≺≺ pre prıslusnu ulohu U casoveho

planovania je vrcholovo ohodnoteny digraf

−→G≺≺ = (V ,H≺≺, p),

ktoreho mnozinou vrcholov je mnozina vsetkych elementarnych cinnostı,

ohodnotenie p(v) > 0 vrchola v ∈ V je cas spracovania prıslusnej elementarnej

cinnosti a mnozinou orientovanych hran je

H≺≺ = {(A,B)| A,B ∈ V , A ≺≺ B}.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 19/38

Page 59: Acyklické digrafy

Technologicka tabul’ka projektu

Technologicka tabul’ka projektu

Cinnost’ Cıslo Trvanie cinnosti Nasledne cinnosti

Vykopy 1 4 3Inzinierske siete 2 3 8 9Bednenie zakladov 3 2 4Betonovanie zakladov 4 3 5 6Obvodove mury 5 6 7 8 9 10 12Priecky 6 8 8 9 11Strecha 7 6 13Elektricke instalacie 8 2 11 13Vodovodne instalacie 9 3 11 13Vonkajsie omietky 10 2 12Vnutorne omietky 11 3 13Okna, dvere 12 1 13Kolaudacia 13 1 -

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 20/38

Page 60: Acyklické digrafy

Digraf precedencie k technologickej tabul’ke

1 3 4

5

6

10

7

8

2

4

3

2 32

2

9

113

11

121

3

3

6 6

8

Cinnost’ Cıslo Trvanie cinnosti Nasledne cinnosti

Vykopy 1 4 3Inzinierske siete 2 3 8 9Bednenie zakladov 3 2 4Betonovanie zakladov 4 3 5 6Obvodove mury 5 6 7 8 9 10 12Priecky 6 8 8 9 11Strecha 7 6 13Elektricke instalacie 8 2 11 13Vodovodne instalacie 9 3 11 13Vonkajsie omietky 10 2 12Vnutorne omietky 11 3 13Okna, dvere 12 1 13Kolaudacia 13 1 -

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 21/38

Page 61: Acyklické digrafy

Rozvrh

Vytvorit’ rozvrh pre danu ulohu U casoveho planovania znamena kazdejelementarnej cinnosti A priradit’ casovy interval 〈bA, cA), bA < cAv ktorom sa bude cinnost’ A vykonavat’.

bA – zaciatok vykonavania cinnosti A (b – beginning time)

cA – koniec vykonavania cinnosti A (c – completion time)

Prıpustny rozvrh ulohy U je taky rozvrh pre ulohu U , kde pre l’ubovol’neelementarne cinnosti A, B platı:

1. cA − bA = p(A)

2. ak A ≺ B , potom bA < cA ≤ bB < cB

Poznamka

Vsimnime si, ze na zaklade vlastnosti 1. prıpustneho rozvrhu stacı prekazdu elementarnu cinnost’ A urcit’ jej zaciatok bA, cas ukoncenia savypocıta ako cA = bA + p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 22/38

Page 62: Acyklické digrafy

Rozvrh

Vytvorit’ rozvrh pre danu ulohu U casoveho planovania znamena kazdejelementarnej cinnosti A priradit’ casovy interval 〈bA, cA), bA < cAv ktorom sa bude cinnost’ A vykonavat’.

bA – zaciatok vykonavania cinnosti A (b – beginning time)

cA – koniec vykonavania cinnosti A (c – completion time)

Prıpustny rozvrh ulohy U je taky rozvrh pre ulohu U , kde pre l’ubovol’neelementarne cinnosti A, B platı:

1. cA − bA = p(A)

2. ak A ≺ B , potom bA < cA ≤ bB < cB

Poznamka

Vsimnime si, ze na zaklade vlastnosti 1. prıpustneho rozvrhu stacı prekazdu elementarnu cinnost’ A urcit’ jej zaciatok bA, cas ukoncenia savypocıta ako cA = bA + p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 22/38

Page 63: Acyklické digrafy

Trvanie projektu

Prıpustnych rozvrhov pre dany problem casoveho planovania je vel’a,z nich by sme chceli vybrat’ optimalny z nejakeho hl’adiska.

Vel’mi casto sa ako kriterium optimality berie Cmax cas ukonceniaposlednej cinnosti, teda

Cmax = max{cA | A ∈ E},

pricom sa predpoklada, ze projekt zacına v case 0.

Velicinu Cmax budeme nazyvat’ trvanie rozvrhu (anglickymakespan.)

Zakladnou otazkou casoveho planovania je pre danu ulohu U urcit’

prıpustny rozvrh taky, aby prıslusne trvanie rozvrhu Cmax bolominimalne.

Oznacme T minimum zo vsetkym moznych trvanı prıpustnychrozvrhov. Velicinu T budeme nazyvat’ trvanie projektu.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 23/38

Page 64: Acyklické digrafy

Najskor mozny zaciatok, najneskor nutny koniec, casova rezerva

Zaciatok vykonavania projektu stanovıme do casu 0.

Najskor mozny zaciatok z(A) elementarnej cinnosti A je najmensı(t. j. prvy) casovy okamih merany od zaciatku vykonavania projektu,kedy mozno zacat’ cinnost’ pri dodrzanı precedencnej relacie ≺.

Ak uz mame najskor mozny zaciatok z(A) pre kazdu elementarnucinnost’ A, trvanie projektu T urcıme ako

T = max{z(A) + p(A) | A ∈ E}

Ak uz pozname hodnotu trvania projektu T , chceme pre kazduelementarnu cinnost’ A poznat’ najneskor nutny koniec k(A)cinnosti A definovany ako najvacsı (t. j. posledny) casovy okamihmerany od od zaciatku vykonavania projektu, po ktory sa ukonceniecinnosti A moze oneskorit’ bez predlzenia trvania projektu T .

Casova rezerva R(A) cinnosti A je

R(A) = k(A)− z(A)− p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 24/38

Page 65: Acyklické digrafy

Najskor mozny zaciatok, najneskor nutny koniec, casova rezerva

Zaciatok vykonavania projektu stanovıme do casu 0.

Najskor mozny zaciatok z(A) elementarnej cinnosti A je najmensı(t. j. prvy) casovy okamih merany od zaciatku vykonavania projektu,kedy mozno zacat’ cinnost’ pri dodrzanı precedencnej relacie ≺.

Ak uz mame najskor mozny zaciatok z(A) pre kazdu elementarnucinnost’ A, trvanie projektu T urcıme ako

T = max{z(A) + p(A) | A ∈ E}

Ak uz pozname hodnotu trvania projektu T , chceme pre kazduelementarnu cinnost’ A poznat’ najneskor nutny koniec k(A)cinnosti A definovany ako najvacsı (t. j. posledny) casovy okamihmerany od od zaciatku vykonavania projektu, po ktory sa ukonceniecinnosti A moze oneskorit’ bez predlzenia trvania projektu T .

Casova rezerva R(A) cinnosti A je

R(A) = k(A)− z(A)− p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 24/38

Page 66: Acyklické digrafy

Najskor mozny zaciatok, najneskor nutny koniec, casova rezerva

Zaciatok vykonavania projektu stanovıme do casu 0.

Najskor mozny zaciatok z(A) elementarnej cinnosti A je najmensı(t. j. prvy) casovy okamih merany od zaciatku vykonavania projektu,kedy mozno zacat’ cinnost’ pri dodrzanı precedencnej relacie ≺.

Ak uz mame najskor mozny zaciatok z(A) pre kazdu elementarnucinnost’ A, trvanie projektu T urcıme ako

T = max{z(A) + p(A) | A ∈ E}

Ak uz pozname hodnotu trvania projektu T , chceme pre kazduelementarnu cinnost’ A poznat’ najneskor nutny koniec k(A)cinnosti A definovany ako najvacsı (t. j. posledny) casovy okamihmerany od od zaciatku vykonavania projektu, po ktory sa ukonceniecinnosti A moze oneskorit’ bez predlzenia trvania projektu T .

Casova rezerva R(A) cinnosti A je

R(A) = k(A)− z(A)− p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 24/38

Page 67: Acyklické digrafy

Najskor mozny zaciatok, najneskor nutny koniec, casova rezerva

Zaciatok vykonavania projektu stanovıme do casu 0.

Najskor mozny zaciatok z(A) elementarnej cinnosti A je najmensı(t. j. prvy) casovy okamih merany od zaciatku vykonavania projektu,kedy mozno zacat’ cinnost’ pri dodrzanı precedencnej relacie ≺.

Ak uz mame najskor mozny zaciatok z(A) pre kazdu elementarnucinnost’ A, trvanie projektu T urcıme ako

T = max{z(A) + p(A) | A ∈ E}

Ak uz pozname hodnotu trvania projektu T , chceme pre kazduelementarnu cinnost’ A poznat’ najneskor nutny koniec k(A)cinnosti A definovany ako najvacsı (t. j. posledny) casovy okamihmerany od od zaciatku vykonavania projektu, po ktory sa ukonceniecinnosti A moze oneskorit’ bez predlzenia trvania projektu T .

Casova rezerva R(A) cinnosti A je

R(A) = k(A)− z(A)− p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 24/38

Page 68: Acyklické digrafy

Najskor mozny zaciatok, najneskor nutny koniec, casova rezerva

Zaciatok vykonavania projektu stanovıme do casu 0.

Najskor mozny zaciatok z(A) elementarnej cinnosti A je najmensı(t. j. prvy) casovy okamih merany od zaciatku vykonavania projektu,kedy mozno zacat’ cinnost’ pri dodrzanı precedencnej relacie ≺.

Ak uz mame najskor mozny zaciatok z(A) pre kazdu elementarnucinnost’ A, trvanie projektu T urcıme ako

T = max{z(A) + p(A) | A ∈ E}

Ak uz pozname hodnotu trvania projektu T , chceme pre kazduelementarnu cinnost’ A poznat’ najneskor nutny koniec k(A)cinnosti A definovany ako najvacsı (t. j. posledny) casovy okamihmerany od od zaciatku vykonavania projektu, po ktory sa ukonceniecinnosti A moze oneskorit’ bez predlzenia trvania projektu T .

Casova rezerva R(A) cinnosti A je

R(A) = k(A)− z(A)− p(A).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 24/38

Page 69: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Kriticka cinnost’ je taka cinnost’ A, pre ktoru je R(A) = 0.

Kriticka cesta v digrafe−→G≺≺ je taka orientovana cesta, ktora ma

maximalny sucet ohodnotenı vrcholov.

Poznamka

Da sa ukazat’, ze

Kriticke cesty v−→G≺≺ obsahuju len kriticke cinnosti.

Sucet ohodnotenı vrcholov kazdej kritickej cesty v−→G≺≺ sa rovna

trvaniu projektu T .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 25/38

Page 70: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Kriticka cinnost’ je taka cinnost’ A, pre ktoru je R(A) = 0.

Kriticka cesta v digrafe−→G≺≺ je taka orientovana cesta, ktora ma

maximalny sucet ohodnotenı vrcholov.

Poznamka

Da sa ukazat’, ze

Kriticke cesty v−→G≺≺ obsahuju len kriticke cinnosti.

Sucet ohodnotenı vrcholov kazdej kritickej cesty v−→G≺≺ sa rovna

trvaniu projektu T .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 25/38

Page 71: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 72: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 73: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 4

6

5

10

7

8

9

12

13

11

2

3

1

2

3

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 74: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 75: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 76: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 77: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 78: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 79: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

9

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 80: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

9

10

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 81: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

9

10

11

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 82: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

9

10

11

12

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 83: Acyklické digrafy

Urcovanie najskor moznych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

11

2

1

2

3 4 5

6

7

8

9

10

11

12

13

T − trvanie projektu

0 5 10 15 20 25

T=24

Hrany vyznacene cervenou farbou nie su hranami bezprostrednej

precedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 26/38

Page 84: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 85: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 86: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 87: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 88: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 89: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 90: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 91: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 92: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

5

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 93: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

4 5

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 94: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

3 4 5

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 95: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

2

3 4 5

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 96: Acyklické digrafy

Urcovanie najneskor nutnych casovych poloh element. cinnostı

1

2

3 4 5

6

7

8

9

10

11

12

1 3 4

6

5

10

7

8

9

12

13

2

11

13

T=24

T − trvanie projektu

0 5 10 15 20 25

Hrany vyznacene cervenou farbou nie su hranami bezprostrednejprecedencie. Neovplyvnuju vysledok, mierne predlzuju vypocet.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 27/38

Page 97: Acyklické digrafy

Porovnanie

1

2

3 4 5

6

7

8

9

10

11

12

13

0 5 10 15 20

1

2

3 4 5

6

7

8

9

10

11

12

13

0 5 10 15 20

Cierne – najskor mozne casove polohy cinnostıZelene – najneskor nutne casove polohy cinnostı

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 28/38

Page 98: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najskor moznych zaciatkov z(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺.

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky z(v), x(v).Pre kazde v ∈ V inicializacne poloz x(v) := 0, z(v) := 0.

Krok 3. Postupne pre k = 1, 2, . . . , n − 1 urob:

Pre vsetky vrcholy w ∈ V+(vk) urob:Ak z(w) < z(vk) + p(vk),potom z(w) := z(vk) + p(vk) a x(w) := vk .

Krok 4. Vypocıtaj trvanie projektu

T := max{z(w) + p(w) | w ∈ V , odeg(w) = 0}

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 29/38

Page 99: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najskor moznych zaciatkov z(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺.

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky z(v), x(v).Pre kazde v ∈ V inicializacne poloz x(v) := 0, z(v) := 0.

Krok 3. Postupne pre k = 1, 2, . . . , n − 1 urob:

Pre vsetky vrcholy w ∈ V+(vk) urob:Ak z(w) < z(vk) + p(vk),potom z(w) := z(vk) + p(vk) a x(w) := vk .

Krok 4. Vypocıtaj trvanie projektu

T := max{z(w) + p(w) | w ∈ V , odeg(w) = 0}

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 29/38

Page 100: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najskor moznych zaciatkov z(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺.

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky z(v), x(v).Pre kazde v ∈ V inicializacne poloz x(v) := 0, z(v) := 0.

Krok 3. Postupne pre k = 1, 2, . . . , n − 1 urob:

Pre vsetky vrcholy w ∈ V+(vk) urob:Ak z(w) < z(vk) + p(vk),potom z(w) := z(vk) + p(vk) a x(w) := vk .

Krok 4. Vypocıtaj trvanie projektu

T := max{z(w) + p(w) | w ∈ V , odeg(w) = 0}

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 29/38

Page 101: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najskor moznych zaciatkov z(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺.

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky z(v), x(v).Pre kazde v ∈ V inicializacne poloz x(v) := 0, z(v) := 0.

Krok 3. Postupne pre k = 1, 2, . . . , n − 1 urob:

Pre vsetky vrcholy w ∈ V+(vk) urob:Ak z(w) < z(vk) + p(vk),potom z(w) := z(vk) + p(vk) a x(w) := vk .

Krok 4. Vypocıtaj trvanie projektu

T := max{z(w) + p(w) | w ∈ V , odeg(w) = 0}

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 29/38

Page 102: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najneskor nutnych koncov k(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺ .

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky k(v), y(v).Nech T je trvanie projektu.Pre kazde v ∈ V inicializacne poloz k(v) := T, y(v) := 0 .

Krok 3. Postupne pre i = n − 1, n − 2, . . . , 1 urob:

Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak k(vi ) > k(w)− p(w),potom k(vi ) := k(w)− p(w) a y(vi ) := w .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 30/38

Page 103: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najneskor nutnych koncov k(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺ .

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky k(v), y(v).Nech T je trvanie projektu.Pre kazde v ∈ V inicializacne poloz k(v) := T, y(v) := 0 .

Krok 3. Postupne pre i = n − 1, n − 2, . . . , 1 urob:

Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak k(vi ) > k(w)− p(w),potom k(vi ) := k(w)− p(w) a y(vi ) := w .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 30/38

Page 104: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

Algoritmus

Algoritmus II. na urcenie najneskor nutnych koncov k(v)

elementarnych cinnostı v digrafe−→G≺≺ = (V ,H, p).

Krok 1. Vytvor monotonne ocıslovanie v1, v2, . . . , vn vrcholov

digrafu−→G≺≺ .

Krok 2. Kazdemu vrcholu v ∈ V prirad’ dve znacky k(v), y(v).Nech T je trvanie projektu.Pre kazde v ∈ V inicializacne poloz k(v) := T, y(v) := 0 .

Krok 3. Postupne pre i = n − 1, n − 2, . . . , 1 urob:

Pre vsetky vrcholy w ∈ V+(vi ) urob:Ak k(vi ) > k(w)− p(w),potom k(vi ) := k(w)− p(w) a y(vi ) := w .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 30/38

Page 105: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 106: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 107: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 108: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 109: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 110: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 111: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 112: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 113: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 114: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 115: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 116: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 117: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 118: Acyklické digrafy

Vypocet najskor moznych zaciatkov

Vystupne hviezdy Tabul’ka pre vypocet najskor moznych zaciatkov cinnostı

v p(v) V+(v) v p(v) z(v) 1 2 3 4 5 6 7 8 9 10 11 12 13z(i)

- - 0 0 0 0 0 0 0 0 0 0 0 0 01 4 3 1 4 0 42 3 8 9 2 3 0 3 33 2 4 3 2 4 64 3 5 6 4 3 6 9 95 6 7 8 9 10 12 5 6 9 15 15 15 15 156 8 8 9 11 6 8 9 17 17 177 6 13 7 6 15 218 2 11 13 8 2 17 199 3 11 13 9 3 17 2010 2 12 10 2 15 1711 3 13 11 3 20 2312 1 13 12 1 1713 1 - 13 1 23

T = max{z(v) + p(v) | v ∈ V } = 24.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 31/38

Page 119: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 120: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 121: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 122: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 123: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 124: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 125: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 126: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 127: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 128: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 129: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 130: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 131: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 132: Acyklické digrafy

Vypocet najneskor nutnych koncov

Vystupne hviezdy Tabul’ka pre vypocet najneskor nutnych koncov cinnostı

v V+(v) v p(v) k(v)− p(v) k(v) 1 2 3 4 5 6 7 8 9 10 11 12 13k(v) = min{k(i)− p(i) | i ∈ V+(v)}

- - - 24 24 24 24 24 24 24 24 24 24 24 24 2413 - 13 1 23 24 2412 13 12 1 22 23 2311 13 11 3 20 23 2310 12 10 2 20 22 229 11 13 9 3 17 20 208 11 13 8 2 18 20 207 13 7 6 17 23 236 8 9 11 6 8 9 17 175 7 8 9 10 12 5 6 11 17 174 5 6 4 3 6 9 93 4 3 2 4 6 62 8 9 2 3 14 17 171 3 1 4 0 4 4

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 32/38

Page 133: Acyklické digrafy

Kriticke cinnosti, kriticka cesta

v p(v) z(v) k(v) R(v) = k(v)− z(v)− p(v)1 4 0 4 02 3 0 17 143 2 4 6 04 3 6 9 05 6 9 17 26 8 9 17 07 6 15 23 28 2 17 20 19 3 17 20 010 2 15 22 311 3 20 23 012 1 17 23 513 1 23 24 0

5

10

7

8

12

2

1 3 4

6

911

13

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 33/38

Page 134: Acyklické digrafy

Klasicka interpretacia metody CPM

Majme ulohu casoveho planovania U danu mnozinou elementarnychcinnostı E , precedencnou relaciou ≺ na mnozine E a realnou funkciouc : E → R prirad’ujucou kazdej cinnosti A ∈ E jej trvanie p(A).

Siet’ovy digraf je neorientovane suvisly acyklicky hranovo ohodnotenydigraf G = (V ,H, p), obsahujuci prave jeden vrchol z , z ktoreho suvsetky ostatne vrcholy dosiahnutel’ne – zaciatok vykonavania projektua prave jeden vrchol k , ktory je dosiahnutel’ny zo vsetkych ostatnychvrcholov – koniec vykonavania projektu.

Hrany siet’oveho digrafu predstavuju elementarne cinnosti – kazdej uloheA ∈ E pridelena prave jedna hrana ohodnotena dlzkou spracovania p(A)prıslusnej cinnosti A.

Vrcholy – predstavuju casove zaciatky a konce spracovania elementarnychcinnostı.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 34/38

Page 135: Acyklické digrafy

Klasicka interpretacia metody CPM

Predpokladame, ze V = {1, 2, . . . n} a ze z = 1, k = n.

20

40

0 0

1

2

3

10

50

6

4

30

80

7

5

40

1040

60

170

160160

4040

8080

20 14030

170

30i

Ti T ′

i

Ti – Najskor mozny zaciatok cinnostıvychadzajucich z vrchola i

T ′

i – Najneskor nutny koniec cinnostıvchadzajucich do vrchola i

Diagram siet’oveho digrafu, aky najdete v mnohych ucebniciach.

Ako ho zostrojit’ z technologickej tabul’ky bez fiktıvnych cinnostıs nulovym trvanım, vacsinou autori taktne zamlcia.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 35/38

Page 136: Acyklické digrafy

Trvanie projektu, kriticke cinnosti, kriticka cesta, casova rezerva

Oznacme dmax(x , y) dlzku najdlhsej orientovanej x–y cesty.

Pre kazdy vrchol i siet’oveho digrafu vypocıtame Ti , t. j. najskor moznyzaciatok cinnostı vychadzajucich z vrchola i , ako

Ti = dmax(1, i)

a T ′

i najneskor nutny koniec cinnostı vchadzajucich do vrchola i ako

T ′

i = Tn − dmax(i , n)

Hodnota T trvania projektu je

T = Tn.

Kazdu orientovanu cestu dlzky trvania projektu Tn v siet’ovom digrafenazveme kritickou cestou (kritickych ciest moze existovat’ aj viac).

Cinnosti leziace na niektorej kritickej ceste sa nazyvaju kriticke cinnosti.

Casova rezerva Ri vo vrchole i je Ri = T ′

i − Ti .

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 36/38

Page 137: Acyklické digrafy

Konstrukcia siet’oveho digrafu

106 f

420

d

30

1

50

10

3

2

5

70

40

7

9

80

90

0

0

0

3

2

130

50

10c

b

a

0

0

70e

00

080

9

890

h

i

0

0

g7

5

8

40

4

6

10

20

0

0

0

0

0z k

Konstrukcia siet’oveho digrafu−→G S (dole) z precedencneho digrafu

−→G≺≺ (hore).

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 37/38

Page 138: Acyklické digrafy

Konstrukcia siet’oveho digrafu

1 Zostroj graf bezprostrednej precedencie−→G≺≺.

2 Hrany digrafu−→G≺≺ prehlas za fiktıvne cinnosti s trvanım 0.

3 Pridaj dva vrcholy z a k .

4 Pridaj orient. hrany (z , v) pre vsetky v take, ze ideg(v) = 0. Tietohrany budu povazovane za fiktıvne cinnosti s trvanım 0.

5 Pridaj orient. hrany (v), k pre vsetky v take, ze odeg(v) = 0.Tietohrany budu povazovane za fiktıvne cinnosti s trvanım 0.

6 Rozdel’ kazdy vrchol predstavujuci cinnost’ na vstupnu a vystupnucast’ a pridaj orientovanu hranu veducu zo vstupnej do vystupnejcasti. Ohodnot’ tuto hranu trvanım prıslusnej cinnosti.

Stanislav Paluch, Fakulta riadenia a informatiky, Zilinska univerzita Acyklicke digrafy 38/38


Recommended