220 likes | 481 Views
Algoritma AI 2. Algoritma Genetika. Algoritma Genetika (AG). Algoritma Genetika adalah algoritma yang memanfaatkan proses seleksi alamiah yang dikenal dengan proses evolusi Dalam proses evolusi, individu secara terus-menerus mengalami perubahan gen untuk menyesuaikan dengan
E N D
Algoritma Genetika
Algoritma Genetika (AG) • Algoritma Genetika adalah algoritma • yang memanfaatkan proses seleksi • alamiah yang dikenal dengan proses • evolusi • Dalam proses evolusi, individu secara • terus-menerus mengalami perubahan • gen untuk menyesuaikan dengan • lingkungan hidupnya • Hanya individu-individu yang kuat • yang mampu bertahan
Definisi Penting • Genotype (Gen), bagian dari kromosom • yang mewakili satu variabel (nilai biner, • float, integer, karakter, dll) • Allele, nilai dari gen • Kromosom/individu, gabungan gen-gen yang • menyatakan salah satu solusi yang • mungkin • Populasi, sekumpulan individu yang • akan diproses bersama dalam satu • siklus proses evolusi • Generasi, satuan siklus proses • evolusi • Nilai Fitness, seberapa baik nilai • dari suatu individu/solusi
Siklus AG Populasi Awal Evaluasi Fitness Seleksi Individu Populasi Baru Reproduksi : Cross-Over & Mutasi
TSP Kriteria berhenti : jika setelah beberapa generasi berturut-turut diperoleh nilai fitness yang terendah tidak berubah 8 A B 3 4 7 5 6 D C
Populasi Awal • Membangkitkan populasi awal • adalah proses membangkitkan • sejumlah individu secara acak • atau melalui prosedur tertentu
Populasi Awal • Misal dalam sebuah populasi terdapat • 4 individu: • Kromosom[1] = [A B C D] • Kromosom[2] = [B C D A] • Kromosom[3] = [C D A B] • Kromosom[4] = [D A B C]
Evaluasi Fitness • Menghitung nilai fitness dari tiap • kromosom yang telah dibangkitkan • Fitness[1] = 8 + 5 + 6 = 19 • Fitness[2] = 5 + 6 + 7 = 18 • Fitness[3] = 6 + 7 + 8 = 21 • Fitness[4] = 7 + 8 + 5 = 20
Seleksi • Seleksi dilakukan untuk mendapatkan • calon induk yang baik • Induk yang baik akan menghasilkan • keturunan yang baik • Semakin tinggi nilai fitness suatu • suatu individu semakin besar • kemungkinannya terpilih • Metode seleksi yang paling umum • adalah roulette wheel
Seleksi Kromosom • Karena pada TSP yang diinginkan adalah • kromosom dengan fitness yang lebih • kecil yang memiliki probabilitas terpilih • kembali lebih besar, maka digunakan • inverse : • Q[i] = 1/Fitness[i] • Q[1] = 1/19 = 0,053 • Q[2] = 1/18 = 0,056 • Q[3] = 1/21 = 0,048 • Q[4] = 1/20 = 0,05 • Total = 0,207
Seleksi Kromosom • Menghitung probabilitas/fitness relatif • tiap individu : • P[i] = Q[i]/Total • P[1] = 0,053/0,207 = 0,256 • P[2] = 0,056/0,207 = 0,27 • P[3] = 0,048/0,207 = 0,232 • P[4] = 0,05/0,207 = 0,242 • Kromosom ke-2 dengan nilai • fitness terkecil memiliki • probabilitas terpilih terbesar
Seleksi Kromosom • Menghitung fitness kumulatif/nilai • kumulatif dari probabilitas : • C[1] = 0,256 • C[2] = 0,256 + 0,27 = 0,526 • C[3] = 0,526 + 0,232 = 0,758 • C[4] = 0,758 + 0,242 = 1
Seleksi Kromosom • Memilih induk yang akan menjadi • kandidat untuk di-crossover : • Bangkitkan bilangan acak R • R[1] = 0,314 • R[2]= 0,743 • R[3]= 0,418 • R[4]= 0,203 • Pilih induk, C[k-1] < R < C[k] • Induk terpilih : • Kromosom[2] • Kromosom[3] • Kromosom[1]
Crossover • Order crossover • Menentukan posisi crossover dilakukan • dengan membangkitkan bilangan acak • antara 1 sampai pjgKrom – 1 • Bilangan acak untuk 3 kromosom • induk yang akan di-crossover : • C[2] = 2 • C[3] = 1 • C[1] = 2
Crossover • Proses crossover : • Kromosom[2] = Kromosom[2] X Kromosom[3] • = [B C D A] X [C D A B] • = [B C A D] • Kromosom[3] = Kromosom[3] X Kromosom[1] • = [C D A B] X [A B C D] • = [C B A D] • Kromosom[1] = Kromosom[1] X Kromosom[2] • = [A B C D] X [B C D A] • = [A B D C]
Crossover • Populasi setelah di-crossover : • Kromosom[1] = [A B D C] • Kromosom[2] = [B C A D] • Kromosom[3] = [C B A D] • Kromosom[4] = [D A B C]
Mutasi • Swapping mutation • Jumlah kromosom yang dimutasi dalam • satu populasi ditentukan oleh parameter • mutation rate (ρm) • Proses mutasi dilakukan dengan • cara menukar gen yang dipilih • secara acak dengan gen sesudahnya. • Jika gen berada di akhir kromosom, • maka ditukar dengan gen yang • pertama
Mutasi • Hitung panjang total gen pada satu • populasi : • Panjang total gen • =jumlah gen dalam 1 kromosom * • jumlah kromosom • = 4 * 4 = 16 • Untuk memilih posisi gen yang • dimutasi dilakukan dengan • membangkitkan bilangan acak antara • 1 sampai panjang total gen, yaitu • 1 - 16
Mutasi • Misal ditentukan ρm = 20%. Maka jumlah • gen yang akan dimutasi: • 0,2 * 16 = 3,2 = 3 • 3 buah posisi gen yang akan dimutasi • setelah diacak adalah 3, 7, 14
Mutasi • Proses mutasi : • Kromosom[1] = [A B DC] • Kromosom[2] = [B C A D] • Kromosom[3] = [C B A D] • Kromosom[4] = [D A B C] • Kromosom[1] = [A B C D] • Kromosom[2] = [B C D A] • Kromosom[3] = [C B A D] • Kromosom[4] = [D B A C]
Evaluasi Fitness • Proses AG untuk 1 generasi telah selesai. • Maka nilai fitness setelah 1 generasi : • Fitness[1] = 8 + 5 + 6 = 19 • Fitness[2] = 5 + 6 + 7 = 18 • Fitness[3] = 5 + 8 + 7 = 20 • Fitness[4] = 4 + 8 + 3 = 15