Jurnal Teknik Informatika (JUTIF) DOI: https://doi.org/10.52436/1.jutif.2023.4.4.784 Vol. 4, No. 4, August 2023, pp. 797-806 p-ISSN: 2723-3863 e-ISSN: 2723-3871

## DEVELOPMENT OF SCHEDULING SYSTEM WITH GENETIC ALGORITHM IN WEBSITE-BASED SMK NEGERI 1 SINE
Shafa Bani Saputra 1 , Endang Wahyu Pamungkas 2
1,2 Informatics, Faculty of Communication and Informatics, Universitas Muhammadiyah Surakarta, Indonesia Email: 1 L200190151@student.ums.ac.id , 2 ewp123@ums.ac.id
(Article Received: Desember 22, 2022; Revision: Desember 28, 2022; Published: August 18, 2023)

## Abstract
Scheduling is an information that has limited conditions that must be met. Preparation of the schedule will take quite  a  long  time  if  it  is  done  using  conventional  media  such  as  writing  on  paper  or  books.  Scheduling optimization  is  needed  to  provide  effectiveness  and  efficiency  so  that  the  implementation  of  learning  activities can  run  more  optimally.  The  genetic  algorithm  approach  method  is  used  to  get  the  optimum  schedule.  This algorithm produces the best combination for subject pairs and teaching teachers as a whole by determining the initial  population  and  initializing  the  chromosomes,  determining  the  fitness  value,  then  carrying  out  crossover selection, and carrying out mutations to produce the best fitness value which will be used to determine the final value of scheduling. The results of the entire algorithm process are consistent with the original prediction data, and  the  same  teacher  is  not  scheduled  to  teach  more  than  once  at  the  same  time.  The  results  of  the  subject scheduling process using the genetic algorithm obtain a fairly good optimization in subject scheduling.
Keywords : genetic algorithm, optimization, scheduling system

## PENGEMBANGAN SISTEM PENJADWALAN DENGAN ALGORITMA GENETIKA DI SMK NEGERI 1 SINE BERBASIS WEBSITE

## Abstrak
Penjadwalan  merupakan  suatu  informasi  yang  memiliki  batasan-batasan  kondisi  yang  harus  terpenuhi. Penyusunan  jadwal  akan  memakan  waktu  yang  cukup  lama  jika  dilakukan  dengan  menggunakan  media konvensional  seperti  penulisan  pada  kertas  atau  buku.  Optimasi  penjadwalan  dibutuhkan  untuk  memberikan efektifitas  dan  efisiensi  agar  pelaksanaan  kegiatan  pembelajaran  dapat  berjalan  lebih  maksimal.  Metode pendekatan  algoritma  genetika  digunakan  untuk  mendapatkan  jadwal  yang  optimum.  Algoritma  ini menghasilkan  kombinasi  terbaik  untuk  pasangan  mata  pelajaran  dan  guru  pengajar  secara  keseluruhan  dengan penentuan  populasi  awal  dan  inisiallisasi  kromosom,  menetukan  nilai fitness ,  kemudian  dilakukan  seleksi crossover,  dan  dilakukan  mutasi  sampai  menghasilkan  nilai fitness terbaik  yang  akan  digunakan  untuk menentukan  nilai  akhir  penyusunan  jadwal.  Hasil  dari  keseluruhan  proses  algoritma  konsisten  dengan  data prediksi  asli,  dan  guru  yang  sama  tidak  dijadwalkan  untuk  mengajar  lebih  dari  satu  kali  pada  waktu  yang bersamaan, Hasil dari proses penjadwalan mata pelajaran dengan menggunakan algoritma genetika memperoleh optimasi yang cukup baik dalam penjadwalan mata pelajaran.
Kata kunci : algoritma genetika, optimalisasi, sistem penjadwalan.

## 1. PENDAHULUAN
Teknologi  merupakan  suatu  bentuk  proses yang  dapat  mempermudah  suatu  kegiatan  manusia sehingga dapat tercapai suatu tujuan tertentu. Seiring dengan  perkembangan  teknologi  yang  semakin pesat,  salah  satunya  dalam  bidang  pendidikan diperlukan  suatu  efektifitas  dan  efisiensi  dalam melakukan  suatu  kegiatan  [1].  Pengaturan  jadwal mata  pelajaran  yang  dapat  diterima  dengan  tingkat kepuasan  tertentu  merupakan  tantangan  tersendiri, penjadwalan ini harus mempertimbangkan
ketersediaan sumber daya yang dibutuhkan. Permasalahan yang terdapat pada proses
penjadwalan
adalah
bagaimana cara mengkombinasikan  antara  guru,  mata  pelajaran, waktu, dan kelas dengan baik tanpa ada duplikasi.
Algoritma  yang  sering  digunakan  untuk menyelesaikan  masalah  penjadwalan  seperti local search [2], simulated  anneling [3],  algoritma kultural  yang  berfokus  pada  konsep  genetik  dan seleksi  alam  [4],  dan  algoritma  genetika  (GA). Algoritma  genetika  mampu  menyelesaikan  masalah penjadwalan dalam waktu yang lebih cepat dan hasil
yang  optimal,  algoritma  genetika  merupakan  salah satu metode meta heuristik yang paling popular [5].
Algoritma  genetika  ( genetic  algorithm /  GA) menghasilkan  solusi  awal  secara  acak,  kemudian melalui  langkah-langkah  yang  disebut  seleksi, crossover, mutasi dan elitisme yang akan memperbaiki  solusi  secara  berulang  sampai  dengan kondisi  akhir  terpenuhi.  Dalam  algoritma  genetika untuk  menghasilkan  suatu  solusi  optimal,  proses pencarian  dilakukan  di  antara  sejumlah  alternatif titik  optimal  berdasarkan  fungsi  probabilistik  [6]– [9]. GA pararel digunakan pada penelitian [10], [11] untuk  menyelesaikan  masalah  penjadwalan  mata kuliah.  Melalui  metode  algoritma,  jadwal  dan  kelas dipahami  sebagai  individu  dengan  gen  yang  tak terhitung banyaknya.
Penelitian ini akan dilakukan dengan menggunakan algoritma genetika terdistribusi (distributed genetic algorithms, DGA) yang didasarkan  pada  penelitian  sebelumnya  yaitu penyempurnaan  GA  [12],  [13].  DGA  akan menghasilakan beberapa kelompok solusi yang akan mengikuti  setiap  proses  algoritma  genetika  pada masing-masing kelompok. Disini kita harus mengelola banyak kelas dengan mata pelajaran. Data penelitian ini diambil dari SMK Negeri 1 Sine, Jalan Tegari,  Tulakan,  Sine,  Ngawi.  Sesuai  dengan penjelasan  sebelumnya,  penelitian  ini  diharapkan dapat  memberikan  efektifitas  dan  efisiensi  dalam penyusunan jadwal mata pelajaran di SMK Negeri 1 Sine.  Melalui  penerapan  metode  algoritma  genetika dengan hasil yang optimal, maka kegiatan akademik diharapkan  dapat  lebih  maksimal.  Pengembangan sistem penjadwalan diasumsikan dapat mempermudah dan mempercepat proses penyusunan jadwal mata pelajaran sesuai dengan harapan.

## 2. METODE PENELITIAN
2.1 Perancangan Sistem
Penggunaan model waterfall yang merupakan salah  satu  metode  pengembangan  sistem  dimana proses  analisis  data,  design, development , testing , dan maintenance akan  dilakukan  [14],  [15]. Penggunaan framework dibutuhkan untuk mempercepat proses development sehingga pengembangan  sistem  dapat  mencapai  hasil  yang lebih  maksimal  [16].  Perancangan  sistem  yang diterapkan  pada  penelitian  ini  menggunakan  UML (Unified Modeling  Language) [17] dimana use  case diagram, activity  diagram dan  perancangan  basis data  akan  mempresentasikan  terkait  alur  kerja  dari sistem  yang  dikembangkan  sesuai  dengan  metode yang digunakan.
a) Use Case Diagram
Use case yang dirancang untuk
implementasi pengembangan sistem penjadwalan  dapat  mendiskripsikan  tipikal interaksi antara user dengan sistem. Bentuk use case dapat dilihat pada Gambar 1.
Gambar 1. Use Case Diagram
b) Activity Diagram
Activity diagram mendiskripsikan workflow dari  sistem  yang  dikembangkan  [18] dimana penggunaan sistem yang dikembangkan  melibatkan  dua  pengguna dimana siswa sebagai  user dan admin yang bertugas untuk mengelola data pada sistem. Admin  memiliki  kewenangan  penuh  untuk mengatur  user  dan  informasi  didalam sistem.  Adapun  aktivitas  dari  kedua  user dapat dilihat pada Gambar 3.2.
Gambar 2. Activity Diagram
c) Perancangan Basis Data
Salah  satu  perancangan  basis  data  yaitu dengan  menentukan  relasi  antar  tabel sehingga  tabel-tabel  tersebut  dapat  saling berhubungan.  Masing-masing  record  akan
memiliki  field  kunci  yang  akan  menjadi penghubung  antar  tabel  yang  ada.  Relasi antar tabel dapat dilihat pada Gambar 3.
Gambar 3. Perancangan Basis Data

## 2.2 Algoritma Genetika
Algoritma genetika pertama kali dikembangkan oleh John Holland dari Universitas Michigan (1975). John  Holland  mengatakan  bahwa  setiap  masalah yang terbentuk adaptasi (alam maupun buatan) dapat di formulasikan dalam teknologi genetika. Algoritma  Genetika  adalah  simulasi  dari  proses evolusi  Darwin  dan  operasi  genetikan  atas kromosom [1]. Algoritma Genetika merupakan suatu algoritma heuristic yang didasarkan atas mekanisme evolusi biologis yang digunakan untuk menyelesaikan masalah kombinatorik [5]. Berdasarkan penelitian yang dilakukan [10] rangkaian proses algoritma genetika dijelaskan pada Gambar 4.

## Gambar 4. Proses Algoritma Genetika
Penentuan  populasi  awal (initial  population) yang  merupakan  sekumpulan  individu  yang  akan diproses  bersama  dalam  satu  siklus  proses  evolusi. Tahap  seleksi  melalui  fungsi fitness (fitness evaluation) ,  dilakukan  evaluasi  dari  kendala  yang dapat  dilanggar  oleh  solusi  yang  diberikan (hard constraints) dan  kendala  yang  dapat  dilanggar namun  mengurangi  nilai  solusi (soft  constraints). Dalam  hal  ini  kromoson  yang  memiliki  nilai fitness tertinggi  akan  bertahan.  Pemilihan  proposional
kebugaran (roulette  wheel  selection) dari  hasil evaluasi  fungsi fitness ,  digunakan  untuk  memilih solusi yang berpotensi untuk dilakukan rekombinasi.
Persilangan (crossover) dimana  pemotongan kromosom secara acak dan kemudian
menggabungkan  bagian  awal  dari  kromosom  utama pertama  dengan  bagian  kedua  pada  kromosom utama  kedua.  Proses  perubahan  individu (mutation) dengan kualitas diatas rata-rata sehingga membentuk kembali  kromoson  dan  memperbaiki  kerusakan materi  genetik  akibat  proses  crossover.  Populasi baru (new  population) dihasilkan  dari  proses sebelumnya yang kemudian akan dilakukan penentuan populasi awal kembali.

## 3. HASIL DAN PEMBAHASAN
3.1 Hasil Pengembangan Sistem
Hasil  dari  penelitian  ini  terdapat  beberapa menu  halaman  yang  dijadikan  sebagai  indikator untuk kemudian diimplementasikan kedalam struktur  algoritma  genetika  untuk  dilakukan  proses penjadwalan.  Beberapa  menu  halaman  diambil  dari sisi  admin  karena  kewenangan  penuh  untuk mengelola data berada pada admin, yang selanjutnya digunakan sebagai indikator adalah sebagai berikut :
a) Halaman Kelas Halaman  kelas  akan  memberikan  indikator untuk  pembentukan  gen  pada  kromosom yang  akan  diseleksi.  Pada  halaman  ini admin  akan  menginputkan  pilihan  kelas, jurusan,  dan  nama  kelas.  Bentuk  halaman kelas dapat dilihat pada Gambar 5.

## Gambar 5. Halaman Kelas
b) Halaman Mata Pelajaran
Halaman  ini  akan  membentuk  suatu individu  yang  kemudian  akan  diambil kromosomnya  untuk  dilakukan  proses seleksi. Halaman ini admin akan menginputkan  kode  mata  pelajaran,  nama mata  pelajaran,  pilihan  kelas,  beban  jam, jurusan,  dan  kelompok  mata  pelajaran. Bentuk  dari  halaman  mata  pelajaran  dapat dilihat pada Gambar 6.
Gambar 6. Halaman Mata Pelajaran
c) Halaman Request Jadwal
Halaman  ini  akan  menentukan  kromosom mana  yang  akan  diseleksi  pertama  kali sesuai  dengan  gen-gen  yang  dimiliki.  Pada halaman  ini  admin  akan  memilih  nama guru  dan  ketersediaan  dalam  mengajar berdasarkan  hari.  Bentuk  dari  halaman request jadwal dapat dilihat pada Gambar 7.
Gambar 7. Halaman Request Jadwal d) Halaman Penjadwalan
Halaman ini akan digunakan untuk pemprosesan beberapa indikator dari halaman  yang  lain  untuk  keperluan  proses penjadwalan  dengan  algoritma  genetika. Bentuk  dari  halaman  penjadwalan  dapat dilihat pada Gambar 8.

## Gambar 8. Halaman Penjadwalan
e) Halaman Proses Algoritma Genetika
Halaman ini akan menampilkan alur proses dari implementasi algoritma genetika untuk sistem  penjadwalan  berdasarkan  data  yang diperoleh.  Halaman  ini  hanya  bersifat sementara, halaman akan dialihakan kembali  kehalaman  penjadwalan  setelah proses  algoritma  genetika  selesai  atau  saat proses  penjadwalan  berakhir.  Bentuk  dari
halaman  proses  algoritma  genetika  dapat dilihat pada Gambar 9.
Gambar 9. Halaman Proses Algoritma Genetika
Dengan menggunakna rancangan sistem penjadwalan,  kromosom  yang  dibentuk  adalah sebagai  berikut:  1)  kode  mata  pelajaran  (MP),  2) kode guru pengajar (GP), 3) kode kelas (RK), dan 4) hari pembelajaran (HP). Panjang kromosom merupakan  kombinasi  gen  yang  berkaitan  dengan jumlah mata pelajaran dan kelas. Satu gen mencakup informasi waktu jam pelaksanaan dan kelas. Sebagai bukti,  untuk  inisialisasi  pembentukan  kromosom, seperti  terlihat  pada  Tabel  1,  ketersediaan  hari pembelajaran dapat dilihat pada Tabel 2.
Table 1. Distribusi Mata Pelajaran
Table 2. Hari Pembelajaran Indeks Waktu Hari HP01
Senin
HP02 Selasa
HP03 Rabu HP04 Kamis
Diasumsikan  ada  empat  kromosom  dalam  satu populasi  dan  jumlah  mata  pelajaran,  setiap kromosom  memiliki  empat  gen.  Dalam  penyusunan populasi  awal  diambil  dari  Table  1  dan  Table  2. Diperoleh  Table  3  dengan  struktur  populasi  awal dimana  MP01  mewakili  kode  mata  pelajaran  satu, GP01  untuk  guru  pengajar  satu,  RK01  untuk  ruang kelas,  dan  HP  untuk  hari  pembelajaran.  Penentuan urutan kode setiap gen dilakukan secara acak.
No Kode MP
Nama MP
Kode GP Nama GP Kode kelas 1 MP01 Bahasa Indonesia GP01 A RK01 2 MP02 Bahasa Inggris GP02 B RK01 3 MP03 Matematika GP03 C RK01 4 MP04 Kewarganegaraan GP01 A RK01
Table 3. Komposisi Populasi Awal
Seperti  disajikan  pada  Tabel  3,  urutan  kode setiap  gen  mewakili  kode  kelas,  kode  guru,  kode mata pelajaran, dan kode hari.

## 3.2 Fungsi Kebugaran
Tahap  ini  seleksi  disusun  untuk  membentuk individu terkemuka terbaik dengan fungsi kebugaran.  Fungsi fitness mengembalikan  nilai tertinggi  untuk  individu  terbaik  dan  diurutkan berdasarkan  nilai  seleksi.  Fungsi  ini  menunjukan solusi  optimal  karena  satu-satunya  kromosom  yang memiliki nilai fitness tertinggi akan bertahan. Dalam hal  ini  setiap  pelanggaran  akan  diberikan  nilai  1, sehingga  tidak  ada  nilai fitness yang  tak  terhingga, dan  nilai  total  pelanggaran  akan  ditambah  dengan nilai  1.  Beberapa  keterbatasan  yang  diperioritaskan dalam  penyusunan  jadwal  ini  adalah  guru  pengajar tidak  dapat  direncanakan  untuk  mengajar  lebih  dari sekali pada waktu dan kelas yang sama.
Dari  komposisi  populasi  awal  pada  Tabel  3, terlihat  bahwa  tidak  terdapat  pelanggaran  superior pada  kromosom  1  &  2.  Pada  kromosom  3  &  4 terdapat  pelanggaran  yang  menonjol  dimana  pada kromosom  3  terdapat  dua  gen  yaitu  2  dan  4,  yang memiliki  kesamaan  kelas  (RK01)  dan  hari pembelajaran  (HP01),  pada  kromosom  ke-4  juga terdapat  pelanggaran  yaitu  pada  gen  1  dan  4  yang memiliki  kesamaan  kelas  (RK01),  guru  pengjar (GP01), mata pelajaran (MP01), dan hari pembelajaran  (HP01).  Pelanggaran  yang  ada  akan menghasilkan  nilai fitness dengan  Rumus  (1) sebagai berikut :
𝐹𝑖𝑡𝑛𝑒𝑠𝑠 = 1 1 + (objective function) (1)
Keterangan: Fitness = Fungsi Fitness
Objective function = Jumlah Tabrakan
1 = 1 1  +  (0  +  0  +  0  +  0) = 1
2 = 1 1  +  (0  +  0  +  0  +  0) = 1
3 = 1
1  +  (1  +  0  +  0  +  1) = 0.33
4 = 1 1  +  (1  +  1  +  1  +  1) = 0.2

## 3.3 Seleksi
Penentuan  Roulette-wheele  akan  dilakukan pada  tahap  ini  dimana  individu  dipilih  berdasarkan nilai fitness untuk memilih individu mana yang akan menjalani  proses  persilangan.  Setiap  kromosom menempati  lingkaran  secara  proposional  sesuai dengan nilai fitness yang diperoleh dari perhitungan fungsi fitness yang  terdapat  pada  Tabel  3.  Langkah pertama  adalah  mengestimasi  nilai fitness total  dari semua kromosom seperti pada Tabel 4.
Table 4. Nilai Fitness Total Kromosom Nilai Fitness 1 1 2 1 3 0.33 4 0.2
Skor Fitness Total 2.53
Langkah kedua adalah menghitung probabilitas setiap kromosom, membagi nilai fitness dengan nilai fitness total, seperti yang tertulis pada Tabel 5.
Table 5. Probabilitas Nilai Fitness Kromosom Kemungkinan 1 1 / 2.53 = 0.39 2 1 / 2.53 = 0.39 3 0.33 / 2.53 = 0.14 4 0.2 / 2.53 = 0.08
Langkah  ketiga  adalah  menempatkan  setiap kromosom  dalam  interval  nilai  [0-1]  seperti  yang ditunjukanpada Tabel 6.
Table 6. Interval Nilai Probabilitas Kromosom Nilai Interval 1 0 – 0.39 2 0.40 – 0.78 3 0.79 – 0.92 4 0.93 - 1
Karena  proses  seleksi,  nomor  acak  dihasilkan antara  [0-1]  untuk  mengatur  komposisi  populasi baru.  Sebagai  ilustrasi,  angka  acak  yang  dihasilkan adalah [0.2; 0.8; 0.5; 0.95]. dari nilai yang dihasilkan secara  acak,  terlihat  bahwa  kromosom  dengan  nilai 0.2  adalah  kromosom  pertama,  dengan  interval  0- 0.39.  Kromosom  pertama  tidak  mengalami  seleksi, akibatnya  kromosom  dengan  nilai  0.8  adalah kromosom  ketiga  dengan  interval  0.79  –  0.92.
RK01,GP01, MP01,HP01 RK01,GP02, MP04,HP04 RK01,GP02, MP03,HP02 RK01,GP02, MP02,HP03 RK01,GP03, MP01,HP04 RK01,GP03, MP04,HP02 RK01,GP02, MP02,HP01 RK01,GP03, MP03,HP03 RK01,GP01, MP02,HP03 RK01 ,GP02, MP02, HP01 RK01,GP02, MP03,HP04 RK01 ,GP01, MP04, HP01
RK01,GP01, MP01,HP02 RK01,GP02, MP03,HP03 RK01,GP02, MP04,HP04 RK01,GP01, MP01,HP02
Kromosom  ini  mengalami  pengambilan  kedua,  dan secara  otomatis  kromosom  kedua  juga  mengalami seleksi  dengan  mengisi  posisi  kromosom  ketiga. Kromosom  dengan  nilai  0.95  adalah  kromosom keempat  dengan  interval  nilai  0.93  –  1.  Sehingga tidak  mengalami  seleksi  karena  nilai  acak  yang dihasilkan sesuai dengan nilai interval yang ada pada kromosom.  Dengan  demikian  susunan  kromosom populasi baru ditulis pada Tabel 7.
Table 7. Susunan Kromosom Populasi Baru

## 3.4 Crossover
Crossover digunakan untuk memotong kromosom  secara  acak  dan  menggabungkan  bagian awal  dari  kromosom  utama  pertama  dengan  bagian kedua kromosom utama kedua . Crossover dilakukan jika  ada  nilai  bilangan  acak  yang  dibangkitkan  oleh suatu kromosom lebih kecil dari nilai probabilitasnya,  telah  ditetapkan  dimana  nilai bilangan  acak  tersebut,  khususnya  [0.2;  0.8;  0.5; 0.95]  dan  nilai  probabilitas  umumnya  diatur  ke minimum 0.5.
Bilangan acak yang dihasilkan untuk menentukan posisi titik potong adalah [1-N], dimana N  adalah  jumlah  gen  dalam  satu  kromosom.  Nilai bilangan  acak  yang  dihasilkan  pada  Tabel  7  yang mengalami crossover adalah  kromosom  1  dan  3. Nilainya lebih kecil dari nilai probabilitas yang telah ditentukan,  dimana  kromosom  1  dan  3  bernilai  0.2 dan  0.5.  Berasal  dari  posisi  pemotongan,  posisi  gen kedua  dipilih.  Oleh  karena  itu,  proses crossover seperti yang ditampilkan pada Tabel 8.
Table 8. Proses Crossover dan Kebugaran Kromosom
Kromosom 1 RK01, GP01, MP01, HP01 RK01, GP02, MP04, HP04 RK01, GP02, MP03, HP02 RK01, GP02, MP02, HP03 Kromosom 3 RK01, GP03, MP01, HP04 RK01, GP03, MP04, HP02 RK01, GP02, MP02, HP01 RK01, GP03, MP03, HP03
Hasil persilangan kromosom 1 dan kromosom 3 adalah sebagai berikut:
Kromosom 1 RK01 , GP01, MP01, HP01 RK01, GP03, MP04, HP02 RK01 , GP02, MP02, HP01 RK01, GP03,
MP03,
HP03 Kromosom 3 RK01 , GP03, MP01, HP04 RK01 , GP02, MP04, HP04 RK01, GP02, MP03, HP02 RK01, GP02, MP02, HP03 Kebugaran kromosom 1 setelah pindah silang. 1 = 1 1  +  (1  +  0  +  0  +  1) = 0.33 Kebugaran kromosom 3 setelah pindah silang. 3 = 1 1  +  (1  +  0  +  0  +  1) = 0.33

## 3.5 Mutasi
Setelah  proses  crossover,  Langkah  selanjutnya adalah  proses  mutasi.  Mutasi  merupakan  salah  satu operator  algoritma  genetika  yang  bertujuan  untuk membentuk  individu  yang  memiliki  kualitas  diatas rata-rata. Mutasi juga digunakan untuk
mengembalikan kerusakan materi genetic dari proses crossover.  Perubahan  ini  dapat  membangun  solusi duplikasi dengan nilai fitness yang lebih rendah atau lebih tinggi dari solusi terdepan.
Untuk semua gen yang ada, jika bilangan acak yang  dihasilkan  lebih  kecil  dari  peluang  mutasi, beberapa informasi gen akan diubah dengan metode value  coding untuk  menghasilkan  nilai fitness yang lebih  baik  dan  meningkatkan  penempatan  mata pelajaran yang tidak sesuai dengan yang diharapkan. Perlu  dilakukan  penghitungan  jumlah  total  gen dalam  suatu  populasi  dengan  menggunakan  Rumus (2).
Gen Total = Gsk x Tk (2)
Keterangan: Gen Total = Jumlah semua gen Gsk = Jumlah gen dalam satu kromosom Tk = Jumlah kromosom yang ada
Sesuai dengan contoh, total gen adalah 4x4=16. Probabilitas  mutasi  ditetapkan  0.1  dan  diperkirakan akan  terjadi  mutasi,  yaitu  0.1  x  16  =  1.6  =  2.  Dua gen  akan  mengalami  mutasi.  Selanjutnya,  ulangi jumlah  total  gen  (0-16)  dan  buat  angka  acak  untuk setiap  literasi  antara  (0-1).  Diduga  gen-gen  yang menjadi  bilangan  dibawah  probabilitas  mutasi adalah  gen  kedua  dan  ketiga  pada  kromosom  1. Informasi pada gen-gen tersebut akan ditransformasikan  pada  hari  pembelajaran,  sehingga diperoleh hasil pada kromosom, seperti terlihat pada Tabel 9.
Kromosom 1
RK01, GP01, MP01, HP01 RK01, GP02, MP04, HP04 RK01, GP02, MP03, HP02 RK01,
GP02,
MP02, HP03 Kromosom 2 RK01, GP01, MP02, HP03 RK01 , GP02, MP02, HP01 RK01, GP02, MP03, HP04 RK01 , GP01,
MP04,
HP01 Kromosom 3 RK01, GP03, MP01, HP04 RK01, GP03, MP04, HP02 RK01, GP02, MP02, HP01 RK01, GP03, MP03, HP03 Kromosom 4 RK01, GP01, MP01, HP02 RK01, GP02, MP03, HP03 RK01, GP02, MP04, HP04 RK01, GP01, MP01, HP02
Table 9. Susunan Kromosom Baru
Kromosom 1 RK01, GP01, MP01, HP01 RK01, GP01, MP04, HP02 RK01, GP02, MP02, HP04 RK01, GP03, MP03, HP03 Kromosom 2 RK01, GP01, MP02, HP03
RK01 , GP02, MP02, HP01 RK01, GP02, MP03, HP04
RK01 , GP01,
MP04,
HP01 Kromosom 3 RK01 , GP03, MP01, HP04 RK01 , GP02, MP04, HP04 RK01, GP02, MP03, HP02 RK01, GP02, MP02, HP03 Kromosom 4 RK01, GP01, MP01, HP02 RK01, GP02, MP03, HP03 RK01, GP02, MP04, HP04 RK01, GP01, MP01, HP02
Nilai fitness masing-masing  kromosomdari hasil proses mutasi diatas adalah:
Fitness kromosom 1 setelah mutasi
1 = 1 1  +  (0  +  0  +  0  +  0) = 1 Fitness kromosom 2 setelah mutasi
2 = 1
1  +  (1  +  0  +  0  +  1) = 0.33 Fitness kromosom 3 setelah mutasi 3 = 1 1  +  (1  +  0  +  0  +  1) = 0.33
Fitness kromosom 4 setelah mutasi 4 = 1 1  +  (1  +  1  +  1  +  1) = 0.2
Dari hasil nilai fitness yang terdapat pada Tabel 9,  diambil  kromosom  pertama  sebagai  kromosom yang  memiliki  nilai fitness terbaik  karena  tidak  ada pelanggaran  yang  ditentukan  dan  merupakan  solusi yang  dibutuhkan.  Sedangkan  kromosom  lainnya masih  memiliki  bentrokan  antara  kelas  dan  hari pembelajaran. Hasil dari keseluruhan proses algoritma mengikuti data asli yang diharapkan, guru yang  sama  tidak  direncanakan  mengajar  labih  dari satu  kali  secara  bersamaan.  Satu  kelas  tidak dijadwalkan lebih dari satu kali dalam satu hari yang sama.  Hasil  akhir  dari  proses  tersebut  dapat  dilihat pada Tabel 10.
Table 10. Hasil Akhir Proses Mutasi No Kode MP Nama MP Kode GP Nama GP Kode Kelas Kode Hari Hari 1 MP01 Bahasa Indonesia GP01 A RK01 HP01 Senin 2 MP04 Kewarganegaraan GP01 A RK01 HP02 Selasa 3 MP02 Bahasa Inggris GP02 B RK01 HP04 Kamis 4 MP03 Matematika GP03 C RK01 HP03 Rabu

## 3.6 Implementasi Proses Penjadwalan
Perancangan  input  output  ini  dijelaskan  secara mendalam  dalam  kaitannya  dengan  sistem  yang sedang  dikembangkan,  dimana  yang  akan  disajikan adalah  desain  input  output  yang  diinginkan.  Bentuk implementasi  proses penjadwalan dapat  dilihat pada Gambar 10.
Gambar 10. Implementasi Proses Penjadwalan
Gambar  10  menunjukan  halaman  hasil  proses penjadwalan,  dimana  berisi  tampilan  hasil  proses dari  perhitungan  metode  algoritma  genetika.  Untuk membawa  semua  kriteria  mendapatkan  hasil  yang diberikan.  Dengan  demikian,  tidak  ada  lagi  kendala berkepanjangan  dalam  proses  penjadwalan,  yang terdiri dari Subjek, kelas, mata pelajaran, beban jam dan  guru  pengampu.  Hanya  admin  yang  bisa mengakses halaman ini.
Hasil  proses  penjadwalan  dapat  dilihat  pada Gambar 11, terlihat halaman penjadwalan terdiri dari penugasan  guru,  kelas  dan  mata  pelajaran  dari  hasil generate  algoritma  genetika.  Pada  halaman  ini terlihat  bahwa  telah  terbentuk  jadwal  tetap  untuk guru, dan tidak ada masalah dalam jadwal pelajaran. Halaman  ini  dapat  dilihat  oleh  admin  dan  siswa, namun  hanya  bisa  di  edit  oleh  admin  untuk  fitur pemindahan  jadwal  secara    manual  sesuai  dengan kebutuhan yang dipilih.
Gambar 11. Hasil Implementasi Penjadwalan

## 4. KESIMPULAN
Berdasarkan  pada hal-hal  yang dituliskan pada bab-bab sebelumnya, penelitian ini dapat disimpulkan sebagai berikut :
1. Hasil  nilai fitness ,  kromosom  pertama dipilih  sebagai  kromosom  yang  memiliki nilai fitness terbaik  karena  tidak  ada pelanggaran yang didefinisikan dan merupakan solusi yang dibutuhkan.
2. Hasil  dari  keseluruhan  proses  algoritma konsisten  dengan  data  prediksi  asli,  dan guru  yang  sama  tidak  dijadwalkan  untuk mengajar  lebih  dari  satu  kali  pada  waktu yang bersamaan.
3. Penelitian  ini  membuktikan  algoritma genetika  dapat  memproses  data  dalam jumlah besar hanya dengan hitungan detik.
4. Hasil  dari  proses  penjadwalan  mata pelajaran  dengan  menggunakan  algoritma genetika memperoleh optimasi yang cukup baik,  sehingga  memberika  efektifitas  dan efisiensi  dalam  proses  penyusunan  jadwal mata pelajaran.
Akhir kata, penelitian ini memberikan beberapa saran  semoga  penelitian  ini  dapat  bermanfaat  bagi guru dan siswa. Terdapat  keterbatasan yang dialami peneliti,  mengingat  banyaknya  data  dan  informasi yang  harus  diolah.  Inovasi  lain  dibutuhkan  untuk menghindari  kesalahan  dan  kekurangan  dalam menghasilkan  sistem  yang  dikembangkan.  Oleh karena itu, penelitian dimasa depan harus berkonsentrasi  pada  pemberian  fitur  tambahan  yang lebih mudah dipahami dan lebih terorganisir.

## DAFTAR PUSTAKA
[1] D.  Oktarina  and  A.  Hajjah,  “Perancangan Sistem  Penjadwalan  Seminar  Proposal  dan Sidang  Skripsi  dengan  Metode  Algoritma Genetika,” JOISIE  (Journal  Of  Information Systems  And  Informatics  Engineering) ,  vol. 3,  no.  1,  pp.  32–40,  Jul.  2019,  doi: 10.35145/JOISIE.V3I1.421.
[2] Ç. Alabaş Uslu, B. Dengiz, C. Ağlan, and I. Sabuncuoğlu,  “Modified  self-adaptive  local
search algorithm for a biobjective permutation  flowshop  scheduling  problem,” Turkish  Journal  of  Electrical  Engineering and  Computer  Sciences ,  vol.  27,  no.  4,  pp.
2730–2745,  Jan.  2019,  doi:  10.3906/elk- 1811-40.
[3] X.  Geng  and  M.  Hu,  “Simulated  Annealing Method-Based Flight Schedule Optimization in  Multiairport  Systems,” Math  Probl  Eng , vol. 2020, 2020, doi: 10.1155/2020/4731918. [4]
T.  Sutrisno,  “PENERAPAN  ALGORITMA
TABU SEARCH DALAM PROSES
PENJADWALAN PADA APLIKASI PENJADWALAN KURSUS MOBIL BERBASIS ANDROID,” Buffer Informatika ,  vol.  4,  no.  2,  pp.  25–30,  Oct. 2018, doi: 10.25134/BUFFER.V4I2.1471.
[5] B.  Wang et  al. ,  “Senior  high  school  course scheduling  using  genetic  algorithm,” J Phys Conf  Ser ,  vol.  953,  no.  1,  p.  012067,  Jan. 2018, doi: 10.1088/1742- 6596/953/1/012067.
[6] A.  Penelitian  Pengembangan  Algoritma Genetika  dengan  Pendekatan  Repetitive Random untuk Penjadwalan Ujian Pendadaran  Proyek  Tugas  Akhir  Adityo Permana Wibowo and D. Avianto, “Pengembangan Algoritma Genetika dengan Pendekatan Repetitive Random untuk Penjadwalan  Ujian  Pendadaran  Proyek Tugas  Akhir,” Jurnal  Nasional  Teknologi dan  Sistem  Informasi ,  vol.  7,  no.  1,  pp.  35– 43, Jun. 2021, doi: 10.25077/TEKNOSI.V7I1.2021.35-43. [7]
J.  Xu,  “Improved  Genetic  Algorithm  to Solve  the  Scheduling  Problem  of  College English  Courses,” Complexity ,  vol.  2021, 2021, doi: 10.1155/2021/7252719.
[8] S.  Hikmawan,  W.  Gata,  N.  Mandiri,  J. Damai  No,  W.  Jati  Barat,  and  J.  Selatan,
“Algoritma Genetika dengan Mutasi Terbatas  untuk  Penjadwalan  Perkuliahan,” Jurnal  Kajian  Ilmiah ,  vol.  21,  no.  2,  pp. 229–242, May 2021, doi: 10.31599/JKI.V21I2.520.
[9] A.  Rajagopalan,  D.  R.  Modale,  and  R. Senthilkumar, “Optimal Scheduling of Tasks in  Cloud  Computing  Using  Hybrid  Firefly- Genetic Algorithm,” pp. 678–687, 2020, doi: 10.1007/978-3-030-24318-0_77.
[10] D.  Nasien  and  A.  Andi,  “Optimization  of Genetic  Algorithm  in  Courses  Scheduling,” IT  Journal  Research  and  Development ,  vol. 6,  no.  2,  pp.  151–161,  Feb.  2022,  doi: 10.25299/ITJRD.2022.7896.
[11] J.  Blazewicz,  H.  Eiselt,  G.  Finke,  G. Laporte,  and  J.  Weglarz,  “Scheduling  tasks and  vehicles  in  a  flexible  manufacturing system,” International  Journal  of  Flexible
Manufacturing Systems , vol. 4, no. 1, 1991.
[12] D.  C.  P.  B.-S.  N.  M.  Jakarta,  “Optimasi
Algoritma Naïve Bayes dengan Menggunakan  Algoritma  Genetika   untuk Prediksi  Kesuburan  (Fertility),” EVOLUSI : Jurnal  Sains  dan  Manajemen ,  vol.  4,  no.  1, Mar. 2016, doi: 10.31294/EVOLUSI.V4I1.3397.
[13] M.  Algoritma,  G.  Untuk,  P.  Permasalahan,
P.  Pelajaran,  S.  Rahman  Erama,  and  R. Wardoyo,  “Modifikasi  Algoritma  Genetika untuk Penyelesaian Permasalahan Penjadwalan  Pelajaran  Sekolah,” IJCCS (Indonesian  Journal  of  Computing  and
Cybernetics Systems) , vol. 8, no. 2, pp. 111– 120, Jul. 2014, doi: 10.22146/IJCCS.6539.
[14] S. Masturoh, D. Wijayanti, and A. Prasetyo,
“SISTEM INFORMASI AKADEMIK
BERBASIS WEB MENGGUNAKAN MODEL  WATERFALL   PADA  SMK ITENAS KARAWANG,” Jurnal Informatika ,  vol.  6,  no.  1,  pp.  62–68,  Apr. 2019, doi: 10.31294/JI.V6I1.5375. [15] F. Risyda, … Y. N.-I., and undefined 2019, “Rancang Bangun Sistem Informasi Akademik  Pada  Sekolah  Smk  Pgri  28 Dengan Metode Waterfall,” journal.universitassuryadarma.ac.id ,  2019, Accessed: May 16, 2022. [Online]. Available: https://journal.universitassuryadarma.ac.id/i ndex.php/jsi/article/view/285
[16] S.  A.  Indutoro  and  E.  Sudarmilah,  “WEB- BASED ACADEMIC INFORMATION SYSTEM OF YAPI SUNNI TEGALGONDO  ISLAMIC  BOARDING SCHOOL USING WATERFALL METHOD  TO  MANAGE  STUDENTS ACADEMIC  DATA,” Jurnal Teknik Informatika (Jutif) , vol. 3, no. 1, pp. 49–59, Feb. 2022, doi: 10.20884/1.JUTIF.2022.3.1.127. [17] D. Wira, T. Putra, and R. Andriani, “Unified Modelling Language (UML) dalam Perancangan  Sistem  Informasi  Permohonan Pembayaran  Restitusi  SPPD,” Jurnal Teknoif Teknik Informatika Institut Teknologi  Padang ,  vol.  7,  no.  1,  pp.  32–39, Apr. 2019, doi: 10.21063/JTIF.2019.V7.1.32-39.
[18] F. Sonata and V. Winda Sari, “Pemanfaatan
UML  (Unified  Modeling  Language)  Dalam Perancangan Sistem Informasi  E-Commerce
Jenis
Customer-To-Customer,” Jurnal Komunika:  Jurnal  Komunikasi,  Media  dan Informatika ,  vol.  8,  no.  1,  pp.  22–31,  Jun. 2019, doi: 10.31504/KOMUNIKA.V8I1.1832.