• Tidak ada hasil yang ditemukan

Implementasi Algoritma Genetika dalam Pembuatan Jadwal Kuliah

N/A
N/A
Protected

Academic year: 2018

Membagikan "Implementasi Algoritma Genetika dalam Pembuatan Jadwal Kuliah"

Copied!
7
0
0

Teks penuh

(1)

Implementasi Algoritma Genetika dalam

Pembuatan Jadwal Kuliah

Leonard Tambunan AMIK Mitra Gama Jl. Kayangan No. 99, Duri-Riau

e-mail : leo.itcom@gmail.com

Abstrak

Pada saat ini proses penjadwalan kuliah pada AMIK Mitra Gama masih menggunakan cara manual. Dalam membuat jadwal kuliah Sekretaris Jurusan harus mempertimbangkan prioritas-prioritas yang banyak sehingga proses penjadwalan menghambat kerja Sekretaris Jurusan. Oleh karena itu, diperlukan penjadwalan yang baik dengan melakukan pengaturan alokasi waktu dan ruang perkuliahan secara optimal terhadap mahasiswa, dosen, mata kuliah, dan fasilitas perkuliahan. Untuk menyelesaikan masalah penjadwalan mata kuliah diperlukan algoritma yang dapat menyelesaikan masalah multi-kriteria dan multi-objektif karena ada beberapa kendala yang harus diselesaikan dalam masalah ini seperti kendala pada mahasiswa, dosen, matakuliah dan fasilitas perkuliahan. Sistem ini dirancang dengan menggunakan Algoritma Genetika. Algoritma ini melakukan proses optimasi untuk mencari hasil yang terbaik. Yaitu dengan cara kombinasi perkawinan yang didasari secara random. Penerapan Algoritma Genetika dalam proses penjadwalan kuliah ini, dengan cara mengkodekan dosen, kelas belajar, matakuliah, ruangan, jam dan hari belajar. Pengujian sistem ini dilakukan dengan melakukan pengujian terhadap prioritas-prioritas yang ada. Berdasarkan nilai fitness yang diperoleh dari setiap pengujian, maka membuktikan bahwa sistem ini mampu memenuhi setiap prioritas yang ada.

Keyword: penjadwalan, kuliah, algoritma genetika

1. Pendahaluan

Penjadwalan perkuliahan yang baik tentunya akan meningkatkan mutu dan pelayanan pendidikan karena mampu menjadwalkan sumber daya yang ada, yaitu tenaga pengajar dalam hal ini dosen dan kelas secara maksimal, sehingga mahasiswa dapat mengikuti perkuliahan dan menyerap ilmu dengan baik. Suatu penjadwalan perkuliahan tentunya akan melibatkan banyak pihak dalam dunia

pendidikan, disamping mahasiswa

tentunya para pengajar yang terlibat langsung dalam aktifitas pengajaran. Para dosen harus menyediakan waktu serta menyesuaikannya dengan aktifitas mereka. Karena itu, penjadwalan perkuliahan yang baik dan optimal sangat diperlukan.

Penjadwalan perkuliahan yang

diimplementasikan oleh AMIK Mitra Gama saat ini dilakukan masih secara manual. Dimulai dengan menyediakan

daftar mata kuliah yang diselenggarakan

dalam semester tersebut dan juga

diperlukannya sebuah daftar yang berisi jadwal kosong dosen, dimana jadwal kosong tersebut digunakan untuk mengajar mata kuliah yang diselenggarakan. Dari data yang ada, kemudian secara manual dan satu persatu jadwal perkuliahan tersebut diisikan nama dosen pengajarnya

pada Microsoft Excel, dan apabila

ketidakcocokan proses pergantian dan pertukaran secara manual terjadi, dan

sering terjadi kesalahan manusia (human

error). Proses tersebut sangatlah tidak maksimal karena banyak memakan banyak

resource baik waktu maupun sumber daya manusia.

Sejalan dengan perkembangan

teknologi komputasi, terdapat beberapa

jenis algoritma penjadwalan, namun

(2)

dikembangkan dan dipergunakan

adalah algoritma genetika (Genetic

Algoritm), karena algoritma ini dapat dipakai untuk mendapatkan solusi yang tepat untuk masalah sehingga, memberikan hasil akhir dari satu variabel atau multi variabel. Algoritma genetika merupakan algoritma pencarian yang berdasarkan pada mekanisme seleksi alami dan genetik.

Perumusan Masalah

Berdasarkan latar belakang masalah

diatas, maka dapat dirumuskan

permasalahan sebagai berikut :

a. Bagaimana membuat aplikasi

penjadwalan perkuliahan dengan

menerapkan algoritma genetika

untuk memberikan hasil yang terbaik ?

b. Bagaimana membuat aplikasi

penjadwalan yang mampu

mendukung pengambilan keputusan jadwal dosen berdasarkan batasan (konstrain) ?

Batasan Masalah

Adapun batasan masalah dalam

penulisan skripsi ini adalah sebagai berikut :

a. Sistem yang akan dibangun

menggunakan metode algoritma genetika.

b. Dosen yang mengajar mata kuliah

telah ditentukan sebelumnya sesuai dengan kompetensi masing-masing.

c. Studi kasus yang diambil adalah

penjadwalan di AMIK Mitra Gama.

d. Sistem ini dirancang menggunakan

bahasa pemrograman Microsoft Visual Basic 6.0 dan aplikasi database MySQL.

2. Landasan Teori Algoritma Genetika

Algoritma Genetika (AG) adalah

algoritma pencarian yang meniru

mekanisme dari genetika alami yang didasarkan pada teori evolusi dan seleksi alam [1]. Pengertian lainnya tentang Algoritma Genetika menuliskan bahwa algoritma genetika merupakan algoritma

pencarian yang didasarkan pada

mekanisme seleksi alamiah dan genetika alamiah [2].

Algoritma ini dapat dipakai untuk mendapatkan solusi yang tepat untuk masalah optimal dari satu variabel atau multi variabel. Sebelum algoritma ini

dijalankan, masalah yang ingin

dioptimalkan harus dinyatakan dalam fungsi tujuan, yang dikenal dengan fungsi

fitness. Dalam AG, operasi-operasi yang dilakukan adalah reproduksi, crossover dan mutasi untuk mendapatkan sebuah solusi menurut nilai fitness-nya.

Pada dasarnya algoritma genetika

adalah program komputer yang

mensimulasikan proses evolusi, dengan menghasilkan kromosom-kromosom dari

tiap populasi secara random dan

memungkinkan kromosom tersebut

berkembang biak sesuai dengan hukum-hukum evolusi yang nantinya diharapkan akan dapat menghasilkan kromosom prima atau yang lebih baik. Kromosom ini

merepresentasikan solusi dari

permasalahan yang diangkat, sehingga apabila kromosom yang baik tersebut dihasilkan, maka diharapkan solusi yang baik dari permasalahan tersebut juga didapatkan[2],[4].

Komponen Penting Algoritma Genetika

a. Gen merupakan nilai yang menyatakan

satuan dasar yang membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan kromosom.

b. Kromosom / individu merupakan

gabungan dari gen-gen yang

membentuk nilai tertentu dan

menyatakan solusi yang mungkin dari suatu permasalahan.

c. Populasi merupakan sekumpulan

individu yang akan diproses bersama dalam satu satuan siklus evolusi.

d. Fitness menyatakan seberapa baik nilai

dari suatu individu atau solusi yang didapatkan.

e. Seleksi merupakan proses untuk

mendapatkan calon induk yang baik.

f. Crossover merupakan proses pertukaran

(3)

Awal JumGen,

g. Mutasi merupakan proses pergantian

salah satu gen yang terpilih dengan nilai tertentu.

h. Generasi merupakan urutan iterasi

dimana beberapa kromosom bergabung.

i. Offspring merupakan kromosom baru

yang dihasilkan setelah melewati suatu generasi.

Penjadwalan

Penjadwalan merupakan proses untuk menyusun suatu jadwal atau urutan proses yang diperlukan dalam sebuah persoalan.

Persoalan penjadwalan biasanya

berhubungan dengan penjadwalan kelas dalam sekolah atau perkuliahan dan juga dalam lingkup yang tidak jauh berbeda seperti penjadwalan pelajaran sekolah,

penjadwalan ujian, atau bisa juga

penjadwalan karyawan, baik dalam suatu perusahaan ataupun dalam rumah sakit[3].

Dalam penjadwalan kuliah, akan dibahas tentang pembagian jadwal untuk tiap mahasiswa pada kuliah tertentu

sekaligus dosen pengajarnya, dalam

penjadwalan pelajaran sekolah akan

dibahas tentang pembagian jadwal

pelajaran untuk tiap-tiap kelas yang ada beserta guru pengajar pelajaran tersebut, dalam penjadwalan ujian akan dibahas pengaturan dosen yang menjaga ujian dan mahasiswa atau murid yang menempati ruang ujian yang ada, sedangkan pada

penjadwalan karyawan, dilakukan

pengaturan karyawan yang akan bekerja pada waktu tertentu di bagian tertentu.

3. Metode Penelitian Analisa Input

Analisa input merupakan analisa

yang menjadi masukan (input) dalam

pembuatan jadwal kuliah pada sistem yang sedang berjalan. Adapun Input yang berlaku pada sistem pembuatan jadwal kuliah meliputi : Kurikulum Mata Kuliah, Pengelompokan Bidang Keilmuan Dosen, Pendataan Kelas dan Ruangan Kuliah.

Analisa Output

Analisa output merupakan analisa

yang menjadi keluaran (output) dalam

pembuatan jadwal kuliah pada sistem yang

sedang berjalan. Adapun hasil keluaran pada sistem berjalan adalah Jadwal Kuliah per Semester.

Alur Diagram Algoritma Genetika Berikut ini gambar alur diagram Algoritma Genetika :

Gambar 1 Alur Diagram Algoritma Genetika

Inisialisasi Populasi

Tahapan pertama dalam AG adalah inisialisasi populasi yakni melakukan penentuan nilai awal. Bagian penentuan

nilai awal ini merupakan input yang

dilakukan oleh pengguna sendiri.

Input-input yang diperlukan dalam AG pada

skripsi ini meliputi[3]:

a. Penentuan banyaknya data dalam

(4)

Mulai

Kromosom (Populasi),

JumGen

UkGen  UkGen ke -1

UkPop  UkGen ke-n

dengan i + 1

Populasi Baru

Fitness 1/UPop

Fitness Kromosom

Selesai

b. Penentuan besar populasi dalam satu

generasi (PopSize).

c. Penentuan banyak generasi yang

akan dilakukan (MaxG).

d. Penentuan besar crossover

probability, Pc (peluang terjadinya pindah silang).

e. Penentuan besar mutation

probability, Pm (peluang terjadinya mutasi).

Gambar 2 Inisiliasasi Populasi

Evaluasi Individu

Tahap kedua dari AG adalah evaluasi

individu, dimana proses ini akan

menghitung nilai fitness dari setiap

kromosom yang telah dibangkitkan secara random pada tahap inisialisasi populasi di atas.

Nilai fitness dari setiap koromosom

dihitung berdasarkan nilai konflik dari masing-masing populasi gen.

Gambar 3 Evaluasi Individu

Elitisme

Input pada prosedur ini adalah

Populasi, indeks kromosm terbaik dan

ukuran populasi PopSize. Apabila PopSize

bernilai genap, maka variabel IterasiMulai diberi nilai 3 dan kromosom terbaik akan dikopi sebanyak 2 kali yang

masing-masing disimpan pada variabel

TempPopulasi. Namun jika PopSize

bernilai ganjil maka variabel IterasiMulai diberi nilai 2 dan kromosom terbaik dikopi sebanyak 1 kali yag disimpan pada variabel TempPopulasi[3].

(5)

Mulai KumulatifFitness 0

RNRandom sebuah

Pindexi KromosomIndex Selesai ii+1 potong TP1 dan

TP2 secara Sisagen Bapak 

Anak(2,cps+1xpd  Anak[2]Sisagen

Ibu

Penskalaan Nilai Fitness (Linear Fitness Ranking)

Perbedaan nilai-nilai fitness yang

terlalu kecil pada semua individu dalam

populasi akan menyebabkan

kencenderungan konvergen pada optimum

lokal. Maka untuk menguranginya

digunakan penskalaan nilai fitness[2].

Gambar 5 Penskalaan Nilai Fitness

Seleksi

Metode seleksi yang digunakan pada

proses seleksi ini adalah metode roulette

wheel . Pada tahap ini akan dilakukan penyeleksian kromosom berdasarkan nilai

fitness-nya untuk memilih kromosom mana yang akan megalami proses perkawinan atau pindah silang. Kromosom yang

benilai fitness tinggi memiliki kesempatan

terpilih lebih besar. Namun, tidak menutup kemungkinan kromosom yang bernilai

fitness rendah akan terpilih juga[4].

Gambar 6 Seleksi

Pindah Silang (Cross Over)

Prosedur pindah silang adalah

prosedur untuk mengkawinkan dua induk

yang telah dipilih pada proses roulette

wheel, namun tidak semua induk akan mengalami pindah silang karena proses pindah silang ini banyak dikendalikan oleh beberapa bilangan random[4].

(6)

Mutasi

Mutasi dilakkan dengan cara

menukarkan gen-gen yang dipilih secara acak dengan gen yang dipilih secarak acak juga. Jumlah kromosom yang mengalami mutasi dalam satu populasi ditentukan oleh

parameter probabilitas mutasi Pm.

Diperkirakan total gen yang mengalami

mutasi pada seluruh generasi adalah Pm x

PopSize x MaxG[4].

Gambar 8 Mutasi

Pergantian Populasi

Untuk pergantian populasi dalam

suatu generasi digunakan general

replacement yaitu pergantian populasi secara keseluruhan. Populasi pada generasi

sebelumnya yang merupakan parent

diganti seluruhnya dengan populasi baru yang merupakan anak atau turunannya (offspring). Populasi pada generasi

berikutnya adalah kromosom bentukan baru hasil pindah silang dan mutasi serta

ditambah kromosom hasil elitisme.

Prosedur yang sama akan berlaku

untuk populasi baru, yakni akan

mengalami tahapan yang sama dengan populasi sebelumnya. Apabila perhitungan dilanjutkan sampai generasi ke MaxG maka akan didapatkan nilai fitness

tertinggi dari seluruh genersi yang

menunjukkan kromosom terbaik yang akan diambil sebagai solusi[4].

4. Hasil

Berdasarkan teori Algoritma Genetika maka dapat dibuktikan hasil komputasi dari pembuatan Jadwal Kuliah pada AMIK

Mitra Gama menggunakan bahasa

pemrograman Visual Basic dan basis datanya menggunakan aplikasi Database MySQL adalah sebagai berikut :

Gambar 9 Hasil Komputasi

5. Kesimpulan

Ada beberapa kesimpulan yang diambil dari simulasi jadwal kuliah menggunakan metode algoritma genetika, yaitu :

a. Dari hasil pembahasan masalah, maka

(7)

b. Sistem yang dibangun dapat menghasilkan jadwal yang optimal, terbukti dengan tidak terdapat konflik jadwal dosen, kelas dan ruangan pada periode yang sama dan terbentuknya kombinasi jadwal dengan nilai konflik

terkecil dari jadwal awal yang

dibentuk secara random.

c. Jadwal yang dihasilkan oleh sistem

tidak selalu memiliki kombinasi yang sama dengan jadwal yang dibentuk secara manual.

d. Dari hasil penelitian dapat dibuktikan,

bahwa algoritma genetika dapat

menyelesaikan suatu masalah yang kompleks dan rumit khususnya dalam pembuatan jadwal kuliah di perguruan tinggi.

Daftar Pustaka

[1] Nugaraha Iva, Aplikasi Algoritma

Genetik untuk Optimasi Penjadwalan Kegiatan Belajar Mengajar, Jurnal

Teknologi Informasi Volume

(2008:1): 2

[2] Made Darma Yunantara, I Gede Santi

Astawa, Ngr. Agus Sanjaya ER,

Analisis dan Implementasi Penjadwalan dengan Menggunakan Pengembangan Model Crossover Dalam Algoritma Genetika, ELIKU Vol (1 No. 2 Nopember 2012):16

[3] Anita Desiani, Muhammad Arhami.

Konsep Kecerdasan Buatan. Andi Offset. Yogyakarta. 2006:10

[4] Suyanto. Artificial Intelligence,

Informatika Bandung.Bandung. ,

2007:25

[5] Chandra, Michael. Optimasi

Penjadwalan Kuliah Dengan Algoritma Genetik. Media Jakarta. 2005:33

[6] Suyanto. Algoritma Genetika Dalam

Gambar

Gambar 1 Alur Diagram Algoritma
Gambar 3 Evaluasi Individu
Gambar 6 Seleksi
Gambar 8 Mutasi

Referensi

Dokumen terkait

Kandungan logam berat tertinggi yang ditemukan pada sampel sedimen di muara Krueng Aceh adalah Zn dengan konsentrasi 29,633 mg/kg dan nilai rata-ratanya masih berada di bawah

Sekiranya Kementerian Kewangan Malaysia mendapati syarikat telah melanggar syarat-syarat yang ditentukan di atas, ataupun telah menyerahkan pengurusan syarikat dan kontrak

Penawaran secara tidak lansung (indirect service) yakni masyarakat yang menjadi peserta asuransi mendatang kantor asuransi. Adapun pola penarikan dana peserta yang

Dalam hal ini faktor-faktor yang dianggap memiliki pengaruh terhadap pembiayaan tersebut antara lain Capital Adequacy Ratio (CAR), Non Performing.. Oleh sebab itu,

Dalam mengimplementasikan PAK keluarga tentunya membutuhkan dana, untuk itu orang tua sebagai penanggungjawab PAK keluarga harus memikirkan pendanaan atau dana yang

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

Sementara itu untuk uji kemaknaan hubungan antara Rasio Lingkar Pinggang Pinggul dengan kadar HDL nilai -value adalah 0.734 ( > α) yang berarti bahwa tidak

dilakukan dalam analisis secara spektrofotometri UV-Vis karena pada panjang gelombang maksimum dihasilkan absorbansi tertinggi yang menunjukkan kepekaan