Penjadwalan Mata Kuliah dengan Pendekata

PENJADWALAN MATAKULIAH
DENGAN PENDEKATAN PEWARNAAN GRAF
DI UNIVERSITAS KRISTEN DUTA WACANA
YOGYAKARTA
Leo Sendra (1) , R. Gunawan Santosa (2) , Restyandito (3)

Intisari
Penjadwalan matakuliah merupakan suatu kegiatan untuk mengalokasikan
matakuliah-matakuliah pada slot-slot waktu tertentu dan pada ruang-ruang yang
tersedia dengan memperhatikan batasan-batasan yang ada. Penjadwalan
matakuliah sulit dilakukan secara manual jika matakuliah yang ditawarkan
jumlahnya banyak dan batasan-batasan yang harus diperhatikan banyak.
Dalam membentuk suatu jadwal matakuliah yang dapat memenuhi batasanbatasan yang ada, penulis memodelkan matakuliah ke dalam bentuk graf dan
membagi proses pembentukan jadwal ke dalam 3 tahap yaitu tahap pembentukan
paket matakuliah, tahap alokasi paket matakuliah ke slot waktu dan tahap alokasi
matakuliah ke ruang kelas.
Hasil dari penelitian yang penulis lakukan adalah dengan pemodelan yang
dibuat dan penerapan pewarnaan graf dapat membentuk paket matakuliah yang
bebas dari tabrakan, kombinasi pewarnaan verteks dapat digunakan sebagai
alternatif-alternatif solusi yang berguna untuk membuat seluruh matakuliah
mendapatkan ruang kelas, paket-paket matakuliah hasil pewarnaan graf dengan

algoritma welch-powell tidak dapat secara langsung memenuhi batasan yang ada.
Sehingga harus dilakukan beberapa modifikasi. Selain itu juga, ternyata sistem
paket matakuliah yang dihasilkan menyebabkan ketergantungan dalam hal alokasi
ke slot waktu.
Kata Kunci: Penjadwalan matakuliah, Pewarnaan graf, Algoritma welch-powell

(1) Leo Sendra, Mahasiswa Teknik Informatika, Fakultas Teknik, Universitas Kristen Duta Wacana
(2) Drs. R. Gunawan Santosa , M.Si., Dosen Teknik Informatika, Fakultas Teknik, Universitas Kristen Duta Wacana
(3) Restyandito, S.Kom., MSIS., Dosen Teknik Informatika, Fakultas Teknik, Universitas Kristen Duta Wacana

1. Pendahuluan
Penjadwalan matakuliah merupakan suatu kegiatan untuk mengalokasikan matakuliahmatakuliah pada slot-slot waktu tertentu dan pada ruang-ruang yang tersedia dengan
memperhatikan batasan-batasan yang ada. Batasan-batasan yang harus diperhatikan adalah
matakuliah yang sama tidak boleh berjalan dalam slot waktu yang sama, dosen yang sama
tidak boleh mengajar dalam slot waktu yang sama, jumlah matakuliah yang diijinkan per
semester pada suatu slot waktu, penempatan waktu pelaksanaan matakuliah harus disesuaikan
dengan jadwal dosen pengajar yang bersangkutan, alokasi matakuliah ke ruang kelas harus
disesuaikan dengan kapasitas ruang kelas dan sasaran prodi dari ruang kelas.
Banyaknya jumlah matakuliah yang harus dijadwalkan dan batasan-batasan yang
harus diperhatikan membuat kegiatan penjadwalan matakuliah terasa sulit jika dilakukan secara

manual.
Pada penelitian ini, akan dilakukan penjadwalan matakuliah di Universitas Kristen Duta
Wacana dengan menggunakan pendekatan pewarnaan graf dan diterapkan pada sistem
komputer. Sehingga, pada akhirnya diharapkan penjadwalan matakuliah di Universitas Kristen
Duta Wacana dapat dibantu bahkan diselesaikan dengan komputer untuk memperingan
pekerjaan dan menghemat waktu.

2. Landasan Teori
2.1. Definisi Graf
Sebuah graf, disimbolkan dengan G(V,E), merupakan struktur matematis yang terdiri
dari dua himpunan V dan E. Elemen-elemen dari V disebut dengan verteks (atau node), dan
elemen dari E disebut dengan edge. Setiap edge mempunyai satu atau dua verteks yang
berasosiasi dengannya yang disebut dengan endpoints (Gross & Yellen, 1999).
Teori graf mempunyai peran yang besar dalam kehidupan manusia. Verteks sebuah
graf dapat merepresentasikan orang, komputer, kota. Dan edge menunjukkan verteks-verteks
yang memiliki hubungan. Sebagai contoh, dua orang yang saling mengenal, dua komputer yang
dapat berkomunikasi atau dua kota yang dihubungkan oleh jalur penerbangan. Sehingga
sebuah graf dapat diartikan sebagai representasi matematis dari sebuah hubungan (Buckley &
Lewinter, 2003). Teori graf digunakan untuk menyederhanakan masalah-masalah yang ada di
dunia nyata sehingga hubungan antar komponen dalam suatu masalah dapat dipahami dengan

mudah.
Dalam teori graf, dikenal beberapa istilah yang berkaitan dengan verteks dan edge.
Adjacent verteks adalah dua verteks yang dihubungkan oleh sebuah edge. Sedangkan adjacent
edge adalah dua edge yang mempunyai sebuah endpoint yang sama. Setiap verteks pada
sebuah graf memiliki derajat. Derajat dari sebuah verteks dalam graf G, disimbolkan deg(v),
adalah jumlah edge yang berhubungan pada suatu verteks v.

2.2. Representasi Graf
Sebuah graf dapat direpresentasikan dengan berbagai bentuk. Representasi graf
secara visual memudahkan manusia untuk menganalisanya. Namun, representasi graf dalam
bentuk matriks akan lebih mudah untuk diproses oleh komputer dibanding dengan representasi
dalam bentuk visual.
Ada 2 macam representasi graf dalam bentuk matriks, yaitu:

• Matriks Adjacency

Matriks adjacency dari sebuah graf G, disimbolkan AG, adalah matriks yang baris dan
kolomnya merupakan verteks-verteks pada graf G (VG), di mana
AG[u,v] = jumlah edge antar u dan v jika u≠ v
jumlah self-loop pada v jika u= v


• Matriks Incidence

Matriks incidence dari sebuah graf G, disimbolkan IG, adalah matriks yang barisnya
merupakan verteks dari graf G (VG) dan kolomnya merupakan edge dari graf G (EG ), di
mana:
0 jika v bukan merupakan endpoint dari e
IG[v,e] = 1 jika v merupakan endpoint dari e
2 jika e merupakan self-loop a pada v

2.3. Pewarnaan Graf
Pewarnaan graf adalah suatu proses pemberian label atau warna pada edge atau
verteks dari sebuah graf. Pewarnaan graf ada 2 tipe yaitu pewarnaan verteks dan pewarnaan
edge.
Pewarnaan verteks adalah suatu proses pemberian label atau warna pada verteks dari
suatu graf sehingga verteks yang ber-adjacent memiliki label atau warna yang berbeda
(Buckley & Lewinter, 2003).
Dalam teori pewarnaan graf, dikenal suatu bilangan kromatik yang disimbolkan

χ.


Bilangan kromatik suatu graf (χ(G)) merupakan jumlah warna minimal yang dibutuhkan untuk
mewarnai komponen-komponen (verteks atau edge) dari graf G. Pemberian warna minimal
pada sebuah graf merupakan pekerjaan yang sulit. Sehingga dibutuhkan suatu algoritma
tertentu untuk pemberian warna dari suatu graf. A. Schaerf melalui penelitiannya yang berjudul
A Survey of Automated Timetabling melakukan survei terhadap berbagai macam algoritma yang
digunakan dalam proses penjadwalan. Salah satu algoritma pewarnaan graf yang dijelaskan
dalam penelitiannya adalah algoritma welch-powell. Schaerf (1999) menyatakan bahwa pada
algoritma welch-powell, verteks dengan derajat terbesar diwarnai terlebih dahulu. Sebab
verteks dengan derajat yang besar merupakan verteks yang paling sulit diwarnai.
Langkah kerja algoritma welch-powell adalah:
1. Urutkan verteks-verteks dari sebuah graf dalam derajat yang menurun.

2. Gunakan sebuah warna untuk mewarnai verteks pada urutan pertama dan untuk mewarnai
setiap verteks dalam daftar yang tidak ber-adjacent dengan verteks yang diwarnai
sebelumnya.
3. Mulai lagi dengan urutan derajat yang paling tinggi berikutnya dan ulangi proses pewarnaan
verteks yang belum diwarnai dengan warna yang lainnya.
4. Ulangi pemberian warna hingga semua verteks telah terwanai.
3. Perancangan Sistem

Cara kerja sistem yang dibangun pada penelitian ini dibagi menjadi 3 tahap yaitu:
1. Tahap pembentukan paket matakuliah
Hal-hal penting yang terjadi pada tahap ini adalah pembentukan relasi antar
matakuliah-matakuliah yang ditawarkan, pewarnaan graf dan pengelompokkan verteks-verteks
matakuliah yang berwarna sama. Kumpulan verteks-verteks matakuliah yang bewarna sama
inilah yang disebut dengan paket matakuliah. Berikut adalah gambaran detil dari proses-proses
yang terjadi pada tahap ini:

Gambar 1. Diagram Alir Tahap Pembentukan Paket Matakuliah
2. Tahap alokasi paket matakuliah ke slot waktu
Hal-hal penting yang terjadi pada tahap ini adalah pembentukan relasi antara paket
matakuliah dan slot waktu dengan memperhatikan batasan waktu dosen yang berhalangan
untuk mengajar dan batasan waktu matakuliah dari prodi lain. Dari relasi yang terbentuk, dibuat
penentuan alokasi paket matakuliah dengan memprioritaskan alokasi verteks paket matakuliah
yang derajatnya terkecil. Berikut adalah gambaran detil dari proses-proses yang terjadi pada
tahap ini:

Gambar 2. Diagram Alir Tahap Alokasi Paket Matakuliah ke Slot Waktu

3. Tahap alokasi matakuliah ke ruang kelas

Hal-hal penting yang terjadi pada tahap ini adalah pembentukan relasi antara
matakuliah dan ruang kelas dengan memperhatikan batasan kapasitas ruang kelas dan batasan
sasaran prodi dari ruang kelas. Kemudian, dibuat penentuan alokasi matakuliah dengan
memprioritaskan alokasi verteks paket matakuliah yang derajatnya terkecil. Berikut adalah
gambaran detil dari proses-proses yang terjadi pada tahap ini:

Gambar 3. Diagram Alir Tahap Alokasi Matakuliah ke Ruang Kelas
4.

Implementasi Sistem

4.1 Implementasi Pemodelan Relasi Matakuliah
Matakuliah yang memiliki kode sama atau diajar oleh dosen yang sama tidak boleh
dialokasikan dalam slot waktu yang sama. Maka dari itu, matakuliah-matakuliah tersebut
mendapatkan warna yang berbeda agar tidak berada dalam paket yang sama. Berikut adalah
hasil implementasi pemodelan relasi matakuliah tersebut:

Gambar 4. Pemodelan Relasi Matakuliah

4.2 Implementasi Pemodelan Relasi Paket Matakuliah dan Slot Waktu

Jika dalam suatu paket terdapat matakuliah yang sudah mendapatkan alokasi slot waktu,
maka paket yang bersangkutan hanya berelasi dengan slot waktu tersebut. Dan, jika dalam
paket terdapat matakuliah yang diajar oleh dosen yang berhalangan hadir pada suatu slot
waktu, maka paket matakuliah yang bersangkutan tidak akan berelasi dengan slot waktu yang
berhalangan tersebut.
Berikut adalah hasil implementasi pemodelan relasi paket matakuliah dan slot waktu:

Gambar 5. Pemodelan Relasi Paket Matakuliah dan Slot Waktu
4.3 Implementasi Pemodelan Relasi Matakuliah ke Ruang Kelas
Relasi ada antara matakuliah dan ruang kelas jika kapasitas matakuliah lebih kecil atau
sama dengan kapasitas ruang kelas dan sasaran prodi dari ruang kelas sama dengan prodi dari
matakuliah. Berikut adalah hasil implementasi pemodelan relasi matakuliah dan ruang kelas:

Gambar 6. Pemodelan Relasi Matakuliah dan Ruang Kelas

4.4

Implementasi Pewarnaan Graf sebagai

Alternatif Solusi


Kombinasi isi paket matakuliah dapat terjadi jika pewarnaan awal dilakukan pada verteks
yang berbeda-beda. Berikut adalah contoh pewarnaan graf yang menghasilkan kombinasi isi
paket matakuliah:

Gambar 7. Kombinasi Isi Paket Matakuliah I

Gambar 8. Kombinasi Isi Paket Matakuliah II
Pada gambar 7 dan 8, terlihat dengan jelas adanya perbedaan isi kumpulan verteks yang
berwarna sama. Dengan demikian, adanya kombinasi isi paket matakuliah dapat dijadikan
alternatif solusi pembentukan paket matakuliah.
5. Analisis Sistem
1.

Pada setiap warna yang terbentuk sering ditemukan matakuliah dari semester yang sama
berjumlah lebih besar atau lebih kecil dari nilai konstrain jumlah matakuliah yang diijinkan
per semester sehingga perlu dilakukan pemecahan paket matakuliah. Hasil pemecahan
paket matakuliah dikonstruksi ulang dan dilakukan pewarnaan graf menggunakan algoritma
welch-powell. Proses pemecahan paket matakuliah dan konstruksi ulang dilakukan terus
menerus hingga konstrain terpenuhi atau hingga warna yang terbentuk telah melebihi 20

warna.

2.

Untuk menganalisa hasil jadwal yang terbentuk, dilakukan 5 percobaan generate jadwal
dengan susunan urutan prodi yang berbeda-beda. Berikut adalah daftar percobaan
tersebut:

No Percobaan

Urutan Prodi yang Digenerate Jadwalnya

1

MKH-Manj-Akun-TI-SI-Arstk-Despro-Bio-Theo

2

MKH-Theo-Bio-Despro-Arstk-SI- TI-Akun-Manj


3

MKH-Despro-Arstk-TI-SI-Manj-Bio-Akun-Theo

4

MKH-Despro-Arstk-TI-SI-Manj-Bio-Akun-Theo

5

MKH-Arstk-Akun-Bio-Manj-TI-Despro-Theo-SI
Tabel 1. Daftar Percobaan

Percobaan generate jadwal ini akan diuji pada 2 kumpulan data yaitu data yang
mengikutsertakan matakuliah lintas prodi non MKH dan data yang tidak mengikutsertakan
matakuliah lintas prodi non MKH. Hal-hal yang akan dicatat pada percobaan ini adalah jumlah
matakuliah yang tabrakan, total seluruh solusi, total seluruh solusi yang valid (solusi yang
memenuhi konstrain jumlah matakuliah yang diijinkan per semester pada setiap slot waktu) dan
total matakuliah yang tidak mendapat ruangan.
Berikut adalah data hasil percobaannya:

Tabel 2. Hasil Percobaan Generate Jadwal pada Data dengan Lintas Prodi Non MKH

Tabel 3. Hasil Percobaan Generate Jadwal pada Data tanpa Lintas Prodi Non MKH

Berdasarkan data jadwal hasil percobaan:
1. Pengikutsertaan data matakuliah lintas prodi non MKH mengakibatkan kekacauan jadwal
yang terbentuk. Jumlah solusi yang dihasilkan, jumlah solusi yang valid dan jumlah
matakuliah yang tidak mendapat ruang berubah-ubah seiring dengan berubahnya urutan
prodi.
Sedangkan, hasil generate jadwal pada data tanpa matakuliah lintas prodi non MKH memiliki
jumlah solusi yang dihasilkan, jumlah solusi yang valid dan jumlah matakuliah yang tidak
mendapat ruang tetap jumlahnya walaupun urutan prodi berubah-ubah.
Hal tersebut disebabkan oleh matakuliah lintas prodi non MKH mendapatkan alokasi slot
waktu yang berbeda-beda saat proses generate jadwal di prodi yang menawarkan
matakuliah lintas prodi tersebut.
2. Adanya perbedaan jumlah total solusi dengan total solusi yang valid disebabkan oleh:

• Kecilnya nilai konstrain jumlah matakuliah yang diijinkan per semester pada setiap slot
waktu.

• Hasil kombinasi yang terjadi dalam suatu paket matakuliah menyebabkan proses
pemecahan paket matakuliah untuk memenuhi konstrain jumlah matakuliah yang diijinkan
per semester pada setiap slot waktu menjadi tidak sempurna.
3. Pembentukan paket matakuliah yang dilakukan sistem terkadang memberikan kerugian. Jika
dalam suatu paket terdapat matakuliah yang sudah mendapatkan plot waktu (misalnya
matakuliah MKH), maka matakuliah-matakuliah yang 1 paket dengannya akan dialokasikan
ke slot waktu yang sama dengan alokasi slot waktu matakuliah MKH.
Kerugiannya adalah:

• Jika matakuliah yang berada dalam 1 paket dengan matakuliah MKH berjumlah banyak,
maka akan mengakibatkan adanya matakuliah yang dialokasikan di slot waktu tersebut

tidak mendapatkan ruang kelas.
Pada kasus ini, alternatif solusi memiliki peranan yang penting. Alternatif solusi dapat
digunakan untuk mencari paket dengan matakuliah yang berjumlah lebih sedikit untuk
berjalan bersama-sama dengan matakuliah MKH.

• Ketergantungan alokasi slot waktu juga menyebabkan tidak meratanya distribusi
matakuliah di slot-slot waktu yang tersedia.
4. Tidak adanya matakuliah yang bertabrakan pada percobaan yang dilakukan menunjukkan
bahwa pemodelan relasi matakuliah sudah tepat. Sehingga saat proses pewarnaan graf,
matakuliah yang memiliki kode yang sama atau diajar oleh dosen yang sama mendapatkan
warna yang berbeda-beda.

6. Kesimpulan
Berdasarkan penelitian yang telah dilakukan, maka dapat diambil kesimpulan sebagai
berikut:
1.

Model relasi graf matakuliah yang dirancang pada sistem dan pemberian warna pada graf
menggunakan algoritma welch-powell dapat membentuk paket-paket matakuliah yang
bebas dari tabrakan.

2.

Paket-paket matakuliah yang terbentuk berdasarkan algoritma welch-powell tidak dapat
langsung dialokasikan ke slot waktu sebab masih ada konstrain yang belum terpenuhi.
Modifikasi pada paket seperti pemecahan matakuliah berdasarkan semester diperlukan
untuk memenuhi konstrain tersebut.

3.

Sistem paket matakuliah yang dihasilkan sistem menyebabkan ketergantungan dalam hal
alokasi ke slot waktu. Hal ini dapat menimbulkan tidak meratanya distribusi matakuliah di
slot-slot waktu.

4.

Adanya kombinasi solusi yang dihasilkan oleh sistem mampu membuat seluruh matakuliah
mendapatkan ruang kelas

5.

Penjadwalan yang dihasilkan oleh sistem lebih cocok jika data matakuliah lintas prodi non
MKH tidak diikutsertakan.

7.

Daftar Pustaka

Buckley, Fred dan Marty Lewinter. 2003. A Friendly Introduction to Graph Theory. New Jersey:
Prentice Hall.
Deo, Narsingh. 1994. Graph Theory with Applications to Engineering and Computer Science.
New Delhi: Prentice Hall.
Gross, Jonathan dan Jay Yellen. 1999. Graph Theory and Its Application. Boca Raton:
CRC
Press.
Lipschutz, Seymour dan Marc Lipson. 1997. Discrete Mathematics. McGraw-Hill Professional.
Rob, Peter dan Carlos Coronel. (2007). Database Systems Design, Implementation
and
Management 7th Edition. Boston: Thompson Course Technology.
Schaerf, A. 1999. A Survey of Automated
Timetabling. Diakses 19 Oktober 2008
Scha99.pdf
dari www.diegm.uniud.it/satt/papers/
Schildt, Herbert. 2008. Herb Schildt's Java Programming Cookbook. New York: McGraw-Hill.