3 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.
4 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.
6 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.
7 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.
8 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.
9 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.
10 Siklus Algoritma Genetika Menurut David Goldberg Populasi Awal Evaluasi Fitness Seleksi Individu
Cross over dan mutasi Populasi Baru
13 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.
14 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 ).
15 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.
16 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.
17 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.
18 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 :
19 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.
20 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)+ ɛ
23 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)).