Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 2, No. 8, Agustus 2018, hlm. 2307-2316
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Rancang Bangun Aplikasi Mobile Media Informasi Wisata Suroboyo Carnival Berbasis Augmented Reality Alfin Noor Afyuddin1, Issa Arwani2, Tri Afirianto3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak Pariwisata termasuk kebutuhan manusia dan menjadi sektor penting untuk meghasilkan pendapatan daerah dan negara. Pada umumnya wisatawan memanfaatkan media cetak untuk mendapatkan informasi dan menjadi panduan di suatu lokasi wisata. Namun media tersebut memiliki keterbatasan, sehingga diperlukan suatu media yang interakif dan efektif untuk digunakan sebagai media informasi suatu lokasi wisata. Media pembantu tersebut berupa aplikasi yang memberikan fitur navigasi yang menunjukkan arah dan jarak lokasi pengguna dengan lokasi wahana yang dituju serta saran urutan kunjungan dan informasi wahana yang dibutuhkan. Media yang digunakan adalah smartphone dengan memanfaatkan teknologi augmented reality serta penggunaan metode kombinasi, permutasi dan algoritma dijkstra untuk saran urutan kunjungan dengan jalur terpendek. Fitur smartphone Android yang dimanfaatkan adalah kamera, GPS, akselerometer, dan kompas. Perancangan sistem menggunakan framework beyondAR. Pengujian yang pada sistem berupa pengujian fungsional, pengujian akurasi sudut, dan pengujian akurasi jarak. Fungsi berupa penentuan arah dan jarak dengan penanda serta saran urutan kunjungan dapat berjalan. Pada hasil pengujian akurasi sudut hasil yang muncul dari implementasi rumus heading pada aplikasi mempunyai persentase akurasi sebesar 97,43%. Dan pada pengujian akurasi jarak mempunyai persentase akurasi sebesar 99,79% dengan perhitungan jarak menggunakan metode haversine. Hasil pengujian akurasi menunjukkan implementasi pada sistem memiliki akurasi yang tinggi. Kata kunci: suroboyo carnival, beyondAR, haversine, sudut heading, jalur terpendek
Abstract Tourism includes human needs and becomes an important sector for generating regional and state revenues. In general, tourists use print media to obtain information and become a guide in a tourist location. But the media has limitations, so it needs an interactive and effective media to be used as a medium of information of a tourist location. Auxiliary media is an application that provides navigation features that show the direction and distance of the user location with the location of the intended rides as well as suggestions of the order of visits and information of the required rides. The media used are smartphones by utilizing augmented reality technology as well as the use of combinations, permutations and algorithms dijkstra to suggest the order of visits with the shortest path. Features used Android smartphone is a camera, GPS, accelerometer, and compass. System design using the framework beyondAR. Testing on the system in the form of functional testing, angle accuracy testing, and distance accuracy testing. The function of determining the direction and distance with the markers and suggestions of the order of visits can run. On the results of the results of accuracy test results arising from the implementation of the formula heading on the application has a percentage of accuracy of 97.43%. And on the test of accuracy of distance has the accuracy percentage of 99.79% with distance calculation using haversine method. Accuracy test results show the implementation on the system has a high accuracy. Keywords: suroboyo carnival, beyondAR, haversine, corner heading, shortest path
Fakultas Ilmu Komputer Universitas Brawijaya
2307
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1. PENDAHULUAN Segala jenis kegiatan wisata yang didukung dengan adanya fasilitas yang disediakan oleh pemerintah, swasta, pengusaha, ataupun yang lain dengan tujuan wisata di manapun merupakan sebuah kegiatan Pariwisata (Indonesia, 2009). Pariwisata juga menjadi salah satu kebutuhan manusia di samping kebutuhan pokoknya berupa sandang, pangan, dan papan. Saat ini informasi yang didapat mengenai wahana yang ada di Suroboyo Carnival saat berada di lokasi wisata hanya berupa brosur cetak. Brosur sebagai media cetak memiliki beberapa kekurangan dalam penggunaannya, antara lain: perhatian yang kurang karena tidak bersifat audio dan visual, desain poster harus menarik, dan jenis bahan yang mudah sobek (Wulandari, 2014). Sehingga media informasi tersebut dirasa kurang efektif dan interaktif untuk digunakan. Untuk menentukan lokasi wahana berdasarkan pada arah yang dituju dan jarak dari lokasi tujuan di Suroboyo Carnival dibutuhkan sebuah media pembantu yang penggunaannya lebih efektif dan interaktif. Media pembantu tersebut dapat berupa aplikasi yang memberikan fitur navigasi serta menunjukkan arah dan jarak lokasi pengguna dengan lokasi wahana yang dituju serta informasi wahana yang dibutuhkan. Salah satu perangkat yang banyak digukan di kalangan pengguna adalah smartphone dengan sistem operasi Android (Prasetyo & Sutrisno, 2012). Semakin berkembangnya teknologi informasi memicu munculnya teknologiteknologi baru, salah satunya adalah virtual reality. Konsep dasar yang disampaikan pada 1994 menyatakan bahwa augmented reality lebih dekat pada lingkungan nyata sehingga objek tambahan yang berwujud virtual seakan berada di lingkungan nyata (Milgram dkk, 1994). Augmented reality merupakan kombinasi antara dunia nyata dan virtual yang bersifat interaktif secara real-time berupa animasi 3D (Azuma, 1997). Implementasi augmented reality pada smartphone Android memanfaatkan kemampuan kamera dan akan dianalisa secara langsung menggunakan fitur GPS, akselerometer dan kompas pada perangkat yang digunakan (Sari dkk, 2014). BeyondAR memiliki kesederhanaan dan kemudahan untuk digunakan (Prameswari, 2015). BeyondAR dirancang untuk para Fakultas Ilmu Komputer, Universitas Brawijaya
2308
pengembang yang berminat dengan augmented reality berbasis geolokasi pada smartphone dan tablet. BeyondAR memungkinkan pengembang untuk mengatur obyek dengan mudah yaitu hanya dengan mengatur konten yang sudah disediakan (BeyondAR, 2011). Dari beberapa kondisi dan latar belakang yang sudah dijelaskan maka penyusunan skripsi dengan judul βRancang Bangun Aplikasi Mobile Media Informasi Wisata Suroboyo Carnival Bebasis Augmented Realityβ ini agar dapat memberikan solusi dan kemudahan dalam peningkatan pelayanan tempat wisata di Suroboyo Carnival berupa penyediaan informasi yang lebih interaktif dan efisien pada media yang digunakan. Selain itu pelayanan di tempat wisata tersebut diharapkan dapat mengikuti perkembangan teknologi informasi. 2. SUROBOYO CARNIVAL Suroboyo Carnival adalah nama yang diharapkan menjadi dasar terwujudnya Surabaya sebagai destinasi wisata yang luar biasa. Dengan konsep permainan, olahraga, hiburan, dan perbelanjaan, telah menjadikan Suroboyo Carnival wahana wisata baru bagi masyarakat Surabaya. Terletak di Jalan Ahmad Yani No.333 Surabaya (Suroboyo Carnival, 2016). Untuk memenuhi kenyamanan pengunjung, Suroboyo Carnival juga menyediakan fasilitasfasilitas umum seperti: musholla, toilet, tempat penitipan barang dan lain-lain. Bukan hanya fasilitas yang tersedia, Suroboyo Carnival juga mengadakan even-even untuk menarik para wisatawan berkunjung. Even yang diselenggaran dibagi menjadi dua jenis, yaitu even besar dan even harian. Even besar merupakan even yang menyesuaikan dengan peringatan hari-hari besar atau momen tertentu. Sedangkan even harian berupa even dance, sulap, permainan, bagi-bagi hadiah atau yang lain yang dilakukan setiap hari (Suroboyo Carnival, 2016). Destinasi wahana Suroboyo Carnival dikelompokkan dalam beberapa jenis: Area Dolanan, Wahana Indoor, Wahana Outdoor, Kuliner, SC Market, dan Dunia Anak. Dari enam jenis kelompok destinasi tersebut ada dua destinasi yang memiliki banyak pilihan wahana, yaitu wahana indoor dan outdoor (Suroboyo Carnival, 2016) 3.
BEYONDAR
BeyondAR merupakan salah satu framework untuk augmented reality yang biasa
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
digunakan pada smartphone atau tablet. Kemudahan ditawarkan bagi para developer yang mengembangkan aplikasi augmented reality berbasis geolokasi. Hal tersebut dikarenakan konten yang tersedia dapat digunakan dengan mudah (BeyondAR, 2011). Sensor yang digunakan dalam BeyondAR adalah Accelerometer dan Magnetic field untuk menampilkan augmented reality. Saat data dari sensor data diubah maka onSensorChanged akan dipanggil. Sedangkan SensorEvent digunakan untuk memeriksa jenis sensor yang mengolah data 4.
HAVERSINE
Haversine Formula merupakan metode untuk mengetahui jarak antar dua titik lokasi dengan memperhitungkan bahwa bumi bukanlah sebuah bidang datar, namun bidang yang memiliki derajat kelengkungan. Haversine Formula menghitung jarak antara 2 titik berdasarkan panjang antara 2 titik pada garis bujur dan lintang (Putra dkk, 2015). Metode haversine adalah persamaan yang memberikan nilai (jarak) antara 2 titik koordinat pada permukaan bumi yang bulat berdasarkan longitude dan latitude. Secara matematis rumus haversine dapat ditunjukkan pada Persamaan 1: π = 2πππππ ππ (βsin2 (
πππ‘2 βπππ‘1
cos(πππ‘1 ) cos(πππ‘2 ) sin2 (
2
)+
ππππ2 βππππ1 2
))
(1)
2309
Gambar 1. Azimuth Sumber: (Jaelani, 2014)
Jika utara bersudut 0 derajat dan pengukuran dimulai dari utara maka arah selatan bersudut 180 derajat. Pernyataan arah tersebut dinamakan pernyataan sudut arah dengan Azimuth. Pernyataan Azimuth, merupakan besarnya sudut arah yang diukur dari utara magnet Bumi ke titik yang lain searah putaran jarum jam. Dengan demikian, pengukuran dengan metode Azimuth berkisaran 0β360 derajat. Untuk mendapatkan azimuth yang akan di gunakan pada aplikasi, maka diperlukan longitude dan latitude yang didapatkan melalui API yang ada di Android. Untuk menentukan arah pada aplikasi pencarian lokasi menggunakan augmented reality diperlukan perhitungan untuk mengetahui sudut dan jarak antara 2 titik koordinat yaitu lokasi pengguna dan lokasi wahana permainan. Titik koordinat yang didapat dari GPS berupa longitude dan latitude.
Keterangan : π πππ‘1 πππ‘2 ππππ1 ππππ2 π
5.
= jari-jari bumi 6371,1(km) = besaran latitude titik awal = besaran latitude titik akhir = besaran longitude awal = besaran longitude akhir = jarak (km)
AZIMUTH SUDUT HEADING
Azimuth adalah sudut hasil ukur searah jarum jam dari titik acuan bebas. Sesuai pada , Azimuth mulai dari 0Β° sampai 360Β° tanpa menggunakan huruf-huruf untuk menunjukkan kuadran (Jaelani, 2014).
Fakultas Ilmu Komputer, Universitas Brawijaya
Gambar 2. Sudut Dari Dua Titik Koordinat Sumber: (Maruzar, 2013)
Dari Gambar 2, Gambar menunjukkan a adalah sudut heading, dimana titik 0 derajat adalah arah ke utara peta, 90 derajat adalah arah timur peta, 180 derajat adalah arah selatan peta, 270 derajat adalah arah barat peta, dan 360 derajat sama dengan 0 derajat atau arah utara peta. Start adalah titik awal dan finish adalah titik akhir atau tujuan dan jarak antara keduanya dilambangkan dengan huruf r (Maruzar, 2013). Adapun untuk menghitung sudut heading, terdapat 4 variabel yang diperlukan, yaitu:
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1. 2. 3. 4.
Latitude pengguna (πππ‘1 ) Longitude pengguna (ππππ1 ) Latitude wahana (πππ‘2 ) Longitude wahana (ππππ2 )
Sudut heading (π) dapat dicari dengan menggunakan rumus : π₯=(
πππ‘1
π¦=( π§=( π=
180 πππ‘2 180
Γ π)
(2)
Γ π)
(3)
ππππ2 180
Γ π) β (
ππππ1 180
Γ π)
πππ(π‘ππ2((πππ π¦Γπ ππ π₯)β(π ππ π¦Γπππ π¦Γπππ π§),π ππ π§Γπππ π₯),2Γπ( )) 180
(4) Γπ
(5) Pada Persamaan 2 dan Persamaan 3, latitude longitude pengguna sebagai titik awal dan latitude longitude wahana sebagai titik akhir harus dirubah kedalam satuan radian terlebih dahulu. Kemudian dicari selisih antara lokasi wahana dan lokasi pengguna pada Persamaan 4, dimana hasil perhitungan tersebut dapat digunakan untuk Persamaan 5. Sebelum mendapatkan nilai heading dilakukan seleksi kondisi if-else seperti pada Gambar 3.
Gambar 3. Diagram Seleksi Kondisi pada Perhitungan Akhir Persamaan Heading
Sudut heading yang terdapat pada Gambar 2 menunjukan besar sudut yang didapatkan dari titik koordinat awal dan titik koordinat akhir yang ditunjukan dalam derajat dari kutub utara (true north). Untuk melakukan implementasi rumus heading pada aplikasi Android, dapat menggunakan metode Math.toRadians() dengan memasukkan derajat sudut sebagai parameter untuk mendapatkan nilai radian dari sebuah nilai derajat dari sudut. Setelah mengetahui besar sudut heading, selanjutnya nilai Azimuth dan nilai heading diberikan kondisi untuk menentukan arah panah. 6.
JALUR TERPENDEK
Pencarian jalur terpendek merupakan suatu usaha yang dilakukan untuk mencari jarak Fakultas Ilmu Komputer, Universitas Brawijaya
2310
tempuh paling dekat dari posisi awal ke posisi tujuan. Secara umum penyelesaian masalah ini dapat dilakukan menggunakan metode heuristik dan konvensional (Mutakhiroh dkk, 2007). Perhitungan konvensional dilakukan dengan membandingkan jarak tiap node dan menggunakan perhitungan matematis dasar yang sederhana sehingga akan bermasalah pada proses kalkulasi dan hasil perhitungan jika data yang diolah dalam jumlah banyak dan besar (Alamsyah, 2010). Salah satu metode konvensional yang sering digunakan adalah Dijkstra. Namun dalam kondisi sebaliknya (data kecil dan terdeskripsi) metode konvensional memiliki banyak kelebihan dari segi hasil perhitungan yang konstan, penggunaan memory, kompleksitas waktu, dan lain-lain (Ferdifiansyah dkk,). Untuk menentukan jalur terpendek sesuai pilihan node menggunakan metode konvensional dijkstra didahului dengan penentuan urutan. 6.1 Permutasi Permutasi meruakan penyusunan beberapa objek pada urutan tertentu sejumlah kebutuhan dalam waktu tertentu (Bluman, 2009). Dalam prinsip dasarnya, penyusunan yang dilakukan dengan permutasi akan memperhatikan bagaimana urutan yang digunakan. Walaupun berbeda satu urutan, hal tersebut dianggap sebagai urutan yang berbeda. Dengan diperhatikannya sebuah urutan maka setiap objek yang dihasilkan harus berbeda antara satu dengan yang lain. Misal, urutan angka ({123} berbeda dengan {312} begitu juga dengan {213) dan {132}) (Rosen, 2012). Persamaan untuk mencari banyaknya permutasi n unsur jika disusun pada unsur k di mana k β€ n adalah: n!
π(π, π) = (πβπ)!
(6)
dengan: π : banyak objek yang dapat dipilih π : banyak objek yang ingin dipilih 6.2 Kombinasi Kombinasi adalah penggabungan bebeapa objek dari sebuah grup/kumpulan tanpa memperhatikan urutan dari objek-objek penyusun tersebut. Kondisi tanpa memperhatikan urutan objek penyusun ini yang membedakan kombiasi dengan permutasi. Pada kombinasi, susunan AB = AB sedangkan pada permutasi susunan AB tidak sama dengan BA.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2311
Lambang notasi untuk kombinasi adalah C. Jika disebutkan n kombinasi r, maka dapat ditulis menjadi nCr. Rumus kombinasi adalah sebagai berikut (Bluman, 2009). π πΆπ
=
π! π!(πβπ)!
(7)
dengan: π : banyak objek yang dapat dipilih π : jumlah yang harus dipilih 6.3 Dijkstra Dijkstra merupakan salah satu jenis metode konvensional yang digunakan untuk menentukan rute terpendek dari suatu posisi ke posisi yang dituju. Metode ini berjalan dengan informasi atau data lokasi yang dituju, berupa jumlah lokasi dan jarak masing-masing lokasi harus didefinisikan terlebih dahulu. Dengan demikian Dijkstra akan membandingkan jarak masing-masing node yang sudah diketahui untuk mencari jarak terpendek dari lokasi awal ke lokasi akhir tujuan. Skema algoritma dijkstra dapat menentukan jalur terpendek dari node 1 ke node 3 dengan skema sebagai berikut (Ferdifiansyah dkk, 2012):
Gambar 4. Graf Pemetaan Node dan Jarak antar Node
b.
a.
c.
Gambar 6. Skema Pemilihan Node (a) Dari Node 4 Langsung ke Node 3. (b) Dari Node 4 Melalui Node 5 ke Node 3. (c) Dari Node 4 Melalui Node 2 ke Node 3
Pada Gambar 6 skema dimulai dari node 1 bernilai 0 menuju ke node 4 yang sebelumnya memiliki nilai tak hingga (β) menjadi 5 karena jalur yang dilalui sejauh 5. Langkah berikutnya dilakukan dengan membandingkan node yang bisa dilalui menuju node 3, yaitu melalui node 2, node 5, atau langsung ke node 3. Pada langkah ini ada tiga jalur yang dapat dilalui untuk menuju ke node 3 dengan membandingkan nilai minimum jalur yang dapat dilalui. Jalur yang langsung menuju ke node 3 bernilai 14 sedangkan yang lain 7, sehingga jalur langsung dari node 4 menuju ke node 3 tidak dipilih. Ada dua jalur yang memiliki nilai sama, yaitu melalui node 2 dan node 5. Keduanya harus dibandingkan untuk memperoleh jalur terpendek. Hasilnya, jalur melalui node 5 lebih jauh dibanding melalui node 2 dengan masingmasing nilai 11 dan 8. Dengan demikian skema tersebut dapat menunjukkan jalur terpendek melalui node 1-4-2-3. 7.
KEBUTUHAN DATA
7.1 Denah
Gambar 5. Pemilihan Jalur dengan Membandingkan Jarak antar Node
Dengan model pemetaan seperti Gambar 4 terdapat beberapa jalur yang dapat dilewati dari node 1 ke node 3. Namun metode dijkstra akan mencari jalur terpendek yang akan dilalui dengan memperhatikan bobot jarak antar node. Sehingga akan didapatkan jalur yang terpendek, yaitu sesuai Gambar 5 yang menunjukkan bahwa yang dipilih adalah node 5 karena memiliki bobot jarak lebih kecil. Pemilihan Jalur dengan Membandingkan Jarak antar node.
Fakultas Ilmu Komputer, Universitas Brawijaya
Untuk memperolah data siap dilakukan inisialisasi dan pengolahan data. Data tersebut diperoleh dari graf denah wisata yang telah disederhanakan. Dimana w0 adalah titik awal (Pintu Masuk), w1 adalah lokasi 1 (Night Market), w2 adalah lokasi 2 (Children Rides), w3 adalah lokasi 3 (Art & Wax House), w4 adalah lokasi 4 (Ferris Wheel), w5 adalah lokasi (Roda Gila), w6 adalah lokasi 6 (Cinema 4D) dan wX adalah titik akhir (Pintu Keluar). Gambar adalah graf lokasi wisata yang menunjukkan bentuk sederhana denah wahana wisata yang ada.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2312
7.2 Koordinat Lokasi Dalam implementasi sistem digunakan pencarian dengan tampilan augmented reality. Untuk melakukan pencarian tersebut dibutuhkan koordinat wahana wisata yang dijadikan data untuk diolah dan digunakan di dalam sistem. Data koordinat wahana wisata terdapat pada Tabel 2.
Gambar 7. Graf Denah Wahana
Dari inisilisasi data pada Gambar 6 dapat diketahui apa saja node yang tersedia dan terhubung satu dengan yang lain serta arah yang dapat dilalui. Dalam penerapannya diasumsikan bahwa tidak terdapat jalur menuju titik w0 dan tidak terdapat jalur keluar ari wX. Dari inisalisasi tersebut didapatkan tabel hasil inisialisasi dari graf pada Tabel 1. Tabel 1. Hasil Inisialisasi Graf
Tabel 2. Data Koordinat Lokasi Node
Latitude
Longitude
Start
-7,3452479
112,7321826
Night Maret
-7,3446024
112,7327266
Childern Rides
-7,3445437
112,7327236
Art & Wax House
-7,3446984
112,7331899
Ferrish Wheel
-7,3446716
112,7332406
Roda Gila
-7,3443528
112,7337852
4D Cinema
-7,3439891
112,7335316
Exit
-7,3450245
112,7319279
w 0
w1
w2
w3
w4
w5
w6
wX
w 0
-1
0,09 4
0,09 9
-2
-2
-2
-2
0,03 8
w 1
0
-1
0,00 7
0,05 2
-2
-2
-2
0,10 0
8.
w 2
0
0,00 7
-1
-2
-2
-2
-2
0,10 3
w 3
-2
0,05 2
-2
-1
0,00 6
-2
-2
-2
w 4
-2
-2
-2
0,00 6
-1
0,70
0,08 2
-2
Pada bab ini akan membahas perhitungan jarak dan arah menuju wahana pilihan serta penentuan saran urutan kunjungan dengan jalur terpendek.
w 5
-2
-2
-2
-2
0,07 0
-1
0,16 0
-2
8.1. Arah dan Jarak
w 6
-2
-2
-2
-2
0,08 2
0,16 0
-1
-2
w X
0
0
0
0
0
0
0
-1
Untuk menentukan arah panah penunjuk dalam aplikasi digunakan nilai heading dan nilai azimuth agar dapat diketahui arah mana yang akan ditampilkan. Kedua nilai tersebut akan digunakan sebagai variabel dalam seleksi kondisi penentuan arah, sehingga arah panah akan sesuai dengan kondisi saat meggunakan aplikasi ini.
Keterangan: 0 : tidak ada jalur -1: tetap -2: tidak terhubung
Tabel 1 menunjukkan bawa kolom peratama merupakan node awal dan baris pertama merupakan node tujan. Masing-masing node yang terhubung memiliki nilai(jarak) yang harus ditempuh untuk menuju ke node yang lain. Dengan asumsi bahwa dari titik awal (w0) arah yang disediakan selalu ke arah luar atau tidak ada arah menuju w0 dan pada titik akhir (wX) selalu masuk atau tidak ada tujuan lagi setelah di wX maka nilai 0 menunjukkan jalur tersebut tidak menyediakan arah sesuai tujuan yang diinginkan. Misal dari w1-w0, dengan anggapan tidak ada pengunjung yang langsung menuju pintu keluar ketika baru masuk. Untuk nilai -1 menunjukka tidak ada pergeseran menuju node lain atau tetap. Dan nilai -2 menunjukkan bahwa node tersebut tidak terhubung satu sama lain. Fakultas Ilmu Komputer, Universitas Brawijaya
HASIL DAN PEMBAHASAN
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2313
arah tidak ditampilkan. Jika kondisi pertama tidak dipenuhi akan dilakukan pengecekan pada kondisi kedua, jika nilai mAzimut kurang dari mHeadingGPS dan Azimut lebih besar dari nilai mHeadingGPS dikurangi 180 maka penunjuk arah kanan akan ditampilkan. Namun jika kondisi kedua juga tidak terpenuhi maka yang ditampilkan adalah penunjuk arah ke kiri. Tampilan navigasi pada Gambar 9.
a.
b.
c.
Gambar 9. Tampilan Navigasi Penunjuk. (a.) Penunjuk ke Kiri. (b.) Penunjuk Lokasi. (c.) Penunjuk ke Kanan Gambar 8. Implementasi Seleksi Kondisi Penentuan Arah
Pada Gambar 8 ditunjukkan dua seleksi kondisi. Kondisi pertama adalah saat nilai variabel mHeadingGPS mulai dari 0 sampai 180, sehingga akan dilanjutkan dengan eksekusi baris 2 hingga 10. Untuk kondisi nilai variabel mHeadingGPS selain 0 hingga 180 akan mengeksekusi baris 12 hingga 20. Dalam kondisi pertama nilai variabel mHeadingGPS 0 hingga 180 akan dilakukan tiga kali seleksi kondisi. Pertama, jika nilai mHeadingGPS dikurangi 20 lebih kecil dari nilai mAzimut dan mAzimut lebih kecil dari 20 ditambah nilai mHeadingGPS, maka penunjuk arah tidak akan ditampilka. Jika tidak memenuhi kondisi pertama akan dilanjutkan pada pengecekan kondisi kedua, jika nilai mAzimut lebih besar dari mHeadingGPS dan nilai mAzimut lebih kecil dari 180 ditambah nilai mHeadingGPS maka akan menampilkan penunjuk arah ke kiri. Jika kondisi kedua juga tidak terpenuhi maka yang ditampilkan dalah arah panah ke kanan. Di kondisi kedua, saat variabel mHeadingGPS tidak pada nilai 0 hingga 180 juga dilakukan tiga seleksi kondisi. Pertama, jika nilai mHeadingGPS dikurangi 20 kurang dari nilai mAzimut dan nilai mAzimut kurang dari 20 ditambah nilai mHeadingGPS maka penunjuk Fakultas Ilmu Komputer, Universitas Brawijaya
Gambar 9 menampilkan hasil implementasi untuk menunjukkan arah dari perhitungan azimuth untuk mencari sudut heading. Jarak juga ditampilkan dari lokasi koordinat (latitude,longitude) pengguna dan wahana tujuan. 8.2. Saran Urutan Kunjungan Implementasi penentuan urutan kunjungan berfungsi membantu pengguna dengan memberian saran jalur terpendek untuk mengunjungi wahana yang telah dipilih. Saran urutan kunjungan muncul setelah pengguna memilih wahana yang ingin dikunjungi. Urutan kunjungan muncul dari data jadi yang telah dihitung bobot jarak tempuhnya. Untuk menentukan urutan kunjungan, digunakan implementasi fungsi checkbox untuk menentukan komposisi wahana yang ingin dikunjungi. Pada implementasi checkbox, variabel cbx berupa string digunakan untuk menyimpan hasil pilihan wahana. Saat pengguna memilih wahana 1 (Night Market) variabel cbx diberi isi string 1. Hal yang sama berlaku saat pengguna memilih wahana lain, maka variabel cbx berisi string sesuai pilihan wahana. Misal pengguna memilih wahana 1, 2, 3 dan 4, maka string pada variabel cbx berisi 1234. Isi variabel tersebut digunakan untuk melakukan pengecekan pada data variabel berupa string yang telah dideklarasikan Gambar
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2314
jarak adalah sebagai berikut:
9. String aa = "1"; String ab = "2"; String ac = "3"; String ad = "4"; String ae = "5"; String af = "6"; String ba = "12"; String bb = "13"; String bc = "14"; String bd = "15"; String be = "16"; String bf = "23"; String bg = "24"; String bh = "25"; String bi = "26"; String bj = "34"; String bk = "35"; String bl = "36"; String bm = "45"; String bn = "46"; String bo = "56"; String ca = "123"; String cb = "124"; String cc = "125"; String cd = "126"; String ce = "134"; String cf = "135"; String cg = "136"; String ch = "145"; String ci = "146"; String cj = "156"; String ck = "234"; String cl = "235"; String cm = "236"; String cn = "245"; String co = "246"; String cp = "256"; String cq = "345"; String cr = "346"; String cs = "356"; String ct = "456"; String da = "1234"; String db = "1235"; String dc = "1236"; String dd = "1245"; String de = "1246"; String df = "1256"; String dg = "1345"; String dh = "1346"; String di = "1356"; String dj = "1456"; String dk = "2345"; String dl = "2346"; String dm = "2356"; String dn = "2456"; String dp = "3456"; String ea = "12345"; String eb = "12346"; String ec = "12356"; String ed = "12456"; String ee = "13456"; String ef = "23456"; String f = "123456";
Gambar 10. Kode Deklarasi Variabel Berupa String
Pada Gambar 10 terdapat beberapa deklarasi variabel berupa string dengan isi kombinasi angka untuk digunakan sebagai validasi penentuan jalur. Variabel dari pilihan wahana oleh pengguna dibandingkan dengan variabel string yang telah dideklarasikan sebelumnya. Dari perbandingan tersebut akan menentukan urutan kunjungan yang disarankan sesuai pilihan wahana.
Lokasi 1: = 100% β (
143,832 64.957,168
π₯ 100%) = 100%
- 0,22% = 99,78% Lokasi 2: = 100% β (
148,599 64.963,401
π₯ 100%) = 100%
- 0,23% = 99,77% Lokasi 3: = 100% β (
114,754 64.964,246
π₯ 100%) = 100%
- 0,18% = 99,82%
Dari hasil terhadap ketiga lokasi diperoleh hasil rata-rata: (99,78 + 99.77 + 99.82) / 3 = 99,79%. Berdasarkan persentase akurasi dapat diketahui persentase error jarak adalah 100% 99,79% = 0,21%. Sehingga dengan selisih akurasi 0,21% aplikasi ini masih menjadi aplikasi mobile dengan implementasi augmented reality berbasis Android yang dapat menunjukan arah dan jarak lokasi wahana permainan di Suroboyo Carnival dan memiliki akurasi yang tinggi. Tabel 3. Analisis Hasil Pengujian Sudut Heading Lokasi Tujuan Lokasi 1 [Night Market]
Hasil Ms. Excel
Hasil Aplikasi
Selisih
15,099 derajat
14,685 derajat
0,414 derajat
97,26%
15,047 derajat
14,685 derajat
0,407 derajat
97,30%
15,099 derajat
14,755 derajat
0,344 derajat
97,72%
Persentase akurasi
(-7,3446024 , 112,7327266) Lokasi 2 [Chldern Rides] (-7,3445437 , 112,7327236) Lokasi 3 [Ferris Wheel] (-7,3446716 , 112,7332406)
Gambar 11. Saran Urutan Kunjungan
Saran urutan kunjungan ditampilkan sesuai komposisi pilihan wahana yang ingin dituju seperti pada Gambar 11. 8.3. Tingkat Akurasi Analisis dilakukan dengan melihat selisih nilai jarak yang dihasilkan oleh aplikasi dengan nilai jarak yang dihasilkan dari perhitungan rumus haversine. Dari data pada diketahui persentase akurasi jarak tiap lokasi dengan perhitungan pada persamaan 6.1, sehingga dapat diketahui rata-rata persentase tingkat akurasi Fakultas Ilmu Komputer, Universitas Brawijaya
Hasil pengujian ketiga sudut heading ditampilkan pada Tabel 3. Pada tabel ditampilkan hasil perhitungan manual dengan hasil perhitungan aplikasi. Dari kedua perhitungan didapatkan selisih. Selisih tersebut digunakan untuk menghitung persentase akurasi sudut heading. Untuk hasil pengujian akurasi jarak ditampilkan pada Tabel 5 berupa perhitungan manual dan perhitungan dari aplikasi. Kedua perhitungan tersebut juga digunakan untuk menentukan selesih. Selisih yang dihasilkan akan dimasukkan dalam perhitungan untuk menentukan persentase
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
akurasi
Majalah Ilmiah - Mektek 3.
Tabel 4. Analisis Hasil Pengujian Jarak
Lokasi Tujuan
Lokasi 1 [Night Market] (-7,3446024 , 112,7327266) Lokasi 2 [Chldern Rides] (-7,3445437 , 112,7327236) Lokasi 3 [Ferris Wheel] (-7,3446716 , 112,7332406)
2315
Hasil perhitu ngan rumus haversin e
Hasil Aplika si
64.957,1 68 meter
65.10 1 meter
143,832 meter
99.78%
64.963,4 01 meter
65.11 2 meter
148,599 meter
99.77%
64.964,2 46 meter
65.07 9 meter
114,754 meter
99.82%
Selisih
Persent ase akurasi
9. KESIMPULAN Latitude dan longitude kedua lokasi digunakan untuk mengetahui azimuth yang digunakan dalam pencarian sudut heading, sedangkan jarak kedua lokasi ditentukan dengan metode distanceBetween dari Android. Dengan ketentuan seleksi kondisi nilai sudut heading dan azimuth digunakan untuk menentuan arah dan jarak pada tampilan aplikasi berbasis augmented reality menggunakan framework beyondAR. Dengan demikian aplikasi dapat menunjukan arah dan jarak berdasarkan wahana pilihan. Saran urutan kunjungan ditentukan menggunakan permutasi dan kombinasi pilihan wahana. Kemudian ditentukan bobot jaraknya menggunakan algoritma dijkstra. Saran urutan kunjungan ditampilkan sesuai kombinasi pilihan wahana menggunakan framework beyondAR. Hasil implementasi rumus heading mempunyai persentase akurasi 99,89%. Pada pengujian akurasi jarak menggunakan metode Haversine menunjukan akurasi perhitungan jarak mempunyai persentase akurasi sebesar 99,69%, sehingga disimpulkan bahwa aplikasi dengan akurasi sudut heading sebesar 99,89% dan akurasi jarak sebesar 99,69% masih dapat diterima untuk menjadi aplikasi media informasi wisata Suroboyo Carnival. DAFTAR PUSTAKA Alamsyah. 2010. Pemanfaatan Metode Heuristik dalam Pencarian Minimum Spanning Tree dengan Algoritma Semut. Fakultas Ilmu Komputer, Universitas Brawijaya
Azuma, R. T., 1997. A Survey of Augmented Reality, In Presence: Teleoperators and Virtual Environments 6, 4. 355-385. BeyondAR, 2011. BeyondAR . [official website]. Tersedia di: < http://beyondar.com > [Diakses 15 November 2015] Bluman, A. G., 2009. Elementary Statistics - A Step By Step Approach. New York: McGraw-Hill. Ferdifiansyah, F., Muttaqin, A., & Aswin, M., 2012. Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek. Universitas Brawijaya, Teknik. Malang: Jurusan Teknik Elektro Konsentrasi Rekayasa Komputer. Indonesia, P. R. 2009. Undang - Undang Republik Indonesia Nomor 10 Tahun 2009 Tentang Kepariwisataan. Republik Indonesia. Jaelani, L. M., 2014. Pendidikan dan pelatihan teknis pengukuran dan pemetaan kota Lalu Muhammad Jaelani. Dalam Pendidikan dan pelatihan teknis pengukuran dan pemetaan kota Lalu Muhammad Jaelani. Marsigit, & Dhoruri, A., 2008. Matematika 2 SMA Kelas XI Program IPA. Quadra. Maruzar, H., 2013. Kalkulasi Koordinat GPS Berdasar Data Heading & Jarak. Tersedia di: < http://maruzar.blogspot.com/2013/03/kalku lasi-koordinat-gps-berdasar-data.html> [Diakses pada 22 Februari 2016] Milgram, P., Takemura, H., & Kishino, F., 1994. Augmented Reality: A class of displays on the reality-virtuality continuum. SPIE Vol. 2351, Telemanipulator and Telepresence Technologies. Muktamar, B. A., Setiawan, N. A., & Adji, T. B., 2015. Analisis Perbandingan Tingkat Akurasi Algoritma Naive Bayes Classifier dengan Correlated-Naive Bayes Classifier. Seminar Nasional Teknologi Informasi dan Multimedia 2015 (hal. 2.1-49). Yogyakarta: STMIK AMIKOM Yogyakarta. Tersedia di:
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
ES_CLASSIFIER_DENGAN_CORRELA TED-NAIVE_BAYES_CLASSIFIER> [Diakses pada 23 Juni 2016] Mutakhiroh, I., Indrato, & Hidayat, T., 2007. Pencarian Jalur Terpendek Menggunakan Algoritma Semut. Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007). (hal. B-81). Yogyakarta: Laboratorium Pemrograman dan Informatika Teori, Universitas Islam Indonesia. Prameswari, W., 2015. Rancang Bangun Aplikasi Mobile Augmented Reality sebagai Media Informasi Wahana Permainan di Jatim Park 1. Universitas Brawijaya, Ilmu Komputer. Malang: Program Studi Informatika/ Ilmu Komputer. Putra, R. H., Sujiani, H., & Safriadi, N. (2015). Penerapan Metode Haversine Formula Pada Sistem Informasi Geografis Pengukuran Luas Tanah. Jurnal Sistem dan Teknologi Informasi (JUSTIN), Vol.1, No.1, pp.1-6. Rosen, K. H., 2012. Discrete Mathematics and Its Application (Seventh ed.). New York, America: McGraw-Hill. Sari, J. P., Ernawati, & Erlansari, A. 2014. Rancang Bangun Aplikasi Layanan Berbasis Lokasi Dengan Penerapan Augmented Reality Menggunakan Metode Markerless Berbasis Android (Studi Kasus: Pencarian Perangkat Daerah Kota Bengkulu). Jurnal Rekursif. Vol. 2, No.2. Suroboyo Carnival , 2016. [official webite] Suroboyo Carnival. Tersedia di :
[Diak ses 20 Februari 2016] Wulandari, Y. S., 2014. Efektifitas Promosi Pariwisata Bahari. Institut Pertanian Bogor, Departemen Komunikasi dan Pengembangan Masyarakat, Bogor.
Fakultas Ilmu Komputer, Universitas Brawijaya
2316