Pengkodean Biner Pengkodean Nilai Pengkodean Pohon Pengkodean Permutasi

2.4 Teknik Pengkodean

Pengkodean adalah suatu teknik untuk menyatakan populasi awal sebagai calon solusi suatu masalah ke dalam suatu kromosom sebagai suatu kunci pokok persoalan ketika menggunakan algoritma genetika Desiani, 2005. Agar dapat diproses melalui algoritma genetika, maka harus dikodekan terlebih dahulu ke dalam bentuk kromosom. Kromosom akan berisi informasi sejumlah gen yang mengkodekan informasi. Ada beberapa jenis pengkodean yang dapat digunakan dalam algoritma genetika yaitu pengkodean biner binary encoding, pengkodean nilai value encoding, pengkodean permutasi permutation enocding, pengkodean pohon tree encoding.

2.4.1 Pengkodean Biner

Pengkodean ini merupakan pengkodean yang sering digunakan dan paling sederhana. Pada pengkodean biner setiap kromosom direpresentasikan dalam barisan bit 0 atau 1, seperti dapat dilihat pada tabel 2.1 berikut ini: Tabel 2.1 Contoh Pengkodean Biner Kromosom A 10101011010 Kromosom B 11000010111 Pengkodean biner memberikan banyak kemungkinan untuk kromosom walaupun dengan jumlah nilai-nilai yang mungkin terjadi dalam suatu gen sedikit 0 atau 1. Pengkodean ini sering tidak sesuai untuk beberapa masalah terkadang harus dilakukan pengkoreksian setelah operasi crossover dan mutasi.

2.4.2 Pengkodean Nilai

Didalam pengkodean nilai setiap kromosom adalah string dari suatu nilai di mana nilai yang dikodekan langsung merupakan representasi dari masalah seperti bilangan bulat, desimal ataupun karakter. Contoh pengkodean ini dapat dilihat pada tabel 2.2 pada halaman 13. Universitas Sumatera Utara Tabel 2.2 Contoh Pengkodean Nilai Kromosom A 1.345, 4.534, 7.654, 8.789 Kromosom B ABC, ADC, CBC, BCA Kromosom C 1, 3, 4, 7, 5 Kromosom D Forward, backward, right, left

2.4.3 Pengkodean Pohon

Pengkodean pohon digunakan untuk menyusun program atau ekspresi didalam algoritma genetika. Dalam pengkodean pohon ini, setiap kromosom dinyatakan sebagai sebuah pohon dari setiap objek, seperti fungsi atau perintah dalam bahasa pemograman. Pengkodean pohon sangat baik dalam pembangunan sebuah program. Bahasa pemrograman LISP biasanya sering menggunakan pengkodean pohon, karena program didalamnya dapat direpresentasikan ke dalam bentuk ini, dan dapat dengan mudah di parse menjadi sebuah pohon, sehingga crossover dan mutasi dapat dilakukan dengan lebih mudah. Contoh pengkodean pohon dapat dilihat pada gambar dibawah ini: -ab+CDEF Gambar 2.3 Pengkodean Pohon

2.4.4 Pengkodean Permutasi

Pengkodean permutasi adalah pengkodean yang digunakan dalam masalah pengurutan data ordering problem, seperti masalah wiraniaga travelling salessman problem, atau masalah pengurutan tugas task ordering problem. Pada pengkodean ini setiap kromosom merupakan barisan angka yang merepresentasikan angka dalam urutan. Pengkodean ini berguna untuk masalah ordering, bahkan beberapa korelasi terhadap Universitas Sumatera Utara kromosom harus dilakukan untuk menjaga konsistensi representasi kromosom setelah proses crossover dan mutasi. Sebagai contoh, dapat dilihat pada tabel 2.3 berikut ini: Tabel 2.3 Contoh Pengkodean Permutasi Kromosom A 2 6 7 5 1 3 4 9 8 10 Kromosom B 10 5 4 9 7 1 3 2 6 8

2.5 Membangkitkan Populasi Awal dan Kromosom