Professional Documents
Culture Documents
17-25
APLIKASI ALGORITMA GENETIK
Bidang Teknik
Artikel ini membahas pengembangan aplikasi algoritma genetik, sebagai salah satu
metode optimasi, untuk melakukan penjadwalan mata kuliah. Dalam membangun
alternatif solusi, algoritma genetik akan mempertimbangkan aspek ketersediaan
waktu dosen untuk mengajar; jadwal-jadwal yang telah ditentukan oleh pihak
laboratorium serta tidak boleh adanya jadwal kuliah yang beririsan dengan jadwal
kuliah angkatan sebelum maupun sesudahnya. Fitness dari solusi algoritma genetik
dihitung berdasarkan kemerataan distribusi mengajar setiap dosen; kemerataan
distribusi kuliah setiap kelas, jumlah kuliah yang berdekatan setiap angkatannya
serta jumlah jam yang tidak digunakan di pagi hari. Pengaplikasian algoritma
genetik ini diuji dengan program LabVIEW 6.1. dan dilakukan dalam 100 generasi,
di mana setiap generasi terdiri dari 10 kromosom. Pada hasil akhir iterasi
diperoleh solusi penjadwalan mata kuliah dengan harga fitness 0,0083.
Alamat korespondensi pada Muhammad Aria, Jurusan Teknik Elektro Universitas Komputer Indonesia, Jalan Dipati
Ukur 114, Bandung 40132. Tel. +62813 21271554. Email : aria554@yahoo.com
17
MUHAMMAD ARIA
18
APLIKASI ALGORITMA GENETIK
4. Tabel Ruang
5. Bobot Fitness
6. Kondisi Selesai
Tabel 1
Contoh Tabel Mata Kuliah
19
MUHAMMAD ARIA
11.00 – 11.45
Berdasarkan urutan dari Tabel Prioritas Mata
1
Kuliah, setiap mata kuliah akan dijadwalkan
11.45 – 12.30 1 ke dalam Tabel Jadwal Mata Kuliah secara
12.30 – 13.15 1 acak.
13.15 – 14.00
Agar diketahui apakah pada waktu tersebut
dosen; kelas maupun ruangan dapat
file spreadsheet dengan menggunakan digunakan untuk melaksanakan perkuliahan,
program Microsoft Excel, sehingga perlu maka Tabel Dosen; Tabel Ruang dan Tabel
diperhatikan bahwa penulisan nama dosen; Kelas untuk setiap mata kuliah serta Tabel
kelas dan ruang pada Tabel Mata Kuliah harus Mata Kuliah harus dipetakan terlebih dahulu
sama persis dengan penulisannya pada Tabel dalam Tabel Jadwal Mata Kuliah Bayangan
Dosen; Tabel Kelas dan Tabel Ruang. melalui operasi logika OR sehingga dapat
diketahui waktu mana saja yang tidak dapat
Bobot Fitness dan Kondisi Selesai akan digunakan dalam perkuliahan mata kuliah
diterangkan pada bagian selanjutnya. tersebut.
Proses Data Input Sebelum menjadwalkan suatu mata kuliah
pada Tabel Jadwal Mata Kuliah, algoritma
Agar dapat diproses dalam algoritma ini; akan mengecek terlebih dahulu kepada Tabel
Tabel Mata Kuliah; Tabel Dosen; Tabel Kelas Jadwal Mata Kuliah Bayangan untuk
dan Tabel Ruang harus digabungkan terlebih mengetahui apakah pada waktu tersebut dapat
dahulu menjadi Tabel Prioritas Mata Kuliah. digunakan untuk perkuliahan atau tidak. Jika
tidak maka algoritma didesain untuk mencari
Untuk menjadwalkan suatu Mata Kuliah, alokasi waktu lainnya.
perlu mempertimbangkan jadwal waktu
dosen, kelas dan ruangan yang tersedia. Maka Evaluasi Fitness
setiap mata kuliah akan memiliki banyaknya
pilihan penjadwalan yang berbeda. Bisa jadi Faktor-faktor yang mempengaruhi evaluasi
ada mata kuliah yang memiliki tiga pilihan fitness terhadap alternatif solusi adalah
hari dan bisa jadi ada mata kuliah yang hanya sebagai berikut :
memiliki satu pilihan hari saja. 1. Adakah pemecahan mata kuliah ?
Terhadap mata kuliah dengan bobot 3 SKS,
Tabel Prioritas Mata Kuliah berisikan program dapat memecah mata kuliah tersebut
banyaknya tingkat pilihan penjadwalan dari menjadi 2 atau 3 kelompok jam kuliah jika
20
APLIKASI ALGORITMA GENETIK
21
MUHAMMAD ARIA
berbeda terhadap nilai fitness. Tingkat memiliki harga fitness yang terendah akan
pengaruh ini disebut sebagai bobot. Jika suatu dihilangkan sehingga akan hanya selalu
faktor pengaruh memiliki harga bobot yang tersisa sekelompok solusi yang terbaik yang
tinggi maka setiap kali faktor tersebut terjadi pernah diperoleh oleh program. Solusi yang
dalam suatu solusi maka akan sangat tersisa hasil seleksi ini dikenal dengan nama
mengurangi nilai fitness dari solusi tersebut. populasi induk.
Dan sebaliknya jika suatu faktor memiliki
harga bobot yang kecil, maka tidak akan Agar jumlah populasi tetap, maka perlu
terlalu mengurangi nilai fitness dari solusi dibangkitkan solusi baru sebanyak setengah
meskipun faktor tersebut banyak terjadi dalam dari jumlah populasi yang ada. Dalam
solusi yang ditawarkan. program ini, cara yang digunakan untuk
membangkitkan solusi baru menggunakan dua
Dari rumus nilai fitness di atas dapat terlihat cara yaitu reproduksi kromosom baru dan cara
bahwa yang mempengaruhi besar nilai fitness mutasi dari solusi induk. Tujuan
adalah harga FN karena harga BN akan tetap pembangkitan solusi baru ini untuk
selama proses. Jika harga FN semakin besar menemukan alternatif solusi yang lebih baik
maka nilai Fitness akan semakin kecil. Karena dari solusi-solusi yang sudah diperoleh.
diinginkan solusi yang memiliki nilai Fitness
yang besar, maka program ini diharapkan Reproduksi Kromosom Baru
tidak terlalu banyak memunculkan faktor-
faktor pengaruh ini dalam solusi yang Setengah dari jumlah populasi baru akan
ditawarkan. dibangkitkan dengan cara reproduksi
kromosom baru. Yaitu penyusunan alternatif
Nilai bobot setiap faktor pengaruh yang solusi penjadwalan secara acak kembali untuk
digunakan dalam aplikasi ini dapat dilihat setiap mata kuliah. Proses ini sama dengan
pada Tabel 3. langkah ketiga yang telah dibahas.
Tabel 3 Dengan proses ini maka akan dihasilkan
Harga bobot sekelompok populasi baru yang benar-benar
Faktor pengaruh Harga berbeda dengan populasi induknya.
Bobot
Mutasi
Pemecahan mata kuliah 50
Adapun setengah populasi baru lainnya akan
Waktu pagi yang kosong 5
dibangkitkan dengan cara mutasi. Yaitu
Frekuensi mengajar dosen 20 setengah dari populasi induk akan dipilih
untuk diduplikasi. Pemilihan dapat dilakukan
Frekuensi kuliah kelas 20 dengan metode good fitness, random maupun
Mata kuliah berdekatan 5 roulette whell. Pada hasil duplikasi ini akan
dilakukan sedikit percobaan terhadap posisi
Mata kuliah berjauhan 5 penjadwalan beberapa mata kuliah. Proses
mutasi ini adalah suatu proses eksploitasi
Seleksi terhadap kemungkinan-kemungkinan
modifikasi pada jadwal yang telah ada.
Untuk mendapatkan solusi yang terbaik, maka
program harus menyeleksi solusi yang Perubahan posisi beberapa mata kuliah ini /
memiliki nilai fitness yang tergolong rendah. mutasi dapat membuat solusi duplikasi ini
Seleksi menggunakan metode good fitness menjadi memiliki nilai fitness yang lebih
yaitu setengah dari jumlah populasi yang rendah maupun lebih tinggi daripada solusi
22
APLIKASI ALGORITMA GENETIK
23
MUHAMMAD ARIA
0,006
0,004
KESIMPULAN DAN SARAN
0,002
0
0 10 20 30 40 50 60 70 80 90 100 Kesimpulan
Generasi
25
MUHAMMAD ARIA
26