Anda di halaman 1dari 14

P2I

NASKAH PUBLIKASI PENELITIAN PENGEMBANGAN IPTEKS

PENJADWALAN MATAKULIAH MENGGUNAKAN METODE CONSTRAINT SATISFACTION


Oleh: Dwi Anggraini P.R., S.Kom

Dibiayai oleh Anggaran Dana Pembinaan Pendidikan (DPP) Universitas Muhammadiyah Malang berdasarkan SK Pembantu Rektor I Nomor: E.6.1/174/UMM/II/2007

FAKULTAS TEKNIK / JURUSAN TEKNIK INFORMATIKA UNIVERSITAS MUHAMMADIYAH MALANG Juni, 2007

HALAMAN PENGESAHAN NASKAH PUBLIKASI PENELITIAN PENGEMBANGAN IPTEKS


1. Judul Penelitian 2. 3. : Penjadwalan Matakuliah Menggunakan Metode Constraint Satisfaction Bidang ilmu penelitian : Rekayasa Ketua Peneliti a. Nama Lengkap : Dwi Anggraini Puspita Rahayu,S.Kom b. Jenis Kelamin :P c. NIP : 108.0602.0432 d. Pangkat/Golongan : Penata Muda/IIIA e. Jabatan :f. Fakultas/Jurusan : Teknik / Teknik Informatika Jumlah Tim Peneliti : 1 orang Lokasi Penelitian : Laboratorium Teknik Informatika UMM Bila penelitian ini merupakan kerjasama kelembagaan a. Nama Instansi :b. Alamat :Waktu penelitian : 4 bulan Biaya : Rp 2.000.000 (Dua Juta Rupiah)

4. 5. 6. 7. 8.

Mengetahui, Dekan Fakultas Teknik

Malang, 14 Juni 2005 Ketua Peneliti,

Ir.Sunarto, MT NIP 131.885.458

Dwi Anggraini P.R., S.Kom NIP 108.0602.0432 Menyetujui, Ketua Lembaga Penelitian,

Dr. Ir. Wahyu Widodo, MS NIP 108.9090.128

PENJADWALAN MATAKULIAH MENGGUNAKAN METODE CONSTRAINT SATISFACTION


Dwi Anggraini Puspita Rahayu
Email: dwi_if@umm.ac.id

Abstrak Otomatisasi penjadwalan merupakan satu persoalan yang telah diteliti sejak lama dalam ilmu komputer. Berbagai algoritma dan metode telah diteliti dan dikembangkan oleh pakar untuk memecahkan permasalahan otomatisasi penjadwalan tersebut. Salah satu algoritma yang dikembangan dan cukup hangat dibicarakan adalah metode constraint satisfaction. Algoritma ini patut dipertimbangkan karena memiliki beberapa keunggulan dibandingkan dengan algoritma lainnya, antara lain outputnya singkat, programnya sederhana, dan sangat mungkin untuk bereksperimen mendapatkan penyelesaian dengan program terbaik(efisien) dan waktu komputasi tercepat Pada penelitian ini penulis membuat suatu penjadwalan matakuliah dengan menggunakan metode constraint satisfaction. Secara spesifik, penelitian kali ini difokuskan pada pembuatan algoritma pembentukan constraint satisfaction problem dan perumusan algoritma pencarian solusi. Penelitian ini telah memberikan rumusan pemecahan masalah constraint satisfaction problem yang nantinya dapat dilanjutkan dengan implementasi pada perangkat lunak. Kata Kunci : Constraint Satisfaction, Penjadwalan Akademik, Penjadwalan.

Abstract Scheduling automation is a problem that has long been researched in computer science world. Many algorithms and methods have been discovered and developed by the scientists in order to solve scheduling automation problems. One of developed algorithms that is being discussed is constraint satisfaction method. We have to consider this algorithm, since it has much superiority. Its output is short, its program is simple, and there are many

Dosen Tetap Jurusan Teknik Informatika Universitas Muhammadiyah Malang

possibilities to make experiments getting the most efficient and fastest computation time solver. Through this research, the writer made a course timetabling using constraint satisfaction method. Specifically, this paper is focused on making constraint satisfaction problem and giving solver algorithm of this constraint satisfaction problem. This research has given constraint satisfaction problem solver

formulations. Later, these formulations can be continued on software implementation. Key Word : Constraint Satisfaction, Academic Timetabling, Schedulling.

I. PENDAHULUAN Otomatisasi penjadwalan merupakan satu persoalan yang telah diteliti sejak lama dalam ilmu komputer. Suatu permasalahan penjadwalan akan muncul dalam situasi dimana satu kumpulan aktivitas harus diproses pada jumlah sumber daya (resources) yang terbatas dan dalam waktu yang terbatas[Bartak,2003]. Permasalahan penjadwalan ini bisa muncul di segala bidang, semisal pergudangan, agen perjalanan, trasportasi, dan juga di bidang

akademik[Mairiza,2005]. Salah satu permasalahan penjadwalan yang pasti dihadapi oleh suatu institusi akademik adalah pembuatan jadwal belajar-mengajar dan ujian. Berbagai algoritma dan metode telah diteliti dan dikembangkan oleh pakar untuk memecahkan permasalahan otomatisasi penjadwalan tersebut. Salah satu algoritma yang dikembangan dan cukup hangat dibicarakan adalah metode constraint satisfaction. Dalam metode constraint satisfaction, suatu permasalahan dimodelkan menjadi satu constraint satisfaction problem yang terdiri dari

himpunan variables, domains(himpunan terbatas dari nilai yang mungkin untuk setiap variables), dan himpunan constraints (himpunan membatasi nilai yang mungkin untuk setiap variables)[Bartak,2004]. Kemudian dari problem tersebut diberikan suatu algoritma pencarian solusi yang tepat sehingga didapat solusi dari problem yang ada. Algoritma ini patut dipertimbangkan karena memiliki beberapa

keunggulan dibandingkan dengan algoritma lainnya, antara lain outputnya singkat, programnya sederhana, dan sangat mungkin untuk bereksperimen mendapatkan penyelesaian dengan program terbaik(efisien) dan waktu komputasi tercepat[Mairiza,2005]. Menilik pada kemampuan metode constraint satisfaction dalam

memecahkan permasalahan penjadwalan, maka pada penelitian ini penulis membuat suatu penjadwalan mata kuliah dengan menggunakan metode tersebut dengan tujuan penelitian ini akan berguna untuk mengotomatisasi dan menyederhanakan proses pembuatan jadwal mata kuliah khususnya di jurusan teknik informatika. Pembuatan rumusan penjadwalan mata kuliah dengan metode constraint satisfaction menjadi pokok permasalahan dalam penelitian kali ini. Secara spesifik, penelitian kali ini difokuskan pada pembuatan algoritma pembentukan constraint satisfaction problem dan perumusan algoritma pencarian solusi. Ke depannya, penelitian ini dapat dilanjutkan dengan pengembangan perangkat lunak penjadwalan menggunakan rumusan algoritma hasil penelitian kali ini.

II. METODE PENELITIAN Pendekatan yang digunakan dalam penelitian ini adalah pendekatan eksperimental. Langkah pertama yang dilakukan adalah mengumpulkan literature baik dari internet, yang berupa artikel dan jurnal ilmiah tentang metode constraint satisfaction dan implementasinya pada proses penjadwalan, maupun dari buku teks. Kemudian dilanjutkan dengan mengumpulkan data-data yang terlibat dalam penyusunan penjadwalan antara lain jumlah mata kuliah, jumlah ruangan, jumlah jam pelajaran, dan aturan penjadwalan lainnya. Pengumpulan data-data tersebut dilakukan di jurusan Teknik Informatika Universitas Muhammadiyah Malang. Langkah yang ketiga adalah membentuk suatu constraint satisfaction problem. Dimulai dengan menentukan variables, kemudian menentukan domains, dan selanjutnya menentukan constaint atau batasan-batasan nilai dari variabelvariabel yang ada sesuai dengan permasalahan penjadwalan mata kuliah. Setelah terbentuk satu constraint satisfaction problem langkah selanjutnya adalah mencari solusi yang tepat untuk permasalahan tersebut. Untuk itu dilakukan pembuatan algoritma domain filtering dan searching. Proses pencarian(enumeration) dikombinasikan dengan constraint propagation yang akan mereduksi domain yang tidak termasuk dalam himpunan hasil yang mungkin secara berulang sampai didapat satu nilai akhir yang paling tepat. III. HASIL DAN PEMBAHASAN III.1. Deskripsi dan Analisa Data Jurusan Teknik Informatika memiliki jumlah mahasiswa yang cukup besar yaitu sebanyak xxx mahasiswa aktif yang terdiri dari dua angkatan 2005 dan

2006. Prinsip pembagian kelas yang digunakan di teknik Informatika mengikuti pembagian kelas besar yaitu lebih kurang 60 mahasiswa per kelas. Sehingga terdapat 4 kelas angkatan 2005 dan 6 kelas angkatan 2006. Jumlah mahasiswa dan kelas ini tentunya akan terus berkembang, terlebih jurusan Teknik Informatika merupakan salah satu program studi kuliah favorit saat ini. Hal ini dapat dilihat dari data calon mahasiswa yang mendaftar pada sekretariat PMB. Jumlah mahasiswa yang cukup besar ini masih belum sebanding dengan umlah dosen di jurusan Teknik Informatika masih terbatas yaitu 23 pengajar, yang terdiri dari 5 dosen tetap, 4 dosen luar biasa, dan 14 dosen lintas jurusan. Jumlah ruangan yang dapat digunakan untuk proses perkuliahan adalah 9 ruangan. Meliputi 6 ruang kelas biasa, kelas tanpa LCD proyektor dengan kapasitas maksimum 60 mahasiswa, 2 kelas multimedia, dilengkapi dengan komputer dosen dan LCD yang sejatinya adalah ruangan lab yang belum digunakan, dan 2 ruang lab komputer dengan kapasitas masing masing ruangan 25 komputer dilengkapi dengan komputer dosen dan LCD proyektor. Jam kuliah yang diberlakukan di Universitas Muhammadiyah Malang dimulai pada pukul 07.00 dan berakhir pada pukul 20.55 yang dibagi menjadi 14 jam sks. Setiap jam sks berlangsung selama 50 menit. Karena jumlah pertemuan di Teknik Informatika belum terlalu banyak, maka digunakan jam ke-1 sampai dengan jam 10 setiap harinya. Semua matakuliah pada jurusan Teknik Informatika memiliki sks kelipatan genap dengan tujuan meminimalisir ketidakefektifan proses belajar mengajar yang membutuhkan waktu 3 sks. Pada semester genap tahun ajaran

2006/2007, ketika penelitian ini dilaksanakan terdapat 15 matakuliah yang ditawarkan, dan jumlah pertemuan secara keseluruhan adalah 126 pertemuan. Tabel 3.1 berikut berisi rincian matakuliah beserta pengajarnya pada semester genap 2006/2007,
No 1. Tabel 3.1. Rincian matkuliah semester genap 2006/2007 Mata Kuliah Kelas Pengajar Mata Kuliah 2 jam sks 56 Aljabar Linier dan Matriks IIA Drs. Budi Priyanto, MSi IIB Drs. Budi Priyanto, MSi IIC Drs. Budi Priyanto, MSi IID Ir. Nur Alif, MT IIE Ir. Nur Alif, MT IIF Ir. Nur Alif, MT Matematika Diskrit IIA Ir. Ermanu A.H., MT IIB Ir. Ermanu A.H., MT IIC Drs. Setiadi CP,MT IID Drs. Setiadi CP,MT IIE Ir. Ermanu A.H., MT IIF Ir. Ermanu A.H., MT PPKn IIA Drs. H. Madari IIB Drs. H. Madari IIC Drs. H. Madari IID Drs. H. Madari IIE Drs. Gigit M, M.Si IIF Drs. Gigit M, M.Si Org. & Arkom IIA Ir. M. Irfan MT IIB Ir. M. Irfan MT IIC Hani N, S.Si, MT IID Hani N, S.Si, MT IIE Hani N, S.Si, MT IIF Hani N, S.Si, MT Komunikasi Efektif IIA Drs. Nasrullah, M.Si IIB Drs. Nasrullah, M.Si IIC Drs. Nasrullah, M.Si IID Drs. Nasrullah, M.Si IIE Drs. Nasrullah, M.Si IIF Drs. Nasrullah, M.Si Pemrograman Fungsional IIA Mahmud Efendy,ST IIB Mahmud Efendy,ST IIC Mahmud Efendy,ST IID Zulfatman, ST IIE Zulfatman, ST IIF Zulfatman, ST

AIK

Pengantar Topologi

Sistem Informasi

10

Metode Penelitian Mata kuliah 4 jam sks Desain Aplikasi Multimedia

Mata Kuliah 6 jam sks Pemrograman Objek

Sistem Operasi

Jaringan & Komdat

Mata kuliah 8 jam sks Bahasa Inggris Teknik II

IIA IIB IIC IID IIE IIF IVA IVB IVC IVD IVA IVB IVC IVD VIA VIB 4 IVA IVB IVC IVD 14 IIA IIB IIC IID IIE IIF IVA IVB IVC IVD IVA IVB IVC IVD 6 IIA IIB IIC IID IIE IIF

Tim AIK Tim AIK Tim AIK Tim AIK Tim AIK Tim AIK Yeni TA, S.Pd,M.Pd Yeni TA, S.Pd,M.Pd Yeni TA, S.Pd,M.Pd Yeni TA, S.Pd,M.Pd Ir. Lailis Syafaah,MT Ir. Lailis Syafaah,MT Ir. Lailis Syafaah,MT Ir. Lailis Syafaah,MT Ir. Diding S.,MT Ir. Diding S.,MT Hariyadi,S.Kom Hariyadi,S.Kom Hariyadi,S.Kom Hariyadi,S.Kom Gita I.M., ST Gita I.M., ST Mira C.K.,ST Mira C.K.,ST Eko B.C., S.Kom Eko B.C., S.Kom Dwi A.P.R.,S.Kom Dwi A.P.R.,S.Kom Laila S.,ST Laila S.,ST Dadang, ST Dadang, ST Yuda M.,S.kom Yuda M.,S.kom LC LC LC LC LC LC

III.2. Constraint Satisfaction Problem Penjadwalan Matakuliah Constraint satisfaction problem (CSP) terdiri dari 3 elemen yaitu himpunan variabel, himpunan domain dan himpunan constraint. Pada

permasalahan penjadwalan matakuliah ini dapat dipetakan bahwa = {V,D,C} V = {pertemuan setiap mata kuliah} D = {ruangan dan slot waktu yang dapat digunakan untuk pertemuan} C = {batasan ruangan dan watu yang dapat digunakan untuk setiap pertemuan} Variabel dari CSP penjadwalan matakuliah adalah himpunan pertemuan perkuliahan yang dapat diacu kembali pada subbab sebelumnya dan tabel x.x. Jumlah mata kuliah yang ditawarkan sebanyak 15 maka q = 15. Setiap pertemuan matakuliah terdiri dari 2 jam sks, sehingga bila matakuliah tersebut memiliki jumlah sks 4 maka dalam satu minggu terdapat 2 kali pertemuan, demikian pulan untuk kelipatan selanjutnya. Matakuliah yang memiliki sks 4 atau 6 merupakan gabungan antar perkuliahan (4 sks atau 2 sks) dan praktikum 2 sks. Mata kuliah ini membutuhkan satu kali pertemuan di ruang lab. Domain dari CSP penjadwalan matakuliah adalah himpunan ruangan dan slot waktu yang tersedia. Ruangan yang tersedia adalah 6 ruang kelas, 2 ruang multimedia, dan 1 gabungan laboratorium komputer sehingga jumlah ruangan keseluruhan adalah 9. Maka l = {0,1,...,8}. Seperti telah dijelaskan sebelumnya bahwa pada pemodelan kali ini digunakan jam ke-1 sampai dengan jam ke-10. Kecuali pada hari Jumat, digunakan jam ke-1 sampai ke-4 kemudian dilanjutkan jam ke-7 sampai ke-10.

Setiap pertemuan membutuhkan 2 jam sks maka secara grafis dapat digambarkan pada tabel 3.2.
Tabel 3.2. Pembagian slot waktu pertemuan.

Jam ke-

10

7.00-8.40 Senin Selasa Rabu Kamis Jumat 0 5 10 15 20

8.40-10.20 10.20-12.00 13.00-14.40 15.15-16.55 1 6 11 16 21 2 7 12 17 3 8 13 18 22 4 9 14 19 23

Dari tabel di atas dapat diambil kesimpulan bahwa dalam satu minggu terdapat 23 slot waktu yang dapat digunakan untuk maka p = {0,1,...,23}. Constraint dari CSP penjadwalan matakuliah dapat dikategorikan menjadi dua yaitu hard constraint dan soft constraint. Hard constraint adalah batasan yang harus dipenuhi dalam pembuatan pemecah masalah (Solver). Hard constrain pada CSP ini meliputi : Kelas-kelas yang diajar oleh dosen yang sama tidak boleh overlap Kelas-kelas yang memiliki mahasiswa yang sama tidak boleh overlap Menentukan waktu yang diperbolehkan dan tidak diperbolehkan untuk setiap pertemuan. Memenuhi kebutuhan pertemuan dengan spesifikasi khusus, misal pertemuan yang membutuhkan laboratorium komputer

Sedangkan soft constraint adalah batasan tambahan, biasanya mewadahi permintaan pribadi (personal request). Soft constraint pada CSP ini adalah: Permintaan dosen akan hari, jam atau bagian hari mengajar yang diinginkan. Batasan ini diutamakan bagi dosen-dosen lintas jurusan yang memiliki jadwal mengajar pada lebih dari satu jurusan.

III.3. Algoritma Solver Pemecahan permasalahan yang harus dilakukan pertama adalah

memastikan bahwa setiap kelas memiliki waktu spesifik dan tidak boleh saling overlapping. Secara general permasalahan penjadwalan matakuliah dapat didefinisikan : Terdapat q matakuliah K1,K2,...,Kq dan untuk setiap i, mata kuliah Ki terdiri dari ki pertemuan. Terdapat r jumlah kelas S1,S2,...,Sr, yang merupakan sekumpulan matakuliah yang memiliki mahasiswa yang sama. Hal ini berarti mata kuliah pada Sl harus dijadwalkan pada waktu yang berbeda. Jumlah slot waktu adalah p, dan lk adalah jumlah pertemuan yang bisa dijadwalkan pada periode k (yaitu jumlah ruang yang tersedia pada periode k). Maka formulanya adalah : yik ( i = 1,q; k = 1,p), sehingga :

Setiap pertemuan terdiri dari sejumlah tertentu pertemuan.

Untuk setiap periode k, jumlah pertemuan harus lebih sedikit dari jumlah ruangan.

Setiap pertemuan pada setiap periode k tidak boleh saling konflik

i = 1,q k = 1,p yik {0,1}

Dimana yik = 1 jika pertemuan

dari matakuliah Ki dijadwalkan pada periode k dan yik = 0 jika sebaliknya. Pemecahan permasalahan yang kedua adalah memberi penanda (flag) pada jam dan ruang kuliah yang dibutuhkan oleh kelas khusus (preassignment). i = 1,q k = 1,p pik < yik aik dimana pik = 0 jika tidak ada preassignment, and pik = 1 jika pertemuan dari mata kuliah Ki dijadwalkan pada periode k; aik = 0 jika pertemuan dari mata kuliah Ki tidak dapat dijadwalkan pada periode k, aik = jika pertemuan dari mata kuliah Ki tidak dapat dijadwalkan pada periode k k. Penjadwalan matakuliah juga mempertimbangkan permintaan dosen akan periode tertentu dangan fungsi : f(y) = {dikyik | i = 1,q; k = 1,p}

dimana dik adalah keinginan untuk melakukan pertemuan dari matakuliah Ki pada periode k. IV. KESIMPULAN DAN SARAN Setelah melakukan evaluasi pada tugas akhir ini maka dapat diambil kesimpulan bahwa algoritma constraint satisfaction dapat diimplementasikan pada permasalahan penjadwalan akademik, yang merupakan salah satu jenis penjadwalan statis (tidak real time). Sebagai saran untuk melakukan pengembangan penelitian ini, masih diperlukan adanya pembangunan perangkat lunak penjadwalan matakuliah dengan

algoritma constraint satisfaction, sehingga hasil nyata pada rumusan yang telah dibuat dapat ditampilkan dan dipergunakan. DAFTAR PUSTAKA Bartak, Roman Charles University in Prague, Constraint-Based Scheduling: An Introduction for Newcomers, http://kti.mff.cuni.cz/~bartak/, 2003

Bartak, Roman Charles University in Prague, Constraint Satisfaction for Planning and Scheduling, http://kti.mff.cuni.cz/~bartak/, 2004

Hattori Hiromitsu dan Takayuki Ito, A Quick Adaptation Method for Constraint Satisfaction in a Real-time Environment,2006

Mairiza, Dewi - Fasilkom Universitas Indonesia, Constraint Programming: Suatu Pendekatan dalam Declarative Programming, 2005

Moore, Andrew W.- Carnegie Melon University, Constraint Satisfaction and Scheduling, 2005

Mller, Tom - Faculty of Mathematics and Physics Charles University in Prague, Constraint-based Timetabling a Ph.D. Thesis, Prague : 2005

Wiki Pedia, Constraint Satisfaction, http://en.wikipedia.org/wiki/ Constraint_satisfaction.htm, 2005.

Anda mungkin juga menyukai