Académique Documents
Professionnel Documents
Culture Documents
Algoritma Genetika
Algoritma genetika adalah teknik pencarian yang di dalam ilmu komputer
untuk menemukan penyelesaian perkiraan untuk optimisasi dan masalah
pencarian. Algoritma genetika adalah kelas khusus dari algoritma evolusioner
dengan menggunakan teknik yang terinspirasi oleh biologi evolusioner seperti
warisan, mutasi, seleksi alam dan rekombinasi (atau crossover)
Algoritma Genetika pertama kali dikembangkan oleh John Holland pada
tahun 1970-an di New York, Amerika Serikat. Dia beserta murid-murid dan teman
kerjanya menghasilkan buku berjudul "Adaption in Natural and Artificial
Systems" pada tahun 1975.
Algoritma Genetika khususnya diterapkan sebagai simulasi komputer dimana
sebuah populasi representasi abstrak (disebut kromosom) dari solusi-solusi calon
(disebut individual) pada sebuah masalah optimisasi akan berkembang menjadi
solusi-solusi yang lebih baik. Secara tradisional, solusi-solusi dilambangkan
dalam biner sebagai string '0' dan '1', walaupun dimungkinkan juga penggunaan
penyandian (encoding) yang berbeda.
2. Evolusi
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) tersebut secara stochastic (berdasarkan kemampuan mereka), lalu
dimodifikasi (melalui mutasi atau rekombinasi) menjadi bentuk populasi baru
yang menjadi populasi sekarang (current) pada iterasi berikutnya dari algoritma.
Algoritma genetik yang umum menyaratkan dua hal untuk didefinisikan:
a. Representasi genetik dari penyelesaian
b. Fungsi kemampuan untuk mengevaluasinya.
Representasi baku adalah sebuah larik bit-bit. Larik jenis dan struktur lain
dapat digunakan dengan cara yang sama. Hal utama yang membuat representasi
genetik ini menjadi tepat adalah bahwa bagian-bagiannya mudah diatur karena
ukurannya yang tetap, yang memudahkan operasi persilangan sederhana.
Representasi panjang variabel juga digunakan, tetapi implementasi persilangan
lebih kompleks dalam kasus ini. Representasi seperti pohon diselidiki dalam
pemrograman genetik dan representasi bentuk bebas diselidiki di dalam HBGA.
Fungsi kemampuan didefinisikan di atas representasi genetik dan mengukur
kualitas penyelesaian yang diwakili. Fungsi kemampuan selalu tergantung pada
masalah. Sebagai contoh, jika pada ransel kita ingin memaksimalkan jumlah
benda (obyek) yang dapat kita masukkan ke dalamnya pada beberapa kapasitas
yang tetap. Representasi penyelesaian mungkin berbentuk larik bits, dimana tiap
bit mewakili obyek yang berbeda, dan nilai bit (0 atau 1) menggambarkan apakah
obyek tersebut ada di dalam ransel atau tidak. Tidak setiap representasi seperti ini
valid, karena ukuran obyek dapat melebihi kapasitas ransel. Kemampuan
penyelesaian adalah jumlah nilai dari semua obyek di dalam ransel jika
representasi itu valid, atau jika tidak 0. Dalam beberapa masalah, susah atau
bahkan tidak mungkin untuk mendefinisikan lambang kemampuan, maka pada
kasus ini digunakan IGA.
Sekali kita mendefinisikan representasi genetik dan fungsi kemampuan,
algoritma genetik akan memproses inisialisasi populasi penyelesaian secara acak,
dan memperbaikinya melalui aplikasi pengulangan dengan aplikasi operatoroperator mutasi, persilangan, dan seleksi.
3. Tutorial Algoritma Genetika
Algoritma genetik merupakan suatu metode yang menggunakan seleksi alam
yang merupakan bagian utama dari prinsip evolusi sebagai dasar pemikiran untuk
menyelesaikan suatu permasalahan. Prinsip ini dikemukakan oleh Charles
Darwin, dimana tanpa menghiraukan prinsip dasar penurunan sifat, Darwin
mengemukakan penggabungan kualitas induk pada generasi berikutnya,
Untuk Q2 diperlukan sama hanya perlu meukar induk pertama menjadi induk
kedua dan induk kedua menjadi induk pertama yang menjadi:
Q2 = (3 5 2 1 8 7 4 6 9)
2. One-Point Crossover
Contoh kerja operator ini adalah dengan menentukan crossover point (gen
tertentu). Kromosom baru pertama berisi gen pertama sampai gen crossover point
dari kromosom induk pertama ditambah dengan gen dari crossover point sampai
gen terakhir dari kromosom induk kedua. Kromosom baru kedua berisi gen
pertama sampai gen crossover point dari induk kedua ditambahkan dengan gen
dari crossover point sampai gen dari kromosom induk pertama. Adapun metode
crossover ini dapat diilustrasikan pada gambar berikut:
3. Two-Point Crossover
Proses Two-Point Crossover hampir sama dengan prosedur One-Point
Crossover, kecuali pada Two-Point Crossover harus dipilih dua crossover point
dan hanya gen yang ada di antara kedua crossover point itu yang akan ditukarkan.
Metode ini dapat menjadi bagian awal dan akhir dari kromosom dan hanya
menukar bagian tengahnya saja.
4. N-Point Crossover
Prosedur N-Point Crossover hampir sama baik dengan prosedur one-point
crossover maupuntwo-point crossover, hanya saja dalam n-point crossover ini
harus dipilih n crossover point dan hanya gen di antara crossover point ganjil dan
genap yang dapat ditukarkan sedangkan gen diantara genap dan ganjil operator
crossover tidak berubah. Atau dengan kata lain harus dipilih posisi n dan hanya bit
antara ganjil dan genap posisi crossover yang akan dihilangkan.
Contoh:
P1= 9 7 6 3 2 8
P2= 2 1 9 7 4 5
Jika didapatkan angka random untuk n=3 dan diacak 1,2 dan 4 sebagai posisi dari
gen yang akan di crossover, didapatkan kromosom turunan:
T1= 9 1 6 3 4 5
T2= 2 7 9 7 2 8
3.4 Mutasi
Mutasi adalah operator yang membutuhkan satu perameter. Kromosom
operator ini merupakan nilai suatu gen dari sebuah kromosom sehingga
kromosom yang baru ini berbeda dengan kromosom yang lama. Sekumpulan
kejadian dengan suatu nilai pelanggaran maksimal dapat dengan mudah
dihilangkan selama evaluasi fitness tujuan dari proses mutasi ini, untuk
mempertahankan kehilangan permanent dari suatu bit atau gen (Whitley,
1993:16). Seluruh proses mutasi ini menjanjikan keuntungan melalui pengarahan
mutasi kemana mutasi ini tersebut sangat dibutuhkan. Oprator mutasi digunakan
untuk melakukan modifikasi satu atau lebih dari nilai gen dalam individu yang
sama. Mutasi memastikan bahwa probabilitas untuk pencarian pada daerah
tertentu dalam persoalan tidak akan pernah nol dan mencegah kehilangan total
materi genetika setelah pemilihan dan penghapusan. Mutasi ini bukanlah operator
genetika yang utama, yang dilakukan secara acak pada gen dengan kemungkinan
yang lebih kecil. Metode ini disebut metasi gen (gene mutation) terdapat metode
lain yaitu: order mutation dimana dimungkinkan untuk menghilangkan seluruh
gen dari dua gen yang dipilih secara acak. Terdapat empat operator yang biasa
digunakan untuk permasalahan penjadwalan antara lain:
1. Violation Directed Mutation (VDM)
Memilih sutatu kejadian dengan suatu nilai pelanggaran maksimal, dan
secara acak mengubah waktu penugasan.
2. Event Freeing Mutation (EFM)
Memilih suatu kejadian dengan sauatu pelanggaran maksimal, kemudian
memberi waktu baru yang mana akan mengurangi secara maksimal angka ini.
Secara stokastik memilih suatu kejadian ,bias melalui kejadian itu dengan
nilai pelanggaran yang tinggi, kemudian secara stokastik memilh waktu baru
untuk kejadian ini, bisa melalui waktu yang mana akan mengurangi secara
maksimal angka pelanggaran kejadian.
3. Fungsi Objektif
Fungsi objektif adalah tujuan dari optimasi permasalahan. Biasanya fungsi
objektif ini hanya dua macam yaitu memaksimalkan dan meminimalkan.
Fungsi adalah salah satu aspek terpenting dalam algoritma genetika. Fungsi
evaluasi yang baik harus mampu menghasilkan suatu kurva silo. Siklus yang
cukup baik dan dapat mewakili permasalahan yang dihadapi.
Pengumpulan dini dalam algoritma genetika terjadi ketika beberapa
kromosom dengan nilai fitness yang tinggi (tapi bukan optimal) memdominasi
populasi dengan mengakibatkan algoritma genetika konvergen pada local optima.
Ketika populasi konvergenkemampuan algoritma genetika untuk mencari solusi
manjadi lebih baik. Crossover antara kromosom yang hampir identik
menghasilkan kromosom baru yang identik dalam operasi ini hanya operasi
mutasi yang mampu menghasilkan kromosom yang relatif baru dan merupakan
cara untuk menghidarkan kromosom yang super mendominasi populasi.
Sumber
http://www.metode-algoritma.com/2013/02/algoritma-genetika.html,