Abstrak
Jadwal penting artinya dalam keberlangsungan proses belajar mengajar di suatu perguruan tinggi
khususnya di Politeknik Caltex Riau (PCR). Penjadwalan kuliah yang dilakukan oleh BAAK (Bagian
Administrasi dan Akademik Kemahasiswaan) Politeknik Caltex Riau dilakukan dengan memproses data
data perkuliahan dengan memanfaatkan software Microsoft Excel untuk menghasilkan jadwal kuliah.
Tingkat ketelitian yang tinggi mengurangi fungsi keefisienan dan terjadinya human error masih besar.
Contohnya kemungkinan jadwal kuliah yang terjadi pada jam dan hari yang sama pada pemakaian
ruangan ataupun pada jadwal mengajar dosen. Atas dasar itu, maka dibuatlah sebuah sistem untuk
mengoptimalkan penjadwalan kuliah sebagai solusi dalam menyelesaikan masalah penjadwalan kuliah
yang terjadi di PCR. Algoritma Particle Swarm Optimization (PSO) sebagai algoritma untuk
penyelesaian masalah optimasi dengan proses pembangkitan posisi dan velocity awal, update velocity
dan update posisi sebagai 3 tahapan utamanya sehingga didapatkan solusi berupa jadwal kuliah.
Berdasarkan penelitian yang telah dilakukan masih terdapat data bentrok jadwal kuliah yang dapat
dilihat dari nilai fitness sistem sehingga hasil yang didapat dari sistem penjadwalan kuliah ini belum
dapat diaplikasikan pada penjadwalan kuliah yang sesungguhnya. Sistem ini dibangun menggunakan
bahasa pemograman web PHP dan database MySQL.
Abstract
Course schedule play crucial role in teaching and learning at university, especially in Politeknik
Caltex Riau. The mechanism of activity in PCR depends on it. Currently the process of schedule
management is conducted manually by PCR Student Administration using Microsoft Excel to manage
courses schedule. This procedure requires high accuracy that decrease efficiently way, long time span of
process, and the possibility of errors which plot out schedule clash. Clashes of schedule drag not only
time but also the usage of room, due to this matter, the scheduling would not be optimal. Based on it, the
optimal scheduling require an application that provide solution for the problem that occurs in PCR
schedule. The method used to optimize the application is Particle Swarm Optimization Algorithm, even
though PSO algorithm is used to produce an optimal solution, there are still clashes scheduling course
conclude that this method can not be applied in a real course scheduling. The application system is built
by using PHP web programming language and MySQL as a database..
1 PENDAHULUAN
Jadwal penting artinya dalam keberlangsungan proses belajar mengajar di suatu perguruan
tinggi khususnya di Politeknik Caltex Riau (PCR). Penjadwalan kuliah yang dilakukan oleh
BAAK (Bagian Administrasi dan Akademik Kemahasiswaan) Politeknik Caltex Riau dilakukan
dengan memproses data data perkuliahan dengan memanfaatkan software Microsoft Excel
untuk menghasilkan jadwal kuliah. Tingkat ketelitian yang tinggi mengurangi fungsi
keefisienan dan terjadinya human error masih besar. Contohnya kemungkinan jadwal kuliah
yang terjadi pada jam dan hari yang sama pada pemakaian ruangan ataupun pada jadwal
mengajar dosen. Atas dasar itu, maka dibuatlah sebuah sistem untuk mengoptimalkan
penjadwalan kuliah sebagai solusi dalam menyelesaikan masalah penjadwalan kuliah yang
2 Raisha Ashila Rachman
terjadi di PCR. Optimasi penjadwalan kuliah adalah memaksimalkan teknik mengatur waktu
perkuliahan atau belajar mengajar. Algoritma Particle Swarm Optimization (PSO) sebagai
algoritma untuk penyelesaian masalah optimasi sehingga didapatkan solusi berupa jadwal
kuliah.
2 Dasar Teori
2.1 Optimasi
Berdasarkan buku yang ditulis oleh Suyanto (2010) disebutkan bahwa optimasi merupakan
aktivitas untuk mendapatkan hasil yang terbaik atau optimal (nilai efektif yang dapat dicapai)
dari pilihan yang tersedia. Tujuan dari setiap keputusan adalah untuk meminimumkan usaha
yang dilakukan atau memaksimumkan keuntungan yang diperoleh. Usaha atau keuntungan
tersebut secara praktek dinyatakan sebagai fungsi dengan variabel keputusan yang akan dicari
nilai optimumnya. Optimasi sangat berguna dihampir segala bidang dalam rangka melakukan
usaha secara efektif dan efisien untuk mencapai target hasil yang ingin dicapai. [5]
Pada saat sekarang ini PSO telah mengalami banyak perubahan. Peneliti peneliti
yang telah mempelajari dan menggunakan algoritma telah mengembangkan versi,
aplikasi dan telah mengeluarkan teori teori pengembangan beberapa parameter dan
aspek dari algoritma PSO ini. Shi dan Eberhart (1998) melakukan variasi atau
modifikasi terhadap algoritma orisinil untuk mengendalikan stagnasi partikel dengan
memasukkan parameter inertia weighting (w) pada persamaan pertama PSO
(Alrijadjis, 2010)[1]. Pada kasus penjadwalan kuliah ini, partikel adalah satu jadwal
kuliah yang terdiri dari beberapa kelas. Terdapat 3 tahap dari metode PSO pada
permasalahan penjadwalan kuliah, sebagai berikut [2] :
1. Pembangkitan posisi dan velocity awal.
Proses dari pembangkitan posisi X dan kecepatan Y ini menggunakan fungi rand.
Pembangkitan partikel posisi dan partikel kecepatan dengan notasi partikel ke i pada
waktu ke k menggunakan batas atas (Xmax) dan batas bawah (Xmin) seperti persamaan berikut
[1][2] :
= Xmin+ rand (Xmax Xmin) (1)
= Xmin + rand (Xmax Xmin) (2)
Dalam proses random diperlukan slot untuk menampung dari random posisi dan random
kecepatan. Melalui proses pembangkitan partikel ini dapat maka kumpulan partikel dapat
terdistribusi secara acak. Posisi dan kecepatan dari partikel direpresentasikan melalui vector.
Vektor seperti ditunjukkan sebagai berikut :
Jurnal . .. Vol. XX , No. X, Bulan 20XX, XX-XX 3
= ( , ,, )T
= ( , ,, )T
Untuk jenis mata kuliah praktikum mengikuti pembebanan yang telah ditentukan oleh
masing masing prodi tiap jurusan. Misalkan, data kuliah yang digunakan sebagai berikut :
No Batasan
Dari nilai fitness yang didapat akan menentukan pelanggaran pelanggaran konstrain dari
penjadwalan kuliah. Apabila pada tiap - tiap partikel terjadi pelanggaran terhadap konstrain
konstrain diatas maka nilai fitness masing masing partikel akan di-increment sebanyak satu
untuk tiap pelanggaran yang terjadi.
Nilai dari local best dan global best yang didapat akan digunakan untuk proses update
kecepatan dan update posisi. Adapun 3 parameter yang mempengaruhi pencarian pada
algoritma particle swarm optimization ini adalah w (inertia weight), c1 (faktor learning
4 Raisha Ashila Rachman
local partikel), c2 (faktor learning global partikel) yang digabungkan dalam satu
persamaan [3] :
= w * + c1 * rnd * (pi - ) + c2 * rnd * ( - ) (3)
Dimana :
w = faktor inersia (inertia weight)
= kecepatan
= posisi
rnd = parameter random range 0 - 1
c1, c2 = konstanta akselerasi (learning rate)
pi = local best
= global best
i = partikel
Persamaan diatas adalah persamaan yang digunakan untuk proses update velocity (update
kecepatan) untuk masing - masing partikel dengan menggunakan nilai fitness terbaik yang
didapat dari perulangan partikel. Perumusan dari update velocity ini menggunakan beberapa
parameter random (rnd) dengan range 0 - 1 untuk mendapatkan nilai velocity yang baik.
Proses terakhir yang dilakukan adalah update posisi dari nilai update velocity, seperti pada
persamaan [4]:
= + (4)
3 Perancangan
Perancangan mengenai aplikasi ini seperti yang tampak pada gambar-gambar berikut:
Dari nilai fitness yang sudah didapat, kita dapat menentukan nilai local best dan global best.
Adapun nilai local best ini adalah fitness yang mempunyai nilai bentrokan / pelanggaran paling
sedikit dan nilai global best adalah nilai local best yang paling baik dari setiap iterasi sehingga
didapat nilai local best sebagai berikut :
- Local best = 2
Setelah didapat nilai local best kita dapat menentukan nilai global best. Pada perhitungan
manual ini jumlah iterasi = 1 dimaksudkan sebagai iterasi awal. Maka pada iterasi awal nilai
local best sama dengan nilai global best, sehingga didapat nilai global best sebagai berikut :
- Global best = 2
4. Update velocity ( kecepatan ).
Setiap partikel yang berpindah dari satu posisi ke posisi yang lain dipengaruhi oleh suatu
velocity (kecepatan) yang menggambarkan perpindahan posisi. Didalam persamaan untuk
mencari velocity terdapat parameter random yang berada pada range 0 -1 . Nilai posisi (x) awal
yang telah ditentukan dimasukkan ke dalam persamaan velocity [3] :
x0=0 x5=5 x10=10 x15=15 x20=20 x25=25
x1=1 x6=6 x11=11 x16=16 x21=21 x26=26
x2=2 x7=7 x12=12 x17=17 x22=22 x27=27
x3=3 x8=8 x13=13 x18=18 x23=23 x28=28
x4=4 x9=9 x14=14 x19=19 x24=24 x29=29
Jurnal . .. Vol. XX , No. X, Bulan 20XX, XX-XX 9
5. Update posisi
Adapun proses update posisi menggunakan persamaan [4]. Sehingga didapat posisi baru
yang merupakan hasil tambah posisi yang lama dengan velocity yaitu:
x0=3 x5=15 x10=22 x15=2 x20=12 x25=19
x1=2 x6=11 x11=21 x16=1 x21=11 x26=20
x2=4 x7=11 x12=20 x17=1 x22=8 x27=17
x3=1 x8=10 x13=20 x18=5 x23=15 x28=19
x4=8 x9=17 x14=12 x19=9 x24=9 x29=19
Jika posisi baru yang didapatkan ditampilkan ke dalam bentuk representasi posisi, maka dapat
dilihat pada gambar 6 di bawah ini:
Menu Penjadwalan kuliah ini memiliki dua sub menu yaitu Lihat Jadwal dan Proses
Penjadwalan Kuliah. Pada menu Proses Penjadwalan kuliah dilakukan proses dari
implementasi metode Particle Swarm Optimization. Dengan menekan tombol Mulai
Proses Penjadwalan Kuliah untuk mendapatkan hasil penjadwalan kuliah seperti yang
dilihat pada Gambar 10 berikut ini :
10 Raisha Ashila Rachman
5 KESIMPULAN
1. Masalah penjadwalan kuliah dapat direpresentasikan ke dalam slot yang merupakan tahapan
dari metode PSO yang selanjutnya dapat dibuat program untuk menghasilkan jadwal kuliah
dengan memenuhi aturan aturan penjadwalan dan parameter parameter PSO yang
digunakan.
2. Berdasarkan pengujian parameter yang dilakukan, jumlah partikel yang lebih besar dapat
mempengaruhi hasil solusi yang lebih baik walaupun membutuhkan waktu yang lebih lama
dalam pemrosesannya.
3. Spesifikasi dari komputer yang dipakai berpengaruh terhadap waktu proses penjadwalan
kuliah. Spesifikasi yang tinggi dari komputer yang dipergunakan untuk pengujian dapat
menjalankan partikel yang lebih baik dalam pemrosesan penjadwalan kuliah dan dapat
menghasilkan waktu proses yang lebih cepat.
4. Website ini sudah dapat menghasilkan jadwal kuliah, namun masih terdapat bentrokan
jadwal dikarenakan langkah langkah PSO yang banyak memiliki proses random sehingga
tidak seperti penjadwalan kuliah yang sesungguhnya.
DAFTAR PUSTAKA
[1] Alrijadjis. (2010). Optimasi Parameter Kontroler PID Berbasis Algoritma Particle Swarm
Optmization (PSO) Untuk Sistem Dengan Waktu Tunda. Institut Teknologi Sepuluh
Nopember. Surabaya.
[2] Ariani, Dian. (2010). Optimasi Penjadwalan Mata Kuliah Dengan Menggunakan Algoritma
Particle Swarm Optimization (PSO). Politeknik Elektronika Negeri Surabaya-Institut
Teknologi Sepuluh Nopember. Surabaya.
[3] Gazali, Harry Rahmat. (2010). Penjadwalan Kuliah Menggunakan Genetic Algortihm.
Politeknik Caltex Riau. Pekanbaru.
[4] Shiau, Der-Fang,. (2011). A Hybrid Particle Swarm Optimization for a University Course
Scheduling Problem with Flexible Preferences. Fooyin University, Kaohsiung, Taiwan,
ROC. http://www.elsevier.com/locate/eswa
[5] Suyanto. (2010). Algoritma Optimasi Deterministik atau Probabilistik. Yogyakarta
[6] Zerda, Evi Ria. (2009). Analisis dan Penerapan Algoritma Particle Swarm Optimization
(PSO) pada Optimasi Penjadwalan Sumber Daya Proyek. Institut Teknologi Telkom.
Bandung.