5
TINJAUAN PUSTAKA & LANDASAN TEORI
2.1 Tinjauan Pustaka
Pada penelitian sebelumnya, Perbandingan Algoritma Dijkstra dan Bellman-Ford Dalam Pencarian Jarak Terpendek Pada SPBU (Akbar Serdano*, Muhammad Zarlis, Dedy Hartama) pada tahun 2019 bertujuan untuk menentukan jarak terpendek dalam suatu masalah.[1]
Pada penelitian berikutnya, Implementasi Algoritma Dijkstra Untuk Mencari Rute Terpendek Antar Kantor Dan Estimasi Penggunaan Bahan Bakar Kendaraan (Studi Kasus PT. Telkom Indonesia Regional IV Jateng-DIY) pada tahun 2018 bertujuan untuk Penggunaan algoritma Dijkstra yang diimplementasikan dalam web pemesanan mobil dinas di PT. Telkom Indonesia Regional IV Jateng-DIY, maka hanya akan ada satu rute pasti yang terpendek sebagai outputnya. Rute tersebut akan divisualisasikan dengan maps dan akan muncul angka untuk menunjukkan kilometer jarak yang akan tempuh. Jarak yang ditempuh ini akan mengestimasi rupiah yang dikeluarkan untuk bahan bakar selama perjalanan dinas.[7]
Pada penelitian berikutnya, perbandingan antara algoritma Dijkstra dan Floyd- Warshall dalam pencarian lokasi kuliner pada tahun 2020, berkesimpulan bahwa kedua algoritma tersebut mendapatkan hasil dan tujuan yang sama tetapi terdapat perbedaan pada jalur yang dilaluinya.[5]
Pada penelitian berikutnya, perbandingan antara algoritma Dijkstra dan Ant Colony dalam penentuan jalur terpendek pada tahun 2020, yang berkesimpulan bahwa algoritma Ant Colony lebih optimal apabila digunakan untuk node yang belum memiliki jarak.[4]
6
Tabel 2.1 Tinjauan Pustaka No Penulis
[tahun][judul]
Permasalahan dan Tujuan
Metode Kontribusi
1 Akbar Serdano [2019][Perbandi ngan Algoritma Dijkstra dan Bellman-Ford Dalam
Pencarian Jarak Terpendek Pada SPBU][1]
Permasalahan : Untuk melakukan pencarian SBPU dengan jarak terpendek dan melakukan perbandingan algoritma berdasarkan penelitian sebelumnya.
Tujuan :
Membandingkan algoritma Dijkstra dengan algoritma bellman ford
Algoritma Dijkstra dan Bellman-Ford
Algoritma Dijkstra membutuhkan waktu untuk memproses data lebih cepat dari algoritma Bellman-Ford.
2 S.Hamdi dan Prihandoko,
“Analisis Algoritma Dijkstra dan Algoritma Bellman-Ford Sebagai
Penentuan Jalur Terpendek Menuju Lokasi Kebakaran
Permasalahan : Untuk pembuatan jalur terpendek melibatkan beberapa faktor, antara lain kecepatan, tingkat kemacetan, waktu tempuh
perjalanan, lebar
Algoritma Dijkstra dan Bellman-Ford
Jadi Dijkstra karena pada sisi run time lebih cepat, tetapi lebih menguntungka n
menggunakan bellman ford apabila ada simpul
negative.
7 (Studi Kasus:
Kecamatan Praya Kota),”
J. Ilm. Ilmu- Ilmu Tek., vol.
8, no. 1, pp. 26–
32, 2018.
jalan, dan posisi pipa hidran
Tujuan :
Membandingkan algoritma Dijkstra dengan algoritma bellman ford
3. Surianto and M.
H. Adiya,
“Perbandingan Algoritma Djikstra dan Algoritma Floyd-Warshall Dalam
Pencarian Lokasi Kuliner,”
vol. 2, no. 3, pp.
128–133, 2020.
Permasalahan : mencari tempat kuliner untuk hang out bareng, ataupun
mengadakan pertemuan seperti reunian dan lain sebagainya
Tujuan :
menggunakan algoritma Dijkstra dan algoritma Floyd-Warshall untuk
menghasilkan sebuah rute terpendek dan terbaik untuk mencapai sebuah tempat kuliner
algoritma Dijkstra dan algoritma Floyd- Warshal
Floyd Warshall memiliki kemiripan dengan algoritma Dijkstra.
8 No Penulis
[tahun][judul]
Permasalahan dan Tujuan
Metode Kontribusi
4 D. A. N. A.
Untuk, S. Paket, J. Ekspedisi, and J. N. E. Di,
“Perbandingan rute optimum hasil
perhitungan algoritma,”
2017.
Permasalahan : algoritma
penentuan rute optimum dapat menghasilkan alternatif solusi masalah di berbagai bidang yang berkaitan dengan fenomena lalulintas
Tujuan : mengetahui kemampuan algoritma Dijkstra dan A* (A-star) untuk menentukan rute optimum sirkulasi paket jasa ekspedisi JNE
Algoritma Dijkstra dan Algoritma A*
(A-star)
Algoritma a star
membutuhkan node kordinat dalam
perhitunganny a sedangkan Dijkstra tidak membutuhkan
5 Fairuz Eka Andian, Wiwien Hadikurniawati [2018]
[Implementasi Algoritma Dijkstra Untuk Mencari Rute Terpendek Antar
Permasalahan:
Web pemakaian mobil dinas masih belum
menggunakan algoritma apapun dan penghitungan bahan bakar
Algoritma Dijkstra Dengan algoritma Dijkstra maka user dapat mengetahui jarak tempuh, estimasi waktu,
9 Kantor Dan
Estimasi Penggunaan Bahan Bakar Kendaraan (Studi Kasus PT.
Telkom Indonesia Regional IV Jateng-Diy)][7]
Tujuan:
Memberikan algoritma untuk memberikan rute terpendek dan tercepat.
dan perkiraan bahan bakar kendaraan yang akan dipakai.
6 Martin Nugroho Parapat, Deddy Kusbianto, Cahya Rahmad [2017][Rancang Bangun Aplikasi Pencarian Rute Terpendek Jasa Kiriman Barang Berbasis Mobile Dengan Metode Algoritma Dijkstra][2]
Permasalahan : Kesulitan
pendataan dan penentuan rute.
Tujuan : Membuat sistem pencarian jalur terpendek untuk jasa pengiriman.
Algoritma Dijkstra Algoritma Dijkstra berhasil menyelesaikan masalah penentuan rute pengiriman barang.
7 Chayatul Ichsan [2018][Aplikasi Android
Pencarian Mikrolet Kota Surabaya
Permasalahan:
Angkutan
mikrolet yang kalah saing dengan
Algoritma Dijkstra, Android
Algoritma Dijkstra dapat menentukan jalur tercepat dengan waktu yang lebih
10 No Penulis
[tahun][judul]
Permasalahan dan Tujuan
Metode Kontribusi
Dengan Menggunakan Algoritma Dijkstra][8]
transportasi online.
Tujuan:
Menyelesaikan masalah tersebut dengan membuat aplikasi
memudahkan pencarian mikrolet.
cepat dari algoritma sebelumnya.
8 Saeful Hamdi, Prihandoko [2018] [Analisis Algoritma Dijktra dan Algoritma Bellman-Ford Sebagai
Penentuan Jalur Terpendek Menuju Lokasi Kebakaran (Studi Kasus:
Kecamatan Praya Kota)][9]
Permasalahan:
Penentuan jalur menuju lokasi kebakaran belum optimal dan manual dalam menentukan jarak.
Tujuan:
Membantu petugas pemadam kebakaran dalam menemukan jalur tercepat menuju lokasi.
Algoritma Dijkstra dan Bellman-Ford
Algoritma Dijkstra lebih menguntungka
n dalam
masalah runtime, dan algoritma Bellman-Ford dapat
digunakan dalam graph yang
menggunakan simpul negatif.
9 A. Kadim, S.
Sunardi, and A.
Yudhana,
“Perbandingan
Permasalahan : penerapan
pencarian jalur terpendek terdapat
Algoritma Dijkstra dan Ant Colony
Algoritma Ant Colony tidak membutuhkan data jarak antar
11 Algoritma
Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Transportasi Umum,” J. Sist.
Komput., vol.
10, no. 1, pp. 24–
27, 2020, doi:
10.14710/jsk.v1 0i1.169.
pada aktivitas maskapai
penerbangan yang mana jalur-jalur antar kota yang dilewatinya akan membentuk suatu graf berarah dan berbobot
Tujuan : menggunakan algoritma Dijkstra dan Ant Colony untuk menentukan jalur terpendek dari suatu kota ke kota yang lain
kota, sedangkan pada penlitian sudah ada jarak nya
10 N.Wati dan S.H.
Permatasari,
“Perbandingan Algoritma a*Dengan Algoritma Dijkstra Untuk Pencarian Jarak
Dan Rute
Terpendek Berbasis Web,”
Permasalahan : menampilkan lokasi serta rute terpendek untuk
sampai ke
pangkalan yang akan dituju dengan aplikasi website
Tujuan :
Algoritma A* dan algoritma Dijkstra
a star cepat tetapi tidak efektif karena a star
menggunakan node kordinat dalam
perhitungan dan juga Dijkstra memeriksa semua node
12 No Penulis
[tahun][judul]
Permasalahan dan Tujuan
Metode Kontribusi
J. Teknol. Inf.
Indones., vol. 4, no. 1, pp. 1–6, 2019,
membandingkan algoritma A* dan algoritma Dijkstra untuk melihat manakah yang lebih cepat dalam pencarian rute terpendek dari posisi awal user ke lokasi tujuan
yang
memungkinka n untuk sampai ke tujuan.
2.2 Landasan Teori
2.2.1 Algoritma Dijkstra
Algoritma Dijkstra ditemukan oleh Edsger Wybe Dijkstra pada tahun 1959.
Algoritma Dijkstra merupakan suatu algoritma yang dapat memecahkan masalah pencarian jalur terpendek berdasarkan suatu graf pada setiap simpul yang tidak bernilai negatif. Algoritma Dijkstra termasuk algoritma greedy.
Algoritma greedy merupakan algoritma yang sering digunakan dalam memecahkan masalah yang berhubungan dengan suatu optimasi. Langkah- langkah dalam menentukan lintasan terpendek pada algoritma Dijkstra yaitu:
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 (yang belum terisi).
2. Set semua node “Belum terjamah” dan set node awal sebagai “Node keberangkatan”.
3. Dari node keberangkatan, pertimbangkan node tetangga yang belum terjamah dan hitung jaraknya dari titik keberangkatan.
4. Setelah selesai menghitung setiap jarak terhadap node tetangga, tandai node yang telah terjamah sebagai “Node terjamah”. Node
13
5. Set “Node belum terjamah” dengan jarak terkecil (dari node keberangkatan) sebagai “Node Keberangkatan” selanjutnya dan lanjutkan dengan kembali ke step 3. [2]
2.2.2 Algoritma Floyd Warshall
Algoritma Floyd-Warshall merupakan salah satu varian dari pemrograman dinamis, yaitu suatu metode yang melakukan penyelesaian masalah dengan melihat solusi yang akan didapatkan sebagai suatu keputusan yang saling terhubung, dimana solusi-solusi tersebut dibentuk dari solusi yang berasal dari tahap sebelumnya dan memiliki kemungkinan solusi lebih dari satu.
Untuk mencari rute terdekat menggunakan algoritma Floyd-Warshall, langkah pertama adalah membuat matriks berdasarkan graph. Persamaan untuk membuat matriks adalah sebagai berikut :
𝑤ij {
0 jika i = j
wij jika i ≠ j dan i terhubung dengan j
∞ iika i ≠ j dan i tidak terhubung dengan j Output berupa matriks jarak W = [wij] berdimensi n x n
Langkah selanjutnya adalah membuat matriks Z yang berfungsi untuk menentukan simpul-simpul yang harus dilalui untuk menuju simpul tujuan.
Persamaan untuk membuat matriks Z adalah sebagai berikut :
Inisialisasi 𝑧𝑖𝑗(0) = {𝑗 𝑗𝑖𝑘𝑎 𝑤𝑖𝑗(0) ≠ ∞ 0 𝑗𝑖𝑘𝑎 𝑤𝑖𝑗(0) = ∞
Kemudian, dilakukan iterasi pada matriks dengan menggunakan persamaan berikut :
𝑑𝑖𝑗(𝑘) = 𝑚𝑖𝑛 {𝑑𝑖𝑗(𝑘−1), 𝑑𝑖𝑥(𝑘−1) + 𝑑𝑥𝑗(𝑘−1)}
Pada algoritma Floyd-Warshall, iterasi dilakukan mulai dari iterasi pertama sampai n dimana n mengikuti jumlah simpul yang ada. Pada setiap iterasi,
14
setiap blok matriks akan dilakukan perbandingan antara jarak W[i,j] dengan jarak W[i,x] + W[x,j]. Jika jarak W[i,j] lebih besar dari jarak W[i,x] + W[x,j], maka ganti jarak W[i,j] dengan jarak W[i,x] + W[x,j] dan ganti Z[i,j] dengan Z[i,x].
2.2.3 Parkir
Parkir adalah keadaan suatu kendaraan yang tidak bergerak yang tidak bersifat sementara. Berdasarkan jenisnya, parkir dapat dibedakan menjadi beberapa tipe, antara lain.
a. Parkir menurut tempat dibagi menjadi 2 (dua):
- On Street Parking: parkir yang mengambil tempat sepanjang jalan, dengan atau tanpa melebarkan jalan untuk fasilitas parkir.
- Off Street Parking: parkir yang menempati pelataran parkir tertentu diluar badan jalan baik halaman terbuka atau di dalam bangunan khusus untuk parkir.
b. Parkir menurut posisi dibagi menjadi 3 (tiga):
Parkir yang mengambil tempat sepanjang jalan, dengan atau tanpa melebarkan jalan untuk fasilitas parkir.
- Parkir sejajar sumbu jalan (1800).
- Parkir bersudut 300, 450, dan 600 dengan sumbu jalan.
- Parkir tegak lurus sumbu jalan (900).
c. Parkir menurut status dibagi menjadi 5 (lima):
- Parkir Umum: perparkiran yang menggunakan tanah, jalan atau lapangan yang dimiliki dan dikelola Pemerintah Daerah.
- Parkir Khusus: perparkiran yang menggunakan tanah yang dikuasai dan pengelolaannya diselenggarakan oleh pihak ketiga.
- Parkir Darurat: perparkiran di tempat umum, baik di tanah, jalan lapangan milik Pemerintah Daerah atau swasta karena kegiatan insidentil.
15 oleh Pemerintah Daerah.
- Gedung Parkir: bangunan yang dimanfaatkan untuk tempat parkir yang diselenggarakan oleh Pemerintah Daerah atau pihak yang mendapat izin dari Pemerintah Daerah. [10]