Algoritma Dijkstra Menentukan Rute Terbaik

1,145

Menentukan Rute Metode Dijkstra adalah implementasi atau penerapan metode dijkstra untuk mencari rute terpendek atau terbaik. Sourcecode algoritma dijkstra bisa didapatkan melalui donasi.

Edsger Dijkstra

Algortima ini ditemukan oleh Edsger W. Dikstra dan di publikasi pada tahun 1959 pada sebuah jurnal Numerische Mathematik yang berjudul “A Note on Two Problems in Connexion with Graphs“[1]. Algoritma ini sering digambarkan sebagai algoritma greedy (tamak). Sebagai contoh, ada pada buku Algorithmics (Brassard and Bratley [1988, pp. 87-92])

Djikstra merupakan salah satu varian bentuk algoritma popular dalam pemecahan persoalan terkait masalah optimasi pencarian  lintasan terpendek sebuah lintasan yang mempunyai panjang minimum dari verteks a ke z dalam graph berbobot, bobot tersebut adalah bilangan positif jadi tidak dapat dilalui oleh node negatif. Namun jika terjadi demikian, maka penyelesaian yang diberikan adalah infiniti (Tak Hingga). Pada algoritma Dijkstra, node digunakan karena algoritma Dijkstra menggunakan graph berarah untuk penentuan rute listasan terpendek. Berikut Pseudo Code dan Flowchart Algoritma Djikstra:

Djikstra Flowchart
Djikstra Flowchart

 

Implementasi Djikstra

Algoritma ini bertujuan untuk menemukan jalur terpendek berdasarkan bobot terkecil dari satu titik ke titk lainnya. Misalnya titik mengambarkan gedung dan garis menggambarkan jalan, maka algoritma Dijkstra melakukan kalkulasi terhadap semua kemungkinan bobot terkecil dari setiap titik.

Dijkstras-algorithm

Pertama-tama tentukan titik mana yang akan menjadikan node awal, lalu beri bobot jarak pada node pertama ke node terdekat satu persatu, Dijkstra akan melakukan pengembangan pencarian dari satu titik ke titik lain dan ke titik selanjutnya tahap demi tahap inilah urutan logika dari algoritma Dijkstra :

  1. Beri nilai bobot (jarak) untuk setiap titik ke titik lainnya, lalu set nilai 0 pada node awal dan nilai tak hingga terhadap node lain (belum terisi)
  2. Set semua node “Belum Terjamah” dan set node awal sebagai “Node keberangkatan”
  3. Dari no keberangkatan, pertimbangkan node tetangga yang belum terjamah dan hitung jaraknya dari titik keberangkatan. Sebagai contoh, jika titik keberangkatan A ke B memiliki bobot jarak 6 dan dari B ke node C berjarak 2, maka jarak ke C melewati B menjadi 6+2=8. Jika jarak ini lebih kecil dari jarak sebelumnya (yang telah terekam sebelumnya) hapus data lama, simpan ulang data jarak dengan jarak yang baru.
  4. Saat kita selesai mempertimbangkan setiap jarak terhadap node tetangga, tandai node yang telah terjamah sebagai “Node terjamah”. Node terjamah tidak akan pernah di cek kembali, jarak yang disimpan adalah jarak terakhir dan yang paling minimal bobotnya.
  5. Set “Node belum terjamah” dengan jarak terkecil (dari node keberangkatan) sebagai “Node Keberangkatan” selajutnya dan lanjutkan dengan kembali ke step 3

 

Daftar Pustaka

 

 

ARSIP KODE – sourcecode algoritma dijkstra

Konsep Aplikasi :
– memberikan saran persinggahan wisata apabila ingin melakukan perjalanan dari satu objek wisata ke objek wisata lainnya.

 

Fitur Admin

  • Profil aplikasi
  • Objek wisata
  • Setting dijkstra
  • Event
  • Berita

Fitur Pengunjung Umum

  • Menampilkan data objek wisata
  • Menampilkan event
  • Menampilkan berita
  • Mencari rute (metode dijkstra)

 

PRINTSCREEN

home dijkstra

cari rute dijkstra

admin dijkstra

admin dijkstra

 

 

 

80%
Good
  • Tampilan Aplikasi
  • Kelengkapan Fitur
  • Kompleksitas Algoritma
  • Konsep Aplikasi

Anda mungkin ingin membaca ini