Saturday, 14 November 2015

Contoh Program Algortima Dijkstra

Contoh Program Algortima Dijkstra. Kali ini saya akan membahas algoritma untuk menentukan jalur terpendek dengan menggunakan Algoritma Djikstra. Sebelumnya saya juga telah membahas Menentukan Jalur Terpendek menggunakan Algoritma Greedy. Algoritma Djikstra berbeda dengan greedy, karna djikstra kita akan menemukan jalur yang benar-benar paling optimum. Dan saya telah membuat sebuah source code PHP untuk menyelesaikan algoritma djikstra secara otomatis.
Cek di sini Program Algoritma Dijkstra.

Pertama mari kita bahas bagaimana cara kerja algoritma djikstra :
  1. Buat tabel yang terdiri dari Node, status, Bobot, Total_bobot dan Predecessor (node terpilih)
  2. Set semua node  dengan status =0 dan set node sumber  dengan status = 1
  3. Dari node yang status =1, tentukan semua node tetangga yang status = 0 yang terhubung langsung dengan node tersebut, cek bobot dan hitung total bobot dari node yang statusnya 1  ke node yang berstatus = 0 tersebut. Sebagai contoh, jika node 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.
  4. Jika total bobot ini lebih kecil dari total bobot sebelumnya (yang telah terekam sebelumnya) hapus data lama, simpan ulang data total bobot dengan total yang baru dan tetapkan predecessornya.
  5. Kemudian cek semua node yang status = 0, dan pilih node yang memiliki total bobot paling kecil. Set nilai status node tersebut dengan nilai 1. selanjutnya ulangi langkah no.3 dan 4.
  6. Lakukan proses tersebut terus menerus hingga semua node memiliki status = 1.
Baiklah kita akan contohkan bagaimana cara nya.
Contoh Program Algortima Djikstra
Contoh Program Algortima Djikstra

Gambar diatas adalah graph yang akan kita gunakan. Kita akan mencari dari kota 'A' ke kota 'J' :


  1. Node A merupakan node sumber maka status Node A diset dengan nilai 1, sedangkan node yang lain diset = 0
  2. Dari node  “A” yang status =1, periksa semua node tetangganya. Maka terpilih : B, C, D. cek bobot dan hitung total bobot dari node “A”  tersebut.  Tetapkan Precessor untuk node B, C, D adalah node A 
Contoh Program Algortima Djikstra
  1. Kemudian cek semua node yang status = 0, dan pilih node yang memiliki total bobot paling kecil. Set nilai status node tersebut dengan nilai 1. Berdasarkan hasil iterasi 1, terlihat node B memiliki total bobot paling kecil sehingga status B = 1
  2. Dari node  “B” yang status =1, periksa semua node tetangganya. Maka terpilih : C, E, G. Maka bobot dan hitung total bobot untuk node tetangga tersebut. Tetapkan Precessor untuk node C, E, G adalah node B. Predecessor untuk C berubah ke Node B, karena total bobot terkecilnya pada node B. (A - C = 8,  A – B – C = 7)

Contoh Program Algortima Djikstra

  1. Kemudian cek semua node yang status = 0, dan pilih node yang memiliki total bobot paling kecil. Terlihat node D memiliki total bobot paling kecil sehingga status D = 1
  2. Dari node  “D” yang status =1, periksa semua node tetangganya. Maka terpilih node: E, G. Cek Bobot dan hitung total bobot untuk node tetangga tersebut. Bandingkan total bobot dari B-E = 4 dgn D-E = 9 , maka terpilih yang paling kecil ada pada B-E. Bandingkan total bobot dari B-G = 6 dgn D-G = 11 maka terpilih yang paling kecil ada pada B-G. 
  3. Kesimpulannya: pada kolom E dan G tidak terjadi perubahan nilai untuk total bobot dan predecessor .

Untuk langkah selanjutnya, anda tinggal mengulangi langkah-langkah seperti sebelumnya. Hingga semua node status = 1. Saya lampirkan langkah selanjutnya hingga akhir.
Contoh Program Algortima Djikstra

Contoh Program Algortima Djikstra

Contoh Program Algortima Djikstra

Kesimpulan akhir :
Setelah semua Node statusnya berubah “1”, maka iterasi selesai. Dan node yang terpilih menjadi predecessor akan dirangkai menjadi sebuah pohon keputusan. Dengan hasil sebagai berikut:

Contoh Program Algortima Djikstra

Baiklah itulah yang dapat saya jelaskan tentang Algoritma Djikstra, Jika ada yang minat dengan source code program pembuatan algoritma, silahkan kirim permintaan melalui email saya.
Contoh Program Algortima Dijkstra.

Terima kasih telah membaca Artikel Contoh Program Algortima Dijkstra . Jika Anda ingin Copy Paste Artikel ini, Harap cantumkan Link Contoh Program Algortima Dijkstra sebagai sumbernya.

Artikel Terkait

22 comments:

  1. mas aq minat dengan algoritma djikstranya
    bisa minta tolong dikirim source codenya
    dielsyh36@gmail.com
    terima kasih

    ReplyDelete
  2. mas q minat tolong source codenya dikirim di bayu.fadhil92@gmail.com

    ReplyDelete
  3. mas q minat tolong source codenya dikirim di mailg02@gmail.com

    ReplyDelete
  4. mas aq minat source codenya minta tolong kirim ke e-mail supandirandi73@gmail.com ..!!
    Terima kasih ..

    ReplyDelete
  5. mas aku minat source codenya minta tolong kirim fauziyahrizky49@gmail.com
    Terima kasih.

    ReplyDelete
  6. mas aku minat source codenya minta tolong kirim asofyanm@gmail.com
    Terima kasih.

    ReplyDelete
  7. mas aku minta source codenya dong, tolong kirim ke : aryandorumondor@gmail.com

    terima kasih

    ReplyDelete
  8. kak kirimin source code nya dong di email aku sisca356@gmail.com

    ReplyDelete
  9. mas tolong krim ke email ku riska.catch@gmail.com

    ReplyDelete
  10. selamat siang, mas saya berminat source code algoritma djikstra utk pencarian rute terdekat, boleh dikirim, email saya: triyani_maulina@yahoo.co.id

    ReplyDelete
  11. selamat malem, gan saya berminat source code algoritma djikstra utk pencarian rute terdekat, boleh dibagi gan, email saya : jimmyfalindra16@gmail.com

    ReplyDelete
  12. kalau boleh saya minta source codenya, kirim ke adityasuparno98@gmail.com

    ReplyDelete
  13. mas aq minat dengan algoritma djikstranya
    bisa minta tolong dikirim source codenya
    hendrojio@gmail.com
    terima kasih

    ReplyDelete
  14. Mas minta source code nya ihsan.fikri18@gmail.com

    ReplyDelete
  15. Mas minta sourcecodenya c++/c ihsan.fikri18@gmail.com

    ReplyDelete
  16. kalo mau share jangan nanggung2..,

    ReplyDelete
  17. Berminat mas, email ; sandi220196@gmail.com

    ReplyDelete
  18. minta sourcenya dong bang, email antmoore123789@gmail.com

    ReplyDelete
  19. minta sourcenya mas, randynugraha22@gmail.com

    ReplyDelete
  20. mas, apakah boleh minta source nya? email saya, ismailpashter10@gmail.com

    ReplyDelete
  21. Mas saya minat aplikasinya bisa dikirim ke email saya sourcecodenya ? ini email saya @dewiliana958@gmail.com

    ReplyDelete
  22. Apakah masih ada source kodenya mas ? bisa kirim ke deden.juliandi07@gmail.com

    ReplyDelete

 
 
>
notifikasi
close