Anda di halaman 1dari 10

PERANCANGAN & ANALISIS ALGORITMA

ALGORITMA FLOYD-WARSHALL
DOSEN PENGAJAR : Dessy Tri Anggraeni, S.Kom., M.MSI

Kelompok 8 :

Hafesh Arsy (52418996)


Maulana Azis Saputra (54418027)
Niken Apriliana (55418306)

Kelas : 3IA23

UNIVERSITAS GUNADARMA
TEKNIK INFORMATIKA
2020
DAFTAR ISI

DAFTAR ISI ................................................................................................. ii


BAB I PEMBAHASAN ................................................................................ 1
A. Pengertian Algoritma Floyd-Warshall .............................................................................. 1
B. Cara kerja dan Karakteristik Algoritma Floyd-Warshall .................................................. 2
C. Tahapan Algoritma Floyd-Warshall.................................................................................. 2
D. Studi Kasus........................................................................................................................ 3
E. Kelebihan Algoritma Floyd-Warshall ............................................................................... 6
BAB II PENUTUP ........................................................................................ 7
A. Kesimpulan ....................................................................................................................... 7
DAFTAR PUSTAKA ................................................................................... 8

ii
BAB I
PEMBAHASAN

A. Pengertian Algoritma Floyd-Warshall


Algoritma Floyd-Warshall adalah matriks hubung graf berarah berlabel dan
keluarannya adalah path terpendek dari semua titik ke semau titik. Dalam usaha untuk
mencari path terpendek, Algoritma Floyd-Warshall memulai iterasi dari titik awalnya
kemudian memperpanjang path dengan mengevaluasi titik demi titik hingga mencapai
tujuan dengan jumlah bobot yang seminimum mungkin.
Algoritma Floyd-Warshall merupakan salah satu varian dari pemrograman dinamis,
yaitu suatu metode yang melakukan pemecahan dengan memandang solusi yang akan
diperoleh sebagai suatu keputusan yang saling terkait. Algoritma Floyd-Warshall
merupakan salah satu cabang ilmu matematika yang salah satu fungsinya adalah untuk
menyelesaikan masalah lintasan terpendek.
Algoritma Floyd-Warshall ini diterapkan pada sebuah aplikasi pencari rute jalan yang
terdekat dari suatu daerah ke daerah lainnya dengan metode ini hasil yang didapat bisa
lebih optimal namun memerlukan resource yang cukup besar jika dipakai untuk mencari
komplek.
Dalam algoritma Floyd-Warshall terdapat fungsi (𝐺 = 𝑉, 𝐸) dengan G = graf yang
merupakan kumpulan simpul (vertex) yang dihubungkan satu sama lain melalui sisi/busur
(edges). Suatu Graf G terdiri dari dua himpunan yaitu himpunan V dan himpunan E.
 Vertex (simpul) :V = himpunan simpul yang terbatas dan tidak kosong
 Edge (sisi/busur) :E = himpunan busur yang menghubungkan sepasang simpul
 Notasi graf : G(V,E) artinya graf G memiliki V simpul dan E busur.
Pada awalnya algoritma Floyd-Warshall menggunakan matriks Boolean untuk
mencari ada tidaknya jalan dari titik satu ke titik yang lain. Kemudian dikembangkan
untuk mengurangi waktu komputasi sehingga hanya menggunakan satu perkalian
matriks. Lalu, Algoritma Floyd-Warshall dikembangkan oleh R.W. Floyd sehingga
matriks merupakan graf berbobot dan bukan lagi matriks Boolean.
Algoritma Floyd-Warshall untuk mencari lintasan terpendek adalah sebagai berikut:
1) W = W0
2) Untuk k = 1 hingga n, lakukan :
Untuk i = 1 hingga n, lakukan :
Untuk j = 1 hingga n, lakukan :
Jika W[i,j] > W[i,k] + W[k,j] maka tukar W[i,j] dengan W[i,k] + W[k,j].
3) W* = W.
Keterangan :
W0 = Matriks keterhubungan graf berarah berbobot awal.
W* = Matriks keterhubungan minimal.
Wi,j = Lintasan terpendek dari titik vi ke vj.

1
Contoh :
 W1,2 = 0,1, sedangkan W1,1 + W1,2 = ∞ + 0,1 = ∞
karena W1,2 > W1,1 + W1,2 maka bobot W1,2 tidak berubah.
 W2,4 = ∞, sedangkan W2,1 + W1,4 = 0,1 + 0,4 = 0,5
karena W2,4 > W2,1 + W1,4 maka bobot W2,4 di ubah menjadi 0,5.
Dalam iterasinya untuk mencari lintasan terpendek, algoritma Floyd-Warshall
membentuk n matriks, sesuai dengan iterasi-k. Ini akan menyebabkan prosesnya lambat,
terutama untuk nilai n yang besar. Meskipun waktu prosesnya bukanlah yang tercepat,
algoritma Floyd-Warshall sering dipergunakan untuk menghitung lintasan terpendek
karena kesederhanaannya dan implementasi algoritmanya sangat mudah dibuat.
Matriks keterhubungan W yang digunakan untuk menyatakan graf berarah berbobot
sama dengan matriks yang digunakan untuk menyatakan graf berbobot, yaitu elemen-
elemennya menyatakan bobot garis. Secara umum matriks keterhubungan untuk
menyatakan graf berarah berbobot tidaklah simetris karena bobot garis dari titik vi ke vj
(=Wi,j) tidak sama dengan bobot garis dari titik vj ke vi (= Wj,i) dan Wi,i = ∞ untuk semua
i.

B. Cara kerja dan Karakteristik Algoritma Floyd-Warshall


Cara kerja dari Algoritma Floyd-Warshall adalah dengan membandingkan semua
lintasan yang mungkin terjadi dalam graf untuk setiap pasang simpul dan melakukan
pengujian dari setiap kombinasi simpul yang diperoleh. Dengan ini, algoritma Floyd-
Warshall memiliki lebih dari satu kemungkinan eksekusi. Tiap eksekusi hanya memiliki
satu solusi atau jalan untuk di proses, jika tidak ada solusi lagi maka algoritma akan
dianggap selesai. Dalam membuat keputusan atau memproses perhitungan akan selalu
berkaitan dengan solusi sebelumnya.
Beberapa karakteristik yang dimiliki oleh algoritma Floyd-Warshall antara lain :
 Persoalan dibagi atas beberapa tahap, yang setiap tahapnya hanya akan diambil satu
keputusan.
 Masing-masing tahap terdiri atas sejumlah status yang saling berhubungan dengan
status tersebut. Status yang dimaksud disini adalah berbagai kemungkinan masukan
yang ada pada tahap tersebut.

C. Tahapan Algoritma Floyd-Warshall


Untuk memperoleh jalur terpendek dengan menggunakan algoritma floyd-warshall
akan membuat beberapa tahap. Dengan :
- Dik : nilai titik awal
- Dkj :nilai titik tujuan
- Dij : nilai jarak sebenarnya

2
Tahap – tahap pengerjaannya :
1. Membuat tabel matriks jarak setiap titik.
2. Membuat tabel matriks jalur yang ingin dilewati.
3. Jika hasil penjumlahan Dik dan Dkj lebih kecil dari Dij maka diganti nilai Dij
menjadi Dij = Dik + Dkj.
4. Lakukan berulang sampai sebanyak vertexnya.
5. Menentukan jarak terpendek dari hasil perhitungan dengan :
𝑊𝑖𝑗, 𝑖𝑓 𝑘=0
𝐷𝑖𝑗𝑘 = { (𝑘−1)
min(𝑑𝑖𝑗 𝑖𝑓 𝑘≥1

D. Studi Kasus

Menentukan rute terpendek yang digambarkan melalui matriks. Dari gambar diatas,
didapat :
 k = 0,1,2,3,4
 i = 1,2,3,4
 j = 1,2,3,4

Penyelesaian :

Matriks hubung graf, k = 0

D0 =

3
Matriks hubung graf, k = 1

D1 =

Rumus : D[i,j] < D[i,k] + D[k,j]


Pengerjaan :
 D [2,3]
0
D0[2,1] + D0[1,3]  D0[3,4] D0[3,1] + D0[1,4]
∞ = ∞ + 3,8 ∞ = ∞ + 4,2
 D [2,4]
0
D0[2,1] + D0[1,4]  0
D [4,2] D0[4,1] + D0[1,2]
3,4 < ∞ + 4,2 ∞ = ∞ + 7,5
 D [3,2]
0
D0[3,1] + D0[1,2]  0
D [4,3] D0[4,1] + D0[1,3]
4,8 < ∞ + 7,5 1,9 < ∞ + 3,8

Matriks hubung graf, k = 2

D2 =

Pengerjaan :
 D1[1,3] D1[1,2] + D1[2,3]  D1[3,4] D1[3,2] + D1[2,4]
3,8 < 7,5 + ∞ 8,2 = 4,8 + 3,4
 D [1,4]
1
D1[1,2] + D1[2,4]  1
D [4,1] D1[4,2] + D1[2,1]
4,2 < 7,5 + 3,4 ∞ = ∞ + ∞
 D [3,1]
1
D1[3,2] + D1[2,1]  1
D [4,3] D1[4,1] + D1[2,3]
∞ < 4,8 + ∞ 1,9 < ∞ + ∞

Matriks hubung graf, k = 3

D3 =

4
Pengerjaan :
 D [1,2]
2
D2[1,3] + D2[3,2]  D2[2,4] D2[2,3] + D2[3,4]
7,5 < 3,8 + 4,8 3,4 < ∞+ 8,2
 D [1,4]
2
D2[1,3] + D2[3,4]  2
D [4,1] D [4,3] + D2[3,1]
2

4,2 < 3,8 + 8,2 ∞ = 1,9 + ∞


 D [2,1]
2
D2[2,3] + D2[3,1]  2
D [4,2] D2[4,3] + D2[3,2]
∞ = ∞ + ∞ 6,7 < 1,9 + 4,8

Matriks hubung graf, k = 4

D4 =

Pengerjaan :
 D [1,2]
3
D3[1,4] + D3[4,2]  D3[2,3] D3[2,4] + D3[4,3]
7,5 < 4,2 + 6,7 5,3 = 3,4 + 1,9
 D [1,3]
3
D3[1,4] + D3[4,3]  3
D [3,1] D [3,4] + D3[4,1]
3

3,8 < 4,2 + 1,9 ∞ = 8,2 + ∞


 D [2,1]
3
D3[2,4] + D3[4,1]  3
D [3,2] D2[3,4] + D3[4,2]
∞ = 3,4 + ∞ 4,8 < 8,2 + 6,7

D4 =

Matriks akhir lintasan terpendek

Dimana :
 1 – 2 – 3 – 4 = 7,5 + 5,3 + 8,2 = 21 km
 1 – 2 – 4 – 3 = 7,5 + 3,4 + 1,9 = 12,8 km
 1 – 3 – 2 – 4 = 3,8 + 4,8 + 3,4 = 12 km
 1 – 3 – 4 – 2 = 3,8 + 8,2 + 6,7 = 18,7 km
 1 – 4 – 2 – 3 = 4,2 + 6,7 + 5,3 = 16,2 km
 1 – 4 – 3 – 2 = 4,2 + 1,9 + 4,8 = 10,9 km

5
Jadi, berdasarkan perhitungan secara manual menggunakan algoritma Floyd-Warshall
didapatkan rute terpendeknya adalah 1 – 4 – 3 – 2 yaitu sebesar 10,9 km.

E. Kelebihan Algoritma Floyd-Warshall


Kelebihan dari Algoritma Floyd-Warshall antara lain :
 Algoritma Floyd-Warshall dapat digunakan untuk mencari jarak terpendek
(shortest path) dari setiap pasangan node.
 Algoritma Floyd-Warshall menggunakan matriks bobot n x n sebagai masukan,
dimana n merupakan jumlah verteks.
 Algoritma Floyd-Warshall dapat mentolerir negative edge.
 Membandingkan semua kemungkinan lintasan pada graf untuk setiap sisi dari
semua simpul.
 Algoritma Floyd-Warshall unggul dalam recovery time-nya.

6
BAB II
PENUTUP

A. Kesimpulan
Algoritma Flyod-Warshall memberikan solusi optimum yang memiliki pemikiran
terhadap konsekuensi yang ditimbul dari pengambilan keputusan pada suatu tahap.
Algoritma Floyd-Warshall mampu mengurangi pencarian keputusan yang tidak
mengarah ke solusi. Prinsip yang dipegang oleh algoritma ini adalah prinsip optimalitas,
yaitu jika solusi per-tahap optimal, maka bagian solusi sampai suatu tahap.

7
DAFTAR PUSTAKA

[1] Liwang, R., Santoso, A. J., & Rahayuu F.S.. 2013. Rancangan Bangun Aplikasi
Menggunakan Floyd Warshall. Seminar Nasional Teknologi Informasi dan Multimedia
(pp. 18-21). Yogyakarta : STMIK AMIKOM Yogyakarta.

[2] Siang, Jong Jek. 2009. Matematika Diskrit dan Aplikasinya pada Ilmu Komputer.
Yogyakarta: Andi Offset.

[3] R. Aprian dan D. Novamdi, “Perbandingan Algoritma Dijkstra dan Algoritma Floyd-
Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path),” pp. 1-5.
2007.

[4] Budiarsyah, Dibi Khairurrazi. 2010. Algoritma Djikstra, Bellman-Ford, Dan Floyd-
Warshall untuk Mencari rute Terpendek dari Suatu Graf. Makalah Strukdis 2010,
Bandung.

[5] Menia Neliti.


https://media.neliti.com/media/publications/140473-ID-penerapan-algoritma-floyd-
warshall-dalam.pdf
Tanggal Akses : 02 Oktober 2020 pukul 21.40 WIB.

[6] Teknosi.
file:///C:/Users/user/AppData/Local/Temp/658-1993-1-PB-1.pdf
Tanggal Akses : 03 Oktober 2020 pukul 20.30 WIB.

[7] Hasibuan, Ahyar Rivai. 2016. Peneraan Algoritma Floyd Warshall Untuk
Menentukan Jalur Terpendek Dalam Pengiriman Barang. Riset Komputer, 3(6), 20 - 24.

[8] Core.
https://core.ac.uk/download/pdf/153523863.pdf
Tanggal Akses : 06 Oktober 2020 pukul 00:27 WIB.

[9] Repository.
http://repository.unmuhjember.ac.id/507/1/JURNAL.pdf
Tanggal Akses : 06 Oktober 2020 pukul 23:40 WIB.

Anda mungkin juga menyukai