Optimalni Putevi U Mreži

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

Algoritam za iznalaženje

najkraćih puteva između svih


parova čvorova
Često je neophodno izračunati
najkraće puteve između svih parova
čvorova u transportnoj mreži.
Ovaj problem moguće je rešiti i uz
pomoć algoritma za iznalaženje najkraćih
puteva između jednog čvora i svih ostalih
transportnih čvorova mreže. Ukoliko u
mreži ima n čvorova, neophodno je n
puta primeniti algoritam Dijkstra-e,
uzimajući svaki put drugi čvor
www.vtsurosevac.com
za početni 1
čvor.
Floyd-ov algoritam
Floyd-a (1962):
Mreža - G = (N, A).
Sve čvorove mreže označimo pozitivnim
celim brojevima 1, 2, ..., n.
Uvedimo u razmatranje tzv. početnu
matricu dužina najkraćih puteva D0 i
početnu matricu čvorova-prethodnika
Q 0.
www.vtsurosevac.com 2
d ijk - dužina najkraćeg puta od čvora i do
čvora j koji je otkriven u k-tom prolazu kroz
algoritam.
k
q ij - čvor prethodnik čvoru j na najkraćem
putu od čvora i koji je takodje otkriven u k-tom
prolazu.
Elementi matrice D0 definisani su na sledeći
način: ako između čvora i i čvora j postoji
grana, dužina najkraćeg puta između ovih
čvorova jednaka je dužini d (i, j) grane (i, j)
koja ih spaja.

www.vtsurosevac.com 3
Napomenimo da ako između čvora i i
čvora j postoji više grana, dužina
najkraćeg puta mora da bude jednaka
dužini najkraće grane, tj.:

d  min d1 (i , j ), d2 (i , j ),..., dm (i , j )


0
ij

gde je m broj grana između čvora i i


čvora j.
www.vtsurosevac.com 4
Jasno je da je:
d 0 = 0 za i = j
ij

U ostalim slučajevima kada izmedju čvora i i


čvora j ne postoji grana, u početku nemamo
informaciju o dužini najkraćeg puta između
ova 2 čvora, te ih tretiramo kao da su
beskonačno udaljeni jedan od drugog.

Na početku smatramo da je za svaki par


čvorova čvor-prethodnik čvoru j na
najkraćem putu koji vodi od čvora i do čvora j,
upravo čvor i.
www.vtsurosevac.com 5
Floyd-ov algoritam
KORAK 1: Neka je k = 1.
KORAK 2: Elemente matrice dužina
najkraćih puteva otkrivenih
završno sa k-tim prolazom
kroz algoritam Dk,
izračunavamo pomoću
relacije:

d  min d
k
ij  k 1
ij ,d k 1
ik d k 1
kj 
www.vtsurosevac.com 6
KORAK 3: Elementi matrice Qk
čvorova-prethodnika
otktivenih završno sa k-tim
prolazom kroz algoritam i
izračunavaju se kao:
qkjk1 , za dijk  dijk 1
qijk   k 1
qij , u ostalim sluèajevima
KORAK 4: Ako je k = n završiti sa
algoritmom. Ako je k < n,
povećati k za 1, tj. staviti da je
k = k+1 i vratiti se na korak 2.
www.vtsurosevac.com 7
Primer
8
1 2
2
3
1

6 5 3 5

4
3

4 5
7
www.vtsurosevac.com 8
Početna matrica D0

1 2 3 4 5
1  0 8 3 5 

2 8 0 2  5 
 
D0  3 1 0 3 4 
4  6   0 7
 
5  5   0 
www.vtsurosevac.com 9
Početna matrica Q0

1 2 3 4 5
1 1 1 1 1

2 2  2 2 2 
 
Q0  3  3 3  3 3
44 4 4  4
 
5 5 5 5 5 
www.vtsurosevac.com 10
Matrica D1

1 2 3 4 5
1  0 8 3 5 

2 8 0 2 13 5 
 
D1  3 1 0 3 4 
4  6 14 9 0 7 
 
5  5   0 
www.vtsurosevac.com 11
Matrica Q1

1 2 3 4 5
1 1 1 1 1

2 2  2 1 2 
 
Q1  3  3 3  3 3
44 1 1  4
 
5 5 5 5 5 
www.vtsurosevac.com 12
Matrica D2

1 2 3 4 5
1 0 8 3 5 13

2 8 0 2 13 5 
D2 3 9 1 0 3 4
 
4 6 14 9 0 7
513 5 7 18 0
www.vtsurosevac.com 13
Matrica Q2

1 2 3 4 5
1 1 1 1 2

2 2  2 1 2 
 
Q2  3  2 3  3 3
44 1 1  4
 
5 2 5 2 2 
www.vtsurosevac.com 14
Matrica D3

1 2 3 4 5
1 0 4 3 5 7

2 8 0 2 5 5
 
D3  3 9 1 0 3 4
4  6 10 9 0 7
 
5 13 5 7 10 0
www.vtsurosevac.com 15
Matrica Q3

1 2 3 4 5
1 3 1 1 3

2 2  2 3 2 
 
Q3  3  2 3  3 3
44 3 1  4
 
5 2 5 2 3 
www.vtsurosevac.com 16
Matrica D4

1 2 3 4 5
1 0 4 3 5 7

2 8 0 2 5 5 
 
D4  3 9 1 0 3 4
4  6 10 9 0 7
 
5 13 5 7 10 0
www.vtsurosevac.com 17
Matrica Q4

1 2 3 4 5
1 3 1 1 3

2 2  2 3 2 
 
Q4  3  2 3  3 3 
44 3 1  4
 
5 2 5 2 3  
www.vtsurosevac.com 18
Matrica D5

1 2 3 4 5
1 0 4 3 5 7

2 8 0 2 5 5
 
D5  3 9 1 0 3 4
4  6 10 9 0 7
 
5 13 5 7 10 0
www.vtsurosevac.com 19
Matrica Q5

1 2 3 4 5
1 3 1 1 3

2 2  2 3 2 
 
Q5  3  2 3  3 3 
44 3 1  4
 
5 2 5 2 3 
www.vtsurosevac.com 20
Literatura:

Dušan Teodorović, Transportne mreže, Saobraćajni fakultet,


Beograd, 2007. (str. 89-94).

www.vtsurosevac.com

You might also like