Directions Service Distance Matrix

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