yang lebih kecil, menyebabkan komputasi dalam model seleksi ini lebih ringan dibandingakan dengan model seleksi peringkat Zukhri, 2014: 43.
Pada metode seleksi dengan turnamen ini, akan ditetapkan suatu nilai turnamen untuk individu-individu yang dipilih secara random dari suatu populasi.
Individu-individu yang terbaik dalam kelompok ini akan diseleksi sebagai induk. Parameter yang digunakan pada metode ini adalah ukuran turnamen yang bernilai
antara 2 sampai N jumlah individu dalam suatu populasi Kusumadewi, 2003: 289. Seleksi turnamen lebih efisien dan sederhana dalam implementasi
dibandingkan metode seleksi yang lain Razali dan Geraghty, 2011. Pada gambar 2.3 ditunjukkan proses seleksi turnamen dengan N=3.
Gambar 2.3
Proses Seleksi Turnamen
f. Crossover
Crosover atau penyilangan merupakan operator dalam algoritma genetika yang bertujuan untuk melahirkan kromosom baru yang mewarisi sifat-sifat
induknya Zukhri, 2014:43. Salah satu metode crossover adalah Order Crossover, pada order crossover OX untuk menghasilkan keturunan dipilih dua
titik silang dari kromosom induk. Kemudian gen-gen pada kromosom induk
pertama yang berada diantara titik penyilangan digantikan oleh gen-gen pada induk kedua. OX tepat digunakan untuk representasi path permutasi, karena OX
bukan merupakan masalah permutasi melingkar Liu, et al., 2014. Dalam gambar 2.8 akan dijelaskan proses dari OX Berninger, 2014.
Gambar 2.4 Proses order crossover
g. Mutasi
Fungsi mutasi adalah untuk menambah keragaman dalam populasi dan mencegah kromosom jatuh ke dalam minimum lokal Wang, 2014. Salah satu
metode mutasi adalah Mutasi Exchange Dalam metode mutasi exchange, proses mutasi dilakukan dengan menukar dua kromosom dalam kumpulan data
Berninger, 2014. Untuk lebih jalasnya dapat dilihat ilustrasi metode mutasi ini dalam gambar 2.12.
Gambar 2.5
Proses Exchange Crossover
h. Elitisme
Karena seleksi dilakukan secara random, maka tidak ada jaminan bahwa suatu individu bernilai fitness tertinggi akan selalu terpilih. Atau bahkan dapat
rusak nilai fitnessnya menurun karena proses pindah-silang dan proses mutasi. Untuk menjaga agar individu bernilai fitness tertinggi tersebut tidak hilang selama
proses evolusi, maka perlu dibuat satu atau beberapa kopinya. Prosedur ini sering dikenal sebagai elitisme Suyanto, 2005.
2.2.3 Pencarian Lokal
Pencarian lokal merupakan metode optimasi klasik yang menghasilkan solusi optimal lokal dengan mengeksplorasi lingkungan dari solusi awal yang
diberikan. Penggunaan teknik pencarian lokal telah terbukti berguna dalam memecahkan masalah kombinatorial. Untuk teknik pencarian lokal, Hill Climbing
yang disarankan oleh Michalewicz 1994 digunakan dalam penelitian ini. Hill Climbing HC merupakan algoritma pencarian untuk solusi yang lebih baik di
lingkungan. Gerakan pencarian HC dicari berdasarkan nilai heuristik terbaik. Jika
menemukan solusi yang lebih baik, perubahan solusi saat ini dengan solusi baru. Jika solusi baru tidak lebih baik dari solusi saat ini maka algoritma berhenti dan
menyimpan solusi optimal lokal saat ini. Metode ini dapat menjamin sifat yang diinginkan dari teknik pencarian lokal untuk hibridisasi dengan GA
Yun, 2006. Prosedur HC adalah sebagai berikut:
Procedure:
Perulangan metode hill climbing
Begin
Pilih individu terbaik dari populasi sekarang menggunakan nilai fitness
Hasilkan individu secara acak sebanyak ukuran populasi dari lingkungan Pilih individu
dengan nilai fitness terbaik dari individu yang baru dihasilkan
If fitness
fitness then
Else If fitness
≥ fitness then end
End
2.2.4 Skema Pencarian Lokal Adaptif
Konsep dasar dari penerapan skema pencarian lokal adaptif ke dalam GA adalah mempertimbangkan apakah GA konvergen ke solusi optimal global atau
optimal lokal. Ketika GA konvergen ke solusi optimal global, solusi yang dihasilkan terus meningkat. Namun, ketika GA konvergen ke solusi optimal lokal,
kinerja GA terus memburuk Yun, et al., 2009. Dalam situasi ini GA terjebak dalam kondisi optimum lokal, dimana sulit bagi GA menghindari konvergensi
dini untuk solusi optimal lokal. Istilah konvergensi dini berarti bahwa populasi untuk masalah optimasi berkumpul terlalu dini, sehingga menjadi optimal terlalu
awal. Dalam hal ini, keturunan yang dihasilkan dari orang tua menggunakan bantuan operator genetik tidak lebih unggul dibandingkan orang tua mereka.
Kelemahan tersebut dapat ditingkatkan dengan teknik pencarian lokal yang dapat mencari di sekitar area konvergensi di perulangan GA dan memasukkan individu
baru dengan nilai fitness yang lebih tinggi kedalam perulangan GA Yun, 2006; Yun et al, 2009.
Berdasarkan konsep tersebut di atas, skema pencarian lokal adaptif diusulkan dalam penelitian ini. Skema pencarian lokal adaptif yang diusulkan
adalah dengan menggunakan similarity coefficient method SCM. Untuk
informasi tentang SCM yang digunakan dalam skema pencarian lokal adaptif, penulis merujuk pada penelitian yang dilakukan oleh Rafsanjani, et al., 2015.
SCM menggunakan kesamaan koefisien untuk mengukur kesamaan dua individu. Dalam penelitian ini metode kesamaan koefisien yang digunakan adalah cosine
similarity, sebagai metode cosinus tepat untuk mengukur kesamaan yang ada antar individu berbasis prioritas dalam populasi GA untuk traveling salesman problem
karena urutan traveling tidak berubah dengan skala individu. Cosine similarity merupakan ukuran kesamaan antara dua vektor dari hasil
kali yang mengukur cosinus dari sudut yang dihasilkan. Untuk menghitung Cosine similarity
antara dua individu dan
dari populasi, di hitung menggunakan persamaan 2.4.
dimana,
= vektor dot produk dari l dan m, dihitung dengan
= panjang dari vector l, dihitung dengan
= panjang dari vector m, dihitung dengan
Untuk menghitung rata-rata cosine similarity untuk semua individu dari populasi GA, dihitung menggunakan persamaan 5 Rafsanjani, et al., 2015.
dimana, P
= Populasi dari GA |P|
= Ukuran opulasi Penggunaan teknik pencarian lokal ke GA diatur oleh kondisi berikut ini:
2.2.5 Algoritma Genetika Hibrida
Dalam algoritma genetika hibrida HGA penulis menggabungkan algoritma genetika dengan pencarian lokal menggunakan skema pencarian lokal adaptif
yang dirancang untuk mengontrol penggunaan teknik pencarian lokal di
perulangan GA. Skema pencarian lokal adaptif yang digunkan adalah metode kesamaan koefisien. Ketika GA terus konvergen maka kesamaan antara individu
dalam populasi menjadi lebih tinggi. Menyebabkan nilai fitness antara individu menjadi mirip satu sama lain dan keragaman dari populasi berkurang, yang
pastinya kinerja GA akan memburuk. Oleh karena itu, alternatif yang dapat digunakan untuk meningkatkan
kinerja GA adalah menambahkan individu baru ke dalam populasi GA dengan menggunakan metode pencarian lokal hill climbing. Individu-individu baru tidak
harus memiliki kesamaan yang sama dengan populasi saat ini dan juga menjaga nilai fitness tinggi tertentu yang mirip dengan kesamaan populasi. Individu-
individu yang dihasilkan dari metode pencarian lokal dapat mencari di sekitar area konvergensi menggunakan perulangan GA. Untuk prosedur dari HGA dalam
menyelesaikan TSP adalah sebagai berikut:
Algoritma : HGA untuk Traveling Salesman Problem
Input : Data kota-kota TSP
Output : Rute perjalanan terbaik
Begin Step1
: Algoritma Genetika
Step1.1 : Representasi
Pengkodean masalah menggunakan path representasi
Step1.2 : Inisialisasi populasi
Menghasilkan populasi secara acak sebanyak jumlah populasi
Step1.3 : Evaluasi
Evaluasi populasi sekarang dengan fungsi fitness kemudian salin individu terbaik menggunakan elitism
Step1.4 : Operator genetika
Step1.4.1 : Seleksi
Menghasilkan dua orangtua menggunakan seleksi turnamen
Step1.4.2 : Crossover
Pindah silang dua orangtua yang dipilih menggunakan order crossover
Step1.4.3 : Mutasi
Tukar gen anak yang dihasilkan menggunakan mutasi exchange
Step1.5
: Kondisi berhenti Kondisi berhenti telah ditetapkan menggunakan jumlah
generasi. Jika jumlah generasi terpenuhi maka proses perulangan akan berhenti
Step2 : Pencarian lokal
Terapkan teknik pencarian lokal jika kondisi pada skema pencarian lokal adaptif telah terpenuhi. Lanjutkan ke Step 1.3
End
2.2.6 Android
Dalam pembahasan ini dirujuk dari website resmi Developer Android 2015. Android menyediakan framework aplikasi yang memungkinkan untuk
membangun aplikasi dan game yang inovatif untuk perangkat mobile dalam bahasa pemrograman Java. Android telah terintegrasi dengan Google API yang
memungkinkan developer untuk membangun aplikasi menggunakan berbagai API Android yang disediakan oleh Google diantaranya Google Maps API Android V2.
a. Google Maps API Android V2
Google Maps Android API merupakan layanan dari Google yang berfungsi untuk mengintegrasikan peta pada aplikasi yang dibangun berdasarkan pada
Google Maps data. API secara otomatis menangani akses ke Google Maps server seperti data download, dan tampilan peta. Fungsi lain dari API yaitu dapat
menambahkan markers, poligon dan overlay untuk peta dasar, dan mengubah
pandangan user dari peta ke area tertentu. API memberikan informasi tambahan untuk lokasi pada peta, dan memungkinkan untuk menambahkan grafis pada peta:
- Menambahkan ikon untuk menentukan posisi tertentu pada peta Markers. - Menambahkan segmen garis Polyline.
- Menambahkan segmen tertutup Poligon. - Menambahkan grafik bitmap ke posisi tertentu di peta Ground Overlays.
- Menambahkan gambar yang ditampilkan diatas peta Tile Overlays. Google Maps Android API tidak terdapat dalam platform Android, tetapi
tersedia pada perangkat dengan Google Play Store yang berjalan pada Android 2.2 atau lebih tinggi, melalui Google Play Services.
b. Integrasi Google Maps Android