Anda di halaman 1dari 7

LESSON REPORT

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:

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


• Aturan seleksi memilih individu, yang disebut orang tua , yang berkontribusi pada populasi pada
generasi berikutnya. Pemilihan umumnya stokastik, dan dapat bergantung pada skor individu.

• 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:

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


Algoritma genetika adalah heuristik pencarian yang terinspirasi oleh teori evolusi alami Charles Darwin.
Algoritma ini mencerminkan proses seleksi alam di mana individu yang paling cocok dipilih untuk reproduksi
untuk menghasilkan keturunan dari generasi berikutnya.

Notion of Natural Selection


Proses seleksi alam dimulai dengan pemilihan individu yang paling cocok dari suatu populasi. Mereka
menghasilkan keturunan yang mewarisi karakteristik orang tua dan akan ditambahkan ke generasi berikutnya.
Jika orang tua memiliki kebugaran yang lebih baik, keturunannya akan lebih baik daripada orang tua dan memiliki
peluang lebih baik untuk bertahan hidup. Proses ini terus berulang dan pada akhirnya akan ditemukan generasi
dengan individu yang paling cocok.

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

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


Initial Population

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.

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


Kode semu

Contoh Implementasi di Java

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.

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


Catatan: Dalam contoh ini, setelah crossover dan mutasi, individu yang paling tidak cocok diganti dari keturunan baru yang paling cocok.

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING


Contoh keluaran parsial ketika setiap individu memiliki 50 gen :

Contoh output lengkap ketika setiap individu hanya memiliki 5 gen:

http://www.polibatam.ac.id ©2022 ROBOTICS ENGINEERING

Anda mungkin juga menyukai