• Tidak ada hasil yang ditemukan

Pranidhana & Widiartha Penerapan Algoritma Genetika pada Aplikasi Penjadwalan Kuliah Menggunakan Operator Uniform Crossover dan Binary Mutation Penera

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pranidhana & Widiartha Penerapan Algoritma Genetika pada Aplikasi Penjadwalan Kuliah Menggunakan Operator Uniform Crossover dan Binary Mutation Penera"

Copied!
12
0
0

Teks penuh

(1)
(2)
(3)
(4)
(5)
(6)
(7)

Pranidhana & Widiartha Penerapan Algoritma Genetika pada Aplikasi Penjadwalan Kuliah Menggunakan Operator Uniform Crossover dan Binary Mutation

243

Penerapan Algoritma Genetika pada Aplikasi

Penjadwalan Kuliah Menggunakan Operator

Uniform Crossover dan Binary Mutation

G. Langgeng Pranidhana1, I Made Widiartha2

1,2Program Studi Teknik Informatika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Udayana Jalan Kampus Bukit Jimbaran, Badung, Bali. Kode Pos : 80364. Indonesia

1langgengpranidhana@gmail.com 2madewidiartha@gmail.com

Abstrak—

Penjadwalan mata kuliah merupakan bagian penting dalam proses belajar mengajar dikarenakan semua aktifitas perkuliahan sangat tergantung pada jadwal yang ada. Untuk menyusun sebuah jadwal diperlukan ketelitian dan waktu yang cukup lama. Namun penyusunan jadwal secara manual akan menjadi lebih berat bila jadwal yang disusun memiliki kompleksitas yang tinggi. Untuk mencegah terjadinya kesalahan yang dapat dilakukan oleh manusia dan terutama untuk menghemat waktu dan tenaga yang dibutuhkan dalam penyusunan jadwal maka penjadwalan otomatis sangat diperlukan. Metode yang dapat diterapkan dalam melakukan optimasi terhadap penjadwalan salah satunya adalah algoritma genetika. Pada metode algoritma genetika, jadwal terlebih dahulu direpresentasikan ke dalam bentuk kromosom. Kemudian sebuah populasi dari kromosom tersebut akan dibangkitkan dengan nilai acak. Kromosom-kromosom tersebut akan melalui proses crossover dengan metode uniform crossover dan mutasi dengan metode binary mutation. Populasi yang terbentuk kemudian akan diseleksi berdasarkan nilai fitnessnya. Hasil seleksi merupakan populasi baru yang akan melalui perulangan dari proses yang telah dilakukan sebelumya. Perulangan proses ini akan berhenti bila nilai fitness terbaik telah didapat atau jumlah maksimal iterasi telah terpenuhi.

Kata kunci— Penjadwalan, Algoritma Genetika, Uniform Crossover, Binary Mutation. Abstract—

Course scheduling is an important part of the teaching and learning process because all lecture activities are highly dependent on the schedule. To arrange a schedule required precision and a long time. However, the preparation of the schedule manually will become more severe when the schedule have high complexity. To prevent the occurrence of errors that can be done by humans and especially to save the time and energy needed in the preparation of the schedule then automatic scheduling is needed. The methods that can be applied in optimizing the scheduling are genetic algorithms. In the genetic algorithm method, the schedule is first represented in chromosome form. Then a population of these chromosomes will be generated with a random value. The chromosomes will pass through crossover process with uniform crossover method and mutation with binary mutation method. The population that is formed will then be selected based on its fitness value. Selection results are a new population that will pass through the repetition of the process that has been done before. The recurrence of this process will stop if the best fitness value has been obtained or the maximum number of iterations has been fulfilled.

Keywords— Scheduling, Genetic Algorithm, Uniform Crossover, Binary Mutation.

I. PENDAHULUAN

Dalam dunia pendidikan, terutama dalam proses belajar mengajar memiliki keterkaitan yang erat dengan jadwal dan penjadwalan. Menurut Vollman (1998) penjadwalan merupakan suatu proses perencanaan pengaturan urutan kerja serta pengalokasian sumber daya, baik waktu maupun fasilitas untuk setiap operasi atau pekerjaan yang harus diselesaikan. Hampir seluruh aktifitas yang dilakukan dalam proses belajar mengajar bergantung pada jadwal, salah satunya adalah jadwal pembelajaran. Penyusunan jadwal pelajaran tidak hanya dipengaruhi oleh faktor waktu. Sumber daya lain yang berpengaruh antara lain adalah ketersediaan ruang belajar dan jumlah pengajar yang tersedia. Keterbatasan sumber daya tersebut membuat proses penyusunan jadwal yang ideal dan tanpa tabrakan menjadi

lebih kompleks. Oleh karena itu diperlukan ketelitian dan waktu yang lebih dalam proses penjadwalan. Masalah yang perlu ditangani dalam penjadwalan seperti terbatasnya waktu dan tempat serta sumber daya pengajar membuat proses penjadwalan secara manual menjadi lebih berat. Selain itu, dalam penyusunan jadwal secara manual memiliki kekurangan yaitu terjadinya human error yang biasanya disebabkan karena faktor yang mempengaruhi manusia seperti kelelahan dan kantuk.

Oleh karena itu proses penyusunan jadwal secara otomatis sangat diperlukan. Selain menghemat waktu dan tenaga, peluang kesalahan dari penjadwalan otomatis hanya bersumber dari kemampuan algoritma yang digunakan.

Salah satu algoritma yang dapat digunakan untuk melakukan optimasi penjadwalan adalah algoritma genetika. Algoritma genetika bekerja layaknya perubahan genetis

(8)

Prosiding Seminar Nasional Teknologi Informasi & Aplikasinya 2018 ISSN: 2302-450X

244

seperti terjadinya persilangan gen, mutasi dan pewarisan sifat.

Dalam penerapan algoritma genetika dalam optimasi penjadwalan diawali dengan penyusunan kromosom yang melambangkan keseluruhan komponen dari jadwal seperti mata kuliah, hari, jam pelajaran dan dosen. Setelah kromosom disusun sedemikian rupa, selanjutnya kromosom tersebut akan melalui proses “kawin silang” atau crossover dan mutasi dari proses ini akan tercipta kromosom baru. Dari seluruh populasi kromosom yang ada akan dilakukan perhitungan tingkat kecocokan atau fitness. Dilihat dari nilai fitness yang didapat akan dilakukan seleksi untuk menentukan kromosom mana yang akan melalui proses yang sama. Proses akan berhenti bila batas yang ditentukan dapat tercapai.

Dalam penelitian ini, akan menggunakan metode algoritma genetika untuk melakukan penjadwalan kuliah. Hasil dari penelitian ini akan berupa aplikasi berbasis web dengan data dinamis berupa input user sehingga dapat digunakan untuk proses penjadwalan yang memiliki kriteria serupa.

II. METODOLOGI PENELITIAN

A. Algoritma Genetika

Algoritma genetika (AG) merupakan suatu algoritma yang menggunakan konsep genetis dan seleksi alam dalam prosesnya. Algoritma genetika pertama kali diperkenalkan oleh John Holland pada tahun 1975 yang beranggapan bahwa kekuatan evolusi dan seleksi alam merupakan sesuatu yang harus dicemburui dan patut ditiru. Dari pemikiran tersebut terciptalah konsep algoritma genetika yang sangat tepat digunakan untuk menyelesaikan permasalahan dalam optimasi yang bersifat kompleks dimana tidak mampu diselesaikan oleh metode konvensional.

Algoritma genetika terbagi atas dua proses utama yaitu seleksi dan reproduksi. Seleksi bertujuan untuk memilah anggota populasi untuk menentukan individu yang pantas bertahan dan melakukan reproduksi. Sedangkan reproduksi akan memberikan peluang untuk berevolusi dan mendapatkan individu baru yang memiliki nilai kelayakan lebih besar terhadap kondisi yang ada.

Dalam representasinya, algoritma genetika digambarkan sebagai kumpulan solusi untuk mendapatkan kemungkinan hasil optimal dari suatu permasalahan yang ada. Tiap solusi ini direpresentasikan sebagai sebuah kromosom yang dapat menggambarkan keseluruhan fitur yang ada. Kromosom-kromosom tersebut akan mengalami proses seleksi dan reproduksi hingga didapat hasil optimal. Proses reproduksi dari kromosmosom mencangkup proses kawin silang (crossover) dan mutasi (mutation). Pada proses crossover didasarkan pada perkawinan dua buah kromosom untuk mendapatkan kromosom baru yang memiliki sifat kombinasi dari kedua induknya. Sedangkan pada mutation akan memanfaatkan perubahan susunan gen yang ada pada sebuah kromosom sehingga didapat kromosom baru dengan sifat berbeda. Pada proses seleksi akan dilakukan pemilihan dari seluruh kromosom yang ada untuk menentukan kromosom yang akan dapat melanjutkan proses reproduksi selanjutnya.

Proses seleksi dan reproduksi tersebut akan dilakukan berulang kali di tiap generasinya hingga didapatkan kromosom yang memenuhi kriteria yang telah ditentukan (optimal).

Alur dari algoritma genetika secara umum dapat dilihat pada diagram alur berikut.

Gbr. 1 Alur Algoritma Genetika

B. Representasi Kromosom

Pada algoritma genetika akan dibentuk individu/kromosom yang akan merepresentasikan keseluruhan kondisi yang ada sesuai dengan kasus yang digunakan. Pada penelitian ini kromosom yang dibentuk merupakan kromosom biner yang akan menggambarkan beberapa faktor yaitu pelajaran, hari, tempat/ruangan, waktu/jam pelajaran, dan pengajar. Kromosom akan direpresentasikan sebagai berikut.

(9)

Pranidhana & Widiartha Penerapan Algoritma Genetika pada Aplikasi Penjadwalan Kuliah Menggunakan Operator Uniform Crossover dan Binary Mutation

245

Gbr. 2 Representasi Kromosom

Sebuah kromosom yang dibentuk, terdiri dari sejumlah sub bagian yang melambangkan setiap pelajaran yang ada. Setiap pelajaranakan tersusun dari beberapa bagian yang merepresentasikan hari, ruangan, jam pelajaran dan pengajar. Panjang gen untuk masing-masing bagian kan bergantung pada kondisi yang ada (input user), misal terdapat 5 hari pada jadwal maka akan disediakan 5 array (gen) untuk hari begitu pula untuk ruangan, jam pelajaran dan pengajar. Sehingga total panjang sebuah kromosom adalah :

𝑃𝐾 = 𝑛𝑃 𝑥 (𝑛𝐻 + 𝑛𝑅 + 𝑛𝐽 + 𝑛𝑃𝑒) (1) Dimana: PK : panjang kromosom nP : jumlah pelajaran nH : jumlah hari nR : jumlah ruangan nJ : jumlah jam pelajaran nPe : jumlah pengajar C. Crossover

Crossover merupakan salah satu dari dua proses reproduksi yang bertujuan untuk mendapatkan individu/kromosom baru dengan susunan gen yang berbeda. Crossover dilakukan dengan melakukan perkawinan dua buah kromosom yang akan menurunkan sifat atau beberapa bagian gen yang dimilikinya yang akan menjadi susunan gen pada kromosom yang baru.

Dalam penelitian ini metode crossover yang digunakan adalah uniform crossover. Proses pada uniform crossover memanfaatkan penggunaan bilangan random antara 0 dan 1. Pembangkitan bilangan random ini akan dilakukan sejumlah gen penyusun kromosom.Bila hasil random adalah 1 maka akan didilakukan proses pertukaran gen kedua induk pada posisi yang sama. Bila hasil random 0 maka pertukaran tidak dilakukan. Hasil dari proses crossover akan mendapatkan dua buah keturunan yang kemudian pada penelitian ini akan dipilih salah satunya secara acak sehingga hanya akan mendapat satu keturunan.Sedangkan untuk menentukan induk yang akan digunakan pada crossover akan dipilih secara acak dari populasi yang ada.

Gbr. 3 Uniform Crossover

Dalam melakukan crossover terdapat crossover rate (PX) yang digunakan untuk menentukan peluang terjadinya crossover dalam suatu iterasi/generasi. Pada penelitian ini peluang terjadinya crossover (PX) diatur sebesar 50%. D. Mutasi

Mutasi merupakan proses perubahan susunan gen suatu kromosom induk yang akan mengkasilkan kromosom dengan susunan gen baru yang menyimpang dari kromosom induknya.Dalam penelitian ini metode mutasi yang digunakan adalah binary mutation. Binary mutation merupakan metode mutasi biner yang akan mengubah nilai dari satu maupun beberapa gen dalam suatu kromosom yang akan menyebabkan perubahan susunan gen dari krosmosom awal. Suatu gen akan dipilih secara acak dimana bila nilai gen/indeks kromosom tersebut adalah 0 maka akan diubah menjadi 1, begitu pula sebaliknya.Untuk menentukan kromosom yang akan dijadikan induk pada mutasi akan dipilih secara acak dari populasi yang ada.

Gbr. 4 Binary Mutation

Dalam melakukan mutasi juga terdapat mutation rate yang merupakan peluang terjadinya mutasi dalam suatu iterasi/generasi. Pada penelitian ini peluang terjadinya mutasi(PM)diatur sebesar 50%.

E. Seleksi

Seleksi merupakan proses pemilihan individu/kromosom dari populasi yang ada untuk melalui proses reproduksi pada generasi berikutnya. Selain itu seleksi juga bertujuan untuk menstabilkan jumlah populasi kromosom/individu pada tiap generasi. Pada penelitian metode seleksi yang digunakan adalah metode truncation selection dimana individu/kromosomakan diurutkan berdasarkan nilai fitnessnya yang kemudian akan dipilih beberapa kromosom dengan nilai fitness terbaik dari populasi yang ada untuk melanjutkan proses pada generasi selanjutnya.

F. Fitness Function

Fitness function merupakan fungsi yang disusun untuk dapat menentukan nilai fitness dari tiap kromosom dalam suatu populasi. Nilai fitness dalam algoritma genetika bertujuan untuk menggambarkan tingkat kesesuaian suatu kromosom terhadap batasan yang ditentukan, nilai fitness optimal dapat berupa nilai fitnesstertinggi ataupun terendah tergantung pada bagaimana nilai fitness tersebut didapatkan.

Dalam penyusunan suatu jadwal, hasil optimal yang diinginkan adalah jadwal dimana tidak ada komponen yang bertabrakan seperti tidak adanya dua pelajaran yang diajar oleh seorang pengajar dalam waktu bersamaan di tempat yang

(10)

Prosiding Seminar Nasional Teknologi Informasi & Aplikasinya 2018 ISSN: 2302-450X

246

berbeda. Oleh karena itu tabrakan yang terjadi juga

merupakan suatu pelanggaran dalam jadwal yang terbentuk. Fitness optimal yang digunakan pada program ini adalah fitness minimum dikarenakan peningkatan nilai fitness berbanding lurus dengan pelanggaran terhadap kondisi yang ditetapkan. Semakin tinggi nilai fitnessnya makan semakin tidak optimum hasil yang dicapai. Nilai fitness akan dimulai dari 0 yang akan bertambah sesuai dengan jumlah pelanggaran yang dilakukan. Kondisi/batasan yang ditentukan dalam penelitian ini adalah sebagi berikut.

TABEL I Batasan Penjadwalan

No Batasan

1 Setiap mata kuliah harus lah tersusu dari 1 hari, 1 tempat, 1 waktu dan 1 dosen pengajar.

2 Seorang dosen tidak dapat mengajar ditempat yang berbeda di waktu dan hari yang sama.

3 Tidak ada mata kuliah yang dilaksanakan pada waktu, hari dan tempat yang sama (bertabrakan).

4 Sebuah ruangan tidak dapat diisi oleh lebih dari 1 matakuliah disaat (hari dan waktu) yang sama.

Dari penjelasan diatas nilai fitness akan didapat dengan rumus :

𝐹𝑖𝑡𝑛𝑒𝑠𝑠 = ∑ 𝑝𝑒𝑛𝑎𝑙𝑡𝑦 (2)

Dari persamaan (2) akan didapatkan nilai fitness dari tiap individu kromosom yang merupakan total dari pelanggaran terhadap batasan yang ditentukan. Semakin besar nilai fitness suatu kromosom berarti jumlah pelanggaran pada jadwal yang terbentuk dari kromosom tersebut semakin banyak. Sebaliknya semakin kecil nilai fitness suatu kromosom maka semakin sedikit pelanggaran dari hasil yang didapat sehingga semakin optimal jadwal yang terbentuk. Maka dari itu nilai fitness optimal yang ingin dicapai adalah kromosom dengan nilai fitness minimum.

III. HASIL DAN PEMBAHASAN

Pada penelitian ini, akan dibentuk populasi awal sebanyak 50 individu/kromosom dengan susunan acak. Populasi tersebut akan melalui tahapan crossover dengan metode uniform crossoverdan mutation dengan metode binary mutation dimana masing-masing peluang yaitu 50% untuk PX dan 50% untuk PM sehingga pada akhir proses akan didapat sebanyak 100 individu/kromosom (individu lama + individu baru). Dari 100 individu yang ada akan dilakukan proses seleksi yang akan mengambil 50 individu dengan fitness terbaik dengan metode truncation selectionuntuk dijadikan populasi pada iterasi/generasi selanjutnya. Proses generasi akan berakhir ketika hasil fitness optimal telah didapat atau selisih nilai fitness function pada generasi ke-n dan n-1 telah konvergen(tidak mengalami perubahan setelah beberapa generasi). Batas konvergen pada nilai fitness diatur

sebanyak 10 kali. Sedangkan batas generasi maksimal yang digunakan pada penelitian ini adalah 100 iterasi.

Pengujian dilakukan dengan menggunakan beberapa variasi input yang meliputi jumlah mata kuliah, jumlah hari, jumlah ruangan, jumlah jam pelajaran dan jumlah pengajar. Data pengujian dapat dilihat pada table berikut.

TABEL II Data Pengujian No. Jmlh. Mata Kuliah Jmlh. Hari Jmlh. Ruang an Jmlh. Jam Pelajaran Jmlh. Pengajar 1 8 4 2 2 4 2 10 2 3 3 3 3 15 5 5 3 4 4 10 2 2 2 5 5 15 5 2 4 6

Dari hasil pengujian yang dilakukan dengan menggunakan lima input yang berbeda, didapat nilai fitness terbaik dari tiap iterasi yang ada. Hasil tersebut dapat dilihat pada grafik perubahan nilai fitness yang membandingkankan hasil dari setiap data pengujian yang digunakan.

Gbr. 5 Grafk Fitness Tiap Iterasi

Hasil dari pengujian yang dilakukan mendapatkan hasil sebagai berikut. TABEL III Hasil Pengujian No Data Pengujian Hasil Fitness Terbaik

Iterasi saat Fitness Konvergen 1 Data 1 0 47 2 Data 2 2 60 3 Data 3 1 100 4 Data 4 4 51 5 Data 5 3 88

Dari pengujian yang telah dilakukan, dapat dilihat bahwa semakin kompleks data input yang digunakan untuk menysun jadwal maka iterasi yang dibutuhkan untuk mendapat solusi optimum akan semakin banyak. Hal ini dapat terlihat dari

(11)

Pranidhana & Widiartha Penerapan Algoritma Genetika pada Aplikasi Penjadwalan Kuliah Menggunakan Operator Uniform Crossover dan Binary Mutation

247

Data 3 yang memiliki nilai inputan paling besar sehingga

menyebabkan susunan kromosom menjadi lebih panjang dan kompleks. Karena metode algoritma genetika memanfaatkan bilangan acak, maka semakin panjang susunan kromosom yang ada akan menyebabkan peluang menemukan susunan yang optimal semakin kecil. Oleh karena itu diperlukan iterasi yang lebih untuk mendapatkan hasil optimal.

IV. KESIMPULAN

Berdasarkan hasil yang didapat dari proses pengujian dapat disimpulkan bahwa penerapan algoritma genetika dalam optimasi penjadwalan pada penelitian ini menghasilkan nilai fitness terbaik dengan nilai 0. Ini menandakan bahwa penerapan algoritma genetika telah mampu mendapatkan hasil terbaik yang berupa jadwal pelajaran tanpa adanya tabrakan maupun pelanggaran yang dilakukan. Meski demikian, hasil terbaik tidak selalu didapatkan pada setiap percobaan data input hal tersebut terjadi karena beberapa alasan yaitu jumlah iterasi maksimal yang kurang sehingga generasi berhenti sebelum mendapat hasil optimum, nilai

threshold yang terpenuhi sebelum hasil optimum didapat, atau kasus yang digunakan sebagai data uji memang tidak memiliki solusi tanpa pelanggaran.

Saran dari penulis untuk penelitian selanjutnya yaitu penelitian yang dilakukan dapat menggunakan metode crossover, mutasi dan seleksi yang bervariasi sehingga dapat diketahui metode dengan waktu komputasi yang paling cepat. Selain itu, program yang dibuat agar lebih fleksibel sehingga dapat diterapkan pada berbagai bidang dalam ruang lingkup penjadwalan.

REFERENSI

[1] Obaid, O. I., Ahmad, MohdSharifuddin, Mostafa, S. A., and Mohammed, M. A. Comparing Performance of Genetic Algorithm

with Varying Crossover in Solving Examination Timetabling Problem.

Journal of Emerging Trends in Computing and Information Sciences. 2012, vol 3.

[2] Puspaningrum W. A., Djunaidy, Arif, Vinarti R. A. Penjadwalan

Mata Kuliah Menggunakan Algoritma Genetika di Jurusan Sistem Informasi ITS. Jurnal Teknik Pomits vol. 2, no. 1. 2013.

[3] Umbarkar, A.J., Sheth P.D. Crossover Operators In Genetic

Algorithms: A Review. Ictact Journal on Soft Computing. 2015,

(12)

Prosiding Seminar Nasional Teknologi Informasi & Aplikasinya 2018 ISSN: 2302-450X

Gambar

TABEL II  Data Pengujian  No.  Jmlh.  Mata  Kuliah  Jmlh. Hari  Jmlh.  Ruangan  Jmlh. Jam Pelajaran  Jmlh

Referensi

Dokumen terkait

Menimbang, bahwa berdasarkan fakta-fakta tersebut dapat disimpulkan bahwa Pemohon I yang bernama PEMOHON I dan Pemohon II yang bernama PEMOHON II sebagaimana yang

Konsep ini akan diaplikasikan pada posisi teks yang berlawanan serta berisikan peraturan pemerintah yang melarang kegiatan mengemis, memberikan sesuatu pada

untuk mengintegrasikan berbagai ukuran yang diturunkan dari strategi perusahaan, yaitu ukuran kinerja finansial masa lalu dan memperkenalkan pendorong kinerja finansial masa

Proračun čvrstoće spremnika proveden je prema bitnim zahtjevima norme HRN EN 12542, a proračun čvrstoće u uvjetima 70-postotnog vakuuma proveden je prema normi EN

Terdapat juga pelajar India yang berbahasa ibunda Tamil juga telah melalui pendidikan pada peringkat rendah, iaitu selama 6 tahun memiliki pengetahuan yang lemah dan sederhana

Peserta didik diingatkan kembali tentang apa itu perbandingan, dan peserta didik diberikan salah satu contoh soal rasio yang satuaannya sama sebagai berikut: Jumlah

Penelitian ini bertujuan untuk mengetahui daya inhibisi dari ekstrak etanol, fraksi, isolat dari Annona muricata L (sirsak) serta mengetahui fraksi aktif yang

Berdasarkan reviu kami, tidak ada hal-hal yang menjadi perhatian kami yang menyebabkan kami percaya bahwa laporan keuangan konsolidasian interim terlampir tidak