Evolutionary Computation Genetic Algorithm Evolutionary Computation Mahmud Dwi Sulistiyo | Untari Novia Wisesty
Pendahuluan: EC – EAs – GA
Genetic Algorithm Evolusi Genetika
Inisialisasi Populasi Dekode Kromosom Evaluasi Individu Seleksi Orangtua Rekombinasi Mutasi Elitisme Seleksi Survivor Evolusi Berhenti? Solusi Tidak Ya Skema Umum GA
Studi Kasus Penerapan GA Minimasi fungsi matematis sederhana 𝑓 𝑥,𝑦 = 𝑥 2 +1 2 + 𝑦−3 2 minimum ??? 𝑥,𝑦 ∈ −5, 5
𝑓 𝑥,𝑦 = 𝑥 2 +1 2 + 𝑦−3 2 𝑥,𝑦 ∈ −5, 5 y 5 (-2, 3) x -5 5 -5
Kromosom pada GA Kromosom Individu Calon Solusi Kromosom GA Genotype Isinya apa?? Representasinya bagaimana??
Representasi Kromosom GA Kasus minimasi fungsi matematis: Representasi Biner Representasi Integer Representasi Real 1 1 1 1 5 4 1 9 2 3 5 1 7 0.3214 0.7438
Inisialisasi Populasi Jumlah gen setiap kromosom m 1 Ukuran populasi Inisialisasi secara acak
Dekode Kromosom GA Dekode konversi dari bentuk genotype menjadi bentuk fenotype Genotype Kromosom GA x y -3.2132 4.1980 Individu GA Fenotype disesuaikan dengan domain solusi yang diinginkan
𝑥 ′ = 𝑥′ 𝑚𝑖𝑛 + 𝑥− 𝑥 𝑚𝑖𝑛 𝑥 𝑚𝑎𝑥 − 𝑥 𝑚𝑖𝑛 𝑥′ 𝑚𝑎𝑥 − 𝑥′ 𝑚𝑖𝑛 Dekode Kromosom Domain genotype sesuai jenis representasi Rumus umum dekode untuk kasus minimasi fungsi matematis Normalisasi 𝑥 ′ = 𝑥′ 𝑚𝑖𝑛 + 𝑥− 𝑥 𝑚𝑖𝑛 𝑥 𝑚𝑎𝑥 − 𝑥 𝑚𝑖𝑛 𝑥′ 𝑚𝑎𝑥 − 𝑥′ 𝑚𝑖𝑛 ??? ??? Domain fenotype sesuai kasus batasan nilai x dan y [-5,5]
x y Dekode Kromosom Real 𝑥 ′ =−5+ 0.3214−0 1−0 5− −5 0.7438 Domain genotype [0, 1] 𝑥 ′ =−5+ 0.3214−0 1−0 5− −5 Dekode 𝑥 ′ =−5+0.3214 ∗10 𝑦 ′ =−5+0.7438 ∗10 x y -1.786 2.438 Domain fenotype [-5, 5]
x y Dekode Kromosom Integer 𝑥 ′ =−5+ 54190−0 99999−0 5− −5 2 3 5 1 7 Domain genotype [0, 99999] 𝑥 ′ =−5+ 54190−0 99999−0 5− −5 Dekode 𝑥 ′ =−5+0.5419 ∗10 𝑦 ′ =−5+0.2352 ∗10 x y 0.4190 -2.6483 Domain fenotype [-5, 5]
x y Dekode Kromosom Biner 𝑥 ′ = 10110 2 = 22 10 1 1 1 Domain genotype [00000, 11111] [0, 31] 𝑥 ′ = 10110 2 = 22 10 𝑥 ′ =−5+ 22−0 31−0 5− −5 Dekode 𝑥 ′ =−5+0.7097 ∗10 𝑦 ′ =−5+0.2581 ∗10 x y 2.0968 -2.4194 Domain fenotype [-5, 5]
Evaluasi Individu Populasi Baik Kualitas Individu Buruk Dalam dunia GA Fungsi Fitness Nilai Fitness
Fungsi Fitness 𝑓𝑖𝑡𝑛𝑒𝑠𝑠=𝑓(𝑥) 𝑓𝑖𝑡𝑛𝑒𝑠𝑠= 1 𝑓 𝑥 +𝑎 𝑓𝑖𝑡𝑛𝑒𝑠𝑠= 𝑓(𝑦) 𝑓 𝑥 +𝑎 Maksimasi Nilai fitness berbanding lurus dengan fungsi objektif Minimasi Nilai fitness berbanding terbaiik dengan fungsi objektif Kombinasi Terdapat komponen yang berbanding lurus maupun terbalik 𝑓𝑖𝑡𝑛𝑒𝑠𝑠=𝑓(𝑥) 𝑓𝑖𝑡𝑛𝑒𝑠𝑠= 1 𝑓 𝑥 +𝑎 𝑓𝑖𝑡𝑛𝑒𝑠𝑠= 𝑓(𝑦) 𝑓 𝑥 +𝑎 a adalah bilangan kecil untuk menghindari pembagian dengan angka 0 jika f(x) = 0
Evaluasi Individu 𝑓 𝑥,𝑦 = 𝑥 2 +1 2 + 𝑦−3 2 𝑓 𝑥,𝑦 =33.5658 1 1 1 Dekode menjadi X = 2.0968 dan y = -2.4194 𝑓 𝑥,𝑦 = 𝑥 2 +1 2 + 𝑦−3 2 𝑓 𝑥,𝑦 =33.5658 𝑓𝑖𝑡𝑛𝑒𝑠𝑠= 1 𝑓 𝑥,𝑦 +𝑎 Kasus Minimasi Fungsi = 1 33.5658+0.001 = 1 33.5658+0.001 =0.0298
Question Untuk kasus Travelling Salesman Problem (TSP), yang tujuannya adalah mencari jalur dengan cost terpendek, pada sekumpulan node yang harus dikunjungi satu per satu, maka secara konsep kita akan menggunakan model fungsi fitness yang mana? Fitness maksimasi Fitness minimasi Fitness kombinasi Tidak ada jawaban Answer: Fitness minimasi
Answer Untuk kasus Travelling Salesman Problem (TSP), yang tujuannya adalah mencari jalur dengan cost terpendek, pada sekumpulan node yang harus dikunjungi satu per satu, maka secara konsep kita akan menggunakan model fungsi fitness yang mana? Fitness maksimasi Fitness minimasi Fitness kombinasi Tidak ada jawaban Answer: Fitness minimasi
Pada GA, konsep Roulette Wheel ini menjadi salah satu metode dalam melakukan proses Seleksi Orangtua 1 juring = 1 kromosom Besarnya juring menyatakan peluang dipilihnya sebuah kromosom Besarnya juring ditentukan oleh nilai fitness masing-masing kromosom Fitness tertinggi juring terlebar Fitness terrendah juring tersempit
Seleksi Kromosom Orangtua menggunakan metode Roulette Wheel dengan model Baker’s SUS (Stochastic Universal Sampling)
Pindah silang dalam dunia Biologi terjadi pada tingkat kromosom. Sepasang kromosom akan menghasilkan sepasang kromosom baru.
Rekombinasi dengan 1 titik potong Rekombinasi dengan 2 dan 3 titik potong
Rekombinasi seragam (uniform)
Syarat yang harus dipenuhi! a <= Probabilitas Crossover Bilangan yang dibangkitkan secara acak untuk setiap pasangan kromosom Rekombinasi dilakukan dan menghasilkan kromosom baru Probabilitas Crossover (Pc) menunjukkan besarnya kemungkinan dihasilkannya individu baru dalam sebuah populasi melalui proses rekombinasi
Mutasi: bisa lebih baik? Struktur DNA amat sangat rumit ! Perubahan acak (mutasi) selalu buruk !! Kiri: seekor lalat buah (drosophila) normal. Tengah: seekor lalat buah dengan kaki tumbuh di kepala (mutasi akibat radiasi). Kanan: Bocah laki-laki korban kecelakaan instalasi nuklir Chernobyl yang mengakibatkan mutasi gen [ADN07].
Mutasi pada EAs Mutasi di kehidupan nyata selalu GAGAL!! Mutasi di ‘dunia’ EAs bisa lebih baik Kenapa?? Representasi individu pada EAs jauh lebih sederhana Mutasi dilakukan pada sebagian kecil gen, sehingga mungkin menghasilkan individu yang lebih baik
Mutasi pada EAs Kromosom Biner Membalik bit: 1 0 dan sebaliknya.
Mutasi pada EAs Kromosom Integer Membalik nilai integer: x’ = 9 – x
Mutasi pada EAs Kromosom Integer Pemilihan nilai secara acak
Mutasi pada EAs Kromosom Real Representasi real memiliki karakteristik yang berbeda dengan biner ataupun integer. Nilai-nilai gen pada representasi real bersifat continue, sedangkan representasi biner dan integer bersifat diskrit. Mutasi Uniform Nilai-nilai x’ didapat dari pembangkitan bilangan secara acak dengan distribusi seragam (uniform distribution) Mutasi Non-uniform dengan distribusi tetap Mutasi jenis ini paling umum digunakan, yaitu dengan penambahan nilai yang akan dimutasi dengan bilangan real yang dibangkitkan secara acak dengan distribusi tertentu.
Mutasi pada EAs Kromosom Real Mutasi Uniform Nilai gen asal = 0.4 Bangkitkan secara acak dengan distribusi normal [0,1] Nilai gen baru ganti dengan hasil pengacakan = 0.6 Mutasi Non-uniform dengan distribusi tetap Bangkitkan secara acak dengan distribusi tertentu [-1,1] Nilai gen baru tambahkan nilai asal dengan hasil pengacakan = 0.4 + (-0.3) = 0.1 Representasi real memiliki karakteristik yang berbeda dengan biner ataupun integer. Nilai-nilai gen pada representasi real bersifat continue, sedangkan representasi biner dan integer bersifat diskrit. Mutasi Uniform Nilai-nilai x’ didapat dari pembangkitan bilangan secara acak dengan distribusi seragam (uniform distribution) Mutasi Non-uniform dengan distribusi tetap Mutasi jenis ini paling umum digunakan, yaitu dengan penambahan nilai yang akan dimutasi dengan bilangan real yang dibangkitkan secara acak dengan distribusi tertentu.
Syarat yang harus dipenuhi! a <= Probabilitas Mutasi Bilangan yang dibangkitkan secara acak untuk setiap gen pada kromosom Mutasi dilakukan dan menghasilkan nilai gen baru Probabilitas Mutasi (Pm) menunjukkan besarnya kemungkinan dihasilkannya nilai gen baru dalam sebuah kromosom melalui proses mutasi
Rekombinasi dan Mutasi Question Bagian proses mana pada GA yang menghasilkan kromosom-kromosom baru, yang artinya juga menghasilkan calon-calon solusi yang baru? Evaluasi Individu Rekombinasi saja Mutasi saja Rekombinasi dan Mutasi Answer: Rekombinasi dan Mutasi
Rekombinasi dan Mutasi Answer Bagian proses pada GA yang menghasilkan kromosom-kromosom baru, yang artinya juga menghasilkan calon-calon solusi yang baru, adalah: Evaluasi Individu Rekombinasi saja Mutasi saja Rekombinasi dan Mutasi Answer: Rekombinasi dan Mutasi
“Survival of the Fittest” (Herbert Spencer)
Elitisme Pilih individu terbaik Populasi + Individu Baru Calon Next Populasi
Pergantian Populasi Seleksi Survivor Steady State: populasi lama digabung dengan populasi baru dan akan dipilih berdasarkan metode tertentu, misalnya dari fitness tertinggi, kemudian akan diambil kromosom-kromosom dari urutan paling atas sebanyak ukuran populasi yang sudah ditetapkan. Generational replacement: populasi yang lama langsung ditinggalkan begitu saja dan digantikan oleh individu baru hasil elitisme dan kromosom-kromosom lain hasil rekombinasi dan mutasi.
Steady State Generasi ke (i+1) Dipilih dengan metode tertentu sejumlah populasi awal Populasi lama + baru Populasi lama Generasi ke (i)
Langsung menggantikan Generational Replacement Generasi ke (i+1) Langsung menggantikan Populasi baru + elitisme Populasi lama Generasi ke (i)
Question Proses manakah yang menjamin bahwa solusi yang dihasilkan pada GA dari generasi ke generasi tidak akan turun, tetapi akan selalu lebih baik, minimal sama dengan generasi sebelumnya? Rekombinasi Mutasi Elitisme Seleksi Survivor Answer: Elitisme
Answer Proses yang menjamin bahwa solusi yang dihasilkan pada GA dari generasi ke generasi tidak akan turun, tetapi akan selalu lebih baik, minimal sama dengan generasi sebelumnya, adalah: Rekombinasi Mutasi Elitisme Seleksi Survivor Answer: Elitisme
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 1 Fitness terbaik = 5 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 2 Fitness terbaik = 10 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 10 Fitness terbaik = 200 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 20 Fitness terbaik = 900 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 50 Fitness terbaik = 950 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
y 5 -5 5 x -5 Ilustrasi proses evolusi pada GA Generasi 70 Fitness terbaik = 1000 y 5 -5 5 x -5 Seleksi Survivor: generational replacement
Kesimpulan GA merupakan salah satu algoritma pencarian dan optimasi yang mengadopsi teori dan konsep evolusi, penurunan genetika, dan seleksi alam GA dapat menemukan solusi dalam waktu yang cepat dengan hasil yang mendekati terbaik, atau bahkan yang terbaik, pada ruang permasalahan yang ditentukan GA sangat baik untuk kasus-kasus pencarian atau optimasi yang membutuhkan waktu penyelesaian secepat mungkin Banyak teknik-teknik di dalam GA yang dapat diobservasi dan dieksplorasi lebih jauh untuk mendapatkan proses maupun hasil yang lebih baik
Penutup: kesimpulan
Lab. Multimedia Fakultas Ilmu Terapan Tel-U Credits Ide Kreatif: Untari Novia Wisesty Mahmud Dwi Sulistiyo Storyline: Storyboard: Pengisi Suara: Animator: Amir Hasanudin Fauzi Contact Us: mahmudwis@telkomuniversity.ac.id untarinw@telkomuniversity.ac.id Special thanks to: Lab. Multimedia Fakultas Ilmu Terapan Tel-U Mas Gani dan Mas Yahdi