Nama
Kendali Robotika/RE703
Matakuliah:
Nama Tangg 04/09/2022
Mahasiswa: Fahrezi Miftahul Afif al:
Student Name: Date:
NIM:
4221911015
Student ID:
Judul Materi:
Lesson Name: Week 2 - Genetic Algorithm
Genetic Algorithm
Algoritme genetika adalah metode untuk memecahkan masalah optimasi terbatas dan tidak
terbatas yang didasarkan pada seleksi alam, proses yang mendorong evolusi biologis. Algoritma
genetika berulang kali memodifikasi populasi solusi individu. Pada setiap langkah, algoritma genetika
memilih individu dari populasi saat ini untuk menjadi orang tua dan menggunakannya untuk
menghasilkan anak-anak untuk generasi berikutnya. Selama generasi berturut-turut, populasi
"berevolusi" menuju solusi optimal. Anda dapat menerapkan algoritme genetika untuk memecahkan
berbagai masalah optimasi yang tidak cocok untuk algoritme optimasi standar, termasuk masalah di
mana fungsi tujuan terputus-putus, tidak terdiferensiasi, stokastik, atau sangat nonlinier. Algoritma
genetika dapat mengatasi masalahpemrograman integer campuran , di mana beberapa komponen
dibatasi untuk bernilai integer.
Diagram alir ini menguraikan langkah-langkah algoritmik utama. Untuk detailnya, lihat Cara
Kerja Algoritma Genetika .
Algoritme genetika menggunakan tiga jenis aturan utama pada setiap langkah untuk membuat
generasi berikutnya dari populasi saat ini:
• Aturan crossover menggabungkan dua orang tua untuk membentuk anak-anak untuk generasi
berikutnya.
• Aturan mutasi menerapkan perubahan acak pada masing-masing orang tua untuk membentuk anak.
Algoritma genetika berbeda dari algoritma optimasi klasik, berbasis turunan, dalam dua
cara utama, seperti yang dirangkum dalam tabel berikut:
Gagasan ini dapat diterapkan untuk masalah pencarian. Kami mempertimbangkan satu set solusi untuk masalah
dan memilih set yang terbaik dari mereka.
Lima fase dipertimbangkan dalam algoritma genetika.
1. Populasi awal
2. Fungsi kebugaran
3. Pilihan
4. pindah silang
5. Mutasi
Prosesnya dimulai dengan sekumpulan individu yang disebut Populasi . Setiap individu adalah solusi untuk
masalah yang ingin Anda pecahkan. Seorang individu dicirikan oleh seperangkat parameter (variabel) yang dikenal
sebagai Gen. Gen bergabung menjadi string untuk membentuk Kromosom (solusi). Dalam algoritme genetika,
himpunan gen individu direpresentasikan menggunakan string, dalam bentuk alfabet. Biasanya, nilai biner
digunakan (string 1s dan 0s). Kami mengatakan bahwa kami mengkodekan gen dalam kromosom
Fitness Function
Fungsi fitness menentukan seberapa fit seseorang (kemampuan individu untuk bersaing dengan individu lain). Ini
memberikan skor kebugaran untuk setiap individu. Probabilitas bahwa seorang individu akan dipilih untuk
reproduksi didasarkan pada skor kebugarannya.
Comments
Populasi memiliki ukuran yang tetap. Saat generasi baru terbentuk, individu dengan kebugaran paling rendah mati,
memberikan ruang bagi keturunan baru.
Urutan tahapan tersebut diulang-ulang untuk menghasilkan individu-individu pada setiap generasi baru yang lebih
baik dari generasi sebelumnya.
Diberikan di bawah ini adalah contoh implementasi dari algoritma genetika di Jawa. Jangan ragu untuk bermain-
main dengan kodenya.
Diberikan satu set 5 gen, setiap gen dapat menyimpan salah satu dari nilai biner 0 dan 1.
Nilai fitness dihitung sebagai jumlah 1 yang ada dalam genom. Jika ada lima 1, maka itu memiliki kebugaran
maksimum. Jika tidak ada 1s, maka ia memiliki kebugaran minimum.
Algoritma genetika ini mencoba memaksimalkan fungsi fitness untuk menyediakan populasi yang terdiri dari
individu yang paling cocok, yaitu individu dengan lima 1s.