BAB III METODE PENELITIAN

dokumen-dokumen yang mirip
ANALISA KOMBINASI ALGORITMA GENETIKA DENGAN ALGORITMA PALGUNADI UNTUK PENJADWALAN MATA KULIAH DI UNIVERSITAS SEBELAS MARET

BAB I PENDAHULUAN 1.1 Latar Belakang

Kombinasi Algoritma Genetika dengan Algoritma Palgunadi untuk Penjadwalan Mata Kuliah di Universitas Sebelas Maret

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. sejumlah aktivitas kuliah dan batasan mata kuliah ke dalam slot ruang dan waktu

BAB III METODE PENELITIAN. Penelitian dilakukan dilingkungan Jurusan Ilmu Komputer Fakultas Matematika

1 BAB III METODE PENELITIAN

Perancangan Sistem Penjadwalan Asisten Dosen Menggunakan Algoritma Genetika (Studi Kasus: STIKOM Bali)

Optimasi Penjadwalan Ujian Menggunakan Algoritma Genetika

TAKARIR. algorithm algoritma/ kumpulan perintah untuk menyelesaikan suatu masalah. kesalahan program

Penggunaan Algoritma Genetik dengan Pemodelan Dua Tingkat dalam Permasalahan Penjadwalan Perawat pada Unit Gawat Darurat Rumah Sakit Umum XYZ Surabaya

Bab 1. Pendahuluan. 1.1 Latar Belakang

PENGEMBANGAN APLIKASI PENJADWALAN KULIAH SEMESTER I MENGGUNAKAN ALGORITMA GENETIKA

BAB 3 ANALISIS DAN PERANCANGAN APLIKASI

OPTIMASI PENJADWALAN KEGIATAN BELAJAR MENGAJAR DENGAN ALGORITMA GENETIK

Implementasi Algoritma Genetika dalam Pembuatan Jadwal Kuliah

KNAPSACK PROBLEM DENGAN ALGORITMA GENETIKA

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB III PERANCANGAN. Gambar 3.1 di bawah ini mengilustrasikan jalur pada TSP kurva terbuka jika jumlah node ada 10:

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

PENJADWALAN UJIAN AKHIR SEMESTER DENGAN ALGORITMA GENETIKA (STUDI KASUS JURUSAN TEKNIK INFORMATIKA UNESA)

T I N J A U A N P U S T A K A Algoritma Genetika [5]

TEKNIK PENJADWALAN KULIAH MENGGUNAKAN METODE ALGORITMA GENETIKA. Oleh Dian Sari Reski 1, Asrul Sani 2, Norma Muhtar 3 ABSTRACT

OPTIMASI PENJADWALAN CERDAS MENGGUNAKAN ALGORITMA MEMETIKA

BAB III KONSEP DAN PERANCANGAN APLIKASI

BAB I PENDAHULUAN 1.1. Latar Belakang

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA) 45 Edisi... Volume..., Bulan 20.. ISSN :

BAB III. Metode Penelitian

1. Pendahuluan 1.1. Latar Belakang

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN 1.1 Latar Belakang

OPTIMALISASI PENJADWALAN ACARA TELEVISI SWASTA MENGGUNAKAN ALGORITMA GENETIKA

BAB 2 DASAR TEORI. 2.1 Teka-Teki Silang

OPTIMASI PENJADWALAN BIMBINGAN BELAJAR MENGGUNAKAN METODE ALGORITMA GENETIKA

BAB I PENDAHULUAN. 1.1 Latar Belakang

Pengantar Kecerdasan Buatan (AK045218) Algoritma Genetika

BAB 1 PENDAHULUAN. disebut Univesitas Timetabling Problems (UTP). Permasalahan ini dilihat dari sisi

BAB I PENDAHULUAN. 1.1 Latar Belakang

HASIL DAN PEMBAHASAN. Gambar 7 Diagram alur proses mutasi.

Implementasi Sistem Penjadwalan Akademik Fakultas Teknik Universitas Tanjungpura Menggunakan Metode Algoritma Genetika

Penjadwalan Mata Kuliah Menggunakan Algoritma Genetika di Jurusan Sistem Informasi ITS

BAB II KAJIAN TEORI. genetika, dan algoritma memetika yang akan digunakan sebagai landasan dalam

8. Evaluasi Solusi dan Kriteria Berhenti Perumusan Masalah METODE PENELITIAN Studi Pustaka Pembentukan Data

APLIKASI UNTUK PREDIKSI JUMLAH MAHASISWA PENGAMBIL MATAKULIAH DENGAN MENGGUNAKAN ALGORITMA GENETIKA, STUDI KASUS DI JURUSAN TEKNIK INFORMATIKA ITS

BAB III PENJADWALAN KULIAH DI DEPARTEMEN MATEMATIKA DENGAN ALGORITMA MEMETIKA. Penjadwalan kuliah di departemen Matematika UI melibatkan

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem dilakukan untuk memperoleh definisi permasalahan dan

BAB 3 ANALISIS DAN PERANCANGAN

BAB II TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA

Arif Munandar 1, Achmad Lukman 2 1 Teknik Informatika STMIK El Rahma Yogyakarta, Teknik Informatika STMIK El Rahma Yogyakarta

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

OTOMASI PENJADWALAN KEGIATAN PRKULIAHAN DI PERGURUAN TINGGI MENGGUNAKAN METODE ALGORITMA GENETIKA ( STUDI KASUS STIKI )

BAB III METODOLOGI PENELITIAN

ABSTRAK. Kata kunci : Aplikasi, Penjadwalan, Algoritma Genetika. viii

Bab III Metode Perancangan Sistem

PENERAPAN ALGORITMA GENETIKA PADA PERENCANAAN LINTASAN KENDARAAN Achmad Hidayatno Darjat Hendry H L T

CODING VOL.2 NO. 1 (2014), Hal ISSN: X

Keywords Algoritma, Genetika, Penjadwalan I. PENDAHULUAN

PENERAPAN ALGORITMA GENETIKA PADA PENYELESAIAN TRAVELLING SALESMAN PROBLEM (TSP)

Bab IV Implementasi Sistem

ABSTRAK. Universitas Kristen Maranatha

RANCANG BANGUN PERANGKAT LUNAK PENJADWALAN PERKULIAHAN MENGGUNAKAN METODE META- HEURISTIK (PENGGABUNGAN METODE ALGORITMA GENETIK DAN TABU SEARCH)

SISTEM PENJADWALAN PERKULIAHAN MENGGUNAKAN ALGORITMA GENETIKA (STUDI KASUS PADA JURUSAN TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS TADULAKO)

Tugas Mata Kuliah E-Bisnis REVIEW TESIS

BAB IV HASIL DAN PEMBAHASAN

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

PENERAPAN ALGORITMA GENETIKA UNTUK PENJADWALAN UJIAN TUGAS AKHIR PADA JURUSAN TEKNIK INFORMATIKA UNIVERSITAS MUHAMMADIYAH MALANG

Universitas Bina Nusantara. Jurusan Teknik Informatika Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007

BAB 3 METODOLOGI Metode Penelitian. Dalam melakukan penelitian akan permasalahan ini, penulis menggunakan metode

Optimasi Multi Travelling Salesman Problem (M-TSP) Menggunakan Algoritma Genetika

PENEMPATAN MAHASISWA PESERTA MATA KULIAH UMUM DENGAN ALGORITMA GENETIK DI UNIVERSITAS KATOLIK PARAHYANGAN

APLIKASI ALGORITMA GENETIKA DALAM MENENTUKAN SPESIFIKASI PC BERDASARKAN KEMAMPUAN FINANSIAL KONSUMEN

BAB 1 PENDAHULUAN 1.1. Latar Belakang Masalah 1.2. Rumusan Masalah

BAB 3 PERANCANGAN PROGRAM. dari OOP (Object Oriented Programming) di mana dalam prosesnya, hal-hal

Oleh : SUPRIYONO

PERANCANGAN DAN PEMBUATAN APLIKASI OPTIMASI PENYUSUNAN IKLAN GAMBAR DENGAN ALGORITMA GENETIKA ABSTRAK

Contoh Penggunaan Algoritma Genetika dan NEH

BAB III METODE PENELITIAN. melakukan survey dengan kuisioner mencari informasi dari media yang

BAB III ANALISIS SISTEM DAN PERANCANGAN. Bisnis dan Informatika Stikom Surabaya dengan Menggunakan Algoritma

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

PENERAPAN ALGORITMA GENETIKA UNTUK MENYELESAIKAN PERMASALAHAN PENJADWALAN DOSEN DENGAN FUZZY

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

SYSTEMIC Vol. 02, No. 02, Desember 2016, 9-18 PROTOTYPE SISTEM PENDUKUNG KEPUTUSAN UNTUK PENETAPAN JADWAL KULIAH MENGGUNAKAN ALGORITMA GENETIKA

PERFORMANCE ALGORITMA GENETIKA (GA) PADA PENJADWALAN MATA PELAJARAN

BAB II TINJAUAN PUSTAKA. Khowarizmi. Algoritma didasarkan pada prinsiup-prinsip Matematika, yang

Lingkup Metode Optimasi

BAB II TINJAUAN PUSTAKA 2.1 Landasan Teori Algoritma Palgunadi

BAB II LANDASAN TEORI

ALGORITMA GENETIKA Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning

PERANCANGAN ALGORITMA GENETIKA DALAM PENYUSUNAN TEKA-TEKI SILANG

OPTIMASI QUERY DATABASE MENGGUNAKAN ALGORITMA GENETIK

BAB I PENDAHULUAN. hampir di seluruh dunia, termasuk Indonesia. Alat transportasi ini memiliki

Perancangan Dan Pembuatan Aplikasi Rekomendasi Jadwal Perkuliahan Pada Institut Informatika Indonesia Memanfaatkan Algoritma Genetika

R.Fitri 1, S.Novani 1, M.Siallagan 1

SISTEM PENJADWALAN KULIAH DENGAN ALGORITMA GENETIKA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Penyelesaian Puzzle Sudoku menggunakan Algoritma Genetik

Transkripsi:

digilib.uns.ac.id BAB III METODE PENELITIAN Penelitian ini sebelumnya diawali oleh pengumpulan litelatur dan pengumpulan data. Pengumpulan literatur merupakan pengumpulan bahan-bahan seperti jurnal, buku, papper, penelitian, makalah dan informasi lainnya yang membahas tentang penjadwalan mata kuliah di universitas, algoritma genetika dan algoritma Palgunadi. Pengumpulan data dilakukan dengan mengumpukan data-data yang dibutuhkan untuk melakukan penelitian dan akan berperan sebagai data yang nantinya diolah untuk diimplementasi. Data-data yang dibutuhkan antara lain data mata kuliah, dosen, kelas, mahasiswa, ruangan, jadwal, waktu kuliah, dan batasanbatasan penjadwalan. Setelah semua bahan litelatur dan data telah didapatkan penelitian ini dimulai dengan melakukan beberapa tahap yaitu: 3.1 Pemodelan Data Memodelkan data yang telah didapatkan menjadi model data yang terstruktur agar lebih mudah dipahami serta mengurangi data-data yang tidak perlu untuk digunakan. Pada tahap ini akan dibuat variabel-variabel dan skema objek penjadwalan secara umum. Variable-variabel penjadwalan ini secara garis besar dapat didefinisikan sebagai berikut: Dosen, merupakan set dari dosen D = {d1, d2,, dn} Kelas, merupakan set dari kelas K = {k1, k2,, kn}. Kelas terdiri dari sejumlah mahasiswa. Telah ditentukan bahwa mahasiswa telah dikelompokan dalam kelas, sehingga kelas bersifat disjoint berarti tidak ada mahasiswa yang sama dalam beberapa kelas. Mata kuliah, merupakan set dari mata kuliah M = {m1, m2, m3,, mn}. Timeslots, merupakan set dari timeslots T = {t1, t2,, tn}. Timeslots merupakan interval waktu dimana perkuliahan akan dilakukan. Timeslots memiliki waktu mulai dan waktu akhir. Elemen dari set timeslots memiliki bentuk <hari><jam> seperti senin1, senin2,, jumat10.

digilib.uns.ac.id 32 Ruangan, merupakan set dari ruangan R = {r1, r2,, rn}. Kegiatan Perkuliahan, merupakan set dari kegiatan perkuliahan (event) E = {e1, e2,, en}. Kegiatan perkuliahan memiliki atribut: Mata kuliah yang diajarkan, M_E = {m} Dosen yang mengajar di mata kuliah, set dari D_E = {d1, d2,, dn} Kelas yang diajar di mata kuliah, set dari K_E = {k1, k2,, kn} Total durasi timeslot dala sebuah perkuliahan, Dur_E = {dur } Ruangan Timeslots, set dari ruangan-timeslots dengan alasan untuk mempersimpel proses pencarian. RxT = {rxt1, rxt2,, rxtn}, memiliki atribut Ruangan, R_RxT = {r} Waktu timeslot, T_RxT = {t} Jadwal, set dari jadwal, Merupakan gabungan dari ruangan timeslot dengan event. J = {r1t1e1, r1t2e1, r2t1e2,, rntnen} Dari variabel tersebut dapat dipetakan kedalam skema sederhana seperti Gambar 3.1. Kelas Durasi Ruangan Dosen Event Jadwal Ruangan Timeslots Matakuliah Timeslot Gambar 3.1. Skema penjadwalan 3.2 Implementasi 3.2.1 Perancangan Algoritma Palgunadi Pada dasarnya algoritma Palgunadi dirancang dalam masalah penjadwalan klasik dengan hanya menggunakan batasan kaku. Karena pada kasus ini terdapat dua jenis batasan yaitu batasan kaku dan batasan lunak maka perlu dilakukan penyesuaian algoritma Palgunadi agar dapat bekerja pada dua jenis batasan tersebut. Penyesuaian ini membuat proses algoritma Palgunadi dibagi menjadi dua

digilib.uns.ac.id 33 tahap. Tahap pertama adalah pengalokasian jadwal dengan pengecekan batasan kaku dan batasan lunak. Tahap kedua dilakukan jika matriks ANS memiliki nilai (terdapat mata kuliah yang tidak terjadwal), maka mata kuliah pada matriks ANS akan dijadwalkan dengan pengecekan batasan kaku saja. Jika matriks ANS masih memiliki nilai maka penjadwalan dinyatakan gagal. Diagram alur untuk algoritma Palgunadi terdapat pada gambar 3.2.

digilib.uns.ac.id 34 START INPUT DATA INISIALISASI MATRIKS URUTKAN EVENT BERDASARKAN PRIORITAS MAKUL WAJIB - PILIHAN URUTKAN RxT BERDASARKAN WAKTU UNTUK SETIAP EVENT PILIH RxT TEORI SECARA URUT JIKA EVENT TEORI? PILIH RxT PRAKTEK SECARA URUT CHECK PELANGGARAN CONSTRAINTS MASIH ADA SISA RtX MELANGGAR EVENT DIJADWALKAN DENGAN PENGECEKAN HARD CONSTRAINT SAJA MASUKAN KE JADWAL MASIH ADA EVENT BLM TERJADWAL? TERJADWAL? BUAT JADWAL GAGAL END Gambar 3.2. Diagram alur Algoritma Palgunadi

digilib.uns.ac.id 35 3.2.2 Perancangan Algoritma Genetika Biasa Tahap-tahap yang dilakukan adalah: 3.2.2.1 Pengkodeam kromosom Mengacu kepada skema yang telah dibuat sebelumnya, pada algoritma genetika ini kromosom direpresentasikan dengan menggunakan enkoding nilai. Terdapat sebuah vector berupa list dari setiap Event yang memiliki nilai id posisi Ruangan-Tiemeslots jam pertamanya. Selain itu terdapat sebuah vector berupa list dari setiap Ruangan-Timeslots yang memiliki nilai berupa list id Event yang dialokasikan di Ruangan-Timeslots tersebut. Representasi kromosom dapat dilihat pada Gambar 3.4 dan contoh bentuk kromosom yang telah diprint sebagai array dapat dilihat pada Gambar 3.5. e2 e2 e1 e1 e1 e13 e13 e3 R1T1 R1T2 R1T3 ---- R2T7 R2T8 R2T9 ---- R16T5 R16T6 ----- RnTn Event-1 Event-2 Event-3 ----------- Event-13 ----------- Event-n R1T1 R1T2 R16T5 R2T8 RnTn Gambar 3.4. Representasi Kromosom

digilib.uns.ac.id 36 3.2.2.2 Inisialisasi Kromosom Gambar 3.5 Contoh Kromosom Inisialisasi kromosom pada tahap ini dilakukan dengan menggenerate nilai RxT random untuk setiap event pada kromosom, lalu membentuk struktur tambahan setiap RxT diberi nilai event. 3.2.2.3 Penentuan fungsi evaluasi Setelah sejumlah populasi telah dibentuk, setiap populasi akan dievaluasi untuk mengetahui nilai fitnessnya. Evaluasi ditentukan berdasarkan batasan kaku(hard constraints) dan batasan lunak (soft constraints) yang telah dijelaskan sebelumnya. Setiap batasan kaku memiliki nilai poin 2 dan setiap batasan lunak memiliki nilai poin 1, sehingga untuk evaluasi fitnes dapat dirumuskan sebagai: fitness = Bk + Bl Bkmax + Blmax Keterangan: Bk = Nilai batasan kaku Bl = Nilai batasan lunak Bkmax = Nilai batasan kaku maksimal Blmax = Nilai batasan lunak maksimal 3.2.2.4 Seleksi Seleksi dilakukan untuk memilih beberapa pasang kromosom yang dijadikan induk atau sebagai orang tua untuk sejumlah n anak berikutnya yang akan menggantikan individu dalam populasi pada setiap generasi. Pemilihan pasangan kromosom dilakukan dengan menggunakan seleksi tournament. Pada

digilib.uns.ac.id 37 metode seleksi dengan turnamen ini akan ditetapkan dua buah individu yang dipilh secara acak (random) dari suatu populasi. Individu yang terbaik dalam kelompok ini akan diseleksi sebagai induk pertama, demikian juga untuk pemilihan induk kedua. 3.2.2.5 Crossover Setelah dua kromosom induk selesai dipilih, langkah berikutnya adalah melakukan rekombinasi yaitu penyilangan (crossover) terhadap pasangan kromosom. Penyilangan akan menukar informasi genetik antara dua kromosom induk yang terpilih dari proses seleksi untuk membentuk sebuah kromosom anak. Crossover dilakukan dengan menggunakan crossover satu titik. Dimana dicari titik potong sebuah kromosom, potongan kromosom pertama berasal dari induk 1, dan sisa kromosom diambil dari induk 2. 3.2.2.6 Mutasi Anak hasil crossover sebelum dilepaskan ke populasi memiliki kemungkinan untuk terjadinya mutasi. Pada proses mutasi ini dilakukan perubahan nilai pada beberapa gen untuk menggenerate nilai RxT barunya. 3.2.2.7 Pergantian kromosom Pada tahap ini kromosom anak hasil crossover dan mutasi akan menggantikan posisi kromosom yang lama untuk membentuk sebuah populasi baru dengan ukuran yang sama. Pada prosedur pergantian ini diterapkan konsep elitism yang memastikan kromosom dengan fitness tertinggi tidak tersingkirkan dalam populasi. Diagram alur algoritma genetika ini dapat dilihat pada Gambar 3.3.

digilib.uns.ac.id 38 START DATA INPUT PEMBUATAN KROMOSOM INISIALISASI EVALUASI FITNESS == 0? SELEKSI CROSSOVER AMBIL KROMOSOM DENGAN BEST FITNESS MUTASI MEMBUAT JADWAL REPLACE DENGAN ELITISM FITNESS == 0? END EVALUASI Gambar 3.3. Diagram alur algoritma genetika 3.2.3 Perancangan Algoritma Kombinasi Pada kombinasi ini konsep yang ingin diterapkan adalah pengeleminasian batasan kaku pada setiap proses heuristik algoritma genetika dengan menggunakan algoritma palgunadi. Perbedaan kombinasi ini dengan algoritma genetika biasa terletak pada proses inisialisasi, crossover, dan mutasi. Proses ini memastikan

digilib.uns.ac.id 39 kromosom yang dibentuk pada setiap proses inisialisasi, crossover, mutasi tidak melanggar batasan kaku, sehingga yang dilakukan oleh algoritma genetika adalah meminimalkan pelanggaran batasan lunaknya. 3.2.3.1 Inisialisasi Kromosom Inisialisasi kromosom pada tahap ini dilakukan dengan menggunakan prinsip algoritma Palgunadi namun constraint yang dicek hanya berupa batasan kaku dan RxT dipilih secara random. Untuk setiap Event diberikan sebuah nilai yang berupa kode RxT, lalu pada struktur tambahan setiap RxT sejumlah n durasi dari Event ditempatkan Eventnya. Proses inisialisasi dijelaskan pada diagram alur Gambar 3.4.

digilib.uns.ac.id 40 START INPUT DATA INISIALISASI MATRIKS URUTKAN EVENT BERDASARKAN PRIORITAS MAKUL WAJIB - PILIHAN ACAK RxT UNTUK SETIAP EVENT PILIH RxT TEORI JIKA EVENT TEORI? PILIH RxT PRAKTEK CHECK PELANGGARAN HARD CONSTRAINTS MASIH ADA SISA RtX MELANGGAR GAGAL, BUAT ULANG KROMOSOM MASUKAN KE KROMOSOM MASIH ADA EVENT BLM TERJADWAL? BUAT KROMOSOM END Gambar 3.4. Diagram Alur Proses Inisialisasi Kromosom

digilib.uns.ac.id 41 3.2.3.2 Crossover Crossover dilakukan dengan menggunakan crossover satu titik. Dimana dicari titik potong sebuah kromosom, potongan kromosom pertama berasal dari induk 1, dan sisa kromosom diambil dari induk 2 dengan dilakukan sebuah fungsi untuk mengecek pelanggaran batasan kaku. Jika terdapat pelanggaran batasan kaku, maka dilakukan perbaikan bertahap. Perbaikan ini terdiri dari dua tahap yaitu repair 1(R1), dan repair 2(R2). R1 mengganti nilai gen yang melanggar batasan kaku dengan nilai baru yang tidak melanggar. R2 menukar nilai gen yang melanggar batasan kaku dengan nilai pada gen lain sehingga tidak melanggar. Jika sebuah kromosom induk 2 melanggar hard constraint maka tahap selanjutnya yang dilakukan adalah R1 jika R1 tidak dapat memperbaiki kromosom, maka dilakukan tahap R2. Jika kedua tahap R1 dan R2 tidak bisa memperbaiki kromosom, maka kromosom anak dibuang. Proses crossover dijelaskan pada diagram alur Gambar 3.5.

digilib.uns.ac.id 42 START PILIH TITIK POTONG KROMOSOM KOPI GEN DARI ORTU 1 GENERATE GEN URUT DARI RtX MELANGGAR HC AMBIL GEN BERIKUTNYA DARI ORTU 2 MELANGGAR HC MASUKAN GEN KE ANAK KOPI GEN DARI ORTU 2 KE ANAK ANAK MASIH KEKURANGAN GEN? MASIH ADA PILIHAN RxT PILIH RANDOM GEN DARI ANAK LAKUKAN SWAP GEN SWAP RxT nya DENGAN GEN BARU MELANGGAR HC PROSSES CROSS OVER SELESAI PROSES CROSSOVER DIBATALKAN END Gambar 3.5 Diagram Alur Proses Crossover Algoritma Kombinasi 3.2.3.3 Mutasi Anak hasil crossover sebelum dilepaskan ke populasi memiliki kemungkinan untuk terjadinya mutasi. Pada proses mutasi ini pergantian nilai pada setiap gen dilakukan dengan sebuah proses pengecekan pelanggaran batasan kaku jika melanggar maka akan dicari nilai baru yang tidak melanggar hard consrtraint, proses ini dilakukan hingga didapat kromosom yang tidak melanggar batasan kaku. Proses mutasi dijelaskan pada diagram alur Gambar 3.6.

digilib.uns.ac.id 43 START AMBIL SECARA RANDOM TITIK MUTASI GEN PADA TITIK MUTASI DI HAPUS, GEN-X ACAK RxT UNTUK SETIAP EVENT PILIH RxT TEORI JIKA EVENT TEORI? PILIH RxT PRAKTEK CHECK PELANGGARAN HARD CONSTRAINTS MASIH ADA SISA RtX MELANGGAR GAGAL, CARI TITIK LAIN MASUKAN KE GEN-X BUAT KROMOSOM END Gambar 3.6 Diagram Alur Proses Mutasi Algoritma Kombinasi

digilib.uns.ac.id 44 3.3 Pengujian Pada tahap ini dilakukan pengujian terhadap kombinasi algoritma genetika dengan algoritma Palgunadi. Sebagai perbandingan dari algoritma yang diusulkan tersebut, dilakukan pula pengujian terhadap algoritma Palgunadi dan algoritma genetika biasa. Pengujian dilakukan dengan menggunakan data jadwal jurusan informatika dan fisika semester genap periode februari-juli 2013 Universitas Sebelas Maret dengan total 9 kelas mahasiswa, 59 mata kuliah, 107 perkuliahan, 17 ruangan, 5 hari kuliah, dan 10 jam kuliah. Inputan berupa list event (Lapiran B), list ruangan (Lampiran C), dengan 5 hari kuliah dan 10 jam kuliah. Algoritma yang diuji adalah algoritma Palgunadi, algoritma genetika dan kombinasi algoritma genetika dengan algoritma Palgunadi. Parameter yang diuji adalah: Total waktu proses Jumlah pelanggaran pada batasan kaku Jumlah pelanggaran pada batasan lunak Khusus untuk algoritma genetika dan hibdridasi algoritma genetika terdapat beberapa setting pengujian yaitu: Populasi maksimum: 10 populasi dan 20 populasi Kromosom yang diganti pada setiap generasi: 5(10 populasi) dan10(20 populasi) Kromosom elitism: 5 Kemungkinan terjadi crossover: 0,7 Kemungkinan terjadi mutasi: 0,3 Setting kemungkinan terjadi crossover 0,7 dan kemungkinan terjadi mutasi 0,3 diambil dari hasil percobaan kombinasi setting crossover (70, 80, 90) dengan kemungkinan mutasi (10, 20, 30) yang memiliki fitness terbaik (Lampiran A). Pengujian dilakukan dengan menggunakan Laptop ASUS K43U dengan processor AMD E-450 (2 CPUs) ~1.6 GHz, dan RAM tersedia 1.6 GB.