Professional Documents
Culture Documents
Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
OBLICZENIA RÓWNOLEGŁE
Temat 4a:
e-mail: Zbigniew.Tarapata@wat.edu.pl
http:// tarapata.strefa
tarapata.strefa.pl
.pl//p_obliczenia_rownolegle/
p_obliczenia_rownolegle/
1
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Definicja grafu
(5.1) G=〈W,U〉
gdzie:
W – zbiór wierzchołków grafu,
U – zbiór łuków grafu, U ⊂ W × W ,
u ( x, y ) ∈ U ⇔ x ∈ W ∧ y ∈ W ∧ istnieje przejście z x do y.
Przykład grafu
1
5
W = {1,2,3,4,5}
U = {(1,2), (2,5), (3,2), (3,4), (4,5)}
2
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Graf spójny to taki graf, w którym między każdą parą
wierzchołków istnieje marszruta (czyli ciąg naprzemienny
wierzchołków i łuków rozpoczynający się w wierzchołku
początkowym (jeden z wierzchołków pary) i kończący się w
wierzchołku końcowym (jako drugi wierzchołek pary), przy czym
zwrot łuków nie gra roli).
Definicja sieci
Przykład sieci
5
2
4
1 8
5
3 5
3
4
W = {1,2,3,4,5}
U = {(1,2), (2,5), (3,2), (3,4), (4,5)}
i dodatkowo funkcję opisaną na każdym łuku, która opisuje np.
długość łuku (czyli długość odcinka drogi łączącego sąsiednie
skrzyżowania (zakręty)).
3
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
DEFINICJA 5.1
Przykład 5.1
Przedstawimy projekt wprowadzenia nowego produktu na rynek.
Przedsięwzięcie takie składa się z czynności dotyczących sfery
projektowania produkcji, jak również działań związanych z badaniem
rynku. Zestaw takich czynności przedstawiono w tabeli poniżej.
Tabela 5.1
Czynności
Nazwa czynności
〈i, j〉
〈1,2〉 a – badanie popytu na rynku
〈1,3〉 b – nabycie surowców na prototypy
〈3,4〉 c – wyprodukowanie prototypów i ocena ich jakości
〈4,5〉 d – nabycie surowców do produkcji
〈4,6〉 e – wybór opakowań
〈4,7〉 f – analiza kosztów produkcji
〈8,9〉 g – proces produkcji wyrobu
〈10,11〉 h – wysyłka do sklepów
〈6,10〉 i – reklama i zbieranie zamówień
〈5,9〉 j – nabycie opakowań
〈9,10〉 k – pakowanie wyrobu gotowego
l – analiza ekonomicznych parametrów decyzji po
〈7,8〉
podjęciu produkcji
4
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
KONSTRUKCJA SIECI CZYNNOŚCI
5
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Przykład 5.2
6
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Powiązania między czynnościami dla rozpatrywanego
przedsięwzięcia przedstawiono w tablicy 5.2.
Tabela 5.2
Czynności bezpośrednio:
Czynności
poprzedzające następujące
A (wybór lokalizacji wystawy) - C, F
B (przygotowanie eksponatów) - E
C (przygotowanie terenu wystawy) A D
D (przygotowanie stoisk) C G
E (dostawa eksponatów) B G
F (przygotowanie obsługi stoisk) A H
G (urządzenie stoisk wystawowych) E, D H
H (otwarcie wystawy) F, G -
4 E 5
B D
1 3 7
A C G
2 H
F
6
Rys.5.3
4. Numerowanie wierzchołków.
Przy numerowaniu wierzchołków sieci (zdarzeń) należy
uwzględnić, że następują one w określonej kolejności oraz to, że
zdarzenie będące początkiem czynności powinno mieć numer
mniejszy niż zdarzenie, które jest końcem tej czynności. Strzałka
wskazująca kolejność wykonywania czynności powinna więc
prowadzić od zdarzenia o numerze mniejszym do zdarzenia o numerze
większym. Uporządkowanie wierzchołków zgodnie z powyższą
zasadą można uzyskać za pomocą algorytmu porządkowania
warstwowego. Sieć czynności rozpatrywanego przedsięwzięcia
przedstawiono na rysunku 5.3.
7
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
ANALIZA SIECI Z FUNKCJĄ CZASU
2
2 3
1 2 4 1 5
2 4
3
Rys.5.4
8
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
W sieci czynności każdej ścieżce pełnej sk przyporządkowany
jest jednoznacznie czas wykonania ścieżki:
(5.2) t (s k ) = ∑t ij
i , j ∈sk
DEFINICJA 5.2
Czasem realizacji projektu określonym przez czas trwania
czynności będziemy nazywali czas t*:
DEFINICJA 5.3
Ścieżką krytyczną w sieci czynności nazywamy ścieżkę pełną,
dla której czas trwania jest najdłuższy.
9
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Wygenerowanie ścieżek pełnych i obliczenie czasu w dużych
sieciach o skomplikowanej strukturze, w tzw. sieciach gęstych, nie
jest sprawą prostą, a poza tym nie umożliwia uzyskania odpowiedzi
na pytanie, jak powinny być uporządkowane w czasie poszczególne
czynności. Zatem niezbędne jest wyznaczenie planu wykonania zadań
w czasie, czemu służy procedura wyznaczania charakterystyk dla
zdarzeń i czynności. Przedstawimy je w kolejności, najpierw dla
zdarzeń, a potem dla czynności.
DEFINICJA 5.4
Najwcześniejszy możliwy termin zaistnienia zdarzenia j-tego
określony jest wzorem:
(5.4) { }
t 0j = max ti0 + tij , i < j,
i
0
gdzie ti oznacza najwcześniejszy możliwy termin wystąpienia i-tego
zdarzenia bezpośrednio poprzedzającego zdarzenie j-te.
Uwaga: t1 = 0 .
0
DEFINICJA 5.5
Najpóźniejszy dopuszczalny termin zaistnienia i-tego
1
zdarzenia, ti , wyznaczony jest następująco:
(5.5) { }
ti1 = min t 1j − tij , i < j ,
j
1
gdzie t j oznacza najpóźniejszy dopuszczalny termin zaistnienia j-tego
zdarzenia, następującego po i-tym zdarzeniu, przy czym t n < t n , lub
0 1
t n1 = t * .
Uwaga
Najwcześniejszy i najpóźniejszy termin zdarzenia końcowego są
sobie równe, gdyż zdarzenie to nie ma następników.
10
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
DEFINICJA 5.6
Luz czasowy Li dowolnego zdarzenia i-tego określamy w
następujący sposób:
(5.6) Li = t i1 − t i0 .
Uwaga
Luz czasowy zdarzenia wskazuje, ile może opóźnić się termin zaistnienia zdarzenia
bez wpływu na termin zakończenia realizacji projektu.
DEFINICJA 5.7
Najwcześniejszy możliwy termin rozpoczęcia czynności 〈i,j〉
wyznacza najwcześniejszy możliwy termin zajścia zdarzenia
początkowego tej czynności.
DEFINICJA 5.8
Najpóźniejszy dopuszczalny termin rozpoczęcia czynności
〈i,j〉 określony jest przez różnicę t j − tij .
1
DEFINICJA 5.9
Najwcześniejszy możliwy termin zakończenia czynności 〈i,j〉
wyrażony jest przez sumę ti + tij .
0
DEFINICJA 5.10
Najpóźniejszy dopuszczalny termin zakończenia czynności
〈i,j〉 określa najpóźniejszy termin zajścia zdarzenia końcowego tej
czynności.
DEFINICJA 5.11
Zapas całkowity Zc czynności 〈i,j〉 określony jest następująco:
11
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
DEFINICJA 5.12
Zapas swobodny Zs czynności 〈i,j〉 określony jest równaniem:
DEFINICJA 5.13
Zapas warunkowy Zw czynności 〈i,j〉:
DEFINICJA 5.14
Zapas niezależny Zn czynności 〈i,j〉 oblicza się według wzoru:
12
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Przykład 5.3
Dla przykładowej sieci przedstawionej na rys.5.4 harmonogramy
dotyczące zdarzeń i czynności zawarto w tabelach 5.3 i 5.4.
Tabela 5.3
Zdarzenia
1 2 3 4 5
I
ti0 0 2 4 8 9
t i1 0 2 4 8 9
Li 0 0 0 0 0
Tabela 5.4
Czynności Czas trwania Zapas czasu
I j tij Zc Zs Zw Zn
1 2 2 0 0 0 0
1 3 2 2 2 2 0
2 3 2 0 0 0 0
2 4 3 3 3 3 3
3 4 4 0 0 0 0
4 5 1 0 0 0 0
13
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
(5.11) S = G ,∅, {l }
gdzie:
l : U→R
l(u) – „koszt” gałęzi u∈U;
U(µ(xp,xk)) – zbiór gałęzi drogi µ(xp,xk) z wierzchołka
xp do xk;
(5.12) F (µ ( x p , x k ) ) = ∑ l (u ) - „koszt” drogi µ(x ,x ) . p k
(
u∈U µ ( x p , x k ) )
lub
(5.13b) F (µ * ( x p , x k ) ) = max F (µ ( x p , x k ) )
µ ( x p , x )∈D ( x p , x k )
k
p
( k
)
gdzie D x , x - zbiór wszystkich dróg prostych w G z xp do xk .
14
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
Warstwowa reprezentacja grafu:
Wk ⊂ W ( k = 0, K ) - k-ta warstwa grafu
1. W 0
= { x ∈ W : Γ −1 ( x ) = ∅} , gdzie Γ −1 ( x ) - zbiór bezpośrednich
poprzedników wierzchołka x;
(x ) ⊂ W 0 ∪ W 1 ∪ K ∪ W k −1
−1
2. x ∈ Wk ( k > 0 ) ⇒ Γ
x ∈Wk (k > 0) ⇒ Γ ( x ) ∩W k −1 ≠ ∅
−1
3.
2 5
1 7
4
3 6
W0 W1 W2 W3 W4 W5
Własności warstwowej reprezentacji digrafu:
Wk – tworzy podgraf pusty, k = 1, K ;
Wk ≠ ∅, k = 1, K ;
Długość najdłuższej drogi prostej w digrafie acyklicznym = K.
15
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
µ * (x p , x k ) = ? w G I = W ,U I , P I
( )
Ω x p - zbiór wierzchołków osiągalnych z xp w GI;
( )
Π x k - zbiór wierzchołków, z których w GI osiągalny jest xk;
( ) ( )
X = Ω x p ∩ Π x k - zbiór wierzchołków, które mogą
wystąpić w µ (x p , x k ); X=∅ ⇒ nie istnieje µ (x p , x k );
G = X , U , P - podgraf generowany przez X⊂W;
W0 , W1 , K , W k - warstwy w G; x p ∈ W 0 ; x k ∈ W K
X idop = Wi ∩ X - zbiór tzw. stanów dopuszczalnych w i-tym
etapie;
U dop (x ) = u ∈ U : ∨ x , u , y ∈ P - zbiór
y ∈ X
tzw. sterowań dopuszczalnych dla stanu x∈X;
Funkcje etapowe:
Fi , K ( x, u ) = l (u ) + Fi ∗+1 ( y (x, u )) , i = 0, K − 1
Fi∗ (x ) = e xtr
u ∈U dop (x )
l (u
)+ F i ∗+ 1 ( y ( x , u ) )
przy czym y ( x, u ) = y ∈ X : x, u , y ( x, u ) ∈ P
( )
u i∗ ( x ) = u ∗ : Fi , K x, u ∗ = Fi ∗ ( x )
K
przy czym x ∈ U X j ;
dop
FK∗ ( x ) = 0; u K∗ ( x ) = ∅ .
j =i
16
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
ALGORYTM
17
Obliczenia równoległe dr inż. Zbigniew Tarapata
Temat nr 4a: Metoda ścieżki krytycznej, drogi ekstremalne w sieciach acyklicznych
PRZYKŁAD
W sieci S wyznaczyć najdłuższą drogę z xp = 1 do xk = 5.
5
S≡ 12
4
3 9 1 1 2 4 6 1 3 2 5
5
1 7
4 4
5 3 4
5 2
1
3 1
12 4 4
1
2 5
4 6
W0 W1 W2 W3 W4
xp = 1, xk = 5, µmax(1,5) = ?
( )
Ω x p = Ω(1) = {1,2,3,4,5,6,7}
→ X = Ω(1) ∩ Π (5) = {1,2,3,4,5,6}
( )
Π x k = Π (5) = {1,2,3,4,5,6}
X 0dop = {1}, X 1dop = {2,4}, X 2dop = {6}, X 3dop = {3}, X 4dop = {5},
U dop (1) = {u1, 2 , u1,3 , u1, 4 },U dop (2 ) = {u 2,6 , u 2,3 },U dop (3) = {u3,5 }
U dop (4 ) = {u4,3 , u 4,5 },U dop (5) = ∅,U dop (6) = {u6,3 , u6,5 }
Wartość poszczególnych funkcji etapowych Fi∗ ( x ) oraz u ( x )
∗
18