## SISTEM OPTIMASI PENJADWALAN KERETA API JAKARTA-YOGYAKARTA DENGAN METODE ALGORITMA GENETIKA
Sodi Fachreza 1 , Ratih Titi Komala Sari 2 , Fauziah 3
FTKI, Universitas Nasional 1.2,3
ratih.titi@civitas.unas.ac.id 2s , mstiziah@gmail.com 3
DIO: http://dx.doi.org/10.31869/rtj.v2i2.1114
Abstract: The existence of computers has replaced manyhuman labor, both in business, industry and transportation. This is not to blame because it is proven that the computerized system is much more efficient  and  profitable  for  the  company  than  the  manual  system  (with  human  labor).  Almost  every company, especially the developing and advanced today are competing to computerize systems owned by  the  company,  to  improve  efficiency  and  effectiveness  of  work.  With  the  development  done  in  the making  of  this  thesis  is  scheduling  the  departure  of  passengers  to  be  arranged  in  computerized system. Then setting the schedule of departure of passengers with different trains, days and hours of departure  taken  to  arrive  at  the  destination  is  set  optimally  possible  by  using  Genetic  Algorithm method.
Keywords: Scheduling, Genetic Algorithm, computerized.
Abstrak:  Keberadaan  komputer  telah  menggantikan  banyaktenaga  kerja  manusia,  baik  di  bidang bisnis,industri  maupun  transportasi.  Hal  ini  tidak  bisa  disalahkan  karena  memang  terbukti bahwasistem komputerisasi jauh lebih efisien dan menguntung kan bagi perusahaan dibanding dengan sistem  manual  (dengan  tenaga  kerja  manusia).  Hampir  setiap  perusahaan,  khususnya  yang  sedang berkembang  dan  maju  saat  ini  berlomba-lomba  untuk  mengkomputerisasi  sistem  yang  dimiliki perusahaannya,  untuk  meningkatkan  efisiensi  dan  efektivitas  kerja.  Dengan  perancangan  yang dilakukan dalam pembuatan penelitian ini adalah penjadwalan keberangkatan kereta yang akan diatur dalam  sistem  komputerisasi.  Kemudian  pengaturan  jadwal  keberangkatan  dengan  kereta  api  yang berbeda,  hari  dan  jam  keberangkatan  yang  ditempuh  untuk  sampai  pada  tempat  tujuan  ditata seoptimal mungkin dengan menggunakan metode Algoritma Genetika.
Kata kunci :Penjadwalan, Algoritma Genetika, komputerisasi

## PENDAHULUAN
Kereta  Api  merupakan  salah  satu  alat transportasi  saat  ini  yang  paling  sering digunakan  sebagai  alat  transportasi  utama  di beberapa  kota  besar  di  indonesia,  khusunya  di pulau  jawa.  Selain  harganya  yang  ekonomis, kereta  api  merupakan  salah  satu  kendaraan efektif yang dapat membebaskan dari kemacetan  lalu  lintas  yang  sering  menjadi kendala  transportasi  darat  umum  lainya.  Salah satu  jalur  kereta  api  yang  paling  tinggi  arus transportasinya adalah jalur Jakarta- Yogyakarta.  Semakin  tinggi  arus  transportasi darat  dengan  menggunakan  kereta  api  pada jalur  Jakarta-Yogyakarta  ataupun  sebaliknya, PT  KAI  (Kereta  Api  Indonesia)  diharapkan dapat  melakukan  penjadwalan  kereta  api  yang optimal  sesuai  dengan  tingkat  kebutuhan angkutan kereta api dengan jumlah penumpang,
jumlah  kereta,  jumlah  jalur  kereta  dan  waktu keberangkatan  kereta  antar  stasiun.  Setiap kereta api yang akan datang maupun berangkat dari  suatu  stasiun  ke  stasiun  tujuan  akan mengalami beberapa kali persinggahan. Persinggahan-persinggahan  ini  sering  kali menjadi  suatu  hal  yang  sangat  beresiko  bagi petugas  PT.KAI  untuk  mengatur  penjadwalan operasional  apa  saja  yang  ada  disepanjang lintasan yang akan dilalui setiap rel kereta api. Pada  penelitian  sebelumnya  yang dilakukan  di  STMIK  Budi  Darma  Medan, dilakukan  perancangan  aplikasi  penjadwalan kereta  api  dengan  menggunakan  algoritma genetika, dimana penelitian tersebut menghasilkan  dan  memperlihatkan  bahwa algoritma  genetika  dapat  digunakan  dalam pembuatan  jadwal  kereta  api  yang  optimal
dengan  tidak  adanya  bentrok  antar  jadwal kereta, waktu dan jalur [2]. Pengembangan penelitian yang dilakukan untuk mencari  bentuk  dari  penjadwalan  dengan menganalisis, membandingkan metode
pengembangan crossover dan  mutasi  dalam
algoritma genetika dengan metode konvensional  yang  ada  dan  akan  mencari metode crossover mana  yang  lebih  baik untukdigunakan  dalam  penjadwalan.  Metode yang  lebih  baik  akan  terlihat  dari  nilai fitness yang  dihasilkan.  Jadi  dari  beberapa  hasil  dari penelitian  yg  telah  dilakukan  oleh  peneliti sebelumnya  memiliki  implementasi  masing- masing  mempunya  tujuan  yang  sama,  Tujuan penelitian  ini  adalah  menyusun  suatu  sistem yang  baru  untuk  menggantikan  sistem  yang lama  secara  keseluruhan  atau  memperbaiki sistem  yang  telah  ada[1].  Tujuan  penelitian  ini adalah  mengoptimalkan  penyusunan  jadwal keberangkatan penumpang menggunakan algoritma  genetika[2].  Tujuan  penelitian  ini adalah  membuat  kinerja  PT.KAI  semakin efisien  dan  efektif  [3],  dengan  menerapkan analisa pengembangan metode algoritma genetika  untuk  merancang  sistem  penjadwalan pada kereta api Jakarta-Yogyakarta[4]

## METODE PENELITIAN Penjadwalan
Berdasarkan  Kamus  Besar  Bahasa Indonesia, jadwal merupakan pembagian waktu berdasarkan  rencana  pengaturan  urutan  kerja. Jadwal  juga  didefinisikan  sebagai  daftar  atau tabel  kegiatan  atau  rencana  kegiatandengan pembagian waktu pelaksanaan yang terperinci.Sedangkan  penjadwalan  merupakan proses,  cara,  pembuatan  menjadwalkan  atau memasukkan dalam jadwal [2].
B. Rancangan Kegiatan

## Gambar 1. Rancangan Kegiatan

## Algoritma Genetik
Algoritma  Genetika  merupakan  suatu metode heuristik yang dikembangkan berdasarkan prinsip genetika dan proses seleksi alamiah  Teori  Evolusi  Darwin.  Metode optimasi  dikembangkan  oleh  John  Holland sekitar  tahun  1960-an  dan  dipopulerkan  oleh salah  seorang  mahasiswanya,  David  Goldberg, pada tahun 1980-an. Proses pencarian penyelesaian  atau  proses  terpilihnya  sebuah penyelesaian  dalam  algoritma  ini  berlangsung sama  seperti  terpilihnya  suatu  individu  untuk bertahan  hidup  dalam  proses  evolusi . Dalam teori  Evolusi  Darwin,  suatu  individu  tercipta secara acak kemudian berkembang biak melalui proses reproduksi sehingga terbentuk
sekumpulan  individu  sebagai  populasi.  Setiap individu  dalam  populasi  mempunyai  tingkat kesehatan yang berbeda-beda [1][3][4].
Pada  algoritma  genetika  pencarian  dimulai dengan  pembangkitan  sejumlah  “individu” secara  acak  yang  disebut  dengan  kromosom. Kromosom-kromosom ini merupakan representasi  calon  penyelesaian  yang  akan diperiksa nilai yang sebenarnya. Seperti halnya proses  evolusi  alamiah,  kromosom-kromosom
akan  dinilai  tingkat  kebugarannya.  Hanya kromosom  dengan  tingkat  kebugaran  yang tinggi  saja  yang  tepilih  untuk  bertahan  dalam populasi.  Kromosom-kromosom  yang  terpilih sebagian  akan  melakukan  proses  reproduksi melalui penyilangan ( crossover ). Proses reproduksi  ini  mirip  dengan  perkawinan individu  dalam  proses  evolusi.  Sebagian  kecil dari  kromosom-kromosom  juga  terkena  mutasi seperti dalam proses evolusi. Proses reproduksi ini  akan  melahirkan  individu-individu  baru [4][7].

## HASIL DAN PEMBAHASAN
Proses  penyusunan  penjadwalan  kereta api pada PT. KERETA API Indonesia (Persero) khususnya  pada  stasiun  Jakarta  Kota  dan Yogyakarta  menjadi  permasalahan  yang  sering muncul  pada  awal  tahun.  Kemudian  masing- masing jadwal perjalanan diberi kepada petugas loket yang bekerja pada hari tersebut.Selanjutnya, jadwal perjalanan dijadwalkan  pada  hari,  jam,  dan  tujuan keberangkatan tersebut.
Komponen Penjadwalan Kereta Api
1. Komponen  pertama  adalah  hari  dan jam keberangkatan.
2. Faktor-Faktor  Yang  Mempengaruhi Penjadwalan meliputi :
a. Hari
b. Jadwal Perjalanan

## Gambar 2. Use Case Diagram

## Penerapan Algoritma Genetika
Berikut  adalah  contoh  dari  aplikasi algoritma  genetika  yang  di  gunakan  untuk menyelesaikan  masalah  kombinasi.  Misalkan persamaan  a+2b+3c+4d=20,  akan  menentukan nilai a, b, c, dan d memenuhi persamaan diatas.
Untuk  menentukan  pencarian  pada  metode algoritma genetika, untuk menyelesaikan masalah.  Langkah-langkah  dalam  Penyelesaian masalah dengan menggunakan algoritma genetika adalah sebagai berikut:
1. Pembentukan Chromosome Sehubungan pencarian  yang  digunakan  adalah  a,b,  c, dan  d  maka  penentuan  variabel  a,  b,  c, dan  d  di  bentuk  menjadi  gen–gen pembentuk chromosome .  Jika  gen  a dimisalkan  adalah  sales,  b  dimisalkan adalahorder  distribusi,  c  dimisalkan adalah  hari/waktu  dan  d  dimisalkan adalah  Tujuanan.  Untuk  penentuan  a adalah 0 sampai 20, b adalah 0 sampai 6 , c  adalah  0  sampai  6  dan  d  adalah  1 sampai 9.
2.  Inisialisasi  Proses  inisialisasi  dilakukan dengan  cara  memberikan  nilai  awal  gen- gen  dengan  nilai  acak  sesuai  batasan yang  telah  di  tentukan  sebelumnya. Misalkan  ditentukan  jumlah  populasi adalah  6,  maka: Chromosome [I]  = [a;b;c;d]  =  [5;2;3;4] Chromosome [II]  = [a;b;c;d] = [1;3;4;6]
A.1   Evaluasi Chromosome
Permasalahan  yang  ingin  diselesaikan adalah  nilai  variabel  a,  b,  c,  dan  d  yang  akan memenuhi permasamaan a+2b+3c+4d=20, maka  fungsi  objektif  akan  digunakan  untuk mendapatkan  solusi  adalah  fungsi_objektif ( chromosome )  =  [(a+2b+3c+4d)-20]  maka penentuan  solusinya  adalah  sebagai  berikut sesuai  dengan  penentuan  chromosome  yang diatas;
Fungsi_objektif( chromosome [I])  =  Abs
((5  +  2*2  +  3*3  +  4*4)  -20)  =  Abs ((5+4+9+16) -20) = Abs (34-20) = 14 Fungsi_objektif( chromosome [II])  =  Abs ((1 + 2*3*3*4 + 4*6) -20) = Abs((1+6+12+24) -20)= Abs (43-20) Fungsi_objektif( chromosome [III]) = Abs ((2 + 2*1 + 3*2 + 4*8) -20)
Abs ((2+2+6+40) -20) Abs (56-20) =36 Fungsi_objektif( chromosome [IV])  =  Abs ((3 + 2*3 + 3*1 + 4*7) -20) Abs ((3+6+3+28) -20) Abs (40-20) = 20 Fungsi_objektif( chromosome [V])  =  Abs ((4 + 2*1 + 3*6 + 4*3) -20)
Abs ((4+2+18+12) -20)
Abs (38-20) = 18 Fungsi_objektif( chromosome [VI])  =  Abs ((6 + 2*2 + 3*5 + 4*5) -20) Abs ((6+4+15+20) -20) Abs (45-20) = 25
Rata-rata dari fungsi objektif adalah: Rata-rata = (14+23+36+20+18+25)/6 =136/6 =22.6 A.2 Seleksi Chromosome
Pada  proses  seleksi  ini  dilakukan  dengan cara  membuat chromosome yang  mempunyai fungsi_objektif kecil yang kemungkinan terpilih besar atau mempunyai nilai probabilitas yang  tinggi.  Untuk  itu  di  perlukan  perhitungan fitness = (1/(1+fungsi_objektif), fungsi objektif perlu ditambah 1 untuk menghindari kesalahan program  yang  diakibatkan  pembagian  oleh  0. Fitness [1]  =  1/(fungsi_objektif[1]+1)  =  1/15  = 0.066 Fitness [2]
1 (fungsi_objektif [2]+1) = 1/24 = 0.041 Fitness [3]  =  1/(fungsi_objektif[3]+1)  = 1/37 = 0.027 Fitness [4] = 1/(fungsi_objektif[4]+1)  =  1/21  =  0.047 Fitness [5]  =  1/(fungsi_objektif[5]+1)= 1/19 = 0.052 Fitness [6] = 1/(fungsi_objektif[6]+1)= 1/26 = 0.038Total fitness = 0.066+0.041+0.027+0.047+  0.052+  0.038 = 0.271 Rumus untuk mencari probabilitas : P[i] =
fitness [i] / total_ fitness P[1] = 0.066 / 0.271 = 0.243
P[2] = 0.041 / 0.271 = 0.151
P[3] = 0.027 / 0.271 = 0.099 P[4] = 0.047 / 0.271 = 0.173 P[5] = 0.052 / 0.271 = 0.191 P[6] = 0.038 / 0.271= 0.140 Dari probabilitas diatas maka dapat ditemukan nilai  tertinggi  dari  pencarian  diatas  adalah pada probabilitas 1 yang lebih besar.Maka dari penentuan chromosome tersebut  mempunyai probabilitas  untuk  terpilih  pada  generasi selanjutnya  lebih  besar  dari chromosome lainnya.  Untuk  proses  seleksi  di  gunakan roulete  wheel ,  supaya  untuk  menentukan  nilai kumulatif probabilitasnya:
C[1] = 0.243 C[2] = 0.243 + 0.151 = 0.394
C[3] = 0.243 + 0.151 + 0.099 = 0.493 C[4] = 0.243 + 0.151 + 0.099 + 0.173 = 0.666
C[5] = 0.243 + 0.151 + 0.099 + 0.173 + 0.191 = 0.857
C[6]  =  0.243  +  0.151  +  0.099  +  0.173  + 0.191+0.140 =1 Setelah dilakukan perhitungan komulative probabilitasnya maka proses seleksi menggunakan roulete  wheel dapat  dilakukan. Prosesnya adalah denganmembangkitkan bilangan  acak  R  dalam  range  0-1.  Jika  R[k]  < C[1]  maka  pilih chromosome ke-k  sebagai induk  dengan  syarat  V[k-1]<  R  <  C[k].  Jika diputar rouletewheel sebanyak jumlah populasi yatu  6  kali  (bangkitkanbilangan  acak  R)  dan pada tiap putaran, maka dipilih satu chromosome untuk populasi baru, misalnya: R[1] = 0.260 R[2] = 0.201 R[3] = 0.100
R[4] = 0.180 R[5] = 0.225
R[6] = 0.150
Angka  acak  pertama  R[1]  adalah  lebih besar  dari  C[1]  dan  lebih  kecil  dari  pada  C[2] maka pilih
chromosome [1] sebagai chromosome baru hasil proses seleksi adalah:
Chromosome [1]  = chromosome [1] Chromosome [2]  = chromosome [1] Chromosome [3]  = chromosome [5] Chromosome [4]  = chromosome [1] Chromosome [5] =  chromosome [3] Chromosome [6] = chromosome [2] Chromosome baru  hasil  proses seleksi  adalah: Chromosome [1]  = [5;2;3;4] Chromosome [2] = [5;2;3;4] Chromosome [3] = [4;1;6;3] Chromosom e[4] = [4;1;6;3] Chromosome [5] = [2;1;2;8] Chromosome [6] = [1;3;4;6] A.3 Crossover
Setelah  proses  seleksi  maka  proses selanjutnya adalah proses crossover . Metode ini menggunakan  salah  satu one-cutpoint ,  yaitu memilih secara acak satu posisi dalamchromosome  induk  kemudian  saling menukar  gen. Chromosome yang  dijadikan induk dipilih secara acakdan jumlah chromosome yang mengalami crossover dipengaruhi  oleh  parameter crossover_rate (pc).  Setelah  melakukan  pemilihan  induk proses  selanjutnya  adalah  menentukan  posisi crossover.  Ini  dilakukan  dengan  cara  dengan batasan  1  sampai  (panjang  chromosome-1),
dalam kasus ini bilangan acak yang dibangkitkan  adalah  1-3.Misalkan  didapatkan potongan  gen  tersebut  saling  ditukarkan  antar induk.
Chromosome [1]>< Chromosome [3] Chromosome [3]>< Chromosome [5] Chromosome [5]>< Chromosome [1] Offsring[1]= chromosme [1] >< chromosome [3] [5;2;3;4] >< [2;1;2;8] [5;1;3;8] Offsring[3]= chromosme [3] >< chromosome [5] [2;1;2;8] >< [4;1;6;3] [2;1;2;3] Offsring[5]= chromosme [5] ><
chromosome [1] [5;2;3;4] >< [5;2;3;4] [5;2;3;4]
Dengan demikian populasi chromosome setelah mengalami proses crossover menjadi : Chromosome [1] = [5;1;3;2] Chromosome [2] = [1;3;4;6] Chromosome [3] = [5;1;3;2] Chromosome [4] = [3;3;1;7] Chromosome [5] = [5;2;3;4] Chromosome [6]= [6;2;5;5]
A.4  Mutasi Jumlah  chromosome  yang  mengalami mutasi  dalam  satu  populasi  ditentukan  oleh parameter mutation_rate . Proses mutasi dilakukan  dengan  cara  mengganti  satu  gen yang  terpilih  secara  acak  dengan  suatu  nilai baru  yang  didapatkan  secara  acak.  Prosesnya adalah sebagai berikut:
1. Pertama  hitung  terlebih  dahulu  panjang total  gen  yang  ada  dalam  satu  populasi.
Dalam  kasus  ini  panjang  toal  gen  adalah total_gen = (jumlah gen dalam chromosome)  *  jumlah  populasi  =  4  * 6  =
24. Dan  untuk  menentukan  posisi  gen  yang mengalami
mutasi dengn cara
membangkitkan  bilangan  integer  acak antara  1  sampai  total_gen,  yaitu  1  sampai 24.Jika  bilangan  acak  yang  dibangkitkan lebih  kecil  daripada  variabel  mutation_rate (pm)  maka  pilih  posisi  tersebut  sebagai subchromosome  yang  mengalami  mutasi. Misal pm ditentukan 10% maka diharapkan ada  10%  dari  total_gen  yang  mengalami populasi : Jumlah mutasi = 0.1 * 24 = 2.4
2. Proses  yang  sama  ini  akan  di  lanjutkan pada  generasi  sebelumnya  yaitu  proses evaluasi,  seleksi,  crossover  dan  mutasi yang kemudian akan menghasilkan choromosome-chromosome baru untuk generasi  selenjutnya.  Setelah  dilakukan perhitungan  yang  diatas  maka  di  pilihlah chromosome yang terbaik yaitu:
Chromosome = [05;01;03;02] Jika dikodekan maka: a=05 ; b=01 ; c=03 ; d=02 jika dihitung terhadap persamaan f=a+2b+3c+4d:
5  +  (2*1)  +  (3*3)  +  (4*2)  =24  Dari pencarian di atas dapat diketahui hasil akhir dari  perhitungan  yaitu;  Dari  pencarian  di atas  dapat  diketahui  hasil  akhir  dari perhitungan yaitu; Chromosome [1] = [5;1;3;2] [5;2;4;3][5;3;5;4][5;4;6;5][5;5;1;6] [5;6;2;1] Chromosome [2] = [4;3;4;6][4;4;5;1] [4;5;6;2][4;6;1;3][4;1;2;4] [4;2;3;5] Chromosome [3] = [3;1;3;2][3;2;4;3] [3;3;5;4][3;4;6;5][3;5;1;6] [3;6;2;1] Chromosome [4] = [2;3;1;5][2;4;2;6] [2;5;3;1][2;6;4;2][2;1;5;3] [2;2;6;4] Chromosome [5] = [1;2;3;1][1;3;4;2] [1;4;5;3][1;5;6;4][1;6;1;5] [1;7;2;6] Chromosome [6] = [2;1;5;3][2;2;6;4] [2;3;1;5][2;4;2;6][2;5;3;1] [2;6;4;2] Chromosome [1] [Argo Dwipangga; Gambir-Yogyakarta] [senin; 08:00][selasa; 08:00] [rabu;
08:00][kamis;  08:00]  [jum’at;  08:00][sabtu; 08:00]
Chromosome [2]
= [Bima; Gambir-Yogyakarta] [senin; 16:30][selasa; 16:30]
[rabu; 16:30][kamis; 16:30] [jum’at; 16:30][sabtu; 16:30]
Chromosome [3] [Fajar  Utama  YK;Pasar  Senen- Yogyakarta] [senin; 06:15][selasa;  06:15]  [rabu; 06:15][kamis; 06:15] [jum’at; 06:15][sabtu; 06:15] Chromosome [4] [Gajah  Wong;  Pasar  Senen- Yogyakarta] [senin; 06.45][selasa; 06.45]
[rabu; 06:45][kamis; 06:45]
[jum’at; 09:10][sabtu; 09:34]
Chromosome [5] [Jayakarta      Premium;      Pasar Senen- Yogyakarta]
[senin; 13:20][selasa; 13:20] [rabu; 13:20][kamis;  13:20] [jum’at; 13:20][sabtu; 13:20] Chromosome [6] [Taksaka; Gambir-Yogyakarta] [senin; 20:45][selasa; 20:45]
[rabu; 20:45][kamis; 20:45] [jum’at; 20:45][sabtu; 20:45]

## Implementasi Sistem
Sistem dibangun menggunakan
PHP,Java  Script  dan  CSS ,  berikut  merupakan implementasisistem  dari  langkah  pertama hingga penentuan solusi.
B.1 Tampilan Form Login Tampilan  ini  merupakan  tampilan  dari
form login  dimana  berfungsi  untuk melakukan proses login.
Yang  dapat  dilihat  pada  gambar
Berikut ini :
Gambar 3. Tampilan Form Login
B.2 Tampilan Form Menu Utama Berikut  ini  merupakan  tampilan  dari form  menu  utama.Yang  berfungsi untuk  pemanggilan  form-form  lainnya pada sistem.
Gambar 4: Tampilan Form Menu Utama B.3 Tampilan Data Kereta Api Berikut  ini  merupakan  tampilan form  data  kereta  api  disini  kita  bisa melihat  data  yang  sudah  berhasil  di input.
Gambar 5: Tampilan Data kereta api
B.4 Tampilan Data Stasiun
Keberangkatan  Berikut  ini  merupakan tampilan  form  data  Stasiun  Keberangkatan disini  kita  bisa  melihat  disini  sudah  ada  2 buah inputan untuk form Stasiun Keberangkatan.
Gambar 6. Tampilan Data Stasiun
B.5  Tampilan Data Jadwal Keberangkatan Ditampilan  ini  kita  bisa  membuat  jadwal keberangkatan  seusai  kode  kereta,  kode masinis,  dan  kode  stasiun  keberangkatan, jam, hari dan kelas.
Gambar 7. Tampilan data Jadwal Keberangkatan B.6  Tampilan Generate Data Ditampilan ini semua data keberangkatan  dijadwal  sesuai  hari  dan jam yang sudah diatur dengan perhitungan  algoritma  genetik  sehingga jadwal tidak akan bentrok.
Gambar 8. Tampilan Generate Data Hasil Pengujian Aplikasi No Rancanga n Proses Hasil yang diharap kan Sesu ai Keteran g an 1. Mengisi Form Login dan klik tombol Login Masuk halaman utama  / dashboar d Sesu ai Jika input benar (Login Sukses) 2. Klik  menu lihat dan edit data  Data Kereta Api Masuk Halama n  “Data Kereta Api” Sesu ai 3. Klik  menu lihat dan edit Masuk halaman “Data Sesu ai data  Data Stasiun Keberangk atan Stasiun Kereta Api” kita  bisa melihat data yang kita input dan  edit data 4. Klik  menu lihat dan edit data  Data Jadwal Keberangk atan Masuk halaman “Data Jadwal Keberan gkatan” kita  bisa melihat data yang kita input dan  edit data Sesu ai 5. Klik  menu lihat dan edit data  Data Masinis Masuk halaman “Data Masinis ” kita bisa melihat data yang kita input dan  edit data
Sesu ai 6. Klik  menu tambah data  Data Masinis Masuk “Data l alu  kita bisa menamb ahkan data halaman Masinis ” Sesu ai
7. Klik  menu Tambah data  Data Kereta Api Masuk halaman “Data Kereta Api” lalu  kita bisa menamb ahkan data
Sesu ai
8. Klik  menu tambah data  Data Jadwal Keberangk atan Masuk halaman “Data Jadwal Keberan gkatan” lalu  kita bisa menamb ahkan data
Sesu ai
9. Klik  menu tambah data  Data Stasiun Keberangk atan Masuk halaman “Data Stasiun Keberan gkatan” lalu  kita bisa menamb ahkan data Sesu ai 10.
Klik  menu Cari dan mengisi jadwal yang  ingin dicari Masuk ke  menu data jadwal keberan gkatan sesuai kode stasiun, jam, hari,  dan waktu.
Sesu ai 11. Klik  menu Generate Jadwal Hasil dari jadwal yang kita isi Sesu ai
akan otomatis masuk ke generate jadwal sesuai stasiun keberan gkatan, kode kereta, kode masinis, dan waktu.
1. Hasil  Generate  Data  memudahkan  untuk mengatur  jadwal  keberangkatan  karena terlihat  dimana  ada  jam,  jalur,  dan  stasiun keberangkatan yang kosong.
2. Generate  Data  didadapatkan  dengan  cara berkala  yaitu  pengisian  form  data  kereta, data masinis, dan data stasiun keberangkatan  setelah  itu  semua  di lengkapi  baru  kita  bisa  menambahkan  data jadwal keberangkatan.
3. Hasil Generate Data bisa langsung di print.

## PENUTUP
Dari hasil analisa yang telah dilakukan dan  berdasarkan  rumusan  masalah  dapat diambil beberapa poin kesimpulan sebagai :
1. Adapun  penjadwalan  kereta  api  pada stasiun  Jakarta  -  Yogyakarta  dengan  cara jadwal keberangkatan dibagi kepada kereta api yang bisa beroperasi pada hari tersebut. Selanjutnya,  jadwal  keberangkatan  disusun pada  hari,  jam,  dan  tujuan  penumpang  ke Yogyakarta.
2. Dalam mengoptimalkan penyusunan jadwal keberangkatan  penumpang  menggunakan algoritma  genetika  diperlukan  4  parameter antara  lain  jumlah  tujuan,  jumlah  hari, waktu probabilitas crossover dan mutasi.

## DAFTAR PUSTAKA
[1]   IGusti  Ayu  Desi  Saryanti,  “Perancangan Simulasi  Optimasi  Masalah  Transportasi Pengiriman  Barang  Dengan  Mengunakan Algoritma  Genetika,”  STMIK  STIKOM Bali, 2015.
[2]   Made  Darma  Yunantara,  I  Gede  Santi
Astawa, Ngr. Agus Sanjaya ER, “Analisis Dan  Impelementasi  Penjadwalan  dengan Mengguakan Pengembangan
Model
Crossover  Dalam  Algoritm  Genetika,” 2012.
[3]   Muliadi,  “Pemodelan  Algoritma  Genetika
Pada  Sistem  Penjadwalan  Perkuliahan
Prodi Ilmu Komputer Universitas Lambungmangkurat,”  FMIPA  Universitas Lambung Mangkurat Banjarmasin, 2014.
[4]   Nurhamidah  Lubis,  Garuda  Ginting,
“Perancangan Aplikasi Penjadwalan Kereta Api Dengan Menggunakan
Algoritma Genetika,” STMIK Budi Darma
Medan, 2016.
[5]  Widya Hendrastiti, Wiwik Anggraeni, S.Si, M.Kom, dan Retno Aulia Vinarti, S.Kom, M.Kom,  “Penjadwalan  Tenaga  Kerja Kereta  Barang  PT.XYZ  menggunakan
Algoritma  Genetika,”  Institut  Teknologi Sepuluh Nopember(ITS),2012 [6] Dwi Agustina Supriyanti, Khusnul Novianingsih,  Husty  Serviana  Husain, “Model  Optimasi  Penjadwalan  Kereta Apidi  PT.  Kereta  Api  Indonesia  (Persero) Daop2 Bandung Lintasan Bandung- Cicalengka,” 2013