ProsesPencarianJadwalbaru Algoritma 3.5. UpdateTimeSlotRuangsolusi, metod yang berfungsi untuk menukarkan UpdateKelasMatakuliahsolusi1,solusi2, metod yang berfungsi untuk

Berikut ini metod pencarian jadwal baru Solusi Baru ’ :

1. ProsesPencarianJadwalbaru Algoritma 3.5.

1. Mulai 2. Buat metod ProsesPencarianJadwalBaru, tipe pegembalian static void. 3. Buat variable ListPelanggaran fB_jadwal_sekarang = BantuSimpanFungBiaya_JadwalSkrg;. 4. Untuk i=0 sampai i sebanyak “fB_ jadwal_sekarang”, lakukan langkah 4 sampai 8. 5. Buat variable String HariYangMelanggar = fB_jadwal_sekarang.geti.getKodeSolusi.getKodeTimeSlot.getKod eHari.getKodeHari; 6. Buat variable ListString TsRg_Free= tampung_TS_Ruang_yg_tidak_digunakanDanBerbedaHari HariYangMelanggar; 7. Jika ”TsRg_Free” tidak kosong dan fungsi biaya current_state 10 dan size ” TsRg_Free ” 2 atau Jika ”TsRg_Free” tidak kosong size ” TsRg_Free ” 10.  Ambil secara random timeslot dan ruang. Random random=new Random; int next_num = random.nextIntTsRg_Free.size; Ambil “kode ts”,“kode ruang”,”kodewaktu”,”kodehari”. - Set atribut Jadwal. Keterangan : 1. Jadwal solusi=new Jadwal ,Jadwal solusi1=new Jadwal,Jadwal solusi2=new Jadwal , membuat objek baru solusi, solusi1, dan solusi2 untuk mengeset semua atribut Jadwal. Sebelum mengeset atrribut tersebut harus diset terlebih dahulu timeslot, matkuliah, dosen, kelasatakuliah, hari,waktu, timeslot, dan ruang.

2. UpdateTimeSlotRuangsolusi, metod yang berfungsi untuk menukarkan

timeslot yang melanggar dengan timeslot baru hasil random yang tidak digunakan. Jadwal solusi = new Jadwal ; - UpdateTimeSlotRuangsolusi; 8. Jika “TsRg_Free” kosong atau size ”TsRg_Free” =2.Cara 2 Set atrribut s olusi1 dari “fB_jadwal_sekarang” yang melanggar. Jadwal solusi1=new Jadwal ; - ambil secara random kelasmatakuliah baru beda hari. Jadwal sol= getRandomKelasMatakuliahSolusiBaruOptimal HariYangMelanggar; - Set atribut solusi2. “Jadwal solusi2=new Jadwal ”; - Tukarkan kelasmatakuliah dari kedua solusi1 dan solusi2 tersebut UpdateKelasMatakuliah solusi1, solusi2; 9. Selesai.

3. UpdateKelasMatakuliahsolusi1,solusi2, metod yang berfungsi untuk

menukar kelas matakuliah melanggar dengan kelas matakuliah baru hasil random dari tetangganya.

4. BantuSimpanFungBiaya_JadwalSkrg, metod yang berfungsi untuk