Kemunculan Algoritma Genetika
dipengaruhi atau terinspirasi dari teori-teori dalam ilmu biologi. Algoritma
genetika dirintis oleh John Holland dan dikembangkan oleh muridnya David
Goldberg. Algoritma Genetika adalah algoritma yang dikembangkan dari proses pencarian
solusi menggunakan pencarian secara acak dan memanfaatkan proses seleksi
alamiah yang dikenal dengan proses evolusi.
Pada proses
evolusi individu secara terus-menerus mengalami perubahan genetik untuk
menyesuaikan dengan lingkungan hidupnya. Hanya individu-individu yang memiliki performansi yang
baik yang mampu bertahan. Proses seleksi
alamiah ini melibatkan perubahan genetik yang terjadi pada individu melalui
proses perkembangbiakan. Proses perkembangbiakan ini menjadi proses dasar yang
menjadi perhatian utama dengan dasar bagaimana mendapatkan keturunan dari
proses perkawinan yang lebih baik.
Prinsip-prinsip dasar
Proses perkembangbiakan yang
terjadi dalam algoritma genetika tidak terlepas dari istilah-istilah yang
diadopsi dari teori evolusi genetika dalam ilmu biologi. Istilah-istilah yang
berasal dari ilmu biologi yang dipakai dalam algoritma genetika.
Genotype (Gen)
merupakan sebuah nilai yang menyatakan
satuan dasar yang membentuk suatu arti tertentu dalam satu kesatuan. Setiap gen
mempunyai sebuah nilai yang disebut dengan allele
dan berada pada posisi tertentu dalam kromosom yang disebut dengan loci/locus. Allele tersebut dapat berupa angka biner (0/1) atau bertipe floating point tergantung dari bentuk
representasi genetik yang digunakan. Beberapa bentuk nilai-nilai gen dalam algoritma genetika dapat
berupa nilai biner, desimal, bilangan bulat maupun karakter huruf. Lebih lanjut
tentang nilai-nilai gen yang akan digunakan dalam penelitian ini dibahas dalam
bahasan skema pengkodean.
Chromossom (kromosom),
merupakan gabungan gen-gen yang membentuk kesatuan yang mewakili suatu nilai
tertentu. Kesatuan kromosom akan membentuk individu menyatakan satu nilai atau
keadaan yang menyatakan salah satu solusi yang mungkin dari permasalahan yang
diangkat. Seringkali individu-individu yang ada dalam populasi disebut dengan
kromosom (string) yang mempunyai
panjang yang sama. Setiap kromosom terdiri dari gen-gen yang tersusun secara
linier.
Sekumpulan individu yang sejenis
akan membentuk populasi. Populasi
merupakan sekumpulan individu yang akan diproses bersama dalam satu
siklus proses evolusi. Setiap proses siklus evolusi dinyatakan dengan istilah
generasi. Individu dalam sebuah generasi akan mengalami evaluasi untuk
mendapatkan suatu nilai yang dinyatakan dalam istilah fitness. Fitness menyatakan seberapa baik nilai dari suatu individu
atau solusi yang didapatkan.
Menurut Bandyopadhyay dan Pal (2007) menyatakan bahwa
algoritma genetika memiliki karakteristik yang menguntungkan untuk permasalahan
sebagai berikut;
1. Masalah yang tidak atau kurang
adaptif terhadap penyelesaian secara analitik matematis.
2. Masalah yang harus diselesaikan
secara paralel.
3. Solusi yang diharapkan tidak harus
paling optimal tetapi dapat diterima.
4. Dalam keterbatasan waktu, ruang
masalah cukup besar, kompleks dan sulit dipahami.
Referensi:
Bandyopadhyay, S. & Pal, S. K., 2007. Classification and Learning Using Genetic Algorithms: Application in Bioinformatics and Web Intellegence. New York: Springer.
Bandyopadhyay, S. & Pal, S. K., 2007. Classification and Learning Using Genetic Algorithms: Application in Bioinformatics and Web Intellegence. New York: Springer.