• Tidak ada hasil yang ditemukan

Desain Algoritma Genetika

Dalam dokumen Semua bab i ii penutup (Halaman 61-68)

BAB IV ANALISIS, PERANCANGAN SISTEM, IMPLEMENTASI DAN

4.3 Fase Workshop Design

4.3.1 Desain Algoritma Genetika

Proses atau metode algoritma genetika terdiri dari beberapa tahapan penting, yaitu: pengkodean (Encoding), nilai fitness, dan seleksi (selection), kawin silang (crossover), dan mutase (mutation).

1. Pengkodean (Encoding)

Encoding adalah suatu proses pengkodean gen dalam suatu kromosom, dimana jadwal yang akan dimasukkan kedalam model kromosom yang didalamnya terdiri dari beberapa gen. Jenis Encoding ang dipakai yaitu real-number Encoding. Penulis memilih jenis pengkodean ini karena didasarkan oleh jumlah kromosom yang sangat banyak, sehingga jenis ini dinilai cocok untuk pengkodean. Encoding dilakukan dengan memisahkan tiap-tiap tabel masukan (missal: tabel hari) sebagai sebuah gen yang unik, dan setiap tabel dikodekan dalam bentuk angka.

Tabel 4. 1 Contoh Encoding Hari Id Hari Nama Hari

1 Senin 2 Selasa 3 Rabu 4 Kamis 5 Jumat 6 Sabtu 2. Populasi Awal

Tahap selanjutnya yaitu pembuatan pembentukan kromosom yang terdiri dari atas 1 buah gen yang sudah dikodekan sebelumnya, dimana gennya terdiri dari tabel pegawai, tabel jobs, dan tabel waktu

Tabel 4. 2 Urutan Pembentukan Kromosom

Gen Tugas

Pegawai

Pesanan Pemesan Durasi

3. Nilai Fitness dan Seleksi

Pada setiap populasi baru tebentuk baik dari populasi awal maupun dari proses regenerasi akan dihitung nilai fitness. Fitness merupakan nilai kualitas dari suatu kromosom. Seleksi nilai fitness merupakan solusi yang umum digunakan, rumus mencari nilai fitness yang digunakan pada aplikasi ini sebagai berikut:

Fitness= 1+(∑ 𝑃+ ∑ 𝐷)1 Ket:

• P = Bentrok Pesanan sama dipegawai yang sama. • D = Durasi/jangka waktu sama pegawai yang sama.

Selection adalah salah satu proses untuk mendapatkan kromosom-kromosom berkualitas pada generasi berikutnya. Metode yang digunakan yaitu roulette whel selection. Pemilihan kromosom dalam selection dilakukan dengan memperhatikan Batasan-batasan (constraint) yang sudah ditetapkan sebelumnya. Setiap kromosom akan diperiksa satu per satu dan dibandingkan dengan kromosom lainnya sesuai dengan batasab-batasan.

Proses seleksi dilakukan dengan cara memisahkan kromosom yang tidak memiliki pelanggaran dengan kromosom yang masih memiliki nilai error atau pelanggaran. Kromosom yang tidak memiliki pelanggaran atau nilai error akan disimpan sebagai kromosom yang bekualitas yang nantinya akan digunakan untuk dibandingkan kromsom hasil kawin silang dan mutasi. Sedangkan kromosom yang

masih memiliki nilai error makan selanjutnya akan dikawin silang (crossover) dan mutase.

Contoh : Kromosom 1 Kromosom 2

Berikut adalah 2 kromosom dengan 2 gen didalamnya. Langkah-langkah unutk melakukan proses seleksi kromosom yaitu:

1. Membandingkan antara kromosom 1 dengan kromosm 2 dengan memperthatikan Batasan-batasan (constraint) berikut:

• Pesanan tidak boleh dikerjakan oleh pegawai yang sama • Durasi yang sama tidak bisa dikerjakan oleh pegawai yang

sama.

2. Selanjutnya melakukan pemisahan kromosom yang tidak memiliki pelanggaran atau nilai error terhadap constraint, kemudian kromosom yang tidak terpilih akan disimpan sebagai kromsom yang berkualitas. Sedangkan kromosom yang masih memiliki nilai error selanjutnya akan dikawin silangkan (crossover) dan mutase.

4. Kawin Silang (Crossover)

Crossover yaitu mengawinkan atau menukarkan gen antara dua kromosom. Ada beberapa hal yang perlu diperhatikan dalam crossover:

a. Tentukan probabilitas persilangan (pc) yang diinginkan.

b. Bangkitkan bilangan acak ke-i antara 0-1 untuk setiap kromosom yang terdapat pelanggaran atau nilai error didalamnya.

1,1 2,4 2,3 3,5

c. Bandingkan bilangan acak ke-i pada setiap kromosom apakah ada yang memiliki nilai lebih besar dari (pc). Jika ya, maka pilih kromosom tersebut sebagai kromosom crossover.

d. Lakukan crossover pada semua pasangan gen antara dua kromosom secara berurutan, gen 1 pada kromosom 1 dikawin silangkan dengan gen 1 pada kromosm 2, gen 2 pada kromosom 1 dikawin silangkan dengan gen 2 pada kromosom 2, begirtu seterusnya.

Proses crossover dilakukan menggunakan metode one-point Crossover, ini merupakan metode perkawinan silang yang paling sederhana. Pemilihan ini didasarkan pada jumlah gen dalam kromosom yang sedikit itu 2 gen. jadi teknik ini dinilai cocok unutk digunakan. Setelah didapatkan hasil crossover, kemudian yang dilakukan evaluasi kembali tersebut. Kromosom yang tidak terdapat nilai error atau pelanggaran akan disimpan, sedangkan kromosom yang terdapat nilai error atau pelanggaran akan dilakukan proses mutasi.

5. Mutasi (Mutation)

Mutation adalah proses untuk mengubah susunan gen dalan suatu kromosom, gen yang diubah bukan keduanya, tetapi gen pegawai saja. Pemilihan posisi gen yang akan dimutasi dilakukan secara acak, tergantung mt (mutation rate), jika mt 25% maka akan diubah seperempat dari semua gen di semua kromosom. Nilai gen yang terkena proses mutase nilainya akan diganti secara acak dengan nilai yang terdapat pada tabel yang mewakili nilai tersebut. Setelah proses berhenti, kromosom hasil mutasi akan dievaluasi. Apabila masih ditemukan kromosom yang mengandung pelanggaran dari evaluasi yang dilakukan, maka akan kembali dilakukan proses crossover dan mutasi sampai sejumlah kromosom yang tersisa habis dan tidak mengandung pelanggaran lagi.

Berikut adalah langkah-langkah Generate jadwal menggunakan algoritma genetika:

Diketahui:

• 20 Pegawai yang bekerja • Tanggal mulai

• Durasi • Pemesan

Tabel 4. 3 Tabel Sebelum Menerapakan Algoritma Genetika

Nama Pemesan Nama Pegawai Tgl mulai mengerjakan Durasi

Budi jable 2017-08-08 7 Rahmat Toni 2017-07-25 6 Bagas Kiki 2017-07-15 7 Nur Noobi 2017-07-15 3 Lowike Fahmi 2017-07-25 6 Tahapannya :

1. Encoding (Pengkodean Gen dalam suatu kromosom)

Tabel 4. 4 Pengkodean Pegawai

8 Edi 9 Wawan 10 Ari No Nama Pegawai 1 Toni 2 Rijal 3 Kiki 4 Agus 5 Samsul 6 Santo 7 Engkus

Tabel 4. 5 Pengkodean Pemesan

Tabel 4. 6 Pengkodean Pesanan

2. Pembangkitan Populasi Awal

Gen Tugas

Pegawai

Pesanan Pemesan Durasi

Kromosom 1 : Gen 1 Gen 2

1 1

Kromosonm 2 : Gen 1 Gen 2

3 6 No Nama Pemesan 1 Puri Handayani 2 Uty 3 Reggina 4 Jambi 5 Milfan 6 Diah NO Nama Pesanan 1 Goodybag 2 Paperbag 3 Box 4 Tag 5 Undangan 6 Paperbag Tugas Pegawai 2 3 4 1 Tugas Pegawai 1 2 3 1 2 1 Tugas Pegawai 4 5 6 6 Tugas Pegawai 3 4 5 6 4 6

Kromosom 1 : Kromosom 2 :

3. Seleksi Nilai Fitness Fitness= 1

1+(∑ 𝑃+ ∑ 𝐷)

Ket :

• P = Bentrok Pesanan yang sama

• D = Durasi/jangka waktu pesanan sama pegawai Misalnya ketika membandingkan gen 1 dan gen 2 :

Jika pesanan dan pegawai sama maka bentrok (ClashPesanan+1) Jika durasi dan pegawai yang mengerjakan sama makan bentrok (ClashPesanan+1)

Gen 1 dibandingkan dengan gen 2 Gen 1 dibandingkan dengan gen 2

Kromosom 1 : Kromosom 2 : Fitness = 1 1+(1+0) = 0,5 Fitness = 1 1+(1+0) = 0,5 4. Crossover

Menukar gen antara 2 kromosom Kromosom 1 : Kromosom 2 : 1,1 2,1 3,6 4,6 1,1 2,1 3,6 4,6

CROSSOVER Kromosom 1 :

Kromosom 2 : Masih ada bentrok 5. Mutasi

Perubahan susunan gen di dalam kromosom, yang diubah hanya gen waktu saja.

Kromosom 1 : Kromosom 2 :

MUTASI Kromosom 1 :

Kromosom 2 :

Jadwal yang sudah tidak ada bentrok dengan menerapkan perhitungan algoritma genetika:

Kromosom 1 : Kromosom 2 :

Dalam dokumen Semua bab i ii penutup (Halaman 61-68)

Dokumen terkait