You are on page 1of 25

ARTIFICIAL INTELLIGENT

Genetic Algorithm
Gregorius Edwardr Adi Chris Dpp Bangun Afrizal Andika Tanuwijaya 5110100188 5110100207 5110100214 5110100217

Sejarah Genetic Algorithm


Berawal dari teori Darwin yang sempat mengubah konsep dan paradigma berfikir bahwa manusia merupakan hasil evolusi dari kera (sekitar abad 19). Dalam teorinya darwin menyebutkan bahwa makhluk hidup mengalami suatu mekanisme proses statistika yang terjadi antara populasi dan spesies, yang dikenal dengan proses manipulasi genetika. Proses ini meliputi : REPRODUKSI,MUTASI,KOMPETISI dan PEMILIHAN.

Sejarah Genetic Algorithm


Genetic Algorithm(GA) pertama kali diusulkan oleh John Holland dan rekannya di Univ Michigan untuk aplikasi seluler otomata(1970-an).

Genetic Algorithm
Genetic Algorithm adalah teknik pencarian dalam computer science yang digunakan untuk menemukan penyelesaian perkiraan untuk optimisasi dan masalah pencarian. Sama seperti konsep proses manipulasi genetika yang dikemukakan oleh darwin,GA juga menggunakan teknik yang disebut dengan warisan,mutasi,seleksi dan rekombinasi(crossover).

Konsep GA
GA bekerja dengan suatu cost function sebagai fungsi yang menguji kualitas solusi yang dalam hal ini dilambangkan sebagai suatu individu dalam satu generasi. Suatu solusi akan di-kodekan dengan string dan dapat dianggap sebagai DNA Kode tersebut kemudian akan dikawinkan dengan solusi lainnya. Suatu individu baru terlahir dianggap sebagai solusi baru. Pada dasarnya GA adalah suatu proses pencarian yang berdasarkan seleksi alami dan genetika.

Tujuan dari metoda ini adalah menghasilkan individu turunan yang lebih baik, dimana turunan disini merupakan bentuk solusi yang ingin dicapai.

Alur Algoritma
Membangun sebuah populasi yang terdiri atas beberapa gen atau direpresentasikan dengan string. Evaluasi masing-masing string Proses seleksi agar didapatkan string yang baik Manipulasi genetika untuk mendapatkan individu yang baru dari string.

Beberapa istilah yang penting


Kromosom : serangkaian nilai gen Gen : mempunyai nilai berupa suatu alfabet S, misalnya {0,1} Solusi : Direpresentasikan oleh suatu kromosom Skema : pola gen yang menggambarkan suatu subset dari string yang memiliki kesamaan pada posisi gen tertentu.sebuah skema dibentuk dengan menambahkan sebuah simbol spesial(orde). contoh : * 0 1 -> panjang string adalah 3 dan terdapat 3 orde dengan 2 posisi fix sedangkan posisi * bisa diisi dengan 0 maupun 1 sehingga hasilnya adalah 101 atau 001(1)

Beberapa istilah yang penting


Orde : banyaknya simbol khusus pada suatu skema ,simbol tersebut berupa dont care (*), 0 dan 1. Defining length : jarak antara simbol khusus paling kiri dan paling kanan.

Prinsip pada Genetic Algorithm


Reproduksi Cross Over Mutasi

Reproduksi
Merupakan proses dimana setiap individu dari populasi melahirkan individu baru dengan sifat masing-masing Sifat tersebut dinamakan sebagai value dari fungsi fitness (fitness -> fungsi yang digunakan untuk mencari nilai solusi yang terbaik dari persoalan yang ada). Pemilihan individu orang tua bergantung pada nilai fungsi fitness dari individu-individu tersebut didalam populasinya.

CrossOver
Terdapat banyak tipe dari Crossover, salah satu yang akan dijelaskan disini adalah crossover random dengan probability yang telah ditentukan dan b_nX tipe crossover Pm adalah peluang suatu individu dalam populasi akan dipilih secara random untuk dilakukan persilangan Crossover point akan dipilih dari setiap pasangan Informasi yang terletak setelah titik persilangan akan saling ditukarkan untuk setiap pasang individu

CrossOver

Mutasi
Diperlukan untuk mengembalikan informasi bit yang hilang akibat crossover. Diterapkan dengan probabilitas sangat kecil, jika mutasi dilakukan dengan frekuensi yang banyak(terlalu sering) maka akan menghasilkan individu yang lemah karena konfigurasi bit pada kromosom yang unggul akan rusak.

Proses Mutasi
Tingkat kromosom : semua gen dalam kromosom berubah

Proses Mutasi
Tingkat gen : semua bit dalam satu gen akan berubah. Misal gen 2 yang mengalami mutasi:

Proses Mutasi
Tingkat bit : hanya satu bit yang berubah

Contoh permasalahan yang dapat diselesaikan dengan GA


Travelling salesman problem Job shop schedulling Pembelajaraan pengendali neuro-fuzzy Pemrosesan citra dan optimasi kombinatiorial

Travelling Salesman Problem


Problem ini merupakan salah satu problem yang tergolong kedalam NP-HARD. Dengan kata lain :

Travelling Salesman Problem


GA dapat digunakan untuk menemukan solusi dari TSP walaupun mungkin hasilnya nanti bukanlah solusi terbaik. Basic step untuk menyelesaikan permasalahan ini : - Pertama kita buat suatu group dari beberapa jalur random yang kita beri nama populasi (dengan cara greedy) - kemudian ambil 2 jalur perjalanan yang paling pendek (parents) dan gabungkan untuk membentuk 2 jalur perjalanan baru (child) dengan harapan bahwa jalur perjalanan baru ini akan lebih baik dari pada sebelumnya(parent)

Travelling Salesman Problem


- Lakukan mutasi terhadap child jika ditemukan jalur yang tidak memenuhi kriteria. - Jalur perjalanan(child) yang baru dimasukkan kedalam populasi menggantikan 2 jalur perjalanan yang sebelumnya(lebih lama), sehingga ukuran dari populasi tetap sama - Jalur perjalanan baru(new child) kembali dibuat kembali(perulangan) sampai tujuan tercapai.

Travelling Salesman Problem


Hal yang kompleks dalam menggunakan algoritma genetik untuk menyelesaikan TSP adalah untuk menerjemahkan jalur perjalanan dan algoritma crossver yang bertujuan untuk menggabungkan 2 jalur utama perjalanan yang dipilih(parents) sehingga menghasilkan jalur baru(child). Jika dengan teorema crossover yang kami jelaskan di slide sebelumnya maka akan tercipta tabel sebagai berikut :

Travelling Salesman Problem


Parent 1 Parent 2 Child 1 Child 1 FAB|ECGD DEA|CGBF FAB|CGBF DEA|ECGD

Terlihat pada tabel diatas bahwa pada parent1 dan parent2 terdapat sebuah crossover point sehingga kita akan melakukan swap pasangan elemen yang terdapat setelah cross point tersebut, hasilnya adalah child1 dan child2 Akan tetapi ada permasalahan jika kita menerapkan teorem crossover pada TSP, mengingat pada TSP suatu kota hanya bisa dikunjungi sebanyak satu kali sedangkan pada child1 kota F dikunjungi sebanyak 2 kali.

Travelling Salesman Problem


Sehingga kita butuh suatu teorem lainnya yang bisa kita gunakan untuk menentukan child(jalur baru) dari 2 jalur yang kita pilih sebelumnya. Ada banyak crossover teorem yang mungkin dapat digunakan untuk menyelesaikan TSP ini dan itu merupakan bagian dari pencarian yang akan kami pelajari lebih jauh lagi.

Terima Kasih