Upload
lydiep
View
239
Download
0
Embed Size (px)
Citation preview
i
PERBANDINGAN PERFORMANSI PENCARIAN
JARAK TERPENDEK MENGGUNAKAN
ALGORITMA A STAR (A*) DAN ALGORITMA
DIJKSTRA (STUDI KASUS: JALAN PARIWISATA
KABUPATEN PATI)
skripsi
disajikan sebagai salah satu syarat
untuk memperoleh gelar Sarjana Komputer
Program Studi Teknik Informatika
oleh
Suprapto
4611412006
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS NEGERI SEMARANG
2017
v
MOTTO DAN PERSEMBAHAN
Motto
- Belajar dari pohon yang menjatuhkan daunnya untuk hidup, hidup penuh
dengan pengorbanan untuk mencapai tujuan (Suprapto)
- Barang siapa keluar untuk mencari ilmu maka dia berada di jalan Allah
(HR.Turmudzi)
- Barang siapa menempuh suatu jalan untuk mencari ilmu, maka Allah
memudahkannya mendapat jalan ke syurga ( H.R Muslim)
Persembahan
Skripsi ini Kupersembahkan sebagai ungkapan
rasa terima kasihku kepada:
- Kedua orang tuaku, Bapak Djaya dan Ibu
Tarmi, terima kasih untuk kasih sayang dan
do’a yang senantiasa setia mengiringi
langkahku.
- Saudaraku Riyadi, Ngarsiman yang tak henti
memberikan semangatnya.
- Sahabat-sahabat ilkom 2012 yang telah
menjadi inspirasi serta memotivasi dalam
penulisan skripsi ini, khususnya Wandha, Oky,
Eka , mas Subhan, dan teman-teman Biologi
UMS 2011.
- Universitas Negeri Semarang.
vi
PRAKATA
Puji syukur alhamdulillah senantiasa penulis panjatkan kepada Tuhan
Yang Maha Esa atas segala limpahan rahmat dan karunia-Nya sehingga penulis
dapat menyelesaikan skripsi yang berjudul “Perbandingan Performansi Pencarian
Jarak Terpendek Menggunakan Algoritma A Star (A*) Dan Algoritma Dijkstra
(Studi Kasus: Jalan Pariwisata Kabupaten Pati)”.
Penulisan skripsi ini diselesaikan berkat bimbingan, bantuan, dukungan,
dan kerjasama dari berbagai pihak. Oleh karena itu, penulis mengucapkan banyak
terima kasih kepada:
1. Prof. Dr. Fathur Rokhman, M.Hum., Rektor Universitas Negeri Semarang.
2. Prof. Dr. Zaenuri, S.E., M.Si., Akt., Dekan Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Negeri Semarang.
3. Endang Sugiharti, S.Si., M.Kom., Ketua Jurusan Ilmu Komputer Fakultas
Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Semarang.
4. Alamsyah, S.Si., M.Kom., dosen pembimbing utama yang telah memberikan
bimbingan, motivasi, dan pengarahan dalam penyusunan skripsi.
5. Isa Akhlis S.Si., M.Si., dosen pembimbing pendamping yang telah
memberikan bimbingan, motivasi, dan pengarahan dalam penyusunan skripsi.
6. Riza Arifudin, S.Pd., M.Cs., selaku penguji yang memberikan banyak
masukan, kritik dan saran dalam penyelesaian skripsi ini.
7. Dosen ilmu komputer yang telah memberikan ilmu yang bermanfaat selama
masa perkuliahan.
vii
8. Ayahanda dan Ibunda tercinta serta teman-temanku, yang telah
memberikan do’a dan dorongan baik secara moril, materil maupun
spiritual dalam menyelesaikan skripsi.
9. Sahabat dan rekan-rekan Ilmu Komputer 2012 yang bersama-sama
berjuang dalam menyelesaikan skripsi.
10. Seluruh staf dosen di Universitas Negeri Semarang.
11. Serta semua pihak yang tidak dapat penulis sebutkan satu persatu disini,
terima kasih atas bantuan dan dorongannya.
Semoga bantuan yang telah diberikan kepada kepada penulis mendapatkan
imbalan dari Allah Yang Maha Pengasih.
Semarang, 28 Agustus 2017
Penulis
viii
ABSTRAK
Suprapto. 2017. Perbandingan Performansi Pencarian Jarak Terpendek
Menggunakan Algoritma A Star (A*) Dan Algoritma Dijkstra (Studi Kasus:
Pariwisata Kabupaten Pati). Skripsi, Jurusan Ilmu Komputer Fakultas Matematika
dan Ilmu Pengetahuan Alam Universitas Negeri Semarang. Pembimbing Utama:
Alamsyah, S.Si., M.Kom., dan Pembimbing Pendamping: Isa Akhlis S.Si., M.Si.
Kata kunci: Jarak Terpendek, A Star (A*), Dijkstra
Perjalanan dengan jarak terkecil dari lokasi awal ke lokasi tujuan
merupakan harapan para pengguna jalan. Hal ini menyebabkan pengguna jalan
harus mengetahui lintasan yang akan dilewati agar bisa memperkirakan lintasan
mana yang akan dilalui sehingga bisa ditemukan jarak yang terpendek. Pencarian
jarak terpendek dapat dikatakan juga menentukan lintasan yang paling optimal,
yaitu lintasan dengan jarak terpendek dan biaya terkecil.
Beberapa algoritma yang dapat digunakan untuk mencari jarak terpendek,
misalnya algoritma Dijkstra dan algoritma A Star (A*). Algoritma A Star (A*) adalah sebuah algoritma yang telah diperkaya dengan menerapkan suatu heuristik,
dengan membuang langkah-langkah yang tidak perlu dengan pertimbangan bahwa
langkah-langkah yang dibuang sudah pasti merupakan langkah yang tidak akan
mencapai solusi yang diinginkan. Algoritma Dijkstra adalah algoritma untuk
menemukan jarak terpendek dari satu titik ke titik lain di graf berbobot. Dalam
pencarian jarak terpendek algoritma Dijkstra bekerja dengan mencari bobot yang
paling minimal dari suatu graf berbobot. Tujuan penelitian ini untuk
membandingkan performansi antara algoritma A Star (A*) dan algoritma Dijkstra
adalah untuk mengetahui algoritma mana yang mempunyai performansi
komputasi lebih baik dalam menyelesaikan masalah pencarian jarak terpendek.
Berdasarkan hasil pengujian untuk setiap jarak lintasan yang ada. Hasil
performansi pencarian jarak terpendek menggunakan algoritma A Star (A*) dan
algoritma Dijkstra (1) Hasil pencarian lintasan terpendek memperlihatkan jarak
pencarian jarak terpendek algoritma A Star (A*) dan algoritma Dijkstra menghasilkan jarak yang sama, (2) Performansi penggunaan memori yang didapat
menunjukkan hasil yang sama besar yakni 0,0037155 MB, (3) Waktu eksekusi
yang diperlukan menggunakan algoritma A Star (A*) dan algoritma Dijkstra
menunjukkan adanya perbedaan yang tidak terlalu signifikan yakni waktu
eksekusi algoritma A Star (A*) lebih kecil dari pada algoritma Dijkstra, dengan
rata-rata 0,0057586 detik dan 0,011407058 detik.
Berdasarkan hasil pengujian membuktikan bahwa algoritma A Star (A*) memiliki performansi lebih baik dibandingkan dengan algoritma Dijkstra dalam hal waktu eksekusi sedangkan dalam pencarian jarak terpendek dan penggunaan
memori algoritma Dijkstra memiliki performansi yang sama baik.
ix
DAFTAR ISI
Halaman
HALAMAN JUDUL............................................................................................ i
PERNYATAAN .............................................................. ................................... ii
PERSETUJUAM PEMBIMBING .............................................................. ....... iii
PENGESAHAN .............................................................. ................................... iii
MOTTO DAN PERSEMBAHAN ...................................................................... v
PRAKATA .......................................................................................................... iv
ABSTRAK ......................................................................................................... viii
DAFTAR ISI ....................................................................................................... ix
DAFTAR TABEL ............................................................................................... xii
DAFTAR GAMBAR ....................................................................................... .. xiii
DAFTAR LAMPIRAN .................................................................................... .. xiv
BAB
1. PENDAHULUAN
1.1 Latar Belakang ........................................................................................ 1
1.2 Rumusan Masalah .................................................................................. 3
1.3 Batasan Masalah ...................................................................................... 3
1.4 Tujuan Penelitian ..................................................................................... 4
1.5 Manfaat Penelitian ................................................................................... 4
1.6 Sistematika Penulisan Skripsi ................................................................. 4
x
2. LANDASAN TEORI
2.1 Permasalahan Lintasan Terpendek .......................................................... 6
2.2 Jenis dan Data Geografis ......................................................................... 7
2.2.1 Representasi Data Spasial ..................................................................... 8
2.3 Performansi ............................................................................................. 11
2.4 Algoritma A Star (A*) ............................................................................. 12
2.4.1 Penerapan Algoritma A Star (A*) .......................................................... 12
2.5 Algoritma Dijkstra .................................................................................. 15
2.5.1 Penerapan Algoritma Dijkstra ............................................................... 15
2.6 Penelitian Terkait .................................................................................... 19
3. METODE PENELITIAN
3.1 Studi Pendahuluan ................................................................................... 22
3.1.1 Tempat dan Objek Penelitian ................................................................ 22
3.1.2 Variabel Penelitian ................................................................................ 22
3.2 Tahap Pengumpulan Data ........................................................................ 23
3.2.1 Studi Dokumentasi ................................................................................ 23
3.3 Tahap Pengembangan Aplikasi ............................................................... 23
3.3.1 Analisis Kebutuhan (Analysis) .............................................................. 24
3.3.1.1 Kebutuhan Fungsional ...................................................................... 24
3.3.1.2 Kebutuhan Non-Fungsional .............................................................. 24
3.3.2 Perancangan Aplikasi (Design) ............................................................. 25
3.3.2.1 Flowchart .......................................................................................... 25
3.3.3 Pengkodean (Code) .............................................................................. 28
xi
3.3.4 Pengujian (Test) .................................................................................... 28
4. HASIL DAN PEMBAHASAN
4.1 Hasil Penelitian ....................................................................................... 30
4.1.1 Data Pengamatan ................................................................................... 30
4.1.2 Aplikasi Pencarian Jarak Terpendek ..................................................... 30
4.1.2.1 Tampilan Aplikasi Pencarian Jarak Terpendek ................................. 31
4.1.2.1.1 Form Halaman Login ..................................................................... 31
4.1.2.1.2 Form Pengujian .............................................................................. 32
4.2 Hasil Pengujian ........................................................................................ 37
4.2.1 Pengujian Algoritma A Star (A*) .......................................................... 37
4.2.2 Pengujian Algoritma Dijkstra ............................................................... 41
4.2.3 Hasil Pengujian Performansi ................................................................. 45
4.2.3.1 Hasil Pengujian Jarak Terpendek ...................................................... 45
4.2.3.2 Hasil Pengujian Penggunaan Memori ............................................... 48
4.2.3.3 Hasil Pengujian Waktu Eksekusi ...................................................... 49
4.2.3.4 Hasil pengujian Titik ......................................................................... 51
4.3 Pembahasan .............................................................................................. 51
5. PENUTUP
5.1 Simpulan ................................................................................................. 53
5.2 Saran ........................................................................................................ 54
DAFTAR PUSTAKA ......................................................................................... 55
LAMPIRAN ........................................................................................................ 56
xii
DAFTAR TABEL
Tabel Halaman
4.1 Sampel Titik Koordinat ................................................................................. 35
4.2 Hasil Pengujian Titik Terhubung .................................................................. 36
4.3 Hasil Pengujian Pencarian Jarak Sebanyak Lima Kali ................................. 37
4.4 Hasil Pengujian Tiap Jarak Terpendek Algoritma Astar (A*) ...................... 40
4.5 Hasil Pengujian Jarak Terpendek Algoritma Dijkstra ................................. 44
4.6 Hasil Pengujian Jarak Terpendek Euclidian ................................................ 46
4.7 Hasil Pengujian Jarak Terpendek ................................................................. 47
4.8 Hasil Pengujian Penggunaan Memori .......................................................... 48
4.9 Hasil Pengujian Perbandingan Waktu Eksekusi .......................................... 50
4.10 Hasil Pengujian Perbandingan Titik ........................................................... 51
xiii
DAFTAR GAMBAR
Gambar Halaman
2.1 Sumber Data dalam SIG................................................................................ 8
2.2 Tampilan Data Titik, Garis, dan Luasan ....................................................... 9
3.1 Flowchart Algoritma A Star (A*) ............................................................... 26
3.2 Flowchart Algoritma Dijkstra ..................................................................... 27
4.1 Form Halaman Login ................................................................................. 31
4.2 Form Pengujian ........................................................................................... 32
4.3 Flowchart Pengujian .................................................................................. 33
4.4 Form Hasil Pengujian ................................................................................. 34
4.5 Ilustrasi Graf dengan 16 Titik ..................................................................... 38
4.6 Graf pencarian Jarak Terpendek Algoritma A Star (A*) ............................. 41
4.7 Ilustrasi Graf dengan 16 Titik ...................................................................... 42
4.8 Graf pencarian Jarak Terpendek Algoritma Dijkstra .................................. 45
4.9 Perbandingan Bobot Jarak Terpendek ........................................................ 47
4.10 Perbandingan Penggunaan Memori .......................................................... 49
4.11 Perbandingan Waktu Eksekusi .................................................................. 50
xiv
DAFTAR LAMPIRAN
Lampiran Halaman
1 Desain Form Halaman Login .......................................................................... 58
2 Desain Form Pengujian ................................................................................... 59
3 Kode Program Algoritma A Star (A*) .............................................................. 60
4 Kode Program Algoritma Dijkstra .................................................................. 62
5 Tabel Nilai Heuristik Dn Tabel Hitung Algoritma A Star (A*) ...................... 65
6 Tabel Hitung Algoritma Dijkstra .................................................................... 66
7 Tabel Hasil Hitung Algoritma A Star (A*) Dan Algoritma Dijkstra .............. 67
8 Tabel Titik Koordinat Lokasi .......................................................................... 71
9 Tabel Titik Terhubung ..................................................................................... 74
10 Laman Website Resmi Dinas Pekerjaan Umum Kabupaten Pati .................. 76
11 Laporan Daftar Induk Jalan Kabupaten Pati ................................................ 77
12 Surat Perizinan ............................................................................................. 88
1
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Melakukan suatu perjalanan misalnya perjalanan menuju suatu lokasi,
tentunya terdapat banyak lintasan menuju lokasi tujuan. Perjalanan dengan jarak
terkecil dari lokasi awal ke lokasi tujuan merupakan harapan para pengguna jalan.
Hal ini menyebabkan para pengguna jalan harus mengetahui lintasan yang akan
dilewati agar bisa memperkirakan lintasan mana yang akan dilalui sehingga bisa
ditemukan jarak yang terpendek. Kabupaten Pati memiliki banyak lokasi wisata
potensial yang bisa dioptimalkan. Banyak jenis wisata yang dapat di kunjungi
seperti wisata hiburan, wisata alam dan wisata religi. Dalam ilmu komputer, untuk
menentukan jarak terpendek di perlukan suatu algoritma. Beberapa algoritma
yang dapat digunakan untuk mencari jarak terpendek, misalnya Best First Search,
Greedy Search, Dijkstra dan A Star (A*).
Pengimplementasian algoritma A Star (A*) dalam menentukan jarak
terpendek menggunakan proses optimalisasi. Proses optimalisasi dilakukan
dengan memperhitungkan nilai perkiraan (heuristic) sehingga pencarian akan
berlangsung cepat karena pencarian jarak terpendek menjadi lebih terarah dengan
node yang diproses (Kusumadewi dkk, 2005: 57). Tetapi algoritma A Star (A*)
tidak menjamin selalu mendapatkan jarak terbaik (bobot terkecil) dari semua
2
lintasan yang ada. Hal ini terjadi karena algoritma A Star (A*) hanya menghitung
area yang dilalui saja dan area yang tidak dilalui diabaikan (Putra dkk, 2012: 84).
Algoritma pencarian jarak terpendek yang banyak digunakan adalah
algoritma Dijkstra. Algoritma Dijkstra merupakan algoritma untuk mencari
lintasan terpendek yang diterapkan pada graf berarah dan berbobot. Algoritma ini
lebih efisien dibandingkan algoritma Warshall, meskipun implementasinya juga
lebih sukar (Apri, 2013:15). Dalam penelitian yang sudah dilakukan menunjukkan
algoritma Dijkstra dapat melakukan pencarian jarak terpendek dari posisi titik
awal sampai titik akhir lokasi dengan keakuratan nilai jarak rata-rata 0.03%
terhadap pengukuran dengan Google Earth (Gusmão, 2013: 125). Dalam
pengimplementasiannya algoritma Dijkstra dapat menentukan jarak terpendek
dengan lebih efisien dibandingkan algoritma Floyd-Warshal dalam penggunaan
memori (Aprilliandi, 2013: 41). Berdasarkan penelitian dari Pugas (2011: 31)
didapatkan tingkat optimasi yang sama algoritma A Star (A*) dan algoritma
Dijkstra dalam pencarian jarak terpendek pada SIG berbasis web.
Berdasarkan uraian diatas dapat dikatakan bahwa algoritma A Star (A*) dan
algoritma Dijkstra memiliki tingkat optimasi yang baik dalam mencari jarak
terpendek. Akan tetapi perlu diteliti bagaimana performansi algoritma A Star (A*)
dan algoritma Dijkstra dalam mencari jarak terpendek. Melihat latar belakang
permasalahan tersebut, maka penelitian ini mengambil judul “Perbandingan
Performansi Pencarian Jarak Terpendek Menggunakan Algoritma A Star (A*) Dan
Algoritma Dijkstra (Studi Kasus: Jalan Pariwisata Kabupaten Pati)”.
3
1.2 Rumusan Masalah
Dari uraian latar belakang masalah diatas dapat dirumuskan permasalahan
yang ada yaitu bagaimana hasil perbandingan performansi komputasi yang lebih
baik antara algoritma A Star (A*) dan algoritma Dijkstra dalam menyelesaikan
masalah pencarian jarak terpendek?
1.3 Batasan Masalah
Pada penelitian ini diperlukan batasan-batasan agar tujuan penelitian dapat
tercapai. Adapun batasan masalah yang dibahas pada penelitian ini adalah:
a) Algoritma yang dipakai dalam pencarian jarak terpendek adalah algoritma A
Star (A*) dan algoritma Dijkstra.
b) Parameter perbandingan performansi yang digunakan dalam penelitian
adalah lintasan terpendek, waktu eksekusi dan memori yang digunakan dari
kedua algoritma saat melakukan pencarian jarak terpendek.
c) Objek yang digunakan sebagai data penelitian adalah data jalan lokasi
wisata yang ada di Kabupaten Pati.
d) Pencarian jarak terpendek akan dirancang dengan dibantu dengan software
Matlab r2009a.
e) Aplikasi ini belum memperhatikan kondisi riil jalan di Kabupaten Pati,
semua jalan dianggap lintasan dua arah dan tidak memperhatikan aturan
jalan.
4
1.4 Tujuan Penelitian
Adapun tujuan dari penelitian dengan membandingkan performansi antara
algoritma A Star (A*) dan algoritma Dijkstra adalah untuk mengetahui algoritma
mana yang mempunyai performansi komputasi lebih baik dalam menyelesaikan
masalah pencarian jarak terpendek.
1.5 Manfaat Penelitian
Adapun manfaat dari penelitian ini adalah untuk memberikan pengetahuan
tentang performansi komputasi algoritma mana yang lebih baik antara algoritma A
Star (A*) dan algoritma Dijkstra dalam menyelesaikan masalah pencarian jarak
terpendek.
1.6 Sistematika Skripsi
Sistematika penulisan untuk memudahkan dalam memahami alur pemikiran
secara keseluruhan skripsi. Penulisan skripsi ini secara garis besar di bagi menjadi
tiga bagian yaitu sebagai berikut:
a) Bagian Awal Skripsi
Bagian awal skripsi terdiri dari halaman judul, halaman pengesahan,
halaman pernyataan, halaman motto dan persembahan, abstrak, kata
pengantar, daftar isi, daftar gambar, daftar tabel dan daftar lampiran.
b) Bagian Isi Skripsi
Bagian isi skripsi terdiri dari lima bab yaitu sebagai berikut.
1. Bab 1: Pendahuluan
Bab ini terdiri atas latar belakang, rumusan masalah, batasan masalah,
tujuan dan manfaat penelitian serta sistematika skripsi.
5
2. Bab 2: Tinjauan Pustaka
Bab ini terdiri dari atas landasan teori, contoh kasus dan penelitian
terkait.
3. Bab 3: Metode Penelitian
Bab ini terdiri atas Studi Pendahuluan, Tahap Pengumpulan Data,
Tahap Pengembangan Sistem Uji Metode dan Perancangan Aplikasi
(Design).
4. Bab 4: Hasil dan Pembahasan
Bab ini terdiri atas hasil penelitian dan pembahasan penelitian.
5. Bab 5: Pentup
Bab ini terdiri atas simpulan dan saran.
c) Bagian Akhir Skripsi
Bagian akhir skripsi berisi daftar pustaka yang merupakan informasi
mengenai buku-buku, sumber-sumber dan referensi yang digunakan penulis
serta lampiran-lampiran yang mendukung dalam penulisan skripsi ini.
6
BAB 2
LANDASAN TEORI
2.1 Permasalahan Lintasan Terpendek (Short Path)
Menurut Rinaldi Munir (2010: 112) persoalan lintasan terpendek didalam
graf merupakan salah satu persoalan optimasi. Graf yang digunakan dalam
pencarian lintasan terpendek adalah graf berbobot (weighted graph), yaitu graf
yang setiap sisinya diberikan suatu nilai atau bobot. Bobot pada sisi graf dapat
dinyatakan sebagai jarak antar kota, ongkos pembangunan, dan sebagainya.
Asumsi yang digunakan adalah bahwa setiap bobot bernilai positif. Kata
“terpendek” jangan selalu diartikan secara fisik sebagai panjang minimum, sebab
kata “terpendek” berbeda-beda maknanya bergantung pada tipikal persoalan yang
akan diselesaikan. Namun, secara umum “terpendek” berati meminimalisasi bobot
pada suatu lintasan didalam graf.
Ada beberapa macam persoalan lintasan terpendek, antara lain :
a) Lintasan terpendek antara dua simpul tertentu (a pair shortets path).
b) Lintasan terpendek antara semua pasangan simpul (all pairs shortest path).
c) Lintasan terpendek dari simpul tertentu ke semua simpul yang lain
(singlesource shortest path).
d) Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul
tertentu (intermediate shortest path).
7
2.2 Jenis Dan Sumber Data Geografis
Data geografis pada dasarnya tersusun oleh dua komponen penting yaitu
data spasial dan data atribut. Data spasial merepresentasikan posisi, atau lokasi
geografis dari suatu objek di permukaan bumi, sedangkan data atribut
memberikan deskripsi atau penjelasan dari suatu objek. Data atribut dapat berupa
informasi numerik, foto, narasi, dan lain sebagainya, yang diperoleh dari data
statistik, pengukuran lapangan dan sensus, dan lain-lain. Data atribut dapat
dideskripsikan secara kualitatif dan kuantitatif. Pada pendeskripsian secara
kualitatif, kita mendeskripsikan tipe, klasifikasi, label suatu objek agar dapat
dikenal dan dibedakan dengan objek lain. Sesuai dengan perkembangan, peta
tidak hanya merepresentasikan objek-objek yang ada di muka bumi, tetapi
berkembang menjadi representasi objek di atas muka bumi (di udara) dan di
bawah permukaan bumi.
Data spasial dapat diperoleh dari berbagai sumber dalam berbagai format.
Sumber data spasial antara lain mencakup: data grafis peta analog, foto udara,
citra satelit, survei lapangan, pengukuran theodolit, pengukuran dengan
menggunakan global positioning systems (GPS) dan lain-lain. Adapun format data
spasial, secara umum dapat dikategorikan dalam format dijital dan format analog
(Ekadinata dkk, 2008: 3). Gambar 2.1 menunjukkan sumber data dalam SIG.
8
Gambar 2.1 Sumber Data dalam SIG (Ekadinata dkk, 2008)
2.2.1 Representasi Data Spasial
Untuk dapat dipergunakan dalam SIG, data spasial perlu dikonversi ke
dalam format dijital. Dalam format dijital, terdapat dua model representasi data,
yaitu:
a) Model Vektor
Model vektor menampilkan, menempatkan, dan menyimpan data
spasial dengan menggunakan titik-titik, garis-garis, dan kurva atau poligon
beserta atribut-atributnya. Bentuk dasar model vektor didefinisikan oleh
sistem koordinat Kartesius dua dimensi (x,y).
9
Dengan menggunakan model vektor, objek dan informasi di
permukaan bumi dilambangkan sebagai titik, garis, atau poligon. Masing-
masing mewakili tipe objek sebagaimana dijelaskan sebagai berikut :
1) Titik (point) : merepresentasikan objek spasial yang tidak memiliki
dimensi panjang dan/atau luas. Fitur spasial direpresentasikan dalam
satu pasangan koordinat x,y. Contohnya stasiun curah hujan, titik
ketinggian, observasi lapangan, titik-titik sampel.
2) Garis (line/segment) : merepresentasikan objek yang memiliki dimensi
panjang namun tidak mempunyai dimensi area, misalnya jaringan
jalan, pola aliran, garis kontur.
3) Poligon : merepresentasikan fitur spasial yang memiliki area,
contohnya adalah unit administrasi, unit tanah, zona penggunaan
lahan.
Gambar 2.2 menunjukkan gambar tampilan data titik, garis, dan
luasan yang mewakili tipe objek.
Gambar 2.2 Tampilan Data Titik, Garis, dan Luasan
10
b) Model Data Raster
Model data raster menampilkan, menempatkan, dan menyimpan data
spasial dengan menggunakan struktur matriks atau piksel-piksel yang
membentuk grid (bidang referensi horizontal dan vertikal yang terbagi
menjadi kotak-kotak). Piksel adalah unit dasar yang digunakan untuk
menyimpan informasi secara eksplisit. Setiap piksel memiliki atribut
tersendiri, termasuk koordinatnya yang unik. Akurasi model ini sangat
tergantung pada resolusi atau ukuran piksel suatu gambar.
Model raster memberikan informasi spasial apa saja yang terjadi di
mana saja dalam bentuk gambaran yang digeneralisasi. Dengan model
raster, data geografi ditandai oleh nilai-nilai elemen matriks dari suatu objek
yang berbentuk titik, garis, maupun bidang (Ekadinata dkk, 2008: 4).
Gambar 2.3 merupakan gambar model data vektor dan raster.
11
Gambar 2.3 Tampilan Model Data Vektor dan Raster (Ekadinata,
dkk, 2008)
2.3 Performansi
Pengertian kinerja (performansi) menurut Kamus Besar Bahasa Indonesia
adalah merupakan kata benda (n) yang artinya: 1. Sesuatu yang dicapai, 2.
Prestasi yang diperlihatkan, 3. Kemampuan kerja (tentang peralatan). Dalam
penelitian ini yang dimaksud performansi adalah seberapa cepat komputer
12
memproses suatu program atau aktivitas tertentu. Performansi dalam penelitian ini
adalah seberapa cepat komputer dapat memproses algoritma dalam aplikasi
pencarian jarak terpendek menggunakan Matlab. Perbandingan performansi yang
di uji antara lain: performansi pencarian jarak terpendek, performansi penggunaan
memori dan performansi waktu eksekusi.
2.4 Algoritma A Star (A*)
Algoritma A Star (A*) adalah sebuah algoritma yang telah diperkaya dengan
menerapkan suatu heuristik, algoritma ini membuang langkah-langkah yang tidak
perlu dengan pertimbangan bahwa langkah-langkah yang dibuang sudah pasti
merupakan langkah yang tidak akan mencapai solusi yang diinginkan dengan
menerapkan suatu heuristik. Heuristik adalah nilai yang memberi nilai pada tiap
simpul yang memandu algoritma A Star (A*) mendapatkan solusi yang
diinginkan. Dengan heuristik, maka algoritma A Star (A*) pasti akan mendapatkan
solusi (jika memang ada solusinya) (Kusumadewi dkk, 2005: 76). Algoritma A
Star (A*) mempunyai waktu komputasi yang cepat. Hal ini yang menyebabkan
algoritma A Star (A*) sangat populer dikalangan developer sebagai algoritma
shortest path yang baik (Aini, 2012: 43). Algoritma A Star (A*) memiliki beban
komputasi dan waktu simulasi yang paling kecil dibandingkan dengan algoritma
Floyd-Warshal (Aprilliandi, 2013: 41).
2.4.1 Penerapan Algoritma A Star (A*)
Menurut Russel & Norvig (2003: 45), algoritma A Star (A*) memiliki lima
komponen utama, yaitu: node awal, node goal, open list, closed list dan cost.
Node awal merupakan titik awal dari posisi saat ini, sedangkan node goal
13
merupakan titik akhir atau dapat juga disebut titik tempat tujuan. Cost merupakan
nilai dari jarak yang telah ditempuh untuk sampai ke tempat tujuan. Open list ini
berupa sebuah priority queen, dimana setiap node yang masuk pertama akan
dikeluarkan pertama dengan syarat tertentu. Closed list ini berupa sebuah stack
(tumpukan), dimana node yang terakhir dimasukkan akan dikeluarkan pertama
kali. Selain sebagai penampung node yang telah dilewati, closed list ini juga
digunakan untuk mendapatkan jarak terdekat saat node goal sudah dicapai.
Algoritma A Star (A*) menggunakan dua antrian, yaitu Open dan Close.
Dimulai dengan titik awal dijadikan antrian prioritas titik untuk dilalui, dikenal
sebagai Open set. Semakin rendah cost untuk suatu simpul x, semakin tinggi
prioritas. Pada setiap langkah dari algoritma A Star (A*) simpul dengan cost
tertinggi maka akan dihapus dari antrian, f dan h nilai-nilai tetangganya diperbarui
sesuai dengan relasi pada graf dan tetangga ini ditambahkan ke antrian .
Algoritma A Star (A*) akan terus mencari sampai titik tujuan yang memiliki nilai f
lebih rendah dengan menggunakan nilai heuristik untuk mempersempit ruang
pencarian yaitu dengan membatasi vertex yang akan diuji pada setiap
percabangan. Jika sudah sampai ke titik tujuan maka algoritma A Star (A*) akan
menjumlahkan panjang path yang sebenarnya (Coppin, 2004: 74).
Algoritma memeriksa node dengan menggabungkan yaitu cost yang
dibutuhkan untuk mencapai sebuah node dan , yaitu cost yang di dapat dari
node ke tujuan. Sehingga didapatkan rumus dasar dari algoritma A Star (A*)
adalah:
14
......(1)
Dimana:
fungsi evaluasi node/ titik n
estimasi biaya untuk sampai pada suatu tujuan mulai dari n
cost yang sudah dikeluarkan dari node/ titik awal sampai ke
node n
Untuk menentukan nilai h(n) ditunjukkan oleh persamaan :
.....(2)
dimana :
nilai heuristic untuk node/ titik n
nilai koordinat x dari node/ titik n
nilai koordinat y dari node/ titik n
nilai koordinat x dari node/ titik tujuan
nilai koordinat y dari node/ titik tujuan
Dalam notasi standar yang dipakai untuk algoritma A Star (A*) pada rumus
persamaan (1), digunakan g(n) untuk mewakili cost jarak dari node awal ke node
n. Lalu h(n) mewakili perkiraan cost dari node n ke node goal, yang dihitung
dengan fungsi heuristik. Algoritma A Star (A*) menyeimbangkan kedua nilai ini
dalam mencari jalan dari node awal ke node goal (Ilham, 2011: 78).
Berikut terminologi dasar yang terdapat pada algoritma A Star (A*):
1) Starting point sebagai posisi awal sebuah benda.
15
2) Current adalah simpul yang sedang dijalankan pada algoritma
pencarian jarak terpendek.
3) Simpul adalah petak kecil atau pixel sebagai representasi dari arah path
finding. Bentuknya dapat berupa persegi, lingkaran, maupun segitiga.
4) Open list adalah tempat menyimpan data simpul yang mungkin diakses
dari starting point maupun simpul yang sedang dijalankan.
5) Closed list adalah tempat penyimpanan data simpul sebelum current
yang juga merupakan bagian dari lintasan terpendek yang telah
berhasil diciptakan.
6) “f” adalah nilai yang diperoleh dari penjumlahan. ”g” merupakan
jumlah nilai tiap simpul dalam lintasan terpendek dari titik awal ke
current dan “h” merupakan jumlah nilai perkiraan dari sebuah simpul
ke simpul tujuan. Sehingga dapat diformulasikan dengan f(n) = g(n) +
h(n).
7) Simpul tujuan adalah simpul yang dituju.
8) Halangan adalah sebuah atribut yang menyatakan bahwa sebuah
simpul tidak dapat dilalui oleh current.
Prinsip algoritma A Star (A*) yaitu melintasi semua graf yang berhubungan
dengan starting point, mengurutkan cost terkecil dengan memperhatikan cost (f)
kedalam antrian graf yang dilalui (Pratama & Putra, 2011: 89). Jika pada titik
tertentu segmen lintasan yang dilalui memiliki biaya yang lebih tinggi dari
segmen lintasan yang lain yang sedang dihadapi, maka A Star (A*) akan
meninggalkan lintasan dengan cost yang lebih tinggi.
16
2.5 Algoritma Dijkstra
Algoritma Dijkstra adalah algoritma untuk menemukan jarak terpendek dari
satu titik ke titik lain di graf berbobot. Jarak yang ada diantara titik adalah bobot
dari setiap tepi pada grafik itu. Algoritma Dijkstra dapat digunakan untuk
menyelesaikan graf berarah, namun benar untuk menyelesaikan graf tak berarah
(Rinaldi Munir, 2010: 124). Pencarian jarak terpendek termasuk kedalam materi
teori graf. Algoritma Dijkstra sangat terkenal untuk menyelesaikan persoalan
pencarian lintasan terpendek. Algoritma ini ditemukan oleh seorang ilmuwan
komputer berkebangsaan belanda yang bernama Edsger W Dijkstra.
2.5.1 Penerapan Algoritma Dijkstra
Algoritma Dijkstra membutuhkan parameter tempat asal dan tempat tujuan.
Hasil akhir algoritma Dijkstra adalah jarak terpendek dari tempat asal ke tempat
tujuan beserta jaraknya. Jika menggunakan algoritma Dijkstra untuk menentukan
lintasan terpendek dari suatu graf, maka akan menemukan lintasan yang terbaik.
Hal ini dikarenakan algortima Dijkstra menganalisis bobot dari verteks yang
belum terpilih, lalu dipilih verteks dengan bobot terkecil. Algoritma Dijkstra
mencari jarak terpendek dari verteks asal ke verteks terdekatnya, kemudian ke
verteks kedua, dan seterusnya.
Ada beberapa kasus pencarian lintasan terpendek yang diselesaikan
menggunakan algoritma Dijkstra, yaitu:
1) Pencarian lintasan terpendek antara dua buah simpul tertentu (a pair
shortest path).
17
2) Pencarian lintasan terpendek dari simpul tertentu ke semua simpul
yang lain (single source shortest path).
3) Pencarian lintasan terpendek antara dua buah simpul yang melalui
beberapa simpul tertentu (intermediate shortest path).
Lintasan dari simpul asal haruslah merupakan lintasan terpendek diantara
semua lintasannya ke simpul-simpul yang belum terpilih. Dengan kata lain
strategi dari algoritma ini adalah mengambil lintasan yang memiliki bobot
minimum yang menghubungkan sebuah simpul yang sudah terpilih dengan simpul
yang belum terpilih. Lintasan dari simpul asal ke simpul yang baru haruslah
merupakan lintasan terpendek diantara semua lintasannya ke semua simpul-
simpul yang belum terpilih.
Input algoritma ini adalah sebuah graf yang berarah yang berbobot
(weighted directed graph) G dan sebuah sumber vertices s dan dalam G dan V
adalah himpunan semua vertices dalam graf G.
G = ( V , E ) .....(3)
Dimana : G= Graf
V= Vertices (titik)
E= Edge (jarak)
Dalam pencarian lintasan terpendek algoritma Dijkstra bekerja dengan
mencari bobot yang paling minimal dari suatu graf berbobot. Jarak terpendek akan
diperoleh dari dua atau lebih titik dari suatu graf dan nilai total yang didapat
adalah yang bernilai paling kecil. Misalkan G adalah graf berarah berlabel dengan
titik-titik V(G) = { ,…, } dan jarak terpendek yang dicari adalah dari
18
ke . Proses algoritma Dijkstra dimulai dari titik Dalam iterasinya algoritma
Dijkstra akan mencari satu titik yang jumlah bobotnya dari titik 1 memiliki nilai
terkecil. Titik-titik yang terpilih dipisahkan, dan titik-titik tersebut tidak
diperhatikan lagi dalam iterasi berikutnya.
Langkah-langkah dalam menentukan lintasan terpendek pada algoritma
Dijkstra yaitu:
1) Pada awalnya pilih titik sumber sebagai titik awal, diinisialisasikan
dengan “1‟.
2) Bentuk tabel yang terdiri dari titik, status, bobot, dan predecessor.
Lengkapi kolom bobot yang diperoleh dari jarak titik sumber ke semua
titik yang langsung terhubung dengan titik sumber tersebut.
3) Jika titik sumber ditemukan maka tetapkan sebagai titik terpilih.
4) Tetapkan titik terpilih dengan label permanen dan perbaharui titik yang
langsung terhubung.
5) Tentukan titik sementara yang terhubung pada titik yang sudah terpilih
sebelumnya dan merupakan bobot terkecil dilihat dari tabel dan
tentukan sebagai titik terpilih berikutnya.
6) Apakah titik yang terpilih merupakan titik tujuan?. Jika ya, maka
kumpulan titik terpilih atau predecessor merupakan rangkaian yang
menunjukkan lintasan terpendek.
19
2.6 Penelitian Terkait
Penelitian yang terkait digunakan untuk referensi agar dikembangkan oleh
peneliti selanjutnya. referensi terkait mempunyai keterkaitan metode dan objek
penelitian terhadap penelitian yang akan dilakukan. Berikut beberapa penelitian
yang terkait dengan penelitian yang akan dibuat:
1) Aini (2012:87) dalam skripsinya yang berjudul “Analisis Algoritma A Star
(A*) Dan Implementasinya Dalam Pencarian Jalur Terpendek Pada Jalur
Lintas Sumatera Di Provinsi Sumatera Utara”. Menjelaskan tentang
algoritma A Star (A*) yang diimlementasikan dalam pencarian lintasan
terpendek lalulintas dengan menerapkan algoritma tersebut kedalam Matlab
(Matrix Laboratory), menghasilkan hasil yang menjanjikan. Dalam mencari
solusi yang optimal, algoritma A Star (A*) sangat bergantung kepada fungsi
heuristik yang digunakan. algoritma A Star (A*) merupakan algoritma yang
dapat menjamin bahwa solusi yang ditemukan adalah optimal. Aplikasi
Sistem Pencarian Lintasan Terpendek dengan menggunakan algoritma A
Star (A*) dapat menunjukkan lintasan terpendek antara dua verteks yang
diinginkan.
2) Siregar (2013:76) dalam skripsinya yang berjudul “Perancangan Sig
Berbasis Web Objek Wisata Kota Binjai Dengan Algoritma A*”.
Menerapkan algoritma A Star (A*) pada Mapserver. Mapserver merupakan
perangkat lunak open source dan sekaligus freeware yang dapat digunakan
untuk menampilkan data spasial (peta dijital) pada halaman web. Mapserver
dikembangkan di Universitas Minesotta (UMN). Mapserver digunakan
20
sebagai tools visualisasi data SIG (terutama data vektor) yang
memungkinkan penggunaan layanan web, sementara Imageview dipakai
sebagai tools visualisai khusus untuk citra (dijital) satelit dan data-data tipe
raster lainnya. Hasil dari penetitian tersebut adalah Sistem dapat
menunjukkan rute terpendek dari suatu titik dengan ke titik lainnya dengan
mengimplementasikan algoritma A Star (A*) pada web SIG. Dengan
menggunakan sistem ini pengguna dapat lebih efektif dan efisien dalam
menentukan rute terpendek objek wisata yang diinginkan. Sistem dapat
menggambarkan rute jalan mendekati rute jalan yang sesungguhnya seperti
objek wisata, persimpangan yang dilalui dan panjang jalan tersebut.
3) Gusmao (2013: 127) dalam jurnalnya yang berjudul “Sistem Informasi
Geografis Pariwisata Berbasis Web Dan Pencarian Jalur Terpendek
Dengan Algoritma Dijkstra”. Menjelaskan tentang usulan penggunaan
algoritma Dijkstra digunakan untuk pencarian lintasan terpendek yang
kemudian dibandingkan dengan hasil pencarian lintasan terpendek
menggunakan Google Earth dengan hasil algortima Dijkstra dapat
melakukan pencarian lintasan terpendek dari posis titik awal sampai titik
akhir lokasi dengan keakuratan nilai jarak rata-rata 0.03% terhadap
pengukuran dengan Google Earth. Serta menampilkan rute perjalanan dan
waktu tempuh.
4) Fitria & Triansyah (2013: 112) dalam skripsinya yang berjudul
“Implementasi Algoritma Dijkstra Dalam Aplikasi Untuk Menentukan
Lintasan Terpendek Jalan Darat Antar Kota Di Sumatera Bagian”.
21
Melakukan penelitian dengan menggunakan algoritma Dijkstra dalam
pencarian jarak antar kota terpendek, kota tujuan dapat ditempuh melalui
beberapa lintasan. Hasil yang diperoleh dalam penelitian ini setelah
dilakukan pengujian terhadap program dan hasilnya cukup memuaskan,
Algoritma Dijkstra dapat digunakan untuk mencari rute terpendek secara
optimal. Dengan menggunakan program ini dapat mempercepat dalam
menentukan rute terpendek. Program ini menawarkan beberapa kemudahan
dalam menyusun peta secara dinamik sehingga apabila terdapat perubahan
kondisi pada peta, program dapat menyesuaikan dengan kondisi baru.
5) Pramudya (2015: 99) dalam jurnalnya yang berjudul “Penggunaan
Algoritma Dijkstra Dalam Perencanaan Rute Evakuasi Bencana Longsor Di
Kota Semarang”. Menjelaskan tentang pengimplementasian algoritma
Dijkstra sebagai Sistem Informasi Geografis (SIG) lintasan evakuasi,
pengumpulan data menggunakan network analyst. Penghitungan manual
dilakukan untuk membuktikan bahwa jarak yang dihasilkan adalah valid
dengan mengambil titik lain selain titik bencana dan titik shelter.
Penggunaan avenue script pada arcview dimodifikasi sehingga dapat
digunakan sebagai dasar dalam pembangunan sistem. Hasil dari penelitian
ini adalah sistem informasi geografis yang dapat digunakan untuk mencai
rute tercepat. Dalam sistem ini pengguna dapat mengakses fitur network
analyst untuk mencari rute tercepat. Rute yang telah dihasilkan dapat dicetak
sebagai penunjuk jalan saat proses evakuasi berlangsung.
22
6) Finsa (2013: 67) melakukan penelitian skripsi yang berjudul ”Perbandingan
Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur
Terpendek”, penelitian yang bertujuan membandinkan keefektifan algoritma
Dijkstra dan algoritma ant colony dipublikasikan oleh Jurusan Teknik
Elektro Konsentrasi Rekayasa Komputer Fakultas Teknik, Universitas
Brawijaya. Penelitian yang dilakukan adalah menerapkan menerapkan
algoritma Dijkstra dan algoritma ant colony dalam penentuan lintasan
terpendek. Perbandingan yang di lakukan adalah jarak terpendek,
perbandingan penggunaan memori, dan perbandingan kompleksitas waktu.
53
BAB 5
PENUTUP
5.1 Kesimpulan
Dalam pengujian pencarian jarak terpendek menggunakan algoritma A Star
(A*) dan algoritma Dijkstra menghasilkan jarak lintasan yang sama. Akan tetapi
waktu eksekusi algoritma A Star (A*) berbeda dengan algoritma Dijkstra dimana
algoritma A Star (A*) lebih cepat untuk proses pencarian jarak terpendek.
Berdasarkan hasil performansi dari kedua algoritma dalam menyelesaikan
pencarian jarak terpendek lokasi wisata di kabupaten Pati, dapat ditarik
kesimpulan bahwa algoritma A Star (A*) mempunyai performansi yang lebih baik
dari algoritma Dijkstra dengan selisih waktu eksekusi rata-rata 0,000498944 detik.
Algoritma A Star (A*) mendapatkan waktu eksekusi lebih cepat dibandingkan
dengan algoritma Dijkstra saat melakukan proses komputasi. Waktu rata-rata
algoritma A Star (A*) 0,005171 detik sedangkan waktu rata-rata algoritma
Dijkstra 0,005669944 detik.
54
5.2 Saran
Dari beberapa kesimpulan yang telah diambil, maka dapat dikemukakan
beberapa saran yang dapat membantu untuk penelitian mengenai pencarian jarak
terpendek selanjutnya:
1. Diharapkan aplikasi dapat dikembangkan, sehingga tidak hanya mencari
shortest path antara dua titik lokasi tapi juga dapat mencari real shortest
path sesuai aturan lintasan di darat.
2. Diharapkan pencarian lintasan terpendek dengan algoritma A Star (A*) tidak
hanya dengan menggunakan fungsi heuristik jarak euclidian saja, tetapi
dapat menggunakan fungsi heuristik yang lain.
3. Diharapkan aplikasi dapat dibuat dalam bentuk aplikasi yang lebih menarik
dan lebih mudah digunakan seperti misalnya aplikasi mobile atau dekstop.
4. Aplikasi dapat dikembangkan dan ada beberapa algoritma pencarian jarak
terpendek lainnya jika pembaca ingin membandingkan.
55
DAFTAR PUSTAKA
Aini, D. Y. 2012. Analisis Algoritma A Star (A*) dan Implementasinya dalam Pencarian Jalur Terpendek pada Jalur Lintas Sumatera di provinsi Sumatera Utara. Skripsi. Medan. Universitas Sumatera Utara.
Aprilliandi, I. 2013. Implementasi Algoritma A* Pada Aplikasi Android Penentu Rute Terpendek Bus Transjakarta. Tesis. Pascasarjana Universitas
Multimedia Nusantara.
Ashari, I. A., M. A. Muslim, & Alamsyah. 2016. Comparison Performance of
Genetic Algorithm and Ant Colony Optimization in Course Scheduling
Optimizing. Scientific Journal of Informatics, 3(3): 149-158.
Coppin, B. 2004. Artificial Intelligent Illuminated. Jones and Bartlett
Publishers. Dulbahri.1993. Sistem Informasi Geografis. Jakarta: Gramedia
Djojo, M. A. 2013. Pengukuran Beban Komputasi Algoritma Dijkstra, A*, dan
Floyd-Warshall pada Perangkat AndroidPengembangan aplikasi pencarian
rute terpendek dengan metode algoritma A* berbasis web. Jurnal ULTIMA Computing, 1(1): 13-17.
Ekadinata, & Sonya dkk. 2008 : Sistem Informasi GIS Untuk Pengelolaan Bentang Lahan Berbasis Sumber Daya Alam. Bogor: World Agroforestry
Centre ICRAF South East Asia Regional Office.
Finsa, F. 2013. Perbandingan Algoritma Dijkstra dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek. Skripsi. Malang: Universitas Brawijaya.
Fitria & Triansyah, A. 2013. Implementasi Algoritma Dijkstra Dalam Aplikasi
Untuk Menentukan Lintasan Terpendek Jalan Darat Antar Kota Di
Sumatera Bagian Selatan. Jurnal Sistem Informasi, 5(10): 101-119.
Gusmão & António. 2013. Sistem Informasi Geografis Pariwisata Berbasis
Web Dan Pencarian Jalur Terpendek Dengan Algoritma Dijkstra. Jurnal EECCIS, 7(5): 125 – 130.
Ilham, R., Soetedjo, A. & Faisal, A. 2011. Pengembangan aplikasi pencarian
rute terpendek dengan metode algoritma A* berbasis web. Jurnal Elektro ELTEX , 2(2): 76-80.
Kusumadewi, Ida & Purnomo, H. 2005. Penyelesaian Masalah Optimisasi dengan Teknik-teknik Heuristik.Yogyakarta: Graha Ilmu.
56
Munir, R. 2010. Matematika Diskrit Edisi Ketiga.Bandung: Informatika
Bandung.
Pratama, R. P. 2011. Perbandingan Algoritma A* dan Dijkstra Berbasis Web GIS untuk Pencarian Rute Terpendek. Skripsi. Bandung: UPI.
Pressman, R. S. 2002. Rekayasa Perangkat Lunak. Yogyakarta: Andi.
Pugas, D. O., M. Somantri, & K. I. Satoto. 2011. Aplikasi Pencarian Rute
Terpendek Menggunakan Algoritma Dijkstra dan A Star (A*) pada SIG
berbasis web untuk pemetaan pariwisata kota Sawahlunto. TRANSMISI 13,
(1): 27-32.
Putra, R. D., M. Aswin, & W. Djuriatno. 2012. Pencarian rute terdekat pada
labirin menggunakan metode A*. Jurnal EECCIS, 6(2): 27-32.
Pramudya, R. A. 2015. Penggunaan Algoritma Dijkstra Dalam Perencanaan
Rute Evakuasi Bencana Longsor di Kota Semarang. Journal of Geomatics and Planning, 2(2): 93-102.
Russell, S. J. & Norvig, P. 2003. Artificiall Intelligence A Modern Approach.
New Jersey: Prentice Hall.
Siregar, Z. 2013. Perancangan Sig Berbasis Web Objek Wisata Kota Binjai Dengan Algoritma A. Skripsi. Medan. Universitas Sumatera Utara.
Sugiyono. 2013. Metode Penelitian Kuantitatif, Kualitatif dan R&D. Bandung:
Alfabeta.