Gambar 3. Representasi kromosom string biner Syarif dan Mitsuo, 2003
Gambar 4. Representasi kromosom string integer
Gambar 5. Permutation Representation untuk Travelling Salesman Gen dan Cheng, 1997
Gambar 6. Representasi kromosom bentuk matrik untuk masalah transportasi David, 1996
3. Fungsi Fitness
Kromosom-kromosom pada setiap generasi dievaluasi dengan menggunakan alat ukur yang disebut dengan fungsi fitness. Nilai fitness
suatu kromosom menunjukkan kualitas kromosom tersebut dalam suatu populasi. Bentuk fungsi fitness didefinisikan sesuai masalah yang akan
diselesaikan. Suatu fungsi fitness digunakan untuk memberikan ciri dan
mengukur seberapa baik sebuah solusi Chen, Ian dan Cao, 2003. Fungsi fitness adalah fungsi yang akan mengukur tingkat kebugaran suatu
kromosom dalam populasi. Semakin besar nilai fitness, semakin bugar
1 1
1 1
1 1
1 2 3 4 5 . . . n
3 2
5 4
7 1
6 9
8 1 2 3 4 5 . . . n
5 3
4 1
2 1
2 i
. .
.
j 5
7 3
1 2
8 7
3 5
7 9
6 3
1
1 2 3 4 5 . . . n
pula kromosom dalam populasi sehingga semakin besar kemungkinan kromosom tersebut dapat tetap bertahan pada generasi berikutnya.
4. Operator-Operator Algoritma Genetik
Pencarian kromosom solusi baru pada populasi dilakukan dengan menggunakan operator-operator genetik yang terdiri atas operator seleksi
selection, penyilangan crossover, dan mutasi mutation. Diagram alir algoritma genetik dapat dilihat pada Gambar 7 :
Gambar 7. Diagram alir algoritma genetika Wang, 1999 Representasi
solusi ke dalam kromosom
Inisialisasi Initialization
Evaluasi Evaluation
Selesai Terminate ?
Seleksi Selection
Selesai
Penyilangan Crossover
Mutasi Mutation
Evaluasi Evaluation
Perbaikan Repair
Penggantian Replacement
a. Seleksi Selection kromosom Setelah populasi awal terbentuk, setiap kromosom dalam
populasi dievaluasi dengan menghitung nilai fungsi fitnessnya. Setelah itu proses pembentukan generasi baru diawali dengan seleksi
kromosom. Seleksi adalah proses pemilihan beberapa kromosom untuk dijadikan sebagai kromosom induk bagi generasi berikutnya. Menurut
Syarif dan Mitsuo 2003, kromosom terpilih untuk masing-masing populasi di dalam generasi yang berikutnya berdasarkan nilai fitness.
Populasi kromosom untuk generasi berikutnya dihasilkan menggunakan salah satu teknik seleksi kromosom yaitu seleksi cakram
rolet roulette wheel selection. Teknik ini disebut seleksi rolet sebab dapat dipandang sebagai pemutaran suatu cakram rolet. Setiap
kromosom menempati suatu daerah slot pada cakram rolet dengan proporsi luasnya sebanding dengan proporsi nilai fitness masing-
masing kromosom dalam populasi. Proporsi dalam cakram rolet juga menunjukkan peluang masing-masing kromosom untuk terpilih
menjadi induk parent pada generasi berikutnya. Teknik seleksi lainnya adalah seleksi turnamen tournament selection. Seleksi ini
akan membandingkan antara dua buah kromosom dalam populasi yang dipilih secara acak. Salah satu dari kromosom akan terpilih apabila
memenuhi atau mendekati nilai fitness. Hopgood, 2001 b. Penyilangan Crossover kromosom
Setelah proses penyeleksian kromosom, langkah berikutnya adalah melakukan penyilangan terhadap pasangan-pasangan
kromosom. Penyilangan crossover dikenal sebagai operator penggabungan ulang recombination yang paling utama dalam
algoritma genetik. Syarif dan Mitsuo, 2003. Menurut Chen, Ian dan Cao 2003, penyilangan akan menukar informasi genetik antara dua
kromosom induk yang terpilih dari proses seleksi untuk membentuk dua anak. Operator penyilangan bekerja pada sepasang kromosom
induk untuk menghasilkan dua kromosom anak dengan menukarkan beberapa elemen gen yang dimiliki masing-masing kromosom induk.
Operator penyilangan biasanya dihubungkan dengan peluang penyilangan. Peluang penyilangan Pc adalah rasio antara jumlah
kromosom yang diharapkan mengalami penyilangan dalam setiap generasi dengan jumlah kromosom total dalam populasi. Nilai Pc
biasanya cukup tinggi berkisar antara 0,6 – 1. Proses penyilangan akan terjadi pada sepasang kromosom jika suatu bilangan yang
dibangkitkan secara acak r, 0 r 1, nilainya kurang dari atau sama dengan Pc. Bilangan acak tersebut dibangkitkan setiap kali akan
menyilangkan sepasang kromosom. Tingkat penyilangan yang tinggi menyebabkan semakin besar kemungkinan algoritma genetik
mengeksplorasi ruang pencarian sekaligus mempercepat ditemukannya solusi optimum. Peluang penyilangan yang tepat dan efektif hanya
dapat diketahui melalui pengujian experiment khusus terhadap masalah yang bersangkutan. Misalnya ditentukan nilai Pc = 0.9.
Operator penyilangan yang sering digunakan dalam algoritma genetic sederhana simple genetic algorithm adalah penyilangan satu
titik one point crossover Holland, 1975. Penyilangan satu titik ini cocok digunakan untuk kromosom dengan representasi biner 1 dan 0.
Berikut Gambar 8 adalah ilustrasi proses penyilangan satu titik :
Gambar 8. Penyilangan satu titik one point crossover
1 1
1 1
1 1
Parent 1
1 1
1 1
1 1
Parent 2
1 1
1 1
1
Offspring 1
1 1
1 1
1 1
1
Offspring 2
Pada beberapa kasus, penyilangan satu titik tidak cocok digunakan karena dapat menghasilkan kromosom yang ilegal. Untuk itu Goldberg
dan Lingle 1985 memperkenalkan teknik PMX Partially Mapped Crossover untuk mencegah timbulnya kromosom ilegal dengan
adanya metode perbaikan repairing procedure.
Gambar 9. Ilustrasi Metode PMX Gen dan Cheng, 1997
1 2
3 4
5 6
7 8
9
Parent 1
5 4
6 9
2 1
7 8
3
Parent 2
1 2
3 4
5 6
7 8
9
Proto-child 1
5 4
6 9
2 1
7 8
3
Proto-child 2 1. Tentukan mapping section pada sepasang kromosom
2. Tukarkan kedua buah mapping section
untuk membentuk dua kromosom anak
3 4
5 6
6 9
2 1
1 6
3 2
5 9
4 3. Legalkan kromosom anak dengan kaidah mapping
relationship
3 5
6 9
2 1
7 8
4
Offspring 1
2 9
3 4
5 6
7 8
1
Offspring 2 4. Tentukan kaidah mapping relationship
c. Mutasi Mutation kromosom Operator mutasi bekerja pada sebuah gen dalam suatu
kromosom. Operator mutasi hanya operator tambahan atau operator sekunder tetapi dapat berperan sangat besar dalam menemukan solusi
yang optimum. Operasi ini akan menjadi sangat penting apabila nilai fitness kromosom dalam populasi cenderung sama atau sudah
mencapai konvergen bias premature konvergen. Akibatnya, operator seleksi akan mengalami kesukaran memilih kromosom terbaik untuk
dilakukan penyilangan. Dengan adanya operator mutasi, struktur suatu kromosom dapat dimodifikasi agar dihasilkan kromosom dengan
struktur baru yang memiliki nilai fitness lebih baik. Menurut Syarif dan Mitsuo 2003, mutasi pada umumnya
digunakan untuk mencegah tidak adanya kehilangan informasi sehingga dilaksanakan dengan pertukaran informasi di dalam
kromosom. Operator mutasi dapat bersifat konstruktif maupun destruktif terhadap suatu kromosom, tetapi karena probabilitasnya
yang kecil maka terjadinya mutasi akan sangat kecil karena didominasi oleh operator penyilangan. Peluang mutasi Pm adalah rasio antara
jumlah gen yang diharapkan mengalami mutasi pada setiap generasi dengan jumlah gen total dalam populasi. Nilai Pm yang digunakan
biasanya sangat kecil berkisar antara 0,001 – 0,2. Proses mutasi akan terjadi pada suatu gen, jika suatu bilangan yang dibangkitkan secara
acak r, 0 r 1, nilainya kurang dari atau sama dengan Pm.
Gambar 10. Ilustrasi Operator Mutasi
1 1
1 1
1
Chromosome e
1 1
1 1
1 1
Chromosome
5. Perbandingan Algoritma Genetik dengan Teknik Optimasi Konvensional