PENJADWALAN MATA PELAJARAN DI SEKOLAH: STUDI KASUS DI SMPIT NURUL FAJAR BOGOR
MUHAMMAD IZZUDDIN
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
PERNYATAAN MENGENAI SKRIPSI DAN SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Penjadwalan Mata Pelajaran di Sekolah: Studi Kasus di SMPIT Nurul Fajar Bogor adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.
ABSTRAK
MUHAMMAD IZZUDDIN. Penjadwalan Mata Pelajaran di Sekolah: Studi Kasus di SMPIT Nurul Fajar Bogor. Dibimbing oleh FARIDA HANUM dan PRAPTO TRI SUPRIYO.
Penjadwalan adalah salah satu masalah yang dihadapi oleh banyak lembaga antara lain sekolah. Penjadwalan secara konvensional seringkali tidak optimal. Agar diperoleh hasil yang optimal, masalah penjadwalan ini dimodelkan secara matematis ke dalam pemrograman integer. Karya ilmiah ini membahas masalah penjadwalan pelajaran sekolah yang diformulasikan ke dalam pemograman integer taklinear. Model tersebut kemudian diimplementasikan untuk menyelesaikan masalah penjadwalan di SMPIT Nurul Fajar Bogor. Dengan software LINGO 11.0 diperoleh solusi optimal berupa jadwal mata pelajaran dan pengajarnya yang memenuhi semua kendala yang diinginkan.
Kata kunci: pemograman integer taklinear, penjadwalan, mata pelajaran, sekolah.
ABSTRACT
MUMAMMAD IZZUDDIN. School Timetabling: Case Study in SMPIT Nurul Fajar Bogor. Supervised by FARIDA HANUM and PRAPTO TRI SUPRIYO.
Scheduling is one of the problems faced by many institutions including schools. However, the conventional scheduling is often sub-optimal. In this work, the scheduling problem is modeled mathematically using integer programming approach. In this paper the problem of scheduling of courses was formulated into integer nonlinear programming. The model is then implemented to solve the courses scheduling problem in SMPIT Nurul Fajar School Bogor. The computer software LINGO 11.0 was used to obtain optimal solutions in the form of courses and satisfying all constraints of subject and teachers’ schedules.
Skripsi
sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains
pada
Departemen Matematika
PENJADWALAN MATA PELAJARAN DI SEKOLAH: STUDI KASUS DI SMPIT NURUL FAJAR BOGOR
MUHAMMAD IZZUDDIN
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah SWT atas segala karunia- Nya sehingga karya ilmiah ini berhasil diselesaikan. Penulis bisa menyelesaikan karya ilmiah ini karena banyak orang yang membantu dan berkontribusi dalam pembuatan karya ilmiah ini. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada:
1 Allah SWT atas rahmat dan karunia yang tak terhitung banyaknya, 2 keluarga sebagai pemberi motivasi, semangat, dan doa,
3 semua guru dan staf SMPIT Nurul Fajar Bogor atas bantuan yang diberikan,
4 Dra Farida Hanum, MSi dan Drs Prapto Tri Supriyo, MKom selaku dosen pembimbing yang telah meluangkan waktu dan memberikan ilmu,
5 Ruhiyat, SSi MSi selaku dosen penguji yang telah meluangkan waktu dan memberikan ilmu,
6 semua dosen Departemen Matematika IPB atas ilmu yang diberikan,
7 semua staf Departemen Matematika IPB untuk semua bantuan administrasi,
8 teman-teman Matematika angkatan 45 atas bantuan, dukungan, dan doanya,
9 teman-teman angkatan 44, 46, dan 47 yang sudah ikut membantu dan memberikan doa,
10 semua pihak yang sudah membantu dalam penulisan karya ilmiah ini. Semoga karya ilmiah ini bermanfaat.
DAFTAR ISI
DAFTAR TABEL vi
DAFTAR LAMPIRAN vi
PENDAHULUAN 1
Latar Belakang 1
Tujuan Penelitian 1
TINJAUAN PUSTAKA 2
DESKRIPSI DAN FORMULASI MASALAH 3
Rumusan Masalah 3
Model Matematika 3
IMPLEMENTASI MODEL 5
Kasus 1 5
Kasus 2 9
SIMPULAN 12
DAFTAR PUSTAKA 12
LAMPIRAN 13
DAFTAR TABEL
1 Mata pelajaran, banyak sesi, dan bobot ... 5
2 Mata pelajaran yang dikuasai guru ... 5
3 Jadwal pelajaran dan guru untuk Kasus 1 ... 7
4 Jumlah sesi per mata pelajaran untuk Kasus 1 ... 8
5 Total mengajar (dalam sesi) setiap guru untuk Kasus 1 ... 8
6 Jadwal pelajaran dan guru untuk Kasus 2 ... 11
7 Jumlah sesi per mata pelajaran untuk Kasus 1 ... 11
DAFTAR LAMPIRAN
1 Model pada LINGO 11.0 untuk kasus 1 dan hasilnya ... 13PENDAHULUAN
Latar Belakang
Penjadwalan adalah masalah yang umum dihadapi oleh banyak lembaga di dunia. Baik lembaga di bidang akademik, kesehatan, transportasi, dan lain lain. Bagi institusi yang cukup besar, masalah ini bisa menjadi rumit dan menantang, karena jadwal yang ditetapkan diharapkan bebas konflik, efisien, dan kadang-kadang diperlukan juga yang sifatnya fleksibel.
Setiap lembaga memiliki kendala yang unik, bergantung pada kondisi dan kebijakannya juga pada ketersediaan sumber daya. Penjadwalan yang baik harus bisa mengidentifikasi kondisi optimal, yaitu kombinasi antara peristiwa (kursus, ujian, operasi), sumber daya (guru, pengawas ujian, perawat, dokter), ruang (ruang kelas, kamar operasi), waktu dan semua kendalanya, yang menghasilkan tingkat kepuasan preferensi tertinggi.
Ada beberapa cara untuk menyelesaikan masalah penjadwalan tersebut. Cara yang biasa dilakukan ialah dengan membuat jadwal secara manual. Tetapi cara itu tidak efektif jika menyangkut banyak data. Cara lain adalah dibuat menjadi model matematika. Berbagai metode yang pernah dipakai untuk menyelesaikan masalah penjadwalan antara lain menggunakan algoritme column generation untuk penjadwalan SMA di Yunani (Papoutsis et al. 2003), pendekatan algoritme genetika (Beligiannis et al. 2009), dan pemrograman mix-integer untuk penjadwalan di Kuwait University yang ditulis oleh Al-Yakoob dan Sherali (2007).
Salah satu model matematika yang dapat digunakan untuk menyelesaikan masalah penjadwalan adalah pemrograman integer taklinear. Pemrograman taklinear adalah suatu teknik optimasi untuk masalah yang memiliki fungsi objektif atau kendala taklinear. Tulisan ini akan membahas masalah penjadwalan pelajaran sekolah dalam pemograman integer taklinear dan menyelesaikannya dengan mengambil contoh masalah penjadwalan di SMPIT Nurul Fajar Bogor.
Tujuan Penelitian
Tujuan dari tulisan ini ialah memodelkan masalah penjadwalan mata pelajaran dan guru sekolah dengan pemrograman integer taklinear, lalu mengaplikasikan model tersebut untuk masalah penjadwalan mata pelajaran di SMPIT Nurul Fajar Bogor dengan meminimumkan bobot mata pelajaran untuk 2 kasus yaitu bila SMP tersebut memiliki:
1 tiga kelas dengan keadaan guru mencukupi,
TINJAUAN PUSTAKA
Integer Programming
Integer Programming (IP) adalah suatu model pemrograman dengan variabel yang digunakan berupa integer. Jika semua variabel harus berupa integer, maka masalah itu dinamakan pure integer programming. Jika hanya sebagian yang harus berupa integer, maka disebut mixed integer programming. IP dengan semua variabelnya harus bernilai 0 atau 1 disebut 0-1 IP (Garfinkel & Nemhauser 1972).
Multi-Objective Optimization Problem
Masalah optimasi multi-objektif memiliki sejumlah fungsi objektif yang harus diminimumkan atau dimaksimumkan. Seperti halnya dalam masalah optimasi fungsi objektif tunggal, masalah ini juga biasanya memiliki sejumlah kendala yang harus dipenuhi oleh setiap solusi fisibel. Berikut ini dinyatakan masalah optimasi multi-objektif dalam bentuk umum:
Meminimumkan/Memaksimumkan
, = 1,2,…, ;
terhadap
0, = 1,2,…, , = 0, = 1,2,…, ,
( ) ( ), = 1,2,…, .
Solusi x adalah vektor yang berukuran n dari variabel keputusan =
1, 2,…, . Bagian terakhir dari kendala di atas disebut batas-batas variabel, membatasi setiap variabel keputusan untuk mengambil nilai paling rendah ( ) dan paling besar (�) (Deb 2001).
Weighted sum method
Weighted sum method menggabungkan serangkaian fungsi objektif dalam satu fungsi objektif dengan mengalikan setiap fungsi objektif dengan bobot yang disediakan oleh pengguna. Metode ini merupakan pendekatan yang paling sederhana dan mungkin pendekatan klasik yang paling banyak digunakan. Besarnya nilai bobot bergantung pada pentingnya setiap fungsi objektif dalam konteks masalah dan faktor skala. Bobot dari fungsi objektif biasanya dipilih secara proporsional dengan tujuan yang relatif penting dalam masalah.
Fungsi tujuan komposit F(x) dapat dibentuk dengan menjumlahkan fungsi objektif yang telah terboboti. Masalah optimasi multi-objektif kemudian dikonversi menjadi masalah optimasi objektif tunggal sebagai berikut
Meminimumkan/Memaksimumkan
� =
=1
,
terhadap
0, = 1,2,…, ; = 0, = 1,2,…, ;
( ) ( ), = 1,2,…, ;
Pengubahan Tipe Fungsi Objektif
Fungsi objektif yang memaksimumkan/meminimumkan dapat diubah menjadi fungsi meminimumkan/memaksimumkan dengan mengubah tanda (+ atau −) pada fungsi tersebut. Memaksimumkan fungsi objektif 1 =
sebanding dengan meminimumkan fungsi objektif 2 = − (Sarker & Newton 2008).
DESKRIPSI DAN FORMULASI MASALAH
Rumusan Masalah
Masalah penjadwalan mata pelajaran di sekolah berkaitan dengan kendala kelas, guru, dan mata pelajaran. Pada umumnya, penjadwalan di suatu sekolah dibuat untuk periode 6 hari kerja dalam seminggu dengan 3 sesi setiap harinya. Dalam penjadwalan sekolah ini ada beberapa syarat yang harus dipenuhi yaitu: 1 tidak ada guru yang mengajar lebih dari 1 pelajaran dalam satu sesi,
2 setiap mata pelajaran memenuhi jumlah sesi yang ditentukan dalam seminggu, 3 guru hanya mengajar pelajaran yang dikuasainya.
Dalam penjadwalan ini diasumsikan ruangan selalu tersedia.
Model Matematika
Dari rumusan masalah dibuat formulasi dalam bentuk pemrograman integer taklinear.
Indeks:
Terdapat lima indeks dalam model ini, yaitu: g = indeks untuk guru,
p = indeks untuk mata pelajaran, k = indeks untuk kelas,
h = indeks untuk hari, s = indeks untuk sesi. Variabel Keputusan:
Misalkan
� 0, 1, lainnyajika guru, mengajar mata pelajaran�di kelas
�
Parameter: Misalkan
� 0, 1, lainnyajika guru, menguasai mata pelajaran� bpk = jumlah sesi untuk mata pelajaran p di kelas k,
cps = bobot mata pelajaran p di sesi s. Jika bobotnya kecil maka mata pelajaran tersebut lebih disukai diselenggarakan di sesi tersebut.
Fungsi Objektif:
Fungsi objektif masalah ini ialah meminimumkan total bobot mata pelajaran, yaitu:
min � �
�
.
Kendala:
1 Setiap mata pelajaran harus memenuhi jumlah sesi yang ditetapkan,
� = � , ∀ �, .
2 Dalam 1 sesi hanya ada 1 guru dan 1 mata pelajaran untuk 1 kelas,
� � = 1 , ∀
�
, , .
3 Setiap guru maksimal hanya mengajar di 1 kelas di tiap sesi,
� �
�
1, ∀ , , .
4 Hanya terdapat 1 guru di setiap mata pelajaran dan setiap kelas,
� = 1 , ∀ �, .
5 Guru hanya mengajar sesuai dengan keahliannya, � �, ∀ ,�, .
Ditambahkan dengan
6 Kendala yang terkait dengan mata pelajaran.
IMPLEMENTASI MODEL
Kasus 1
SMPIT Nurul Fajar Bogor memiliki 3 kelas, yaitu kelas 1 dengan indeks k = 1, kelas 2 dengan indeks k = 2, dan kelas 3 dengan indeks k = 3. Setiap kelas memiliki 13 mata pelajaran dan banyak sesi untuk tiap minggu dan bobot di setiap sesi dapat dilihat pada Tabel 1.
Tabel 1 Mata pelajaran, banyak sesi, dan bobot Indeks
(p)
Mata Pelajaran
Sing-katan
Jumlah sesi per minggu Bobot
Kelas 1 Kelas 2 Kelas 3 Sesi 1 Sesi 2 Sesi 3
1 Matematika MAT 2 2 3 1 2 3
2 IPA IPA 2 2 3 1 2 3
3 Bhs Indonesia IND 2 2 3 1 1 1
4 Bhs Inggris ING 2 2 3 1 1 1
5 IPS IPS 2 2 1 1 1 1
6 PKn PKN 1 1 0 1 1 1
7 Agama AGA 1 1 1 1 1 1
8 PLH PLH 1 1 0 1 1 3
9 SBK SBK 1 1 1 1 1 1
10 Olah Raga OR 1 1 1 2 1 3
11 Bhs Arab ARA 1 1 1 1 1 1
12 Kelas Baca BAC 1 1 0 3 1 1
13 Komputer KOM 1 1 1 1 1 1
SMPIT Nurul Fajar Bogor memiliki 12 guru dengan bidang keahlian yang berbeda-beda yang ditunjukkan pada Tabel 2.
Tabel 2 Mata pelajaran yang dikuasai guru Indeks guru (g) Mata pelajaran yang dikuasai
1 Matematika, IPA 2 Matematika, IPA
3 Bhs Indonesia, Kelas Baca 4 Bhs Indonesia, Bhs Inggris 5 Bhs Inggris
6 IPS, PLH
7 PKn
8 Agama
9 Olah Raga
10 Bhs Arab
11 SBK
SMPIT Nurul Fajar Bogor memiliki beberapa batasan khusus yaitu: 1 setiap pelajaran di setiap kelas maksimal hanya 1 sesi per hari, 2 pelajaran olahraga tidak diselenggarakan pada hari Senin dan Kamis, 3 setiap guru maksimal hanya mengajar 2 sesi per hari,
4 memperhatikan ketidaksediaan guru di sesi atau hari tertentu,
maka model matematika untuk masalah penjadwalan ini adalah sebagai berikut. Fungsi objektif dari kasus ini ialah:
min � �
3 =1 6 =1 3 =1 13 �=1 . Kendala-kendalanya ialah
1 setiap mata pelajaran harus memenuhi jumlah sesi yang ditetapkan,
� = � , ∀�= 1,2,…,13; = 1,2,3. 3
=1 6
=1
2 Dalam 1 sesi hanya ada 1 guru dan 1 mata pelajaran untuk 1 kelas,
� � = 1 , ∀
13
�=1 12
=1
= 1,2,3; = 1,2,…,6; = 1,2,3.
3 Setiap guru maksimal hanya mengajar di 1 kelas di tiap sesi,
� � 1, ∀ = 1,2,3,…,12; = 1,2,3,…,6; = 1,2,3. 3
=1 13
�=1
4 Hanya terdapat 1 guru di setiap mata pelajaran dan setiap kelas,
� = 1 , ∀ 12
=1
�= 1,2,3,…,12; = 1,2,3.
5 Guru hanya mengajar sesuai dengan bidang keahliannya,
� � ∀ = 1,2,…,12; � = 1,2,…,13; = 1,2,3.
6 Setiap pelajaran maksimal hanya 1 sesi per hari di setiap kelas, �
3
=1
1, ∀�= 1,2,…,13; = 1,2,3; = 1,2,…,6.
7 Olahraga tidak dilaksanakan di hari Senin dan Kamis,
10 1 = 0,
3
=1
10 4 = 0,
3
=1
∀ = 1,2,3.
8 Setiap guru maksimal mengajar 2 sesi per hari
� � 2, ∀ = 1,2,…,12; = 1,2,…, 6. 3 =1 3 =1 12 �=1
9 Kendala kesediaan guru
Guru 7 tidak bisa mengajar di Sesi 3
7� � 3= 0, ∀�= 1,2,…,13; = 1,2,3; = 1,2,…,6. Guru 8 tidak bisa mengajar di Sesi 1
8� � 1 = 0, ∀�= 1,2, . . ,13; = 1,2,3; = 1,2,…, 6. 10 Kendala biner
� ∈ 0,1 , ∀ = 1,2,…, 12; � = 1,2,…,13; = 1,2,3.
� ∈ 0,1 , ∀�= 1,2,…,13; = 1,2,3; = 1,2,…,6; = 1,2,3.
Hasil Kasus 1:
Dengan bantuan LINGO 11.0 didapatkan nilai optimal 56 (dapat dilihat di Lampiran 1) dengan jadwal yang diperoleh ditunjukkan di Tabel 3.
Tabel 3 Jadwal pelajaran dan guru untuk Kasus 1
Hari Sesi
Kelas 1 Kelas 2 Kelas 3
Mapel Guru Mapel Guru Mapel Guru Senin
sesi 1 ING 5 IPA 1 IPA 2
sesi 2 PKN 7 SBK 11 ING 5
sesi 3 IPS 6 BAC 3 ARA 10
Selasa
sesi 1 IPA 2 ING 5 MAT 1
sesi 2 ING 5 PLH 6 IPA 2
sesi 3 IND 4 IPS 6 KOM 12
Rabu
sesi 1 IPA 2 IPA 1 ING 5
sesi 2 IND 4 OR 9 MAT 1
sesi 3 SBK 11 IPS 6 IND 4
Kamis
sesi 1 MAT 1 MAT 2 SBK 11
sesi 2 KOM 12 PKN 7 ING 5
sesi 3 AGA 8 ARA 10 IPS 6
Jumat
sesi 1 MAT 1 KOM 12 IPA 2
sesi 2 PLH 6 IND 4 OR 9
sesi 3 BAC 3 AGA 8 IND 4
Sabtu
sesi 1 IPS 6 MAT 2 MAT 1
sesi 2 OR 9 ING 5 IND 4
Pada Tabel 4 diberikan jumlah sesi per mata pelajaran di setiap minggunya. Tabel 4 Jumlah sesi per mata pelajaran untuk Kasus 1
Mata pelajaran
Bobot di sesi Terjadwal di sesi Total sesi
1 2 3 1 2 3
Matematika 1 2 3 6 1 0 7
IPA 1 2 3 6 1 0 7
Bhs Indonesia 1 1 1 0 3 4 7
Bhs Inggris 1 1 1 3 4 0 7
IPS 1 1 1 1 0 4 5
PKn 1 1 1 0 2 0 2
Agama 1 1 1 0 0 3 3
PLH 1 1 3 0 2 0 2
SBK 1 1 1 1 1 1 3
Olah Raga 2 1 3 0 3 0 3
Bhs Arab 1 1 1 0 0 3 3
Kelas Baca 3 1 1 0 0 2 2
Komputer 1 1 1 1 1 1 3
Hasil yang didapat cukup baik karena hanya ada 1 sesi Matematika dan 1 sesi IPA yang dijadwalkan pada sesi dengan bobot 2. Pada Tabel 5 diberikan total mengajar setiap guru setiap harinya. Dari tabel tersebut dapat dilihat semua kendala terpenuhi.
Tabel 5 Total mengajar (dalam sesi) setiap guru untuk Kasus 1 Guru (g) Senin Selasa Rabu Kamis Jumat Sabtu
1 1 1 2 1 1 1
2 1 2 1 1 1 1
3 1 0 0 0 1 0
4 0 1 2 0 2 2
5 2 2 1 1 0 1
6 1 2 1 1 1 1
7 1 0 0 1 0 0
8 0 0 0 1 1 1
9 0 0 1 0 1 1
10 1 0 0 1 0 1
11 1 0 1 1 0 0
Kasus 2
Misalkan SMPIT Nurul Fajar Bogor ingin menambah satu kelas baru untuk kelas 1 sehingga terdapat 4 kelas dengan kondisi sama seperti pada Kasus 1. Empat kelas tersebut ialah Kelas 1A ( dengan indeks k=1), kelas 1B (dengan indeks k=2), Kelas 2 (dengan indeks k=3), dan Kelas 3 (dengan indeks k=4). Ada aturan baru yang ditambahkan yaitu guru di Kelas 1A harus sama dengan guru di Kelas 1B untuk suatu mata pelajaran tertentu. Dalam kasus ini akan ditentukan berapa banyak guru tambahan yang diperlukan dengan penambahan kelas baru ini.
Fungsi objektif pada Kasus 2 ada dua macam:
1 meminimumkan bobot penyelenggaraan mata pelajaran, yaitu
min � �
3 =1 6 =1 4 =1 13 �=1 ,
2 memaksimumkan banyak guru yang dapat dijadwalkan, yaitu
max � .
4 =1 13 �=1 12 =1
Karena fungsi objektif yang kedua dianggap lebih penting dibandingkan dengan fungsi objektif pertama, maka bobot fungsi objektif kedua diberikan lebih besar dibandingkan dengan fungsi objektif pertama. Misalkan fungsi objektif pertama diberi bobot 1 dan fungsi objektif kedua diberi bobot 2, maka fungsi objektif pada Kasus 2 ialah
min � � −2 �
4 =1 13 �=1 12 =1 3 =1 6 =1 4 =1 13 �=1 Kendala-kendalanya adalah
1 Setiap mata pelajaran harus memenuhi jumlah sesi yang ditetapkan
� = � , ∀� = 1,2,…,13; = 1,2,3,4. 3
=1 6
=1
2 Dalam 1 sesi hanya ada 1 mata pelajaran untuk 1 kelas
� = 1 13
�=1
∀ = 1,2,3,4; = 1,2,…,6; = 1,2,3.
3 Setiap guru maksimal hanya mengajar di 1 kelas di tiap sesi
� � 1, ∀ = 1,2,…,12; = 1,2,…,6; = 1,2,3. 4
=1 13
�=1
4 Hanya terdapat 1 guru di setiap mata pelajaran dan setiap kelas
� 1 , ∀
12
=1
5 Guru hanya mengajar sesuai dengan bidang keahliannya
� � ∀ = 1,2,…,12; �= 1,2,…,13; = 1,2,3,4.
6 Setiap pelajaran maksimal hanya 1 sesi per hari �
3
=1
1, ∀� = 1,2,…,13; = 1,2,3,4; = 1,2,…,6.
7 Olahraga tidak dilaksanakan di hari Senin dan Kamis
8 1 = 0,
3
=1
∀ = 1,2,3,4.
8 4 = 0,
3
=1
∀ = 1,2,3,4.
8 Setiap guru maksimal mengajar 2 sesi per hari
� � 2, ∀ = 1,2,…,12; = 1,2,…,6; 3
=1 3
=1 13
�=1
9 Kendala kesediaan guru
Guru 7 tidak bisa mengajar di Sesi 3
7� � 3 = 0, ∀�= 1,2,…,13; = 1,2,3,4; = 1,2,…,6. Guru 8 tidak bisa mengajar di Sesi 1
8� � 1 = 0, ∀�= 1,2,…,13; = 1,2,3,4; = 1,2,…,6.
10 Guru di Kelas 1A dan 1B harus sama
�1 = �2 ∀ = 1,2,…,12;�= 1,2,…,13.
11 Kendala biner
� ∈ 0,1 , ∀ = 1,2,…,12;�= 1,2,…,13; = 1,2,3,4.
� ∈ 0,1 , ∀� = 1,2,…,13; = 1,2,3,4; = 1,2,…6; = 1,2,3.
Hasil Kasus 2
Tabel 6 Jadwal pelajaran dan guru untuk Kasus 2
Ternyata banyaknya guru tidak mencukupi untuk Kasus 2. Dibutuhkan guru untuk pelajaran Matematika di Kelas 3 dan guru pelajaran IPA di Kelas 3. Untuk Hasil jadwalnya sangat baik karena semua pelajaran mendapat bobot 1 seperti yang terlihat pada Tabel 7.
Tabel 7 Jumlah sesi per mata pelajaran untuk Kasus 2
Mapel
Bobot di sesi Terjadwal di sesi Total
sesi
1 2 3 1 2 3
Matematika 1 2 3 9 0 0 9
IPA 1 2 3 9 0 0 9
Bhs Indonesia 1 1 1 1 5 3 9
Bhs Inggris 1 1 1 0 3 6 9
IPS 1 1 1 1 3 3 7
PKn 1 1 1 1 2 0 3
Agama 1 1 1 0 2 2 4
PLH 1 1 3 2 1 0 3
SBK 1 1 1 0 2 2 4
Olah Raga 2 1 3 0 4 0 4
Bhs Arab 1 1 1 1 1 2 4
Kelas Baca 3 1 1 0 0 3 3
Komputer 1 1 1 0 1 3 4
Hari Sesi Kelas 1A Kelas 1B Kelas 2 Kelas 3
Mapel Guru Mapel Guru Mapel Guru Mapel Guru
Senin
sesi 1 IPA 1 MAT 2 IND 4 MAT
-sesi 2 ING 5 SBK 11 IPS 6 IND 3
sesi 3 IND 3 IPS 6 SBK 11 ING 5
Selasa
sesi 1 MAT 2 IPA 1 IPS 6 MAT
-sesi 2 SBK 11 IND 3 OR 9 AGA 8
sesi 3 IPS 6 KOM 12 AGA 8 ING 5
Rabu
sesi 1 MAT 2 PLH 6 MAT 1 IPA
-sesi 2 AGA 8 OR 9 ING 4 ING 5
sesi 3 BAC 3 ING 5 IND 4 KOM 12
Kamis
sesi 1 PKN 7 MAT 2 MAT 1 IPA
-sesi 2 KOM 12 IND 3 ARA 10 IPS 6
sesi 3 IPS 6 AGA 8 BAC 3 SBK 11
Jumat
sesi 1 IPA 1 ARA 10 IPA 2 IPA
-sesi 2 IND 3 PKN 7 PLH 6 OR 9
sesi 3 ARA 10 ING 5 KOM 12 IND 3
Sabtu
sesi 1 PLH 6 IPA 1 IPA 2 MAT
-sesi 2 OR 9 IPS 6 PKN 7 IND 3
SIMPULAN
Masalah penjadwalan mata pelajaran di sekolah, khususnya di SMPIT Nurul Fajar Bogor, dapat diselesaikan dengan pemograman integer taklinear. Masalah tersebut bisa diselesaikan dengan menggunakan bantuan LINGO 11.0.
Dalam kasus pertama, diperoleh jadwal yang memenuhi semua kendala yang ada dengan bobot mata pelajaran yang minimum, sedangkan di kasus kedua, ternyata banyaknya guru tidak memenuhi sehingga diperlukan guru tambahan untuk pelajaran Matematika dan IPA di kelas 3.
DAFTAR PUSTAKA
Al-Yakob SM, Sherali HD. 2007. A mixed-integer programming approach to a class timetabling problem: A case study with gender policies and traffic considerations. Journal of the Operational Research Society. 180:1028-1044 doi: 10.1016/j.ejor.2006.04.035.
Beligiannis GN, Moschopoulos C, Likothanassis SD. 2009. A genetic algorithm apporoach to school timetabling. Journal of the Operational Research Society. (60):23-42 doi: 10.1057/palgrave.jors.2602525.
Deb K. 2001. Multi-objective Optimization using Evolutionary Algorithms. Ed ke-4. New York (US): Duxbury.
Garfinkel RS, Nemhauser GL. 1972. Integer Programming. New York (US): Wiley.
Papoutsis K, Valouxis C, Housos E. 2003. A column generation approach for the timetabling problem of Greek high schools. Journal of the Operational Research Society. (54):230–238 doi:10.1057/palgrave.jors.2601495.
LAMPIRAN
lampiran 1 Model pada LINGO 11.0 untuk kasus 1 dan hasilnya
model: sets: guru/1..12/; mapel/1..13/; ! 1. matematika 2. ipa
3. bahasa indonesia 4. bahasa inggris 5. IPS 6. PKn 7. Agama 8. PLH 9. SBK 10.OR 11.bahasa arab 12.kelas baca 13.Komputer ; kelas/1..3/; hari/1..6/; sesi/1..3/; link1(guru,mapel,kelas):x; link2(mapel,kelas,hari,sesi):y; link3(mapel,kelas):b; link4(kelas,hari,sesi); link5(guru,hari,sesi); link6(mapel,kelas,hari); link7(mapel,sesi):c; link8(guru,mapel):a; link9(kelas,hari); link10(guru,hari); endsets data: !keahlian guru; a=
1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1;
!jumlah sesi dalam seminggu;
2 2 3 2 2 3 2 2 3 2 2 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1;
!bobot mata pelajaran per sesi;
c= 1 2 3 1 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 2 1 3 1 1 1 3 1 1 1 1 1;
enddata
@for(link10(g,h):@sum(mapel(p):@sum(kelas(k):@sum(sesi(s):x(g,p,k)
*y(p,k,h,s))))<=2);
!mapel;
@for(link3(p,k):@sum(hari(h):@sum(sesi(s):y(p,k,h,s)))=b(p,k));
!1 guru dan pelajaran per sesi;
@for(link4(k,h,s):@sum(guru(g):@sum(mapel(p):x(g,p,k)*y(p,k,h,s)))
=1);
@for(link5(g,h,s):@sum(mapel(p):@sum(kelas(k):x(g,p,k)*y(p,k,h,s))
)<=1);
!tidak berturut-turut;
@for(link6(p,k,h):@sum(sesi(s):y(p,k,h,s))<=1);
!guru 7 tidak bisa mengajar sesi 3;
@for(link6(p,k,h):x(7,p,k)*y(p,k,h,3)=0);
!guru 8 tidak bisa mengajar sesi pertama;
@for(link6(p,k,h):x(8,p,k)*y(p,k,h,1)=0);
!or tidak senin atau kamis;
@sum(kelas(k):@sum(sesi(s):y(10,k,1,s)))=0;
@sum(kelas(k):@sum(sesi(s):y(10,k,4,s)))=0;
@for(link3(p,k):@sum(guru(g):x(g,p,k))=1);
!guru hanya mengajar sesuai dengan keahliannya;
@for(link1(g,p,k):x(g,p,k)<=a(g,p));
!nilai x dan y selalu biner;
@for(link1(g,p,k):@bin(x(g,p,k)));
@for(link2(p,k,h,s):@bin(y(p,k,h,s)));
min=@sum(link2(p,k,h,s):y(p,k,h,s)*c(p,s));
Hasil
Global optimal solution found.
Objective value: 56.00000 Objective bound: 56.00000 Infeasibilities: 0.000000 Extended solver steps: 1 Total solver iterations: 963
lampiran 2 Model pada LOINGO 11.0 untuk kasus 2 dan hasilnya
model: sets: guru/1..12/; mapel/1..13/; ! 1. matematika 2. ipa
3. bahasa indonesia 4. bahasa inggris 5. IPS 6. PKn 7. Agama 8. PLH 9. SBK 10.OR 11.bahasa arab 12.kelas baca 13.Komputer ; kelas/1..4/; hari/1..6/; sesi/1..3/; link1(guru,mapel,kelas):x; link2(mapel,kelas,hari,sesi):y; link3(mapel,kelas):b; link4(kelas,hari,sesi); link5(guru,hari,sesi); link6(mapel,kelas,hari); link7(mapel,sesi):c; link8(guru,mapel):a; link9(kelas,hari); link10(guru,hari); endsets data: !keahlian guru; a=
!1 1 0 0 0 0 0 0 0 0 0 0 0;
1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1;
!jumlah sesi dalam seminggu;
2 2 2 3 2 2 2 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1;
!bobot mata pelajaran per sesi;
c= 1 2 3 1 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 2 1 3 1 1 1 3 1 1 1 1 1;
enddata
!2jam per hari;
@for(link10(g,h):@sum(mapel(p):@sum(kelas(k):@sum(sesi(s):x(g,p,k)
*y(p,k,h,s))))<=2);
!jumlah mata pelajaran memenuhi jumlah sesi ditetapkan;
@for(link3(p,k):@sum(hari(h):@sum(sesi(s):y(p,k,h,s)))=b(p,k));
!1 guru dan pelajaran per sesi;
@for(link4(k,h,s):@sum(mapel(p):y(p,k,h,s))=1);
!setiap guru maksimal mengajar 1kelas tiap sesi;
@for(link5(g,h,s):@sum(mapel(p):@sum(kelas(k):x(g,p,k)*y(p,k,h,s))
)<=1);
!tidak berturut-turut;
@for(link6(p,k,h):@sum(sesi(s):y(p,k,h,s))<=1);
!guru 7 tidak bisa mengajar sesi 3;
@for(link6(p,k,h):x(7,p,k)*y(p,k,h,3)=0);
!guru 8 tidak bisa mengajar sesi pertama;
@for(link6(p,k,h):x(8,p,k)*y(p,k,h,1)=0);
!olah raga tidak senin atau kamis;
@sum(kelas(k):@sum(sesi(s):y(10,k,1,s)))=0;
@sum(kelas(k):@sum(sesi(s):y(10,k,4,s)))=0;
!1 guru untuk tiap pelajaran dan kelas;
!guru hanya mengajar sesuai dengan keahliannya;
@for(link1(g,p,k):x(g,p,k)<=a(g,p));
!nilai x dan y selalu biner;
@for(link1(g,p,k):@bin(x(g,p,k)));
@for(link2(p,k,h,s):@bin(y(p,k,h,s)));
!guru kelas 1 dan 2 harus sama;
@for(guru(g):@for(mapel(p):x(g,p,1)=x(g,p,2)));
min=@sum
(link2(p,k,h,s):y(p,k,h,s)*c(p,s))-2*@sum(link1(g,p,k):x(g,p,k));
Hasil
Global optimal solution found.
Objective value: -28.00000 Objective bound: -28.00000 Infeasibilities: 0.000000 Extended solver steps: 1 Total solver iterations: 456758
RIWAYAT HIDUP
Muhammad Izzuddin dilahirkan di Sidney pada tanggal 26 Oktober 1990. Penulis merupakan anak kedua dari pasangan Sidikrubadi Pramudito dan Lisda Fauziah yang bertempat tinggal di Kampung Carang Pulang Bogor 16680.
Pada tahun 2002 penulis bersekolah di SMPIT Ummul Quro yang kemudian pada tahn 2005 penulis melanjutkan sekolahnya di SMA KORNITA Bogor. Pada tahun 2008 penulis diterima di Departemen Matematika FMIPA IPB melalui jalur USMI (Undangan Seleksi Masuk IPB).