ALGORITMA GENETIKA PADA APLIKASI TRAVELING SALESMAN PROBLEM ATURAN • Seorang salesman harus mengunjungi sejumlah n kota. Setiap kota wajib dikunjungi satu kali. Dari kota terakhir, salesman kembali lagi ke kota pertama. • Bagaimana cara mencari rute yang terbaik ? • Rute yang baik adalah rute yang memiliki jarak yang pendek dan waktu yang sedikit • Menggunakan jarak rute untuk menentukan kualitas rute yang di buat • f(x) adalah fungsi tujuan • n adalah jumlah kota yang di kunjungi • i, i+1 adalah jarak dari kota i ke kota i+1(berikutnya) • n, 1 adalah jarak kota terakhir ke kota pertama • Jarak antar kota di hitung menggunakan jarak Euclidian • Misalkan ada 5 kota yang akan di kunjungi : A, B, C, D dan E • Masing-masing kota dinyatakan dengan koordinat x dan y A(0,0), B(5,6), C(1,4), D(3,4), E(7,7) Tujuan : menentukan rute terpendek untuk mengunjungi 5 kota tersebut LANGKAH-LANGKAH ALGORITMA GENETIKA Inisialisasi Populasi Seleksi Reproduksi Elitism Output Inisialisasi populasi : individu / solusi awal di buat Seleksi : Memilih beberapa solusi (induk) Reproduksi : manipulasi dengan operator cross over dan mutasi Elitism : child dilakukan update populasi dengan konsep elitism output : solusi terbaik dari hasil pencarian Iterasi dilakukan sampai kriteria berhenti tercapai : Batas maksimal iterasi Stagnan Error bisa diterima Inisialisasi populasi • Inisialisasi Parameter • PXO = 0,95(probabilitas cross over) • Pm = 0,01(probabilitas mutasi) • Seleksi = Turnamen, k=2(ukuran turnamen 2) • Crossover = partial mixed crossover (PMX) • Mutasi = swap • Jumlah individu dalam populasi P=4 Inisialisasi • Inisialisasi solusi : • P={I1, I2, I3, I4} (random individu) • Solusi awal (individu awal) di bangkitkan secara acak • I1 = A B D C E(Memilih kota A sebagai kota awal) • I2 = D E B A C • I3 = B D E C A • I4 = C B A E D • Menghitung kualitas solusi (fitnes) • A(0,0), B(5,6), C(1,4), D(3,4), E(7,7) • I1 = A B D C E Sehingga : I1 = A B D C E I2 = D E B A C I3 = B D E C A I4 = C B A E D SELEKSI • Seleksi = Turnamen, k=2(ukuran turnamen 2) • POPULASI KONTESTAN PILIH ACAK INDIVIDU TERPILIH PALING KECIL REPRODUKSI • Crossover = partial mixed crossover (PMX) Jika r < PXO (0.95) Proses pembagian di pilih secara acak (dibagi menjadi 2) I2 = D E B A C I3 = B D E C A D E C A B B D A C E • MUTASI = SWAP • Jika r < PM (0.01) SECARA ACAK CHILD D E C A B B D A C E D A C E B E D A C B ELITSM POPULASI LAMA • I1 = A B D C E • I2 = D E B A C • I3 = B D E C A • I4 = C B A E D I1 I2 I3 I4 = = = = D D B E A E D D C B E A E A C C B C A B • A1 = D A C E B • A2 = E D A C B DILAKUKAN ITERASI SAMPAI BATAS HENTI TERCAPAI DAN MENDAPATKAN SOLUSI TERBAIK