Algoritma Genetika untuk menyelesaikan TSP

Untuk menghitung jarak antar dua kota digunakan fungsi Eucidean pada Persamaan 1, sehingga jarak antar kota ditunjukkan pada tabel 3.2. Tabel 3.2 Jarak Antar Kota Jarak Kendal Semarang Batang Banjarnegera Purwokerto Kendal 0.228 0.472 0.703 1.087 Semarang 0.228 0.695 0.839 1.258 Batang 0.472 0.695 0.494 0.715 Banjarnegera 0.703 0.839 0.494 0.447 Purwokerto 1.087 1.258 0.715 0.447  Pembentukan populasi awal Pembentukan populasi awal dibentuk secara acak dari kromosom sebanyak jumlah populasi, pada penyelesaian yang dihasilkan oleh algoritma genetika pada generasi pertama didapat dari penjumlahan jarak semua kota yang dikunjungi oleh salesman menggunakan persamaan 2.2. Pembentukan populasi awal dengan 4 populasi, ditunjukkan pada Tabel 3.3. Tabel 3.3 Populasi Awal Kromosome Representasi Path Kendal Purwokerto Banjarnegera Semarang Batang Batang Semarang Purwokerto Banjarnegera Kendal Banjarnegera Kendal Purwokerto Semarang Batang Batang Semarang Kendal Banjarnegera Purwokerto  Evaluasi Proses evaluasi dilakukan dengan fungsi fitness, kromosom dengan nilai fitness tertinggi merupakan kromosom terbaik. Dalam permasalahan TSP fungsi fitness tidak dapat didefinisikan secara langsung dari fungsi objektif karena TSP merupakan masalah pencarian nilai minimum. Oleh karena itu fungsi fitness merupakan kebalikan inverse dari fungsi objektif, sehingga, Semakin kecil fungsi objektif maka semakin besar fungsi fitness, dalam permasalahan TSP untuk meminimalkan jarak maka perlu memaksimalkan fungsi fitnessnya. Hasil pemetaan fungsi objektif ke fungsi fitness dari populasi awal terlihat pada Tabel 3.4. Tabel 3.4 Inverse fungsi objektif ke fungsi fitness Kromosom 3.542 0.282 3.577 0.279 4.239 0.235 2.790 0.358  Elitism Pada tahap ini kromosom terbaik disimpan untuk menghindari kromosom terbaik yang hilang selama proses crossover dan mutasi. Dari populasi awal kromosom , merupakan kromosom terbaik dengan nilai fitness terbesar. Selanjutnya ada 3 kromosom yang akan dihasilkan melalui proses crossover dan mutasi.  Seleksi Proses seleksi memilih dua orang tua dari populasi menggunakan seleksi turnamen. Dalam seleksi turnamen memilih kromosom dalam populasi secara acak sebanyak ukuran turnamen, kemudian dari kromosom tersebut dipilih satu yang terbaik. Ukuran turnamen adalah 3, kromosom acak dari populasi adalah kemudian pilih yang terbaik dari kromosom acak menggunakan metode evaluasi. Jadi kromosom merupakan yang terbaik dan dijadikan sebagai parent1. Untuk mendapatkan parent2 dilakukan prosedur seleksi yang sama seperti mendapatkan parent1.  Crossover Hasil dari seleksi kemudian dipindah silang menggunakan order crossover. Setelah operator penyilangan, kromosom-kromosom hasil penyilangan akan dilakukan proses mutasi.  Mutasi Gen akan terkena mutasi jika bilangan random r yang dibangkitkan untuk gen yang bersangkutan kurang dari probabilitas mutasi Pm. Untuk selanjutnya genkota yang terpilih akan ditukar letaknya dengan genkota lain secara acak yang terdapat pada kromosom yang sama. Hasil proses mutasi terdapat dalam Tabel 3.5. Tabel 3.5 Populasi Baru Kromosom Representasi Path Semarang Kendal Banjarnegera Purwokerto Batang 2.790 Semarang Kendal Banjarnegera Purwokerto Batang 2.790 Purwokerto Semarang Batang Kendal Banjarnegera 3.577 Semarang Banjarnegera Batang Purwokerto Kendal 3.366

3.3.2 Algoritma Genetika Hibrida Dengan Skema Pencarian Lokal Adaptif

untuk menyelesaikan TSP Dalam HGA terdapat penambahan teknik pencarian lokal kedalam algoritma genetika yang dikontrol dengan skema pencarian lokal. Untuk menentukan teknik pencarian lokal digunakan didalam GA atau tidak diperlukan perhitungan kesamaan antara individu didalam populasi menggunakan Persamaan 2.5. Sebagai contoh menghitung kesamaan kromosom dan kromosom . = Semarang Kendal Banjarnegera Purwokerto Batang = Purwokerto Semarang Batang Kendal Banjarnegera Koordinat kromosom dan adalah sebagai berikut, = { -6.990155, 110.422515 -6.920633, 110.20483 -7.399196, 109.688866 -7.427879, 109.242443 -6.906720, 109.732468} = { -7.427879, 109.242443 -6.990155, 110.422515 -6.906720, 109.732468 -6.920633, 110.20483 -7.399196, 109.688866} Dalam menghitung kesamaan antar individu dapat dihitung dengan persamaan 2.4. Untuk vektor, dan Maka, Sehingga perhitungan kesamaan cosine menjadi seperti berikut: = 60597.74