Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

http://dx.doi.org/10.21927/ijubi.v3i1.

1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek


Available online at https://ejournal.almaata.ac.id/index.php/IJUBI
IJUBI
Indonesian Journal of Business Intelligence Indonesian Journal
---- of ----
Volume 3 | Issue 1 | June (2020) Business Intelligence

IMPLEMENTASI ALGORITMA DIJKSTRA DALAM PENENTUAN JALUR TERPENDEK


STUDI KASUS JARAK TEMPAT KULIAH TERDEKAT
Muhammad Muharrom
Prodi Teknologi Informasi, Fakultas Teknik dan Informatika, Universitas Bina Sarana Informatika,
muhammad.muu@bsi.ac.id
Jl. Kamal Raya No. 18, Ringroad Barat, Cengkareng, Jakarta Barat
Telp. (021) 54376399, fax. (021) 54376298

Keywords: Abstract
Algoritma Dijkstra, For anyone who wants to travel to Jakarta, wherever his domicile is located, such as the
jarak terpendek Bekasi area which is one of the areas close to the Jakarta province, whether traveling to
Jakarta about work or college must know which route is the fastest and shortest to go
through and as much as possible perhaps avoiding the region with severe traffic jams,
because traffic congestion in Jakarta has become a daily sight. Many steps have been
taken by the government to overcome these bottlenecks, such as the construction of
flyovers and underpasses, the operation of busway lanes, the implementation of clock
trees in one and so on. However, traffic jams still often occur until now, therefore we
need the active role of road users themselves to be able to overcome these bottlenecks.
One of the most effective ways is to look for alternative routes that can be passed.
Therefore, the author tries to make a case study of a trip from Ujungharapan-Bekasi
to Menara Salemba (STMIK Nusa Mandiri) - Central Jakarta as an experiment using
the method using the Dijkstra algorithm that can find the fastest and shortest paths.
So that the journey from Bekasi to STMIK Nusa Mandiri will be faster and save time,
energy and fuel costs.
Kata Kunci: Abstrak
Algoritma Dijkstra, Bagi siapapun yang ingin bepergian menuju jakarta, darimana pun domisili
penentuan jarak orang tersebut berada, seperti wilayah bekasi yang memang salah satu wilayah
terpendek yang berdekatan dengan provinsi Jakarta, entah bepergian menuju ke jakarta
perihal bekerja ataupun kuliah harus mengetahui rute mana yang tercepat
dan terpendek untuk dilalui dan sebisa mungkin menghindari wilayah yang
macetnya parah, karena kemacetan di Jakarta sudah menjadi pemandangan
sehari-hari. Banyak langkah langkah yang telah dilakukan oleh pemerintah
untuk mengatasi kemacetan tersebut, seperti pembangunan fly over dan
underpass, pengoperasian jalur busway, pemberlakuan jam tree in one dan
sebagainya. Akan tetapi kemacetan tetap saja masih sering terjadi sampai saat
ini, Oleh karena itu diperlukan peran aktif dari pengguna jalan sendiri untuk
dapat mengatasi kemacetan tersebut. Salah satu cara yang paling efektif yaitu
dengan mencari rute alternatif yang dapat dilalui. Oleh karena itu penulis
mencoba membuat study kasus perjalanan dari Ujungharapan-Bekasi menuju
Menara Salemba (STMIK Nusa Mandiri) - Jakarta Pusat sebagai percobaan
penerapan metode dengan menggunakan algoritma Dijkstra yang dapat
menemukan jalur tercepat dan terpendek. Sehingga perjalanan dari Bekasi
menuju STMIK Nusa Mandiri akan lebih cepat dan menghemat waktu, tenaga
dan biaya bahan bakar.

25 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30


http://dx.doi.org/10.21927/ijubi.v3i1.1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek

Pendahuluan algoritma djikstra dalam menentukan jarak


terpendek sehingga perjalanan kuliah dari
Kemacetan di Jakarta selalu terjadi setiap
Ujungharapan Bekasi menuju STMIK Nusa
hari kerja. Jumlah kepadatan penduduk yang
Mandiri Jakarta Pusat, akan lebih menghemat
besar dan aktifitas yang beragam membuat
waktu dan juga biaya.
kota ini tidak pernah sepi dari lalu lintas
manusia. Mobilitas yang tinggi tersebut sering A. Perumusan Masalah
terkendala dengan minimnya sarana dan
1. Bagaimana cara menemukan jalur terpendek
prasarana jalan yang sangat terbatas. Oleh
dari Ujungharapan - Bekasi menuju Menara
karena itu diperlukan sebuah solusi yang tepat
Salemba-Jakarta Pusat?.
yang dapat memperlancar mobilitas tersebut.
2. F a k t o r - f a k t o r a p a s a j a y a n g h a r u s
Salah satu solusi yaitu dengan menambah sarana
diperhitungkan dalam mencari jalur tersebut?
dan prasarana jalan yang saat ini sangat terbatas.
Akan tetapi hal ini sulit dilakukan selain karena B. Batasan Masalah
tidak adanya lahan untuk perluasan jalan, tetapi Batasan masalah yang dilakukan pada penelitian
juga karena hal ini membutuhkan dana yang ini yaitu:
sangat besar. Kita bisa ambil contoh banyak 1. Penelitian ini hanya dilakukan di wilayah
proyek semacam itu yang sampai saat ini masih antara wilayah Ujungharapan Bekasi dan
terbengkalai. Solusi lain yang mungkin dilakukan Menara Salemba Jakarta Pusat.
adalah dengan menggunakan kecermatan kita 2. Objek pada penelitian ini hanya pada jalan
sendiri memilih dan memanfaatkan sarana yang raya, yaitu jalan umum yang dapat dilalui
tersedia dengan semaksimal mungkin. oleh kendaraan yang berukuran besar seperti
Ada beberapa Penelitian sebelumnya terkait Bus.
dengan algoritma Dijkstra ini yaitu membahas 3. Penelitian ini hanya sebatas menemukan
tentang pemetaan lokasi, pencarian lokasi, dan jalur tercepat yang dapat digunakan oleh
penentuan jalur terpendek untuk mencapai pengguna.
lokasi SPBU tersebut. Hasil pengambilan data 4. Data kecepatan dan waktu tempuh pada
didapatkan 33 SPBU yang menjual premium penelitian ini menggunakan acuan kendaraan
dan bio solar di Kabupaten Jember. Pencarian roda empat yang didapatkan dari Peta
SPBU terdekat dipengaruhi oleh kriteria, cost, Provinsi DKI Jakarta dan google map.
dan reverse _cost. Dimana untuk jalan satu arah C. Tujuan dan Manfaat Penelitian
diberikan nilai reverse _cost sebesar 1000000,
sehingga jalan ini tidak akan pernah dipilih. Penelitian ini penulis lakukan dengan beberapa
Algoritma dijkstra sangat sesuai dan mudah tujuan. Adapun tujuan tersebut sebagai berikut.
digunakan pada studi kasus di penelitian ini. [1] 1. Menemukan jalur tercepat dari satu lokasi ke
lokasi lainnya yang ada di Jakarta khususnya
Pada penelitian lain terkait dengan penentuan antara Ujunghaapan dan Menara Salemba.
jarak terdekat Dengan menggunakan algoritma 2. M e n e m u k a n f a k t o r - f a k t o r y a n g
Djikstra, lintasan terpendek dari FMIPA mempengaruhi waktu tempuh perjalanan
diperoleh dengan memilih minimum lokal atau menuju STMIK Nusa Mandiri Jakarta .
akses dengan jarak terdekat dari setiap lokasi 3. Penulis dapat menerapkan ilmu yang
yang kemudian digabungkan menjadi sebuah didapatkan ke dalam sebuah permasalahan
kumpulan lintasan dari satu lokasi ke lokasi yang ada di masyarakat.
lainnya dengan jarak terpendek.[2] 4. Penulis dapat mempelajari secara mendalam
Dalam hal ini penulis mengimplementasikan mengenai algoritma Dijkstra dalam melakukan
algoritma Dijkstra pada proses bepergian pencarian terhadap jalur terpendek.
menuju Jakarta terutama kampus yang menjadi Landasan Teori
tujuan, alangkah baiknya jika kita mengetahui
setiap rute ketempat tujuan kita, dan mana A. Graf
saja dari rute tersebut yang memiliki jalur Teori graf merupakan pokok bahasan yang
yang terpendek sehingga kita mencapai tujuan sudah tua usianya namun memiliki banyak
dengan menghemat waktu, biaya serta bahan terapan dalam kehidupan sehari-hari sampai
bakar kendaraan, sehingga penulis mencoba saat ini. Banyak persoalan pada dunia nyata yang
membuat study kasus tentang penerapkan sebenarnya merupakan representasi visual dari

26 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30


http://dx.doi.org/10.21927/ijubi.v3i1.1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek

graf. Contoh salah satu representasi visual dari Adapun pengertian algoritma adalah kumpulan
graf adalah peta. Banyak hal yang dapat digali instruksi atau perintah yang dibuat secara jelas
dari representasi tersebut, diantaranya adalah dan sistematis berdasarkan urutan yang logis
menentukan jalur terpendek dari satu tempat untuk penyelesaian suatu masalah. 5 komponen
ke tempat lain, menggambarkan 2 kota yang utama dalam algoritma yaitu finiteness,
bertetangga dengan warna yang berbeda pada definitenesss, input, output dan effectiveness.
peta, menentukan tata letak jalur transportasi, Sehingga dalam merancang sebuah algoritma
pengaturan jaringan komunikasi atau jaringan ada tiga komponen yang harus ada yaitu:
internet dan masih banyak lagi. Selain peta,
1. Komponen masukan (input)
masih banyak hal lain dalam dunia nyata yang
Komponen ini biasanya terdiri dari pemilihan
merupakan representasi visual dari graf. Secara
variabel, jenis variabel, tipe variabel,
matematis graf didefinisikan sebagai pasangan
konstanta dan paramenter (dalam fungsi).
himpunan (V, E), ditulis dengan notasi G =
(V, E), yang dalam hal ini V adalah himpunan 2. Komponen keluaran (output)
tidak kosong dari simpul-simpul (vertex atau Komponen ini merupakan tujuan dari
node) dan E adalah himpunan sisi (edge) yang perancangan algoritma dan program.
menghubungkan sepasang simpul [5]. Permasalahan yang diselesaikan dalam
algoritma dan program harus ditampilkan
Simpul (vertex) pada graf dapat disimbolkan
dalam komponen keluaran. Karakteristik
dengan huruf, bilangan atau gabungan keduanya.
keluaran yang baik adalah keluaran yang
Sedangkan posisi sisi-sisi yang menghubungkan
benar menjawab permasalahan dan tampilan
antara simpul u dengan simpul v dinyatakan
(interface) yang ramah.
dengan pasangan yang terhubung (u, v) atau
dinyatakan dengan lambang yaitu e1, e2, e3 dan 3. Komponen proses (processing)
seterusnya. Dengan kata lain, jika e adalah sisi Komponen ini merupakan bagian utama
yang menghubungkan antara simpul u dengan dan terpenting dalam merancang sebuah
simpul v, maka e dapat dituliskan dengan algoritma. Dalam bagian ini terdapat logika
sebagai e = (u, v). masalah, logika algoritma (sintaksis dan
semantik), rumusan, metode (rekursi,
Klasifikasi pada graf cukup luas dan global,
perbandingan, penggabungan, pengurangan
klasifikasi tersebut bergantung pada faktor-
dan lain-lain).
faktor yang membedakannya (tergantung
inputannya). Berdasarkan orientasi arah pada Adapun jika dilihat dari segi kondisinya,
sisinya, maka secara umum graf dibedakan atas kompoenen algoritma terdiri dari dua kondisi
dua jenis sebagai berikut : yaitu:
1. Graf tidak berarah (undirected graph) 1. Pre condition Pre condition adalah kondisi
Graf yang sisinya tidak memiliki orientasi suatu program ketika algoritma siap
arah disebut graft tidak berarah. Pada graf dijalankan (sebelum dilaksanakan algoritma).
tidak berarah, urutan pasangan simpul yang Dengan kata lain pre conditionmerupakan
dihubungkan oleh sisi tidak diperhatikan. kondisi awal dimana algoritma akan
Jadi, (u, v) = (v, u) adalah sisi yang sama. dijalankan. Pre conditiondinyatakan dengan
mendefinisikan input dari sebuah algoritma.
2. Graf berarah (directed graph)
Graf yang setiap sisinya diberikan orientasi 2. Post condition
arah disebut graf berarah, pada graf berarah Post conditionmerupakan kondisi setelah
(u, v) dan (v, u) menyatakan dua buah sisi suatu algoritma selesai dijalankan. Post
yang berbeda. Dengan kata lain dapat ditulis conditiondinyatakan dengan mendefinisikan
(u, v) ≠ (v, u). hasil (output) dari suatu algoritma.
B. Algoritma C. Algoritma Dijkstra
Kata algoritma (algorithm) berasal dari kata Algoritma Dijkstra merupakan salah satu
algorism yang diambil dari nama penulis buku metode untuk mencari lintasan terpendek dari
Arab yang terkenal, yaitu Abu Ja’far Muhammad sebuah simpul ke semua simpul lainnya dalam
ibnu Musa Al-Khuwarizmi (al-Khuwarizmi graf yang hanya memiliki bobot positif. Secara
dibaca orang Barat menjadi algorism)[5]. formal, masalah lintasan terpendek semua

27 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30


http://dx.doi.org/10.21927/ijubi.v3i1.1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek

pasangan simpul adalah untuk mencari lintasan 6. Apakah node yang terpilih merupakan
terpendek di antara semua pasang simpul vi, vi node tujuan?. Jika ya, maka kumpulan
€ V sedemikian sehingga i≠j. node terpilih atau predecessor merupakan
rangkaian yang menunjukkan lintasan
Dalam mencari lintasan terpendek dari suatu
terpendek.
simpul ke semua pasangan simpul algoritma
Dijkstra melalui sejumlah langkah yang D. Matriks Ketetanggaan
menggunakan prinsip greedy. Prinsip greedy
Misalkan sebuah graf G = (V,E) dengan jumlah
pada algoritma Djikstra menyatakan bahwa
simpul n. Matriks ketetanggaan G adalah
pada setiap langkah kita memilih sisi yang
matriks bujur sangkar dengan ukuran n × n.
berbobot minimum dan memasukkannya dalam
atau M= [mij], dengan mij = 1 jika simpul i dan
himpunan solusi [5].
j bertetangga, sebaliknya mij = 0 jika simpul i
Dijkstra ditemukan oleh Edsger.Wybe Dijkstra dan j tidak bertetangga [5].
pada tahun 1959. Algoritma ini merupakan
E. Masalah Lintasan Terpendek (SPP)
algoritma yang dapat memecahkan masalah
pencarian jalur terpendek dari suatu graf Pencarian rute terpendek merupakan suatu
pada setiap simpul yang bernilai tidak negatif. masalah yang paling banyak dibahas dan
dijkstra merupakan algoritma yang termasuk dipelajari sejak akhir tahun 1950. Pencarian
dalam algoritma greedy, yaitu algoritma yang rute terpendek ini telah diterapkan di berbagai
sering digunakan untuk memecahkan masalah bidang untuk mengoptimasi kinerja suatu
yang berhubungan dengan suatu optimasi. sistem, baik untuk meminimalkan biaya atau
Dalam pencarian jalur terpendeknya algoritma mempercepat jalannya suatu proses. Salah [3]
dijkstra bekerja dengan mencari bobot yang SPP adalah suatu persoalan untuk mencari
paling minimal dari suatu graf berbobot, jarak lintasan antara dua atau lebih simpul pada graf
terpendek akan diperoleh dari dua atau lebih berbobot yang gabungan bobot sisi graf yang
titik dari suatu graf dan nilai total yang didapat dilalui berjumlah paling minimum. Persoalan
adalah yang bernilai paling kecil. Misalkan G ini juga merupakan suatu persoalan optimasi
adalah graf berarah berlabel dengan titik-titik yang menggunakan graf berbobot, dimana
V(G) = {v1,v2,…,vn} dan path terpendek yang bobot dapat menyatakan jarak antar kota, waktu
dicari adalah dari v1 ke vn. pengiriman pesan, ongkos pembangunan, dan
Algoritma Dijkstra dimulai dari titik v1. Dalam sebagainya[4].
iterasinya, algoritma akan mencari satu titik yang Metode
jumlah bobotnya dari titik 1 terkecil. Titik-titik
yang terpilih dipisahkan, dan titik-titik tersebut Berikut adalah Teknik pengumpulan data
tidak diperhatikan lagi dalam iterasi berikutnya. yang digunakan dalam proses penelitian dan
Langkah-langkah dalam menentukan lintasan pembuatan aplikasi ini:
terpendek pada algoritma Dijkstra yaitu: a. Observasi;
1. Pada awalnya pilih node sumber sebagai
node awal, diinisialisasikan dengan ‘1’. Observasi dilakukan penulis dengan cara
2. Bentuk tabel yang terdiri dari node, status, mengamati secara langsung perjalanan yang
bobot, dan predecessor. Lengkapi kolom dilalui kemudian dicek kembali pada google
bobot yang diperoleh dari jarak node sumber map jarak yang ditempuh. berupa jarak yang
ke semua node yang langsung terhubung dimulai dari Ujungharapan Bekasi meuju
dengan node sumber tersebut. menara salemba yang diperoleh berdasarkan
3. Jika node sumber ditemukan maka tetapkan pengukuran pada peta (Google Map).
sebagai node terpilih. b. Studi Pustaka;
4. Tetapkan node terpilih dengan label
permanen dan perbaharui node yang Adalah tahapan yang penulis lakukan dalam
langsung terhubung. mengumpulkan material atau bahan-bahan
5. Tentukan node sementara yang terhubung yang akan dipakai dalam merancang program
pada node yang sudah terpilih sebelumnya dengan cara mengumpulkan melalui buku-buku
dan merupakan bobot terkecil dilihat dari literatur, jurnal dan internet yang sesuai dengan
tabel dan tentukan sebagai node terpilih judul penelitian yaitu buku-buku yang terkait
berikutnya. dengan materi yang akan dibahas.

28 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30


http://dx.doi.org/10.21927/ijubi.v3i1.1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek

Hasil dan Pembahasan Tabel 1. Daftar Lintasan Rumah ke Kampus


Penulis melakukan penelitian tentang jarak No Lintasan Jarak (KM)
tempuh dari Ujungharapan menuju ke Salemba, 1 A-B-C-D-E-F-G 25
ada banyak jalan yang bisa dilalui penulis jika 2 A-B-M-C-D-E-F-G 31,5
ingin menuju ketempat tujuan tersebut, namun 3 A-B-M-C-D-K-H-G 32,3
penulis hanya memberikan beberapa titik tujuan 4 A-B-M-C-L-K-H-G 37
perlintasan yang bisa dilalui bisa dilihat dari graf 5 A-B-M-L-K-H-G 31,7
6 A-B-C-L-K-E-F-G 33,2
yang dibuat oleh penulis berdasarkan titik tujuan
7 A-M-C-D-E-F-G 28,3
dan panjang jarak (km) yang ditempuh. Berikut
8 A-M-L-K-H-G 28,5
graf yang dibuat oleh peulis: 9 A-M-C-L-K-H-G 33,8
10 A-M-C-D-K-H-G 29,1
11 A-M-L-K-E-F-G 31,2
12 A-N-I-J-H-G 27,4
13 A-N-M-L-K-H-G 34,8
14 A-N-I-J-K-H-G 35,5
15 A-M-I-J-H-G 25,1
16 A-M-L-J-H-G 25,9
17 A-M-J-H-G 25,1
18 A-M-L-K-G 26,3
Keterangan :
A. Jl. Ujungharapan Tabel 2. Matrix Ketetanggan
B. Jl. Harapan Indah Bekasi
C. Jl. Pasar Cakung
D. Jl. Perintis Kemerdekaan
E. Jl. Letjen R. Suprapto
F. Jl. Stasiun Senen
G. Jl. Salemba Raya (Menara Salemba)
H. Jl. Matraman Raya
I. Jl. Raya Kalimalang
J. Jl. Stasiun Jatinegara
K. Jl. Pemuda Rawamangun
L. Jl. Klender
M. Jl. I Gusti Ngurah Rai
N. Jl. Metropolitan Mall Bekasi
Dapat kita lihat di gambar tersebut jalur mana
saja yang dapat dilalui dan beserta jarak (km)
yang ditempuh jika melalui jarak tersebut. Dan
penulis merincikan sebagai berikut : 2. Faktor-faktor yang dapat diperhitungkan
dalam mencari jalur tercepat yaitu waktu
Kesimpulan dan Saran
tempuh dari suatu persimpangan ke
Berdasarkan perumusan masalah dan persimpangan lainnya adanya pedagang
serangkaian penelitian yang telah penulis kaki lima, volume kendaraan, lampu
lakukan. Maka dapat disimpulkan beberapa hal merah.
sebagai berikut :
Berikut ini beberapa saran yang dapat
1. Cara menemukan rute tercepat dan rute dipergunakan untuk pengembangan penelitian
terpendek dari suatu lokasi ke lokasi yang dalam mencari rute tercepat dan terpendek.
lain, dalam hal ini berupa suatu persimpangan
1. Memperluas cakupan wilayah penelitian
ke persimpangan yang lain adalah dengan
seperti meliputi kota Jakarta, Bogor, Depok,
mengunakan algoritma Dijkstra dengan
Tangerang dan Bekasi, sehingga dapat
input berupa persimpangan asal dan tujuan
menjangkau kepentingan masyarakat yang
serta sebuah graf yang merepresentasikan
lebih luas.
node sebagai persimpangan dan simpul atau
path sebagai jalur yang menghubungkannya.

29 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30


http://dx.doi.org/10.21927/ijubi.v3i1.1229 Implementasi Algoritma Dijkstra dalam Penentuan Jalur Terpendek

2. Menggunakan data yang real time, sehingga Lain Di Unsrat Manado Menggunakan
sangat akurat dalam menentukan rute Algoritma Djikstra. J Ilm Sains. 2011;11(1):73.
tercepat pada saat sistem digunakan. doi:10.35799/jis.11.1.2011.46
Referensi [3] Ardyan S, Suyitno A, Mulyono. Implementasi
Algoritma Dijkstra Dalam Pencarian Rute
[1] Retnani WEY, Istiadi D, Roqib A. Pencarian Terpendek Tempat Wisata Di Kabupaten.
SPBU Terdekat dan Penentuan Jarak UNNES J Math. 2017;6(2):108-116.
Terpendek Menggunakan Algoritma
DIJKSTRA (Studi Kasus di Kabupaten [4] Pradhana, B.A. 2009. Studi Dan Implementasi
Jember). J Nas Tek Elektro. 2015;4(1):89. Persoalan Lintasan Terpendek Suatu Graf
doi:10.25077/jnte.v4n1.132.2015 Dengan Algoritma Dijkstra Dan Algoritma
Bellman-Ford.
[2] Salaki DT. Penentuan Lintasan Terpendek
Dari Fmipa Ke Rektorat Dan Fakultas [5] Munir, Rinaldi. (2012). Matematika Diskrit.
Bandung: Informatika.

30 “Muhammad Muharrom” IJUBI - Vol. 3 No. 1 (2020): 25 - 30

You might also like