Penjadwalan Mata Kuliah Menggunakan Algoritma Genetika

Penjadwalan mata kuliah merupakan kegiatan yang sangat penting untuk proses belajar mengajar di Jurusan Sistem Informasi. Proses belajar mengajar dilaksanakan oleh seluruh mahasiswa dan dosen yang mengajar, sehingga jadwal mata kuliah yang disusun harus dapat memfasilitasi kepentingan dosen dan mahasiswanya.Apabila beberapa batasan yang ada dalam penjadwalan tidak diperhitungkan dengan baik, maka akan menyebabkan sulitnya untuk melakukan penjadwalan mata kuliah. Batasan-batasan tersebut, antara lain mata kuliah yang diselenggarakan, jumlah kelas yang tersedia, jumlah waktu yang ada, dan ketersediaan dosen yang mengajar. Masalah-masalah penjadwalan yang terjadi di Jurusan Sistem Informasi tersebut dapat diminimalkan dengan perhitungan penjadwalan yang tepat dan mempertimbangkan seluruh aspek yang berkaitan dengan kegiatan belajar mengajar di Jurusan Sistem Informasi.Permasalahan penjadwalan yang rumit di Jurusan Sistem Informasi menjadikan alasan untuk membuat sebuah sistem penjadwalan matakuliah yang terotomatisasi. Penjadwalan mata kuliah ini, dibuat dengan menggunakan algoritma genetika sebagai alat bantu untuk menyelesaikan masalah-masalah yang ada pada penjadwalan di jurusan. Penjadwalan yang dibuat disesuaikan dengan beberapa batasan yang ada di jurusan, seperti ketersediaan dosen, mahasiswa yang mengambil mata kuliah, serta ketersediaan waktu dan ruang kelas.

Penjadwalan mata kuliah
Dashboard Penjadwalan mata kuliah

Baca Juga

Masalah penjadwalan kuliah adalah salah satu kasus yang sulit jika dipecahkan dengan metode konvensional seperti exhaust attack, brutus algorithm, maupun teknik-teknik lain sejenis dalam penyelesaiannya, sehingga sering ketika penjadwalan waktu perkuliahan diselesaikan secara manual. Masalah dalam penjadwalan biasanya dikaitkan dengan konstrain-konstrain berikut :

  1. Satu mata kuliah bisa mempunyai beberapa kelas, misal kelas A, B, C.
  2. Seorang dosen bisa mengampu lebih dari satu mata kuliah di beberapa kelas.
  3. Gabungan konstrain 1 dan 2 akan bertemu dengan hari jam mengajar.
  4. Konstrain 3 akan bertemu dengan ruangan yang digunakan.

Penyelesaian masalah tersebut akan menjadi rumit dan membingunkan jika diselesaikan dengan cara konvensional maupun manual. Dengan cara konvensional akan membutukan waktu yang lama karena julah iterasi yang sangat tinggi. Cara manual akan membuat bingun dan perlu ketelitian yang tinggi. Karena ada hal-hal yang harus diperhatikan diantaranya :

  1. Satu ruangan hanya boleh digunakan oleh satu jadwal kuliah untuk 1 set jam kuliah, misal 3 SKS 1 mata kuliah di alokasikan jam 7.00 sampai 10.00 berarti untuk jam tersebut di sebuah ruang kuliah hanya boleh digunakan 1 mata kuliah pda satu kelas.
  2. Tidak sembarang jam kuliah bisa digunakan oleh dosen tersebut, misalnya hari senin jam 7.00 sampai 10.00 dosen pengampu sebuah mata kuliah tidak bisa hadir, hanya bisa dihari selain hari senin.
  3. Satu dosen tidak mungkin berada di sebuah jadwal untuk dua mata kuliah atau satu mata kuliah 2 kelas.

Untuk menyederhankan struktur kromosom dalam algoritma genetika, sebaiknya gen-gen pembentuk kromosom disusun sedemeikian rupa sebagai berikut :

  1. Setiap gen akan berisi komponen : dosen, jadwal. Misalnya (D,J) à D adalah dosen, J adalah jadwal.
  2. Subgen dosen terdiri dari : dosen, mata kuliah, kelas.
  3. Subgen jadwal terdiri dari komponen : hari, jam, ruangan. Setiap korelasi dosen dengan jadwal diberikan derajat kehadiran dengan skala 1 – 9. Derajat 1 berarti dosen tidak bisa hadir, derajat 9 berarti dosen bisa hadir dengan pasti pada jadwal tersebut.
  4. Nilai derajat kehadiran dari korelasi dosen-jadwal berkontribuasi pada nilai fitness kromosom. Misalnya jumlah gen dalam sebuah kromosom ada 10, maka nilai nilai fitness yang diinginkan adalah 9*10 = 90, hal ini berarti semua dosen bisa hadir dengan pasti pada setiap jadwal yang diberikan. Nilai fitness terendah adalah 9*1 = 9, yang artinya semua dosen tidak bisa hadir pada jadwal kuliah yang diberikan.

Berikut adalah hasil analisis data mentah untuk dimasukkan sebagai bahan implementasi dalam algoritma genetika. Penyelesaian dibawah ini mengambil sebuah kasus di sebuah universitas swasta tempat penulis bertugas dengan konstrain-konstrain dibawah ini (seperti kasus yang diceritakan diatas) :

  1. Satu dosen bisa mengajar sembarang mata kuliah sembarang kelas (A,B,C).
  2. Hari kuliah adalah senin sampai sabtu. Dengan jam kuliah mulai jam 7.00 sampai 16.00 (ada sedikit modifikasi pada jam kuliah).
  3. 1 SKS mata kuliah berdurasi 1 jam.
  4. Ruangan yang tersedia ada 4
  5. Satu dosen tidak boleh berada pada dua jadwal untuk waktu/jam yang sama.
  6. Tidak dikaitkan dengan pengambilan mata kuliah oleh mahasiswa yang biasanya bervariasi.
  7. Untuk sebuah jadwal kuliah, seorang dosen mungkin tidak bisa hadir sehingga untuk jadwal tersebut harus dihindari, diprioritaskan pada jadwal yang dosen tersebut bisa pasti hadir.

Download

Need Help? Chat with us