• Tidak ada hasil yang ditemukan

Optimasi Penjadwalan Kuliah Pengganti Menggunakan Algoritme Genetika

N/A
N/A
Protected

Academic year: 2018

Membagikan "Optimasi Penjadwalan Kuliah Pengganti Menggunakan Algoritme Genetika"

Copied!
6
0
0

Teks penuh

(1)

Optimasi Penjadwalan Kuliah Pengganti Menggunakan

Algoritme Genetika

Holiyanda Husada1, Imam Cholissodin2, Fitra A Bachtiar3

Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1holiyandahusada@student.ub.ac.id, 2imamcs@ub.ac.id, 3fitra.bachtiar@ub.ac.id

Abstrak

Penjadwalan ulang merupakan salah satu pilihan yang dapat dipilih ketika terdapat hari libur atau ketika dosen berhalangan hadir sesuai jadwal yang telah ditentukan oleh pihak akademik. Perubahan jadwal secara tiba-tiba ini menyebabkan dosen memerlukan penjadwalan ulang untuk melakukan perkuliahan pengganti dengan cepat dan tepat agar dapat memenuhi tugasnya dalam mengisi perkuliahan. Penelitian ini menggunakan algoritme genetika untuk melakukan penyusunan ulang jadwal kuliah sesuai dengan jadwal kesediaan dosen, mahasiswa, ruangan yang tersedia, mata kuliah, dan waktu perkuliahan. Kualitas solusi yang dihasilkan diukur menggunakan fungsi fitness. Berdasarkan hasil pengujian yang telah didapatkan nilai fitness yang optimal yaitu 0.667. Solusi yang dihasilkan tidak terdapat bentrok jadwal mahasiswa maupun dosen akan tetapi melanggar sebuah soft-constraint. Parameter dengan nilai fitness tertinggi dari percobaan yang dilakukan sebanyak 10 kali dan didapatkan jumlah generasi 30, ukuran populasi 50, crossover rate 0.7 dan mutation rate 0.3. Hasil akhir yang didapatkan proporsi jadwal yang optimal dimana dosen dan sebagian besar mahasiswa dari kelas yang bersangkutan dapat menghadiri perkuliahan pengganti.

Kata kunci: Optimasi, penjadwalan, Algoritme genetika, fitness

Abstract

Rescheduling is an option that can be chosen when lecturers are unable to attend on a schedule that has been determined by the academic or when there is a day off. This makes the lecturer need a rescheduling system to find another schedule quickly and appropriately to fulfill his duties as a lecturer. In this study use genetic algorithm for rescheduling based on lecturer schedule, student schedule, available room, course, and available time. The solution quality is measured using the fitness function. Based on the testing results that have obtained the optimal fitness value is 0.667. Result of Solution without clashed schedules but soft-constraint violated. The parameters with the highest fitness value from 10 experiments obtained the number of generation 30, population size 50, crossover rate 0.7 and mutation rate 0.3. The result is the optimal schedule available where the lecturers and most students of the class are reliable.

Keywords: Optimization, scheduling, genetic algorithm, fitness

1. PENDAHULUAN

Pengaturan waktu pada suatu kegiatan merupakan hal yang sangat penting dilakukan agar dapat berjalan lancar dan tanpa hambatan yang berarti. Penyusunan jadwal merupakan masalah yang sulit diselesaikan karena berbagai macam tipe permasalahan memiliki solusi yang berbeda-beda (Kadam, 2014). Begitu juga dengan penjadwalan akademik yang memiliki banyak batasan/kendala seperti ruangan, aktivitas dosen, dan waktu. Sehingga dibutuhkan banyak pertimbangan untuk mendukung kesesuaian antara dosen, mahasiswa, ruangan,

dan waktu. Jadi penentuan sebuah jadwal yang efisien menjadi masalah penting (Hariyadi, et al., 2017).

Perkuliahan pengganti merupakan salah satu pilihan yang dapat dipilih ketika dosen berhalangan hadir sesuai jadwal yang telah ditentukan oleh pihak akademik atau ketika terdapat hari libur. Perubahan jadwal secara tiba-tiba mengakibatkan dosen memerlukan

penjadwalan ulang untuk melakukan

(2)

Dalam melakukan penjadwalan sendiri terdapat banyak metode yang bisa digunakan dalam membangun sistem. Salah satunya adalah algoritme genetika, cukup banyak penelitian yang menggunakan algoritme genetika. Pada penelitian (Hariyadi, et al., 2017) menggunakan aloritme genetika untuk menyelesaikan penjadwalan perkuliahan. Hasil analisisnya menunjukkan bahwa algoritme genetika berhasil diterapkan. Pada tahun 2013 Marbun, et al. melakukan perbandingan metode antara Algoritme Genetika dan Particle Swarm Optimization dalam Optimasi Penjadwalan Matakuliah. Hasilnya didapatkan bahwa Algoritme Genetika mampu menyelesaikan permasalahan penjadwalan matakuliah dengan lebih baik dibanding Algoritme PSO.

Penelitian ini menggunakan algoritme genetika untuk penyusunan ulang jadwal kuliah sesuai dengan data dosen, mahasiswa, ruangan yang tersedia, mata kuliah, dan waktu perkuliahan. Penulis memilih algoritme ini karena hasil keluarannya yang berupa daftar variabel yang optimal, bukan hanya solusi tunggal dan hal tersebut dianggap tepat untuk menyelesaikan masalah pada penelitian ini. Di harapkan dengan menggunakan algoritme ini akan mendapatkan proporsi jadwal yang optimal dimana dosen dan sebagian besar atau bahkan semua mahasiswa dari kelas yang bersangkutan dapat menghadiri perkuliahan pengganti.

2. ALGORITME GENETIKA

Algoritme Genetika (AG) merupakan algoritme penelusuran yang menerapkan proses genetika dan seleksi alam. Algoritme genetika merupakan salah satu algoritme untuk mengatasi permasalahan optimasi yang rumit yang menyebabkan sulit dilakukan oleh metode konvensional. Algoritme genetika diperkenalkan oleh seseorang dari Universitas Michigan yaitu John Holland pada tahun 1975. Beliau menyatakan setiap masalah yang berbentuk adaptasi alami maupun adaptasi buatan dapat dirumuskan menjadi terminologi genetika.

Algoritme Genetika biasa digunakan dalam berbagai penyelesaian masalah yang kompleks pada bidang ekonomi, sosiologi, biologi, fisika (Mahmudy, 2013). Algoritme genetika kadang tidak dapat menemukan hasil yang paling baik, namun sering kali menyelesaikan masalah dengan cukup baik bahkan mendekati yang terbaik

.

Proses dalam algoritme genetika dimulai

dengan inisialisasi, reproduksi, evaluasi, dan seleksi (Mahmudy, 2013).

- Inisialisasi

Proses ini bertujuan untuk membangkitkan populasi awal secara acak untuk mendapatkan sebuah solusi awal. Kromosom dapat direpresentasikan ke dalam bentuk biner, integer, bilangan real atau permutasi (Imbar, 2011). Pada penelitian ini akan digunakan representasi kromosom dalam bentuk permutasi. Representasi permutasi

sendiri terbukti telah berhasil

diimplementasikan pada beberapa

permasalahan seperti penjadwalan, masalah kombinatorial seperti Travelling Salesperson Problem, serta perencanaan produksi (Mahmudy, 2013)

-

Reproduksi

Proses ini menghasilkan suatu solusi baru melalui solusi yang telah ada sebelumnya, atau dapat disebut sebagai keturunan dari tiap individu/kromosom pada satu populasi.

Reproduksi menggunakan operator

Algoritme Genetika yaitu crossover dan mutation. Proses crossover dilakukan dengan memecah individu menjadi dua bagian, kemudian salah satu bagian ditukarkan dengan salah satu bagian dari individu yang lain. Sedangkan mutasi menghasilkan individu baru dengan melakukan perubahan pada beberapa gen dalam individu yang sama

-

Evaluasi

Proses ini merupakan proses untuk mengevaluasi setiap populasi dengan menghitung nilai fitness setiap individu. Rumus fitness yang digunakan (Lee dkk, 2001) menurut (Suhartono, 2015) adalah sebagai berikut

:

𝑓𝑖𝑡𝑛𝑒𝑠𝑠 1 + (F𝐵1+ F𝐵2 1 + ⋯ + F𝐵 𝑛) (2) Keterangan:

Bi = Bobot pelanggaran ke-i Fi = Pelanggaran

i = 1 . . . n

-

Seleksi

(3)

yang digunakan adalah Elitism. Eltism merupakan salah satu metode seleksi terpopuler dalam algoritme genetika karena implementasi yang sederhana dan cukup efisie. Dalam seleksi dengan metode elitism, sejumlah n individu dengan fitness paling baik dipilih. Individu – individu tersebut akan menjadi parent pada generasi berikutnya.

3. METODE

Dalam penelitian ini digunakan data berupa data ruangan, dalam permasalahan ini digunakan dari 3 ruang yaitu ruang A2.22, A2.23 dan A2.24 gedung Fakultas Ilmu Komputer Universitas Brawijaya serta jadwal mahasiswa dan dosen dari 3 mata kuliah pada semester ganjil 2017/2018 yaitu Swarm Intelligence, Algoritma Evolusi dan Big Data. Data ruangan dan jadwal dalam bentuk boolean selama 5 hari kerja, mulai dari hari senin hingga jumat. Adapun data jadwal mahasiswa dapat dilihat pada Tabel 3.

Tabel 1 Data Ruang bahwa pada hari senin jam ke 1 hingga jam ke 3 ruangan yang dapat digunakan adalah ruang A2.24 sedangkan ruang yang lain pada jam yang sama bernilai false artinya ruangan tersebut tidak dapat digunakan.

Tabel 2 Hasil Pemetaan Data Ruang

Ruang Slot Waktu

Sebelum diproses nantinya data ruangan yang tersedia akan dipetakan menjadi seperti yang terlihat pada Tabel 2. Banyak nya slot yang tersedia menunjukkan jumlah sks suatu mata kuliah. Jika mata kuliah 3 sks maka dibutuhkan 3 slot kosong pada ruangan.

Tabel 3 Data Jadwal Mahasiswa

Nim Senin ... Juma jadwal mahasiswa bernilai 1 dinyatakan sebagai true atau mahasiswa tersebut dapat menghadiri kuliah pengganti dan bernilai 0 dinyatakan false atau mahasiswa tersebut tidak dapat menghadiri kuliah pengganti. Hal yang serupa juga pada jadwal dosen yang dapat dilihat pada Tabel 4.

Tabel 4 Data Jadwal Mahasiswa

Dosen

Gambar 1 menunjukkan alur algoritme secara umum dari metode yang digunakan. Dari Gambar 1 dapat diambil penjelasan secara rinci dari tahapan penjadwalan kuliah pengganti dengan menggunakan algoritme genetika adalah sebagai berikut:

- Data ruangan, jadwal mahasiswa dan dosen serta matakuliah yang akan digunakan dimasukan melalui basis data MySQL. Daftar ruangan yang tersedia serta jumlah matakuliah yang akan dijadwalkan ulang didapat dari masukan pengguna.

(4)

(kromosom). Nilai gen disini adalah matakuliah.

- Reproduksi, menghasilkan keturunan (offspring) dari individu-individu yang ada di populasi dengan cara crossover dan mutasi. - Evaluasi, menghitung total pelanggaran dan

kebugaran (fitness) setiap kromosom.

Gambar 1 Diagram alir algoritme

4. HASIL PENGUJIAN

Pengujian terdiri dari 3 skenario yaitu pengujian ukuran populasi (popsize), pengujian jumlah generasi dan pengujian kombinasi Crossover rate(Cr) dan Mutation rate(Mr).

Tabel 5 Hasil Pengujian Populasi

Populas i

Percobaan ke

Rata-rata

fitnes s

1 2 3 ... 10

5 0,50

0

0,50 0

0,66 0

... 0,66

0 0,548

10 0,66 0

0,56 0

0,66 0

... 0,50

0 0,602

15 0,66 0

0,66 0

0,50 0

... 0,50

0 0,596

... ... ... ... ..

.

... ...

... ... ... ... ..

.

... ...

50 0,660 0,660 0,660 ... 0,660 0,660

Gambar 2 Grafik Hasil Pengujian Populasi

Dapat dilihat pada grafik Gambar 2, nilai fitness yang dihasilkan mulai dari ukuran populasi 5 hingga 35 terus mengalami kenaikan. Namun pada ukuran populasi 40 mengalami sedikit penurunan. Semakin besar jumlah populasi akan menghasilkan keberagaman individu yang lebih banyak, sehingga memberi peluang yang lebih besar dalam menghasilkan individu yang memiliki nilai fitness yang besar. Hasil pengujian pengaruh ukuran populasi terhadap algoritme genetika pada kasus ini, semakin banyaknya individu dalam satu populasi tidak dapat menjamin akan menghasilkan nilai fitness yang besar dan ukuran semakin kecil ukuran populasi tidak menjamin akan menghasilkan nilai fitness yang kecil. Hal itu disebabkan oleh konsep random yang digunakan pada algoritme genetika.

Tabel 6 Hasil Pengujian Generasi

Generas Percobaan ke

Rata-0,000 0,100 0,200 0,300 0,400 0,500 0,600 0,700

0 20 40 60

Rat

a

-ra

ta

Fi

tn

e

ss

Populasi

Pengujian Jumlah Populasi

Mulai

Ruang [ ]

Inisialisasi

Reproduksi

Evaluasi

Seleksi

Iterasi max?

Selesai Ya

Tidak

(5)

i

Gambar 3 Grafik Hasil Pengujian Generasi

Pada grafik Gambar 3 rata-rata nilai fitness mengalami kenaikan mulai dari generasi 10 hingga 30. Kemudian pada generasi 40 nilai fitness menurun namun nilai rata-rata nilai fitness kembali mengalami kenaikan pada generasi 50 hingga generasi 70. Besarnya jumlah generasi akan semakin meningkatkan kemampuan algoritme genetika dalam mencari solusi terbaik. Pada penelitian ini jumlah generasi tidak menjamin akan menghasilkan hasil yang optimal. Pada genreasi 30 merupakan titik paling optimum dikarenakan tidak terjadi perubahan nilai fitness untuk menjadi lebih baik setelah generasi diatas 30. Pada pengujian ini didapatkan nilai generasi yang optimum yaitu 30. Oleh karena itu pada pengujian berikutnya akan digunakan generasi sebanyak 30.

Tabel 7 Hasil Pengujian Crossover rate(Cr) dan Mutation rate(Mr

Generas i

Percobaan ke Rata-rata

Gambar 4 GrafikHasil Pengujian Crossover rate(Cr) dan Mutation rate(Mr

Pada grafik Gambar 4.3 dapat dilihat bahwa nilai rata-rata fitness terbaik pada pengujian ini adalah 0.628 yaitu pada kombinasi Cr)0.7 dan Mr 0.3. nilai kombinasi terburuk adalah pada kombinasi Cr 1.0 dan Mr 0.0. maka dari itu dapat ditarik kesimpulan bahwa nilai kombinasi Cr dan Mr adalah 0.7:0.3. Jika menggunakn nilai Cr yang kecil dan Nilai Mr yang besar, algoritme genetika akan melalukan penelusuran secara random dan tidak mampu untuk mengeksplorasi daerah pencarian secara efektif. Jika pada kondisi sebaliknya maka algoritme genetika tidak akan mampu memperluas ruang pencarian (Mahmudy, 2013).

5. KESIMPULAN DAN SARAN

1. Algoritme genetika dapat diimplementasikan dalam proses pembuatan jadwal kuliah pengganti pada Fakultas Ilmu Komputer Universitas Brawijaya. Pada kasus ini kromosom direpresentasikan dengan representasi permutasi dimana nilai gen adalah kode mata kuliah. Menggunakan metode one-cut-point crossove dan insertion mutation pada proses reproduksi serta metode elitism untuk proses sseleksi memberikan hasil yang cukup optimal. 2. Untuk mendapatkan nilai parameter

algoritme genetika yang digunakan pada optimasi penjadwalan kuliah pengganti

0,000

Kombinasi Cr dan Mr

(6)

dilakukan dengan pengujian parameter yang terdiri dari ukuran generasi, ukuran populasi dan kombinasi nilai Crossover rate dan Mutation rate. Hasil dari pengujian merupakan paramteter dengan nilai fitness terbaik dari percobaan yang dilakukan sebanyak 10 kali dan didapatkan jumlah generasi 30, ukuran populasi 50, crossover rate 0.7 dan mutation rate 0.3. Kualitas solusi yang dihasilkan diukur menggunakan fungsi fitness. Berdasarkan hasil pengujian yang telah didapatkan nilai fitness yang optimal yaitu 0.667. Solusi yang dihasilkan tidak terdapat bentrok jadwal mahasiswa maupun dosen namun soft-constraint kuliah malam hari dilanggar.

Meskipun implementasi algoritme genetika untuk optimasi penjadwalan kuliah pengganti menunjukkan hasil yang cukup optimal, saran yang penulis berikan untuk pengembangan metode, objek bahan penelitian, maupun aplikasi yang dibangun antara lain:

1. Algoritme genetika merupakan algoritme yang memiliki sifat stochastic dimana setiap kali dijalankan akan menghasilkan keluaran yang berbeda-beda, sehingga pada penelitian berikutnya dibutuhkan strategi untuk melakukan perbaikan terhadap kromosom ketika solusi yang daihasilkan jauh dari optimal.

2. Pada grafik hasil pengujian kombinasi nilai Cr dan Mr didapatkan hasil yang tidak stabil, sehingga dibutuhkan nilai Cr dan Mr yang lebih adaptif. Dimana nilai Cr dan Mr memiliki nilai yang berbeda pada setiap iterasinya.

6. DAFTAR PUSTAKA

Anamisa, D. R., 2014. Implementasi Alokasi

Jadwal Mata Pelajaran Smu

Menggunakan Algoritma Koloni Semut (AKS). Jurnal Ilmiah NERO, Volume 1. Ariani, D., 2011. Optimasi Penjadwalan Mata Kuliah di Jurusan Teknik Informatika Menggunakan Algoritma Particle Optimization(PSO).

FILKOM UB, 2016. Buku Pedoman FILKOM UB 2016. Malang: s.n.

Hariyadi, H. P., Widiyaningtyas, T., Arifin, M. Z. & Sendari, S., 2017. Implementation of Genetic Algorithm to academic

scheduling system. Singapore, Region 10 Conference (TENCON), 2016 IEEE. Hermawan, M. A., Hidayat, N. & Mahmudy, W. F., 2017. Sistem Optimasi Rute Tempat

Wisata Kuliner Di Malang

Menggunakan Algoritma Bee Colony. Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer, Volume 1, pp. 215-223.

Imbar, J., 2011. Implementasi Algoritma Genetika Pada Aplikasi Penjadwalan dengan Studi Kasus Pada SMP X. Bandung, s.n.

Indana Zulfa, 2015. Optimasi Jadwal Mengajar Laboratorium Menggunakan Algoritma Genetika. Volume 5.

Junaedi, D., 2010. Perancangan Penjadwalan Perkuliahan Dengan Menggunakan Pendekatan Constraint Satisfaction (CSP) dan Artificial Bee Colony Algorithm.

Kadam, S. U., 2014. Solving Resource-Constrained Project Scheduling Problem by Genetic Algorithm. India, International Conference on Business and Infonnation Management (lCBIM). Mahmudy, W. F., 2013. Algoritma Evolusi.

Malang: Program Teknologi Informasi dan Ilmu Komputer (PTIIK).

Marbun, Y., Nikentari, N. & Bettiza, M., 2013. Perbandingan Algoritma Genetika dan Particle Swarm Optimization dalam Optimasi Penjadwalan Matakuliah. Mawaddah, N. K., 2006. Optimasi penjadwalan

ujian menggunakan algoritma genetika. Volume 2.

Suhartono, E., 2015. Optimasi Penjadwalan Mata Kuliah Dengan Algoritma Genetika.

Suprayogi, D. A. & Mahmudy, W. F., 2014.

Penerapan Algoritma Genetika

Traveling Salesman Problem with Time. Jurnal Buana Informatika.

Wardhany, B. A. K. et al., 2016. Optimasi Penjadwalan Praktikum Menggunakan Modified Real Code Particle Swarm Optimization. Jurnal Teknologi Informasi dan Ilmu Komputer (JTIIK), Volume 3, pp. 265-272.

Gambar

Tabel 1 Data Ruang
Tabel 5 Hasil Pengujian Populasi
Gambar 3 Grafik Hasil Pengujian Generasi

Referensi

Dokumen terkait

Bentuk pelaksanaan bimbingan dan konseling bagi anak down syndrom dalam penelitian ini adalah bimbingan konseling Islam menggunakan terapi bermain lompat jingkat

1) Mengidentifikasi masalah yang dikaji dari hasil refleksi siklus I. dalam hal ini selain guru harus selektif memilih soal latihan untuk peserta didik, guru juga

• Catatan hasil wawancara tentang kesesuaian fakta sikap dan perilaku pelaksana pelayanan dengan ketentuan yang ada • Catatan hasil observasi fakta. sikap dan perilaku

Pada pipa bawah laut (subsea pipeline) yang tergeletak pada seabed, free span terjadi akibat ketidak-rataan (uneven) permukaan dasar laut dengan kurvatur yang

Namun, manusia (muslim) wajib berikthiar memperkecil risiko yang timbul. Salah satunya caranya adalah menabung. Tetapi upaya tersebut seringkali tidak memadai, karena

Tujuan penelitian adalah peneliti ingin menguji kemampuan yang dimiliki peserta didik selama menjalankan proses pembelajaran dan belajar mereka yakni berupa kemampuan

9 Siklus penjualan juga akan berkomunikasi dengan siklus buku besar dan pelaporan keuangan agar seluruh rincian penjualan dan pendapatan yang terkait telah

Pasir tidak boleh mengandung lumpur lebih dari 5 %, (maksudnya bagian yang lolos melalui saringan 0,074 mm); apabila kadar lumpur pada pasir melebihi 5 %, maka pasir