APLIKASI PENJADWALAN RUANG KULIAH DENGAN METODE INTEGER LINEAR PROGRAMMING PADA FTIF ITATS Anita T. Kurniawati1 dan Maskur Teknik Informatika–ITATS, Jl. Arief Rahman Hakim 100 Surabaya Email1:
[email protected]
ABSTRACT Increasing the number of students in the Faculty of Information Technology that is not offset by the addition of classrooms, resulting in problems in scheduling. Moreover, during university classroom scheduling is done manually, so it takes a long time and the allocation of university classroom that are less effective. To overcome these problems, the scheduling application systems will be designed by Integer Linear Programming method. System scheduling applications are made, by the programming language Borland Delphi 7 and MySQL databases. This results in a scheduling application system is value optimization with the percentage of the use of the classroom effectively and efficiently. While the accuracy of the program reaches 94.28% compared with the manual scheduling. Key words: Optimization, Integer Linear Programming, Room scheduling ABSTRAK Peningkatan jumlah mahasiswa di Fakultas Teknologi Informasi yang tidak diimbangi dengan penambahan ruang kuliah, mengakibatkan permasalahan pada penjadwalannya. Apalagi selama ini penjadwalan ruang kuliah dilakukan secara manual, sehingga membutuhkan waktu lama dan pengalokasian ruang kuliah yang kurang efektif. Untuk mengatasi permasalahan tersebut, akan dirancang sistem aplikasi penjadwalan dengan menggunakan metode Integer Linear Programming. Sistem aplikasi penjadwalan yang dibuat menggunakan bahasa pemrograman Borland Delphi 7 dan database MySQL. Sistem aplikasi penjadwalan ini menghasilkan nilai optimasi dengan tingkat persentase penggunaan ruang kuliah yang efektif dan efisien. Sedangkan tingkat akurasi dari program mencapai 94,28% dibandingan dengan penjadwalan secara manual. Kata kunci: Optimasi, Integer Linear Programming, Penjadwalan Ruang.
PENDAHULUAN Permasalahan penjadwalan ruang kuliah yang biasanya dikenal dengan University Classroom Scheduling Problem (UCSP) atau timetabling problem dapat menghambat kegiatan institusi terutama bidang akademik. Timetabling ini timbul diakibatkan keterbatasan ruangan dengan banyaknya mata kuliah yang harus diadakan dan jumlah mahasiswa yang tidak seimbang. Keterbatasan tersebut menjadi suatu masalah yang cukup rumit dalam penyediaan ruang kuliah. Salah satu solusi yang dapat mengurangi kesulitan tersebut adalah dengan melakukan penjadwalan secara optimal [1]. Penjadwalan adalah mengalokasikan sumber daya dari waktu ke waktu untuk melakukan sejumlah tugas. Sumber daya yang dimaksudkan adalah dosen, ruangan, mata kuliah, dan mahasiswa. Masalah mendasar dari penjadwalan ruang kuliah adalah menetapkan kegiatankegiatan universitas seperti perkuliahan terhadap berbagai sumber daya tersebut. Kegiatan perkuliahan membutuhkan ruangan untuk menunjang kegiatan setiap aktivitas akademik, seperti ruang kuliah. Pengolahan ruangan di kampus ITATS selama ini telah dikoordinasikan dengan baik oleh PUSKOM. Seiring dengan peningkatan jumlah mahasiswa dari tahun ke tahun, kebutuhan akan ruang kuliah pun semakin meningkat. Peningkatan kebutuhan ruang kuliah ini kemudian berimbas pada meningkatnya kompleksitas dalam pengalokasian ruang kuliah. Sehingga dibutuhkan analisis untuk mengetahui optimasi dalam penjadwalan ruangan.
59
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
Banyak penelitian untuk dapat menghasilkan sebuah model dan metode-metode optimasi agar masalah penjadwalan tersebut dapat menjadi optimal. Metode yang banyak digunakan adalah Genetic Algorithm, Simulated annealing, dan algoritma genetic hybrid [2]. Salah satu penelitian yang dilakukan Handayani adalah membuat model penjadwalan [3]. Untuk itu, pada makalah ini akan membuat sistem aplikasi penjadwalan ruang kuliah dengan menggunakan metode Integer Linear Programming (ILP) guna mendapatkan nilai optimal. Metode ILP ini dapat mengolah data dalam jumlah besar dan constraint yang cukup banyak [3]. Untuk membuat aplikasi ini, bahasa yang digunakan adalah bahasa pemrograman Borland Delphi 7 dan database MySQL.
TINJAUAN PUSTAKA University Classroom Scheduling Problem (UCSP) University Classroom Scheduling Problem (UCSP) merupakan masalah mengenai penjadwalan ruangan kelas di institusi pendidikan. UCSP timbul akibat keterbatasan ruangan yang dihadapkan dengan banyaknya mata kuliah yang harus diadakan dan jumlah murid yang tidak seimbang. Masalah mendasar dari penjadwalan ruang kelas adalah menetapkan kegiatan-kegiatan universitas seperti perkuliahan terhadap berbagai sumber daya terbatas [2]. Penjadwalan kegiatan terhadap sumber daya tersebut harus dilakukan dengan meminimalkan jumlah pelanggaran terhadap constraint tertentu. Constraint ini digolongkan menjadi 2, yaitu hard constraint (constraint yang wajib dipenuhi) dan soft constraint (constraint yang sebaiknya juga dipenuhi). Bentuk hard constraint adalah tidak adanya orang yang berada pada dua tempat atau waktu secara bersamaan [4]. Penjadwalan ruang kuliah merupakan proses pengaturan jadwal dengan memperhatikan dosen, ruang kelas, mata kuliah, dan waktu yang disesuaikan dengan sejumlah batasan tertentu. Komponen yang mempengaruhi penjadwalan ruang kuliah dapat dilihat pada Gambar 1.
Gambar 1. Komponen yang mempengaruhi penjadwalan ruang kuliah Integer Linear Programming (ILP) Linear Programming (LP) adalah suatu alat yang dapat digunakan untuk menyelesaikan masalah optimasi model linear dengan keterbatasan-keterbatasan sumber daya yang tersedia. Secara umum bentuk model LP dapat digambarkan sebagai berikut [5]:
60
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
Max atau Min z = c1x1 + c2x2 + c3x3 + …. + cnxn dengan batasan a11x1 + a12x2 + a13x3 + … + a1n xn ≤ b1 .................................... (1) a21x1 + a22x2 + a23x3 + … + a2n xn ≤ b2 .................................... (2) am1x1 + am2x2 + am3x3 + … + amn xn ≤ b1 ................................. (3) Untuk harga x1, x2, … , xn ≥ 0. Karena persoalan ini merupakan masalah alokasi, maka perumusan diatas dapat diinterpresentasikan sebagai berikut : a. Variabel keputusan (decision variables): x1, x2, …, xn adalah variabel yang nilai-nilainya dipilih untuk dibuat keputusan. b. Fungsi tujuan (objective function): z = f(x1, x2, …, xn) adalah fungsi yang akan mengoptimalkan (memaksimumkan atau meminimumkan). c. Pembatasan (constraints): gi(x1, x2,…,xn ) ≤ bi adalah pembatasan-pembatasan yang harus dipenuhi. Pada masalah LP penyelesaian optimalnya merupakan bilangan real yang bisa berupa bilangan pecahan. Pembulatan ke integer terdekat bisa menyebabkan nilai optimalnya menyimpang dari nilai yang diharapkan. Padahal permasalahan di kehidupan nyata sering kali memerlukan penyelesaian dengan variabel keputusan berupa integer. Dengan model penyelesaian berupa variabel integer diharapkan dapat memberikan penyelesaian yang optimal. Integer Linear Programming (ILP) atau Program Integer merupakan pengembangan dari LP. Program Integer (integer linear programming/ILP) pada intinya berkaitan dengan programprogram linier dimana beberapa atau semua variabel memiliki nilai-nilai integer (bulat) atau diskrit. Sebuah ILP dikatakan bersifat campuran atau murni bergantung pada apakah beberapa atau semua variabel tersebut dibatasi pada nilai-nilai integer. Jika hanya sebagian variabel keputusannya merupakan integer maka disebut integer programming campuran (mixed integer programming), sedangkan jika semua variabel keputusannya bernilai integer disebut integer programming murni (pure integer programming) [5]. Bentuk umum model Program Integer adalah: Max(min) Z = xcj xj . Kendala xaij xj(≤,=,≥)bi, (i = 1, 2, ...,m), xj ≥ 0, (j = 1, 2, ...,m), xj bernilai integer untuk beberapa atau semua j. Bentuk umum model Program Integer 0-1 adalah: Max(min) Z = xcj xj . Kendala xaijxj(_,=,_)bi, (i = 1, 2, ...,m), xj = 0 atau xj = 1, (j = 1, 2, ..., n). Metode Branch and Bound Metode Branch and Bound merupakan suatu prosedur sistematik untuk memperoleh solusi integer optimum terhadap pure integer programming. Prosedur tersebut kemudian diperluas untuk menangani kasus yang lebih sulit yaitu mixed integer programming. Metode Branch and Bound merupakan kode komputer standar untuk ILP [6]. Prosedur metode Branch and Bound adalah sebagai berikut [6]: 1. Selesaikan masalah LP dengan metode simpleks biasa tanpa pembatasan bilangan bulat. 2. Teliti solusi optimumnya. Jika variabel basis adalah integer, maka solusi integer optimum telah tercapai dan proses berhenti. Jika satu atau lebih variabel basis bukan integer, proses dilanjutkan ke langkah 3. 3. Buat variabel basis dengan nilai solusi pecahan, dengan mencabangkan ke dalam sub-sub masalah. Tujuannya adalah untuk menghilangkan solusi kontinu yang tidak memenuhi persyaratan bulat dalam masalah itu. Pencabangan itu dilakukan melalui kendala-kendala
61
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
mutually exclusive yang perlu untuk memenuhi persyaratan bulat dengan jaminan tidak ada solusi bulat layak yang tidak diikutsertakan. 4. Untuk setiap sub-masalah, nilai solusi optimum kontinu fungsi tujuan ditetapkan sebagai batas atas. Solusi bulat terbaik menjadi batas bawah (solusi kontinu yang dibulatkan ke bawah). Subsub masalah yang memiliki batas atas kurang dari batas bawah yang ada, tidak diikutsertakan pada analisis selanjutnya. Suatu solusi bulat layak dan sama baik atau lebih baik dari batas atas untuk setiap ke langkah 3.
METODE Metode penelitian ini adalah sebagai berikut: 1. Studi literatur Pada awal penelitian dilakukan studi literatur dari buku dan jurnal untuk menggali informasi terkait penjadwalan ruangan (time tabling) dan Integer Linear Programming serta bahasa pemrograman Borland Delphi 7 dan database MySQL. 2. Pengumpulan data (Observasi) Pada tahap kedua menghimpun informasi-informasi mengenai kebutuhan sistem, alur penjadwalan dan informasi-informasi lainnya dari para penyusun penjadwalan ruangan. Kebutuhan sistem ini dibagi 2, yaitu kebutuhan input dan kebutuhan output. Kebutuhan input sistem ini digolongkan menjadi 3, yaitu dari PUSKOM, Jurusan, dan Dosen. a. Input dari jurusan adalah data mata kuliah dan dosen pengajar sesuai dengan semester yang akan diajukan proses KRS mahasiswa. Pada kasus ini diambil data semester Gasal 2013/2014. b. Input dari PUSKOM diperoleh dari proses KRS mahasiswa yang biasanya dilakukan pada proses perwalian. Data yang akan digunakan adalah beban mengajar dosen. c. Input dari dosen adalah perubahan jadwal mengajar ataupun ruang kelas yang sudah dijadwalkan dari pihak jurusan ataupun ruang dosen dalam pembagian kelasnya. Sedangkan output sistem berupa sebuah analisis dari penjadwalan yang telah dihasilkan dari PUSKOM dan penggunaan ruang kuliah terhadap perubahan yang telah diajukan dari dosen pengajar. 3. Perancangan sistem dan implementasi Aplikasi dirancang sesuai dengan hasil observasi yang dilakukan. Aplikasi dibuat dengan menggunakan bahasa pemrograman Borland Delphi 7 dan database MySQL.
HASIL DAN PEMBAHASAN Sistem aplikasi dapat digambarkan dengan diagram konteks yang memodelkan masukan ke dalam sistem dan keluaran dari sistem. Pada aplikasi ini yang diberi akses untuk login adalah Admin dan Dosen. Admin melakukan login pada aplikasi, kemudian melakukan input data dosen, mata kuliah, beban mengajar dosen, jam mengajar, hari mengajar, dan jadwal mata kuliah. Dosen dapat login ke sistem dengan user dan password yang sudah diberikan oleh admin. Dosen hanya dapat melakukan perubahan jadwal kuliah (ruang maupun jam kuliah). Data yang sudah diinputkan akan diolah dalam proses optimasi jadwal ruang kuliah. Hasil dari optimasi akan dilaporkan dan dapat dilihat oleh Admin dan Dosen. Hal ini dapat dilihat pada Gambar 2.
62
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
Login Admin Validasi Login Admin Input Data Dosen
ADMIN
DOSEN
Update Data Dosen Input Data Ruang Update Data Ruang
Login Dosen
Input Mata Kuliah
Validasi Login Dosen
Update Mata Kuliah
Perubahan Jadwal
Input Hari
Update Perubahan Jadwal
Update Hari
Inbox
Input Jam Update Jam
OPTIMASI JADWAL RUANG KULIAH
Info Inbox
Input Plot Jadwal Update Plot Jadwal Input Jadwal Update Jadwal
Gambar 2. Diagram Konteks Pada aplikasi yang dibuat, data master pada sistem aplikasi ini meliputi data ruang kuliah, mata kuliah, beban mengajar dosen, jam mengajar, hari mengajar, dan jadwal mata kuliah. Pada menu proses, akan diolah data master menjadi penjadwalan ruang kuliah dengan ILP. Beban mata kuliah dosen pada setiap minggunya ditampilkan dalam suatu grafik seperti pada Gambar 3. Grafik tersebut diubah dalam suatu tabel yang siap diproses datanya dengan menggunakan ILP. Hasil proses ILP adalah persentase dalam pemanfaatkan ruang kuliah berdasarkan data beban mengajar dosen dalam periode 1 minggu, seperti pada Gambar 4.
Gambar 3. Grafik aktifitas mengajar dosen
63
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
Pada Gambar 3, terlihat bahwa sumbu x menyatakan jam perkuliahan dan sumbu y menyatakan jumlah kelas (ruang). Berdasarkan data semester Gasal 2013/2014 terlihat bahwa penggunaan ruang kelas hari Jumat yang sedikit jika dibandingkan dengan hari lainnya.
Gambar 4. Proses analisis dengan ILP Dari uji program seperti pada Gambar 4, didapatkan hasil optimasi penjadwalan dalam satu minggu untuk semester Gasal 2013/2014 sebesar 36%. Artinya sumber daya yang ada (mata kuliah, ruang kuliah, dan dosen pengampu) dapat dioptimalkan sebesar 36%. Selain itu proses penjadwalan lebih efektif dan efisien. Jika dibandingkan dengan perhitungan manual selama ini membutuhkan waktu sekitar 2 minggu. Sedangkan untuk tingkat akurasi program dalam penjadwalan ruang kuliah yang sudah terjadwalkan diuji berdasarkan parameter hari dan jam mengajar dosen. Hasil dari pengujian seperti pada Tabel 1. Tabel 1. Tabel pengujian tingkat akurasi program Hari Senin
Selasa
Rabu
Jam 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3
Status Data Tidak Sama Data Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Sama Data Tidak Sama
64
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
Hari
Kamis
Jumat
Jam 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7
Status Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama Data Tidak Sama
Berdasarkan Tabel 1, terlihat bahwa ada dua data yang sama. Sedangkan yang diharapkan dari penjadwalan ruang kuliah adalah tidak adanya kesamaan data yang dapat menimbulkan bentrok (crash) pada penggunaan ruang kuliah tersebut. Sehingga didapat nilai akurasi program sebesar 94,28%. Hasil penelitian ini menyatakan bahwa aplikasi lebih efisien dan optimal serta tidak adanya jadwal yang bertumpukan antardosen. Hal ini bersesuaian dengan hasil dari penelitian [7] dengan menggunakan metode Algoritma Genetika. Kelemahan dari program ini jika data semakin besar maka akan membutuhkan waktu semakin lama dalam prosesnya jika dibandingkan dengan metode Algoritma Genetika. Tetapi jika dibandingkan dengan tanpa adanya aplikasi ini (manual), aplikasi yang dibuat lebih efisien.
KESIMPULAN Sistem aplikasi penjadwalan ruang kuliah pada Fakultas Teknologi Informasi ITATS ini mempunyai nilai akurasi terhadap pembagian jadwal ruangan secara program sebesar 94,28%. Sedangkan hasil optimasi penjadwalan dalam satu minggu untuk semester Gasal 2013/2014 sebesar 36%. Jika dibandingkan dengan penjadwalan ruang kuliah secara manual, sistem ini dapat mengukur tingkat efisiensi kinerja dalam penjadwalan ruang kuliah. Dengan adanya sistem aplikasi ini, penjadwalan ruang kuliah menjadi lebih efektif dan efisien baik secara waktu maupun sumber daya manusianya jika dibandingkan dengan manual (tanpa aplikasi).
DAFTAR PUSTAKA [1] Wasfy, A. & Aloul, F. Solving the University Class Scheduling Problem Using Advanced ILP Techniques. Department of Computer Engineering. American University of Sharjah AUS. 2007. [2] Herrmann, J. W. & Lee, C. Y. Solving A Class Schedulling Problem with Genetic Algorithm, ORSA Journal on Computing. 1995; 7(4): 443–452. [3] Handayani, dkk. Optimasi Penggunaan Ruang Kelas Plarind Boulevard dengan Pendekatan Programa Linier. J@ti, UNDIP, Semarang. 2006.
65
ISSN: 1411-7010 e-ISSN: 2477-507X
Jurnal IPTEK Vol.19 No. 2, Desember 2015
[4] Aardal, Karen I. & Van Hoesel, Stan P. Models and solution techniques for frequency assignment problems. Annals of Operations Research. 2007; 153(1): 79–129. [5] Ravindran, Ravi. Operations Research Calculations Handbook. Dept. of Industrial & Manufacturing Engineering The Pennsylvania State University, USA. 2009. [6] Motozawa, Yusuke. Analysis of Linear, Integer, and Binary Programming and their Applications. Department of Computer and Mathematical Sciences University of Houston Downtown. 2009. [7] Pradyana, dkk. Perancangan dan Pembuatan Aplikasi Penjadwalan Perkuliahan Menggunakan Algoritma Genetik dan Teknologi Java API for XML Web Service pada platform Android. Jurnal Teknik POMIT. 2012; 1(1).
66