ALGORITMA GENETIKA. KELOMPOK 6 CINDY RAHAYU ( ) MIA RAHMANIA ( ) M. ISKANDAR YAHYA ( ) Teknik Informatika 5A UIN.

Slides:



Advertisements
Presentasi serupa
Referensi : Kusumadewi, Sri. Artificial Intelligence Teknik dan Aplikasinya, Yogayakarta, Graha Ilmu, 2003 Pandjaitan, Lanny. Dasar – Dasar Komputasi Cerdas,
Advertisements

Fradika Indrawan,S.T – UAD – Pert I
ALGORITMA GENETIKA.
Integer Programming.
Algoritma Genetika Kelompok 2 Ferry sandi cristian ( )
Disusun Oleh: Ainiyatul Muthoharo ( )
PENGERTIAN KECERDASAN BUATAN
ALGORITMA GENETIKA.
Pengantar Matematika Diskrit
Algoritma Genetika.
Genetic Algoritms.
Algoritma Genetik  Setiap mahluk hidup selalu mengembangkan dirinya un tuk berusaha bertahan diri guna menyesuaikan dengan tuk berusaha bertahan diri.
ALGORITMA GENETIKA Disusun Oleh : Anjas Purnomo ( )
Yufis Azhar – Teknik Informatika - UMM
PENDAHULUAN.
Masalah Dan Solusi ( Pemecahan Masalah) Pada dasarnya tiap mahluk memiliki masalah, tetapi tiap mah luk juga memiliki cara untuk memecahkan masalahnya.
Dr.Ir. Yandra Arkeman, M.Eng
ALGORITMA GENETIKA.
Informatics Theory & Programming (ITP) Informatics Eng. Dept. – IT Telkom.
Informatics Theory & Programming (ITP) Informatics Eng. Dept. – IT Telkom.
Kuliah Sistem Fuzzy Pertemuan 13 “Algoritma Genetika” (lanjutan)
PENGENALAN KECERDASAN KOMPUTASIONAL
Apakah Matematika Diskrit itu?
ALGORITMA GENETIKA Pertemuan 12.
Kuliah Sistem Fuzzy Pertemuan 12 “Algoritma Genetika”
MPB 212 DEFINISI, SEJARAH PERKEMBANGAN DAN PERDEBATAN TEORI EVOLUSI
PENGENALAN KECERDASAN KOMPUTASIONAL
Fuzzy EAs Dr. Suyanto, S.T., M.Sc. HP/WA:
Rekayasa Perangkat Lunak Model Proses PL
Dasar-Dasar Algoritma Genetika
Oleh : Desca Marwan Toni (G )
Imam Cholissodin | Algoritma Evolusi Teknik Optimasi Imam Cholissodin |
Evolution Strategies (ES)
KEAMANAN KOMPUTER ADITYO NUGROHO,ST
Metode Pencarian/Pelacakan
Imam Cholissodin | Algoritma Evolusi Real-Coded GA (RCGA) Imam Cholissodin |
Paralelisasi dan Distribusi
Evolutionary Programming (EP)
Evolutionary Algorithms (EAs)
PENGANTAR PENGANTAR KECERDASAN BUATAN Artificial intelligence
Dynamic Programming Program dinamik adalah salah satu teknik matematika yang digunakan untuk mengoptimalkan proses pengambilan keputusan secara bertahap.
ALGORITMA GENETIKA.
Pertemuan 13 ALGORITMA GENETIKA
Oleh : Yusuf Nurrachman, ST, MMSI
Konvergensi Prematur dan Pencegahannya
GENETICS ALGORITHM Nelly Indriani W. S.Si., M.T KECERDASAN BUATAN.
Pertemuan 14 Algoritma Genetika.
Pengenalan Analisis Algoritma
Matematika Diskrit.
Artificial Intelligence (AI)
PERTEMUAN 2 Proses Pengembangan Perangkat Lunak
Algoritma AI 2.
KECERDASAN BUATAN (ARTIFICIAL INTELGENCE-AI)
Pertemuan 13 ALGORITMA GENETIKA
ALGORITMA GENETIKA.
Informed (Heuristic) Search
Pertemuan 13 Algoritma Genetika.
KECERDASAN BUATAN.
PENGANTAR PENGANTAR KECERDASAN BUATAN Artificial intelligence
ARTIFICIAL INTELEGENCE
Introduction to Soft computing
PENGERTIAN KECERDASAN BUATAN
Pengantar Matematika Diskrit
ALGORITMA GENETIKA.
KECERDASAN BUATAN By Serdiwansyah N. A..
Pertemuan 15 ALGORITMA GENETIKA
Kriptografi Levy Olivia Nur, MT.
PENGANTAR KECERDASAN BUATAN (ARTIFICIAL INTELLIGENCE)
Veni Wedyawati, M. Kom MODEL DAN SIMULASI
Teori Bahasa Otomata (1) 2. Searching
Transcript presentasi:

ALGORITMA GENETIKA

KELOMPOK 6 CINDY RAHAYU ( ) MIA RAHMANIA ( ) M. ISKANDAR YAHYA ( ) Teknik Informatika 5A UIN Syarif Hidayatullah Jakarta

Sejarah Algoritma Genetika Algoritma Genetika pertama kali diperkenalkan oleh John Holland dari Universitas Michigan pada awal 1970-an di New York, Amerika Serikat. John Holland bersama murid-murid serta rekan kerjanya lalu menghasilkan buku yang berjudul "Adaption in Natural and Artificial Systems" pada tahun 1975, yang cara kerjanya berdasarkan pada seleksi dan genetika alam. Konsep yang dipergunakan dalam algoritma genetika adalah mengikuti apa yang dilakukan oleh alam (Desiani dan Muhammad, 2006). Lalu tujuh belas tahun kemudian, John Koza melakukan penelitian suatu program yang berkembang dengan menggunakan algoritma genetika program yang dikenal dengan sebutan metode “genetic programming” tersebut dibuat menggunakan LIPS (bahasa pemogramannya dapat dinyatakan dalam bentuk parse tree yaitu objek kerjanya pada algoritma genetika). Sampai sekarang algoritma genetika terus digunakan untuk memecahkan permasalahan yang sulit dipecahkan dengan algoritma konvensional.

Algoritma Genetik khususnya diterapkan sebagai simulasi komputer dimana sebuah populasi representasi abstrak (kromosom) dari solusi-solusi calon (individual) pada sebuah masalah optimisasi akan berkembang menjadi solusisolusi yang lebih baik. Secara tradisional solusi-solusi tersebut dilambangkan dalam biner sebagai string '0' dan '1', walaupun dimungkinkan juga penggunaan penyandian (encoding) yang berbeda. Evolusi dimulai dari sebuah populasi individual acak yang lengkap dan terjadi dalam generasi-generasi. Dalam tiap generasi kemampuan keseluruhan populasi dievaluasi, kemudian multiple individuals dipilih dari populasi sekarang (current)secara stochastic (berdasarkan kemampuan mereka) lalu dimodifikasi (dengan mutasi atau rekombinasi) menjadi bentuk populasi baru yang menjadi populasi sekarang (current) pada iterasi berikutnya dari algoritma.

PENGERTIAN ALGORITMA GENETIKA Algoritma genetika yakni evaluasi atau perkembangan dunia komputer dalam bidang kecerdasan buatan (artificial intelligence). Kemunculan algoritma genetika ini terinspirasi oleh teori Darwin (walaupun pada kenyataannya teori tersebut terbukti keliru) dan teori-teori dalam ilmu biologi, sehingga banyak istilah dan konsep biologi yang digunakan dalam algoritma genetika, karena sesuai dengan namanya, proses-proses yang terjadi dalam algoritma genetika sama dengan apa yang terjadi pada evaluasi biologi. Algoritma genetika adalah teknik pencarian heuristikyang didasarkan pada gagasan evolusi seleksi alam dan genetik. Algoritma ini memanfaatkan proses seleksi alamiah yang dikenal dengan proses evolusi. Dalam proses evolusi, individu secara terus menerus mengalami perubahan gen untuk menyesuaikan dengan lingkungan hidupnya.

Aplikasi Algoritma Genetik 1. Optimasi Beberapa penggunaan algoritma genetika untuk optimasi antara lain untuk optimasi numerik dan optimasi kombinatorial seperti Traveling Salesmen Problem (TSP), 6 Perancangan Integrated Circuit atau IC, Job Scheduling, dan Optimasi video dan suara. 2. Pemrograman Otomatis Algoritma genetika untuk pemrograman otomatis antara lain untuk melakukan proses evolusi terhadap program komputer dalam merancang struktur komputasional, seperti cellular automata dan sorting networks.

3. Machine Learning Algoritma genetika juga telah berhasil diaplikasikan untuk memprediksi struktur protein. Algoritma genetika juga berhasil diaplikasikan dalam perancangan neural networks (jaringan syaraf tiruan) untuk melakukan proses evolusi terhadap aturanaturan pada learning classifier system atau symbolic production system dan dapat digunakan untuk mengontrol robot. 4. Model Ekonomi Dalam bidang ekonomi, algoritma genetika digunakan untuk memodelkan proses inovasi dan pengembangan strategi penawaran, dan munculnya pasal ekonomi.

5. Model Sistem Imunisasi Contoh penggunaan algoritma genetika dalam bidang ini untuk memodelkan berbagai aspek pada sistemkekebalan tubuh alamia, termasuk mutasi somatik selama masa hidup individu dan menemukan keluarga dengan gen ganda (multi gen families) selama evolusi. 6. Model Ekologi Algoritma genetika juga dapat digunakan untuk memodelkan fenomena ekologi seperti host-parasite co evolutions, simbiosis dan aliran sumber di dalam ekologi. 7. Interaksi Antara Evolusi dan Pembelajaran Algoritma genetika telah digunakan untuk mempelajari bagaimana individu belajar dan memengruhi proses evolusi suatu spesies satu sama lain.

TERMINOLOGI Gen – variabel dasar yang membentuk suatu kromosom. Allele – nilai dari suatu gen, bisa berupa biner, float,integer, maupun karakter. Kromosom – gabungan dari gen-gen yang membentuk arti tertentu. Jenis kromosom yakni : kromosom biner,float,string dan kombinatorial. Individu – kumpulan gen dengan kromosom. Populasi – sekumpulan individu yang akan diproses secara bersama-sama dalam satu siklus proses evolusi. Generasi – menyatakan satu satuan siklus proses evolusi. Fitness – menyatakan seberapa baik nilai dari suatu individu atau solusi yang didapatkan.

Siklus Algoritma Genetika Menurut David Goldberg Populasi Awal Evaluasi Fitness Seleksi Individu Cross over dan mutasi Populasi Baru

Kemudian diperbaiki oleh Zbigniew Michalewicz

Komponen-Komponen Utama Algoritma Genetika 1. Teknik Encoding/Dicoding Gen dan Individu Encoding yakni berguna untuk mengodekan nilai gen-gen pembentuk individu. Nilai-nilai gen ini diperoleh secara acak. Sedangkan decoding berguna untuk mendekode gen- gen pembentuk individu agar nilainya tidak melebihi range yang telah ditentukan dan sekaligus menjadi nilai variabel yang akan dicari sebagai solusi permasalahan. Teknik Encoding/Dicoding ini sama-sama memiliki 3 jenis yakni : pengodean bilagan real, disktrit desimal, dan biner. 2. Membangkitkan Populasi Awal Sebelum membangkitkan populasi awal, terlebih dahulu kita harus menentukan jumlah individu dalam populasi tersebut.

3. Nilai Fitness Nilai suatu individu/solusi (baik/tidaknya suatu individu/solusi). Acuan dalam mencapai nilai optimal dalam algoritma genetika -> mencari individu dengan nilai fitness yang paling tinggi. 4. Elitisme Adalah prosedur untuk meng-copy individu yang mempunyai nilai fitness tertinggi sebanyak satu (bila jumlah individu dalam suatu populasi adalah ganjil) atau dua (bila jumlah individu dalam suatu populasi adalah genap). Hal ini dilakukan agar individu ini tidak mengalami kerusakan (nilai fitness-nya menurun) selama proses pindah silang maupun mutasi.

5. Seleksi Pemilihan individu berdasarkan nilai fitness-nya. Jika nilai finessnya hampir sama hal ini akan berkibat buruk pada saat dilakukan proses seleksi untuk memilih orang tua karena menyebabkan optimum lokal. Seleksi ini digunakan untuk memilih dua buah individu yang akan dijadikan orang tua, kemudian dilakukan pindah silang ( Cross Over ) untuk mendapatkan keturunan yang baru. Metode seleksi yang sering digunakan adalah Roulette- Wheel ( Roda Roulette ).

6. Cross Over ( Pindah Silang ) Sebuah individu yang mengarah pada solusi optimal bisa diperoleh melalui proses pindah silang, dengan catatan bahwa pindah silang hanya bisa dilakukan jika sebuah bilangan random r dalam interval [ 0 1 ] yang dibangkitkan nilainya lebih kecil dari problabilitas tertentu prob, dengan kata lain r < prob. Biasanya nilai prob diset mendekati 1. Cara yang paing sederhana untuk melakukan pindah silang adalah pindah silang satu titik potong. Posisi titik potong dilakukan secara random.

7. Mutasi Operator ini berperan untuk menggantikan gen yang hilang dari populasi akibat proses seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada inisialisasi populasi. 8. Penggantian Populasi Dimaksudkan bahwa semua individu awal dari satu generasi diganti oleh temporer_individu hasil proses pindah silang dan mutasi.

TEKNIK CROSS-OVER ( PINDAH SILANG ) Berdasarkan tipe data dari nilai gen, ada beberapa cara untuk melakukan pindah silang, yaitu : 1. gen bertipe data biner Pindah silang melibatkan dua buah individu sebagai orang tua dan akan menghasilkan dua anak sebagai individu baru. Prinsip dari pindah silang ini adalah menentukan posisi titik potong T ( posisi gen ) secara random, yang dipakai sebagai acuan untuk menukar gen-gen orang tua sehingga dihasilkan gen-gen anak. Jika bilangan random yang dibangkitkan r lebih kecil daripada probabilitas pindah silang p ( r<p ), maka proses pindah silang dikerjakan.

2. Gen bertipe data real Untuk gen bertipe real cara pindah silangnya mengikuti persamaan berikut : x1’(T)=r*x1(T)+(r-1)*x2(T) x2’(T)=r*x2(T)+(r-1)*x1(T) 3. Gen bertipe data dan permutasi Bila tipe data dari gen adalah permutasi ( contohnya pada Travel Salesman Problem ), kita bisa gunakan metode Partial-Mapped CrossOver(PMX). Metode ini diciptakan oleh Goldberg dan Lingle dengan langkah- langkah berikut :

 Tentukan dua posisi ( P1 dan P2 ) pada individu secara random. Substring yang berada dalam dua posisi ini disebut daerah pemetaan.  Tukar dua substring antar dua induk untuk menghasilkan Proto-child.  Diantara daerah dua pemetaan, tentukan hubungannya.  Mengacu pada hubungan pemetaan tadi, tentukan individu keturunannya.

TEKNIK MUTASI Pada gen yang mempunyai tipe data biner, mutasi dilakukan dengan menukar bit 0 menjadi 1, dan bit 1 menjadi 0. Untuk gen yang mempunyai tipe data real, mutasi dilakukan dengan cara menggeser nilai gen termutasi ( Pada posisi T, dimana T= random ) sebesar bilangan kecil ɛ yang ditentukan dalam interval [ 0 1 ], nilai gen yang baru adalah : x’(r)=x(r)+ ɛ

KEUNTUNGAN MENGGUNAKAN ALGORITMA GENETIKA Ruang masalah sangat besar, kompleks, dan sulit dipahami, Kurang atau bahkan tidak ada pengetahuan yang memadai untuk merepresentasikan masalah ke dalam ruang pencarian yang lebih sempit, Tidak tersedianya analisis matematika yang memadai, Ketika metode-metode konvensional sudah tidak mampu menyelesaikan masalah yang dihadapi, Solusi yang diharapkan tidak harus paling optimal, tetapi cukup “bagus” atau bisa diterima, Terdapat batasan waktu, misalnya dalam real time system atau sistem waktu nyata.

KELEMAHAN MENGGUNAKAN ALGORITMA GENETIKA Algoritma genetika bekerja dengan bilangan acak pada kromosom awal, sehingga memungkinkan kromosom terbaik tidak terlibat dalam proses. Algoritma genetika menggunakan pembangkitan bilangan random dalam setiap pemilihan kromosom baik untuk induk, proses persilangan maupun mutasi. Solusi yang dihasilkan belum tentu merupakan solusi yang optimal, karena sangat dipengaruhi oleh bilangan acak yang dibangkitkan.

KORELASI ALGORITMA GENETIKA Dalam penerapan Algoritma banyak sekali ayat-ayat Al-qur’an yang memberikan inspirasi untuk mengembangkannya sehingga ditemukan ilmu-ilmu baru, khususnya dalam ilmu teknologi computer (informatika), ada beberapa cabang keilmuan yang didasari oleh alqur’an diantaranya : 1.Jaringan Syaraf Tiruan 2. Algoritma Genetika 3. Logika Fuzzy 4. Algoritma Semut 5. Teknologi Robot,dll “Dan mengapa mereka tidak memikirkan tentang (kejadian) diri mereka? Allah tidak menjadikan langit dan bumi dan apa yang ada diantara keduanya melainkan dengan (tujuan) yang benar dan waktu yang ditentukan. dan Sesungguhnya kebanyakan di antara manusia benar-benar ingkar akan Pertemuan dengan Tuhannya.” (QS:Ar-Rum(30)).