162 , ISSN:1411-6340
dunia sekarang ini. Makhluk hidup yang dapat beradaptasi dengan lebih baik
terhadap lingkungannya akan mempunyai kesempatan yang lebih besar untuk
bertahan hidup dan bereproduksi sehingga mempengaruhi jumlah populasi spesies
yang
bersangkutan di
waktu-waktu selanjutnya.
Dalam perkembangannya, metode ini banyak dipakai dalam berbagai disiplin
ilmu. Algoritma Genetika ini digunakan untuk menyelesaikan kasus-kasus yang
mempunyai banyak solusi, dimana tidak ada kepastian solusi mana yang terbaik.
Sehingga dalam penyelesaian masalah tersebut akan membutuhkan waktu yang
sangat lama. Setiap solusi dalam Algoritma Genetika diwakili oleh suatu individu atau
satu kromosom. Keuntungan dari Algoritma ini adalah sifat metode search-nya yang
lebih optimal, tanpa terlalu memperbesar ruang pencarian, dan tanpa kehilangan
kelengkapan.
Melalui persilangan dan mutasi, akan ada individu-individu yang baru pada
populasi sebagai
populasi generasi.
Persilangan dan mutasi akan dilakukan lagi sehingga populasi yang baru tadi dapat
menemukan nilai pembandingnya. Proses ini akan diulangi beberapa generasi sampai
dapat diperoleh suatu hasil yang optimal.
2.2 Dasar Algoritma Genetika
Algoritma Genetika pertama kali ditemukan oleh John Holland sekitar tahun
1960-an. Tujuan
dari Holland
mengembangkan algoritma ini adalah bukan untuk mendesain suatu algoritma
yang dapat memecahkan suatu masalah, namun lebih mengarah pada studi mengenai
fenomena adaptasi yang terjadi di alam dan mencoba menerapkan mekanisme adaptasi
alam tersebut ke dalam sistem komputer.
Algoritma Genetika
yang dikembangkan Holland merupakan suatu
metoda untuk memindahkan satu populasi kromosom terdiri dari bit-bit 1 dan 0 ke
populasi baru dengan menggunakan seleksi alam dan operator genetic seperti crossover,
mutation mutasi, dan inversion. Crossover menukarkan
bagian kecil
dari dua
kromosom, mutasi mengganti secara acak nilai gen beberapa lokasi pada kromosom,
dan inversion
membalikkan urutan
beberapa gen yang berurutan dalam kromosom. Dasar teori inilah yang menjadi
dasar kebanyakan
program yang
menggunakan Algoritma Genetika.
2.3 Tahapan Proses Algoritma Genetika
Pada dasarnya proses Algoritma Genetika terdiri dari 5 tahap, sebagai
berikut: a.
Membentuk Populasi Awal Langkah awal dari Algoritma Genetika
adalah membentuk sebuah populasi untuk sejumlah
gen. Populasi
itu sendiri
merupakan sekumpulan solusi yang akan digunakan
dalam proses
regenerasi selanjutnya untuk mcncari solusi terbaik,
yang kemudian akan disebut sebagai individu. Masing-masing individu terdiri
dari sejumlah kromosom dimana jumlah kromosom. Satu kromosom terdiri dari
beberapa gen.
Semua populasi yang ada dalam Algoritma Genetika berasal dari 1 populasi
yang dikenal dengan populasi awal. Solusi atau individu terbaik dari populasi awal
akan dipertahankan sedangkan indivivu- individu yang lain akan diubah menjadi
variasi
lainnya untuk
memperoleh kemungkinan solusi yang lebih baik dari
solusi sebelumnya. Susunan gen dari masing-masing
individu terbentuk dari kromosom yang disusun dalam suatu string. Nilai string
dibentuk secara acak dengan memilih setiap kromosom dengan kode tertentu
secara acak pada string. Setiap string didekodekan menjadi suatu set parameter
yang dapat mewakilinya. Parameter ini merupakan
model numerik
ruang permasalahan, yang dapat memberikan
pemecahan berdasarkan masukan dari parameter.
Setiap string akan diberikan nilai fitness sebagai dasar kualitas pemecahan.
Dari nilai fitness tersebut ketiga operasi genetika yaitu reproduksi, crossover, dan
mutasi digunakan untuk menciptakan generasi baru dalam bentuk string. Set
string baru kemudian didekodekan dan dievaluasi kembali sampai generasi string
Penerapan Algoritma Genetika Dalam Optimasi Anastasia Widya Wati B 163
yang baru terbentuk kembali. Proses ini akan diulang sampai jumlahnya sesuai
dengan input jumlah generasi dari user atau memberikan output yang dianggap telah
memenuhi kriteria permasalahan.
Dalam pembentukan generasi awal ini, satu nomor kromosom mewakili satu
sifat, yang akan diacak oleh komputer untuk menyusun suatu gen, proses ini
disebut reproduksi. Gen adalah susunan kromosom dalam bentuk nomor yang
terkumpul menjadi suatu string dalam bentuk kode. Jumlah gen yang disusun
tergantung pada input dari user.
b. Mencari fitness cost
Pada tahap ini, setiap individu yang terbentuk dicari fitness costnya sebagai
pembanding antara individu satu dengan individu lainnya. Metode fitness cost yang
diambil dengan menjumlahkan semua nilai pembanding yang dihasilkan dari susunan
populasi. Perubahan solusi dapat diperoleh melalui 2 proses yaitu proses mutasi dan
proses persilangan.
c. Pengurutan sorting
Individu yang
ada di
populasi diurutkan berdasarkan fitness cost-nya.
Tujuannya adalah untuk mencari individu terbaik dari populasi yang ada, yang disebut
sebagai solusi terbaik sementara.
d. Proses Regenerasi
Terdiri dari 2 metode yaitu •
Metode Elitism Metode dimana individu-individu yang
akan mengalami regenerasi, yaitu mutasi dan crossover, didasarkan pada
nilai fitness yang rendah, sedangkan individu yang memiliki nilai fitness
tinggi
akan dipertahankan
untuk dibandingkan dengan individu hasil
proses regenerasi. •
Metode Non-Elitism Metode
yang melibatkan
semua individu, baik individugen terbaik
maupun gen yang kurang baik. Ada beberapa proses:
a. Mutasi
Mutasi adalah perubahan yang terjadi pada suatu individu, terlepas
dari pengaruh individu yang lain, yang
dilakukan dengan
cara mengubah kode string secara
probabilitas. Diharapkan
kode string terakhir yang diperoleh
merupakan solusi terbaik untuk permasalahan yang dihadapi.
b. Crossover
Kawin silang Proses penggabungan string dari
dua kode yang berbeda yang berarti mengambil bagian solusi yang
terbaik dari dua solusi yang berlainan, dengan harapan akan
dihasilkan
suatu solusi
yang terbaik.
Crossover dilakukan
dengan beberapa langkah sederhana sebagai berikut:
• Pertama, dipilih lokasi string
secara random •
Kedua, dipilih panjang string yang akan dikawinkan secara
random •
Ketiga, menukartempatkan gen yang dipilih dengan bagian
string dari gen terbaik. •
Keempat, memposisikan bagian kromosom yang tidak tertukar.
e. Tahap pengulangan
Setelah proses regenerasi selesai, maka dilakukan pengulangan sampai sejumlah
generasi yang dikehendaki. Gen dari generasi sebelumnya digantikan posisinya
dengan generasi yang baru. Individu yang diperoleh dari proses mutasi dan crossover
dianggap sebagai populasi awal lagi. Algoritma Genetika akan mengulang tahap
b sampai e secara terus menerus sampai pada
sejumlah generasi
yang telah
ditentukan. Pada akhir proses pengulangan ini, diharapkan diperoleh individu terbaik
dengan FC=0.
3. APLIKASI ALGORITMA GENETIK
Algoritma Genetika
dalam mengoptimasikan model dan simulasi suatu
sistem sudah banyak diterapkan pada bidang
manufaktur, di
sini dibahas
beberapa contoh mengenai hal tersebut. 1.
Optimasi Penjadwalan Produksi
Contoh aplikasi yang akan dibahas untuk masalah ini diambil berdasarkan
jurnal mengenai perencanaan produksi menggunakan simulasi dan algoritma dalam
optimasi penjadwalan
multi-kriteria.