SISTEM PENCARIAN JALUR TERCEPAT UNTUK AMBULANS MENGGUNAKAN ALGORITMA A* (A STAR)
SKRIPSI
FHILIEN SOFIA BR MUNTHE 101402097
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
SISTEM PENCARIAN JALUR TERCEPAT UNTUK AMBULANS
MENGGUNAKAN ALGORITMA A* (A STAR)
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi
FHILIEN SOFIA BR MUNTHE
101402097
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul : SISTEM PENCARIAN JALUR TERCEPAT
UNTUK AMBULANS MENGGUNAKAN
ALGORITMA A* (A STAR)
Kategori : SKRIPSI
Nama : FHILIEN SOFIA BR MUNTHE
Nomor Induk Mahasiswa : 101402097
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM-TI) UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dedy Arisandi, S.T., M.Kom Sajadin Sembiring, S.Si., M.Comp.Sc
NIP 19790831200912 1 002 NIP -
Diketahui/Disetujui oleh
Program Studi S1 Teknologi Informasi Ketua,
PERNYATAAN
SISTEM PENCARIAN JALUR TERCEPAT UNTUK AMBULANS
MENGGUNAKAN ALGORITMA A* (A STAR)
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 10 September 2015
iv
UCAPAN TERIMA KASIH
Segala puji dan syukur penulis sampaikan kepada Tuhan Yesus Kristus yang telah memberikan berkat-Nya yang melimpah sehingga penulis dapat menyelesaikan skripsi ini dengan baik untuk memperoleh gelar Sarjana Komputer, Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.
Dengan segala kerendahan hati penulis ucapkan terima kasih kepada:
1. Ayah penulis, Ludin Munthe,S.Pd., ibu penulis, Tiarmasita Istanaria Sitopu, S.Pd., M.Pdk., adik penulis, Ewis Sofia Munthe, abang tua penulis Raja Huida Munthe, S.P., kakak ipar penulis, Merna Lista, A. Md.Pel., kakak penulis, Lenta Sari Munthe, abang ipar penulis Jendri Mandalahi dan abang terkasih Jefri Sitepu, yang telah memberikan doa dan dukungan moral kepada penulis untuk menyelesaikan skripsi ini beserta keluarga besar yang telah turut mendoakan penulis.
2. Bapak Sajadin Sembiring, S.Si,. M.Comp.Sc. dan bapak Dedy Arisandi, ST., M.Kom. selaku dosen pembimbing penulis yang telah meluangkan waktu, pikiran, saran, dan kritiknya untuk penulis dalam menyelesaikan skripsi ini. 3. Bapak Drs.Sawaluddin M.IT. dan bapak Dani Gunawan, S.T., M.T., yang telah
bersedia menjadi dosen penguji dan memberikan saran dan kritik yang membangun dalam penyelesaian skripsi ini.
4. Ketua dan Sekretaris Program Studi S1 Teknologi Informasi, Bapak M. Anggia Muchtar, S.T., MM.IT. dan Bapak Mohammad Fadly Syahputra, B.Sc., M.Sc.IT.
5. Seluruh dosen yang mengajar serta staf Tata Usaha Program Studi Teknologi Informasi Universitas Sumatera Utara.
6. Sahabat kecil yang selalu mendukung dan memberi semangat kepada penulis, Citra Simanjorang, Amd., Delyana Simanjorang. Sahabat kampus penulis yang selalu setia menemani sampai penulis lulus, Yosepine F. Barus, S.Kom., Fitra Maulida, S.Kom., Rabiatul Adawiyah Daulay, S.TI., Nency Lestari Harahap, Ilda Karina Pohan. Dan yang memberikan kontribusi yang sangat berarti dalam penyelesaian skripsi ini, Anggreiny WAF Ginting, S.TI., Regina Mutiara, S.S., organisasi JHO INTEGRITY. Serta sahabat-sahabat phytagoras band Dirman Sigiro, S.E., Yuniarty Bangun, S.E., Heysar Bastand Ginting dan muda-mudi GKPS Garingging yang turut mendoakan.
7. Seluruh rekan kuliah sejawat yang tidak dapat disebutkan satu persatu.
ABSTRAK
Ambulans merupakan kendaraan untuk mengangkut orang sakit atau dalam keadaan
darurat lainnya. Selain membutuhkan waktu sesingkat mungkin dalam beroperasi,
ambulans juga membutuhkan informasi keadaan jalan yang akan dilaluinya agar tidak
terjebak dalam kondisi jalan sehingga ambulans dapat berfungsi secara optimal.
Algoritma A Star (A*) dapat diimplementasikan dalam membangun sebuah sistem informasi agar ambulans dapat sampai ke tujuan dengan waktu sesingkat mungkin.
Adapun sistem yang akan dibangun adalah berbasis Web, dengan hasil (output) berupa jalur tercepat dari titik rumah sakit (penyedia ambulans) ke alamat pasien,
dalam bentuk Google Map. Dengan memanfaatkan GIS (Geographic Information System) pada sistem, maka aplikasi ini dapat memudahkan pengguna dalam mencari jalur tercepat yang akan dilalui ambulans dengan menghindari kemacetan yang ada
pada titik jalan tertentu.
vi
Quickest Route Searching System For Ambulances Using A* (A Star) Algorithm ABSTRACT
Ambulances are vehicles to deliver patients or to be used in other urgencies. They do not only need shortest time of operation but Ambulances also need traffic information so that the ambulances can operate optimally. A Star (A*) Algorithm can be implemented in developing an information system for the ambulances to reach the destination as fast as possible. The system that is going to be developed is Web based, and the result is closest track from spots of Hospitals (ambulance providers) to patient’s address in the form of Google Map. By using GIS ( Geographic Information System) in the system, this application may facilitate users in finding the quickest route for the ambulances by avoiding traffic jams which occur in certain spots on the road.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Ucapan Terimakasih iv
Abstrak v
Abstrac vi
Daftar Isi vii
Daftar Tabel x
Daftar Gambar xi
Bab 1 Pendahuluan
1.1. Latar Belakang 1
1.2. Rumusan Masalah 3
1.3. Tujuan Penelitian 4
1.4. Batasan Masalah 4
1.5. Manfaat Penelitian 4
1.6. Metodologi Penelitian 5
1.7. Sistematika Penulisan 6
Bab 2 Landasan Teori
2.1. Definisi Ambulans 7
2.2. Permasalahan Lintasan Terpendek (Shortest Path) 7
2.3. Pengertian Algoritma A Star (A*) 8
2.4. Google Maps API (Application Programming Interface) 10
2.5. GIS (Geographic Information System) 11
viii
Bab 3 Analisis dan Perancangan Sistem
3.1. Arsitektur Umum 17
3.2. Data Yang Digunakan 18
3.3. Pemrosesan Data 19
3.4. Uji Coba Dengan Algoritma A Star (A*) 19
3.5 Analisis Sistem 22
3.5.1. Use Case 22
3.5.2. Data Flow Diagram (DFD) 23
3.5.3. Perancangan Database 24
3.5.4. User Interface 26
3.5.4.1. Rancangan Tampilan Halaman Login 26
3.5.4.2. Rancangan Tampilan Halaman Peta 26
3.5.4.3. Rancangan Tampilan Halaman Titik 27
3.5.4.4. Rancangan Tampilan Halaman Relasi Titik 27
3.5.4.5. Rancangan Tampilan Hasil 28
3.5.5. Proses KerjaSistem 28
Bab 4 Implementasi Dan Pengujian Sistem
4.1. Implementasi Sistem 30
4.1.1 Spesifikasi Perangkat Keras dan Lunak Yang Digunakan 30
4.1.2. Implementasi Perancangan Antarmuka 30
a. Halaman Home 30
b. Halaman Peta 31
c. Halaman Titik 31
d. Halaman Relasi Titik 32
4.2. Pengujian Sistem 33
4.2.1 Pengujian Pada Proses Yang Dilakukan Sistem 33
a. Halaman Peta/Hasil 33
b. Halaman Titik 34
c. Halaman Relasi Titik 36
Bab 5 Kesimpulan Dan Saran
5.1. Kesimpulan 38
5.2. Saran 38
DAFTAR PUSTAKA 39
LAMPIRAN 1. Data Titik Koordinat Persimpangan Jalan 41
LAMPIRAN 2. Data Titik Koordinat Rumah Sakit 44
LAMPIRAN 3. Data Relasi Titik 45
x
DAFTAR TABEL
Halaman
Tabel 2.1 Peneliti Terdahulu 14
Tabel 2.1 Peneliti Terdahulu (lanjutan) 15
Tabel 2.1 Peneliti Terdahulu (lanjutan) 16
Tabel 3.1 Keterangan DFD level 0 Sistem Pencarian Jarak Terdekat Ambulans 24
Tabel 3.2 Rancangan Tabel Titik Koordinat 25
Tabel 3.3 Rancangan Tabel Titik Relasi 25
Tabel 3.4 Rancangan Tabel Titik Kemacetan 25
DAFTAR GAMBAR
Halaman
Gambar 2.1. Contoh Pengaplikasian Algoritma A* 10
Gambar 3.1. Arsitektur Umum Sistem 17
Gambar 3.2. Tampilan dalam bentuk Google Map setelah data diinput 19
Gambar 3.3. Bentuk Graf dari Sampel Kasus 20
Gambar 3.4. Use Case Pencarian Rute Tercepat Untuk Ambulans 23
Gambar 3.5. DFD Level 0 Pencarian Rute Tercepat Untuk Ambulans 24
Gambar 3.6. Rancangan Tampilan Halaman Login 26
Gambar 3.7. Rancangan Tampilan Halaman Peta 26
Gambar 3.8. Rancangan Tampilan Halaman Titik 27
Gambar 3.9. Rancangan Tampilan Relasi Titik 27
Gambar 3.10. Rancangan Tampilan Hasil Dalam Bentuk Google Map 28
Gambar 3.11. Proses KerjaSistem Pencarian Jalur Tercepat 29
Gambar 4.1. Halaman Home 31
Gambar 4.2. Halaman Peta 31
Gambar 4.3. Halaman Titik 32
Gambar 4.4. Halaman Relasi Titik 33
Gambar 4.5. Tampilan Hasil Pencarian Rumah Sakit Terdekat 34
Gambar 4.6. Tampilan Input Nama Titik 34
Gambar 4.7. Tampilan Hasil Input Nama Titik 35
Gambar 4.8. Tampilan Halaman Peta Sebelum Penambahan Titik 35
Gambar 4.9. Tampilan Halaman Peta Hasil Penambahan Titik 36
Gambar 4.10. Tampilan Penambahan Relasi Titik 36
v
ABSTRAK
Ambulans merupakan kendaraan untuk mengangkut orang sakit atau dalam keadaan
darurat lainnya. Selain membutuhkan waktu sesingkat mungkin dalam beroperasi,
ambulans juga membutuhkan informasi keadaan jalan yang akan dilaluinya agar tidak
terjebak dalam kondisi jalan sehingga ambulans dapat berfungsi secara optimal.
Algoritma A Star (A*) dapat diimplementasikan dalam membangun sebuah sistem informasi agar ambulans dapat sampai ke tujuan dengan waktu sesingkat mungkin.
Adapun sistem yang akan dibangun adalah berbasis Web, dengan hasil (output) berupa jalur tercepat dari titik rumah sakit (penyedia ambulans) ke alamat pasien,
dalam bentuk Google Map. Dengan memanfaatkan GIS (Geographic Information System) pada sistem, maka aplikasi ini dapat memudahkan pengguna dalam mencari jalur tercepat yang akan dilalui ambulans dengan menghindari kemacetan yang ada
pada titik jalan tertentu.
Quickest Route Searching System For Ambulances Using A* (A Star) Algorithm ABSTRACT
Ambulances are vehicles to deliver patients or to be used in other urgencies. They do not only need shortest time of operation but Ambulances also need traffic information so that the ambulances can operate optimally. A Star (A*) Algorithm can be implemented in developing an information system for the ambulances to reach the destination as fast as possible. The system that is going to be developed is Web based, and the result is closest track from spots of Hospitals (ambulance providers) to patient’s address in the form of Google Map. By using GIS ( Geographic Information System) in the system, this application may facilitate users in finding the quickest route for the ambulances by avoiding traffic jams which occur in certain spots on the road.
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Dewasa ini perkembangan teknologi informasi sangat pesat. Sehubungan dengan
keadaan tersebut hampir seluruh aspek kehidupan memanfaatkan kecanggihan
teknologi dengan tujuan agar lebih mudah dan bahkan lebih cepat untuk menjalankan
suatu aktivitas. Salah satu hal yang membutuhkan pengolahan informasi dengan
menggunakan teknologi saat ini adalah pencapaian suatu tempat dengan waktu yang
secepat mungkin. Dalam hal ini, ambulans adalah salah satu kendaraan yang
membutuhkan suatu inovasi yang dapat mengoptimalkan cara kerja dan fungsi
ambulans sebagai mana mestinya.
Pada Kamus Besar Bahasa Indonesia (KBBI) online versi 1.4 (2015)
am·bu·lans n adalah kendaraan (mobil dan sebagainya) yang dilengkapi peralatan medis untuk mengangkut orang sakit atau korban kecelakaan.
Jika dilihat dari pengertian ambulans, dalam menjalankan fungsinya
(mengangkut orang sakit atau kecelakaan) tentunya jalan bagi ambulans harus
didahulukan karna jika dilihat pada Peraturan Pemerintah Republik Indonesia nomor
43 tahun 1993 tentang prasarana dan lalu lintas dimuat pada Pasal 65 ayat 1 b dan c
yang isinya adalah (1) Pemakai jalan wajib mendahulukan sesuai urutan prioritas
sebagai berikut : b. Ambulans mengangkut orang sakit; c. Kendaraan untuk memberi
pertolongan pada kecelakaan lalu lintas. Hal ini bertujuan untuk mempercepat
ambulans sampai ke tempat tujuan.
Kecelakaan pada suatu lokasi tertentu sering kali terjadi. Pada insiden seperti
ini tentunya membutuhkan pertolongan pertama secepat mungkin. Seperti halnya
membutuhkan ambulans untuk mengangkut korban kecelakaan tersebut agar dibawa
ke rumah sakit terdekat untuk mendapatkan pertolongan pertama. Namun sering kali
korban kecelakaan atau orang di sekitar kejadian tidak mengetahui rumah sakit
kondisi seperti ini dibutuhkan sebuah sistem berupa layanan pemesanan ambulans
dalam kondisi gawat darurat agar dapat mempermudah melakukan pemesanan
ambulans sehingga korban tersebut dapat ditangani secepat mungkin.
Untuk hal seperti ini tentunya ambulans harus sampai ke lokasi kejadian
(lokasi pasien) dengan waktu secepat mungkin. Akan tetapi pada kenyataannya
ambulans yang sedang mengangkut pasien dalam keadaan darurat sering kali terjebak
dalam kondisi jalan yang mengalami hambatan berupa macet.
Hal ini terjadi karena tidak ada informasi kepada supir ambulans tentang
kondisi jalan yang akan dilaluinya. Untuk mendapat suatu informasi tentang
jalur-jalur yang akan dilalui agar dapat sampai ke tujuan secepat mungkin ada beberapa
peneliti yang telah membangun aplikasi terkait dengan hal ini.
Ichsan, Yudaningtyas & Muslim (2012), membangun aplikasi pencarian jalur
terdekat dengan menggunakan Algoritma Hybrid Fuzzy-Djikstra. Pada aplikasi yang dibangun penulis mempertimbangan karakteristik jalan serta fenomena yang terjadi,
sehingga digunakan logika fuzzy untuk memberi pertimbangan yang spesifik dalam memberikan nilai bobot tiap ruas jalan dan algoritma dijkstra untuk mencari rute yang
diambil, sehingga didapat rute tercepat. Nilai yang dimiliki oleh jalan selalu dinamis,
sehingga proses yang dilalui akan bisa berubah setiap saat, dan rute yang dipilih bisa
berubah setiap saat.
Putra, Aswin & Djuriatno (2012), membangun aplikasi pencarian rute
terdekat pada labirin menggunakan metode A*. Objek dari aplikasi yang dibangun
adalah berupa labirin. Labirin yang diteliti terdiri dari 5 jenis yaitu, labirin tanpa
cabang, labirin bercabang, labirin buntu bersolusi, labirin buntu dan labirin 20*20
bercabang buntu bersolusi. Kesimpulan yang didapat dari peniltian ini bahwa
algoritma A * tidak menjamin selalu mendapat jalur yang terbaik (bobot terkecil), dari
semua rute yang ada.
Pugas et al. (2011), membangun aplikasi pencarian rute terpendek menggunakan algoritma Djikstra dan A Star (A*) pada SIG berbasis web untuk pemetaan pariwisata kota Sawahlunto. Penulis membangun aplikasi dengan
menggunakan dua algoritma yaitu algoritma A* dan Djikstra. Dari hasil pengujian
melalui host to host dengan 5 kali percobaan titik awal dan tujuan, disimpulkan bahwa pencarian rute terpendek menggunakan algoritma Dijkstra dan A star menghasilkan
3
menggunakan algoritma Dijkstra berbeda dengan algoritma A* dimana A* lebih cepat
untuk proses pencarian rute terpendek.
Setelah mempertimbangkan dengan apa yang dibuktikan dan dihasilkan oleh
peneliti terdahulu sesuai dengan aplikasi yang akan dibangun, pada kesempatan ini
penulis akan membangun sebuah aplikasi untuk mempermudah supir ambulans, agar
ambulans sampai ke tujuan secepat mungkin untuk menjemput dan mengantar pasien
dimana sistem ini akan dibangun dengan menggunakan algoritma A Star (A *).
Algoritma A* menyelesaikan masalah yang menggunakan graf untuk
perluasan statusnya, dengan menerapkan suatu heuristik. Heuristik adalah nilai yang
memberi nilai pada tiap simpul yang memandu A* mendapatkan solusi yang
diinginkan. Dengan kata lain, heuristik adalah fungsi optimasi yang menjadikan
algoritma A* lebih baik dari pada algoritma lainnya (Kusumadewi et al. 2005).
Sistem ini akan dipergunakan oleh admin pada instansi tertentu yang akan
menangani sistem pemesanan ambulans. Akan dibuat berupa nomor panggilan darurat
khusus untuk pemesanan ambulans bagi pasien dalam keadaan gawat darurat. Yang
akan dijemput dan diantar ke rumah sakit terdekat dari alamat pasien. Dengan adanya
inovasi ini, maka pasien yang memerlukan ambulans bisa langsung menghubungi
nomor panggilan darurat tersebut untuk pemesanan ambulans. Sehingga sistem akan
menunjukkan rumah sakit terdekat dari alamat pasien, dan rumah sakit tersebut akan
menyediakan ambulans untuk menjemput pasien melalui jalur terpendek (menghindari
macet) dari rumah sakit ke alamat pasien. Lalu mengantar pasien tersebut ke rumah
sakit terdekat dari alamat pasien.
Data yang akan digunakan pada pembangunan aplikasi ini berupa data jalan
protokol kota Medan, yang dibutuhkan dalam hal ini adalah titik koordinat setiap titik
persimpangan jalan dan jarak dari satu titik ke titik yang lainnya. Ada pun data
tersebut diperoleh dari Google Map. Karena sistem yang akan dibangun berhubungan dengan kemacetan, maka dibutuhkan data kemacetan jalan di kota Medan yang
diperoleh dari Kantor Satuan Lalu Lintas (SATLANTAS) kota Medan.
1.2 Rumusan Masalah
Kecelakaan pada suatu lokasi tertentu sering kali terjadi. Pada insiden seperti
membutuhkan ambulans untuk mengangkut korban kecelakaan tersebut agar dibawa
ke rumah sakit terdekat untuk mendapatkan pertolongan pertama. Namun sering kali
korban kecelakaan atau orang di sekitar kejadian tidak mengetahui rumah sakit
terdekat mana yang akan dihubungi untuk menangani korban kecelakaan. Oleh karena
itu dalam kondisi seperti ini dibutuhkan sebuah sistem berupa layanan pemesanan
ambulans dalam kondisi gawat darurat agar dapat mempermudah pasien untuk
melakukan pemesanan ambulans yang akan menjemput dan mengantar pasien ke
rumah sakit terdekat melalui jalur tercepat dengan waktu seminimal mungkin,
sehingga korban tersebut dapat segera ditangani.
1.3 Tujuan Penelitian
Untuk membangun sistem dengan menggunakan algoritma A Star (A*), yang akan menghasilkan informasi berupa rekomendasi jalur tercepat yang akan dilalui supir
ambulans dari rumah sakit penyedia ambulans ke alamat pasien gawat darurat, agar
ambulans dapat sampai ke tujuan dengan waktu seminimal mungkin.
1.4 Batasan Masalah
Adapun batasan masalah yang penulis buat untuk menghindari
penyimpangan-penyimpangan yang tidak sesuai adalah :
1. Titik keberangkatan dilakukan dari rumah sakit terdekat ke alamat pasien.
2. Wilayah yang diteliti adalah wilayah kota Medan.
3. Data jalur yang digunakan hanya sebatas jalan protokol.
4. Titik kemacetan hanya sebatas data yang didapatkan dari Kantor Satlantas Kota
Medan yaitu data tahun 2013.
5. Sistem ini dibangun untuk memudahkan pemesanan ambulans bagi pasien gawat
darurat saja, sehingga pasien akan diantar ke rumah sakit terdekat dari alamat
pasien itu sendiri untuk mendapatkan pertolongan pertama.
1.5 Manfaat Penelitian
Manfaat dari penelitian ini adalah :
1. Agar ambulans bisa sampai secepat mungkin di tempat yang dituju.
5
3. Sebagai bahan perbandingan bagi penulis berikutnya yang menerapkan algoritma
A Star dalam membangun aplikasi.
4. Untuk menambah pengetahuan tentang implementasi Algoritma A Star.
1.6 Metodologi Penelitian
Tahapan-tahapan yang akan dilakukan pada pelaksanaan penelitian adalah sebagai
berikut:
1. Studi Literatur
Studi literatur yaitu proses pengumpulan bahan-bahan referensi baik dari buku,
artikel, paper, jurnal, makalah, maupun situs internet tentang sistem pencarian
jalur terdekat, Algoritma A Star, data-data yang dibutuhkan berkaitan dengan pembangunan sistem.
2. Analisis Permasalahan
Pada tahapan ini akan dilakukan analisis tentang penerapan algortma A Star, untuk dapat menghasilkan solusi terhadap permasalahan pencarian jalur terdekat
untuk ambulans agar dapat sampai ke tujuan dengan waktu seminimal mungkin.
3. Perancangan Sistem
Pada tahapan ini, perancangan sistem meliputi beberapa tahap, sesuai dengan
kebutuhan sistem yaitu perancangan Use Case, Data Flow Diagram, Database, User Interface, dan Flowchart.
4. Impelementasi
Pada tahapan ini dilakukan pembangunan sistem berdasarkan hasil perancanngan
sistem yang telah dilakukan sebelumnya dan penerapan algoritma A Star pada sistem. Sistem akan dibangun menggunakan bahasa pemrograman PHP dan
database MySQL. Karena sistem yang akan dibangun berhubungan dengan data
jalan, maka sistem akan tersambung dengan jaringan internet untuk menampilkan
peta jalan kota Medan melalui Google Map.
5. Pengujian
Tahapan selanjutnya setelah implementasi adalah pengujian sistem apakah sudah
memenuhi kriteria sesuai dengan tujuan penelitian atau tidak.
6. Penyusunan Laporan
Setelah pengujian maka dilakukan penyusunan laporan sesuai dengan hasil yang
1.7 Sistematika Penulisan
Sistematika penulisan skripsi ini dibagi menjadi lima bab yaitu:
Bab 1: Pendahuluan
Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan penelitian,
manfaat penelitian, metodologi penelitian dan sistematika penulisan.
Bab 2: Landasan Teori
Pada bab ini dibahas mengenai beberapa teori yang mendukung pembahasan pada bab
selanjutnya.
Bab 3 : Analisis dan Perancangan
Pada bab ini dibahas mengenai permasalahan dalam pembuatan aplikasi, penjelasan
tentang rancangan struktur aplikasi dan perancangan Use Case, Data Flow Diagram, Database, User Interface, dan Flowchart. Sesuai dengan kebutuhan sistem.
Bab 4 : Implementasi dan Pengujian Sistem
Pada bab ini dibahas implementasi dari sistem yang telah dibuat. Bagaimana algoritma
bekerja pada sistem yang dibangun, dan pengujian sistem yang telah dibangun apakah
sudah sesuai dengan apa yang telah digambarkan pada latar belakang dan tujuan dari
pembangunan sistem tersebut.
Bab 5 : Kesimpulan dan Saran
Bab ini berisi tentang kesimpulan yang didapat dari hasil pengujian dan saran yang
BAB 2
LANDASAN TEORI
2.1 Definisi Ambulans
Pada Kamus Besar Bahasa Indonesia (KBBI) online versi 1.4 (2015) am·bu·lans n
adalah kendaraan (mobil dan sebagainya) yang dilengkapi peralatan medis untuk
mengangkut orang sakit atau korban kecelakaan. Pada Peraturan Pemerintah Republik
Indonesia nomor 43 tahun 1993 tentang prasarana dan lalu lintas pasal 65 ayat 1 b dan
c, tertulis bahwa (1) Pemakai jalan wajib mendahulukan sesuai urutan prioritas
sebagai berikut : b. Ambulans mengangkut orang sakit; c. Kendaraan untuk memberi
pertolongan pada kecelakaan lalu lintas.
2.2 Permasalahan Lintasan Terpendek (ShortestPath)
Salah satu persoalan optimasi adalah persoalan lintasan terpendek di dalam graf. Graf
yang digunakan dalam pencarian lintasan terpendek adalah graf berbobot (weighted graph), yaitu graf yang setiap sisinya diberikan suatu nilai atau bobot. Asumsi yang digunakan adalah setiap bobot bernilai positif. Kata “terpendek” tidak selalu diartikan
secara fisik sebagai panjang minimum, karena kata “terpendek” berbeda-beda
maknanya bergantung pada tipikal persoalan yang akan diselesaikan. Namun, secara
umum “terpendek ” berarti meminimalisasi bobot pada suatu lintasan di dalam graf (Munir, 2010).
Ada beberapa macam persoalan lintasan terpendek, antara lain :
a. Lintasan terpendek antara dua simpul tertentu..
b. Lintasan terpendek antara semua pasangan simpul.
c. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain.
d. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul
2.3. Pengertian Algoritma A Star (A*)
Algoritma 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 A*
mendapatkan solusi yang diinginkan. Dengan heuristik, maka A* pasti akan
mendapatkan solusi (jika memang ada solusinya). Dengan kata lain, heuristik adalah
fungsi optimasi yang menjadikan algoritma A* lebih baik dari pada algoritma lainnya
(Kusumadewi et al. 2005).
Menurut Russel & Norvig (2003) algoritma 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 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 rute terdekat saat node goal sudah dicapai.
Algoritma 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* 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* 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 A* akan menjumlahkan panjang path yang sebenarnya (Coppin, 2004).
9
f(n)= g(n) + h(n) …...(1) dimana:
h(n) = Nilai heuristik antar koordinat
g(n) = Jarak koordinat ke titik tujuan
Dalam notasi standar yang dipakai untuk algoritma A* pada rumus persamaan (1), digunakan g(n) untuk mewakili cost rute dari node awal ke node n. Lalu h(n) mewakili perkiraan cost dari node n ke node goal, yang dihitung dengan fungsi heuristik. A*„menyeimbangkan‟ kedua nilai ini dalam mencari jalan dari node
awal ke node goal (Ilham et al. 2011).
Berikut terminologi dasar yang terdapat pada algoritma A* :
1. Starting point sebagai posisi awal sebuah benda.
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 jalur terpendek yang telah berhasil diciptakan.
6. “f” adalah nilai yang diperoleh dari penjumlahan. ”g” merupakan jumlah nilai tiap simpul dalam jalur terpendek dari titik awal ke Current dan “h” merupakan jumlah nilai perkiraan dari sebuah simpul ke simpul tujuan. Sehingga dapat
diformulasikan dengan f(x) = g(x) + h(x).
7. Simpul tujuan adalah simpul yang dituju.
8. Halangan adalah sebuah atribut yang menyatakan bahwa sebuah simpul tidak
dapat dilalui oleh Current.
A* dapat juga dapat diimplementasikan, jika kebutuhan akan pencarian yang membutuhkan perulangan. Prinsip algoritma A* yaitu, akan melintasi semua graf yang berhubungan dengan starting point, mengurutkan cost terkecil dengan memperhatikan
yang lain yang sedang dihadapi, maka A* akan meninggalkan jalan dengan cost yang lebih tinggi. Gambar 2.1 merupakan contoh sederhana pengaplikasian algoritma A*.
Gambar 2.1 Contoh Pengaplikasian algoritma A * (Hayati et al, 2010)
2.4 Google Maps API (Application Programming Interface)
Google Maps adalah layanan pemetaan berbasis web service yang disediakan oleh
Google dan bersifat gratis, yang memiliki kemampuan terhadap banyak layanan
pemetaan berbasis web. Google Maps juga memiliki sifat server side, yaitu peta yang
tersimpan pada server Google dapat dimanfaatkan oleh pengguna. Google Maps API
adalah suatu library yang berbentuk javascript yang berguna untuk memodifikasi peta
yang ada di Google Maps sesuai kebutuhan. Untuk membangun aplikasi yang memanfaatkan Google Maps di desktop dan mobile device maka akan digunakan
Google Maps Javascript API v3 yang memiliki keunggulan lebih cepat dari versi
sebelumnya (Google Developers, 2012).
Google Maps API menyediakan layanan web (Web Services) sebagai interface
untuk meminta data Maps API dari layanan eksternal untuk digunakan dalam aplikasi
Maps. Google Maps Web Services adalah kumpulan dari interface HTTP ke layanan
Google yang menyediakan data geografis untuk aplikasi Maps.
Menurut Shodiq (2009) menulis program Google Map API dilakukan dengan urutan sebagai berikut :
1. Memasukkan Maps API JavaScript ke dalam HTML.
2. Membuat element div dengan nama map_canvas untuk menampilkan peta (Maps). 3. Membuat beberapa objek literal untuk menyimpan property-properti pada peta.
4. Menuliskan fungsi JavaScript untuk membuat objek peta.
11
Parameter mapTypeId menentukan jenis peta yang akan ditampilkan. Pilihannya ada empat yaitu :
1. ROADMAP, untuk menampilkan peta biasa 2 dimensi.
2. SATELLITE, untuk menampilkan foto satelit.
3. TERRAIN, untuk menunjukkan relief fisik permukaan bumi dan menunjukkan
seberapa tingginya suatu lokasi, contohnya menunjukkan gunung dan sungai.
4. HYBRID, menunjukkan foto satelit yang diatasnya tergambar pula apa yang tampil
pada ROADMAP (jalan dan nama kota).
2.5 GIS (Geographic Information System)
GIS (Geographic Information System) adalah sistem yang bekerja dengan data yang
tereferensi secara spasial atau koordinat-koordinat geografi (Ilham et al. 2011). Sistem ini mampu untuk mengolah data dan melakukan operasi tertentu dengan
menampilkan dan menganalisa data. Aplikasi GIS ini menjadi beragam jenis
aplikasinya. Selain jumlah aplikasinya yang juga bertambah, kedepannya
pengembangan aplikasi ini merambah ke aplikasi berbasis jaringan yang dikenal
dengan web GIS. Ini dikarenakan lingkungan jaringan merupakan tempat subur
berkembangnya geoinformasi. Contohnya adalah peta sebuah kota secara online yang
tidak mengenal batas geografi penggunaannya.
Tujuan pokok dari pemanfaatan GIS adalah untuk mempermudah
mendapatkan informasi yang telah diolah dan tersimpan sebagai atribut suatu lokasi
atau objek. Ciri utama data yang bisa dimanfaatkan dalam GIS adalah data yang telah
terikat dengan lokasi dan merupakan data dasar yang belum dispesifikasi (Dulbahri,
1993). Data-data yang diolah dalam GIS pada dasarnya terdiri dari data spasial dan
data atribut dalam bentuk digital, dengan demikian analisis yang dapat digunakan
adalah analisis spasial dan analisis atribut. Data spasial merupakan data yang
berkaitan dengan lokasi keruangan yang umumnya berbentuk peta. Sedangkan data
atribut merupakan data tabel yang berfungsi menjelaskan keberadaan berbagai objek
sebagai data spasial.
Penyajian data spasial mempunyai tiga cara dasar yaitu dalam bentuk titik,
bentuk garis dan bentuk area (polygon). Titik merupakan tampilan tunggal dari
lokasi kota, lokasi pengambilan sampel dan lain-lain. Garis merupakan sekumpulan
titik-titik yang membentuk suatu tampilan memanjang seperti sungai, jalan, kontus
dan lain-lain. Sedangkan area adalah kenampakan yang dibatasi oleh suatu garis yang
membentuk suatu ruang homogen, misalnya: batas daerah, batas penggunaan lahan,
pulau dan lain sebagainya. Struktur data spasial dibagi dua yaitu model data raster dan
model data vektor. Data raster adalah data yang disimpan dalam bentuk kotak segi
empat (grid/sel) sehingga terbentuk suatu ruang yang teratur. Data vektor adalah data
yang direkam dalam bentuk koordinat titik yang menampilkan, menempatkan dan
menyimpan data spasial dengan menggunakan titik, garis atau area (polygon) (Barus
& Wiradisastra 2000). Bentuk produk suatu GIS dapat bervariasi baik dalam hal
kualitas, keakuratan dan kemudahan pemakainnya. Hasil ini dapat dibuat dalam
bentuk peta-peta, tabel angka-angka: teks di atas kertas atau media lain (hard copy),
atau dalam cetak lunak (seperti file elektronik).
Barus dan Wiradisastra (2000) juga mengungkapkan bahwa GIS adalah alat
yang handal untuk menangani data spasial, dimana dalam GIS data dipelihara dalam
bentuk digital sehingga data ini lebih padat dibanding dalam bentuk peta cetak, tabel
atau dalam bentuk konvensional lainnya yang akhirnya akan mempercepat pekerjaan
dan meringankan biaya yang diperlukan.
2.6 Peneliti Terdahulu
Algoritma A* telah banyak digunakan dalam pencarian jarak terpendek pada sebuah
aplikasi. Harianja (2013) membangun sebuah sistem optimalisasi pencarian solusi
dynamic water jug dengan menerapkan algoritma A*. Permasalahan optimalisasi
dynamic water jug adalah bagaimana mengoptimalkan penyelesaian sebuah
permasalahan water jug atau mencari sebuah solusi paling optimal dalam menyelesaikan sebuah kasus wadah air.
Putra et al. (2012) menggunakan algoritma A* untuk pencarian rute terpendek pada labirin. Labirin adalah sebuah jaringan dari jalur-jalur yang saling
berhubungan untuk dilalui dari awal hingga akhir yang dimaksudkan untuk sebuah
tantangan, manusia mungkin masih dapat menyelesaikan masalah pencarian ruang
terdekat yang sederhana, tetapi jika jumlah rute yang ada sudah sedemikian
banyaknya, maka akan mengalami kesulitan dan memakan waktu yang lama untuk
13
Pugas et al. (2011) menggunakan algoritma djikstra dan A* dalam SIG (Sisyem Informasi Geografis) pada aplikasi pencarian rute terpendek untuk pemetaan
kota Sawahlunto. Teknologi Sistem Informasi Geografis (SIG) telah berkembang
pesat. SIG dibuat dengan menggunakan informasi yang berasal dari pengolahan
sejumlah data, yaitu data geografis atau data yang berkaitan dengan posisi objek di
permukaan bumi.
Teknologi SIG mengintegrasikan operasi pengolahan data berbasis database
yang biasa digunakan saat ini, seperti pengambilan data berdasarkan kebutuhan,
analisis statistik dengan menggunakan visualisasi yang khas serta berbagai
keuntungan yang mampu ditawarkan analisis geografis melalui gambar-gambar
petanya. SIG juga dapat memberikan penjelasan tentang suatu peristiwa, membuat
peramalan kejadian, dan perencanaan strategis lainnya serta dapat membantu
menganalisis permasalahan umum seperti masalah ekonomi, penduduk, sosial
pemerintahan, pertahanan serta bidang pariwisata.
Ichsan et al. (2012) menerapkan algoritma Hybrid Fuzzy-Dijkstra dalam pembangunan aplikasi pencarian jalur tercepat. Dalam perpaduan kedua algoritma
tersebut dikatakan bahwa nilai yang dimiliki oleh jalan selalu dinamis, sehingga
proses yang dilalui akan bisa berubah setiap saat, dan rute yang dipilih bisa berubah
setiap saat.
Florens et al. (2009) juga membangun sebuah aplikasi pencarian jalur tercepat untuk transportasi bus Trans Jakarta menggunaka algoritma Djikstra. Hasil yang dicapai adalah aplikasi berupa kios informasi yang dapat melakukan pencarian jalur
tercepat dalam Trans Jakarta.
Varita et al. (2013) membangun sebuah aplikasi pencarian jalur tercepat rute perjalanan wisata dengan algoritma Tabu Search. Pencarian jalur tercepat dengan parameter panjang, volume dan kepadatan jalan dapat diaplikasikan dengan algoritma
sama lain. Parameter dalam penelitian ini adalah iterasi , threshold, dan data yang digunakan.
Tabel 2.1 Peneliti Terdahulu
No Nama Peneliti Judul Penelitian Tahun Keterangan
2
3
Rufina Florens,
Jenny Tirta
Kusuma & Rimbun
Mataram
Diana Okta Pugas,
Maman Somantri
& Kodrat Iman
Satoto
Analisis dan
Perancangan
Sistem Pencarian
Jalur Tercepat
Untuk
Transportasi Bus
Trans Jakarta
Menggunaka
Algoritma
Djikstra
Aplikasi
pencarian rute
terpendek
menggunakan
algoritma Djikstra
dan A Star (A*)
pada SIG berbasis
web untuk
pemetaan
pariwisata kota
Sawahlunto
2009
2011
Hasil yang dicapai
adalah aplikasi berupa
kios informasi yang
dapat melakukan
pencarian jalur tercepat
dalam Trans Jakarta.
Algoritma Dijkstra mampu mencari jalur
tercepat sesuai dengan
keinginan pengguna
tranportasi Trans
Jakarta.
Pencarian rute
terpendek
menggunakan
algoritma Dijkstra dan
A Star menghasilkan rute jalan yang sama.
Pencarian rute
terpendek A Star lebih
cepat dibandingkan
dengan algoritma
15
Tabel 2.1. Penelitian Terdahulu (Lanjutan)
No Nama Peneliti Judul Penelitian Tahun Keterangan
4
5
6
Moch. Hannats
Hanafi Ichsan, Erni
Yudaningtyas & M.
Aziz Muslim
Ivana Varita, Onny
Setyawati & Didik
Rahadi
Firman Harianja
Optimal
Pencarian Jalur
Tercepat dengan
Algoritma Hybrid Fuzzy-Dijkstra
Pencarian Jalur
Tercepat Rute
Perjalanan Wisata
Dengan
Algoritma Tabu
Search
Penerapan
algoritma A*
pada
permasalahan
optimalisasi
pencarian solusi
dynamic water
jug.
2012
2013
2013
Nilai yang dimiliki oleh
jalan selalu dinamis,
sehingga proses yang
dilalui bisa berubah
setiap saat dan rute
yang dipilih bisa
berubah setiap saat.
Pencarian jalur tercepat
dengan parameter
panjang, volume dan
kepadatan jalan dapat
diaplikasikan dengan
algoritma Tabu Search.
Hasil jumlah iterasi
dalam algoritma Tabu
Search mempengaruhi
jumlah cost.
Optimalisasi dynamic
water jug adalah
mengoptimalkan
penyelesaian sebuah
permasalahan water
jug atau mencari solusi paling optimal dalam
meyelesaikan sebuah
Tabel 2.1 Penelitian Terdahulu (Lanjutan)
No Nama Peneliti Judul Penelitian Tahun Keterangan
1 Rengga Dionata
Putra, Ir.
Muhammad
Aswin, MT. &
Waru Djuriatno,
ST., MT.
Pencarian rute
terdekat pada labirin
menggunakan
metode A*
2012 Algoritma A * tidak
menjamin selalu
mendapat jalur yang
terbaik (bobot terkecil),
dari semua rute yang
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Arsitektur Umum
Adapun arsitektur umum dari perancangan sistem yang akan dibangun dapat dilihat
pada gambar 3.1.
Setelah titik alamat pasien diketahui di dalam Map, admin akan mencari rumah sakit terdekat dari titik tersebut pada sistem, setelah diketahui rumah sakit yang akan
menyediakan ambulans, sistem akan mengecek jalur-jalur yang memiliki hambatan
dari rumah sakit ke alamat pasien sesuai dengan waktu pemesanan ambulans. Jika ada
jalur yang memiliki hambatan berupa macet pada jam tertentu, maka secara otomatis
jalur tersebut dibuang dan dicari jalur lain yang terdekat tanpa hambatan
[image:31.595.153.486.438.721.2]menggunakan algoritma A* dari rumah sakit ke alamat pasien.
Input
Dalam tahapan ini data yang akan diinput berupa alamat pasien dan waktu
pemesanan ambulans.
Proses
Data yang telah diinput akan diproses oleh sistem, yang pertama sekali yang
akan dilakukan adalah admin mengecek alamat pasien. Dengan menginput
data alamat pasien, sistem akan mendapat titik koordinat pasien, sehingga titik
koordinat tersebut muncul pada sistem yaitu pada halaman berupa Google Map. Setelah titik koordinat pasien sudah diketahui, sistem akan mencari rumah sakit terdekat dari alamat pasien dimana rumah sakit tersebut akan
menyediakan ambulans untuk menjemput pasien. Dari rumah sakit terdekat,
akan dicek waktu pemesanan ambulans. Lalu akan dicek jalur mana saja dari
rumah sakit ke alamat pasien yang memiliki titik kemacetan pada jam tertentu,
sesuai dengan waktu pemesanan ambulans. Setelah titik kemacetan diketahui,
jalur tersebut akan diabaikan oleh sistem, lalu sistem akan mengecek jalur
terdekat dari rumah sakit ke alamat pasien. Dalam hal ini, algoritma A Star
akan digunakan untuk menghitung jarak terpendek. Setelah pasien dijemput,
pasien akan diantar ke rumah sakit terdekat dari alamat pasien.
Output
Adapun output dari sistem adalah berupa jalur terdekat dari rumah sakit
(penyedia ambulans) ke alamat pasien.
3.2 Data yang Digunakan
Data yang digunakan dalam sistem ini ada 3 yaitu data titik setiap persimpangan jalan,
data jarak dari setiap titik ke titik lain (relasi) dan data titik kemacetan. Data titik dan
relasi diambil dari Google Map yaitu berupa Lang dan Long serta jaraknya. Sedangkan data kemacetan diperoleh dari kantor SATLANTAS kota Medan.
Pada gambar 3.2 titik berwarna hitam merupakan titik dari setiap
persimpangan jalan, sedangkan titik berwarna merah adalah titik setiap rumah sakit,
19
Gambar 3.2 Tampilan dalam bentuk Google Map setelah data diinput
3.3 Pemrosesan Data
Data yang telah ada akan diproses dengan menggunakan algoritma A Star (A*). Pada gambar 3.3 dapat kita asumsikan seorang pasien menghubungi admin, alamatnya
adalah F, dan A adalah rumah sakit yang akan menyediakan ambulans untuk
menjemput pasien. Ketika data pasien diinput maka data tersebut akan diproses oleh sistem.
3.4 Uji Coba dengan AlgoritmaA Star (A*)
a. Titik asal adalah A yaitu rumah sakit.
b. Titik tujuan adalah alamat pasien yaitu F.
c. Analisis rute terpendek dari A ke F. Berikut ini hasil perhitungan jarak terpendek
Gambar 3.3 Bentuk Graf dari sampel kasus
Titik Koordinat : A(0,0) , B(3,0) , C(3,4) , D(6,2) , E(6,0) , F(9,2). Jarak antar
titik yaitu : A-B = 6, A-C = 10, B-C = 8, B-E = 6, C-D = 7, D-E = 4, D-F = 7, E-F = 7.
Lalu menghitung nilai heuristik. Fungsi heuristik yang digunakan adalah “Euclidean
Distance”. Fungsi ini memberikan hasil yang lebih baik (mendekati jarak sebenarnya) dibandingkan dengan fungsi heuristik yang lain (Chris et al, 2011).
Rumus :
√ ...(2)
Menghitung nilai heuristik dari titik yang berelasi : A-B, A-C, C, C-D, B-E, E-D, D-F, E-F dengan menggunakan persamaan (2).
A(0,0) ke B(3,0)
√ = √ = √ = 3
A(0,0) ke C(3,4)
21
B(3,0) ke C(3,4)
√ = √ = √ = 4
C(3,4) ke D(6,2)
√ = √ = √ = 3,6
B(3,0) ke E(6,0)
√ = √ = √ = 3
E(6,0) ke D(6,2)
√ = √ = √ = 2
D(6,2) ke F(9,2)
√ = √ = √ = 3
E(6,0) ke F(9,2)
√ = √ = √ = 3,6
Setelah nilai heuristik dari masing-masing node (titik) didapat, selanjutnya
mencari f(n) menggunakan algoritma A* dengan rumus dari persamaan (1) :
f(n) = h(n) + g(n).
- A-B dan A-C
A-B f(n) = h(n) + g(n) = 3 + 6
= 9
A-C f(n) = h(n) + g(n) = 5 + 10
Dari perhitungan di atas maka nilai f(n) yang paling kecil adalah A-B maka
selanjutnya yang dihitung adalah nilai dari relasi titik B dan untuk relasi titik C
diabaikan saja.
- B-E f(n) = h(n) + g(n)
= 3 + 6
= 9
- E-F f(n) = h(n) + g(n)
= 3,6 + 7
= 10,6
Karena titik tujuannya adalah titik F maka pencarian berhenti. Total f(n) yang
didapat adalah 28,6. Maka jalur yang akan dilalui dari titik A ke F adalah A-B-E-F.
Satu titik koordinat mewakili 100 meter maka jarak sebenarnya adalah 28,6 x 100 =
2860 meter atau 2,86 kilometer.
3.5 Analisis Sistem
Analisis sistem bertujuan untuk mengidentifikasi sistem yang akan diteliti. Pada
analisis sistem akan dibahas mengenai analisis kebutuhan sistem dan komponen
sistem. Proses analisis ini diperlukan sebagai dasar perancangan sistem. Adapun
rancangan yang akan dianalisis yaitu berupa use case, data flow diagram, database, interface dan flowchart sistem.
3.5.1 Use Case
Use Case terdiri dari dua bagian yaitu skenario dan diagram.
Skenario
Pasien melakukan pemesanan ambulans dengan cara menelepon ke nomor yang
ditetapkan khusus untuk pemesanan ambulans. Admin akan mencatat alamat
pasien dan waktu pemesanan ambulans. Admin akan mengecek rumah sakit
23
mengecek jalur yang memiliki titik kemacetan pada jam tertentu, sesuai dengan
waktu pemesanan ambulans. Setelah itu, sistem akan dicari rute terdekat dari
rumah sakit (penyedia ambulans) ke alamat pasien dengan menghindari jalur yang
memiliki hambatan.
Use Case Diagram
Use case diagram pada pembangunan aplikasi ini terdiri dari 2 aktor yaitu
“pasien” dan “admin”. Pada diagram ini dapat dilihat bahwa pasien adalah aktor yang berperan memberi data masukan kepada sistem untuk diolah, yaitu berupa
pemesanan ambulans. Data yang akan masuk yaitu berupa alamat pasien dan
waktu pemesanan ambulans. Sedangkan untuk aktor yang kedua yaitu “admin”,
berperan untuk mengecek alamat pasien, rumah sakit terdekat dari alamat pasien,
jalan yang memiliki hambatan dan mengecek jalur terdekat dari rumah sakit ke
[image:37.595.122.523.370.658.2]alamat pasien.
Gambar 3.4 Use Case Pencarian Jalur Tercepat Untuk Ambulans 3.5.2 Data Flow Diagram (DFD)
DFD pada aplikasi ini terdiri dari 2 level, yaitu level 0 dan level 1. Pada
masing-masing level terdapat 2 entitas. Sama halnya dengan Use case, nama entitas pada
Pada DFD level 0 digunakan untuk interaksi antara sistem yang akan
dikembangkan dengan entitas luar. DFD level 0 pada sistem yang akan dibangun
dapat dilihat pada gambar 3.5.
Pasien jalur tercepat untuk ambulansMengelola sistem pencarian Admin
Pemesanan
Ambulans
- pesan login - titik jalan - relasi titik - pasien
[image:38.595.161.473.153.353.2]- login - titik jalan - relasi titik - pasien
Gambar 3.5 DFD level 0 Pencarian Jalur Tercepat Untuk Ambulans
Keterangan masing-masing entitas luar pada DFD level 0 dapat dilihat pada tabel 3.1
di bawah ini.
Tabel 3.1 Keterangan DFD level 0 Sistem Pencarian Jalur Tercepat Untuk Ambulans
Entitas Luar Keterangan
Pasien Pasien dapat melakukan pemesanan ambulance dan menerima keluaran berupa keterangan ambulans yang akan menjemput
pasien
Admin Admin dapat melakukan proses login ke sistem, mengelola data titik jalan, mengelola titik relasi, dan mengelola data pasien
3.5.3 Perancangan Database
Adapun database pada sistem terdiri dari 3 tabel yaitu table titik koordinat, titik relasi
25
Tabel 3.2 Rancangan Tabel Titik Koordinat
Nama_Field Tipe_Data Ukuran_Field
Id Nama Koordinat Tipe Koordinat Int Varchar Varchar Int 11 100 30 11
Tabel titik koordinat : Menyimpan id, nama titik simpang jalan, koordinta
(Lang dan Long) dapat di lihat pada tabel 3.2 Lang adalah titik X dan Long adalah
[image:39.595.109.524.319.425.2]titik Y. Titik ini berdasarkan koordinat yang sudah dimasukkan kedalam database.
Tabel 3.3 Rancangan Tabel Titik Relasi
Nama_Field Tipe_Data Ukuran_Field
Id Id_asal Id_tujuan Jarak Int Int Int Double 11 11 11
Tabel relasi titik : menyimpan hubungan relasi dari satu titik ke titik yang lain
dan menyimpan nilai jarak dapat dilihat pada Tabel 3.3. Jarak pada table ini akan
digunakan sebagai nilai g(n). Untuk tabel 3.4 menyimpan data persimpangan jalan
[image:39.595.130.503.548.651.2]yang memiliki titik kemacetan.
Tabel 3.4 Rancangan Tabel Titik Kemacetan
Nama_Field Tipe_Data Ukuran_Field
3.5.4 User Interface
3.5.4.1 Rancangan Tampilan Halaman Login
[image:40.595.174.456.153.281.2]Halaman ini adalah halaman awal aplikasi yaitu berupa halaman login untuk admin.
Gambar 3.6 Rancangan Tampilan halaman Login
3.5.4.2 Rancangan Tampilan Halaman Peta
Karena aplikasi ini akan di pergunakan oleh pihak rumah sakit saja, yang akan
berperan sebagai User adalah admin. Halaman utama (Home) pada sistem ini sekaligus menjadi halaman hasil sebagai informasi rekomendasi jalan untuk ambulans.
Halaman hasil pada sistem ini akan menampilkan jalur yang akan di lalui oleh
ambulans dari titik asal (Rumah Sakit) dan titik tujuan (Alamat Pasien). Ketika admin
(User) menginput data berupa alamat pasien dan waktu panggilan pasien, sistem akan otomatis memberikan informasi berupa jalur yang akan dilewati oleh ambulance,
dimana jalur yang memiliki hambatan (kemacetan) menuju titik tujuan akan secara
otomatis juga di buang oleh sistem.
[image:40.595.156.478.545.682.2]27
3.5.4.3 Rancangan Tampilan Halaman Titik
Pada halaman ini admin dapat menambahkan dan menghapus nama titik. Hal ini
bertujuan untuk perubahan data yang terjadi sesuai dengan keadaan jalan kota medan
yang tentunya berpengaruh dengan keoptimalan sistem.
[image:41.595.194.442.233.403.2]Admin cukup dengan meng”klik” titik persimpangan jalan yang akan ditambahkan pada map, maka sistem akan otomatis menunjukkan hasil titik koordinat dan nama titik persimpangan tersebut.
Gambar 3.8 Rancangan Tampilan Titik
3.5.4.4 Rancangan Tampilan Halaman Relasi Titik
Pada menu relasi, admin juga dapat menambah dan menghapus relasi titik. Jarak atau
g(n) secara otomatis akan terisi apabila koordinat yang dimasukkan sudah sesuai.
[image:41.595.216.416.521.685.2]3.5.4.5 Rancangan Tampilan Hasil
Tampilan hasil pada gambar 3.11, titik biru merupakan titik rumah sakit (titik asal),
titik hitam adalah titik alamat pasien dan titik merah adalah titik kemacetan. Pada
[image:42.595.189.448.182.406.2]tampilan hasil terlihat jalur berupa Google Map dari rumah sakit ke alamat pasien. Data yang dihasilkan berupa rumah sakit, jalur, jarak dan durasi.
Gambar 3.10 Rancangan tampilah hasil dalam bentuk Google Map 3.5.5 Proses KerjaSistem
Berikut adalah gambaran proses berjalannya sistem yang akan dibangun :
1. Panggilan darurat akan diterima admin dari pasien.
2. Ketika pasien melakukan pemesanan ambulans kepada admin, dan memberikan
data yang akan diolah berupa alamat pasien tersebut akan dilakukan pengecekan
alamat pasien. .
3. Mengecek alamat pasien (titik tujuan) yang akan muncul pada Google Map
4. Setelah diketahui letak alamat pasien, maka akan dilakukan pengecekan rumah
sakit terdekat dari alamat pasien tersebut.
5. Setelah diketahui rumah sakit (titik asal) yang akan menyediakan ambulans, maka
akan dilakukan pengecekan jalur yang memiliki kemacetan pada jam pemesanan
ambulans.
6. Jika jalur terpendek memiliki titik kemacetan pada waktu pemesanan ambulans
dilakukan pasien, maka akan dicari jalur lain, yang tidak memiliki hambatan.
7. Namun, jika jalur yang memiliki titik kemacetan bukan jalur terpendek, maka
29
8. Setelah jalur tercepat (tanpa hambatan berupa macet) sudah diketahui pada
sistem, maka admin akan menghubungi rumah sakit terdekat untuk menjemput
pasien dari jalur tercepat yang dihasilkan oleh sistem.
Proses tersebut dapat dilihat pada Gambar 3.12 dibawah ini :
Start
Panggilan Darurat Pasien
Pengisian data pasien (alamat)
Pencarian titik tujuan ambulance (alamat pasien)
Pengecekan rumah sakit terdekat dari
alamat pasien
Apakah pemesanan ambulans pada jam
sibuk ?
Stop
Apakah jalur macet merupakan jalur
terpendek ? Cek jalur macet sesuai jam sibuk
Rute terpendek
Jemput pasien
[image:43.595.189.518.165.581.2]Cek jalur tanpa macet
4.1.Implementasi Sistem
Pada tahap ini, algoritma A Star (A*) akan diimplementasikan ke dalam sistem dengan menggunakan bahasa pemrograman PHP, JavaScript dan database MySQL sesuai perancangan yang telah dilakukan.
4.1.1. Spesifikasi Perangkat Keras dan Lunak yang Digunakan
Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk membangun
sistem ini adalah sebagai berikut:
1. Prosesor Intel®CoreTM i5-2450M CPU 2.5 GHz. 2. Kapasitas hardisk 750 GB.
3. Memori RAM yang digunakan 4 GB.
4. Tipe Sistem adalah 32 bit Operating System.
5. Sistem operasi yang digunakan adalah Microsoft Windows 7 Home Premium.
6. Web server yang digunakan adalah XAMPP versi 3.2.1
7. Database MySQL versi 5.6.16
4.1.2. Implementasi Perancangan Antarmuka
Pada bab sebelumnya telah dibuat rancangan antar muka (Interface) untuk sistem yang akan dibangun. Dari hasil perangcangan tersebut maka akan diimpelemtasikan
sebagai berikut :
a. Halaman Home
31
Gambar 4.1 Halaman Home
b. Halaman Peta
Halaman ini merupakan halaman yang berisi tentang peta dari Google Map dengan menampilkan setiap titik persimpangan jalan (titik hitam), titik rumah sakit (titik
merah) dan titik kemacetan (titik biru). Dan informasi yang di hasilkan berupa ,
“jalur”, “jarak tempuh” dan “durasi”. Pada “jalur” titik awalnya adalah nama rumah
sakit yang akan menyediakan ambulans (titik asal).
Gambar 4.2 Halaman Peta
c. Halaman Titik
Pada halama ini ditampilkan id, nama titik, dan koordinat setiap titik. Admin dapat
[image:45.595.110.524.440.681.2]muncul ketika diklik pada persimpangan jalan sesuai dengan yang ditampilkan Google Map. Sedangkan untuk nama jalan bisa diketik oleh admin/User sendiri.
Gambar 4.3 Halaman Titik
Pada gambar 4.3 dapat dilihat bahwa titik koordinat yang dihasilkan Google Map
setelah mengklik titik persimpangan dengan koordinat ” 3.575743416822447,
98.65280628204346 “ dengan nama/alamat “Jalan Sei Belutu”, setelah mengklik button “masukkan” maka data jalan akan tersimpan di database dan muncul pada
halaman titik berupa “Id”, “Nama Titik”, “Koordinat” dan “Operasi” . Kolom “Operasi” berfungsi untuk menghapus data jalan.
d. Halaman Relasi Titik
Pada halaman relasi titik (gambar 4.4) admin dapat membuat relasi berupa jarak dari
satu titik dengan titik yang lain. Titik yang telah dibuat dapat di hapus kembali sesuai
dengan kebutuhan sistem. Apabila relasi antara dua titik telah ada, maka sistem akan
otomatis memberi peringatan bahwa relasi antara titik tersebut sudah ada. Sehingga
33
Gambar 4.4 Halaman Relasi Titik
4.2 Pengujian Sistem
4.2.1 Pengujian pada proses yang dilakukan User
a. Halaman Peta / Hasil
Untuk halaman hasil pada sistem ini dapat dilihat pada halaman “peta”. Admin
menginput alamat pasien, lalu mengklik button “Cari Rumah Sakit Terdekat” , maka
akan muncul tampilan seperti pada gambar 4.5. Selain informasi yang dihasilkan
dalam bentuk Google Map, juga dihasilkan nama rumah sakit, jalur, jarak tempuh dan durasi. Pada hasil pengujian pada gambar 4.5 adapun data input dan output sebagai berikut :
Data input :
Alamat pasien yaitu “jalan bunga mawar”.
Data output :
Nama rumah sakit “Rumah Sakit Umum Methodist”
Nama persimpangan jalur yang dilewati “jln bunga mawar/jln bunga sedap
malam”.
Jarak 3.00 Km
Gambar 4.5 Tampilan hasil pencarian rumah sakit terdekat
b. Halaman Titik
Pada halaman titik ketika admin mengklik pada satu titik persimpangan maka akan muncul koordinat titik tersebut seperti pada Gambar 4.6.
Gambar 4.6 Tampilan input nama titik
Nama titik yang diinput pada gambar 4.6 adalah “jln Simpang golff”. Hasil
penginputan tersebut akan muncul pada tabel sistem seperti pada gambar 4.7, dengan
[image:48.595.111.525.432.670.2]35
Gambar 4.7 Tampilan hasil input nama titik
Gambar 4.8 merupakan tampilan pada halaman peta sebelum penambahan titik “jln simpang golff”. Letak titik tersebut berada di ujung “Jl. Simpang Golf”. Dapat dilihat
[image:49.595.172.464.414.598.2]bahwa belum ada titik yang bertambah.
Gambar 4.8 Tampilan halaman peta sebelum penambahan nama titik Setelah nama titik dimasukkan, maka titik tersebut akan muncul pada halaman “peta”
Gambar 4.9 Tampilan halaman peta hasil penambahan nama titik
c. Halaman Relasi Titik
Nama titik yang telah ditambahkan pada halaman “titik” dapat dibuat relasinya pada
halaman ini. Pada gambar 4.9 dapat dilihat bahwa relasi yang dapat dibuat dari titik id
212 adalah ke titik dengan id 78. Cara membuat relasinya adalah dengan memilih titik
asal yaitu (id 212 dan titik tujuan id 78). Dapat dilihat pada gambar 4.10.
[image:50.595.198.434.485.674.2]37
Hasil dari penambahan relasi pada gambar 4.10 dapat dilihat pada gambar 4.11
dengan jarak 0.4085 km.
[image:51.595.237.389.148.325.2]
Gambar 4.11 Tampilan hasil penambahan relasi titik 4.2.2 Hasil Pengujian Sistem
Pada pengujian ini ada tiga jeni kasus yang berbeda yang akan diuji yaitu :
Mencari jalur terdekat dari titik asal ke titik tujuan dengan adanya hambatan.
Mencari jalur terdekat dari titik asal ke titik tujuan dengan mengabaikan
hambatan yang ada.
Mencari jalur terdekat dari titik asal ke titik tujuan yang tidak memiliki
hambatan.
Tabel 4.1 Hasil Pengujian Sistem
No. Titik Asal dan Tujuan Hambatan Keterangan
1
Asal Rumah Sakit Islam
Malahayati
Persimpangan
jalan Imam
Bonjol / Kapten Maulana Lubis
Sistem mencari jalur menghindari titik hambatan
(kemacetan). Tujuan Jalan Kapten Maulana
Lubis
2 Asal Rumah Sakit Islam
Malahayati
Tidak Ada
Sistem mencari jalur tanpa menghindari titik hambatan (kemacetan). Tujuan Jalan Kapten Maulana
Lubis
3 Asal Rumah Sakit Umum
Bina Persada Tidak Ada
Sistem mencari jalur terpendek ke alamat pasien
[image:51.595.113.525.521.721.2]5.1 Kesimpulan
Berdasarkan analisis dari sistem dan pengujian sistem secara menyeluruh yang telah
dilakukan pada bab-bab sebelumnya, maka ada beberapa hal yang dapat dijadikan
kesimpulan pada penelitian ini antara lain:
1. Algoritma A* mampu mengoptimalkan pencarian jalur terpendek dengan proses
yang cepat karena mengabaikan titik yang memiliki nilai f(n) yang lebih besar
untuk perhitungan selanjutnya.
2. Sistem akan memberikan rekomendasi jalur terdekat dari rumah sakit ke alamat
pasien walaupun jalur tersebut memiliki titik kemacetan, apabila pemesanan
ambulans dilakukan tidak pada jam macet.
3. Apabila ada beberapa pilihan jalan dari rumah sakit ke alamat pasien, sistem
akan mencari jalur terdekat dari rumah sakit ke alamat pasien dan mengabaikan
jalur yang lebih dekat tetapi memiliki titik kemacetan.
4. Ada beberapa jalan di Kota medan dengan nama yang sama, mengakibatkan
Google Map, tidak menunjukkan jalur sesuai dengan yang dimaksud oleh User.
5.2 Saran
Sistem ini dibangun berdasarkan alur pemikiran penulis, maka untuk hasil yang lebih
baik dan maksimal diperlukan saran dari semua pihak untuk melengkapi kekurangan
yang ada. Saran dari penulis yaitu:
1. Untuk selanjutnya sistem ini dapat dikembangkan berbasis Android dengan memperbanyak data jalan, titik kemacetan dan rumah sakit.
2. Penelitian ini dapat dilakukan dengan menggunakan algoritma lain yang
hasilnya lebih akurat.
3. Data kemacetan yang dipakai pada penelitian ini hanya sebatas titik jalan yang
memiliki titik kemacetan, peneliti selanjutnya dapat menambahkan durasi
DAFTAR PUSTAKA
Barus B., dan Wiradisastra. 2000. Sistem Informasi Geografi, Laboratorium Penginderaan Jauh dan Kartografi. Institut Pertanian Bogor.
Chris, R., Michael, B. & Nathan, S. 2011. “Euclidean Heuristic Optimization,”
Proceedings of the Twenty-Fifth AAAI Conference on Artificial Intelligence,
vol. 25, pp. 81-86.
Coppin, Ben. 2004. Artificial Intelligent Illuminated. Jones and Bartlett Publishers. Dulbahri.1993. Sistem Informasi Geografis. Jakarta: Gramedia
Florens, R. 2009. Analisis dan perancangan sistem pencarian jalur tercepat untuk
transportasi bus transjakarta menggunakan algoritma djikstra. Skripsi.
Universitas Bina Nusantara.
GoogleDevelopers.2012. http://developers.google.com/maps/documentation/javascript
(25 Juni 2015).
Harianja, F. 2013. Penerapan algoritma A* pada permasalahan optimalisasi pencarian
solusi dynamic water jug. Jurnal Pelita Informatika Budi Darma. Vol.6. No.3: 48-53.
Hayati, F.,Wangi, L.S., Dhuha, N., Maryani, T. & Rahayudyan, T. 2010. Menghitung
rute terpendek menggunakan algoritma a* search dengan fungsi heuristik
euclidean distance (studi kasus: UNI susqa-mall SKA). (Online)
http://ligarsekarwangi.blogspot.com/2010/06/menghitung-rute-terpendek-menggunakan.html (25 Juni 2015).
Ichsan, M.H.H.,Yudaningtyas, E. & Muslim, M.A. 2012. Solusi optimasi pencarian
jalur tercepat dengan algoritma hybrid fuzzy-djikstra. Jurnal EECCIS. Vol. 6,
Ilham, R., Soetedjo, A & Faisal, A. 2011. Pengembangan aplikasi pencarian rute
terpendek dengan metode algoritma A* berbasis web. Jurnal Elektro ELTEX
Vol. 2, No. 2.
Kamus Besar Bahasa Indonesia versi 1.4. 2015. (Online) http://kbbi.web.id/ (25 Juni 2015).
Kusumadewi, Ida & Purnomo, H. 2005. Penyelesaian Masalah Optimisasi dengan Teknik-teknik Heuristik.Yogyakarta : Graha Ilmu
Muchtar, M.A & Sani, M.F. 2012. Modul Praktikum Desain Perangkat Lunak. Usu
Press. Medan.
Munir, R. 2010. Matematika Diskrit Edisi Ketiga. Informatika Bandung : Bandung
Pratama & Putra, R. 2011. Perbandingan algoritma A* dan dijkstraberbasis web GIS
untuk pencarian rute terpendek. Skripsi. UPI
Pugas, D.O., Somantri, M. & Satoto, K.I. 2011. Aplikasi pencarian rute terpendek
menggunakan algoritma djikstra dan A Star (A*) pada SIG berbasis web untuk
pemetaan pariwisata kota Sawahlunto. TRANSMISI 13 (1): 27-32.
Putra, R.D., Aswin, M. & Djuriatno, W. 2012. Pencarian rute terdekat pada labirin
menggunakan metode A*. Jurnal EECCIS. Vol. 6, No.2.
Russell, S.J & Norvig, P. 2003. Artificiall Intelligence A Modern Approach. Prentice Hall. New Jersey.
Shodiq, A. 2009. Tutorial dasar pemrograman google maps API. (Online) http://yuliana.lecturer.pens.ac.id/Google%20Maps%20API/Buku/Tutorial%20
Google%20Maps%20API.pdf (25 Agustus 2015).