SISTEM INFORMASI GEOGRAFIS PENCARIAN RUTE TERDEKAT
PADA JASA PENGIRIMAN BARANG MENGGUNAKAN
ALGORITMA A* (STAR) BERBASIS MOBILE
SKRIPSI
ISMAIL MARZUKI
091402006
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
SISTEM INFORMASI GEOGRAFIS PENCARIAN RUTE TERDEKAT
PADA JASA PENGIRIMAN BARANG MENGGUNAKAN
ALGORITMA A* (STAR) BERBASIS MOBILE
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi
ISMAIL MARZUKI
091402006
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015
PERSETUJUAN
Judul : SISTEM INFORMASI GEOGRAFIS PENCARIAN
RUTE TERDEKAT PADA JASA PENGIRIMAN
BARANG MENGGUNAKAN ALGORITMA A*
(STAR) BERBASIS MOBILE
Kategori : SKRIPSI
Nama : ISMAIL MARZUKI
Nomor Induk Mahasiswa : 091402006
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
Diluluskan di Medan, 9 Juli 2015
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dani Gunawan, S.T.,M.T Ade Candra, ST. M.Kom
NIP. 19820915 201212 1 002 NIP. 19790904 200912 1 002
Diketahui/Disetujui oleh
Program Studi Teknologi Informasi Ketua,
iv
PERNYATAAN
SISTEM INFORMASI GEOGRAFIS PENCARIAN RUTE TERDEKAT
PADA JASA PENGIRIMAN BARANG MENGGUNAKAN
ALGORITMA A* (STAR) BERBASIS MOBILE
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 9 Juli 2015
ISMAIL MARZUKI 091402006
PENGHARGAAN
Alhamdulillah segala puji dan syukur penulis sampaikan kehadirat Allah SWT beserta
Nabi Besar Muhammad SAW karena atas limpahan rahmat dan karuniaNya sehingga
penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh ijazah
Sarjana Teknologi Informasi, Program Studi (S1) Teknologi Informasi Universitas
Sumatera Utara. Penulis menyadari bahwa dalam pelaksanaannya banyak pihak yang
telah membantu serta mendoakan dan memberikan dukungan sehingga
terselesaikannya skripsi ini. Oleh karena itu penulis sampaikan ucapan terima kasih
yang sedalam-dalamnya kepada:
1. Kedua orang tua dan sanak saudara penulis yang telah memberikan dukungan
dan motivasi baik material dan spiritual, Ayahanda Marmin dan Ibunda
Masdelima Ritonga yang selalu sabar dalam mendidik dan membesarkan
penulis. Untuk kakak dan abang-abang penulis kak Nursiti, kak Nurmayani,
abanda Abdul Rahman, kak Neny Safrida, kak Marlina dan abanda M. Husein
yang telah memberikan semangat dan motivasi kepada penulis.
2. Bapak Ade Candra, S.T, M.Kom dan Bapak Dani Gunawan, ST.,M.Kom
selaku pembimbing yang telah banyak meluangkan waktu dan pikirannya
untuk memotivasi dan memberikan kritik dan saran kepada penulis.
3. Ibu Dr. Erna Budihartati Nababan, M.IT, Bapak Romi Fadillah Rahmat,
B.Comp.Sc.M.Sc yang telah bersedia menjadi dosen pembanding yang telah
memberikan kritik dan saran kepada penulis.
4. Ketua dan Sekretaris Program Studi Teknologi Informasi, Bapak M. Anggia
Muchtar, ST.,MM.IT dan Bapak M. Fadly Syahputra, B.Sc.,M.Sc.IT.
5. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara, semua dosen serta pegawai di Fakultas Ilmu
Komputer dan Teknologi Informasi.
Seluruh sahabat penulis yang selalu memberikan dukungan, Ummi Aisyah
Siregar, Ahmad Rifai, Desi Lestari, Sri Agusriani, Ridhona, Yudhitya Saputra lubis,
vi
angkatan 2009 yang tidak bisa disebutkan namanya satu persatu, serta seluruh
mahasiswa TI USU lainnya.
Sekali lagi penulis mengucapkan terima kasih kepada semua pihak yang
membantu dalam penyelesaian skripsi ini yang tidak dapat disebutkan satu persatu,
terima kasih atas ide, saran dan motivasi yang diberikan. Semoga Allah SWT
memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan,
perhatian, kasih sayang serta dukungan kepada penulis dalam menyelesaikan skripsi
ini.
Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan karena
kesempurnaan hanyalah milik Allah SWT semata. Oleh karena itu penulis menerima
kritik dan saran dari semua pihak yang bersifat membangun dan menyempurnakan
skripsi ini. Penulis berharap semoga skripsi ini bermanfaat bagi penulis sendiri pada
khususnya dan pembaca pada umumnya. Semoga segala kebaikan dan bantuannya
dibalas oleh Allah SWT dan semoga tugas akhir ini dapat bermanfaat bagi semua
pihak yang memerlukannya.
Medan, 9 Juli 2015
Ismail Marzuki
ABSTRAK
Pengiriman barang merupakan salah satu kegiatan untuk mengirim barang dari
berbagai belahan wilayah di Indonesia, baik itu dari desa ke kota maupun sebaliknya
dari kota ke desa. Kendala yang dihadapi kurir dari berbagai perusahaan jasa
pengiriman barang yaitu belum mengetahui lokasi tujuan para konsumennya. Sistem
Informasi Geografis (SIG) dapat dijadikan solusi untuk masalah tersebut. Pada
penelitian ini digunakan algoritma A* untuk pencarian rute terdekat pada kota Medan.
Sistem Informasi Geografis ini digunakan pada platform android dengan pemanfaatan
fitur Google Maps dan teknologi Global Positioning System (GPS) agar
mempermudah kurir dalam mencari rute terdekat pada jasa pengiriman barang. Untuk
mencari lokasi tujuan terdekat dari posisi kurir, sistem terlebih dahulu mengambil
koordinat GPS kurir kemudian mengambil koordinat tujuan yang di input oleh kurir
kemudian di proses dengan menghitung jarak terdekat dengan menggunakan
Algoritma A* pada sistem. Dari hasil pengujian menyimpulkan bahwa dengan
menggunakan GPS dan algoritma A* pada aplikasi ini dapat mempermudah kurir
dalam pencarian lokasi tujuan di kota Medan. Dan waktu perhitungan yang digunakan
dalam smartphone dengan menggunakan algoritma A* tergantung kepada banyaknya
tujuan yang di input oleh user serta tergantung kepada spesifikasi smartphone yang
digunakan.
Kata Kunci: Pengiriman Barang, Sistem Informasi Geografis, Algoritma A*, Android,
viii
MOBILE BASED GEOGRAPHIC INFORMATION SYSTEM DETERMINE
THE SHORTEST ROUTE ON SHIPMENT SERVICE USING
A* (STAR) ALGORITHM
ABSTRACT
Shipping is an activity to transfer goods to and from various area of Indonesia, other
from a village to a City or the opposite (City to a Village). Constrainsts shipping
courier of various shipment company does not know the target location that the
consumer. Wants Geographic Information System (GIS) can be a solution to the
problem. This research is using Algorithm A* to find the shortest route in Medan. The
constructed GIS is on Android platform and is taking advantage of Google Maps and
teknologi Global Positioning System (GPS) to ease the courier finding the shortest
path on delivery. To find the nearest destination to the courier’s coordinate and the
each of destination’s coordinate inputed through GPS. The nearest route will then be
calculated and achieved through Algorithm A*. The conclusion of the research is thet
by using GPS and Algorithm A* in the application, it can ease courier warsh on
finding the target location of the delivery in Medan. The time consumend on locating
the delivery taset using Algorithm A* on smartphone is dependant to the amount of
the delivery target inputted by user and to the spesification of the smartphone.
Keyword: Shipment, delivery, Shipping, goods, GIS, Algorithm A*, Andorid, GPS,
Google Maps, Medan.
DAFTAR ISI
Halaman
PERSETUJUAN iii
PERNYATAAN iv
PENGHARGAAN v
ABSTRAK vii
ABSTRACT viii
DAFTAR ISI ix
DAFTAR TABLE ix
DAFTAR GAMBAR ix
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 3
1.3 Tujuan Penelitian 3
1.4 Batasan Masalah 3
1.5 Manfaat Penelitian 4
1.6 Metode Penelitian 4
1.7 Sistematika Penulisan 5
BAB 2 LANDASAN TEORI 6
2.1 Sistem Informasi Geografis 6
2.2 Sistem Proyeksi Peta 7
2.2.1 Tujuan dan Metode Proyeksi 8
x
2.4 Google Map 14
2.4.1 Google Maps API 15
2.5 GPS (Global Positioning System) 15
2.5.1 Kemampuan GPS 15
2.6 Android 16
2.6.1 Generasi Android 17
2.6.2 Arsitektur android 19
2.7 Client Server 21
2.8 Defenisi Graf 21
2.8.1 Jenis-jenis Graf 21
2.8.2 Representasi Graf 23
2.8.2.1 Matriks Ketetanggaan (adjacency matrix) 24
2.8.2.2 Matriks Berisisan 24
2.9 Lintasan Terpendek (Shortest Path) 25
2.10 Algoritma A* 26
2.10.1 Fungsi Heuristic 27
2.10.2 Cara Kerja Algoritma A* 29
2.11 Penelitian Terdahulu 32
BAB 3 ANALISIS DAN PERANCANGAN SISTEM 34
3.1 Analisis Sistem 34
3.1.1 Analisis Masalah 34
3.1.1.1 Analisis Kebutuhan Sistem 35
3.1.1.2 Kebutuhan Fungsional Sistem 36
3.1.1.3 Kebutuhan Non-Fungsional Sistem 36
3.2 Pemodelan 36
3.1.2.1 Use Case Diagram 37
3.1.3.2 Proses Pencarian Rute Terdekat 40
3.3 Perancangan Sistem 41
3.3.1 General Architecture 42
3.3.2 Proses Pencarian Rute 44
3.3.3 Perancangan Antarmuka Pemakai (User Interface) 45
3.3.3.1 Rancangan Pencarian Rute 45
3.3.3.2 Rancangan Hasil Pencarian 46
3.3.3.3 Perancangan Database 46
3.3.4 Implementasi Algoritma A* Pada Sistem 47
3.3.4.1 Proses Pencarian Rute Terdekat 49
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM 54
4.1 Implementasi Sistem 54
4.1.1 Spesifikasi Perangkat Lunak 54
4.1.2 Spesifikasi Perangkat Keras 54
4.2 Pengujian Sistem 55
4.2.1 Tampilan Input 2 Lokasi Tujuan 55
4.2.2 Tampilan Hasil Dari Pencarian Lokasi Tujuan 56
4.2.3 Pengujian Sistem Pencarian rute Terdekat pada titik awal A menuju
B dan C 56
4.2.4 Pengujian Sistem Dengan Membandingan Smartphone yang
Berbeda 58
BAB 5 KESIMPULAN DAN SARAN 64
5.1 Kesimpulan 64
5.2 Saran 64
xii
DAFTAR TABLE
Halaman
Tabel 2.1 Perbandingan ketiga parameter pembentuk sistem koordinat menurut jenis
sistem proyeksi peta. 12
Tabel 2.2 Penelitian Terdahulu 32
Tabel 2.2 Penelitian Terdahulu (lanjutan) 33
Tabel 3.1 Dokumentasi naratif use case algoritma A* 38
Tabel 3.2 Dokumentasi naratif usecase set koordinat awal 38
Tabel 3.3 Dokumentasi naratif usecase set koordinat tujuan 39
Tabel 3.4 Dokumentasi naratif usecase get nilai f 39
Tabel 3.5 Dokumentasi naratif usecase tampilkan rute 40
Tabel 3.6 Tabel tbl_jalan 46
Tabel 3.7 Tabel tbl_relasi 47
Tabel 3.8 Titik Koordinat Jalan 49
Tabel 3.9 Tabel Hasil Perhitungan Nilai Heuristik 50
Tabel 3.10 Jarak antara dua Titik Koordinat g(n) 51
Table 4.1 Spesifikasi Smartphone dalam Pengujian Sistem 58
Tabel 4.2 Hasil Pengujian Dengan 5 Tujuan 62
Tabel 4.3 Hasil Pengujian Dengan 7 Tujuan 62
Tabel 4.4 Hasil Pengujian Dengan 8 Tujuan 63
DAFTAR GAMBAR
Halaman
Gambar 2.1 Sistem koordinat siku-siku ruang 10
Gambar 2.3 Sistem Koordinat polar (Sumber: Subagio, 2003) 13
Gambar 2.4 Sistem koordinat geodetis (Sumber: Subagio, 2003) 14
Gambar 2.5 Parameter GPS (Sumber: Hasanuddin, 2000) 16
Gambar 2.6 Arsitektur Android. (Sumber : Gargenta, 2011) 19
Gambar 2.7 tiga buah graf (a) Graf sederhana, (b) Graf ganda, (c) Graf semu (Sumber:
Munir, 2005) 22
Gambar 2.8 (a) Graf berarah, (b) Graf ganda berarah (Sumber: Munir, 2005) 23
Gambar 2.9 Graf (kiri) dengan matriks ketetanggaan (kanan)(Sumber:Munir,2012) 24
Gambar 2.10 Graf (kiri) dan matriks bersisian (kanan) (Sumber: Munir, 2012) 25
Gambar. 2.11 Flowchart Algoritma A* 31
Gambar 3.1 Diagram Ishikawa pada Analisis Masalah Sistem 35
Gambar 3.2 Use Case Diagram Sistem Informasi Geografis Pencarian Rute
Terpendek Pada Jasa Pengiriman Barang 37
Gambar 3.3 Diagram activity pencarian 41
Gambar 3.4 General Architecture 42
Gambar 3.5 Proses Sistem Pencarian Rute Terdekat 43
Gambar 3.8 Rancangan Halaman Pencarian Rute 45
Gambar 3.9 Hasil Cari Rute 46
Gambar 3.10 Tampilan Gambar Titik Awal A Ke Titik Tujuan G 48
Gambar 4.1 Input 2 Lokasi Tujuan 55
xiv
Gambar 4.3 Hasil Pencarian Pertama 57
Gambar 4.4 Hasil Pencarian Kedua 57
Gambar 4.5 Input Tujuan 59
Gambar 4.6 Hasil Pencarian Rute Terdekat Pada Smartphone A dengan 5 Tujuan 59
Gambar 4.7 Hasil Pencarian Rute Terdekat Pada Smartphone A dengan 7 Tujuan 60
Gambar 4.8 Hasil Pencarian Rute Terdekat Pada Smartphone B dengan 5 Tujuan 60
Gambar 4.9 Hasil Pencarian Rute Terdekat Pada Smartphone B dengan 7 Tujuan 61
ABSTRAK
Pengiriman barang merupakan salah satu kegiatan untuk mengirim barang dari
berbagai belahan wilayah di Indonesia, baik itu dari desa ke kota maupun sebaliknya
dari kota ke desa. Kendala yang dihadapi kurir dari berbagai perusahaan jasa
pengiriman barang yaitu belum mengetahui lokasi tujuan para konsumennya. Sistem
Informasi Geografis (SIG) dapat dijadikan solusi untuk masalah tersebut. Pada
penelitian ini digunakan algoritma A* untuk pencarian rute terdekat pada kota Medan.
Sistem Informasi Geografis ini digunakan pada platform android dengan pemanfaatan
fitur Google Maps dan teknologi Global Positioning System (GPS) agar
mempermudah kurir dalam mencari rute terdekat pada jasa pengiriman barang. Untuk
mencari lokasi tujuan terdekat dari posisi kurir, sistem terlebih dahulu mengambil
koordinat GPS kurir kemudian mengambil koordinat tujuan yang di input oleh kurir
kemudian di proses dengan menghitung jarak terdekat dengan menggunakan
Algoritma A* pada sistem. Dari hasil pengujian menyimpulkan bahwa dengan
menggunakan GPS dan algoritma A* pada aplikasi ini dapat mempermudah kurir
dalam pencarian lokasi tujuan di kota Medan. Dan waktu perhitungan yang digunakan
dalam smartphone dengan menggunakan algoritma A* tergantung kepada banyaknya
tujuan yang di input oleh user serta tergantung kepada spesifikasi smartphone yang
digunakan.
Kata Kunci: Pengiriman Barang, Sistem Informasi Geografis, Algoritma A*, Android,
viii
MOBILE BASED GEOGRAPHIC INFORMATION SYSTEM DETERMINE
THE SHORTEST ROUTE ON SHIPMENT SERVICE USING
A* (STAR) ALGORITHM
ABSTRACT
Shipping is an activity to transfer goods to and from various area of Indonesia, other
from a village to a City or the opposite (City to a Village). Constrainsts shipping
courier of various shipment company does not know the target location that the
consumer. Wants Geographic Information System (GIS) can be a solution to the
problem. This research is using Algorithm A* to find the shortest route in Medan. The
constructed GIS is on Android platform and is taking advantage of Google Maps and
teknologi Global Positioning System (GPS) to ease the courier finding the shortest
path on delivery. To find the nearest destination to the courier’s coordinate and the
each of destination’s coordinate inputed through GPS. The nearest route will then be
calculated and achieved through Algorithm A*. The conclusion of the research is thet
by using GPS and Algorithm A* in the application, it can ease courier warsh on
finding the target location of the delivery in Medan. The time consumend on locating
the delivery taset using Algorithm A* on smartphone is dependant to the amount of
the delivery target inputted by user and to the spesification of the smartphone.
Keyword: Shipment, delivery, Shipping, goods, GIS, Algorithm A*, Andorid, GPS,
Google Maps, Medan.
BAB 1
PENDAHULUAN
1.1Latar Belakang
Sistem Informasi Geografis (Geographic Information Systems) merupakan sistem
informasi berbasis komputer digunakan untuk menyajikan secara digital dan
menganalisa penampakan geografis yang ada dan kejadian di permukaan bumi
(Supriadi, 2007). Sistem informasi geografis ini merupakan salah satu bidang ilmu
pengetahuan yang tergolong baru di Indonesia, dan mampu memberikan informasi
tentang pemetaan pada masalah pencarian rute terpendek, maupun TSP (Travelling
Salesman Problem). Pencarian rute terpendek merupakan permasalahan yang sering
ditemukan dalam kehidupan sehari-hari. Untuk itu penentuan rute terpendek
diperlukan ketepatan dalam pemilihan jalur terpendek ke lokasi tujuan.
Pengiriman barang merupakan salah satu kegiatan untuk mengirim barang dari
berbagai belahan wilayah di Indonesia, baik itu dari desa ke kota maupun sebaliknya
dari kota ke desa. Dalam hal ini jasa pengiriman barang sangat bersifat mutlak, yaitu
dalam hal melakukan jual beli barang, melakukan pertukaran barang dan mengirim
barang oleh suatu individu, perusahaan maupun kelompok. Pada saat ini perusahaan
jasa pengiriman barang di Indonesia mulai menunjukkan kemajuan. Hal ini ditandai
dengan banyaknya masyarakat yang percaya untuk menggunakan jasa pengiriman
barang.
Kendala yang dihadapi para kurir dari berbagai perusahaan jasa pengiriman
2
Untuk itu diperlukan sebuah sistem yang dapat membantu kurir dalam hal
menentukan lokasi tujuan dan rute mana yang akan dilalui. Sehingga perjalanan yang
dilalui menjadi efisien dalam pengantaran barang ketempat tujuan.
Android adalah sistem operasi Linux yang digunakan untuk telepon seluler
(mobile) seperti telepon pintar (smartphone) dan komputer tablet. Android
menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi
mereka sendiri yang digunakan oleh bermacam peranti bergerak. Android kini telah
menjelma menjadi sistem operasi mobile terpopuler di dunia. Perkembangan android
tidak lepas dari peran Google. Android pada mulanya didirikan oleh Andy Rubin,
Rich Miner, Nick Sears dan Chris White pada tahun 2003 (Murya, 2014).
Algoritma A* merupakan salah satu jenis algoritma yang digunakan untuk
menyelesaikan kasus yang berhubungan dengan path finding (pencarian jalan). Dalam
hasil pencariannya A* dikatakan complete dan optimal. Algoritma A* menggunakan
cara pencarian secara Best First Search, dimana pencarian dilakukan dengan cara
melebar ke setiap node pada level yang sama, dan nantinya akan menemukan rute
terbaik dari titik awal sampai tujuan. Algoritma A* juga dilengkapi dengan suatu
fungsi heuristik. Fungsi heuristik yang terdapat pada algoritma A* digunakan sebagai
optimasi dalam menentukan node tujuan (Russell, 2003).
Menurut Kalsum Mustika Nasution (2012) dalam penelitiannya telah membuat
aplikasi SIG penentuan rute terpendek pengantaran barang CV. BKL Express untuk
wilayah kota Medan. Adapun hasil penelitian tersebut untuk menampilkan lintasan
terpendek yang dapat dilalui kurir di kota Medan.
Adipranata et al (2007) dalam penelitiannya juga telah membuat Aplikasi
Pencari Rute Optimum pada Peta Guna Meningkatkan Efisiensi Waktu Tempuh
Pengguna Jalan dengan Metode A* dan Best First Search. Hasil dari penelitian
tersebut yaitu pencarian rute pada peta menggunakan metode A* maupun BFS selalu
berhasil menemukan solusi rute apabila memang terdapat jalan dari titik awal ke
tujuan.
Dewi Yusra Aini (2011) Analisis Algoritma A Star (A*) dan Implementasinya
dalam Pencarian Jalur Terpendek pada Jalur Lintas Sumatera di Provinsi Sumatera
Utara. Menyimpulkan bahwa dalam mencari solusi yang optimal, Algoritma A*
sangat bergantung kepada fungsi heuristik yang digunakan.
Dari latar belakang yang telah disebutkan di atas, maka penulis akan mencoba
mengaplikasikan algoritma A* dengan memanfaatkan teknologi GPS pada
smartphone android untuk mempermudah menentukan posisi awal dan mempermudah
penentuan atau pencarian jalur terdekat pada pengantaran/pengiriman barang di kota
Medan. Dan diharapkan dengan digunakannya algoritma A* ini pada sistem yang
akan dibuat nantinya dapat memperoleh pencarian rute yang efisien dan
mempermudah para kurir dalam mengantar barang kepada konsumen.
1.2Rumusan Masalah
Masalah yang akan dibahas dalam penelitian ini adalah dalam jasa pengiriman barang kurir sangat berperan penting dalam hal pengantaran barang ketempat tujuan. Dimana kendala yang dihadapai para kurir masih banyak yang belum mengetahui lokasi tujuan terutama rute mana yang akan dilalui. Oleh karena itu, diperlukan sebuah aplikasi untuk membantu kurir dalam menentukan lokasi tujuan dan rute mana yang akan dilalui kurir, sehingga dapat membantu para kurir dalam pemilihan rute.
1.3Tujuan Penelitian
Tujuan dari penulisan skripsi ini adalah untuk memberikan rute terdekat dan
membantu kurir menentukan lokasi tujuan serta rute yang akan dilalui kurir.
1.4Batasan Masalah
Untuk memfokuskan penelitian maka penulis akan membatasi pembahasan dengan
hal-hal sebagai berikut:
1. Menggunakan Algoritma A* (star).
2. Menggunakan GPS.
3. Bahasa pemrograman yang akan digunakan adalah Java Android (Eclipse).
4. Menggunakan DBMS SQLite Manager.
5. Penentuan lintasan terpendek dalam pengantaran barang hanya pada kota Medan.
6. Maksimal tujuan hanya 7
4
1.5Manfaat Penelitian
Manfaat yang diharapkan dari penelitian ini adalah untuk memberikan informasi rute
terdekat pada jasa pengiriman barang.
1.6Metode Penelitian
Metode yang akan digunakan untuk penelitian ini adalah sebagai berikut:
a. Studi Literatur
Penelitian ini dimulai dengan melakukan studi literatur, yaitu proses pengumpulan
data sebagai bahan referensi baik dari buku, artikel, jurnal maupun dari situs
internet yang berkaitan dengan pembuatan sistem informasi geografis pencarian
rute terpendek pada jasa pengiriman barang.
b. Pengumpulan Data
Pada tahapan ini dilakukan pengumpulan data pengiriman barang dalam pencarian
rute yang terdekat.
c. Analisis dan Perancangan Sistem.
Pada tahapan ini dilakukan analisis permasalahan yang ada, batasan yang dimiliki
dan kebutuhan yang diperlukan dalam membangun sistem informasi geografis
pencarian rute terpendek pada jasa pengiriman barang berbasis mobile.
Perancangan sistem menggunakan Model Unified Modelling Language (UML)
yang digunakan antara lain use case diagram, dan sequence diagram, dan struktur
program sistem informasi geografis pencarian rute terpendek.
d. Implementasi Sistem
Pada tahapan ini sistem diimplementasikan dengan menggunakan algoritma A*
pada platform mobile.
e. Pengujian Sistem
Pada tahapan ini yang dilakukan adalah melakukan pengujian sistem terhadap
sistem yang telah dibangun serta menguji kebenaran dari algoritma A* untuk
mencari rute terpendek.
f. Penyusunan Laporan
Menyusun laporan hasil dari analisis dan perancangan ke dalam format penulisan
skripsi.
1.7Sistematika Penulisan
Sistematika dalam penulisan skripsi ini adalah sebagai berikut:
BAB 1 PENDAHULUAN
Pada bab ini menjelaskan latar belakang masalah dari penelitian yang akan dilakukan
beserta batasannya, tujuan dan manfaat penelitian, metodologi penelitian dan
sistematika penulisan skripsi ini.
BAB 2 TINJAUAN PUSTAKA
Bab ini akan menjelaskan tentang beberapa teori-teori dasar yang mendukung
penelitian seperti Sistem Informasi Geografis (SIG), Pemrograman Android, teori
graph, Algoritma A*, GPS (Global Positioning System), dan Lintasan Terpendek
(Shortest Path).
BAB 3 ANALISIS DAN PERANCANGAN
Bab ini menjelaskan mengenai analisis dan perancangan Sistem Informasi Geografis
penentu rute terpendek dengan menggunakan Algoritma A*, model Unified Modelling
Language (UML) yang digunakan antara lain use case diagram, dan sequence
diagram dan perancangan tampilan antarmuka sistem.
BAB 4 IMPLEMENTASI DAN PENGUJIAN APLIKASI
Bab ini akan membahas mengenai hasil pengujian aplikasi dari penelitian berupa
tampilan dari aplikasi SIG penentuan rute terpendek pada jasa pengiriman barang
dengan menggunakan Algoritma A*.
BAB 5 KESIMPULAN DAN SARAN
Pada bab ini menjelaskan mengenai hasil penelitian yang berisi kesimpulan dan saran
yang nantinya akan dikembangkan atau melanjutkan penelitian yang berkaitan dengan
BAB 2
LANDASAN TEORI
2.1Sistem Informasi Geografis
Sistem Informasi Geografis (Geographic Information Systems) merupakan sistem
informasi berbasis komputer digunakan untuk menyajikan secara digital dan
menganalisa penampakan geografis yang ada dan kejadian di permukaan bumi.
Penyajian secara digital berarti mengubah keadaan menjadi bentuk digital. Setiap
objek yang ada di permukaan bumi merupakan “geo-referenced”, yang merupakan kerangka hubungan database ke SIG. Databases merupakan sekumpulan informasi
tentang sesuatu dan hubungannya antar satu dengan lainnya, sedangkan “geo
-referenced” menunjukkan lokasi suatu objek diruang yang ditentukan oleh sistem koordinat. (Supriadi, 2007).
Saat ini SIG termasuk salah satu teknologi yang berkembang pesat. Teknologi
ini terdiri dari perangkat lunak dan perangkat keras yang didesain untuk
mengorganisir data yang berkaitan dangan bumi untuk menganalisis, memperkirakan
dan gambaran kartografi. Informasi ruangan mengenai bumi sangat kompleks, tetapi
pada umumnya data geografis mengandung 4 aspek penting, yaitu:
1. Lokasi-lokasi yang berkenaan dengan ruang, merupakan objek-objek ruang yang
khas pada sistem koordinat (projeksi sebuah peta).
2. Attribut, informasi yang menerangkan mengenai objek-objek ruang yang
diperlukan.
3. Hubungan ruang, hubungan lojik atau kuantitatif diantara objek-objek ruang.
4. Waktu, merupakan waktu untuk memperoleh data, data atribut dan ruang.
SIG merupakan suatu rancangan sistem informasi untuk mengerjakan data
berunsur ruang atau koordinat geografis. Teknologi SIG menyatu dengan operasi
database seperti pencarian data dan analisa statistik dan analisis geografis yang
disajikan dalam bentuk peta. Kemampuan SIG yang unik ini membuatnya banyak
digunakan secara luas misalnya untuk menjelaskan kejadian, memperkirakan hasil dan
perencanaan strategis.
Secara sederhana SIG merupakan:
1. Alat berbasis Komputer untuk pemetaan dan analisis tentang sesuatu yang terdapat
dan peristiwa yang terjadi di bumi.
2. Seperangkat alat untuk mengumpulkan, menyimpan, memperbaiki, mengubah dan
menampilkan data ruang permukaan bumi sebenarnya untuk tujuan tertentu.
3. Sistem berbasis komputer yang dilengkapi dengan 4 kemampuan untuk menangani
data keruangan, yaitu:
a. Memasukkan data (data input).
b. Menyimpan dan memperbaiki data (data store and retrive).
c. Memanipulasi dan analisis (manipulation and analysis).
d. Menghasilkan data (data output).
2.2 Sistem Proyeksi Peta
Proyeksi peta adalah suatu sistem yang memberikan hubungan antara posisi titik-titik
di bumi dan di peta (Prihandito, 1988). Peta merupakan gambaran permukaan bumi
pada bidang datar dalam ukuran yang lebih kecil. Dalam hal ini posisi titik-titik pada
peta ditentukan terhadap sistem siku-siku x dan y, sedang posisi titik-titik pada muka
bumi ditentukan oleh lintang dan bujur. Di dalam konstruksi suatu proyeksi peta, bumi
biasanya digambarkan sebagai pola (dengan jari-jari R = 6370,283 km). Dalam hal ini
volume elipsoid sama dengan volume bola. Bidang bola inilah yang nantinya akan
diambil sebagai bentuk matematis dari permukaan bumi untuk mempermudah dalam
perhitungan.
Daerah yang kecil (maksimum 30 km x 30 km) dapat dianggap sebagai
daerah yang datar, sehingga pemetaan daerah tersebut dapat langsung digambar dari
8
utama dalam proyeksi peta adalah penyajian bidang lengkung ke bidang datar. Bidang
yang lengkung tidak dapat dibentangkan menjadi bidang datar tanpa akan mengalami
perubahan-perubahan (distorsi-distorsi), sedang suatu peta dikatakan ideal bila:
a. Luas benar
b. Bentuk benar
c. Arah benar
d. Jarak benar
Keempat syarat tersebut jelas tidak akan dapat dipenuhi, tetapi selalu harus
mengorbankan syarat lainnya. Yang dapat dilakukan hanyalah mereduksi distorsi
tersebut sekecil mungkin untuk memenuhi satu atau lebih syarat-syarat peta ideal,
yaitu dengan:
a. Membagi daerah yang dipetakan menjadi bagian-bagian yang tidak begitu
luas.
b. Menggunakan bidang datar atau bidang yang dapat didatarkan (kalau
didatarkan tidak mengalami distorsi), yaitu bidang kerucut dan bidang
silinder.
2.2.1 Tujuan dan Metode Proyeksi
Penyajian dari permukaan bumi pada suatu bidang datar dibutuhkan untuk
mengekspresikan posisi titik-titik pada permukaan bumi ke dalam sistem koordinat
bidang datar yang nantinya dapat dipakai untuk perhitungan jarak-jarak dan arah-arah.
Tujuan lain adalah untuk penyajian secara grafis yang dapat dipakai untuk membantu
studi topologi, iklim, vegetasi, tempat tinggal dan sebagainya yang biasanya
berhubungan dengan daerah yang luas.
Metode proyeksi atau transformasi dapat diklasifikasikan sebagai berikut:
a. Proyeksi langsung (direct projection) yaitu dari elipsoid ke bidang proyeksi.
b. Proyeksi dobel (double projection) merupakan transformasi dari elipsoid ke
bidang bola kemudian dari bidang bola ke bidang proyeksi.
Pemilihan macam proyeksi tergantung pada:
a. Ciri-ciri tertentu, ciri-ciri asli yang harus dipertahankan, berhubungan dengan
tujuan peta.
b. Besar dan bentuk daerah yang dipetakan.
c. Letak daerah di atas permukaan bumi.
2.3Sistem Koordinat
Menurut Subagio (2003) posisi suatu titik di permukaan bumi pada prinsipnya
dinyatakan dalam suatu sistem koordinat tertentu, baik yang berdimensi bidang datar
(dua dimensi, 2D) maupun berdimensi ruang (tiga dimensi, 3D). Sistem koordinat
suatu titik tergantung kepada beberapa hal, antara lain:
a. Titik asal (titik nol) Sistem Koordinat.
b. Orientasi dari Sistem Salib Sumbu.
c. Parameter posisi dari Sistem Koordinat.
Sistem koordinat merupakan suatu parameter yang menunjukkan bagaimana
suatu objek diletakkan dalam koordinat. Ada tiga sistem koordinat yang digunakan
pada pemetaan yakni :
1. Sistem Koordinat Siku-Siku Ruang
Sistem koordinat siku-siku ruang secara umum dikenal sebagai sistem koordinat
Cartesius tiga dimensi (3D). Koordinat ini termasuk kedalam sistem koordinat
geosentrik, artinya titik asal (0) dari sistem koordinat tersebut terletak dipusat (massa)
bumi.
Besaran koordinat dari sistem ini ditentukan terhadap salib sumbu X, sumbu Y,
dan sumbu Z. Sebagai sumbu Z adalah garis yang berhimpit dengan sumbu putar
bumi, sumbu X positif adalah garis potong antara bidang ekuator dengan bidang
meridian Greenwich, sedangkan sebagai sumbu Y adalah garis yang melalui titik 0
serta tegak lurus sumbu X dan sumbu Z. Dengan demikian orientasi dari ketiga salib
10
Faktor ketiga yang menentukan sistem koordinat ini adalah parameter posisi.
Dalam sistem ini, koordinat suatu titik dibangun oleh tiga parameter posisi, yaitu
parameter X, parameter Y dan parameter Z. Untuk lebih jelasnya, sistem koordinat
siku-siku ruang ini disajikan pada gambar 2.1 berikut.
Gambar 2.1. Sistem koordinat siku-siku ruang
2. Sistem Koordinat Siku-Siku Planimetris
Berbeda dengan sistem koordinat di atas yang mempunyai dimensi ruang, sistem
koordinat ini dibangun oleh dua parameter yang membentuk dua dimensi (2D)
sehingga disebut sistem koordinat siku-siku planimetris. Kedua parameter dimaksud
adalah parameter X dan parameter Y. Parameter X disebut pula sebagai absis, yaitu
jarak dari suatu titik terhadap sumbu Y, sedangkan parameter Y disebut sebagai
ordinat, yaitu jarak dari suatu titik terhadap sumbu X. Sebagai titik asal (titik nol) dari
sistem koordinat ini adalah titik potong dari sumbu X dengan sumbu Y.
Orientasi salib sumbu dari sistem koordinat ini adalah sebagai berikut:
a. Sumbu X mempunyai arah Barat-Timur
b. Sumbu Y mempunyai arah Utara-Selatan
Dalam sistem salib sumbu ini, diterapkan bahwa nilai absis akan positif bila titik
yang bersangkutan terletak di sebelah timur titik nol dan akan negatif bila terletak di
sebelah barat titik nol. Ketentuan lain adalah nilai ordinat akan positif bila titik
bersangkutan terletak di sebelah utara titik nol dan akan negatif bila terletak di sebelah
selatan titik nol. Sistem koordinat siku-siku planimetris ini dapat disajikan pada
gambar 2.2 berikut.
Gambar 2.2. Sistem koordinat siku-siku planimetris
Berhubung sistem koordinat ini terletak dalam suatu bidang datar (bidang
planimetris), maka kedua salib sumbu (X,Y) dan titik nol di atas tidak dapat
diasumsikan dengan unsur-unsur bumi (seperti titik pusat bumi, sumbu putar bumi,
dll) yang berdimensi ruang. Walaupun demikian, sistem koordinat ini dapat
dihubungkan dengan bumi, khususnya yang berhubungan dengan bidang proyeksi
bumi (peta). Oleh karena itu dalam bidang geodesi sistem koordinat ini disebut pula
sebagai sistem koordinat proyeksi peta.
Karena merupakan sistem koordinat proyeksi peta, ketiga parameter yang
membentuk sistem ini (yaitu salib sumbu, titik nol, dan parameter koordinat) sangat
tergantung kepada jenis sistem proyeksi peta yang digunakan. Sebagai gambaran
12
Tabel 2.1 Perbandingan ketiga parameter pembentuk sistem koordinat menurut
jenis sistem proyeksi peta.
Parameter Sistem proyeksi peta
Polyeder Mercator UTM
Titik nol
Pada perinsipnya, sistem koordinat ini termasuk ke dalam sistem koordinat ruang,
karena posisi titik menunjukkan posisi ruang (tiga dimensi), yaitu posisi titik pada
bidang lengkung (elipsoid). Pada umumnya, koordinat dari sistem ini bersifat lokal,
yaitu mempunyai nilai relatif terhadap titik nol yang terletak di titik datum lokal.
Parameter dari sistem koordinat ini adalah jarak dari titik nol ke suatu titik(s), dan
azimut dari titik nol ke arah titik yang bersangkutan (α). Pengertian jarak disini adalah
jarak busur sepanjang garis geodetis sehingga mempunyai satuan sudut (derajat atau
radian).
Yang dimaksud dengan garis geodetis adalah garis penghubung terpendek dan
terletak pada bidang lengkung (elipsoid), sedangkan pengertian azimut adalah sudut
yang dihitung dari arah utara geodetis (utara sebenarnya) ke arah titik yang
bersangkutan, dan diukur searah jarum jam. Sistem koordinat polar ini dapat disajikan
pada gambar 2.3 berikut.
Gambar 2.3. Sistem Koordinat polar (Sumber: Subagio, 2003)
4. Sistem Koordinat Geodetis
Sistem koordinat geodetis (disebut pula sistem koordinat geografi) merupakan sistem
koordinat ruang, karena menunjukkan kedudukan suatu titik dalam ruang. Sistem
koordinat ini dibangun oleh dua buah parameter geodetis, yaitu lintang dan bujur.
Yang dimaksud dengan lintang suatu titik adalah sudut yang dibentuk oleh garis
normal yang melalui titik tersebut dengan bidang ekuator. Garis normal adalah garis
yang ditarik melalui suatu titik dan tegak lurus terhadap bidang elipsoid. Sedangkan
yang dimaksud dengan bujur adalah besarnya sudut yang dibentuk oleh bidang
meridian Greenwich dengan bidang meridian melalui titik termaksud.
14
(lintang utara). Sedangkan tanda negatif berarti titik tersebut berada di belahan bumi
selatan, sehingga tanda tersebut dapat diganti dengan LS (lintang selatan).
Nilai bujur dihitung dari lengkung meridian Greenwich, dan besarnya berkisar
dari hingga ke arah timur, sehingga dibelakang nilai tersebut diberi simbol BT (bujur timur) dan besarnya berkisar dari hingga hingga ke arah barat, sehingga dibelakang nilai tersebut diberi simbol BB (Bujur Barat). Sistem koordinat
geodetis ini dapat disajikan pada gambar 2.4 berikut.
Gambar 2.4. Sistem koordinat geodetis (Sumber: Subagio, 2003)
2.4Google Map
Google Maps adalah layanan aplikasi peta online yang disediakan oleh Google secara
gratis. Layanan peta Google Maps secara resmi dapat diakses melalui situs
http://maps.google.com. Pada situs tersebut dapat dilihat informasi geografis pada
hampir semua permukaan di bumi kecuali daerah kutub utara dan selatan. Layanan ini
dibuat sangat interaktif, karena di dalamnya peta dapat digeser sesuai keinginan
pengguna, mengubah level zoom, serta mengubah tampilan jenis peta.
Google Maps mempunyai banyak fasilitas yang dapat dipergunakan misalnya
pencarian lokasi dengan memasukkan kata kunci, kata kunci yang di maksud seperti
nama tempat, kota, atau jalan, fasilitas lainnya yaitu perhitungan rute perjalanan dari
satu tempat ke tempat lainnya (Syaiful, 2012).
2.4.1 Google Maps API
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 (Ichtiara, 2008).
API atau Application Programming Interface merupakan suatu dokumentasi
yang terdiri dari interface, fungsi, kelas, struktur dan sebagainya untuk membangun
sebuah perangkat lunak. Dengan adanya API ini, maka memudahkan programmer
untuk “membongkar” suatu software untuk kemudian dapat dikembangkan atau
diintegrasikan dengan perangkat lunak yang lain. API dapat dikatakan sebagai
penghubung suatu aplikasi dengan aplikasi lainnya yang memungkinkan programmer
menggunakan sistem function. Proses ini dikelola melalui operating system.
Keunggulan dari API ini adalah memungkinkan suatu aplikasi dengan aplikasi
lainnya dapat saling berhubungan dan berinteraksi. Bahasa pemrograman yang
digunakan oleh Google Maps yang terdiri dari HTML, Javascript dan AJAX serta
XML, memungkinkan untuk menampilkan peta Google Maps di website lain (Syaiful,
2012).
2.5GPS (Global Positioning System)
GPS (Global Positioning System) adalah sistem satelit navigasi dan penentuan posisi
yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk
memberikan posisi dan kecepatan tiga-dimensi serta informasi mengenai waktu,
secara kontinyu di seluruh dunia tanpa bergantung waktu dan cuaca, kepada banyak
orang secara simultan. Pada saat ini sistem GPS sudah banyak digunakan orang di
seluruh dunia. Di Indonesia pun, GPS sudah banyak diaplikasikan, terutama yang
terkait dengan aplikasi-aplikasi yang menuntut informasi tentang posisi (Hasanuddin.
2000).
2.5.1 Kemampuan GPS
16
malam tanpa bergantung pada kondisi cuaca. Sampai saat ini, GPS adalah
satu-satunya sistem navigasi atau sistem penentuan posisi yang mempunyai karakteristik
prima seperti itu. Disamping produk dasar tersebut (posisi, kecepatan, dan waktu),
sebenarnya ada beberapa parameter lainnya yang dapat ditentukan dengan tekonolgi
GPS. Pada parameter-parameter tersebut ditunjukkan pada gambar 2.2.
Parameter
· TEC (Total Electron Content)
· WVC (Water Vapour Content)
· Polar motion parameters
Gambar 2.5. Parameter GPS (Sumber: Hasanuddin, 2000).
Dalam hal penentuan posisi, GPS dapat memberikan ketelitian posisi yang
spektrumnya cukup luas. Dari yang sangat teliti (orde milimeter, relatif) sampai yang
biasa-biasa saja (orde puluhan meter, absolut). Ketelitian posisi yang diperoleh secara
umum akan bergantung pada empat faktor yaitu: metode penentuan posisi yang
digunakan, geometri dan distribusi dari satelit-satelit yang diamati, ketelitian data
yang digunakan, dan stategi/metode pengolahan data yang diterapkan.
2.6Android
Android adalah sistem operasi Linux yang digunakan untuk telepon seluler (mobile)
seperti telepon pintar (smartphone) dan komputer tablet (PDA). Android menyediakan
platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri
yang digunakan oleh bermacam peranti bergerak. Android kini telah menjelma
menjadi sistem operasi mobile terpopuler di dunia. Android pada mulanya didirikan
oleh Andy Rubin, Rich Miner, Nick Sears dan Chris White pada tahun 2003 (Murya,
2014).
Pada bulan november 2007, Google mengadakan konfersi pers. Ternyata tidak
ada Gphone (Google Phone) diluncurkan seperti yang banyak diperkirakan orang.
Waktu itu diumumkan terbentuknya Open Handset Alliance yang didirikan Google
bersama 34 perusahaan lain, untuk mengembangkan OS Open Source.
Kala itu, banyak pihak masih skeptis, terutama para pesaing seperti Microsoft
dan Nokia. CEO Microsoft Steve Ballmer menilai kata-kata Google cuman omong
kosong sedangkan Nokia mengira OS tersebut hanyalah sebuah versi linux biasa dan
bukan ancaman yang signifikan. Seminggu kemudian, Google meluncurkan software
developer kit Android yang dapat didownload secara gratis di websitenya dan
mengadakan perlombaan aplikasi. Niat Google akhirnya tercium, mereka akan merilis
OS yang akan digunakan oleh banyak vendor.
HTC, Motorola dan LG mengumumkan rencana produksi hanset Android. OS
ini sepenuhnya bebas dikustomisasi oleh pabrikan. Misi Google adalah semakin
banyak orang akan mengakses layanan Coogle dari Android. Android
digadang-gadang akan menggantikan PC. Dan semua itu akan terjadi pada tahun depan,” kata
CEO Google kala itu, Eric Schmidt dengan nada optimistis.
2.6.1 Generasi Android
Sekitar bulan september 2007 sebuah studi melaporkan bahwa Google mengajukan
hak paten aplikasi telepon seluler yang akhirnya dinamakan Nexus One, salah satu
jenis telepon pintar GSM yang menggunakan Android pada sistem operasinya.
Telepon seluler ini diproduksi oleh HTC Corporation dan tersedia dipasaran pada
tanggal 5 januari 2010. Kemudian pada 9 desember 2008 diumumkan anggota baru
yang bergabung dalam kerja Android ARM Holdings, Atheros Communications,
diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericson, Toshiba
Crop, dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA
mengumumkan produk perdana mereka, Android, perangkat bergerak atau mobile
yang merupakan modifikasi kernel Linux 2.6. Adapun beberapa versi-versi Android
18
a. Android Versi 1.1
b. Android Versi 1.5 (Cupcake)
c. Android Versi 1.6 (Donut)
d. Android Versi 2.0/2.1 (Eclair)
e. Android Versi 2.2 (Froyo: Frozen Yoghurt)
f. Android Versi 2.3 (Gingerbread)
g. Android Versi 3.0/3.1 (Honeycomb)
h. Android Versi 4.0 (ICS: Ice Cream Sandwich)
i. Android Versi 4.1/43 (Jelly Bean)
j. Android Versi 4.4 (Kitkat)
k. Andorid Versi 5.0 (Lollipop)
Menurut Hermawan (2011), pengembangan sistem operasi dan aplikasi
Android mengacu pada empat prinsip yaitu:
1. Terbuka
Android dibangun untuk menjadi benar-benar terbuka. Sebagai contoh, sebuah
aplikasi dapat mengambil dan mengakses fungsi-fungsi utama ponsel seperti
membuat panggilan, mengirim pesan teks, bahkan menggunakan kamera. Hal ini
memungkinkan para pengembang untuk membuat aplikasi yang lebih baik.
2. Semua Aplikasi Dibuat Sama
Android tidak membedakan antara aplikasi inti ponsel dan aplikasi pihak ketiga.
Kedua jenis aplikasi ini dapat dibangun dan memiliki akses yang sama ke ponsel.
Pengguna dapat sepenuhnya mengatur telepon sesuai kepentingan mereka.
3. Mendobrak Batasan-Batasan Aplikasi
Android membuang berbagai hambatan untuk membangun aplikasi baru yang
inovatif. Misalnya, seorang pengembang dapat menggabungkan informasi dari
web dengan data individu dari ponsel seperti data kontak, kalender atau lokasi
geografis. Sehingga memberikan informasi yang lebih relevan.
4. Pengembangan Aplikasi yang Cepat dan Mudah
Android menyediakan akses ke berbagai libraries dan tools yang dapat digunakan
untuk membangun aplikasi yang kaya.
Beberapa fitur yang tersedia pada Android antara lain:
1. Framework aplikasi, memungkinkan penggunaan dan pemindahan dari komponen
yang tersedia.
2. Dalvik virtual machine, virtual machine yang dioptimalkan untuk perangkat
mobile.
3. Grafik, grafik 2D dan grafik 3D yang didasarkan pada library OpenGL.
4. SQLite, untuk penyimpanan data.
5. Mendukung media audio, video, dan berbagai format gambar.
6. GSM, Bluetooth, EDGE, 3G, dan WiFi.
7. Kamera, Global Positioning System (GPS), Kompas, dan accelerometer.
8. Lingkungan pengembangan yang kaya, termasuk emulator, peralatan debugging,
dan plugin untuk Eclipse IDE.
2.6.2 Arsitektur android
Sistem operasi Android dibangun berdasarkan kernel Linux dan memiliki arsitektur
seperti Gambar 2.6 berikut.
20
1. Applications
Lapisan ini adalah lapisan aplikasi, serangkaian aplikasi akan terdapat pada
perangkat mobile. Aplikasi inti yang telah terdapat pada Android termasuk
kalender, kontak, SMS, dan lainnya. Aplikasi-aplikasi ini ditulis dengan bahasa
pemrograman Java.
2. Application Framework
Pengembang aplikasi memiliki akses penuh ke Android sama dengan aplikasi inti
yang telah tersedia. Pengembang dapat dengan mudah mengakses informasi
lokasi, mengatur alarm, menambahkan pemberitahuan kestatus bar dan lain
sebagainya. Arsitektur aplikasi ini dirancang untuk menyederhanakan penggunaan
kembali komponen, aplikasi apa pun dapat mempublikasikan kemampuan dan
aplikasi lain dapat menggunakan kemampuan mereka sesuai batasan keamanan.
Dasar dari aplikasi adalah seperangkat layanan dan sistem, yaitu berbagai View
yang digunakan untuk membangun UI, Content Provider yang memungkinkan
aplikasi berbagi data, Resource Manager menyediakan akses bukan kode seperti
grafik, string, dan layout, Notification Manager yang akan membuat aplikasi dapat
menampilkan tanda pada status bar dan Activity Manager yang berguna mengatur
daur hidup dari aplikasi.
libraries inti dari bahasa pemrograman Java. Setiap aplikasi akan berjalan sebagai
proses sendiri pada Dalvik Virtual Machine.
5. Linux Kernel
Android bergantung pada Linux kernel 2.6 untuk layanan sistem inti seperti
keamanan, manajemen memori, manajemen proses, network stack, dan model
driver. Kernel juga bertindak sebagai lapisan antara hardware dan seluruh
software.
2.7Client Server
Client server adalah salah satu model komunikasi 2 komputer atau lebih yang
berfungsi melakukan pembagian tugas. Client bertugas untuk melakukan input,
update, penghapusan, dan menampilkan data sebuah database. Sedangkan server
bertugas menyediakan pelayanan untuk melakukan manajemen, yaitu menyimpan dan
mengolah database (Wahana, 2010).
Ada beberapa model arsitektur client server, diantaranya adalah 1-Tier
(standalone), 2-Tier, dan n-Tier. Arsitektur 1-Tier merupakan model dimana sebuah
komputer mengakses sebuah database dari komputer sendiri. Dengan kata lain,
aplikasi antarmuka user dan aplikasi database terdapat pada komputer yang sama.
Arsitektur 2-Tier merupakan model yang membagi tugas antara komputer
client dan komputer server. Komputer client bertugas menyediakan antarmuka untuk
user, permintaan data ke server, serta pemrosesan data. Komputer server bertanggung
jawab terhadap penyimpanan, pengelolaan, serta melayani permintaan akses data.
Arsitektur n-Tier berarti membagi komponen menjadi n entitas, yaitu 1 tier
client dan n-1 tier server. Bagian client bertugas menyediakan antarmuka aplikasi,
sedangkan bagian server bertugas menyediakan data.
2.8Defenisi Graf
Graf merupakan pasangan himpunan (V,E), ditulis dengan notasi G=(V,E), yang
dalam hal ini V adalah himpunan tidak-kosong dari simpul-simpul (vertices atau node)
dan E adalah himpunan sisi (edges atau arcs) yang menghubungkan sepasang simpul.
(Munir, 2005). Jadi, sebuah graf dimungkinkan tidak mempunyai sisi satu buah pun,
tetapi simpul harus ada, minimal satu. Graf yang hanya mempunyai satu buah simpul
tanpa sebuah sisi (edges) pun dinamakan graf trivial.
2.8.1 Jenis-jenis Graf
Graf dapat dikelompokkan menjadi beberapa kategori (jenis) tergantung pada sudut
pandang pengelompokannya. Pengelompokan graf dapat dipandang berdasarkan ada
22
Berdasarkan ada tidaknya gelang (loop) atau sisi (edges) ganda pada suatu
graf, maka secara umum dapat digolongkan menjadi dua jenis:
1. Graf sederhana (simple graph).
Graf yang tidak mengandung gelang (loop) maupun sisi (edges) ganda dinamakan
graf sederhana. G1 pada Gambar 2.7 (a) adalah contoh graf sederhana yang
merepresentasikan jaringan komputer. Pada graf sederhana, sisi adalah pasangan
tak-terurut (unordered pairs). Jadi, menuliskan (u,v) sama saja dengan (v,u). Kita
dapat juga mendefenisikan graf sederhana G = (V,E) terdiri dari himpunan tidak
kosong simpul-simpul dan E adalah himpunan pasang tak-terurut yang berbeda
yang disebut sisi.
2. Graf tak-sederhana(unsimple-graph).
Graf yang megandung sisi (edges) ganda atau gelang (loop) dinamakan graf
tak-sederhana (unsimple graph). Ada dua macam graf tak-sederhana, yaitu:
a. Graf Ganda (multigraph), adalah graf yang mengandung sisi ganda. Sisi
ganda yang menghubungkan sepasang simpul bisa lebih dari dua buah. G2
pada Gambar 2.7 (b) adalah contoh graf ganda.
b. Graf Semu (pseudograph), adalah graf yang mengandung gelang (loop).
Graf semu lebih umum dari pada graf ganda, karena sisi (edges) pada graf
semu dapat terhubung ke dirinya sendiri. G3 pada Gambar 2.7 (c) adalah
contoh graf semu.
Gambar 2.7. tiga buah graf (a) Graf sederhana, (b) Graf ganda, (c) Graf semu
(Sumber: Munir, 2005)
Sisi pada graf dapat mempunyai orientasi arah (Munir. 2012). Berdasarkan
orientasi arah pada sisi, maka secara umum graf dibedakan atas 2 jenis yaitu:
1. Graf tak-berarah (undirected graph)
Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah.
Pada graf tak-berarah, urutan pasangan simpul yang dihubungkan oleh sisi
tidak diperhatikan. Jadi, (u, v) = (v, u) adalah sisi yang sama. Tiga buah graf
pada gambar 2.7 adalah graf tak-berarah. Pada jaringan telepon, sisi pada graf
berarah menyatakan bahwa sakyrab telepon dapat beroperasi pada dua arah.
2. Graf berarah (directed graph atau digraph)
Graf yang sisinya diberikan orientasi arah disebut sebagai graf berarah atau
sisi berarah sering disebut dengan busur (arc). Pada graf berarah, (u, v) dan (v,
u) menyatakan dua buah busur yang berbeda, dengan kata lain (u, v)≠ (v, u).
Untuk busur (u, v), simpul u dinamakan simpul asal (initial vertex) dan simpul
v dinamakan simpul terminal (terminal vertex). Pada gambar 2.8 adalah contoh
gambar graf berarah.
Gambar 2.8. (a) Graf berarah, (b) Graf ganda berarah (Sumber: Munir, 2005)
2.8.2 Representasi Graf
Bila graf akan diproses dengan program komputer, maka graf harus direpresentasikan
di dalam memori. Ada beberapa representasi untuk graf yaitu matriks ketetanggaan,
24
2.8.2.1Matriks Ketetanggaan (adjacency matrix)
Matriks ketetanggaan adalah representasi graf yang paling umum. Misalkan
G=(V,E) adalah graf dengan n simpul, n ≥ 1. Matriks ketetanggaan G adalah matriks
dwimatra yang berukuran n x n. Bila matriks tersebut dinamakan A = , maka
jika simpul i dan j bertetangga, sebaliknya = 0 juka simpul i dan j tidak
bertetangga.
Karena matriks ketetanggaan hanya berisi 0 dan 1, maka matriks tersebut
dinamakan juga matriks nol-satu (zero-one). Selain dengan angka 0 dan 1, elemen
matriks dapat juga dinyatakan dengan nilai false (menyatakan 0) dan true
(menyatakan 1). Disini, terdapat n! cara pengaturan nomor simpul, yang berarti ada n!
matriks ketetanggaan berbeda untuk graf n simpul. Pada gambar 2.9 memperlihatkan
graf sederhana dengan matriks ketetanggaan.
Gambar 2.9. Graf (kiri) dengan matriks ketetanggaan (kanan) (Sumber: Munir, 2012)
2.8.2.2Matriks Berisisan
Bila matriks ketetanggaan menyatakan ketetanggaan simpul-simpul di dalam
graf, maka matriks bersisian menyatakan kebersisian simpul dengan sisi. Misalkan
G=(V,E) adalah graf dengan n simpul dan m buah sisi. Matriks bersisian G adalah
matriks dwimarta yang berukuran n x m. Barisan menunjukkan label simpul,
sedangkan = 1 jika simpul i bersisian dengan sisi j, sebaliknya = 0 jika simpul i tidak bersisian dengan sisi j.
Matriks bersisian dapat digunakan untuk merepresentasikan graf yang
mengandung sisi ganda atau sisi gelang.
Derajat setiap simpul i dapat dihitung dengan menghitung jumlah seluruh
elemen pada baris i (kecuali pada graf yang mengandung gelang).
Jumlah elemen matriks bersisian adalah nm. Jika tiap elemen membutuhkan
ruang memori sebesar p, maka ruang memori yang diperlukan seluruhnya adalah pnm.
Pada gambar 2.10 memperlihatkan matriks bersisian untuk graf yang
direpresentasikan. Dengan jumlah elemen matriks adalah 4 x 6 =24.
Gambar 2.10. Graf (kiri) dan matriks bersisian (kanan) (Sumber: Munir, 2012)
2.9Lintasan Terpendek (Shortest Path)
Lintasan terpendek merupakan 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 menyatakan
jarak antar kota, waktu pengiriman pesan, ongkos pembangunan, dan sebagainya.
Asumsi yang digunakan adalah bahwa semua bobot bernilai positif (Munir. 2012).
Ada beberapa macam persoalan lintasan terpendek, antara lain:
1. Lintasan terpendek antara dua buah simpul tertentu.
2. Lintasan terpendek antara semua pasangan simpul.
3. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain.
4. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu.
Permasalahan yang akan diselesaikan pada penelitian ini adalah bagaimana
26
setiap edge graf digunakan untuk menyatakan jarak objek wisata di kota Binjai dengan
persimpangan jalan dalam satuan meter (m). Sehinngga penggunaan teknik algoritma
A* dalam pencarian rute terpendek dapat ditentukan (Joshi, 2014).
2.10 Algoritma A*
Algoritma A* merupakan salah satu jenis algoritma yang digunakan untuk
menyelesaikan kasus yang berhubungan dengan path finding (pencarian jalan). Dalam
hasil pencariannya A* dikatakan complete dan optimal. Algoritma A* menggunakan
cara pencarian secara Breatdth First Search, dimana pencarian dilakukan dengan cara
melebar ke setiap node pada level yang sama, dan nantinya akan menemukan rute
terbaik dari titik awal sampai tujuan. Algoritma A* juga dilengkapi dengan suatu
fungsi heuristik. Fungsi heuristik yang terdapat pada algoritma A* digunakan sebagai
optimasi dalam menentukan node tujuan yang akan dipilih. (Russell, 2003).
Algortima A* merupakan algoritma breatdth-first search yang menggunakan
fungsi heuristik yang kompleks untuk memilih path. Algoritma breatdth-first search
selalu memperluas jalan untuk menuju node yang akan dilewati, tetapi tidak
memperhitungkan cost ke simpul tersebut (Coppin, 2004).
Algoritma ini memeriksa node dengan menggabungkan g(n), yaitu cost yang
dibutuhkan untuk mencapai sebuah node dan h(n) yaitu cost yang didapat dari node ke
tujuan (Russell, 2003). Sehingga dapat dirumuskan sebagai:
Menurut Rudy (2007) Beberapa terminologi yang terdapat pada algoritma A* adalah Starting point merupakan terminologi untuk posis awal sebuah benda.
1. Starting point merupakan terminologi untuk posis awal sebuah benda.
2. Simpul (node) merupakan petak-petak kecil sebagai representasi dari
pathfinding. Bentuknya dapat berupa persegi, lingkaran maupun segitiga.
3. A* merupakan simpul yang sedang dijalankan dalam algoritma pencarian
jalur terpendek.
4. Open list merupakan tempat menyimpan data simpul yang mungkin diakses dari
starting point maupun simbol yang sedang dijalankan.
5. Closed list merupakan tempat menyimpan data simpul sebelum A* yang juga
merupakan bagian dari jalur terpendek yang telah dihasilkan didapatkan.
6. Harga (cost) merupakan nilai dari f(n).
7. Halangan (unwalked) merupakan sebuah atribut yang menyatakan bahwa sebuah
simpul tidak dapat dilalui oleh A*.
2.10.1 Fungsi Heuristic
Algoritma A* adalah algoritma pencarian yang menggunakan fungsi heuristik untuk
menuntun pencarian rute, khususnya dalam hal pengembangan dan pemeriksaan
node-node pada peta (Kalsum. 2012).
Ada beberapa penghitungan jarak yang sering digunakan dalam algoritma A,
yaitu:
1. Jarak Manhattan
Fungsi ini merupakan fungsi heuristik yang paling umum digunakan. Fungsi
ini hanya akan menjumlahkan selisih nilai x dan y dari dua buah titik. Fungsi ini
dinamakan Manhattan karena di kota Manhattan, Amerika, jarak dari dua lokasi
umumnya dihitung dari blok-blok yang harus dilalui saja dan tentunya tidak bisa
dilalui secara diagonal. Perhitungannya dapat ditulis sebagai berikut:
28
Dimana h(n) merupakan perkiraan cost dari node n ke node tujuan yang
dihitung dengan fungsi heuristik. Variable merupakan koordinat x dari node asal,
sedangkan variabel merupakan koordinat y dari node asal. Variabel merupakan
koordinat x dari node tujuan dan merupakan koordinat y dari node tujuan. Nilai dari
h(n) akan selalu bernilai positif.
2. Jarak Euclid
Heuristik ini akan menghitung jarak berdasarkan panjang garis yang dapat
ditarik dari dua buah titik. Perhitungannya dapat dituliskan sebagai berikut :
Dalam kasus ini, skala relatif nilai g mungkin akan tidak sesuai lagi dengan
nilai fungsi heuristik h. Karena jarak euclidian selalu lebih pendek dari jarak
manhattan, maka dapat dipastikan selalu akan didapatkan jalur terpendek, walaupun
secara komputansi lebih berat.
3. Jarak Euclidian Kuadrat
Dalam beberapa literatur juga disebutkan jika nilai g adalah 0, maka lebih baik
jika ongkos komputansi operasi pengakaran pada heuristik jarak Euclidian
dihilangkan saja, menghasilkan rumus sebagai berikut :
Fungsi heuristik sangat berpengaruh terhadap kelakuan algoritma A* , yaitu:
1. Apabila h(n) selalu bernilai 0, maka hanya g(n) yang akan berperan, dan A*
berubah menjadi Algoritma Dijkstra, yang menjamin selalu akan menemukan jalur
terpendek.
2. Apabila h(n) selalu lebih rendah atau sama dengan ongkos perpindahan dari titik n
ke tujuan, maka A* dijamin akan selalu menemukan jalur terpendek. Semakin
rendah nilai h(n), semakin banyak titik-titik yang diperiksa A*, membuatnya
semakin lambat.
3. Apabila h(n) tepat sama dengan ongkos perpindahan dari n ke tujuan, maka A*
maka A* tidak menjamin ditemukannya jalur terpendek, tapi prosesnya cepat.
5. Apabila h(n) secara relatif jauh lebih besar dari g(n), maka hanya h(n) yang
memainkan peran, dan A* berubah menjadi Best First Search (BFS).
Dalam mengaplikasikan Algoritma A* pada aplikasi ini, fungsi heuristik yang
digunakan adalah jarak Euclid.
2.10.2 Cara Kerja Algoritma A*
Prinsip algoritma ini adalah mencari jalur terpendek dari sebuah simpul awal (starting
point) menuju simpul tujuan dengan memperhatikan harga (f) terkecil. Algoritma ini
mempertimbangkan jarak yang telah ditempuh selama ini dari initial state ke current
state. Jadi bila jalan yang telah ditempuh sudah terlalu panjang dan ada jalan lain yang
lebih kecil jaraknya namun memberikan posisi yang sama dilihat dari goal, jalan baru
yang lebih pendek itulah yang akan dipilih (Kalsum. 2012).
Dengan fungsi heuristik algoritma ini membangkitkan node yang paling
mendekati solusi. Node ini kemudian disimpan suksesornya ke dalam list sesuai
dengan urutan yang paling mendekati solusi terbaik. Kemudian, node pertama pada
list diambil, dibangkitkan suksesornya dan kemudian suksesor ini disimpan ke dalam
list sesuai dengan urutan yang terbaik untuk solusi. List node ini disebut dengan node
terbuka (open node).
Node pada list bisa berasal dari kedalaman berapapun dari graph. Algoritma
ini akan mengunjungi secara mendalam (mirip Depth First Search (DFS)) selama
30
ternyata tidak mengarah kepada solusi yang diinginkan, maka akan melakukan runut
balik ke arah node awal untuk mencari node lainnya yang lebih menjanjikan dari pada
node yang terakhir dikunjungi. Bila tidak ditemukan juga, maka akan terus mengulang
mencari ke arah node awal sampai ditemukan node yang lebih baik untuk
dibangkitkan suksesornya. Strategi ini berkebalikan dengan algoritma DFS yang
mencari sampai kedalaman yang terdalam sampai tidak ada lagi suksesor yang bisa
dibangkitkan sebelum melakukan runut balik, dan BFS yang tidak akan melakukan
pencarian secara mendalam sebelum pencarian secara melebar selesai. Algoritma A*
baru berhenti ketika mendapatkan solusi yang dianggap solusi terbaik. Pada gambar
2.11 merupakan flowchat dari algoritma A*.
32
2.11 Penelitian Terdahulu
Dalam penelitian, penulis membutuhkan beberapa bahan penelitian yang sudah
pernah dilakukan peneliti-peneliti lainnya mengenai masalah penentuan jarak
terpendek menggunakan algoritma A*. Berikut ini merupakan penelitian
sebelumnya yang pernah dilakukan dan dapat dilihat pada tabel 2.2 berikut.
Tabel 2.2 Penelitian Terdahulu
No Penelitian Nama Keterangan
1. Analisis Algoritma A
Star (A*) dan
rute yang ada, hal ini terjadi
karena A* hanya
menghitung area yang
dilalui saja.
Tabel 2.2 Penelitian Terdahulu (lanjutan)
No Penelitian Nama Keterangan
4. Aplikasi Pencari Rute
Optimum pada Peta
Guna Meningkatkan
Efisiensi Waktu
Tempuh Pengguna
Jalan dengan Metode
A* dan Best First
Search
Rudy Adipranata.
et al. 2007.
Pencarian rute pada peta
menggunakan metode A*
maupun BFS selalu berhasil
menemukan solusi
rute apabila memang
terdapat jalan dari titik awal