Proses Optimasi dengan Algoritma Genetika

4.5. Proses Optimasi dengan Algoritma Genetika

Proses pencarian pertama dilakukan dengan metode langsung tanpa melalui algoritma penjadwalan. Pada metode ini kromosom akan langsung berisi kode waktu dan ruangan yang akan digunakan. Fungsi objektif terdiri dari dua bagian yaitu meminimalkan pelanggaran waktu serta meminimalkan penggunaan ruangan. Untuk kondisi optimasi dengan dua fungsi fitness seperti ini dapat didekati melalui metode Paretto Optimization. Metode ini tidak langsung menemukan suatu solusi yang menjadi solusi tunggal dari permasalahan namun merupakan kumpulan solusi terbaik yang mempertimbangkan seluruh fungsi fitness yang ada. Sekumpulan solusi dianggap telah mencapai optimum apabila perubahan pada satu variabel dalam solusi tidak menyebabkan variabel lainnya berubah dan ketika kondisi ini tercapai proses pencarian dihentikan. 4.5.1. Penentuan Hard Constraint dan Soft Constraint Dalam proses optimasi diperlukan suatu batasan yang akan menjadi soft dan hard constraint. Hard constraint merupakan batasan mutlak yang harus dipenuhi atau dibuat nol sedangkan soft contstraint merupakan batasan yang harus dipenuhi semaksimal mungkin namun apabila tidak dapat dipenuhi seluruhnya tidak menjadi masalah. Pelanggaran waktu yang diwakilkan dalam fitness f 1 ditetapkan sebagai hard constraint yang harus dihilangkan terlebih dahulu lalu memimalkan penggunaan jumlah ruangan yang diwakilkan dalam fitness f 2 . Penentuan fungsi fitness yang menjadi hard constraint dan soft constraint berguna untuk proses algoritma genetika selanjutnya yaitu pengurutan kromosom berdasarkan jumlah pelanggaran pada hard constraint atau besar dari f 1 . Kromosom dalam populasi diurutkan berdasarkan besar dari fitness f 1 yaitu seperti pada Tabel 4.11. Universitas Sumatera Utara Tabel 4.11 Pengurutan kromosom berdasarkan fitness f 1 Sebelum Sort Setelah Sort Kromosom fitness f 1 fitness f 2 Kromosom fitness f 1 fitness f 2 1 26 12 1 23 13 2 24 13 2 24 13 3 24 13 3 25 13 4 26 12 4 26 12 5 34 13 5 26 12 6 25 13 6 26 13 7 35 10 7 27 13 8 26 13 8 27 9 9 29 13 9 27 12 10 33 11 10 27 13 11 27 13 11 29 13 12 29 13 12 29 13 13 37 12 13 29 13 14 36 8 14 29 13 15 29 13 15 30 13 16 30 13 16 33 11 17 27 9 17 34 13 18 29 13 18 34 11 19 35 13 19 35 10 20 27 12 20 35 13 21 36 13 21 36 8 22 38 11 22 36 13 23 27 13 23 36 13 24 34 11 24 37 12 25 36 13 25 38 11 4.5.2. Pencarian Kromosom Dominated dan Non-Dominated Proses optimasi dengan Paretto Optimization dimulai dengan melakukan proses pengurutan sorting kromosom dari populasi awal berdasarkan kromosom Dominated dan Non-Dominated. Berdasarkan penentuan suatu kromosom yang mendominasi kromosom selanjutnya dilakukan dengan memberikan rangking dari seluruh kromosom yang ada pada Universitas Sumatera Utara populasi. Untuk kromosom yang mendominasi akan diberikan ranking yang lebih tinggi dari pada kromosom yang didominasinya. Proses pemberian rangking ini dimulai dari pemberian rangking = 1 untuk kromosom yang mendominasi dari seluruh kromosom yang ada pada populasi. Kromosom yang telah memiliki rangking akan dihilangkan dari populasi untuk sementara. Hal ini dilakukan dengan tujuan mencegah pemberian rangking secara berulang. Dari kromosom yang tersisa selanjutnya dilakukan proses pemberian untuk rangking = 2 bagi kromosom yang mendominasi kromosom lainnya. Proses pemberian rangking dilakukan secara berulang-ulang hingga seluruh kromosom memperoleh rangking. Jumlah maksimum rangking adalah sejumlah kromosom pada populasi. Rangking kromosom yang telah diperoleh akan langsung menjadi nilai fitness total dari fitness f 1 dan fitness f 2 pada suatu kromosom. Apabila kromosom tersebut merupakan rangking 1, maka fitness untuk kromosom tersebut bernilai 1 dan demikian seterusnya. Proses pemberian rangking ini dilakukan karena proses seleksi dengan seleksi turnamen membutuhkan satu nilai fitness. Goldberg [14] menyarankan bahwa penggunaan dominated sorted harus mempertimbangkan pembagian sumber daya yang ada pada variabel fitness f 1 dan fitness f 2 . Konsep yang menggabungkan paretto optimal pada algoritma genetika menentukan nilai fitness merupakan fungsi penambahan nilai fitness dengan beda antara besaran fitness f 1 dan fitness f 2 atau melalui persamaan: …………….. 4.1 dimana: fitnessn = fitness dari kromosom n N var = Jumlah variabel Universitas Sumatera Utara p m n = beda antar variabel fitness dari kromosom n dalam bilangan antara 0 dan 1 Proses penentuan fitness total pada kromosom dalam populasi ditunjukkan pada Tabel 4.12. Tabel 4.12 Pemberian nilai fitness pada kromosom dalam populasi Kromosom fitness f 1 fitness f 2 Rangking fitness Total 1 23 13 1 1,9950 2 24 13 2 2,9940 3 25 13 2 2,9940 4 26 12 3 3,9902 5 26 12 3 3,9902 6 26 13 3 3,9916 7 27 13 4 4,9902 8 27 9 4 4,9838 9 27 12 4 4,9888 Tabel 4.12 Pemberian nilai fitness pada kromosom dalam populasi lanjutan Kromosom fitness f 1 fitness f 2 Rangking fitness Total 10 27 13 4 4,9902 11 29 13 5 5,9872 12 29 13 5 5,9872 13 29 13 5 5,9872 14 29 13 5 5,9872 15 30 13 6 6,9856 16 33 11 7 7,9758 17 34 13 8 8,9780 18 34 11 8 8,9736 19 35 10 9 9,9688 20 35 13 9 9,9758 Universitas Sumatera Utara 4.5.3. Proses Seleksi dan Mutasi Proses seleksi dilakukan untuk memperoleh kromosom induk untuk menghasilkan individu baru. Proses seleksi untuk optimasi paretto optimum menggunakan seleksi turnamen. Dalam seleksi turnamen ditentukan bahwa jumlah kromosom yang akan mengikuti turnamen adalah 3 kromosom yang dipilih secara acak atau k = 3 seperti pada tabel 4.13. Tabel 4.13 Kromosom terpilih untuk k=3 Kromosom fitness fitness 6 3,9916 0,2001 12 5,9872 0,5003 19 9,9688 1,0000 Dari ketiga kromosom ini akan dipilih satu kromosom yang akan menjadi induk secara acak dengan kromosom yang memiliki nilai fitness lebih besar mendapatkan kesempatan terpilih yang lebih besar. Suatu bilangan acak antara 0 hingga 1 yang terpilih yaitu 0,6 menunjukkan bahwa bilangam 0,6 berada diantara fitness kromosom 12 dan 19 sehingga kromosom 19 akan terpilih menjadi kromosom induk. Proses elitisme akan menghilangkan setengah dari jumlah kromosom awal pada populasi sehingga untuk mengembalikan jumlah populasi, maka dibentuk kromosom baru melalui proses reproduksi. Kromosom baru yang dihasilkan diharapkan mewarisi sifat induk yang telah ditentukan sebelumnya. Proses reproduksi pada optimasi paretto optimum dilakukan melalui proses mutasi saja. Proses dilakukan dengan mengubah jumlah bit biner ke dalam bentuk inversnya sehingga diperoleh kombinasi dari kromosom yang lebih baik. Nilai probabilitas pada beberapa percobaan optimasi Paretto Optimum sebesar P m = 0,1. Mutasi yang digunakan adalah metode banyak titik dimana bit dipilih secara acak sejumlah 105 titik dan bit yang terpilih di- invers- kan seperti pada Gambar 4.2. Universitas Sumatera Utara Kromosom induk : 0001010100 1100110110 …0111010001 1000110100 0110110001 Hasil Mutasi: Kromosom baru 11: 000100 0100 1100110110 …0101010001 1000110100 0110010001 Kromosom baru 12: 0001010100 1101 110110 …0111010011 1000110100 0110110001 ………. Kromosom baru 18: 0001010100 1101 110110 …0111010001 1000110100 0010110001 Kromosom baru 19: 0001110100 1101 110110 …0111010001 1000110100 0110110001 Kromosom baru 20: 00010100 00 1100110110… 0111010001 1000110100 0110010001 Gambar 4.2 Proses reproduksi dengan mutasi banyak titik Proses pembentukan populasi awal, evaluasi nilai fitness, proses seleksi dan mutasi sampai diperoleh populasi baru dengan jumlah kromosom yang sama dengan kromosom awal merupakan satu generasi dari pencarian. Proses iterasi dari satu generasi ke generasi selanjutnya dilakukan berulang-ulang sehingga nilai fitness yang ditemukan semakin kecil. Proses perubahan nilai fitness ini diharapkan dapat menemukan kumpulan solusi yang optimum seperti tujuan dari proses Paretto Optimum. Proses pencarian akan berhenti apabila kumpulan solusi yang dianggap paling optimal telah ditemukan. Pencarian ini ditandai dengan tidak terjadi lagi perubahan pada nilai fitness yang diperoleh. Kondisi ini disebut juga dengan konvergen dan pencarian dihentikan. 4.5.4. Hasil Pengujian Tanpa Algoritma Penjadwalan Dari hasil pengujian, pencarian nilai fitness menghasilkan konvergen pada generasi ke- 127 dengan beberapa populasi akhir seperti pada Tabel 4.14. Universitas Sumatera Utara Tabel 4.14 Populasi akhir dari hasil proses optimasi Kromosom fitness f 1 fitness f 2 Rangking Fitness total 1 2 12 1 1,9928 2 2 9 1 1,9960 3 2 9 1 1,9960 4 2 9 1 1,9960 5 2 13 1 1,9916 6 2 13 1 1,9916 7 2 13 1 1,9916 8 2 9 1 1,9960 9 2 11 1 1,9940 10 2 10 1 1,9950 11 2 12 1 1,9928 12 2 13 1 1,9916 13 2 9 1 1,9960 14 2 9 1 1,9960 15 2 9 1 1,9960 16 2 13 1 1,9916 17 2 13 1 1,9916 18 2 13 1 1,9916 19 2 9 1 1,9960 20 2 13 1 1,9916 Pada populasi akhir di atas terlihat konvergensi pada nilai fitness f 1 sama untuk seluruh kromosom yaitu sebesar 2, sedangkan nilai fitness f 2 berbeda-beda dengan nilai tekecil sebesar 9. Untuk fitness total terlihat bahwa nilainya berbeda-beda. Nilai fitness total akan semakin kecil jika nilai fitness f 2 semakin kecil. Dalam Paretto Optimum seluruh kromosom dalam populasi merupakan solusi yang mempertimbangkan semua variabel dalam fitness. Apabila proses pencarian harus menentukan single solution dari kumpulan solusi yang ada, maka solusi yang dicari adalah solusi dengan tingkat pemenuhan terhadap seluruh variabel yang paling baik. Dalam hal ini, Universitas Sumatera Utara proses optimasi menginginkan tidak terjadi lagi pelanggaran waktu dan penggunaan ruangan yang paling minimal. Berdasarkan hasil akhir dari proses pencarian, f 1 merupakan jumlah pelanggaran waktu dan f 2 merupakan penggunaan jumlah ruangan, diperoleh hasil dengan Paretto Optimum jumlah populasi=20, proses elitisme dengan menghilangkan 50 dari total kromosom pada populasi dan probabilitas mutasi sebesar P m = 0.1 pada pencarian hingga 127 generasi menghasilkan jadwal dengan jumlah pelanggaran waktu sebanyak 2 kali dan jumlah ruangan maksimal yang digunakan sebanyak 9 ruangan dan waktu yang dibutuhkan untuk mencapai konvergen adalah 93 menit.

4.6. Proses Optimasi dengan Algoritma Penjadwalan dan Algoritma Genetika

Dokumen yang terkait

Penjadwalan Perkuliahan Dengan Menggunakan Algoritma Genetika (Studi Kasus: S-1 Ilmu Komputer Universitas Sumatera Utara)

7 85 140

Sistem Penjadwalan Dinamis Mahasiswa Baru Menggunakan Algoritma Genetika (Studi Kasus: Registrasi Ulang Mahasiswa Baru Universitas Sumatera Utara)

0 0 11

Sistem Penjadwalan Dinamis Mahasiswa Baru Menggunakan Algoritma Genetika (Studi Kasus: Registrasi Ulang Mahasiswa Baru Universitas Sumatera Utara)

0 0 2

Sistem Penjadwalan Dinamis Mahasiswa Baru Menggunakan Algoritma Genetika (Studi Kasus: Registrasi Ulang Mahasiswa Baru Universitas Sumatera Utara)

0 0 6

Sistem Penjadwalan Dinamis Mahasiswa Baru Menggunakan Algoritma Genetika (Studi Kasus: Registrasi Ulang Mahasiswa Baru Universitas Sumatera Utara)

0 0 21

Sistem Penjadwalan Kuliah dengan Menggunakan Algoritma Genetika Studi Kasus Fakultas Teknik Universitas Sumatera Utara

0 3 44

BAB II LANDASAN TEORI 2.1. Penelitian Terkait - Sistem Penjadwalan Kuliah dengan Menggunakan Algoritma Genetika Studi Kasus Fakultas Teknik Universitas Sumatera Utara

0 0 27

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah - Sistem Penjadwalan Kuliah dengan Menggunakan Algoritma Genetika Studi Kasus Fakultas Teknik Universitas Sumatera Utara

0 0 9

Sistem Penjadwalan Kuliah dengan Menggunakan Algoritma Genetika Studi Kasus Fakultas Teknik Universitas Sumatera Utara

0 0 17

SKRIPSI SISTEM PENJADWALAN MATA KULIAH MENGGUNAKAN ALGORITMA GENETIKA (STUDI KASUS PENJADWALAN MATA KULIAH KELAS R1 PROGRAM STUDI TEKNIK INFORMATIKAUMBY)

2 9 19