Perencanaan Perjalanan Wisata Singapura Dengan Algoritma Tabu Search
Perencanaan Perjalanan Wisata Singapura Dengan Algoritma Tabu Search
14-21
Hendrawan Armanto
Teknik Informatika, Sekolah Tinggi Teknik Surabaya
e-mail: hendrawan@stts.edu
ABSTRAK
Bepergian ke tempat wisata merupakan salah satu hal yang dilakukan saat liburan. Akan tetapi sering kali
timbul banyak kesulitan saat menyusun jadwal perjalanan wisata. Dimana, paket wisata yang ditawarkan
dari perusahaan travel tidak dapat memberikan tingkat kepuasan yang maksimal. Hal tersebut memberikan
ide pada penelitian ini untuk mempermudah pengguna dalam menyusun perjalanan wisata dan
menghasilkan jadwal perjalanan wisata yang dapat memberi tingkat kepuasan dengan maksimal. Fokus dari
penelitian ini hanya untuk negara Singapora saja dikarenakan Singapora merupakan salah satu negara kecil
tetapi memiliki banyak tempat wisata yang menarik. Penelitian ini dibuat dengan menggunakan algoritma
Tabu Search. Perancangan jadwal dimulai dengan inisialisasi neighborhood, lalu Evaluation Function
digunakan untuk melakukan kalkulasi skor dari tiap kandidat solusi. Kandidat solusi terbaik dari tiap
neighborhood dimasukkan Tabu List untuk menghindari local minimum. Pengguna dapat memasukkan dan
melakukan kustomisasi seluruh parameter dari tiap POI (Points of Interest) mulai dari waktu yang ingin
dihabiskan, uang yang dikeluarkan, prioritas dan mode kendaraan yang diinginkan. Selain itu, parameter
umum yang ada dalam penjadwalan wisata seperti jumlah hari, jam mulai trip, jam selesai trip dan budget
trip per hari juga dapat dikustomisasi oleh pengguna. Penelitian ini diuji coba dengan menggunakan 24 POI
yang berbeda-beda serta menggunakan kuisioner 30 orang yang memiliki preferensi berbeda-beda pula.
Hasilnya, para pengguna memiliki tingkat kepuasan rata-rata 74% dan 47% pengguna menyatakan rute
jadwal wisata tergolong baik, serta 53% sisanya menyatakan sangat baik.
Dinamika Teknologi
14 Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
bagian ini menjelaskan mengenai Metaheuristic. tidak dapat dikunjungi lagi hingga expiration
Metaheuristic yang dipakai dalam penelitian ini point tercapai.
yaitu Algoritma Tabu Search. Lalu yang kedua, 2. Intermediate Term: aturan memory ini
dibahas pula mengenai Struktur Memori. Yang dimaksudkan agar pencarian lebih terfokus
ketiga dibahas mengenai Fungsi Evaluasi. Yang terhadap daerah yang menjanjikan dari ruang
terakhir, dalam bagian ini dibahas pula mengenai pencarian.
Google Maps API. Google Maps API yang dibahas 3. Long Term: memory ini menggunakan
terdiri atas Directions Service dan Distance Matrix. diversifikasi yang bertujuan untuk mendorong
pencarian ke daerah yang baru (misalnya
2.1 Algoritma Metaheuristik melakukan reset jika pencarian stuck atau
kriteria tertinggi masih belum juga terpenuhi).
Pada Computer Science dan Mathematical
optimization, metaheuristik merupakan heuristic 2.3.2 Fungsi Evaluasi
yang dirancang untuk menemukan, menghasilkan,
atau memilih heuristic yang menghasilkan solusi Fungsi evaluasi, biasa disebut heuristic
yang lebih baik untuk melakukan optimisasi dari evaluation function atau static evaluation function
suatu masalah. Dibandingkan dengan algoritma adalah fungsi yang digunakan oleh suatu program
optimisasi dan metode iterative, metaheuristik tidak atau algoritma untuk memperkirakan value atau
menjamin solusi global yang optimal ditemukan nilai kebaikan dari solusi tertentu. Fungsi evaluasi
untuk tiap masalah. Kebanyakan metaheuristik ini biasanya didesain untuk lebih mementingkan
memakai metode stochastic optmitization dimana kecepatan proses daripada akurasi, fungsi ini hanya
solusi yang dihasilkan bergantung pada variable melihat pada satu posisi tertentu dan tidak melihat
yang dihasilkan secara random pada inisialisasi atau mencari langkah lain yang memungkinkan
awal. (static). Tujuan utama dari penggunaan fungsi
evaluasi ini adalah untuk mengurangi waktu
2.2 Algoritma Tabu Search komputasi yang dibutuhkan untuk menyelesaikan
suatu masalah.
Tabu Search merupakan single-solution based
metaheuristik yang diperkenalkan oleh Fred Glover 2.3 Google Maps API
pada tahun 1986. Tabu search sangat popular di
tahun 90an, dan sampai sekarang masih menjadi Pada bagian ini dijelaskan beberapa hal
salah satu single-solution based metaheuristik yang mengenai Google Maps API. Google Maps API
banyak dipakai untuk menyelesaikan permasalahan adalah fitur yang disediakan oleh Google yang
optimisasi. Tabu search merupakan metode memungkinkan para penggunanya untuk
metaheuristik yang dilandaskan pada pencarian menampilkan Google Maps pada halaman web atau
local (local search). Untuk menghindari proses mengambil data tertentu dari Google Maps.
pencarian kembali ke kandidat solusi yang pernah
dikunjungi, Tabu Search mengingat jalur pencarian 2.3.1 Directions Service
yang telah dilewati. Kandidat solusi yang sudah
dilewati disimpan dalam memori, yang disebut Fitur directions service ini termasuk dalam Web
Tabu list, dan tidak dilewati lagi (karena itu disebut Service API yang disediakan oleh Google.
Tabu). Directions service ini dapat digunakan untuk
menghitung arah sesuai dengan metode transportasi
2.3.1 Struktur Memori yang digunakan (driving, transit, dan lain lain)
dengan menggunakan objek DirectionService.
Penggunaan struktur memori memiliki basis Objek ini berkomunikasi dengan Google Maps API
atribut-atribut fleksibel maupun atribut-atribut kaku Directions Service yang menerima request arah dan
yang dirancang untuk membolehkan sebuah kriteria mengeluarkan hasil perhitungan.
evaluasi dan hasil pencarian di masa lalu
dieksploitasi lebih mendalam. Kategori struktur 2.3.2 Distance Matrix
memori ini dapat dibagi menjadi tiga:
1. Short Term: memory ini berisi kumpulan solusi Fitur Distance Matrix ini digunakan untuk
yang baru saja dipertimbangkan. Jika sebuah menghitung jarak dan durasi dari perjalanan antar
potensi solusi baru muncul, maka solusi ini berbagai asal dan tujuan dengan menggunakan
mode travel tertentu. Service ini tidak
Dinamika Teknologi
Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327 15
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
mengembalikan hasil berupa informasi rute secara pengiriman koran, produksi barang, pemasangan
detail tetapi hanya mengembalikan nilai jarak dan jaringan komunikasi, dan masalah transportasi.
durasi dari perjalanan. Contoh kasus TSP: Seorang Salesman PT. XX
bertugas untuk mengecek ketersediaan suku cadang
ALGORITMA TABU SEARCH pada masingmasing pos PT. XX. Salesman yang
bepergian mulai dari PT. XX (0) ke Pos Sei. Raya
Pada bagian ini akan dijelaskan mengenai (1), Pos Adisucipto (2), Pos Siantan (3), Pos Gajah
algoritma utama yang mendasari pembuatan Mada (4) dan pos Kota Baru (5), kemudian
penelitian ini, yaitu algoritma Tabu Search, Salesman harus kembali lagi ke PT. XX. Pos-pos
penerapan algoritma Tabu Search pada tersebut harus dikunjungi tepat satu kali dengan
permasalahan Travelling Salesman Problem, dan tujuan perjalanan meminimumkan jarak dan waktu
penelitian terkait tentang penerapan algoritma Tabu tempuh.
Search pada penjadwalan wisata.
Dinamika Teknologi
16 Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
Pada iterasi ke-1 ini diperoleh nilai terbaik Random solusi awal memiliki performa yang
adalah km untuk jarak tempuh dan menit untuk lebih bagus jika dibandingkan dengan solusi awal
waktu perjalanan yakni pada Jalur ke-2. Selanjutnya ascending maupun dengan solusi awal descending.
lakukan iterasi ke 2, untuk perhitungan iterasi ke 2 Secara umum, solusi yang dihasilkan dengan
sampai iterasi ke 60 juga menggunakan perhitungan menggunakan Tabu List berukuran 6 lebih baik
yang sama seperti iterasi 1 sesuai dengan rute yang dengan rata-rata 0.3 poin dibandingkan dengan
dilalui Salesman tersebut. Setelah dilakukan solusi yang menggunakan Tabu List dengan ukuran
perhitungan sebanyak 60 iterasi, maka diperoleh lain yang ada di eksperimen ini.
jarak tempuh dan waktu perjalanan minimum pada
setiap iterasi tersebut SISTEM PENJADWALAN WISATA
SINGAPURA
3.4 Penerapan Algoritma Tabu Search pada
Penjadwalan Wisata Sistem penjadwalan wisata ini dijelaskan
menjadi tiga bagian, yaitu arsitektur sistem, input
Terdapat dua mekanisme utama dalam proses dan otput, serta langkah-langkah proses
penjadwalan wisata. Kedua hal tersebut adalah penjadwalan wisata.
algoritma Tabu Search dan Fungsi Evaluasi.
Seluruh proses iterasi dan pencarian solusi terbaik 4.1 Arsitektur Sistem
serta penyimpanan memori melalui Tabu List
dilakukan oleh algoritma Tabu Search. Fungsi Pada sistem penjadwalan wisata ini terdapat
evaluasi dibutuhkan untuk proses penilaian dari tiap empat komponen utama yaitu situs pengguna,
solusi rute yang memungkinkan. proses penjadwalan wisata, database dan directions.
Input yang digunakan dalam penyusunan jadwal
3.4.1 Contoh Kasus Penerapan Algoritma wisata ini berupa parameter wisata, sedangkan
Tabu Search pada Penjadwalan Wisata output merupakan jadwal wisata. Pada proses
penyusunan jadwal wisata ini terdiri dari tiga
Contoh kasus yang digunakan sebagai uji coba macam proses dimana ketiga proses ini
adalah sebuah kota di negara Austria, yaitu kota membutuhkan tabel-tabel pendukung yang
Vienna. Dimana dalam kota tersebut, terdapat 40 diperlukan. Dalam proses pembentukan
buah POI yang dapat dikunjungi oleh para Neighborhood diperlukan tabel shopping, tabel
wisatawan. Sebanyak 10 profil turis digunakan entertainment, tabel culinary dan tabel preferences.
sebagai bahan uji coba, dimana tiap turis ini Untuk proses perhitungan dengan fungsi evaluasi
memiliki preferensi wisata yang berbeda antara satu diperlukan tabel mrt, tabel driving, tabel bus serta
dengan lainnya. tabel preferences. Proses terakhir adalah pemilihan
kandidat solusi terbaik yang membandingkan nilai
Tabel 3. Parameter Data Uji Coba kebaikan dari tiap solusi dalam suatu neighborhood.
Parameter Value
Jumlah Hari 2 hari
Durasi Trip 5 jam
Budget Trip 200 euro
Waktu mulai Trip 11:00
Waktu selesai Trip 16:00
Bobot Satisfaction Factor 70%
Bobot Travel Time 30%
Waktu Eksekusi Maksimal 5 menit
Dinamika Teknologi
Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327 17
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
Dinamika Teknologi
18 Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
UJI COBA
Dinamika Teknologi
Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327 19
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
Dinamika Teknologi
20 Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327
DINAMIKA TEKNOLOGI April 2017 Vol. 9; No. 1; Hal. 14-21
Dinamika Teknologi
Jurnal Ilmiah Teknologi dan Rekayasa, ISSN: 1907-7327 21