Algoritma Evolusi Topik Lanjut Pada GA Imam Cholissodin

  • Slides: 19
Download presentation
Algoritma Evolusi Topik Lanjut Pada GA Imam Cholissodin | imam. cholissodin@gmail. com

Algoritma Evolusi Topik Lanjut Pada GA Imam Cholissodin | imam. cholissodin@gmail. com

Pokok Bahasan 1. 2. 3. 4. Hybrid Genetic Algorithms (HGAs) Parallel Genetic Algorithms (PGAs)

Pokok Bahasan 1. 2. 3. 4. Hybrid Genetic Algorithms (HGAs) Parallel Genetic Algorithms (PGAs) Nilai Parameter Adaptif Tugas

Pengantar § Meskipun GAs dianggap powerful untuk menyelesaikan berbagai permasalahan rumit, implementasi GAs sederhana

Pengantar § Meskipun GAs dianggap powerful untuk menyelesaikan berbagai permasalahan rumit, implementasi GAs sederhana seringkali tidak cukup efektif untuk menyelesaikan pada permasalahan kompleks dengan area pencarian yang sangat luas. § Representasi chromosome dan operator genetika yang tepat, kombinasi (hybrid) dengan metode lain, dan strategi yang efisien untuk menghindari konvergensi dini diperlukan untuk memperkuat kemampuan GAs (Lozano & Herrera 2003; Rothlauf 2006). § Contoh hibridasi (metode optimasi yang dioptimasi dengan metode optimasi yang lain) : o o o GA-SA (simulated annealing ) SA-GA GA dan hill-climbing GA-PSO (particle swarm optimization ) PSO-GA GA-ACO (ant colony optimization ), etc

Hybrid Genetic Algorithms (HGAs) § § § GAs murni memberikan hasil kurang optimum pada

Hybrid Genetic Algorithms (HGAs) § § § GAs murni memberikan hasil kurang optimum pada ruang pencarian yang kompleks. Penggabungan (hybridisation) dengan teknik lain dapat meningkatkan akurasi dan efisiensi pencarian solusi optimum. Hibridisasi GAs dengan teknik pencarian lokal (local search / LS) menghasilkan memetic algorithms (MAs). Teknik LS sederhana yang bisa dipakai misalnya algoritma hill-climbing yang sukses digunakan pada optimasi fungsi tanpa kendala. Kekuatan utama MAs : o Keseimbangan antara kemampuan eksplorasi GAs dalam pencarian o § pada area global, dan Kemampuan eksplotasi LS dalam area local (Lozano et al. 2004). Dalam implementasinya, LS diterapkan pada setiap individu baru dengan menggerakkannya menuju optimum lokal sebelum dimasukkan ke dalam populasi.

Hybrid Genetic Algorithms (HGAs) § Dengan mengacu struktur GAs murni pada PPT Pert. Ke-3

Hybrid Genetic Algorithms (HGAs) § Dengan mengacu struktur GAs murni pada PPT Pert. Ke-3 Slide Ke-9, maka struktur MAs bisa disusun dengan menambahkan perbaikan lokal sebagai berikut: procedure Algoritma. Genetika begin t = 0 inisialisasi P(t) while (bukan kondisi berhenti) do reproduksi C(t) dari P(t) evaluasi P(t) dan C(t) perbaiki C(t) seleksi P(t+1) dari P(t) dan C(t) t = t + 1 end while end Lakukan dengan teknik pencarian local search (LS), atau lainnya Mekanisme perbaikan offspring tersebut diilustrasikan pada Gambar 5. 1. Anak yang baru terbentuk (protochild) akan didorong menuju optimum lokal. Gambar 5. 1. MAs dan optimasi lokal (Gen & Cheng 2000)

Hybrid Genetic Algorithms (HGAs) § § Karena GAs bisa dihibridisasi dengan algoritma meta-heuristik yang

Hybrid Genetic Algorithms (HGAs) § § Karena GAs bisa dihibridisasi dengan algoritma meta-heuristik yang lain (tidak selalu LS) maka dalam pembahasan selanjutnya disebut hybrid GAs (HGAs). Hibridisasi real-coded GAs (RCGA) dengan beberapa metode, misal variable neighbourhoods search (VNS) dapat diterapkan untuk penyelesaian permasalahan : o Optimasi rute (yang memperhatikan kondisi jalur satu arah dua arah, bobot kemacetan, menggunakan matrik jarak asimetris dll), o Penjadwalan kuliah (yang melibatkan optimasi pembagian resouce mengajar, kelas parallel, dan atribut komplek lainnya) o Part type selection dan machine loading pada flexible manufacturing system (FMS), etc § Penyelesaian permasalahan tersebut diketahui sangat sulit sehingga GAs dihibridisasi dengan algoritma lainnya misal dengan particle swarm optimization dan simulated annealing.

Hybrid Genetic Algorithms (HGAs) § Variable Neighbourhoods Search (VNS) : o Neighborhood structures :

Hybrid Genetic Algorithms (HGAs) § Variable Neighbourhoods Search (VNS) : o Neighborhood structures : Nk (k=1, …, kmax), kmax adalah banyaknya o neighborhoods Nk(x) diperoleh dgn mengganti secara random sebanyak k-exchange dgn neighborhoods operator dalam representasi solusi (x). procedure Variable. Neighbourhoods. Search Input: current/initial solution kmax : number of neighbourhoods Output: best : the best solution begin inisialisasi solusi curr_s 0 best = curr_s 0 k = 1 while k ≤ kmax do curr_s = Modif. Solution. Nk(best, k), //k-exchange neighborhood, insert, etc best. Local = Local. Search(curr_s), //mencari solusi local optimum dengan LS //menggunakan neighborhood operator yang berbeda if(fitness(best. Local) > fitness(best)) then best = best. Local k = 1 else k = k + 1 end if end while end

Hybrid Genetic Algorithms (HGAs) § Local Search (LS) : procedure Local. Search Input: current/initial

Hybrid Genetic Algorithms (HGAs) § Local Search (LS) : procedure Local. Search Input: current/initial solution Output: best : the best solution begin best = curr while (bukan kondisi berhenti) do // set perulangan dengan batasan tertentu curr = Modif. Solution(curr) //dengan neighborhood operator tertentu if(fitness(curr) > fitness(best) ) then best = curr end if end while end

Hybrid Genetic Algorithms (HGAs) § Simulated Annealing (Younis R. Elhaddad, 2012) : procedure Simulated.

Hybrid Genetic Algorithms (HGAs) § Simulated Annealing (Younis R. Elhaddad, 2012) : procedure Simulated. Annealing begin inisialisasi solusi xp hitung fitness(xp) set t, sebagai initial temperatur set β, sebagai cooling factor, dimana 0 < β < 1 while (bukan kondisi berhenti) do pilih solusi yang bertetanggaan (neighboring solution) xn hitung fitness(xn) Hitung Δf = fitness(xp) - fitness(xn) if(Δf < 0) xp = x n else if((1/(1+exp(-(-Δf/t)))) > rand[0, 1]) xp = x n else probability t=β. t of end if accepting end if worse end while solution end

Hybrid Genetic Algorithms (HGAs) § PSO (Chen, Hui, Ling, at all, 2011) : Algoritma

Hybrid Genetic Algorithms (HGAs) § PSO (Chen, Hui, Ling, at all, 2011) : Algoritma particle swarm optimization (PSO) merupakan algoritma optimasi yang pertama kali dikenalkan oleh Kennedy dan Eberhart pada tahun 1995. Time variant yang digunakan adalah time varying acceleration coefficients (TVAC) dan time varying inertia weight (TVIW) Dimana, TVIW (wmin = 0. 4 dan wmax = 0. 9) Nilai range c 1 dan c 2 (TVAC) yang digunakan adalah (c 1 i=2. 5, c 1 f=0. 5) dan c 2 i=0. 5, c 2 f=2. 5) karena terbukti optimal. c 1 dan c 2 (cognitive dan social components). w (bobot inersia), d (banyaknya dimensi data, atau banyaknya fitur data), tmax (iterasi max. ) (posisi partikel ke-i, dimensi ke-j, pada iterasi ke-t) (kecepatan partikel ke-i, dimensi kej, pada iterasi ke-t) (posisi terbaik partikel ke-i, dimensi ke-j, pada iterasi ke-t) Personal Best (posisi terbaik global (dimana nilai g selalu tetap g=0), dimensi ke-j, pada iterasi ke-t) Global Best Rumus mencari nilai w, c 1 dan c 2 adalah Rumus update velocity: Update posisi: Rumus Sigmoid dan update posisi (untuk binary code):

Parallel Genetic Algorithms (PGAs) § § Pada ruang pencarian yang luas dan kompleks, GAs

Parallel Genetic Algorithms (PGAs) § § Pada ruang pencarian yang luas dan kompleks, GAs sering terjebak dalam daerah optimum lokal. Hal ini terjadi karena kurangnya keragaman individu dalam populasi. Hal ini bisa diatasi dengan meletakkan individu-individu dalam beberapa sub-populasi. Pada tiap sub-populasi diterapkan operator genetika (crossover, mutasi, dan seleksi) yang berbeda. Operator migrasi digunakan untuk memindahkan satu atau beberapa individu dari satu sub-populasi ke dalam sub-populasi lain. Pendekatan ini menghasilkan metode yang disebut algoritma genetika terdistribusi (distributed genetic algorithms, DGAs). DGAs terbukti efektif menjaga keragaman populasi dan meningkatkan kualitas hasil pencarian (Mahmudy 2009).

Parallel Genetic Algorithms (PGAs) § § Individu-individu yang ada juga bisa diletakkan pada beberapa

Parallel Genetic Algorithms (PGAs) § § Individu-individu yang ada juga bisa diletakkan pada beberapa subpopulasi yang diproses pada beberapa komputer secara paralel. Hal ini untuk mengurangi waktu komputasi pada masalah yang sangat kompleks. Karena itu DGAs sering juga disebut parallel genetic algorithms (PGAs). Mekanisme migrasi sederhana dideskripsikan pada Gambar 5. 2 yang menunjukkan ada empat sub-populasi. Pada setiap g generasi, satu individu terbaik dipindahkan ke sub-populasi yang lain. n individu 1 individu n individu Gambar 5. 2. Mekanisme migrasi

Nilai Parameter Adaptif § § § Kinerja GAs ditentukan oleh kemampuannya dalam menjelajahi (explore)

Nilai Parameter Adaptif § § § Kinerja GAs ditentukan oleh kemampuannya dalam menjelajahi (explore) dan mengeksploitasi (exploit) ruang pencarian (search space). Eksplorasi merujuk pada kemampuan untuk menginvestigasi area baru pada ruang pencarian. Eksploitasi merujuk pada kemampuan untuk meningkatkan kualitas solusi pada area tetangga (neighbourhoods) dari solusi yang didapatkan melalui eksplorasi (Lozano & Herrera 2003). Dari sini bisa disimpulkan bahwa keseimbangan kemampuan eksplorasi dan eksploitasi sangat penting untuk mendapatkan solusi yang baik (optimum atau mendekati optimum).

Nilai Parameter Adaptif § § § Keseimbangan kemampuan eksplorasi dan eksploitasi bisa didapatkan melalui

Nilai Parameter Adaptif § § § Keseimbangan kemampuan eksplorasi dan eksploitasi bisa didapatkan melalui penentuan crossover rate dan mutation rate yang tepat (Lozano & Herrera 2003). Jika crossover rate terlalu rendah maka GAs akan sangat tergantung pada proses mutasi. Walaupun mutation rate yang tinggi memungkinkan GAs mempunyai level eksplorasi dan diversitas populasi yang tinggi, crossover rate yang rendah membuatnya tidak bisa secara efektif ‘belajar’ dari generasi sebelumnya. Hal ini menyebabkan ruang pencarian tidak bisa diekploitasi secara efektif (Mahmudy 2013). Sebaliknya jika crossover rate tinggi dan mutation rate rendah maka GAs akan mengalami penurunan untuk menjaga diversitas pupolasi. Crossover rate yang tinggi menghasilkan offspring yang kemiripannya tinggi dengan induknya. Hal ini menyebabkan GAs mengalami konvergensi dini hanya dalam beberapa generasi dan kehilangan kesempatan untuk mengeksplorasi area lain dalam ruang pencarian (Mahmudy 2013).

Nilai Parameter Adaptif § § § Penentuan kombinasi terbaik crossover rate dan mutation rate

Nilai Parameter Adaptif § § § Penentuan kombinasi terbaik crossover rate dan mutation rate merupakan pekerjaan sulit dan memerlukan beberapa percobaan pendahuluan (Mahmudy, Marian & Luong 2013 d). Untuk permasalahan yang berbeda dibutuhkan nilai yang berbeda pula. Karena itu beberapa penelitian menerapkan mekanisme perubahan crossover rate dan mutation rate secara adaptif sepanjang generasi (Im & Lee 2008; Liqun et al. 2010; Mahmudy & Rahman 2011). Serangkaian percobaan menunjukkan bahwa penggunaan tingkat reproduksi adaptif mempercepat pergerakan GA ke daerah feasible yang sekaligus mempercepat pencapaian solusi (Mahmudy & Rahman 2011).

Nilai Parameter Adaptif § § § Mahmudy and Rahman (2011) menerapkan pengaturan mutation rate

Nilai Parameter Adaptif § § § Mahmudy and Rahman (2011) menerapkan pengaturan mutation rate secara adaptif sepanjang generasi. Pada setiap generasi dihitung rata-rata nilai fitness seluruh individu dalam populasi (f. Avg). Jika ada peningkatan rata-rata nilai fitness yang signifikan dibanding generasi sebelumnya (f. Avg>>f. Avg. Old) maka nilai mutation rate diturunkan. Hal ini memungkinkan GAs untuk lebih fokus mengeksploitasi ruang pencarian lokal. Jika terjadi hal yang sebaliknya (tidak ada peningkatan signifikan) maka nilai mutation rate dinaikkan. Hal ini memungkinkan GA untuk lebih memperluas pencarian (eksplorasi) dengan melompati daerah optimum lokal.

Nilai Parameter Adaptif § Pseudo-code dari mekanisme ini disajikan pada Gambar berikut: PROCEDURE Update.

Nilai Parameter Adaptif § Pseudo-code dari mekanisme ini disajikan pada Gambar berikut: PROCEDURE Update. Mutation. Rate Input: f. Avg : rata-rata nilai fitness pada generasi sekarang ( t) f. Avg. Old : rata-rata nilai fitness pada generasi sebelumnya ( t-1) threshold: nilai perbedaan yang menyatakan ada peningkatan signifikan mut. Rate : nilai mutation yang belum berubah Output: mut. Rate : nilai mutation yang telah berubah if f. Avg-f. Avg. Old>threshold then mut. Rate ← mut. Rate * 0. 95 else mut. Rate ← mut. Rate * 1. 1; end if mut. Rate>mut. Rate. Max then mut. Rate ← mut. Rate. Max else if mut. Rate<mut. Rate. Min then mut. Rate ← mut. Rate. Min end if END PROCEDURE § Pada pseudo-code di atas ditambahkan satu mekanisme untuk menjaga nilai mutation rate dalam range [mut. Rate. Min, mut. Rate. Max].

Tugas Kelompok 1. Apa tujuan dari penerapan algoritma genetika terdistribusi? 2. Jelaskan mekanisme kerja

Tugas Kelompok 1. Apa tujuan dari penerapan algoritma genetika terdistribusi? 2. Jelaskan mekanisme kerja dari algoritma genetika terdistribusi! 3. Apa tujuan dari pengembangan Hybrid Genetic Algorithms (HGAs)? 4. Apa tujuan dari penerapan nilai parameter adaptif? 5. Buatlah prosedure untuk HGAs antara GA dengan VNS! 6. Buatlah prosedure untuk HGAs antara GA dengan SA! 7. Buatlah prosedure untuk PSO! 8. Hitung V 1, 2 dan X 1, 2 pada iterasi ke-1!

Terimakasih Imam Cholissodin | imam. cholissodin@gmail. com

Terimakasih Imam Cholissodin | imam. cholissodin@gmail. com