26 Agustus 2009

Logika Penjadwalan Kuliah

Dari tahun ke tahun -- setiap awal semester -- sering timbul permasalahan penjadwalan kuliah; yaitu waktu kuliah bentrok sehingga menyulitkan para mahasiswa yang mesti/ingin mengulang kuliah dan juga para mahasiswa yang ingin "menyodok" kuliah tingkat atas. Berikut merupakan sebuah draft usulan untuk mengatasi permasalahan tersebut. Silakan memberikan tanggapan, terutama jika anda pernah mengalami hal ini, dan memiliki solusi alternatif.

Usulan ini berdasarkan beberapa asumsi. Asumsi pertama ialah, bahwa ini merupakan penjadwalan S1 (total 8 semester), dengan beban reguler hingga 20 SKS per semester. Jika ada 5 hari kuliah per minggu, rata-rata beban setiap hari menjadi empat SKS. Asumsi kedua ialah, setiap hari ada sekurangnya 8 slot kuliah @ satu jam, yaitu pagi (08:00-12:00) dan sore (13:00-17:00). Asumsi ketiga ialah, dosennya pada penuh waktu sehingga seharusnya tidak ada alasan "bentrok dengan jadwal lain". Karena asumsi ketiga ini, asumsi berikutnya ialah bahwa para birokrat (dekan, kajur, sekretaris, sunat, dst.) tidak termasuk dosen penuh-waktu, dong! Lalu, pembahasan ini tidak termasuk jadwal ekstra kurikuler, responsi, dan asistensi.

Kuliah tingkat 1 dan tingkat 3 untuk selanjutnya disebut kuliah grup A. Sedangkan kuliah tingkat 2 dan tingkat 4 untuk selanjutnya disebut kuliah grup B. Berdasarkan asumsi di atas, berikut usulan penjadwalannya:

Kuliah dalam grup harus paralel, sedangkan kuliah antar grup harus serial. Umpamanya:
  • Senin Pagi: Grup A -- Senin Sore Grup B
  • Selasa Pagi: Grup B -- Selasa Sore Grup A
  • Rabu Pagi: Grup A -- Rabu Sore Grup B
  • Kamis Pagi: Grup B -- Kamis Sore Grup A
  • Jumat Pagi: Grup A -- Jumat Sore Grup B
Dengan demikian, kesempatan "mengulang" serta "menyodok" satu tingkat terbuka lebar sebab jadwal kuliah grup A dan grup B tidak pernah dibuat bentrok.

Masalah yang belum terselesaikan ialah penyelenggaraan mata kuliah pilihan. Untuk itu, diusulkan dua solusi pemecahan yang sama-sama "kurang enak".

Solusi pertama ialah menyelenggarakan kuliah pilihan yang tidak mengikuti kaidah grup A/B. Sayangnya, jadwal kuliah pilihan yang bentrok justru biasanya merupakan masalah penjadwalan yang serius.

Solusi kedua ialah dengan memperbanyak jumlah kuliah menjadi 10 slot per hari:
  • pagi (07:00-12:00)
  • sore (13:00-18:00)
Solusi ini menimbulkan beberapa masalah administratip seperti lembur karyawan, listrik penerangan, terutama bagi universitas yang sebelumnya beroperasi lebih pendek dari pada jadwal tersebut. Memang serba sulit jadinya.

Tentu saja, masih ada solusi "tradisional" yang hingga kini masih sering digunakan. Salahkan saja mengapa ada mahasiswa "yang kurang" sehingga harus mengulang, dan jangan lupa menyalahkan mahasiswa "yang terlalu pintar" sehingga menyodok segala.

God Bless Ahmad Albar, AKA Ucok Harahap.
Genesis Phil Collins, Lucifer's House For Sale.


DISCLAIMER


This is HOW Me Do IT! Grrr... this blog memo is mainly written for OWN PURPOSES. This post is based on "Google There, Google Here, Try That, Try This, Then Ask". Whether this is PLAGIARY or RESEARCH, there has never been a claim that this is an original work, nor is it necessarily the best solution, and not for Scopus consumption :). Please provide feedback, especially if you have alternative explanations. Hopefully, this note will be helpful in the future when you have forgotten how to solve this trivia problem.


DISKLAIMER


INIlah yang KUlakukan! Grrr... memo blog ini terutama ditulis untuk KEPERLUAN SENDIRI. Tulisan ini berbasis "Google Sana, Google Sini, Coba Itu, Coba Ini, Lalu Tanya-tanyi". Entah ini PLAGIAT, entah ini RISET, yang jelas tidak pernah ada klaim bahwa ini merupakan karya asli, serta belum tentu pula merupakan solusi terbaik, serta bukan untuk konsumsi Scopus :). Mohon kiranya memberikan tanggapan, terutama jika memiliki solusi alternatif. Semoga catatan ini akan bermanfaat di masa mendatang, saat sudah lupa cara menyelesaikan masalah trivia ini.

Qapla!

10 komentar:

  1. Atau juga masalah tak terduga misal seorang mahasiswa yang gak lulus mata kuliah 2x :D

    BalasHapus
  2. Saya kok cenderung menggunakan cara-cara yang agak nondeterministik ya, Pak...

    1. Kita survey dulu mahasiswa mau mengambil mata kuliah apa saja pada semester yang dipermasalahkan.

    2. Kita survey dosen bisa mengajar apa saja (mata kuliahnya) kapan saja (slot waktunya).

    3. Jadual kita acak sampai tidak ada yang bentrok; ini tentunya menggunakan bantuan komputer (dadu saja sepertinya tidak cukup).

    4. Setelah jadual terbentuk, jadual tidak boleh berubah.


    Bagaimana?

    BalasHapus
  3. Bung Erik:
    Apakah bisa memberikan contoh kasus, termasuk umpamanya nama jurusan, jumlah mahasiswa, jumlah dosen, jumlah mata kuliah, dst.
    Terimakasih,

    BalasHapus
  4. Untuk kuliah wajib dibuat skala prioritas
    1. Senioritas mahasiswa -> makin dekat ke garis putus studi, makin senior
    2. Mahasiswa dari angkatan yang memang jatahnya harus mengambil kuliah bersangkutan pada semester itu
    3. Mahasiswa pengulang
    4. Mahasiswa penyodok
    5. Mahasiswa pencuci -> kalau kelas sudah penuh, ditolak saja

    BalasHapus
  5. @Rimphy:
    1) Apa bedanya mahasiswa senior dan mahasiswa pengulang?
    2) Bagaimana hubungan antara prioritas dan kelas bentrok?

    BalasHapus
  6. Pengulang bisa jadi kemarin dia penyodok, namun sial pada kesempatan berikutnya harus mengulang. Makanya prioritasnya diatas penyodok(newbie), karena harapan lulus (seharusnya)lebih besar. Tapi mereka belum tentu terancam putus studi.

    Kalau yg saya perhatikan selama ini jadwal 'bentrok' karena ada mahasiswa yg memang berhak mengambil sks lebih banyak mengeluh ke fakultas karena tidak bisa nyodok kuliah pilihan ini-itu lantaran bentrok dengan yg wajib. Karena mahasiswa jenis ini makanya terkesan jadwal bentrok melulu.

    Untuk pencuci, prioritasnya paling kecil karena mereka mungkin sudah tidak ada kerjaan lagi, makanya sempat nyuci-nyuci.

    BalasHapus
  7. Bapak RMS:
    Sepertinya bisa, Pak.

    List 1 (courses):
    Setiap entri berupa (id, name, slots).

    Contoh:
    IKI10100;Matkul 1;3;
    IKI10200;Matkul 2;2,1;
    IKI10300;Matkul 3;3,1;
    IKI12345;Sering Banget Ketemu;1,1,1,1,1;

    Untuk _slots_, 2,1 berarti mata kuliah tersebut harus dipecah jadi 2 pertemuan; pertemuan pertama 2 sks, pertemuan kedua 1 sks.


    List 2 (lecturers):
    Setiap entri berupa (id, name, slots, abilities)
    _slots_ adalah daftar slot yang kosong (waktu yang bisa digunakan dosen untuk mengajar).
    _abilities_ adalah daftar matakuliah yang bisa (secara teknis) diajar oleh dosen ini.

    Contoh:
    111;Dosen 1;0,1,2,3,4,5,6,7;IKI10100,IKI10200
    artinya:
    Dosen 1 bisa mengajar pada hari Senin saja. Dosen 1 bisa mengajar IKI10100 dan/atau IKI10200.

    Setiap slot adalah 60 menit (untuk kemudahan perhitungan).
    Slot 0 berarti Senin 0800--0900.
    Slot 1 berarti Selasa 0900--1000.
    Slot 3 berarti Selasa 1100--1200.
    Slot 4 berarti Selasa 1300--1400 [sic] (1200--1300 waktu istirahat).
    Slot 39 berarti Jumat 1500--1600.


    List 3 (plans):
    Satu plan adalah satu IRS satu mahasiswa.
    Setiap entri berupa (id,name,demands).

    Hm... tulisan saya jadi seperti manpage begini Pak, tak enak dibaca...
    Kalau Bapak berkenan, saya bisa mengirimkan versi LaTeX-nya.

    BalasHapus
  8. Bung Erik:
    Maaf, maksud saya ialah, apakah anda dapat memberikan sebuah contoh dimana model anda sudah di implentasikan. Umpama, di Universitas Anu, Fakultas X, Jurusan Y.
    Kalau masih berbentuk ide, bagaimana kalau anda posting secara lengkap di blog anda, atau di scribd jika berbentuk PDF?

    PS:
    - jangan lupa, jadwal harus sudah tersedia SEBELUM mahasiswa mengisi IRS.

    BalasHapus
  9. Baik Pak, nanti kalau sudah ada kemajuan yang cukup berarti, saya post link-nya di sini.

    Terima kasih.

    BalasHapus