You are on page 1of 9

Obliczenia równoległe i rozproszone dr inż.

Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

OBLICZENIA RÓWNOLEGŁE
Temat 5:

Obliczenia równoległe
w zadaniach optymalizacji
Prowadzący: dr inż. Zbigniew TARAPATA
pok.225A, tel.: 83-94-13

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 i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

OBLICZENIA RÓWNOLEGŁE
W ZADANIACH OPTYMALIZACJI

A) ITERACJA JACOBIEGO
x(t + 1) = F ( x(t )), t = 0,1,2,...
gdzie:
x(t ) ∈ E n dla t = 0,1,2,...

F (1)
: En → En
lub skalarnie
( )
xi (t + 1) = Fi xn1 (t ), xn2 (t ),..., xn p (i ) (t ) , i = 1, n, t = 0,1,...

przy czym
nl < nl +1 ≤ n, l = 1, p(i ) − 1
Zależności komunikacyjne między procesorami opisuje się
tzw. grafem zależności G z = W z , A z , gdzie: ( )
W z = {1,2,..., n} - zbiór wierzchołków równy zbiorowi numerów
składowych wektora x ;
A z - zbiór łuków, taki, że:
{
A z = (i, j ) ∈ W z × W z : F j zależy od xi , i ≠ j}
z
Graf G stanowi podstawę do sporządzenia grafu AGS.

(1) Jeżeli F jest odwzorowaniem zwężającym, tzn. ∃q ∈ [0,1],


że ∀x, y ∈ E n F ( x ) − F ( y ) ≤ q ⋅ x − y , to formuła Jacobiego prowadzi
do uzyskania jedynego punktu stałego, x∗ = F x∗ . ( )
2
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

Przykład 5
Niech formuła Jacobiego ma postać:
x1 (t + 1) = F1 ( x1 (t ), x2 (t ), x3 (t ))
x2 (t + 1) = F2 ( x1 (t ), x2 (t ))
x3 (t + 1) = F3 ( x2 (t ), x3 (t ), x4 (t ))
x4 (t + 1) = F4 ( x2 (t ), x4 (t ))
Graf zależności określimy następująco:
W z = {1,2,3,4,}, A z = {(2,1), (3,1), (1,2 ), (2,3), (4,3), (2,4 )}

1,0 2,0 3,0 4,0

4 GZ 1,1 2,1 3,1 4,1


1

2 1,2 2,2 3,2 4,2


AGS
Niech
(i, t ) - oznacza, że na danych z
Dla tak skonstruowanego grafu
iteracji t − 1 wykonana jest
operacja Fi , przy czym (i,0 ) AGS należy zbudować
oznacza wczytanie wielkości harmonogram realizacji obliczeń
xi (0 ).
dla zadanej liczby p procesorów.

Graf AGS przyjmie postać:


W = {(i, t ) : i = 1, n, t = 0,1,...}
A= {((i, t ), ( j, t + 1)) : (i, j ) ∈ Az lub i = j, t = 0,1,2,...}
3
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

B) ITERACJA GAUSSA-SEIDELA
( ( ))
xi (t + 1) = Fi xn1 (t1 ), xn 2 (t 2 ),..., xn p (i ) t p (i ) , i = 1, n t = 0,1,...

gdzie:
nl < nl +1 ≤ n, l = 1, p (i ) − 1

t k ∈ {t , t + 1}, k = 1,p(i )
t k = t gdy nk = i
Przykład 5 c.d.
Zachowując przyjętą w poprzed-
nim przykładzie kolejność
aktualizacji zmiennych formuła Przyjmijmy następującą kolejność
G-S ma postać: aktualizacji:
x1 (t + 1) = F1 ( x1 (t ), x2 (t ), x3 (t )), x1 (t + 1) = F1 ( x1 (t ), x2 (t ), x3 (t )),

x2 (t + 1) = F2 ( x1 (t + 1), x2 (t )), x2 (t + 1) = F2 ( x1 (t + 1), x2 (t )),

x3 (t + 1) = F3 ( x2 (t + 1), x3 (t ), x4 (t )), x4 (t + 1) = F4 ( x2 (t + 1), x4 (t )),

x4 (t + 1) = F4 ( x2 (t + 1), x4 (t )). x3 (t + 1) = F3 ( x2 (t + 1), x3 (t ), x4 (t + 1)).

Graf AGS dla t = 0,1 Graf AGS dla t = 0,1

1,0 2,0 3,0 4,0 1,0 2,0 3,0 4,0

1,1 1,1

2,1 2,1
4,1
3,1 4,1 3,1
D = T∞ = 3 D = T∞ = 4
p∗ = 2 p∗ =1
4
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

Twierdzenie
Zachodzą 2 równoważne warunki:
1o istnieje taka kolejność uaktualniania zmiennych wg formuły G-S,
przy której jedna iteracja G-S wykonuje się w h równoległych
krokach.
2o istnieje pokolorowanie grafu zależności G z , które wykorzystuje h
kolorów, przy czym dla dowolnego cyklu skierowanego w grafie
G z nie wszystkie wierzchołki tego cyklu mają ten sam kolor.

Formalnie pokolorowanie spełniające warunki punktu 2o twierdzenia


zdefiniujemy jak poniżej.
Oznaczenia:
C - zbiór wszystkich różnych cykli skierowanych w grafie G z ;
c - dowolny cykl skierowany w G z ;
W (c ) = {i1(c ), i2 (c ),..., iM (c )}, i1 (c ) = iM (c )
zbiór wierzchołków cyklu skierowanego c , przy czym
∀ il ∈ W z ; (il , il +1 ) ∈ A z ;
1≤ l ≤ M −1

Pokolorowanie K zdefiniujemy następująco:


K : Wz →{1,2,...,h}
przy czym zachodzi:
∀ ∃ K (il (c )) ≠ K (il +1 (c ))
c∈C il (c ),il +1 (c )∈W (c )
1≤l ≤ M −1
5
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

PROCEDURA POSTĘPOWANIA W CELU USTALENIA


OPTYMALNEJ KOLEJNOŚCI AKTUALIZACJI ZMIENNYCH

1) Kolorujemy graf G z , aby spełnić 2o.

2) Wybieramy z G z podgrafy Gr z w oparciu o wierzchołki


pokolorowane kolorem r ;

3) Przyporządkowujemy każdemu wierzchołkowi i podgrafu Gr z ,

r = 1, h wartość li równą długości najdłuższej drogi w Gr z z i ;

4) Porządkujemy wierzchołki grafu G z wg wzrastających numerów


kolorów zachowując dla ustalonego koloru kolejność rosnącą
wynikającą z punktu 3).

Przykład 5 c.d.
1) Kolorujemy graf G z , zgodnie z ustaloną zasadą:

3 W grafie G z występują 3 różne cykle


skierowane:
1
4 a) 1 – 2 – 1
b) 1 – 2 – 3 – 1
2 c) 1 – 2 – 4 – 3 – 1
Stąd np.: r = 1 - 2, 3, 4
r=2 -1

6
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

2) G1z G2z

3
1
Podgrafy
4
2

3) l3 = 0 , l4 = 1 , l2 = 2 l1 = 0
4) Uporządkowanie wierzchołków grafu G z :
li 0 1 2 0
i= 3 - 4 - 2 - 1

r=1 r=2

Wobec tego kolejność Graf AGS (dla t = 0,1)


uaktualniania zmiennych
1,0 2,0 3,0 4,0
jest następująca:
x3 (t + 1) = F3 ( x2 (t ), x3 (t ), x4 (t ))
x4 (t + 1) = F4 ( x2 (t ), x4 (t ))
x2 (t + 1) = F2 ( x1 (t ), x2 (t )) 3,1
4,1
2,1
x1 (t + 1) = F1 ( x1 (t ), x2 (t + 1), x3 (t + 1))
1,1
D = T∞ = 2
p∗ = 2

7
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

Przykład 6
Ustalić optymalną kolejność uaktualniania zmiennych w metodzie
G-S rozwiązywania układu równań liniowych:
x1 = 2 x3 + 3 x1 (t + 1) = F1 ( x1 (t ), x3 (t ))
x2 = 5 x1 + x3 x2 (t + 1) = F2 ( x1 (t + 1), x2 (t ), x3 (t ))
x3 = 2 x2 − 5 x3 (t + 1) = F3 ( x2 (t + 1), x3 (t ))

Graf G z : AGS:

1 2 1,0 2,0 3,0 D=3


p∗ = 1

3 1,1

2,1
3,1

Wyznaczamy optymalną kolejność uaktualniania zmiennych ze


względu na możliwość zrównoleglenia.
Kolorujemy graf G z : AGS:
- 1, 2
1,0 2,0 3,0 D=2
- 3
p∗ = 2
l1 = 1 l2 = 0

1 2 1,1 2,1

3 l3 = 0
3,1

8
Obliczenia równoległe i rozproszone dr inż. Zbigniew Tarapata
Temat nr 5: Obliczenia równoległe w zadaniach optymalizacji

Ustalamy kolejność uaktualniania


zmiennych:
2–1–3
czyli otrzymujemy:
x2 (t + 1) = F2 ( x1 (t ), x2 (t ), x3 (t ))
x1 (t + 1) = F1 ( x1 (t ), x3 (t ))
x3 (t + 1) = F3 ( x2 (t + 1), x3 (t ))

You might also like