Perancangan Aplikasi Wisata Kabupaten Lebak Menggunakan
Algoritma A* (A-Star) Berbasis Android
Ujang Anwar1, Anggi Puspita Sari2, Raudah Nasution3
1STMIK Nusamandiri e-mail: maydanfikra@outlook.com
2 AMIK BSI Bekasi e-mail: anggi.apr@bsi.ac.id
3AMIK BSI Bogor e-mail: raudah.rhn@bsi.ac.id
Abstrak – Luas sekitar 3.044,72 Km² yang terdiri atas 28 kecamatan menjadikan Kabupaten Lebak sebagai Kabupaten terluas di Provinsi Banten.Potensi pariwisata Kabupaten Lebak meliputi wisata alam dan kebudayaan. Namun tidak semua objek wisata itu diketahui dan dikunjungi oleh wisatawan. Kendala utama yang dihadapi adalah kurangnya informasi baik berupa tulisan maupun gambar, terlebih peta menuju lokasi wisata. tujuan Maka daripada itu diperlukan suatu sistem yang dapat memudahkan para wisatawan untuk lebih mengenal objek wisata, mendapat panduan rute perjalanan berdasarkan layanan berbasis lokasi (location based service), dan dapat digunakan secara mobile. Aplikasi berbasis mobile Android untuk mendapatkan rute perjalanan maka diperlukan suatu algoritma yang efisien untuk mencapai tujuan. Salah satu algoritma yang dapat digunakan adalah algortima A* (A-star). Algoritma A* memiliki efektifitas yang tinggi dibandingkan algoritma sejenis seperti algoritma Djikstra dan BFS (Best First Search). Dengan dirancangnya aplikasi Wisata Lebak para wisatawan dapat lebih mengenal pariwasata yang ada di Kabupaten Lebak dan juga dapt digunakan sebagai panduan perjalanan saat berwisata.
Kata Kunci: Aplikasi Wisata, Android, Algoritma A* (A-Star) I. PENDAHULUAN
Kabupaten Lebak terletak di Provinsi Banten dengan luas berkisar 3.044,72 Km² yang terdiri atas 28 kecamatan. Pusat pemerintahan terletak di Kecamatan Rangkasbitung yang berada di bagian utara wilayah Kabupaten. Potensi pariwisata Kabupaten Lebak meliputi wisata alam dan kebudayaan. Namun tidak semua tempat-tempat menarik itu diketahui oleh wisatawan , ditambah dengan jarak yang sangat tidak efisien untuk menuju tempat-tempat wisata itu dikarenakan masyarakat tidak mengetahui rute perjalanannya karena kurangnya informasi dan promosi dari pemerintah daerah sendiri. Informasi bisa didapatkan dengan menggunakan bantuan teknologi salah satunya teknologi smartphone. Kelebihan perangkat smartphone dapat mengakses informasi kapan dan dimana saja dengan adanya aplikasi dan sistem operasi yang mendukung . Sistem operasi pada smartphone yang berkembang dengan pesat adalah Android. Guna memberikan informasi mengenai pariwisata di kabupaten Lebak, maka sangat diperlukan aplikasi guna menentukan jalur terpendek dari tempat asal wisatawan ke tempat tujuan atau tempat wisata yang dituju.
Pencarian jalur terpendek merupakan permasalahan untuk menemukan jalur diantara dua
node yaitu node awal dan node tujuan. Node akan
merepresentasikan lokasi pada peta sedangkan bobotnya akan merepresentasikan jarak yang dibutuhkan untuk melakukan perjalanan antara dua tempat tersebut. Salah satu metode yang dapat
digunakan untuk menyelesaikan permasalahan pada pencarian jalur terpendek yaitu dengan menggunakan algoritma A* (A-Star).
Algoritma A* merupakan salah satu algoritma yang digunakan untuk memecahkan masalah pencarian jalur terpendek yang penerapannya dilakukan dengan cara bertahap (Sormin, Maningar, 2014).
1.2 Metode Penelitian
Pengumpulan data dilakukan dengan cara observasi langsung di lapangan dan studi pustaka dari sumber tertulis maupun elektronik. Dalam metode penelitian yang dilakukan penulis mengembangkan sistem yang akan dibangun meliputi.
a. Analisa Kebutuhan
Aplikasi ini user dapat mengetahui referensi lokasi wisata , dapat memilih akomodasi dan bisa mendapatkan rute terdekat menuju lokasi wisata. b. Desain
Tahapan desain pada program menggunakan adalah IDE Android Studio versi 2.1.2 yang berguna untuk pembangunan aplikasi dengan menyediakan fasislitas terintegrasi untuk pengembangan dan debugging.
c. Testing
Pengujian program dilakukan melalui tahap pengujian struktur white-box dan pengujian blackbox. Hal ini dilakukan untuk meminimalisir
kesalahan dan memastikan keluaran sesuai dengan yang diinginkan.
d. Implementasi
Penerapan rancangan dilakukan pada sistem operasi Android 5.0 (Lollipop).
II. LANDASAN TEORI
Landasan teori terkait dengan aplikasi wisata kabupaten lebak yaitu
2.1. LBS (Location Based Service)
Teknologi LBS (Location Based Service) merupakan salah satu bagian dari implementasi mobile GIS yang lebih cenderung memberikan fungsi terapan sehari-hari seperti menampilkan direktori kota, navigasi kendaraan, pencarian alamat serta jejaring sosial disbanding fungsionalitas pada teknologi GIS populer untuk field based GIS.
Sumber : amricozulni.com (2011)
Gambar 1. Cara Kerja LBS 2.2. Android
Android merupakan sistem operasi yang dikembangkan untuk perangkat mobile berbasis Linux. Awalnya, Android dikembangkan oleh Android, Inc dengan bantuan finansial dari Google. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Sistem operasi Android dibangun dari 5 komponen utama yaitu Aplications, Aplication Framework, Libraries, Android Runtime dan Linux Kernel. Sistem operasi Android dikemas dengan beberapa aplikasi inti yaitu email client, program SMS, kalender, peta, browser, kontak dan lainnya. Semua aplikasi tersebut dibangun dengan bahasa Java,dengan menyediakan pengembangan platform terbuka. Android memberika fasilitas pengembang untuk membangun aplikasi mereka sendiri.
2.3 Java
Bahasa pemrograman Java diciptakan oleh tim pemrogram yang pada saat itu dinamai The Green Project. Tim tersebut dipelopori sekaligus dipimpin oleh dua super-programmer bernama James Gosling dan Patrick Naughton dalam sebuah proyek dari Sun Microsystem yang memiliki visi misi menciptakan
suatu bahasa pemrograman mudah dan sederhana yang bias digunakan atau dijalankan pada berbagai peralatan sederhana tanpa terikat dengan arsitektur apapun
Platform Java terdiri dari sekumpulan library, compiler, debugger dan alat lain yang dipaket dalam JDK (Java Development Kit). Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi .java harus dikompilasi menjadi file bytecode. Untuk menjalankan file bytecode tersebut dibutuhkan JRE (Java Runtime Environment) yang memungkinkan pengguna untuk menjalankan program Java. JRE terdiri dari JVM dan pustaka Java yang digunakan
2.4 Algoritma A*
Algoritma A* pertama kali ditemukan pada tahun 1968 oleh Peter Hart, Nils Nilsson dan Bertram Raphael. Algoritma A* merupakan perbaikan dari metode BFS (Best-First Search) dengan menggunakan fungsi heuristic yaitu dengan meminimumkan total biaya lintasan dan akan memberikan solusi yang terbaik dalam waktu yang optimal.
Algoritma A* memiliki 5 komponen utama, yaitu: simpul awal, simpul goal, open list, closed list, dan
cost. Simpul awal merupakan titik awal dari posisi
saat ini, sedangkan simpul goal merupakan tujuan.
Cost merupakan nilai dari jarak yang telah ditempuh
untuk mencapai tujuan.
Sumber : en.wikipedia.org
Gambar 2. cara kerja algoritma A* III. METODE PENELITIAN
Metode yang digunakan untuk mencari jarak terdekat menuju lokasi wisata adalah dengan menggunakan algoritma A* (Star). Berikut adalah rancang algoritma berdasarkan kasus.
Pencarian jalur (pathfinding) merupakan proses pencarian rute terdekat dari suatu arena yang pada umumnya memiliki penghalang-penghalang dari arena tersebut. Adapun penghalang dapat berupa tembok, sungai dan sebagainya. Goal dari pathfinding ini pada umumnya adalah untuk mencari jalur paling efisien dengan sebisa mungkin menghindari penghalang yang ada. Salah satu metode yang dapat diterapkan dalam pathfinding ini yaitu algoritma A*. Implementasi algoritma A* pada perancangan aplikasi Wisata Lebak yaitu dengan memanfaatkan library
Google Maps untuk menampilkan graf dari setiap simpul (node) yang dipilih user. Node awal dan akhir ditentukan dengan cara menyentuh bidang peta yang selanjutnya algoritma A* akan melakukan perhitungan matematis untuk menampilkan rute terbaiknya. Dalam menentukan rute terdekat.
Algoritma A* memiliki 5 komponen utama yaitu :
1. simpul awal
adalah merupakan titik awal dari posisi saat ini, 2. simpul goal
merupakan titik akhir atau dapat juga disebut titik tempat tujuan.
3. open list
digunakan sebagai penampung alternatif simpul yang tersedia untuk dipilih sebagai simpul selanjutnya. Open list ini berupa sebuah priority
queue, dimana setiap simpul yang masuk pertama
akan dikeluarkan pertama dengan syarat tertentu.
4. closed list
Digunakan sebagai penampung simpul yang telah dilewati selama proses berlangsung. Closed list ini berupa sebuah stack, dimana simpul yang terakhir dimasukkan akan dikeluarkan pertama kali. Selain sebagai penampung simpul yang telah dilewati,
closed list ini juga digunakan untuk mendapatkan
rute terdekat saat simpul goal sudah dicapai.
5. cost
Cost merupakan nilai dari jarak yang telah
ditempuh untuk sampai ke tempat tujuan.
Closed list Isi dari open list dan closed list adalah node-n parent node-n, dan f(n). Node-n merupakan
simpul tempat berada sat ini. Parent node-n merupakan simpul asal dari simpul saat ini. f(n) merupakan nilai cost yang didapat dari perhitungan fungsi heuristik.
Cara perhitungan fungsi heuristik adalah dengan rumus:
f(n) = g(n) + h(n)
g(n)= merupakan cost yang telah didapat dari simpul awal hingga simpul yang akan dituju. h(n)= merupakan nilai estimasi dari suatu simpul
tempat berada hingga simpul goal.
Nilai h(n) didapat dari jarak antara suatu simpul hingga simpul goal tanpa perlu melewati simpul-simpul lain yang tersedia.
Nilai f(n) digunakan sebagai acuan dalam memilih simpul yang akan dituju selanjutnya. Simpul yang memiliki nilai f(n) terkecil yang akan dipilih sebagai simpul tujuan. Secara singkat dimisalkan simpul awal adalah X dengan jarak dari simpul Y hal ini diasumsikan sebagai jarak antara simpul X dan Y maka algoritma A* akan menganalisa nilai jarak awal dan melakukan perhitungan nilai terkecil ke tujuan,berikut adalah desain algoritma dari kasus :
Input Awal → X Tujuan → Y Output Hasil terkecil → Z a. Procedure
Ambil node dan jarak dari setiap node yang dimulai
dari X menuju Y dan masukan dalam array
node(x).
JumNode = Count(Node[X→Y])
For(i=1 to i<=JumNode
Jarak[i] = Jarak (node[i], node[i+1]) Next i
b. Bandingkan setiap node
For i=1 to jumlah_node Z = node(i)
For j=i to node(i) If Z=node(j) then Z = node(j) Endif Next i Next j IV. PEMBAHASAN
Pada penulisan ini pembahasan dibagi menjadi beberapa sub yaitu diagram UML, implementasi dan
testing.
4.1 Diagram UML
Untuk memperjelas gambaran sistem pada aplikasi yang dibuat maka dibuatlah pemodelan UML yang meliputi lima diagram yaitu: Use Case Diagram,
Activity Diagram, Class Diagram, Deployment Diagram dan Sequence Diagram.
a. Use Case Diagram
Sumber : Hasil Penelitian
Gambar 3. Use Case Diagram
Pada gambar 3 menjelaskan bahwa user dapat melihat informasi wisata, informasi akomodasi, melihat peta dan melakukan pilihan tujuan berdasarkan kebutuhan wisata dan melihat informasi mengenai pembuat aplikasi.
b. Activity Diagram
Sumber : hasil Penelitian
Gambar 4. Activity Diagram Aplikasi
Pada gambar 4 menjelaskan activity diagram aplikasi wisata Lebak. User bisa memilih menu Wisata, Akomodasi, peta dan informasi. Jika user sudah melakukan pemilihan menu maka menu akan tampil.
c. Deployment Diagram
Sumber : Hasil Penelitian
Gambar 5. Deployment DiagramAplikasi
Pada gambar 5 menggambarkan komponen program pada aplikasi wisata lebak dengan format akhir .apk yang di implementasi ke perangkat android atau android device.
d. Sequence Diagram
Sumber : Hasil penelitian
Gambar 6. Sequence Diagram Aplikasi
Pada gambar 6 merupakan sequence diagram atau tahapan-tahapan user pada saat mengakses menu-menu yang terdapat pada aplikasi wisata Lebak 4.2 Implementasi
Berikut adalah hasil implementasi aplikasi yang sudah dijalankan di perangkat smartphone berbasis android
Sumber : Hasil Penelitian
Gambar 7. Tampilan Menu Utama
Pada gambar 7 merupakan tampilan menu utama dari aplikasi wisata Lebak. Pada menu Utama terdapat Sub Menu Wisata, Menu Akomodasi, Menu Peta dan Menu Informasi.
Berikut adalah gambar tampilan apabila user mengakses menu Peta. Pada Menu Peta terdapat pin merah dan biru yang merupakan tanda tempat wisata.
Sumber : Hasil Penelitian
Gambar 8. Tampilan Peta Wisata
Pada gambar 8 adalah tampilan keseluruhan tempat wisata yang terdapat di Lebak propinsi Banten.
4.3 Testing
Pengujian pada aplikasi wisata dilakukan dengan yaitu pengujian black box.Berikut ini hasil pengujian yang telah dilakukan.
Pengujian Black Box
Pengujian black box dilakukan untuk mangamati hasil eksekusi melalui data uji dan memeriksa fungsionalitas dari perangkat lunak baik input maupun output .
Berikut adalah Tabel hasil dari pengujian blackbox Tabel 1. Hasil Pengujian Black Box No Skenario
Uji
Proses Hasil yang diharapkan keteran gan 1 Membuka Aplikasi Menampil kan Menu Utama Tampil Menu Utama Sesuai 2 Memilih menu Wisata Menampil kan info wisaa Tampil Informasi Wisata Seuai 3 Memilih Sliding Tab Menampil kan objek wisata Tampil Objek Wisata Sesuai 4 Memilih menu Akomoda si Menampil kan daftar akomodas i Tampil Daftar Akomodasi Sesuai 5 Memilih menu Peta Menampil
kan Peta Tampil peta Sesuai 6 Click on Map Memilih posisi Tujuan Tampil Rute Tujuan Sesuai 7 Memilih Menu Informasi Menampil kan Informasi Aplikasi Tampil Informasi Aplikasi Sesuai
Sumber : Hasil Penelitian
V. KESIMPULAN
Beberapa kesimpulan yang dapat diambil dari perancangan sistem ini adalah:
1. Aplikasi Wisata Lebak untuk mendapatkan rute terbaik dengan menggunakan algoritma A* telah berhasil dibangun.
2. Fitur yang dimiliki oleh aplikasi adalah penentuan posisi user dalam memilih tujuan objek wisata untuk mendapatkan rute terdekat
yang ditampilkan pada peta secara online. 3. Algoritma A* bisa memanfaatkan library
Google Maps yang menyimpan simpul-simpul berupa rute jalan.
REFERENSI
Nugroho, Adi. (2009). Rekayasa Perangkat Lunak Menggunakan UML Dan Java. Yogyakarta: Penerbit Andi.
Riyanto.(2010). Sistem Informasi Geografis Berbasis Mobile. Yogyakarta: Gava Media
Rossa dan Shalahuddin. (2013). Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung: Penerbit Informatika.
Russell, Stuart J. and Peter Norvig. (2013). Artificial Intelligence A Modern Approach Third Edition.New Jersey: Pearson Education, Inc. Sormin, Maningar. (2014). Perancangan Aplikasi
Pencarian Jalur Terpendek Menggunakan Algoritma A*. ISSN : 2301-9425. Medan: Jurnal Pelita Informatika Budi Darma, Volume : VI, No. 3, April 101-105