a. NUMDAYS menunjukkan pertemuan mata kuliah tiap minggu yang dikodekan dengan 1 dan 2, dimana 1 adalah pertemuan tiap minggu satu kali dan 2 adalah
pertemuan tiap minggu dua kali. b. DAYS menunjukkan pertemuan mata kuliah tiap minggu, dimana:
1. Pertemuan mata kuliah yang memiliki 2 sks dilaksanakan pada hari senin,
rabu, atau jumat; 2.
Pertemuan mata kuliah yang memiliki 3 sks dilaksanakan pada hari senin, selasa, rabu, kamis, atau jumat; dan
3. Pertemuan mata kuliah yang memiliki 4 sks dilaksanakan pada hari selasa
dan kamis.
c. TIMEOFDAYS menunjukkan waktu pertemuan mata kuliah tiap minggu
dikodekan dengan 1, 2, dan 3, dimana: 1.
1 = pagi, 2.
2 = siang, dan 3.
3 = sore.
Berdasarkan ketentuan diatas, maka mata kuliah dapat dibagi menjadi tujuh grup, seperti yang terlihat pada Tabel 3.1.
Tabel 3.1 Pembagian Grup Mata Kuliah GRUP NUMDAYS
DAYS TIMEOFDAY
1 1
Senin, Rabu, atau Jumat 2 sks 1 pagi; 08:00-09:40
2 1
Senin, Rabu, atau Jumat 2 sks 2 siang; 09:40-13:00
3 1
Senin, Rabu, atau Jumat 2 sks 3 sore; 13:00-15:30
4 1 Senin, Selasa, Rabu, Kamis, atau
Jumat - 5
2 Selasa dan Kamis 4 sks
1 pagi; 08:00-09:40 6
2 Selasa dan Kamis 4 sks
2 siang; 09:40-13:00 7
2 Selasa dan Kamis 4 sks
3 sore; 13:00-15:30 Langkah pengelompokkan mata kuliah dapat dituliskan sebagai berikut:
a. Mata kuliah yang telah terurut secara menaik dikelompokkan berdasarkan
numdays, days, dan timeofdays. b.
Jika mata kuliah memiliki kredit dua sks maka mata kuliah dijadwalkan pada hari senin atau rabu atau jumat.
Universitas Sumatera Utara
c. Jika mata kuliah memiliki kredit tiga sks maka mata kuliah dijadwalkan
pada hari senin atau selasa atau rabu atau kamis atau jumat. d.
Jika mata kuliah memiliki kredit empat sks maka mata kuliah dijadwalkan pada hari selasa dan kamis.
e. Jika masih ada mata kuliah yang belum dikelompokkan kembali ke
langkah 2 sampai semua mata kuliah berhasil ditempatkan.
Flowchart pengelompokkan mata kuliah ke dalam grup dapat digambarkan ke dalam Gambar 3.3.
Gambar 3.3 Flowchart Pengelompokkan Grup
Universitas Sumatera Utara
3.2.3.3 Membuat Mata Kuliah Konflik
Untuk memudahkan dalam membuat mata kuliah konflik, maka mata kuliah direpresentasikan dalam graph, dimana mata kuliah direpresentasikan sebagai vertex
dan edge merepresentasikan mata kuliah yang konflik. Sedangkan untuk mencari mata kuliah mana saja yang konflik maka digunakan algoritma greedy.
Algoritma greedy melakukan pencarian mata kuliah konflik dalam ruangan dan pada hari serta waktu yang sama. Untuk menandai mata kuliah yang konflik maka
dilakukan metode graph coloring heuristic. Langkah-langkahnya dapat dituliskan sebagai berikut:
1. Vertex mata kuliah yang telah dikelompokkan ditempatkan ke dalam
ruangan yang tersedia sesuai dengan kelompoknya. 2.
Pengecekan vertex mata kuliah satu persatu pada ruangan dan waktu. 3.
Jika mata kuliah semester satu dengan kode mata kuliah agama UNI101, UNI102, UNI103, UNI104, dan UNI105 maka mata kuliah semester satu
dianggap konflik. 4.
Simpan vertex mata kuliah lain ke dalam tempat penyimpanan mata kuliah konflik.
5. Tidak ada perkuliahan pada jam 11:20 s.d. jam 13:00.
6. Simpan vertex mata kuliah lain ke dalam tempat penyimpanan mata
kuliah konflik. 7.
Jika mata kuliah tingkat satu dengan mata kuliah tingkat dua, maka bandingkan fakultas. Jika fakultas sama maka mata kuliah tersebut
bentrok. 8.
Jika mata kuliah tingkat dua dengan mata kuliah tingkat tiga, maka bandingkan fakultas. Jika fakultas sama maka mata kuliah tersebut
bentrok. 9.
Jika mata kuliah tingkat tiga dengan mata kuliah tingkat empat, maka bandingan fakultas. Jika fakultas sama maka mata kuliah tersebut bentrok.
10. Jika mata kuliah wajib dengan mata kuliah kosentrasi pada semester yang
sama, maka mata kuliah wajib atau mata kuliah kosentrasi itu konflik.
Universitas Sumatera Utara
11. Simpan vertex mata kuliah lain ke dalam tempat penyimpanan mata
kuliah konflik. 12.
Jika mata kuliah yang memiliki empat digit awal kode mata kuliah yang sama, misalnya kode mata kuliah BIO300 dengan kode mata kuliah
BIO304. Tiga huruf pertama pada kode mata kuliah menandakan bahwa mata kuliah itu merupakan mata kuliah departemenprogram studi Biologi
dan satu angka setelah huruf menandakan bahwa mata kuliah tersebut merupakan mata kuliah semester tiga.
13. Simpan vertex mata kuliah lain ke dalam tempat penyimpanan mata
kuliah konflik. 14.
Lakukan pewarnaan pada mata vertex mata kuliah konflik yang belum diwarnai.
15. Hapus mata kuliah konflik dari daftar mata kuliah.
16. Jika masih ada vertex mata kuliah lain yang belum dilakukan pengecekan
konflik, ulangi dari langkah ke-1.
Universitas Sumatera Utara
Gambar 3.4 menunjukkan flowchart pembuatan dan pengecekan vertex mata kuliah konflik serta graph coloring heuristic pada vertex mata kuliah konflik.
Mulai Data Mata
Kuliah Pengecekan
Berdasarkan Ruang dan Waktu
Jika ada MK Agama Bertemu dengan MK
semester 1
Data mk konflik
Penghapusan data mata kuliah konflik
dr daftar mk Beri Warna pada
Mata Kuliah Konflik yang belum diwarnai
Ya Ya
Ya Jika Jumat
jam11.20- 13.00
Jika MK Konsentrasi dengan MK Wajib
Tidak
Tidak
Simpan MK Konflik
Ya Jika MK empat digit
pertama kode MK dan fakultas sama
Tidak
Masih ada MK lain?
Selesai Tidak
Tidak Jika MK tingkat
1 dengan MK tingkat 2
Ya
Jika MK tingkat 2 dengan MK
tingkat 3 Ya
Jika MK tingkat 3 dengan MK
tingkat 4 Tidak
Tidak
Tidak Ya
Pemberian Warna Khusus Bentrok
Jumat jam 12-14
Ya
Gambar 3.4 Flowchart Pembuatan dan Pengecekan Vertex Mata Kuliah Konflik
serta Pewarnaan Vertex Mata Kuliah Konflik
Universitas Sumatera Utara
3.2.3.4 Menyusun Mata Kuliah Bebas Konflik
Mata kuliah yang konflik dikumpulkan dalam suatu tempat penyimpanan untuk dicarikan waktu dan ruangan yang kosong sehingga bebas konflik. Mata kuliah
konflik yang ditempatkan dalam tempat penyimpanan dikeluarkan satu persatu secara FIFO first in first out.
Langkah-langkah dalam menyusun mata kuliah bebas konflik dapat dituliskan sebagai berikut:
1. Pengecekan ruangan yang kosong dimulai dari hari senin apabila ada
ruangan kosong pada hari senin. 2.
Pengecekan sks mata kuliah konflik dengan sks ruangan. 3.
Jika sks mata kuliah lebih kecil atau sama besar dengan sks ruangan, maka dilakukan proses pengecekan.
4. Jika mata kuliah memiliki empat digit awal kode mata kuliah dan fakultas
yang sama, lanjut ke langkah-6. 5.
Jika tidak dilakukan proses penempatan mata kuliah. 6.
Jika mata kuliah wajib dengan mata kuliah kosentrasipenjurusan, lanjut ke langkah-8.
7. Jika tidak dilakukan proses penempatan mata kuliah.
8. Jika masih ada mata kuliah konflik tersimpan, ulangi langkah ke-2.
9. Jika tidak maka selesai.
Universitas Sumatera Utara
Gambar 3.5 Menunjukkan Flowchart Penyusunan Mata Kuliah Bebas Konflik.
Mulai
Pencarian ruang dan waktu yang
kosong
Sks Ruang = Sks MK
Data Mata Kuliah yang
Bentrok
Pengecekan
Jika MK empat digit pertama kode MK dan
Fakultas sama Penempatan Mata
Kuliah Tidak
Ya
Tidak
Jika MK Konsentrasi dengan MK Wajib
Ya
Masih ada MK konflik?
Ya Tidak
Selesai TIdak
Ya
Gambar 3.5 Flowchart Penyusunan Mata Kuliah Bebas Konflik
Universitas Sumatera Utara
3.3 Perancangan Antarmuka Interface