## PENGEMBANGAN APLIKASI PENJADWALAN KULIAH SEMESTER I MENGGUNAKAN ALGORITMA GENETIKA

## Bagus Priambodo
Program Studi Sistem Informasi Fakultas Ilmu Komputer Universitas Mercu Buana e- mail : bagus.priambodo@mercubuana.ac.id

## ABSTRAK
Pembuatan jadwal adalah sebuah masalah periodik yang selalu dihadapi oleh sekolah dan universitas. Sebuah  jadwal  muncul  lebih  dahulu  sebelum  mahasiswa  memilih  perkuliahan  yang  akan  diikutinya, sehingga kecendrungan bahwa mahasiswa-lah yang menyesuaikan diri dengan jadwal. Meski demikian ada  beberapa  ketentuan  penjadwalan  yang  mendasar  dalam  membangun  sebuah  jadwal  yang  layak, ketentuan ini bersifat harus dipenuhi agar penjadwalan bisa diterima. Universitas mercu buana memiliki ketentuan  khusus  dalam  mengatur  pembuatan  jadwal  perkuliahan  yang  mengikat  agar  program  studi mengikuti ketentuan yang telah ditetapkan universitas. Penelitian kali ini membuat penjadwalan secara otomatis menggunakan algoritma genetika akan tetapi tidak semua jadwal akan dibuat melainkan hanya membuat penjadwalan untuk mahasiswa semester I.
Kata Kunci —Penjadwalan, Algoritma genetika, Sistem Informasi.

## 1. PENDAHULUAN
Pembuatan  jadwal  adalah  sebuah masalah periodik  yang  selalu  dihadapi  oleh  sekolah  dan  universitas.  Dengan banyaknya faktor yang mempengaruhi penyusunan suatu jadwal seperti jumlah ruangan, daya tampung ruangan, dan  slot  waktu  yang  sedikit  menjadikan  penyusunan  jadwal  perkuliahan  lebih  rumit.  Dasar  permasalahan penyusunan jadwal kuliah di universitas adalah bagaimana menempatkan perkuliahan pada slot waktu terbatas pada ruangan kuliah yang sesuai untuk pertemuan tersebut dan mahasiswa bisa menghadiri semua perkuliahan yang diikutinya. Namun umumnya sebuah jadwal muncul lebih dahulu sebelum mahasiswa memilih perkuliahan yang  akan  diikutinya,  sehingga  kecendrungan  bahwa  mahasiswa-lah  yang  menyesuaikan  diri  dengan  jadwal. Meski  demikian  ada  beberapa  ketentuan  penjadwalan  yang  mendasar  dalam  membangun  sebuah  jadwal  yang layak, ketentuan ini bersifat harus dipenuhi agar penjadwalan bisa diterima.  Universitas mercu buana memiliki ketentuan khusus dalam mengatur pembuatan jadwal perkuliahan yang mengikat agar program studi mengikuti ketentuan yang telah ditetapkan universitas.
Ketentuan yang berlaku di Universitas Mercu Buana pada semester ganjil antara lain:
1. Reguler kuliah dari hari senin sampai dengan hari jumat.
2. Terdapat empat sesi perkuliahan yaitu sesi pagi : sesi I (07.30-10.00), sesi II (10.15-12.45), sesi siang : sesi III(13.00-15.30) sesi IV(15.45-18.15) dan sesi malam / e-learning sesi V (19.00-21.30)
3. Mata Kuliah MKCU (2 sks) di laksanakan pada hari jumat. Sesi I s/d sesi IV.
4. Mahasiswa semester I, V diberikan jadwal pada hari selasa rabu kamis pada sesi I dan II
5. Hari senin khusus jadwal tambahan untuk mahasiswa semester V
6. Mahasiswa semester III diberikan jadwal hari senin, selasa, rabu pada sesi 3 dan sesi 4
7. Mahasiswa semester VII diberikan jadwal hari rabu dan kamis pada sesi 3 dan sesi 4.
8.
Penelitian  kali  ini  akan  membuat  penjadwalan  secara  otomatis  menggunakan  algoritma  genetika  akan  tetapi tidak semua jadwal akan dibuat melainkan hanya membuat penjadwalan untuk mahasiswa semester I.
Ketentuan yang harus dipenuhi pada penelitian kali ini adalah:
1. Perkuliahan semester I tidak bisa dijadwalkan pada slot hari dan waktu yang sama
2. Mata kuliah mkcu selain aplikom di buat jadwal pada hari jumat pada sesi pagi.
3. Mata kuliah prodi dan aplikkom di berikan jadwal pada hari selasa sd kamis sesi I dan sesi II.
4. Dosen tidak diatur

## Ruangan tidak diatur.

## 1.2. Rumusan Masalah
Perumusan masalah yang akan dibahas pada penelitian ini adalah:
1.Mengetahui bagaimana membuat sistem penjadwalan semester I secara otomatis dengan constraint  yang ada pada program studi informasi
2.Mengetahui apakah algoritma genetika dapat diterapkan dalam pembuatan jadwal secara otomatis pada prodi Sistem Informasi.

## 1.3. Batasan Masalah
Masalah yang akan dibahas pada penelitian kali mencakup : 1.Pembuatan jadwal kuliah hanya untuk semester I
2.Mengikuti aturan yang berlaku di Universitas Buana
3.Tidak membuat GUI input data secara lengkap hanya akan menampilkan hasil akhir pembuatan jadwal.

## 1.4 Tujuan
Adapun tujuan dari pembuatan penelitian ini adalah :
1. Membuat  aplikasi  penjadwalan  kuliah  semester  I  secara  otomatis  mengikuti  aturan  yang  berlaku  di Universitas mercu buana
2. Mengetahui apakah algoritma genetika dapat digunakan untuk membuat jadwal perkuliahan semester I pada program studi sistem informasi Universitas Mercu Buana.

## 1.5.  Manfaat
Dengan  mengetahui  hasil  pembuatan  jadwal  perkuliahan  semester  I  secara  otomatis.  Diharapkan  dapat digunakan untuk pengembangan aplikasi yang dapat membuat penjadwalan perkuliahan semua semester dengan penambahan constraint sesuai dengan situasi sebenarnya.

## 2. LANDASAN TEORI

## 2.1 Pengertian Algoritma Genetika
Sejak  algortima  genetika  (AG)  pertama  kali  dirintis  oleh  John  Holland  dari  Universitas  Michigan  pada  tahun 1960-an (Sanjoyo, 2006), AG telah diaplikasikan secara luas pada berbagai bidang. AG banyak digunakan untuk memecahkan  masalah  optimasi,  walaupun  pada  kenyataannya  juga  memiliki  kemampuan  yang  baik  untuk masalah-  masalah  selain  optimasi.  John  Holland  menyatakan  bahwa  setiap  masalah  yang  berbentuk  adaptasi (alami  maupun  buatan)  dapat  diformulasikan  dalam  terminologi  genetika.  Algoritma  genetika  adalah  simulasi dari  proses  evolusi  Darwin  dan  operasi  genetika  atas  kromosom.  Pada  algoritma  genetika,  teknik  pencarian dilakukan sekaligus atas sejumlah solusi yang mungkin dikenal dengan istilah populasi. Individu yang terdapat dalam  satu  populasi  disebut  dengan  istilah  kromosom.  Kromosom  ini  merupakan  suatu  solusi  yang  masih berbentuk simbol. Populasi awal dibangun secara acak, sedangkan populasi berikutnya merupakan hasil evolusi kromosom-kromosom  melalui  iterasi  yang  disebut  dengan  generasi.  Pada  setiap  generasi,  kromosom  akan melalui  proses  evaluasi  dengan  menggunakan  alat  ukur  yang  disebut  dengan  fungsi  fitness.  Nilai  fitness  dari suatu  kromosom  akan  menunjukkan  kualitas  dari  kromosom  dalam  populasi  tersebut.  Generasi  berikutnya dikenal  dengan  istilah  anak  (offspring)  terbentuk  dari  gabungan  dua  kromosom  generasi  sekarang  yang bertindak  sebagai  induk  (parent)  dengan  menggunakan  operator  penyilangan  (crossover).Selain  operator penyilangan, suatu kromosom dapat juga dimodifikasi dengan menggunakan operator mutasi. Populasi generasi yang  baru  dibentuk  dengan  cara  menyeleksi  nilai  fitness  dari  kromosom  induk  (parent)  dan  nilai  fitness  dari kromosom  anak  (offspring),  serta  menolak  kromosom-kromosom  yang  lainnya  sehingga  ukuran  populasi (jumlah kromosom dalam suatu populasi) konstan. Setelah melalui beberapa generasi, maka algoritma ini akan konvergen ke kromosom terbaik. Ada tiga keunggulan dari aplikasi Algoritma Genetika dalam proses optimasi, yaitu:
(a)  Algoritma  Genetika  tidak  terlalu  banyak  memerlukan  persyaratan  matematika  dalam  penyelesaian  proses optimasi. Algoritma  Genetika dapat  diaplikasikan  pada  beberapa  jenis  fungsi  obyektif  dengan  beberapa  fungsi pembatas baik berbentuk linier maupun non-linier;
(b) Operasi evolusi dari Algoritma Genetika sangat efektif untuk mengobservasi posisi global secara acak; dan (c)  Algoritma  Genetika  mempunyai  fleksibilitas  untuk  diimplementasikan  secara  efisien  pada  problematika tertentu.

## 2.2 Nilai Fitness
Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai ukuran performansinya (Sanjoyo, 2006). Di dalam  evolusi  alam,  individu  yang  bernilai  fitnes  tinggi  yang  akan  bertahan  hidup.  Sedangkan  individu  yang bernilai  fitness  rendah  akan  mati.  Pada  masalah  optimasi,  solusi  yang  akan  dicari  adalah  memaksimumkan sebuah  fungsi  likelihood  dan  meminimumkan  least  square  baik  untuk  fungsi  produksi  Cobb-Dauglas  maupun fungsi produksi CES.

## 2.3 Seleksi Orang tua
Pemilihan  dua  buah  kromosom  sebagai  orang  tua,  yang  akan  dipindahsilangkan,  biasanya  dilakukan  secara proporsional  sesuai  dengan  dengan  nilai  fitness-nya.  Suatu  metoda  seleksi  yang  umumnya  digunakan  adalah roulette  wheel  (roda  raoulette).  Sesuai  dengan  namanya,  metoda  ini  menirukan  permainan  roulette  wheel  di mana  masing-masing  kromosom  menempati  potongan  lingkaran  pada  roda  raulette  secara  proporsional  sesuai dengan nilai fitnessnya. Kromosom yang memiliki nilai fitness lebih besar menempati potongan lingkaran yang lebih besar dibandingkan dengan kromosom bernilai fitness rendah.

## Gambar 1. Seleksi kromosom menggunakan route wheel
Metoda  raulette-wheel  selection  sangat  mudah  diimplementasikan  dalam  pemprograman.  Pertama,  dibuat interval  nilai  kumulatif  dari  nilai  fitness  masing-masing  kromosom.  Sebuah  kromosom  akan  terpilih  jika bilangan random yang dibangkitkan berada dalam interval kumulatifnya. Pada Gambar 2 di atas, K1 menempati interval kumulatif [0;0,25], K2 berada dalam interval (0,25;0,74], K3 dalam interval (0,75;0,875] dan K4 berada dalam  interval  (0,875;1].  Misalkan,  jika  bilangan  random  yang  dibangkitkan  adalah  0,6  maka  kromosom  K2 terpilih sebagai orang tua. Tetapi jika bilangan random yang dibangkitkan adalah 0,9 maka kromosom K4 yang terpilih.

## 2.4 Pindah Silang/Cross Over
Salah satu komponen yang paling penting dalam algoritma genetik adalah crossover atau pindah silang. Sebuah kromosom  yang  mengarah  pada  solusi  yang  baik  dapat  diperoleh  dari  proses  memindah-silangkan  dua  buah kromosom.
Gambar 2 : Contoh Proses Pindah Silang
Pindah  silang  juga  dapat  berakibat  buruk  jika  ukuran  populasinya  sangat  kecil.  Dalam  suatu  populasi  yang sangat  kecil,  suatu  kromosom  dengan  gen-gen  yang  mengarah  ke  solusi  akan  sangat  cepat  menyebar  ke kromosomkromosom lainnya. Untuk mengatasi masalah ini digunakan suatu aturan bahwa pindah silang hanya bisa dilakukan dengan suatu probabilitas tertentu, artinya pindah silang bisa dilakukan hanya jika suatu bilangan random yang dibangkitkan kurang dari probabilitas yang ditentukan tersebut. Pada umumnya probabilita tersebut diset mendekati 1. Pindah silang yang paling  sederhana adalah  pindah  silang  satu  titik  potong  (one-pointcrossover).  Suatu  titik  potong  dipilih  secara random, kemudian bagian pertama dari orang tua 1 digabungkan dengan bagian kedua dari orang tua 2 (terlihat pada gambar 2 ). Crossover adalah operator Algoritma Genetika yang utama karena beroperasi pada dua kromosom pada suatu waktu dan membentuk offspring dengan mengkombinasikan dua bentuk kromosom. Cara sederhana untuk memperoleh crossover adalah dengan memilih suatu titik yang dipisahkan secara random dan kemudian  membentuk  offspring  dengan  cara  mengkombinasikan  segmen  dari  satu  induk  ke  sebelah  kiri  dari titik yang dipisahkan dengan segmen dari induk yang lain ke sebelah kanan dari titik yang dipisahkan.  Metode ini  akan  berjalan  normal  dengan  representasi  bit  string.  Performa  dari  Algoritma  Genetika  bergantung  pada performa dari operator crossover yang digunakan.
Crossover  rate  merupakan  rasio  antara  jumlah  offspring  yang  dihasilkan  pada  setiap  generasi  terhadap  luas populasinya.  Semakin  tinggi  crossover  rate  akan  memungkinkan  eksplorasi  ruang  solusi  yang  lebih  luas  dan mereduksi  kemungkinan  jatuh  pada  kondisi  optimum  yang  salah.  Namun  memberikan  rate  yang  memberikan konsekuensi  makin  lamanya  waktu  perhitungan  yang  diperlukan  sebagai  akibat  eksplorasi  pada  luas  populasi yang ada.

## 2.5 Mutasi
Mutasi  dapat  dilakukan  dari  semua  gen  yang  ada  dengan  probabilitas  mutasi  tertentu.  Jika  bilangan  random yang  dibangkitkan  kurang  dari  probabilitas  mutasi  yang  ditentukan  maka  ubah  gen  tersebut  menjadi  nilai kebalikan yang dalam hal ini, binary encoding, 0 diubah 1, dan 1 diubah 0. Bila mana probabilitas mutasi adalah (1/12  )  maka  sebanyak  1  gen  akan  dimutasi  dari  kromosom  yang  terdiri  dari  12  gen  (bits).  Pada  algoritma genetika  yang  sederhana,  nilai  probabilitas  mutasi  adalah  tetap  selama  evolusi.  Gambar  3  menunjukan  proses mutasi yang terjadi pada gen 5.
Gambar 3 : Contoh Proses Mutasi

## 3. Metode Penelitian
Metode penelitian yang akan dilakukan adalah sebagai berikut :
1. Menyiapkan data yang akan digunakan untuk pembuatan jadwal yaitu data mata kuliah semester I, data hari dan waktu.
2. Menyiapkan  aturan  pembuatan  jadwal  untuk  semester  I  mengikuti  aturan  yang  ada  di  Universitas Mercu Buana
3. Membuat algoritma genetika dengan data input dan aturan yang di tentukan
4. Membuat aplikasi yang menerapkan algoritma genetika untuk membuat jadwal.
5. Testing pembuatan jadwal secara otomatis.

## 3.1 Analisa dan Perancangan
Universitas  mercu  buana  memiliki  ketentuan  khusus  dalam  mengatur  pembuatan  jadwal  perkuliahan  yang mengikat agar program studi mengikuti ketentuan yang telah ditetapkan universitas. Ketentuan yang berlaku di Universitas Mercu Buana pada semester ganjil antara lain
1. Reguler kuliah dari hari senin sampai dengan hari jumat.
2. Terdapat empat sesi perkuliahan yaitu sesi pagi : sesi I (07.30-10.00), sesi II (10.15-12.45), sesi siang : sesi III(13.00-15.30) sesi IV(15.45-18.15) dan sesi malam / e-learning sesi V (19.00-21.30)
3. Mata Kuliah MKCU (2 sks) di laksanakan pada hari jumat. Sesi I s/d sesi IV.
4. Mahasiswa semester I, V diberikan jadwal pada hari selasa rabu kamis pada sesi I dan II
5. Hari senin khusus jadwal tambahan untuk mahasiswa semester V
6. Mahasiswa semester III diberikan jadwal hari senin, selasa, rabu pada sesi 3 dan sesi 4
7. Mahasiswa semester VII diberikan jadwal hari rabu dan kamis pada sesi 3 dan sesi 4.
Penelitian  kali  ini  akan  membuat  penjadwalan  secara  otomatis  menggunakan  algoritma  genetika  akan  tetapi tidak semua jadwal akan dibuat melainkan hanya membuat penjadwalan untuk mahasiswa semester I. Ketentuan yang harus dipenuhi pada penelitian kali ini adalah:
1. Perkuliahan semester I tidak bisa dijadwalkan pada slot hari dan waktu yang sama
2. Mata kuliah mkcu selain aplikom di buat jadwal pada hari jumat pada sesi pagi.
3. Mata kuliah prodi dan aplikom di berikan jadwal pada hari selasa sd kamis sesi I dan sesi II.
4. Dosen tidak diatur
5. Ruangan tidak diatur.

## Use Case Aplikasi

## Sistem Penjadwalan Mata Kuliah
Sekprodi Staff Mengelola Mata Kuliah dosen Mengelola data mata kuliah Mengelola data Ruangan Mengelola Kurikulum Mengelola Jadwal Kuliah Melihat Laporan Jadwal Kuliah * * * * * * * * * * Mengelola data dosen Mengelola Constraint * * «extends» «extends»
Gambar 4 Use case penjadwalan kuliah

## Use Case Description
Guna  menggambarkan  secara detail use case yang  ada  dalam  sistem  penjadwalan  ini maka  berikut  ini adalah deskripsinya  dalam  bentuk use  case  description. Agar  lebih  memudahkan.  Maka,  dalam  membuat use  case description ini  penulis  menggunakan  tipe use  case overview  dan  essential  dimana  pada use  case  description tersebut  hanya  menjelaskan  gambaran  umum  dan  poin-poin  yang  penting  saja  seperti Use  Case  Name,  ID Number, Primary Actor, Type, dan Brief Description.
Use case Name: Mengelola Data Mata Kuliah ID: 1 Primary Actor: Staff Use Case Type: Overview, Essential Brief Description: Staff dapat mengelola data mata kuliah yang ada
Use Case Description Mengelola Data Mata Kuliah
Use case Name: Mengelola Data Ruangan ID: 2 Primary Actor: Staff Use Case Type: Overview, Essential Brief Description: Staff dapat mengelola data ruangan yang ada Use Case Description Mengelola Data Ruangan Use case Name: Mengelola Data Dosen ID: 3
Primary Actor: Staff
Use Case Type: Overview, Essential
Brief Description: Staff dapat mengelola data dosen yang ada
Use Case Description Mengelola Data Dosen Use case Name: Mengelola Mata Kuliah Dosen ID: 4 Primary Actor: Staff Use Case Type: Overview, Essential Brief Description: Staff dapat mengelola data mata kuliah yang diajarkan oleh dosen Use Case Description Mengelola Mata Kuliah Dosen Use case Name: Mengelola Constraint Dosen ID: 5 Primary Actor: Staff Use Case Type: Overview, Essential
Brief Description: Staff dapat mengelola constraint setiap dosen, yaitu dimana dosen tidak dapat mengajar pada waktu tersebut Use Case Description Mengelola Constraint Dosen Use case Name: Mengelola Kurikulum ID: 6 Primary Actor: Sekprodi Use Case Type: Overview, Essential Brief Description: Sekprodi dapat mengelola kurikulum berdasarkan data mata kuliah Use Case Description Mengelola Kurikulum Use case Name: Mengelola Jadwal ID: 7 Primary Actor: Sekprodi Use Case Type: Overview, Essential
Brief Description: Sekprodi dapat mengelola jadwal kuliah berdasarkan data mata kuliah, dosen, dan ruang kelas yang mengacu pada kurikulum yang telah dibuat sebelumnya
Use Case Description Mengelola Jadwal
Use case Name: Melihat Laporan Jadwal Kuliah ID: 8 Primary Actor: Sekprodi Use Case Type: Overview, Essential Brief Description: Sekprodi dapat melihat laporan jadwal kuliah yang telah dibuat
Use Case Description Melihat Laporan Jadwal Kuliah

## Activity Diagram
Berdasarkan proses yang terjadi maka dibuatlah activity diagram untuk menggambarkan aktivitas yang terdapat didalam sistem penjadwalan tersebut.
Login Pilih Menu Mata Kuliah Cari data mata kuliah Lihat data mata kuliah Masukkan data mata kuliah Ubah data mata kuliah Gambar 5 . Activity Diagram Mengelola Data Mata Kuliah
Login Pilih Menu Dosen Cari data dosen Lihat Data Dosen Masukkan Data Dosen Ubah Data Dosen
Gambar 6. Activity Diagram Mengelola Mata Kuliah Dosen
Login Pilih Menu Dosen Cari data dosen Lihat Data Dosen input Constraint Ubah Constraint Lihat Data Constraint Gambar 7 . Activity Diagram Mengelola Constraint

## 4 Pembahasan
Menyiapkan data input
Data yang diperlukan dalam pembuatan jadwal semester I ini antara lain :
Tabel 1 Data Mata Kuliah No Kode Mata Kuliah 1 90001 APLIKASI KOMPUTER 2 90002 PENDIDIKAN AGAMA ISLAM 3 90037 PANCASILA 4 87001 DASAR PEMROGRAMAN 5 18001 PENGANTAR AKUNTANSI 6 87005 MATEMATIKA DASAR 7 87004 LOGIKA MATEMATIKA 8 18002 PENGANTAR MANAJEMEN DAN BISNIS Tabel 2. . Data Hari No Hari 1 Senin 2 Selasa 3 Rabu 4 Kamis 5 Jumat Tabel 3 Data Waktu / Sesi Sesi Jam I 07.30-10.00 II 10.15-12.45 III 13.00-15.30 IV 15.45-18.15 V 19.00-21.30
Aturan / Constraint Jadwal
Ketentuan yang harus dipenuhi pada penelitian ini adalah:
1. Perkuliahan semester I tidak bisa dijadwalkan pada slot hari dan waktu yang sama
2. Mata kuliah mkcu selain aplikom di buat jadwal pada hari jumat pada sesi pagi.
3. Mata kuliah prodi dan aplikkom di berikan jadwal pada hari selasa sd kamis sesi I dan sesi II.
4. Dosen tidak diatur
5. Ruangan tidak diatur
Alur algoritma yang digunakan dalam pembuatan aplikasi
Gambar 9 . Flow Chart Algoritma Genetika
Penjelasan Algoritma :

## 1. Pembangkitkan populasi
Populasi adalah kumpulan dari kromosom. Di mana kromosom terdiri dari gen. Pada penelitian kali ini susunan gen pada kromosom mengikuti dari jurnal (Ivan, 2008), (Pradnyana,2012) akan terdiri sebagai berikut :
Gambar 10 . Penjelasan kromosom
Untuk penelitian kali ini akan dibangkitkan 10 populasi pada pembangkitkan populasi 1; 52; 52; 22; 41; 21; 22; 42; 42 2; 52; 52; 31; 21; 31; 32; 22; 32 3; 51; 52; 31; 31; 41; 22; 42; 21 4; 52; 51; 21; 42; 21; 21; 42; 22
5; 51; 52; 21; 32; 32; 31; 42; 22
6; 52; 52; 31; 21; 31; 21; 42; 32
7; 51; 51; 42; 41; 41; 32; 32; 42
8; 52; 51; 31; 22; 21; 32; 31; 41
9; 52; 52; 42; 41; 42; 42; 22; 31 10; 52; 51; 21; 21; 32; 41; 41; 21

## 2. Penghitungan Fitness
Memilih  faktor  yang  mempengaruhi  pada  pembuatan  jadwal,  pada  penelitian  ini  faktor  yang  mempengaruhi hanya mata kuliah tidak boleh berada pada hari dan waktu yang sama. Oleh karena itu perlu di cari jumlah mata kuliah yang sama (F) dan tentukan bobot (B) sebesar 30.
Rumus menentukan fitness adalah Fitness = 1 / ( F x B )

## 3. Seleksi Individu
Seleksi Individu akan dilakukan menggunakan metode route wheel

## 4. Cross Over
Cross Over antar kromosom ditetapkan cross over rate sebesar 0.3 5. Mutasi
Mutasi gen pada kromosom ditetapkan mutasi rate sebesar 0.1 Proses dilakukan sebanyak 5000 iterasi.. Implementasi
Pada  bab  ini  akan  dibahas  bagaimana  menjalankan  program  untuk  mengenerate  penjadwalan. Aplikasi  sangat sederhana  hanya  berisi  sebuah  text  box  dan  sebuah  tombol  untuk  mengenerate  penjadwalan.  Apabila  tombol ditekan akan menampilkan populasi awal sebanyak 10 kromosom dan hasil penjadwalan
Gambar 11 . Aplikasi Penjadwalan
Dari gambar terlihat bahwa aplikasi cukup berhasil dalam men generate jadwal perkuliahan. 52 51 31 32 42 22 21 41 kemudian akan di dekode menjadi jadwal perkuliahan sebagai berikut :

## Tabel 4 Jadwal Perkuliahan Hasil Dekode

## 5. KESIMPULAN DAN SARAN

## 5.1 Kesimpulan
1. Dari hasil analisa yang dilakukan dapat ditarik kesimpulan sebagai berikut:
2. Aplikasi dapat digunakan untuk membuat jadwal kuliah semester 1 secara otomatis sesuai dengan ketentuan di Universitas Mercu Buana.
3. Algoritma genetika cukup efektif digunakan untuk pembuatan jadwal semester 1 secara otomatis

## 5.2 Saran
Guna  perbaikan  dan  memberikan  masukan  bagi  penelitian  selanjutnya,  maka  dapat  disampaikan  saran-saran ataupun rekomendasi sebagai berikut:
Constraint baru  ditambahkan,  seperti  kesedian  waktu  dosen  mengajar,  dosen  pengampu  yang  sesuai  dengan mata kuliah. Ditambahkan penjadwalan semester 1,3 dan 5.

## DAFTAR PUSTAKA
[1].  Sanjoyo. (2006) Aplikasi Algoritma Genetika.
[2]. Pradnyana, Nanda Bagus, Dwi Sunaryono, dan Abdul Munif. 2012. “Perancangan dan Pembuatan Aplikasi Penjadwalan Perkuliahan Menggunakan Algoritma Genetik dan Teknologi Java API for XML Web Service pada Platform Android”.Jurnal Teknik Pomits Vol. 1, No. 1, (2012) 1-5.
[3].  Nugraha,  Ivan.  2008.  “Aplikasi Algoritma  Genetik  Untuk  Optimasi  Penjadwalan              Kegiatan  Belajar Mengajar”.  Makalah  IF2251  Strategi  Algoritmik:  Program  Studi  Teknik  Informatika,  Institut  Teknologi Bandung.