2.3.2 Pseudo Code Algoritma Dijkstra
procedure Dijkstra INPUT m: matriks, a : simpul awal {
Mencari Lintasan terpendek dari simpul awal a ke semua simpul lainnya. Masukan : matriks ketetanggaan m dari graph berbobot G dan simpul awal a
Keluaran :Lintasan terpendek dari a ke semua simpul lainnya. }
Kamus : s: array [1. .n] of integer
d: array [1. .n] of integer i: integer
Algoritma : { Langkah 0 inisialisasi : }
Traversal [1. .n] s
1
← 0
d
1
← m
a1
{ Langkah 1: } s
1
← 1
d
a
← ∞
{ Langkah 2,3,…,n-1 : } Traversal { 2..n-1 }
cari j sedemikian sehingga s
j
=0 dan
dj
= min {d1,d2,…,dn } s
j
←
1 { simpul j sudah terpilih } Perbaharui d, untuk i = 1,2,3,s.d.n dengan :
d
1
baru = min lama,d
j
+m
ji
}
2.3.3 Penelitian Terdahulu Algoritma Dijkstra
Berikut terdapat 7 tujuh penelitian terdahulu yang telah dilakukan berkaitan dengan Algoritma Dijkstra :
1. Perbandingan Algoritma Greedy dan Dijkstra Untuk Menentukan Lintasan Terpendek.
Lubis, Heni Syahriza [9] merupakan perbandingan cara kerja antara Algoritma Greedy dan Dijkstra dalam menentukan rute terpendek yang paling baik. Berdasarkan
penelitiannya disimpulkan bahwa Algoritma Greedy tidak beroperasi secara menyeluruh terhadap semua fungsi alternatif yang ada sehingga lintasan terpendek hanya diperoleh
dari vertex asal hingga vertex tujuan, sedangkan Algoritma Dijkstra beroperasi secara menyeluruh terhadap semua alternatif fungsi yang adasehingga lintasan terpendek tidak
hanya diperoleh dari node sumber ke node tujuan saja, akan tetapi lintasan terpendek dapat diperoleh dari semua node.
2. Sistem Informasi Geografis untuk Pencairan Rute Terpendek pada Wilayah Kampus IPB
Darmaga oleh Adisetya, Jiwa [1] merupakan Sistem Informasi Geografis yang membantu untuk mencari rute terpendek terhadap setiap fasilitas yang ada di wilayah kampus IPB
Darmaga. SIG ini bekerja dengan menginputkan titik asal dan titik tujuan dimana user dapat memilih titiklokasi awal yang akan ditempuhnya dan titik akhir yang ditujunya,
kemudia user juga harus menginput beberapa titik acuan yaitu misalnya fasilitas-fasilitas apa saja yang berada disekitar jalan menuju titik tujuannya sehingga kemudian didapat
rute terpendeknya dengan output berupa peta rute terpendek, informasi jarak titik yang dilalui, tampilan peta yang berada di sekitar titik acuan, tampilan peta fasilitas yang
diingankan.
3. Simulasi Algoritma Dijkstra Pada Protokol Routing Open Shortest Path First oleh
Suherman, Eman [16]. Dalam penelitiannya Eman menjelaskan bagaimana algoritma Dijkstra menentukan rute terpendek pada suatu topologi jaringan. Perangkat lunak yang
dibangun dapat memberikan gambaran simulasi algoritma penentuan jalur terpendek. Dengan masukkan jumlah hop topologi jaringan dan biaya masing-masing rute pada rute
pada topologi jaringan yang diberikan, algoritma Dijkstra optimal menentukan rute terpendek tiap-tiap node pada topologi jaringan tersebut.
4. Pencarian Rute Terpendek Tempat Wisata Di Bali Dengan Menggunakan Algoritma
Dijkstra oleh Joni Erawati Dewi, Luh [8]. Bagaimana algoritma Dijkstra menemukan rute terpendek dalam menuju tempat-tempat wisata di Bali. Algoritma Dijkstra cukup baik
digunakan pada pencarian rute terpendek dari dan menuju suatu tempat wisata di Bali. Hasil yang diperoleh yaitu jarak terpendeknya 33.33 km dengan 9 titik jalur terpendek.
5. Pencarian Rute Terpendek Menggunakan Algoritma Dijkstra Dan Astar A Pada SIG
Berbasis Web Untuk Pemetaan Pariwisata Kota Sawahlunto oleh Okta Pugas, Diana [13]. Secara umum hasil pengujian pencarian rute terpendek antar objek wisata di Kota
Sawahlunto dengan menggunakan algoritma Dijkstra dan A Star menghasilkan rute yang sama pada 5 kali sample pengujian. Namun terdapat perbedaan waktu proses pencarian
rute terpendek antara algoritma Dijkstra dan A star. Algoritma A star memperoleh rute terpendek dengan waktu pencarian yang relatif lebih cepat daripada algoritma Dijkstra.
6. Perbandingan Algoritma Dijkstra, Bellman-Ford, dan Floyd-Warshall Untuk Mencari
Rute Terpendek oleh Muliawatik Susani, Indriyani [10]. Disimpulkan bahwa dalam persoalan lintasan terpendek algoritma Dijkstra lebih efisien dibandingkan algoritma
Bellman-Ford dan algoritma Floyd-Warshall jika dilihat dari sisi running time.
7. Perbandingan Algoritma Dijkstra dan Algoritma Ant Colony dalam Penentuan Jalur
Terpendek oleh Ferdiansyah, Finsa [6]. Perbandingan algoritma koloni semutdengan Dijkstra menghasilkan jarak ter-pendek yang sama baik untuk rute jarakdekat, jarak
menengah, maupun jarak jauh. Namun Algoritma koloni semut membutuhkan waktu rata-rata 16,326 detik untukmendapatkan jarak terpendek daripada algoritma Dijkstra
yaitu 0,036 detik karena parameter yang digunakan Ant Colony lebih banyak dibandingkandengan Dijkstra.
Berdasarkan penelitian terdahulu di atas, dapat diambil kelemahan dan kekurangan dari algortima Dijkstra dibandingkan dengan algoritma lainnya sebagai berikut :
1. Kelebihan Algoritma Dijkstra
Algoritma Dijkstra lebih cepat dalam mengeksekusi algoritmanya daripada algoritma Bellman-Ford, Algoritma Floyd-Warshall dan Algoritma Ant Colony. Sehingga waktu
yang dibutuhkan untuk menemukan rute terpendek lebih cepat. Selain itu algortima dijkstra beroperasi secara menyeluruh terhadap semua alternative fungsi yang ada
sehingga lintasan terpendek tidak hanya diperoleh dari node awal dan akhir saja tetapi dapat diperoleh dari semua node yang ada.
2. Kekurangan Algoritma Dijkstra
Algoritma Dijkstra tidak dapat menyelesaikan masalah lintasan terpendek dengan kasus graf yang berbobot negatif.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem