15
Dinamika Teknologi
έψιφ φχσι νυψωφωοσ μιψ νυιιήι Γ Β
bagian ini menjelaskan mengenai Metaheuristic. Metaheuristic yang dipakai dalam penelitian ini
yaitu Algoritma Tabu Search. Lalu yang kedua, dibahas pula mengenai Struktur Memori. Yang
ketiga dibahas mengenai Fungsi Evaluasi. Yang terakhir, dalam bagian ini dibahas pula mengenai
Google Maps API. Google Maps API yang dibahas terdiri atas Directions Service dan Distance Matrix.
2.1 Algoritma Metaheuristik
Pada Computer Science dan Mathematical optimization, metaheuristik merupakan heuristic
yang dirancang untuk menemukan, menghasilkan, atau memilih heuristic yang menghasilkan solusi
yang lebih baik untuk melakukan optimisasi dari suatu masalah. Dibandingkan dengan algoritma
optimisasi dan metode iterative, metaheuristik tidak menjamin solusi global yang optimal ditemukan
untuk tiap masalah. Kebanyakan metaheuristik memakai metode stochastic optmitization dimana
solusi yang dihasilkan bergantung pada variable yang dihasilkan secara random pada inisialisasi
awal.
2.2 Algoritma Tabu Search
Tabu Search merupakan single-solution based metaheuristik yang diperkenalkan oleh Fred Glover
pada tahun 1986. Tabu search sangat popular di tahun 90an, dan sampai sekarang masih menjadi
salah satu single-solution based metaheuristik yang banyak dipakai untuk menyelesaikan permasalahan
optimisasi. Tabu search merupakan metode metaheuristik yang dilandaskan pada pencarian
local local search. Untuk menghindari proses pencarian kembali ke kandidat solusi yang pernah
dikunjungi, Tabu Search mengingat jalur pencarian yang telah dilewati. Kandidat solusi yang sudah
dilewati disimpan dalam memori, yang disebut Tabu list, dan tidak dilewati lagi karena itu disebut
Tabu.
2.3.1 Struktur Memori
Penggunaan struktur memori memiliki basis atribut-atribut fleksibel maupun atribut-atribut kaku
yang dirancang untuk membolehkan sebuah kriteria evaluasi dan hasil pencarian di masa lalu
dieksploitasi lebih mendalam. Kategori struktur memori ini dapat dibagi menjadi tiga:
1. Short Term: memory ini berisi kumpulan solusi yang baru saja dipertimbangkan. Jika sebuah
potensi solusi baru muncul, maka solusi ini tidak dapat dikunjungi lagi hingga expiration
point tercapai. 2. Intermediate Term: aturan memory ini
dimaksudkan agar pencarian lebih terfokus terhadap daerah yang menjanjikan dari ruang
pencarian. 3. Long Term: memory ini menggunakan
diversifikasi yang bertujuan untuk mendorong pencarian ke daerah yang baru misalnya
melakukan reset jika pencarian stuck atau kriteria tertinggi masih belum juga terpenuhi.
2.3.2 Fungsi Evaluasi
Fungsi evaluasi, biasa disebut heuristic evaluation function atau static evaluation function
adalah fungsi yang digunakan oleh suatu program atau algoritma untuk memperkirakan value atau
nilai kebaikan dari solusi tertentu. Fungsi evaluasi ini biasanya didesain untuk lebih mementingkan
kecepatan proses daripada akurasi, fungsi ini hanya melihat pada satu posisi tertentu dan tidak melihat
atau mencari langkah lain yang memungkinkan static. Tujuan utama dari penggunaan fungsi
evaluasi ini adalah untuk mengurangi waktu komputasi yang dibutuhkan untuk menyelesaikan
suatu masalah.
2.3 Google Maps API
Pada bagian ini dijelaskan beberapa hal mengenai Google Maps API. Google Maps API
adalah fitur yang disediakan oleh Google yang memungkinkan
para penggunanya
untuk menampilkan Google Maps pada halaman web atau
mengambil data tertentu dari Google Maps.
2.3.1 Directions Service
Fitur directions service ini termasuk dalam Web Service API yang disediakan oleh Google.
Directions service ini dapat digunakan untuk menghitung arah sesuai dengan metode transportasi
yang digunakan driving, transit, dan lain lain dengan menggunakan objek DirectionService.
Objek ini berkomunikasi dengan Google Maps API Directions Service yang menerima request arah dan
mengeluarkan hasil perhitungan.
2.3.2 Distance Matrix
Fitur Distance Matrix ini digunakan untuk menghitung jarak dan durasi dari perjalanan antar
berbagai asal dan tujuan dengan menggunakan mode travel tertentu. Service ini tidak
16
Dinamika Teknologi
έψιφ φχσι νυψωφωοσ μιψ νυιιήι Γ Β
mengembalikan hasil berupa informasi rute secara detail tetapi hanya mengembalikan nilai jarak dan
durasi dari perjalanan.
ALGORITMA TABU SEARCH
Pada bagian ini akan dijelaskan mengenai algoritma utama yang mendasari pembuatan
penelitian ini, yaitu algoritma Tabu Search, penerapan algoritma Tabu Search pada
permasalahan Travelling Salesman Problem, dan penelitian terkait tentang penerapan algoritma Tabu
Search pada penjadwalan wisata.
3.1 Algoritma Umum Tabu Search