Anda di halaman 1dari 5

Analisis dan Implementasi Data Mining dengan Algoritma Apriori dan Hash-Based

Technique pada Algoritma Genetika untuk Mereduksi Jumlah Kemungkinan Solusi


dalam Proses Penjadwalan Kuliah

Delfi Kusumawardhani1, Shaufiah2, Alfian Akbar Gozali3


1,2,3
Fakultas Informatika Institut Teknologi Telkom, Bandung
1
delfikusumawardhani@gmail.com, 2ufi@ittellkom.ac.id, 3alfian.akbar.gozali@gmail.com

Abstrak
Permasalahan penjadwalan matakuliah merupakan permasalahan yang kompleks dikarenakan terdapat
kondisi keterkaitan antara constraint yang harus dipenuhi. Tujuan dari tugas akhir ini adalah
menyelesaikan permasalahan penjadwalan kuliah dengan metode dari suatu algoritma optimasi yaitu
Algoritma Genetika (GA) yang digabungkan dengan teknik data mining yaitu asosiasi menggunakan
Algoritma Apriori dengan struktur data hash. Penjadwalan kuliah dengan menggabungkan GA dan
Apriori (dengan teknik hash-based) mampu menghasilkan jadwal kuliah yang bebas constraint dengan
pembangkitan solusi yang lebih sedikit dibandingkan penjadwalan kuliah dengan menggunakan GA saja.
Hasil penelitian memperlihatkan bahwa penjadwalan matakuliah dengan pemanfaatan data mining
dengan algoritma Apriori dan teknik hash-based dapat mengurangi jumlah pembangkitan solusi hingga
kurang lebih 29,28%.

Kata kunci : Penjadwalan matakuliah, data mining, asosiasi, Algoritma Genetika, constraint
Abstract
Course scheduling problem is a complex problem because there is a linkage between the constraint conditions
that must be met. The purpose of this final project is to solve scheduling problems with the lecture method of
optimization algorithms, namely a Genetic Algorithm (GA) is combined with data mining techniques, namely
association using Apriori algorithm with hash data structure. Course scheduling process by combining GA
and Apriori (with hash-based techniques) are able to produce a schedule of free constraint by generating
solution with less than college scheduling using GA alone. The results showed that subjects with the use of
scheduling data mining by Apriori algorithm and hash-based technique can reduce the number of generating
solutions to approximately 29.28%.

Key Word : Course Scheduling, data mining, association, Genetic Algorithm, constraint

1. Pendahuluan Dalam Tugas Akhir ini, proses penjadwalan


mata kuliah dibagi menjadi dua tahap. Pada tahap
Jadwal mata kuliah merupakan hal yang sangat pertama, salah satu metode dalam data mining yaitu
penting bagi kelancaran proses belajar mengajar di asosiasi digunakan untuk menemukan relasi atau
setiap perguruan tinggi. Penyusunan jadwal mata keterkaitan di antara variabel-variabel seperti mata
kuliah adalah sebuah masalah periodik yang selalu kuliah mata kuliah yang pernah diambil oleh
dihadapi oleh sebuah perguruan tinggi. Dasar mahasiswa. Untuk metode ini, penulis menggunakan
permasalahan penyusunan jadwal kuliah di algoritma Apriori dengan struktur data hash.
perguruan tinggi adalah bagaimana menempatkan Algoritma Apriori adalah algoritma yang sudah khas
perkuliahan pada slot waktu terbatas pada ruangan dalam teknik asosiasi. Sedangkan teknik hash-based
kuliah yang sesuai untuk pertemuan tersebut dan digunakan untuk menambahkan struktur data dan
mahasiswa bisa menghadiri semua perkuliahan yang meningkatkan efisiensi dari algoritma Apriori
diikutinya. Sebuah jadwal akan mudah disusun dengan mengurangi jumlah candidate itemset.
apabila hanya terdapat sedikit komponen yang Dalam tahap ini, akan dihasilkan serangkaian
dijadwalkan, namun akan menjadi rumit apabila frequent itemset yang dideterminasikan oleh
komponen yang dijadwalkan berjumlah banyak. parameter minimum support (minsup).
Dengan banyaknya factor yang mempengaruhi Selanjutnya pada tahap kedua, proses
penyusunan suatu jadwal seperti jumlah mata kuliah pembuatan jadwal kuliah dilakukan sesuai dengan
yang ditawarkan, dosen, ruangan kelas, jumlah SKS fungsi-fungsi yang telah dirancang pada penelitian
dan slot waktu yang sedikit menjadikan penyusunan sebelumnya menggunakan algoritma optimasi yaitu
jadwal perkuliahan lebih rumit. Faktor-faktor algoritma Genetika. Pada umumnya, proses
tersebut selanjutnya akan menentukan banyaknya inisialisasi dalam algoritma Genetika dilakukan
jenis variabel yang perlu diperharikan. Antar dengan cara random. Namun pada Tugas Akhir kali
variabel tersebut terdapat keterkaitan atau relasi ini, penulis menyisipkan frequent itemset yang telah
yang harus diperhatikan dan dianalisis. dihasilkan pada tahap pertama tadi ke dalam proses
inisialisasi. Dengan adanya penyisipan frequent

2013 1
itemset tersebut di proses inisialisasi, maka
pencapaian solusi yang optimum akan lebih cepat
sehingga diharapkan jumlah kemungkinan solusi
yang akan diproses algoritma Genetika akan
berkurang. Secara umum alur proses dari sistem
penjadwalan kuliah ini dapat dilihat pada Gambar 1.

Data Frequent
Dataset
Preprocessing Itemset Mining

Data
Pertemuan
Frequent
Penjadwalan
dengan Algoritma
Itemset Gambar 3.5 Pembangkitan frequent 2-itemset
(hasil
Optimasi
Asosiasi)
Selanjutnya langkah yang sama untuk
Data
ruangan
pembangkitan frequent 3-itemset, sampai sudah
Jadwal tidak ada candidate itemset lagi yang bisa
Kuliah dibangkitkan dari frequent itemset yang ada.
Gambar 1. Gambaran sistem secara global

2. Teknik Asosiasi Data Mining dengan


Algoritma Apriori dan Hash-Based
Technique
Pada tahap ini, data transaksi yang telah
Gambar 3 Pembangkitan frequent 3-itemset
dihasilkan dari proses preprocessing bersamaan
dengan nilai minimum support selanjutnya dijadikan
inputan pada program untuk mendapatkan frequent
3. Penjadwalan Kuliah dengan Algoritma
itemset. Algoritma yang digunakan untuk tahap ini
Genetika
adalah algoritma Apriori dangan teknik hash-based
3.1 Representasi Individu
untuk menambahkan struktur data tree. Berikut ini
Satu hal yang harus selalu diingat adalah
adalah contoh proses frequent itemset mining yang
satu kromosom harus merepresentasikan satu
menggunakan algoritma Apriori dengan teknik hash-
solusi. Dalam hal ini, satu kromosom harus
based.
merupakan satu jadwal kuliah yang utuh untuk
Pertama, untuk pembangkitan frequent 1-
semua pertemuan kuliah.[18]
itemset digunakan prosedur pembangkitan frequent
Suatu gen bisa dipandang terdiri dari 35
itemset dari algoritma Apriori biasa.
slot waktu untuk pertemuan kuliah (1 slot = 2
jam). Kita bisa menggunakan gen yang bernilai
integer yang menyatakan indeks dari
pertemuan kuliah, yaitu 1 sampai 329. Dalam
hal ini, dibutuhkan basis pertemuan kuliah
Gambar 2 Pembangkitan frequent 1-itemset yang berisi 6 kolom atau field, yaitu Kode MK,
Pertemuan-ke, Kode Kelas, Jumlah
Kemudian, untuk pembangkitan frequent Mahasiswa, dan Kode Dosen.
itemset level berikutnya baru digunakan teknik hash-
based. Frequent 1-itemset dijadikan root dalam tree, Tabel 1 Basisdata pertemuan kuliah
kemudian candidate 2-itemset hasil scan dari No Kode Kelas Pertemu Jumla Kode
. MK an ke- h mhs Dosen
database disimpan di dalam leaf node seesuai
1 CS1113 IF-3A-01 1 40 ADE
dengan fungsi hash yang ada. Penghitungan nilai 2 CS1113 IF-3A-01 2 40 ADE
support hanya pada candidate itemset yang 3 CS1113 IF-3A-02 1 40 ATW
merupakan subset dari root karena candidate itemset
yang bukan subset dari item di root sudah pasti 34 IE4883 IF-PIL- 2 80 AES
5 03
bukan frequent itemset.
Selain itu, akan digunakan juga variabel yang
bernilai integer yang menyatakan indeks dari
ruangan, hari dan slot seperti berikut ini :

2013 2
Tabel 2 Indeks dari ruangan, hari, dan slot J2 = jumlah pelanggaran batasan ke-2 (tidak
N Ruan N Hari N Slot bentrok kelas);
o. g o. o.
1 A101 1 Senin 1 06.30 J7 = jumlah pelanggaran batasan ke-7 (jarak
2 A102 2 Selasa 2 08.30 antarpertemuan mata kuliah)
Dengan demikian, dapat dituliskan rumus
68 K 6 Sabtu 6 16.30 fungsi fitness-nya ke dalam persamaan berikut
ini :
Kemudian dari data-data di atas, kita bisa
membuat suatu kromosom sebagai berikut : (3.1)
di mana
(3.2)
adalah total dari jumlah pelanggaran dikalikan
dengan penaltinya masing-masing. N adalah
jumlah constraint, Ji adalah jumlah
pelanggaran contraint ke-i, dan Pi adalah
penalti untuk pelanggaran constraint ke-i.
Gambar 4 Suatu representasi kromosom Konstanta merupakan suatu bilangan yang
(individu) untuk masalah penjadwalan kuliah dianggap sangat kecil untuk menghindari
dengan menggunakan 345 gen. Setiap gen pembagian dengan 0.
menyatakan hari, ruangan, dan slot.
3.3 Inisialisasi Populasi
3.2 Fungsi Fitness Inisialisasi populasi dilakukan secara semi
Terdapat banyak cara untuk membangun deterministik dengan memperhatikan semua
fungsi fitness, untuk menghasilkan fungsi fitness hard constraints. Artinya, pembangkitan gen-
yang baik, kita perlu memahami batasan-batasan gen untuk membangun kromosom dilakukan
yang diberikan sehingga dapat prioritas untuk melalui pengecekan terhadap hard constraints.
setiap batasan yang ada dapat ditentukan. Frequent itemset yang telah dihasilkan pada
Pertama, batasan yang merupakan hard proses data mining sebelumnya dijadikan
constraints tentu saja harus diberikan prioritas inputan untuk proses ini. Misalkan terdapat
yang lebih tinggi dibandingkan soft constraints. frequent 2-itemset DU2002 dan CS1114, maka
Selanjutnya, tentukan penalti (hukuman) untuk kedua matakuliah ini akan diplotkan jadwalnya
setiap pelanggaran constraint.[18] terlebih dahulu, setelah itu baru mata kuliah
Pada penelitian kali ini, setiap satu bentrok lainnya yang tidak ada dalam frequent itemset
dosen diberikan penalti sebesar 1000. Artinya, dijadwalkan secara random.
jika pada jadwal yang dihasilkan ternyata Mata kuliah-mata kuliah yang ada di dalam
terdapat 5 pertemuan yang bentrok di level frequent itemset tidak boleh memiliki jadwal
dosen, maka penalti yang diberikan adalah 5 x yang sama. Hal ini dikarenakan mahasiswa
1000 = 5000. pada umumnya mengambil kedua matakuliah
ini bersamaan, sehingga jika jadwalnya sama,
Tabel 3 Batasan-batasan dan nilai penaltinya besar kemungkinan terjadinya bentrok.
untuk masalah penjadwalan kuliah
No. Batasan Penalti 3.4 Seleksi
1 Tidak bentrok dosen 1000 Seleksi digunakan untuk memilih individu-
2 Tidak bentrok kelas 1000 individu mana saja yang akan dipilih untuk
3 Tipe ruangan sesuai dengan 1000 proses pindah silang dan mutasi. Seleksi
tipe kelas digunakan untuk mendapatkan calon induk
4 Memenuhi permintaan jadwal 1000 yang baik. Semakin tinggi nilai fitness suatu
oleh departemen individu, semakin besar kemungkinannya
5 Distribusi jadwal per dosen 50 untuk terpilih.
6 Distribusi jadwal per kelas 50 Langkah pertama yang dilakukan dalam
7 Jarak antarpertemuan mata 50 seleksi ini adalah pencarian nilai fitness. Nilai
kuliah
fitness ini yang nantinya akan digunakan pada
tahap-tahap seleksi berikutnya. Masing-masing
Pemberian penalti seperti pada tabel di atas
individu dalam wadah seleksi akan menerima
belum tentu yang paling baik. Secara praktis,
probabilitas reproduksi yang tergantung pada
dapat dilakukan observasi pemberian penalti
nilai obyektif dirinya sendiri terhadap nilai
tersebut selama proses berjalan. Selanjutnya,
obyektif dari semua individu dalam wadah
misalkan
seleksi tersebut.
J1 = jumlah pelanggaran batasan ke-1 (tidak
bentrok dosen);

2013 3
3.5 Elitisme
Elitisme adalah prosedur untuk meng-copy
individu yang mempunyai nilai fitness
tertinggi. Pada tahap ini, nilai fitness individu
terbaik dijaga dan nilainya cenderung akan
terus meningkat. Sehingga jumlah generasi
yang dipakai untuk mendapat individu terbaik
tidak terlalu banyak.

3.6 Mutasi
Pada penelitian kali ini, reproduksi pada Gambar 4.14 Pengaruh Apriori terhadap Best
algoritma genetika hanya menggunakan mutasi Generasi
(tanpa cross-over). Pada proses mutasi ini
diberikan batasan bahwa mutasi gen (yang Selain itu, GA+Apriori juga dapat
berarti mengubah jadwal pertemuan kelas) mempercepat penemuan solusi optimal, dilihat
hanya diperbolehkan untuk gen-gen yang dari rata-rata best generasi yang diperoleh. Hal
melanggar constraints. ini dapat terjadi karena penggunaan inisialisasi
solusi dari frequent itemset dapat mengurangi
4. Pengujian Sistem jumlah solusi yang dibangkitkan selanjutnya,
4.1 Tujuan Pengujian tidak seperti inisialisasi biasa pada GA yang
Menganalisis pengaruh solusi dari frequent membangkitkan seluruh solusinya secara
itemset yang dijadikan inisialisasi populasi random. Untuk lebih jelasnya berikut ini
pada GA dilihat dari nilai fitness dan jumlah terdapat grafik yang memperlihatkan
solusi yang dihasilkan serta pada generasi ke bagaimana Apriori dapat mempengaruhi proses
berapa solusi optimum dicapai. inisialisasi pada GA. Misal diambil salah satu
kombinasi parameter GA yang menghasilkan
4.2 Analisis Hasil Pengujian solusi paling optimal, yaitu 10 generasi, 25
individu, dan probabilitas mutasi 0.1 kemudian
dibandingkan dengan kombinasi tersebut yang
digabungkan dengan minsup Apriori 4%.

Gambar 4.13 Pengaruh Apriori terhadap nilai


Fitness

Dari Gambar 4.13 di atas dapat dilihat


Gambar 4.15 Pengaruh Apriori terhadap
bahwa dengan proses inisialisasi menggunakan
proses inisialisasi GA
frequent itemset dapat memperbaiki optimasi
solusi. Penjadwalan matakuliah dengan
Grafik pada Gambar 4.15 menunjukkan
menggabungkan Apriori dengan GA
proses inisialisasi GA+Apriori menghasilkan
menghasilkan nilai fitness yang lebih baik
nilai fitness yang lebih baik daripada proses
dibandingkan dengan hanya menggunakan GA
inisialisasi GA yang random, dilihat dari nilai
saja.
fitness pada generasi ke-0 yaitu pada saat
pembangkitan populasi awal.
Dengan bertambah cepatnya penemuan
solusi optimum ini, maka proses pencarian
kemungkinan solusi yang pada sistem ini
merupakan proses peng-update-an nilai fitness
pada individu dalam GA menjadi lebih efisien.
Hal ini dapat dibuktikan dari hasil rata-rata
jumlah solusi yang dihasilkan dari GA dengan
dan tanpa Apriori.

2013 4
[4] Fangming, Guo and Hua Song (2010).
Research and Application of Data-Mining
Technique in Timetable Scheduling
[5] Fernandez, Antonio. Membangun Aplikasi
Penyusunan Jadwal Kuliah Menggunakan
Algoritma Semut.
[6] Han, Jiawei and Micheline Kamber. 2001.
Data Mining Concepts and Technique. San
Diego, USA : Academic Press
[7] Meiwati, Leni dan Metty Mustikasari. Aplikasi
Gambar 4.16 Pengaruh Apriori terhadap Data Mining Menggunakan Aturan Asosiasi
Jumlah Kemungkinan Solusi dengan Metode Apriori untuk Analisis
Keranjang Pasar pada Data Transaksi
Gambar 4.16 menunjukkan bahwa jumlah Penjualan Apotek
individu (solusi) yang dibangkitkan dari proses [8] R. Agrawal and R. Srikant. (1994). Fast
penjadwalan menggunakan GA dan Apriori Algorithm for Mining Association Rules. In
lebih sedikit dari jumlah individu (solusi) pada Proceedings of the International Conference
proses penjadwalan menggunakan GA saja. on Very Large Data Bases.
[9] Santoso, Leo Willyanto. Pembuatan
5. Kesimpulan dan Saran Perangkat Lunak Data Mining untuk
Berdasarkan analisis hasil pengujian dapat Penggalian Kaidah Asosiasi Menggunakan
disimpulkan bahwa Penjadwalan matakuliah dengan Metode Apriori.
pemanfaatan data mining dengan algoritma Apriori [10] Sarwosri. (2009). Implementasi Penjadwalan
dan teknik hash-based dapat mengurangi jumlah Matakuliah Menggunakan Algoritma Koloni
pembangkitan solusi hingga kurang lebih 29,28%. Semut (AKS) di Jurusan Teknik Informatika
Penjadwalan matakuliah dengan Algoritma Genetika ITS.
yang digabungkan dengan Apriori dapat [11] Smith, Wayne. (2005). Applying Data
meningkatkan performansi sistem sehingga nilai Mining to Scheduling Courses at a
fitness yang dihasilkan lebih baik dan penemuan University, Communications of the
nilai best fitness menjadi lebih cepat sehingga Association for Information Systems. 16: 463-
meningkatkan efisiensi penemuan solusi karena 474
dengan proses inisialisasi dari frequent itemset [12] Sukarya, Oyo. (2006). Perbandingan
menghindari pembangkitan solusi yang lebih buruk. Pencarian Frequent Itemset Menggunakan
Algoritma Cut Both Ways dan Algoritma
Untuk pengembangan sistem lebih lanjutnya Apriori
dapat dilakukan hal berikut : [13] Suryanto, Dhadhang. (2008). Penerapan
1. Mencoba memadukan algoritma local Algoritma Hash-Based (Studi Kasus : Market
search lain untuk memperbaiki solusi, Basket Analysis)
seperti Ant Colony Optimization, Tabu [14] Suyanto, 2008. Algoritma Optimasi,
Search, Simulated Annealing dan lain-lain. Deterministik atau probabilistik, Penerbit
2. Mencoba memadukan teknik data mining Graha Ilmu, Yogyakarta.
lain seperti Single Dimensional Association [15] Viger, Phillippe Fournier.(2008).A Sequential
Rule, clustering dan klasifikasi, untuk Pattern Mining Framework.
memperbaiki performansi penjadwalan. <http://www.philippe-fournier-
3. Mencoba menyisipkan hasil data mining di viger.com/spmf/index.php?link=documentatio
setiap iterasi dari algoritma local search, n.php#example1>
bukan hanya di proses inisialisasi saja. [16] Wadhera, Gauhar,. (2004). Association Rule
Mining: Extension of Direct Hashing and
Daftar Pustaka: Pruning Concepts to Quantitative Databases
[17] Wahyuni, Elly Tri. (2005). Impelementasi
[1] Amiruddin. Penerapan Association Rule Multiple Minimum Supports dalam Mining
Miningpada Data Nomor Unik Pendidikan Association Rule dengan Algoritma
dan Tenaga Kependidikan untuk Menemukan MSApriori
Pola Sertifikasi Guru [18] Wang, Yao-Te, et. al (2008). On the
[2] Bhakti, Aris Setya. (2012). Algoritma Application of Data Mining Technique and
Genetika Sub-Populasi dengan Mutasi Genetic Algorithm to an Automatic Course
Terarah untuk Optimasi Penjadwalan Kuliah Scheduling System
[3] Buliali, Joko Lianto, et. al. (2008).
Penjadwalan Matakuliah dengan
Menggunakan Algoritma Genetika dan
Metode Constraint Satisfaction

2013 5