40
2.5.4 Analisis Algoritma Floyd-Warshall
Algoritma Floyd-Warshall adalah salah satu varian dari pemrograman dinamis, yaitu suatu metode yang melakukan pemecahan masalah dengan
memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Artinya solusi – solusi tersebut dibentuk dari solusi yang berasal dari
tahap sebelumnya dan ada kemungkinan solusi lebih dari satu. Algoritma Floyd-Warshall membandingkan semua kemungkinan lintasan pada
graf untuk setiap sisi dari semua simpul. Hal tersebut bisa terjadi karena adanya perkiraan pengambilkan keputusan pemilihan jalur terpendek pada setiap tahap
antara dua simpul, hingga perkiraan tersebut diketahui sebagai nilai optimal. Tujuan akhir penggunaan fungsi ini adalah untuk mencari jalur terpendek dari
setiap simpul – simpul yang telah diuji. Maka contoh perhitungan algoritma Floyd-Warshall dengan pemograman dinamis adalah sebagai berikut :
Diketahui bahwa kota asal adalah kota A dan kota tujuan adalah kota F, dimana jarak tiap rute untuk menuju kota F adalah sebagai berikut : A – B = 600 m,
A – C = 250 m, B – F = 800 m, C –D = 100 m, C – E = 700 m, D – F = 350 m, E – F = 150 m seperti pada gambar 2.2.
A B
F D
C E
6 0 0 M 8 0 0 M
3 5 0 M 4 0 0 M
2 5 0 M 1 0 0 M
7 0 0 M 1 5 0 M
Gambar 2.2 Rute jalan dari kota A ke kota F
41
Maka proses perhitungan pemograman dinamis Algoritma Floyd-Warshall adalah sebagai berikut :
Tahap pertama Analisa pemograman dinamis Algoritma Floyd-Warshall.
I. NODE
NODE ASAL TUJUAN
A B
600 meter
D 400
meter C
250 meter
II. NODE
NODE ASAL TUJUAN
B D
C F
800 350
- meter
D -
- 100
meter E
- -
700 meter
III. NODE
NODE ASAL TUJUAN
F E
F -
150 meter
Tahap kedua perhitungan panjang rute jalan yaitu dengan menghubungkan simpul – simpul yang saling keterkaitan dimana perhitungannya dapat kita lihat
sebagai berikut : I.
A – C – E – F = 250 + 700 + 150 = 1100 m II.
A – D – F = 400 + 350 = 750 m. Maka diperoleh rutr terpendek yaitu rute A – D – F.dengan panjang 750 meter.
42
2.5.5 Pengenalan Algoritma Djikstra