Optimasi Penjadwalan Mata Pelajaran Pada Kurikulum 2013 Dengan Algoritme Genetika (Studi Kasus: SMA Negeri 3 Surakarta)

  

Vol. 1, No. 12, Desember 2017, hlm. 1535-1542 http://j-ptiik.ub.ac.id

Optimasi Penjadwalan Mata Pelajaran Pada Kurikulum 2013 Dengan

Algoritme Genetika

  

(Studi Kasus: SMA Negeri 3 Surakarta)

1 2 3 Radita Noer Pratiwi , Imam Cholissodin , Putra Pandu Adikara

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email : raditapratiwi09@gmail.com, imamcs@ub.ac.id, adikara.putra@ub.ac.id

  

Abstrak

Penjadwalan merupakan salah satu masalah komputasi yang sulit untuk penyelesaiannya.

  Permasalahan dalam penjadwalan juga terjadi di SMA Negeri 3 Surakarta yang mana sekolah tersebut sudah menerapkan kurikulum 2013 dengan program sistem satuan kredit semester (sks) yang dalam pelaksanaannya terdiri dari dua program yaitu program 4 semester dan program 6 semester. Algoritme genetika merupakan suatu metode pencarian yang bisa digunakan untuk memperoleh solusi yang optimal. Representasi kromosom pada penelitian ini terdiri dari dua segmen, yaitu dengan panjang kromosom 748 untuk program 6 semester dan 86 untuk program 4 semester. Hasil solusi optimal didapat dari pengujian yang dilakukan sebanyak 10 kali yang menghasilkan nilai parameter optimal yaitu ukuran populasi 600 individu, jumlah generasi 1000 kali, nilai cr 0,5 dan nilai mr 0,5. Hasil solusi optimal berupa jadwal mata pelajaran untuk program 6 semester dan program 4 semester didapat dari nilai fitness tertinggi yaitu 0,16208. Hasil solusi yang didapat dari nilai fitness yang tertinggi tersebut belum optimal karena masih terdapat pelanggaran pada batasan dalam penjadwalan mata pelajaran SMA Negeri 3 Surakarta.

  Kata kunci penjadwalan, mata pelajaran, algoritme genetika

  :

  

Abstract

Scheduling is one of the most difficult computing problems to solve. Problems in scheduling

also occur in SMA Negeri 3 Surakarta which has implemented the 2013 curriculum with the system of

university credit unit which for the implementation consists of two courses, namely 4 semester program

and 6 semester program. Genetic algorithm is a search method that can be used to obtain optimal

solution. Representation of chromosome in the research is divided into two segments, those ares

chromosome length 748 for 6 semester program and 86 4 semester program. The optimal solution is

obtained from the test that conducted 10 times and obtained the optimal parameter value of population

size 600 individuals, the number of generations 1000 times, the value of cr 0.5 and the value mr 0.5. The

results of the optimal solution in the form of course schedules for the 6 semester program and 4 semester

program obtained from the highest fitness value of 0.16208. The result of the solution obtained from the

highest fitness value is not optimal because there are still violations on the constraint in the scheduling

of the courses in SMA Negeri 3 Surakarta.

  Keywords scheduling, course, genetic algorithm.

  : pembelajaran berbasis Sistem Kredit Semester

1. PENDAHULUAN (SKS) sesuai pada Kurikulum 2013 tahun ajaran

  2016/2017. Untuk tahun ajaran pertama, terdiri Penjadwalan merupakan salah satu masalah dari kelas dengan sistem pembelajaran 4 komputasi yang sulit untuk penyelesaiannya. semester dan sistem pembelajaran 6 semester. Tujuan dalam penjadwalan ialah untuk

  Tiap sistem tersebut mempunyai slot waktu menemukan slot waktu yang tepat untuk pelajaran yang berbeda dalam proses beberapa tugas atau pekerjaan dengan kebutuhan pembelajarannya. Hal tersebut menjadi masalah sumber daya yang terbatas. dalam pembuatan jadwal mata pelajaran. SMA Negeri 3 Surakarta merupakan sekolah

  Penanganan masalah dalam penjadwalan mata negeri yang sudah mulai menerapkan

  Fakultas Ilmu Komputer Universitas Brawijaya

1535 pelajaran menjadi hal yang perlu diperhatikan untuk kelancaran dalam proses belajar mengajar. Dalam penyusunan jadwal mata pelajaran harus disesuaikan dengan ketersediaan guru, waktu mengajar, mata pelajaran yang diampu tiap guru, dan porsi waktu tiap guru. SMA Negeri 3 Surakarta sebelumnya telah menggunakan aplikasi untuk penjadwalan mata pelajaran, tetapi dalam menyusun jadwal mata pelajaran masih mengalami kendala karena penggunaan aplikasi tersebut memberikan hasil yang kurang optimal dimana masih banyak terjadi bentrok serta tidak tepat antara ketersediaan guru, waktu mengajar, dan batasan-batasan dalam pembuatan jadwal mata pelajaran. Oleh sebab itu biasanya dilakukan perbaikan secara manual hingga penjadwalan mata pelajaran dinilai tepat. Cara seperti ini menjadi tidak efisien karena memerlukan waktu yang lama. Berdasarkan observasi yang telah dilakukan, komponen- komponen yang digunakan untuk penyusunan jadwal mata pelajaran, yaitu ketersediaan guru, mata pelajaran, porsi waktu mengajar setiap guru, serta waktu yang dibutuhkan dalam mengajar.

  Salah satu cabang ilmu Evolution

  crossover (penelitian ini menggunakan

  fitness

  dari tiap individu dengan rumus sebagai berikut:

  fitness

  individu baru dari parent yang telah diinisialisasi.  Evaluasi fitness yang mana menghitung

  reciprocal exchanged) untuk menghasilkan

  metode one-cut point) dan proses mutasi (penelitian ini menggunakan metode

  Menurut Mahmudy (2013), algoritme genetika terdiri dari 4 tahap utama yaitu:  Inisialisasi awal yang mana merupakan tahap membangkitkan individu secara acak.  Reproduksi yang mana terdapat proses

  Algorithms yang banyak dikenal ialah algoritme

  atau batasan dalam masalah dapat bervariasi dan mungkin ada beberapa tujuan yang berbeda. Contohnya, dalam beberapa kasus mungkin bertujuan untuk meminimalkan panjang total periode waktu yang lebih dari beberapa tugas yang telah dijadwalkan, dalam kasus lain mungkin bertujuan untuk memperoleh solusi yang baik untuk total periode waktu yang tetap, dan dalam kasus lain, bertujuan untuk memperoleh solusi yang mana dengan jumlah kendala yang dilanggar sedikit (Benli & Botsali, 2004).

  constraints

  Jadwal adalah pembagian waktu yang didasarkan pada rencana pengaturan dari urutan kerja, selain itu juga jadwal adalah sebagai rencana atau tabel kegiatan yang berisi pembagian waktu pengerjaan yang jelas dan rinci, menurut Kamus Besar Bahasa Indonesia. Penjadwalan merupakan salah satu permasalahan yang sulit untuk diselesaikan. Tujuan dalam penjadwalan adalah untuk menemukan slot waktu yang sesuai untuk beberapa tugas yang memerlukan sumber daya terbatas. Dalam permasalahan tersebut,

  2. DASAR TEORI

  Penelitian ini mengimplementasikan algoritme genetika untuk masalah optimasi penjadwalan mata pelajaran di SMA Negeri 3 Surakarta.

  Algoritme genetika juga telah digunakan untuk menyelesaikan masalah optimasi penjadwalan pada penelitian sebelumnya yang dilakukan oleh Sari (2015) yang membahas tentang penggunaan algoritme genetika untuk mengoptimasi masalah penjadwalan mata pelajaran dengan studi kasus SMPN 1 Gondang Mojokerto. Penelitian kedua oleh Ilmi (2015) penelitian yang menyelesaikan masalah penjadwalan perawat dengan menggunakan algoritme genetika. Penelitian ketiga oleh Seisarrina (2016) yang menyelesaikan masalah penjadwalan pengawas ujian semester dengan menggunakan algoritme genetika untuk studi kasus Fakultas Ilmu Komputer Universitas Brawijaya. Berdasarkan penelitian-penelitian yang telah dilakukan tersebut telah membuktikan bahwa algoritme genetika dapat digunakan dalam menyelesaikan permasalahan tentang penjadwalan.

  genetika. Algoritme genetika bisa digunakan untuk permasalahan optimasi. Algoritme genetika merupakan metode untuk menyelesaikan permasalahan optimasi dengan model matematika yang kompleks (Mahmudy, 2013).

  (x)=100/((1+penalti)) (1) Keterangan: x merupakan indeks individu ke-i. Penalti merupakan jumlah total pelanggaran terhadap constraint atau batasan yang telah ditentukan.

3. PERANCANGAN DAN

  3 Surakarta. 3.3 Representasi Kromosom Representasi kromosom yang digunakan dalam optimasi penjadwalan mata pelajaran

  Bagian ini membahas perancangan dan impelementasi sistem penjadwalan mata pelajaran SMA Negeri 3 Surakarta dengan algoritme genetika. 3.1 Perancangan sistem

  Perancangan sistem dibuat berdasarkan tahapan dalam algoritme genetika. Tahap penyelesaian masalah ditunjukan pada Gambar 1.

  IMPLEMENTASI

  86 merepresentasikan total pembagian mengajar seluruh guru pada program 4 semester. Representasi kromosom dalam penelitian ini dapat dilihat pada Gambar 2 sebagai berikut. Kromosom Kelas 4 Semester Kromosom Kelas 6 Semester Gen ke

  SMA Negeri 3 Surakarta dibagi menjadi dua segmen. Bagian pertama merepresentasikan program 6 semester dengan panjang kromosom 748, sedangkan segmen kedua merepresentasikan program 4 semester dengan panjang kromosom 86. Representasi kromosom menggunakan representasi permutasi. Kromosom dengan panjang 748 merepresentasikan total pembagian mengajar seluruh guru pada program 6 semester dan kromosom dengan panjang

  • 1 Kode Jadwal Guru Kode Jadwal Guru
  • 2 Kode Jadwal Guru Kode Jadwal Guru

  Data yang digunakan untuk penelitian ini merupakan data yang didapat melalui proses wawancara dan observasi. Data tersebut meliputi data guru, data mata pelajaran, data pembagian kelas untuk mengajar, serta data batasan dalam membuat jadwal mata pelajaran di SMA Negeri

  Proses dimulai dengan masukan pengguna sistem berupa parameter yang diperlukan dalam algoritme genetika, kemudian sistem melakukan proses perhitungan dengan algoritme genetika untuk menghasilkan jadwal yang optimal. Keluaran sistem berupa hasil jadwal mata pelajaran untuk program 6 semester dan program 4 semester. 3.2 Data Penelitian

  Gambar 1 Diagram Alur Algoritme Genetika

  Gen ke – 2 Gen ke – 3 Kode Jadwal Guru Kode Jadwal Guru Gen ke – 3 Gen ke....

   …….. Kode Jadwal Guru Gen ke – 4 Gen ke – 86Kode Jadwal Guru Kode Jadwal Guru Gen ke – 5 Kode Jadwal Guru Gen ke – 6 …….. Gen ke –…. Kode Jadwal Guru Gen ke – 748

  Gambar 2 Representasi Kromosom

  Tiap gen dalam tiap individu tersebut merepresentasikan kode mengajar yang berisi informasi tentang guru yang mengajar, kelas, kode guru, kode mata pelajaran, serta porsi slot waktu yang diberikan. Berikut contoh tabel yang merepresentasikan kode mengajar pada program 6 semester dan program 4 semester yang dapat dilihat pada Tabel 1 dan Tabel 2.

  Tabel 1. Representasi Kode Mengajar Program

  No Nama Guru Kelas 6 Semester Porsi Jam Kode Guru Kode Mata Pelajaran 1 Dra. H. Nadjah Pertiwi X MIPA 3 3 G6 M1 2 Dra. H. Nadjah Pertiwi X MIPA 4 3 G6 M1

  3 Dra. H. Nadjah Pertiwi X MIPA 5 3 G6 M1 4 Dra. H. Nadjah Pertiwi XI MIPA 6 2 G6 M1 … … … … … … Mulai Ukuran populasi, generasi, cr, mr For x = 0 to generasi - 1

  Generasi_berikutnya x Solusi_terbaik Selesai Inisialisasi Kromosom Reproduksi

  Evaluasi fitness Seleksi

  Gen ke – 1 Gen ke

  748 Drs. Sudarsono XII IPS 3 2 G16 M8 Tabel 2. Representasi Kode Mengajar Program

  4 14 11 11 16 4 Gen ke - 4 13 7

  mengajar lebih dari satu kelas dalam waktu yang bersamaan (tidak boleh terjadi bentrok waktu mengajar) yang bisa dilihat pada Tabel 3.

  constraint 1 yaitu seorang guru tidak bisa

  Berikut contoh perhitungan fitness pada

  Tahap setelah proses reproduksi ialah menghitung fitness yang didapat dari penalti terhadap pelanggaran batasan atau constraint yang dilakukan.

  5 Gambar 4. Mutasi Reciprocal Exchange 3.5 Perhitungan Fitness

  1 20 15 1 Gen ke - 18 9

  5 16 9 12 8 3 2 18 Gen ke - 13 6 8 15 6 14 17

  7 2 3 19 Gen ke - 6 10 10 12 13

  Proses mutasi dilakukan pada semua bagian (program 4 semester dan program 6 semester) dalam kromosom atau tiap individu. Proses mutasi menggunakan metode reciprocal exchanged dengan titik tukar yang ditentukan secara acak pada program 4 semester maupun program 6 semester. Contoh proses mutasi dapat dilihat pada Gambar 4 sebagai berikut. P3 Kelas 4 Semester Kelas 6 Semester

  No Nama Guru Kelas 4 Semester Porsi Jam Kode Guru Kode Mata Pelajaran 1 Dra. Hj. Nanik Murti P. X MIPA 1 2 G29 M1 2 Dra. Hj. Nanik Murti P. X MIPA 1 2 G29 M1

  3.4.2 Mutasi

  4 20 Gambar 3. Crossover One-Cut Point

  13 2 15 11 17 5 8 4 11 2

  15 6 16 8 Gen ke - 10 4 20 13 6 7 13 14 17 6 10 12 13

  8 1 10 12 9 3 9 10 12 19 7 3 16 16 6 1 Titik potong 14 14 4

  • - 8 7 Gen ke
  • 11 7 5 18 10 15 11 9 Titik potong

      3 12 1 19 5 9 3 16 1 18 2 14 2 5 8 15

      point. Contoh crossover dapat dilihat pada Gambar 3 sebagai berikut. Individu 1 (P1) Individu 2 (P2) Kelas 4 Semeste r Kelas 6 Semester Kelas 4 Semeste r Kelas 6 Semester

      Proses crossover dilakukan pada semua bagian (program 4 semester dan program 6 semester) dalam kromosom atau tiap individu. Proses crossover menggunakan metode one- cut

      3 Dra. Hj. Nanik Murti P. X MIPA 2 2 G29 M1 4 Dra. Hj. Nanik Murti P. X MIPA 2 2 G29 M1 … … … … … … 86 Drs. Sudarsono X IPS 1 2 G16 M8 3.4 Reproduksi

    3.4.1 Crossover

      Tabel 3. Pelanggaran Constraint 1

      Berdasarkan Tabel 1 diketahui bahwa kode 9 dan Gambar 6. Antarmuka Algoritme Genetika 12 merupakan guru yang sama dan mendapat jadwal di kelas yang berbeda namun di slot waktu yang sama, sehingga hal tersebut merupakan pelanggaran terhadap batasan. Dari Tabel 1 total penalti adalah 6. Perhitungan

      fitness dilakukan pada empat batasan atau constraint yang telah ditentukan dengan rumus

      pada persamaan I.

      3.6 Seleksi

      Proses seleksi menggunakan metode

      Elistism yang mana mengurutkan individu Gambar 7. Antarmuka Hasil Jadwal Program 6

      berdasar nilai fitness yang tertinggi kemudian

      Semester

      memilih individu sesuai ukuran populasi untuk diproses pada generasi selanjutnya.

      3.7 Screnshoot Hasil Implementasi

      Implementasi antarmuka untuk sistem penjadwalan mata pelajaran terdiri dari 4 halaman utama, yaitu halaman home, halaman algoritme genetika, halaman hasil jadwal, serta halaman data sekolah. Antarmuka sistem bisa dilihat pada Gambar 5, Gambar 6, Gambar 7, Gambar 8, dan Gambar 9 sebagai berikut.

      Gambar 8. Antarmuka Hasil Jadwal Program 4 Semester Gambar 5. Antarmuka Home Gambar 9. Antarmuka Data Sekolah

      4.

      waktu komputasinya. Saat jumlah generasi 1000

    PENGUJIAN DAN ANALISIS

      waktu yang dibutuhkan rata-rata 8569,3524 Penelitian ini melakukan tiga pengujian, detik. Grafik waktu komputasi pada pengujian yaitu pengujian terhadap ukuran populasi, jumlah generasi bisa dilihat pada Gambar 12 pengujian terhadap jumlah generasi, serta sebagai berikut: pengujian terhadap nilai cr dan mr. Pengujian dilakukan sebanyak 5 kali percobaan dengan mengambil nilai rata-rata fitness pada semua percobaan yang dilakukan.

      Pengujian ukuran populasi dilakukan dengan nilai 100, 200, 300, 400, 500, 600, 700, 800, 900, dan 1000. Parameter yang digunakan pada pengujian populasi adalah jumlah generasi 500, nilai cr 0,4 dan nilai mr 0,2. Percobaan tersebut menghasilkan nilai rata-rata fitness tertinggi yaitu 0,138834 pada ukuran populasi 600. Grafik pengujian ukuran populasi dapat

      Gambar 12. Grafik Waktu Komputasi

      dilihat pada Gambar 10 sebagai berikut: Pengujian nilai cr dan mr dilakukan sebanyak 5 kali dengan nilai parameter ukuran populasi 600 dan jumlah generasi 1000. Pengujian tersebut menghasilkan nilai

      cr dan mr yang optimal yaitu 0,5 untuk nilai cr

      dan 0,5 untuk nilai mr. Grafik pengujian nilai cr dan mr dapat dilihat pada Gambar 13 sebagai berikut.

      Gambar 10. Grafik Pengujian Ukuran Populasi

      Pengujian jumlah generasi dilakukan dengan nilai 100, 200, 300, 400, 500, 600, 700, 800, 900, dan 1000. Nilai parameter yang digunakan adalah nilai ukuran populasi 600, nilai cr 0,4 dan nilai mr 0,2. Pengujian tersebut menghasilkan nilai rata-rata fitness tertinggi yaitu 0,144198 pada jumlah generasi 1000. Grafik pengujian jumlah generasi dapat dilihat pada Gambar 11

      Gambar 13. Pengujian Nilai cr dan mr

      sebagai berikut:

      4.1 Pengujian Parameter dan Analisis Hasil

      Berdasarkan pengujian ukuran populasi, jumlah generasi, nilai cr dan nilai mr maka didapatkan parameter untuk solusi yang optimal yaitu ukuran populasi 600, jumlah generasi 1000, nilai cr 0,5 dan nilai mr 0,5. Pengujian parameter menghasilkan nilai fitness tertinggi yaitu 0,16208. Detail pelanggaran constraint pada pengujian parameter dapat dilihat pada Tabel 3 sebagai berikut.

      Gambar 11. Grafik Pengujian Jumlah Generasi No. Batasan (Constraint) Nilai Nilai Tabel 3. Detail Pelanggaran Constraint Penalti Penalti

      Banyaknya jumlah generasi juga Sistem Manual mempengaruhi waktu komputasi. Semakin

      1. Seorang guru tidak boleh 446

      tinggi jumlah generasi maka semakin lama juga

      No. Batasan (Constraint) Nilai Penalti Sistem Nilai Penalti Manual mengajar lebih dari 1 kelas dalam waktu yang sama.

      5. KESIMPULAN

      fitness

      2. Berdasarkan hasil pengujian parameter algoritme genetika dihasilkan ukuran populasi terbaik sebesar 1000, jumlah generasi terbaik sebesar 100, nilai cr terbaik sebesar 0,3, dan nilai mr terbaik sebesar 0,7. Penggunaan parameter tersebut menghasilkan solusi optimal dengan nilai

      constraint aturan penjadwalan yang telah ditetapkan.

      dengan metode elitism. Kromosom yang dipakai dengan representasi permutasi yang mana diisi kode data pembagian jadwal tiap guru. Kode data pembagian jadwal tiap guru tersebut berisi informasi tentang nama guru, kode guru, kelas yang diampu, porsi jam, serta kode mata pelajaran. Kromosom terdiri dari 2 segmen yaitu untuk program 4 semester dengan panjang kromosom 86 dan program 6 semester dengan panjang kromosom 748. Solusi yang optimal didapat dari nilai fitness yang tertinggi sehingga menghasilkan jadwal mata pelajaran yang tidak terdapat pelanggaran batasan atau

      reciprocal exchange ), evaluasi nilai fitness, dan seleksi

      1. Algoritme genetika digunakan untuk penjadwalan mata pelajaran SMA Negeri 3 Surakarta. Tahap yang dilakukan dalam mengimplementasi algoritme genetika untuk penjadwalan mata pelajaran SMA Negeri 3 Surakarta, yaitu tahap inisialisasi kromosom, reproduksi (proses crossover dengan metode one-cut point dan proses mutasi dengan metode

      Berdasarkan penelitian yang telah dilakukan maka dihasilkan kesimpulan sebagai berikut:

      Individu yang dibangkitkan pada saat proses inisialisasi awal yang sesuai ukuran populasi juga tidak menjamin bahwa susunan gen yang dibangkitkan secara acak tersebut menghasilkan susunan yang baik. Kemampuan algoritme genetika untuk mengeksplorasi tidak efektif karena individu-individu mempunyai tingkat kemiripan yang tinggi. Data dan batasan atau constraint yang banyak tersebut tidak dapat diselesaikan karena ruang pencarian kurang luas padahal untuk proses eksplorasi pada ruang pencarian yang luas memerlukan waktu komputasi yang lebih lama lagi. Oleh sebab itu, nilai fitness yang tinggi dengan solusi yang optimal sulit untuk didapat. Namun, penggunaan algoritme genetika membuat waktu komputasi lebih cepat dibandingkan saat pembuatan jadwal dengan sistem yang kemudian dilakukan secara manual yang memakan berhari-hari. (Sumber: wawancara dengan koordinator pembuat jadwal SMA Negeri 3 Surakarta).

      2. Guru tidak boleh mengajar lebih dari 3 slot waktu pelajaran di hari dan kelas yang sama.

      Berdasarkan nilai fitness tertinggi yaitu 0,16208 dari parameter algoritme yang optimal yaitu ukuran populasi 600, jumlah generasi 1000, nilai cr 0,5 dan nilai mr 0,5 menghasilkan solusi jadwal yang belum optimal yang mana masih terjadi pelanggaran pada semua batasan atau constraint yang telah ditentukan. Hal tersebut terjadi karena banyaknya jumlah data yang digunakan untuk proses penjadwalan mata pelajaran SMA Negeri 3 Surakarta. Data jadwal yang berisi informasi guru serta porsi kelas, mata pelajaran yang diampu, serta porsi slot waktu terdapat 748 data untuk program 6 semester dan 86 data untuk program 4 semester. Data tersebut direpresentasikan ke dalam panjang kromosom untuk tiap individu yaitu 748 untuk program 6 semester dan 86 untuk program 4 semester dengan representasi kromosom permutasi. Selisih fitness antara hasil sistem dan hasil manual sangat tinggi. Hal tersebut disebabkan karena proses perhitungan penalti dilakukan dengan menghitung banyak slot waktu apabila terjadi pelanggaran.

      Nilai Fitness 25 Total Bobot Penalti 616 0,16208 100

      4. Mata pelajaran olahraga tidak lebih dari jam 11.00 untuk penjadwalannya.

      IPA : hari Sabtu 133

      IPS : hari Kamis

      3. Guru mata pelajaran tidak boleh mengajar di hari yang sama dengan hari Musyawarah Guru Mata Pelajaran (MGMP) dengan ketentuan hari untuk MGMP adalah sebagai berikut : Matematika: hari Rabu Bahasa Inggris: hari Selasa Bahasa Indonesia: hari Senin PKn : hari Senin

      12

      sebesar 0,13189. Namun jadwal yang dihasilkan belum optimal karena masih terjadi pelanggaran pada batasan atau constraint.

    6. DAFTAR PUSTAKA

      Benli, Ö. S., & Botsali, A. R., 2004. Timetabling

      problem . [Online] tersedia di: [diakses pada 4 September 2016].

      Entin, 2011. Teori Algoritma Genetika. [Online] tersedia di: http:// entin.lecturer.pens.ac.id [diakses pada 4 September 2016]. Ilmi, R.R. 2015. Optimasi Penjadwalan Perawat Menggunakan Algoritma Genetika.

      Malang. Fakultas Ilmu Komputer Universitas Brawijaya. Lokesh Kumar, et al. 2015. Exam Time Table

      Scheduling using Genetic Algorithm. ER Publications. ISSN.

      Mahmudy, W.F. 2013. Algoritma Evolusi.

      Malang: Universitas Brawijaya. Nugraha, Ivan. 2008. Aplikasi Algoritma

      Genetik untuk Optimasi Penjadwalan Kegiatan Belajar Mengajar. Bandung: Institut Teknologi Bandung.

      Nursyamsudin. 2014. Panduan Pelaksanaan Satuan Kredit Semester (SKS) di SMA.

      Jakarta: Kementrian Pendidikan dan Kebudayaan. Permata Sari, D.D. 2015. Optimasi Penjadwalan

      Mata Pelajaran Menggunakan Algoritma Genetika (Studi Kasus: SMPN 1 Gondang Mojokerto). Malang: Fakultas Ilmu Komputer Universitas Brawijaya.

      Seisarrina, Maulidya L. 2016. Penjadwalan Pengawas Ujian Semester Menggunakan Algoritma Genetika. Malang: Fakultas Ilmu Komputer Universitas Brawijaya.

      Sivanandam, S.N., & Deepa, S.N. 2008.

      Introduction to Genetic Algorithms. New York: Springer Berlin Heidelberg.

      Trawinski, et al. 2015. Truck Loading Schedule Optimation Using Genetic Algorithm for Yard Management. Polandia.

      Wroclaw University of Technology.