3. Algoritma Floyd

Download Report

Transcript 3. Algoritma Floyd

Algoritma Floyd
Teori Optimasi
Algortima Floyd
 Untuk mencari jarak terpendek dari kejadian i ke j
dij : ∞
Jika tidak ada sambungan
langsung antara i dan j
Do : matriks jarak dari jaringan
So : matriks urutan
 Step 0 : Bentuk Do dan So
Do
1
2
3
4
5
So
1
2
3
4
5
1
-
3
10
∞
∞
1
-
2
3
4
5
2
3
-
∞
5
∞
2
1
-
3
4
5
3
10
∞
-
6
15
3
1
2
-
4
5
4
∞
5
6
-
4
4
1
2
3
-
5
5
∞
∞
∞
4
-
5
1
2
3
4
-
Ide mengganti : dij yang besar jika diketemukan alternatif
rute.
Cara : bertahap dengan pemilihan baris dan kolom pivot

Step i=1  baris 1 dan kolom 1 merupakan kolom i,j
≠ 1, ganti dij yang besar (ada alternatif rute)
do23 = ∞
d23 = d21 + d13
= 3 + 10 = 13
d123 = 13
d21 : elemen dari kolom 1(klm pivot)
d13 : elemen dari baris 1(brs pivot)
Catatan
Pada tahap ini kita tidak bisa mengganti
do23 dengan d24 & d43
do32 = ∞
do32 = d31 + d21
= 10 + 3 = 13
d132 = 13
Catatan
Pada tahap ini kita tidak bisa mengganti
do25 = ∞ pada tahap ini i = 1 tidak bisa diganti baru
do25 = d21 + d15
Op. d15 = ∞ (tidak ada nilai jarak dari 1 ke 5)
Sama halnya dengan d052 dan d053
matriks menjadi :
D1
1
2
3
4
5
S1
1
2
3
4
5
1
-
3
10
∞
∞
1
-
2
3
4
5
2
3
-
13
5
∞
2
1
-
1
4
5
3
10
13
-
6
15
3
1
1
-
4
5
4
∞
5
6
-
4
4
1
2
3
-
5
5
∞
∞
∞
4
-
5
1
2
3
4
-

Step i=2  baris 2 dan kolom 2 (pivot)
d214 = ∞  d214 = d112 + d124 = 3+5 = 8 d214 = 8
d241 = ∞  d241 = d142 + d121 = 5+3 = 8 d241 = 8
Matrik menjadi :
D2
1
2
3
4
5
S2
1
2
3
4
5
1
-
3
10
8
∞
1
-
2
3
2
5
2
3
-
13
5
∞
2
1
-
1
4
5
3
10
13
-
6
15
3
1
1
-
4
5
4
8
5
∞
-
4
4
2
2
3
-
5
5
∞
∞
∞
4
-
5
1
2
3
4
-

Step i=3  baris 3 dan kolom 3 (pivot)
d315 = d213 + d235 = 10+15 = 25
d325 = d223 + d235 = 13+15 = 28
Matrik menjadi :
D3
1
2
3
4
5
S3
1
2
3
4
5
1
-
3
10
8
25
1
-
2
3
2
3
2
3
-
13
5
28
2
1
-
1
4
5
3
10
13
-
6
15
3
1
1
-
4
5
4
8
5
6
-
4
4
2
2
3
-
5
5
∞
∞
∞
4
-
5
1
2
3
4
-

Step i=4  baris 4 dan kolom 4 (pivot)
d323 = 13  d423 = d324 + d343 = 5+6 = 11
d332 = 13  d432 = d334 + d342 = 6+5 = 11
d325 = 28  d425 = d324 + d345 = 5+4 = 9
d351 = ∞  d451 = d354 + d341 = 6+8 = 12
d352 = ∞  d452 = d354 + d342 = 4+5 = 9
d353 = ∞  d453 = d354 + d343 = 4+6 = 10
d315 = 28  d415 = d314 + d345 = 8+4 = 12
d335 = 13  d435 = d334 + d345 = 6+4 = 10
Matrik menjadi :
D4
1
2
3
4
5
S4
1
2
3
4
5
1
-
3
10
8
12
1
-
2
3
2
4
2
3
-
11
5
9
2
1
-
4
4
4
3
10
11
-
6
10
3
1
4
-
4
4
4
8
5
6
-
4
4
2
2
3
-
5
5
12
9
10
4
-
5
4
4
4
4
-

Step i=5  baris 5 dan kolom 5 (pivot)
Karena tidak ada d3ij yang diperkecil, maka
dari tabel D4 di dapat jarak minimal
10 : d15 = 12  jarak minimal dari 1 ke 5
dari tabel S4 : 1 ke 5  145
1 ke 4  124
Rute optimum 1245
jarak dari 2 ke 5 adalah d425 = 9
rute : 245