Upload
others
View
16
Download
1
Embed Size (px)
Citation preview
IMPLEMENTASI ALGORITMA GENETIKA UNTUK
PENJADWALAN LATIHAN FITNESS DI GYM
CENTER
SKRIPSI
Muhammad Najib Kusumonegoro
4815040019
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER
POLITEKNIK NEGERI JAKARTA
2020
IMPLEMENTASI ALGORITMA GENETIKA UNTUK
PENJADWALAN LATIHAN FITNESS DI GYM
CENTER
LAPORAN SKRIPSI
Dibuat untuk Melengkapi Syarat-Syarat yang Diperlukan
untuk Memperoleh Gelar Sarjana Terapan
Muhammad Najib Kusumonegoro
4815040019
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER
POLITEKNIK NEGERI JAKARTA
(2020)
i Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
HALAMAN PERNYATAAN ORISINALITAS
Skripsi ini adalah hasil karya saya sendiri, dan semua sumber baik yang
dikutip maupun dirujuk telah saya nyatakan dengan benar
Nama : Muhammad Najib
Kusumonegoro
NPM : 4815040019
Tanggal : 5 Agustus 2020
Tanda Tangan :
ii
LEMBAR PENGESAHAN
Skripsi diajukan oleh :
Nama : Muhammad Najib Kusumonegoro
NIM : 4815040019
Program Studi : Teknik Informatika
Judul Skripsi :Implementasi Algoritma Genetika untuk
Penjadwalan Latihan Fitness di GYM Center
Telah diuji oleh tim penguji dalam Sidang Skripsi pada hari Rabu, Tanggal 5,
Bulan Agustus, Tahun 2020 dan dinyatakan LULUS.
Disahkan oleh
Pembimbing I : Rizki Elisa Nalawati, S.T, M.T (………………..)
Penguji I : Euis Oktavianti, S.Si., M.T.I. (………………..)
Penguji II : Iklima Ermis Ismail, S.Kom., M.Kom. (………………..)
Penguji III : Muhammad Bagus Yusuf Rasyiidin,
S.Kom, M.TI.
(………………..)
iii
KATA PENGANTAR
Alhamdulillahirobbilalamin, segala puji bagi Allah yang maha pengasih lagi maha
penyayang yang telah memberikan kenikmatan yang tiada terkira sehingga saya
dapat menyusun Skripsi yang berjudul “Implementasi Algoritma Genetika untuk
Penjadwalan Latihan Fitness di GYM Center.” dengan tepat waktu dan
semaksimal mungkin.
1. Ayah dan Ibu tercinta. Terimakasih atas segala do’a, kepercayaan, cinta
kasih yang tiada henti diberikan kepada penulis, dan senantiasa
memberikan motivasi yang luar biasa sehingga mampu memberikan
pencerahan dan penguatan yang sangat berarti bagi penulis.
2. Ibu Risna Sari selaku ketua Program Studi Teknik Informatika yang telah
memberikan bimbingan, motivasi serta arahan kepada penulis dalam
penyelesaian penulisan Skripsi.
3. Ibu Rizki Elisa Nalawati selaku dosen pembimbing yang telah
memberikan bimbingan, motivasi serta arahan kepada penulis dalam
penyelesaian penulisan Skripsi.
4. Seluruh dosen Program Studi Teknik Informatika Politeknik Negeri
Jakarta yang telah memberikan ilmu, pengetahuan, pengalaman dan
wawasannya, sebagai pedoman dan bekal bagi penulis.
Penulis sadar bahwa dalam penulisan ini masih jauh dari kata sempurna karena
terbatasnya pengalaman dan pengetahuan penulis. Oleh karena itu penulis siap
menerima kritik dan saran yang membangun sebagai bahan evaluasi.
Akhir kata penulis mengucapkan terima kasih banyak kepada semua pihak yang
telah membantu dan semoga Allah SWT melimpahkan karunianya dalam setiap
amal kebaikan kita, Aamiin.
Jakarta, 26 Maret 2020
Muhammad Najib Kusumonegoro
iv
SURAT PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI UNTUK
KEPENTINGAN AKADEMIS
Sebagai sivitas akademik Politeknik Negeri Jakarta, saya yang bertanda tangan di
bawah ini:
Nama : Muhammad Najib Kusumonegoro
NIM : 4815040019
Program Studi : Teknik Informatika
Jurusan : Teknik Informatika
Jenis karya : Skripsi/Tesis/Disertasi/ Karya Ilmiah Lainnya*: Skripsi
demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada
Politeknik Negeri Jakarta Hak Bebas Royalti Noneksklusif (Non-exclusive
RoyaltyFree Right) atas karya ilmiah saya yang berjudul :
Implementasi Algoritma Genetika untuk Penjadwalan Latihan Fitness di GYM
Center
beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti
Noneksklusif ini Politeknik Negeri Jakarta berhak menyimpan,
mengalihmedia/format-kan, mengelola dalam bentuk pangkalan data (database),
merawat, dan memublikasikan skripsi saya selama tetap mencantumkan nama
saya sebagai penulis/pencipta dan sebagai pemilik Hak Cipta.
Demikian pernyataan ini saya buat dengan sebenarnya.
Dibuat di : ……………………. Pada tanggal : …………………….
Yang menyatakan
(Muhammad Najib Kusumonegoro )
*Karya Ilmiah: karya akhir, makalah non seminar, laporan kerja praktek, laporan
magang, karya profesi dan karya spesialis.
v
ABSTRAK
Tahap perencanaan dan penjadwalan merupakan tahapan yang paling
menentukan keberhasilan suatu kegiatan latihan fitness. Sistem penjadwalan
latihan fitness yang disusun di GYM Center pada saat ini masih belum
terkomputerisasi. Sehingga kurang efektif dilakukan, karena masih terjadi
benturan keadaan input data, seperti benturan ketersediaan waktu, kelas,
ruangan dan jumlah materi pelatihan yang diselenggarakan dengan ketersediaan
trainer pengampu yang ada. Hal ini dikarenakan penjadwalan adalah tahap
ketergantungan antar aktivitas secara keseluruhan yaitu salah satu faktor
keberhasilan dalam pelaksanaan latihan fitness agar selesai tepat pada waktunya.
Skripsi ini menerapkan algoritma genetika untuk memecahkan masalah optimasi
dalam penjadwalan latihan fitness. Algoritma genetika merepresentasikan
kandidat solusi penjadwalan kedalam kromosom-kromosom secara acak,
kemudian dievaluasi menggunakan fungsi fitness dan seterusnya dilakukan
seleksi. Metode seleksi yang digunakan dalam penelitian ini adalah metode
roulette wheel selection, kemudian dilakukan pindah silang dan mutasi. Pada
setiap generasi, kromosom dievaluasi berdasarkan nilai fitness. Setelah beberapa
generasi maka algoritma genetika akan menghasilkan kromosom terbaik, yang
merupakan solusi optimal. Kelebihan Algoritma Genetika dibandingkan dengan
metaheuristic search optimization lainnya adalah waktu eksekusi yang relative
lebih cepat dan sedikitnya penggunaan memori untuk mencapai kandidat solusi
dengan nilai fitness terbaik. Implementasi aplikasi penjadwalan dengan algoritma
genetika dalam penelitian ini menggunakan Framework Codeigniter dan MySql.
Pengujian yang dilakukan menggunakan pengujian performansi dan blackbox.
Hasil dari pengimplementasian Algoritma Genetika sebagai pendekatan dalam
optimasi penjadwalan latihan fitness menghasilkan pencapaian nilai fitness yang
optimal dan mampu menghasilkan rekomendasi jadwal kegiatan-kegiatan dalam
latihan fitness yang dapat menjadi alternatif keputusan penjadwalan bagi para
latihan fitness.
Kata kunci: Codeigniter, Algoritma Genetika, Fungsi Fitness, Penjadwalan
Latihan Fitness, Pindah Silang, Mutasi.
vi
DAFTAR ISI
HALAMAN PERNYATAAN ORISINALITAS ..................................................................... i
LEMBAR PENGESAHAN .................................................................................................... ii
KATA PENGANTAR ........................................................................................................... iii
SURAT PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI UNTUK
KEPENTINGAN AKADEMIS ..............................................................................................iv
ABSTRAK ............................................................................................................................... v
DAFTAR ISI ..........................................................................................................................vi
DAFTAR GAMBAR ........................................................................................................... viii
DAFTAR TABLE ..................................................................................................................ix
BAB I ....................................................................................................................................... 1
PENDAHULUAN.................................................................................................................... 1
1.1 Latar Belakang Kegiatan............................................................................................ 1
1.2 Perumusan Masalah ................................................................................................... 2
1.3 Batasan Masalah ......................................................................................................... 2
1.4 Tujuan dan Manfaat ................................................................................................... 2
1.5 Metode pengembangan sistem .................................................................................... 3
BAB II ..................................................................................................................................... 4
TINJAUAN PUSTAKA .......................................................................................................... 4
2.1 Penjadwalan ................................................................................................................ 4
2.2 Latihan Fitness............................................................................................................ 4
2.3 GYM Center ................................................................................................................ 4
2.4 Istilah dalam Algoritma Genetika .............................................................................. 5
2.5 Algoritma Genetika .................................................................................................... 5
2.6 Metode Pengembangan Sistem ................................................................................... 8
2.5.1 Waterfall ...................................................................................................................... 8
A. Analisis Sistem ............................................................................................................ 8
B. Perancangan Sistem Use Case Diagram ..................................................................... 8
C. Implementasi ............................................................................................................... 9
D. Uji Coba Sistem ........................................................................................................ 10
2.7 Penelitian Terdahulu ................................................................................................ 11
BAB III .................................................................................................................................. 22
vii Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
PERANCANGAN DAN REALISASI................................................................................... 22
3.1 Perancangan Sistem .................................................................................................. 22
3.1.1 Deskripsi sistem ........................................................................................................ 22
3.1.2 Analisis kebutuhan ................................................................................................... 22
3.1.3 Alur kerja sistem ...................................................................................................... 24
3.1.4 Rancangan sistem ..................................................................................................... 25
3.2 Realisasi Sistem ......................................................................................................... 25
3.2.1 Implementasi tampilan sistem .................................................................................. 26
3.2.2 Implementasi Algoritma Genetika ........................................................................... 31
BAB IV .................................................................................................................................. 43
PEMBAHASAN .................................................................................................................... 43
4.1 Pengujian .................................................................................................................. 43
4.1.1 Deskripsi Pengujian .................................................................................................. 43
4.1.2 Prosedur Pengujian .................................................................................................. 43
4.1.3 Data Hasil Pengujian Algoritma Genetika............................................................... 47
4.2 Analisis Data ............................................................................................................. 48
BAB V .................................................................................................................................... 56
PENUTUP ............................................................................................................................. 56
5.1 Kesimpulan. .............................................................................................................. 56
5.2 Saran ......................................................................................................................... 56
DAFTAR PUSTAKA ............................................................................................................ 57
LAMPIRAN .......................................................................................................................... 59
viii
DAFTAR GAMBAR
Gambar 2.1 Contoh Use Case Poliklinik Gigi ............................................................... 9
Gambar 2.2 Contoh User Acceptance Test Performa Aplikasi KMS ............................ 13
Gambar 3.1 Alur Kerja Sistem Penjadwalan Latihan Fitness ....................................... 24
Gambar 3.2 Use Case Diagram ................................................................................... 25
Gambar 3.3 Halaman Jam ........................................................................................... 26
Gambar 3.4 Halaman Hari .......................................................................................... 26
Gambar 3.5 Halaman Waktu ....................................................................................... 27
Gambar 3.6 Halaman Kelas......................................................................................... 27
Gambar 3.7 Halaman Trainer ...................................................................................... 28
Gambar 3.8 Halaman Data Materi ............................................................................... 28
Gambar 3.9 Halaman Materi ....................................................................................... 29
Gambar 3.10 Halaman Ruang ..................................................................................... 29
Gambar 3.11 Halaman Perhitungan Genetika .............................................................. 30
Gambar 3.12 Halaman Hasil Jadwal ............................................................................ 30
Gambar 3.13 Jadwal yang dihasilkan Algoritma Genetika 1 ........................................ 49
Gambar 3.14 Jadwal yang dihasilkan Algoritma Genetika 2 ........................................ 50
Gambar 3.15 Jadwal yang dihasilkan Algoritma Genetika 3 ........................................ 32
ix Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR TABLE
Tabel 1 Rangkuman Penelitian Terdahulu ....................................................... 12
Tabel 2 Data Trainer ....................................................................................... 32
Tabel 3 Data Member atau Kelas .................................................................... 32
Tabel 4 Data Materi Latihan ........................................................................... 32
Tabel 5 Data Ruangan ..................................................................................... 33
Tabel 6 Data Hari ............................................................................................ 33
Tabel 7 Data Jam ............................................................................................ 34
Tabel 8 Contoh Representasi Kromosom Bilangan Bulat (Integer) .................. 34
Tabel 9 Pengujian Blackbox............................................................................ 44
Tabel 10 Bobot Penilaian User Acceptance Test.............................................. 44
Tabel 11User Acceptance Test ........................................................................ 45
Tabel 12 Hasil Pengujian User Acceptance Test .............................................. 46
Tabel 13 Hasil Presentase User Acceptance Test ............................................ 47
Tabel 14 Parameter Algoritma Genetika.......................................................... 49
Tabel 15 Jadwal yang dihasilkan Algoritma Genetika 1 .................................. 49
Tabel 16 Jadwal yang dihasilkan Algoritma Genetika 2 .................................. 50
Tabel 17 Jadwal yang dihasilkan Algoritma Genetika 3 .................................. 52
1
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
BAB I
PENDAHULUAN
1.1 Latar Belakang Kegiatan
Penjadwalan dalam dunia pelatihan merupakan hal yang sangat penting untuk
diperhatikan. Pada dasarnya kegiatan belajar mengajar akan berjalan dengan
lancar jika penyusunan jadwal sesuai dengan kebutuhan, serta kondisi di suatu
lembaga pelatihan tersebut.
Proses penjadwalan di GYM Center khususnya mengenai pengelolaan
penjadwalan latihan fitness tidak terkomputerisasi. Selain itu penjadwalan yang
ada saat ini masih memakan waktu yang lama dan benturan input data karena
banyaknya faktor yang harus dipertimbangkan. Seperti jumlah materi pelatihan
yang diselenggarakan, jumlah ruangan yang tersedia, jumlah trainer pembimbing,
serta kebutuhan member dan trainer pengampu materi pelatihan yang juga
menjadi pertimbangan dalam suatu penjadwalan. Maka dari itu dibutuhkan sistem
untuk mengatur penjadwalan latihan fitness agar tidak bentrok pada ruangan,
trainer, waktu.
Salah satu kelemahan dalam latihan fitness adalah mengatur waktu penjadwalan,
baik dalam stretching, latihan beban, pendinginan dan waktu menambah latihan.
Sehingga para member tidak memiliki alat ukur yang pasti untuk menyelesaikan
target diwaktu yang tepat. Untuk mengatasi masalah tersebut maka diperlukan
sebuah solusi dengan mengembangkan aplikasi penjadwalan sebagai solusi dari
masalah-masalah tersebut.
Adapun beberapa metode yang dapat digunakan dalam menyelesaikan
permasalahan penjadwalan antara lain seperti Tabu Search (Silaban, Puryani &
Nursubiyantoro, 2014), metode Particle Swarm Optimization (Wati & Rochman,
2013), metode Algoritma Genetika (Setyaningsih, 2014), dan metode Ant Colony
Optimization (Ashari, Muslim & Alamsyah, 2016). Penelitian terbaru menyatakan
bahwa algoritma genetika merupakan metode yang baik dan efektif dalam
menyelesaikan masalah penjadwalan (Hari, Putra & Hamdlani, 2018). Algoritma
genetika merupakan salah satu metode optimasi yang mudah diimplementasikan
2
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
di berbagai macam studi kasus, baik kasus yang sederhana hingga kasus yang
kompleks karena menggunakan teori evolusi (Priambodo, 2015). Penggunaan
metode algoritma genetika pada penelitian ini diharapkan dapat membantu
mengoptimalkan dan menyelesaikan segala permasalahan dalam proses
penjadwalan latihan fitness.
Berdasarkan latar belakang diatas, perlu dibuat aplikasi penjadwalan latihan
fitness menggunakan algoritma genetika sebagai solusi dari permasalahan, maka
dibuatlah skripsi dengan judul “Implementasi Algoritma Genetika untuk
Penjadwalan Latihan fitness di Gym Center” diharapkan dengan adanya aplikasi
penjadwalan latihan fitness ini, latihan fitness menjadi lebih terikat, teratur dan
terarah.
1.2 Perumusan Masalah
Berdasarkan latar belakang yang telah disebutkan diatas, maka rumusan masalah
dalam penelitian ini adalah bagaimana menyelesaikan masalah penjadwalan
latihan fitness menggunakan algoritma genetika.
1.3 Batasan Masalah
Adapun batasan masalah dalam penelitian dan penyusunan skripsi ini adalah
Implementasi algoritma genetika hanya menampilkan hasil populasi awal,
evaluasi fungsi fitness, seleksi, crossover dan mutasi. Constraint terdiri dari data
waktu, data trainer pengajar pelatihan, data ruangan yang dipakai, data member
dan materi latihan fitness.
1.4 Tujuan dan Manfaat
1.4.1 Tujuan
Penelitian ini bertujuan untuk implementasi algoritma genetika untuk penjadwalan
latihan fitness di GYM Center.
1.4.2 Manfaat
3
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
1. Meningkatkan keefektifan waktu bagi para member dalam latihan fitness dan para
trainer pengampu dalam mengontrol member di Gym Center melalui pengelolaan
penjadwalan yang akurat.
2 Memberikan kemudahan pengelolaan penjadwalan latihan fitness agar
proses penjadwalan yang dihasilkan tidak terjadi benturan terkait
ketersediaan waktu, trainer, ruangan, kelas dan member yang disusun di
Gym Center.
1.5 Metode pengembangan sistem
Metode pengembangan sistem yang diterapkan adalah metode Waterfall. Adapun
tahapan-tahapan berdasarkan metode waterfall adalah sebagai berikut:
1. Kebutuhan Analisis
Tahap ini diperlukan analisis tentang keperluan yang dibutuhkan dalam proses
yang akan diterapkan dalam implementasi algoritma genetika dalam penjadwalan
latihan fitness.
2. Sistem Desain
Spesifikasi kebutuhan dari tahap sebelumnya akan dipelajari dalam fase ini dan
desain sistem disiapkan. Desain Sistem membantu dalam menentukan perangkat
keras (hardware) dan sistem persyaratan dan juga membantu dalam
mendefinisikan arsitektur sistem secara keseluruhan.
3. Implementasi
Pada tahap ini, sistem pertama kali dikembangkan di program kecil yang disebut
unit, yang terintegrasi dalam tahap selanjutnya. Setiap unit dikembangkan dan
diuji untuk fungsionalitas yang disebut sebagai unit testing.
4. Pengujian
Pengujian yang digunakan dalam sistem informasi surat digital berupa black box
testing untuk mengetahui error fitur-fitur yang telah dibuat dalam implementasi
algoritma genetika dalam penjadwalan latihan fitness.
4
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
BAB II
TINJAUAN PUSTAKA
2.1 Penjadwalan
Penjadwalan merupakan sebuah proses pengambilan keputusan yang sering
dilakukan di industri manufaktur maupun di industri yang bergerak di bidang
pelayanan atau jasa dan berkaitan dengan pengalokasian sumber daya ke dalam
tugas-tugas atau fungsi-fungsi tertentu serta tujuan penjadwalan adalah untuk
mengoptimalkan satu atau beberapa tujuan (Wati, et.al, 2013).
2.2 Latihan Fitness
Manusia mempunyai banyak kebutuhan, baik kebutuhan yang bersifat primer,
sekunder, maupun tersier. Kebutuhan primer adalah kebutuhan yang mutlak
diperlukan oleh manusia. Pemenuhan kebutuhan ini bersifat pokok, karena jika
tidak dipenuhi akan mengakibatkan terganggunya kehidupan manusia secara
signifikan. Salah satu contoh dari kebutuhan primer adalah kebutuhan manusia
akan kesehatan. Orang sehat jauh lebih baik dalam melakukan aktivitas sehari-hari
dari pada orang sakit. Orang sakit akan mengalami penurunan fungsi organ tubuh,
sehingga aktivitas yang berhubungan dengan fungsifungsi tubuh mengalami
penurunan. Jadi, orang sakit akan mengalami penurunan produktivitas kerjanya
(Widiyatno, Ari, 2015)
2.3 GYM Center
Dalam melakukan latihan kebugaran jasmani bahwa member fitness memiliki
motivasi tinggi dalam melakukan latihan fitness. Berdasarkan hasil penelitian
yang di temukan bahwa member fitness center melakukan latihan kebugaran
berdasarkan motivasi dari dalam dan dari luar terdapat pada kesenangan dan
kebugaran mencapai 100% dikatakan seluruhnnya. (Andi, et.al. 2015)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
2.4 Istilah dalam Algoritma Genetika
Terdapat beberapa definisi penting dalam algoritma genetika yang perlu
diperhatikan (Maharani, 2013).yaitu:
a. Genotype (gen), merupakan sebuah nilai yang menyatakan satuan dasar
yang membentuk suatu arti tertentu dalam satu keasatuan gen yang
dinamakan kromosom. Gen mengkodekan informasi yang disimpan di
dalam kromosom.
b. Individu atau kromosom, gabungan gen-gen yang membentuk nilai
tertentu dan merupakan suatu alternatif solusi terhadap permasalahan yang
akan diselesaikan.
c. Populasi, merupakan sekumpulan individu yang akan diproses bersama
dalam satu siklus proses evaluasi.
d. Generasi, merupakan satu siklus proses evolusi atau satu iterasi di dalam
algoritma genetika.
2.5 Algoritma Genetika
Algoritma Genetika adalah program komputer yang mensimulasikan proses
evolusi, dengan menghasilkan kromosom-kromosom dari tiap populasi secara
acak dan memungkinkan kromosom tersebut berkembang biak sesuai dengan
hukum-hukum evolusi (Qoiriah, 2014). Langkah – langkah algoritma genetika
adalah sebagai berikut :
1. Penentuan Batasan
Penentuan batasan diperlukan dalam algoritma genetika untuk mengetahuin
batasan-batasan dari penggunaan algoritma genetika.
2. Penentuan data
Penentuan data harus dilakukan setelah mengetahui batasan-batasan dalam
algoritma genetika, sehingga data dapat digunakan dalam algoritma genetika.
3. Proses inisiasi populasi awal
Inisialisasi populasi awal merupakan suatu metode untuk menghasilkan
kromosom-kromosom awal. Data kromosom akan memberikan solusi pada
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
setiap percobaan. Jumlah gen yang akan dibangkitkan sesuai dengan jumlah data
yang akan digunakan.
4. Proses evaluasi
Mekanisme penghitungan nilai fitness untuk setiap kromosom dalam
penjadwalan latihan fitness adalah sebagai berikut: Pertama, menghitung nilai
fitness setiap gen dalam kromosom (fg) menggunakan rumus:
fg= 1/1+P1+ P2+ P3 (Pers. 3 1)
dengan,
g : Gen ke-g dengan g = 1, 2, 3, ..., n
P1 : Penalti untuk trainer sama waktu sama
P2 : Penalti untuk ruang sama waktu sama
P3 : Penalti untuk kelas sama waktu sama
Kemudian menghitung nilai fitness masing-masing kromosom(fk) menggunakan
rumus:
fk = ∑ fg (Pers. 3 2)
dengan k adalah kromosom ke-k untuk k = 1, 2, 3, ..., 100.
5. Proses seleksi
Proses seleksi dengan memilih satu individu dengan kemungkinan proporsi
secara langsung untuk nilai fitness-nya, yaitu memilih kromosom terbaik dengan
cara menghitung setiap nilai kromosom dan membandingkannya dengan nilai
kromosom lainnya. Cara menghitung Nilai masing-masing kromosom dilakukan
menggunakan pers 3.2. dan menghitung total nilai seluruh kromosom (yaitu ft)
menggunakan pers 3.3:
ft = f1 + f2 + f3 + ... + fn (Pers. 3 3)
Selanjutanya menghitung nilai probabilitas terpilihnya masing-masing
kromosom (yaitu Pi) menggunakan pers 3.4:
Pi = fk / ft (Pers. 3 4)
Kemudian, menghitung nilai probabilitas kumulatif masing-masing kromosom
(yaitu Ci) dengan cara sebagai berikut,
Untuk i = 1, probabilitas kumulatif kromosom adalah
Ci = Pi (Pers. 3 5)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Untuk i = 2, 3, ..., n, probabilitas kumulatif kromosom adalah
Ci = Pi + C(i - 1) (Pers. 3 6)
Selajutnya membangkitkan bilangan acak [0-1] untuk masing-masing
kromosom, yaitu Rj, dengan j = 1, 2, ..., n, dimana nantinya sebuah kromosom
akan terpilih jika bilangan acak yang dibangkitkan berada dalam interval nilai
probabilitas seleksi antar kromosom.
6. Proses crossover
Metode crossover yaitu penyilangan satu titik (one-point crossover) dengan
memisahkan string kromosom menjadi dua bagian, selanjutnya salah satu bagian
dipertukarkan dengan salah satu bagian dari string yang lain yang telah
dipisahkan dengan cara yang sama.
7. Proses mutasi
Sebelum proses mutasi dapat dilakukan, terlebih dahulu menghitung Total Gen
yang ada pada kromosom menggunakan rumus:
∑g = ∑g(k) x ∑k (Pers. 3 7)
dengan,
∑g = Total Gen
∑g(k) = Total gen didalam kromosom
∑k = Jumlah Populasi
Kemudian menentukan total mutasi, persamaan yang digunakan untuk
menghitung total mutasi yang akan dilakukan adalah:
∑Mutasi = Pm * ∑g (Pers. 3 8)
dengan,
∑Mutasi = Total Mutasi
Pm = Probabilitas Mutasi
∑g = Total Gen
Jenis mutasi yang digunakan dalam penelitian ini adalah mutasi random (random
mutation). Metode ini dilakukan dengan mengambil substring secara acak yang
akan menggantikan isi gen yang terpilih untuk dimutasi.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
2.6 Metode Pengembangan Sistem
Metode pengembangan sistem berarti suatu metode yang digunakan untuk
melakukan pengembangan sistem berbasis komputer. Pengembangan sistem yang
berbasis komputer dapat merupakan tugas kompleks yang membutuhkan banyak
sumber daya dan memakan waktu untuk menyelesaikannya. Proses
pengembangan sistem melewati beberapa tahapan dari mulai sistem itu
direncanakan sampai dengan sistem tersebut diterapkan, dioprasikan, dan,
dipelihara (Hermawan, et al., 2015).
2.5.1 Waterfall
Metode air terjun atau yang sering disebut metode waterfall sering dinamakan
siklus hidup klasik (classic life cycle), dimana hal ini menggambarkan pendekatan
yang sistematis dan juga berurutan pada pengembangan perangkat lunak, dimulai
dengan spesifikasi kebutuhan pengguna sampai penyerahan sistem ke para
pelanggan/pengguna (Setiawan, 2015).
A. Analisis Sistem
Analisis sistem membutuhkan komunikasi terhadap kebutuhan yang diperlukan,
bertujuan untuk memahami perangkat lunak yang diinginkan oleh pengguna serta
batasan dari perangkat lunak tersebut. Informasi ini biasanya dapat diperoleh
melalui wawancara, diskusi atau survei langsung. Informasi dianalisis untuk
mendapatkan data yang dibutuhkan oleh pengguna (Setiawan, 2015).
B. Perancangan Sistem Use Case Diagram
Perancangan Sistem membantu dalam menentukan perangkat keras (hardware)
dan sistem persyaratan dan juga membantu dalam mendefinisikan arsitektur
sistem secara keseluruhan (Setiawan, 2015).
Use case diagram terdiri dari actor, use case dan serta hubungannya. Use case
diagram adalah sesuatu yang penting untuk memvisualisasikan, menspesifikasikan
dan mendokumentasikan kebutuhan perilaku sistem (Novita & Sari, 2015).
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 2.1 Contoh Use Case Poliklinik Gigi
Sumber : (Zulfiandri, et al., 2014)
C. Implementasi
Pada tahap ini, sistem pertama kali dikembangkan di program kecil yang disebut
unit, yang terintegrasi dalam tahap selanjutnya. Setiap unit dikembangkan dan
diuji untuk fungsionalitas yang disebut sebagai unit testing.
a. Bahasa pemograman
Bahasa pemrograman merupakan sytnax instruksi terdiri dari banyak baris yang
berhubungan dengan logika benar tidaknya urutan statement yang dimengerti oleh
computer (Fridayanthie & Charter, 2016)
b. PHP
PHP merupakan bahasa pemrograman yang digunakan untuk membuat program
website dimana kode program yang telah dibuat dikompilasi dan dijalankan pada
sisi server untuk menghasilkan halaman website yang dinamis (Wirawan, et al.,
2016).
c. Codeigniter
Bahasa pemrograman merupakan sytnax instruksi terdiri dari banyak baris yang
berhubungan dengan logika benar tidaknya urutan statement yang dimengerti oleh
computer (Fridayanthie & Charter, 2016)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
d. Website
Website merupakan kumpulan dari halaman-halaman web yang berhubungan
dengan file lainnya yang terkait. Dalam sebuah website terdapat suatu halaman
yang dikenal dengan sebutan home page. Home page adalah sebuah halaman yang
pertama kali dilihat ketika seseorang mengunjungi website. Dari home page,
pengujung dapat mengklik hyperlink untuk pindah kehalaman lain yang terdapat
dalam website tersebut (Hendrianto, 2014).
D. Uji Coba Sistem
Pengujian software harus diujicobakan, agar software bebas dari error, dan
hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan
sebelumnya.
a. Black box testing
Black box testing berfokus pada spesifikasi fungsional dari perangkat lunak.
Tester dapat mendefinisikan kumpulan kondisi input dan melakukan pengetesan
pada spesifikasi fungsional program (Mustaqbal, et al., 2015). Black box testing
cenderung untuk menemukan hal-hal berikut :
1. Fungsi yang tidak benar atau tidak ada,
2. Kesalahan antarmuka (interface errors),
3. Kesalahan pada struktur data dan akses basis data,
4. Kesalahan performansi (performance errors),
5. Kesalahan inisialisasi serta terminasi.
b. User Acceptance Test
User Acceptance Test merupakan proses pengujian yang dilakukan oleh pengguna
dengan tujuan mengetahui bahwa software yang telah dikembangkan dapat
diterima oleh pengguna apabila hasil pengujian (testing) sudah bisa dianggap
memenuhi kebutuhan dari pengguna (Wahyuningsih & Wibawa, 2017).
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 2.2 Contoh User Acceptance Test Peforma Aplikasi KMS
Sumber : (Pasaribu & Solichin, 2017)
2.7 Penelitian Terdahulu
Table 1 merupakan penelitian dengan 13 (tiga belas) jurnal yang memiliki
kesamaan dalam pengimplementasian teknologi, yakni sistem rekomendasi.
12
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Tabel 1 Rangkuman Penelitian Terdahulu
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
1 Penjadwalan Mata Kuliah
Menggunakan Algoritma
Genetika di Jurusan Sistem
Informasi ITS
Wiga Ayu Puspaningrum,
Arif Djunaidy, dan Retno
Aulia Vinarti (2013)
Penerapan Algoritma Genetika pada
Sistem Penjadwalan Perkuliahan di
Jurusan Sitem Informasi ITS. Hasil dari
penelitian ini menyatakan bahwa
penjadwalan yang dibuat dapat
memenuhi constraint (tidak terjadi
benturan parameter penjadwalan) yang
dibuat seperti ketersediaan dosen,
mahasiswa yang mengambil mata
kuliah, serta ketersediaan waktu dan
ruang kelas.
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
2 Performance Comparison
of Genetic Algorithm,
Differential Evolution and
Particle Swarm
Lim, Seng Poh & Haron,
Habibollah (2013)
Membandingkan performansi antara
Algoritma Genetika, Algoritma
Differential Evlolution dan Particle
Swarm Optimization berdasarkan
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
Optimization Towards
Benchmark Functions
pengukuran fungsi masing-masing
dengan ukuran parameter yang telah
ditentukan menyatakan bahwa GA
terbukti berkinerja lebih baik
dibandingkan dengan DE dan PSO.
Karena GA dapat memperoleh jumlah
tertinggi fitness minimum terbaik dan
lebih cepat dari kedua metode lainnya.
Kemudian performansi DE lebih cepat
dari PSO, namun berdasarkan nilai
fitness minimum dan rata-rata, PSO
lebih baik daripada DE.
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
3 A Comparative Study of
Crossover Operators for
Genetic Algorithms to
Jorge Mendes (2013) Membandingkan performansi operator
crossover (one point-crossover,
twopoint crossover, uniform crossover
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
Solve the Job Shop
Scheduling Problem
dan flat crossover) dalam algoritma
genetika untuk mengatasi masalah
penjadwalan. Hasil dari penelitian ini
menyatakan bahwa operator one point-
crossover memiliki hasil performansi
terbaik operator crossover lainnya,
diikuti oleh operator uniform crossover.
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
4 Sistem Penjadwalan
Proyek Menggunakan
Algoritma Genetika
Febria Maharani (2013). Penerapan Algoritma Genetika dalam
mengoptimasi penjadwalan proyek
telah berhasil dibangun dan
diimplementasikan untuk mencari
solusi jadwal yang optimal yaitu
memenuhi persyaratan (constraints)
dalam penjadwalan proyek. Sistem
penjadwalan proyek ini mampu
menangani operasi input data,
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
melakukan proses penjadwalan proyek
secara otomatis dan menghasilkan
jadwal yang optimal dengam
menggunakan Roullete Wheel
Selection, One point Crossover dan
Random Mutation.
5 Penjadwalan Ujian Akhir
Semester dengan
Algoritma Genetika
(Studi Kasus Jurusan
Teknik Informatika
Unesa)
Anita Qoiriah (2014). Penerapan Algoritma Genetika dalam
mengoptimasi penyusunan
penjadwalan ujian akhir semester dapat
terpenuhi dengan baik dengan
memenuhi constraint (tidak terjadi
benturan penjadwalan) antara lain data
matakuliah, peserta matakuliah, ruang
serta waktu ujian. Dengam
menggunakan Roullete Wheel
Selection, Singlepoint Crossover dan
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
Random Mutation.
6 Resource Allocation
Using Metaheuristic
Search
Dr Andy M. Connor &
Amit Shah (2014)
Membandingkan antara beberapa
metode Metaheuristic Search
Algorithm antara lain Algoritma
Genetika, Simulated Annealing dan
Tabu Search untuk menyelesaikan
masalah Resourcing dan Scheduling.
Hasil penelitian tersebut menyimpulkan
bahwa Algoritma Genetika memiliki
tingkat performansi yang lebih baik dan
dapat menemukan opsi terbaik lebih
cepat untuk meyelesaikan Project
Management terkait Resourcing dan
Scheduling Problem dengan metode
lainnya.
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
7 Sistem Penjadwalan
Otomatis Menggunakan
Algoritma Genetika di
Fakultas Sains dan
Teknologi.
Fitrian Larantika (2015) Penerapan Algoritma Genetika dalam
mengoptimasi penyusunan
penjadwalan mata kuliah mendapatkan
fitness rata-rata 0.93, serta hasil
fungsionalitas sebesar 99.26%.
Menghasilkan penjadwalan perkulihan
yang memenuhi constraint yang ada
pada Fakultas Sains dan Teknologi
UIN Sunan Kalijaga.
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
8 Comparison Performance
of Genetic Algorithm and
Ant Colony Optimization
in Course Scheduling
Optimizing
Imam Ahmad Ashari &
Much Muslim &
Alamsyah. (2016).
Membandingkan hasil performansi
yang lebih baik antara Algoritma
Genetika dan Algoritma Ant Colony
Optimization dalam menyelesaikan
permasalahan pengelolaan penjadwalan
mata kuliah pada solusi terbaik saat
komputasi dilakukan. Algoritma
genetika mendapatkan solusi terbaik
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
lebih cepat dan lebih sedikit
menggunakan memori dibandingkan
dengan algoritma ant colony
optimization saat melakukan proses
komputasi. Dimana operator Genetika
yang digunakan antara lain Roullete
Wheel Selection, Singlepoint Crossover
dan Random Mutation.
9 On The Performance Of
Different Mutation
Operators Of A
Subpopulation-Based
Genetic Algorithm For
Multi-Robot Task
Allocation Problems.
Chun Liu & Andreas
Kroll (2016)
Membandingkan performansi operator
mutasi (Random, Swap, Insertion,
Inversion dan Displacement) pada
Algoritma Genetika dalam
menyelesaikan Multi-Robot Task
Allocation. Hasil dari penelitian ini
menyatakan bahwa operator Random
Mutation memiliki waktu eksekusi
lebih cepat untuk mendapatkan hasil
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One-point
Crossover dan Random
Mutation.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
kinerja terbaik dibandingkan dengan
operator lainnya.
10 Evaluasi Kinerja Genetic
Algortihm (GA) dengan
Strategi Perbaikan
Kromosom Studi Kasus
Multi-Choice Multi-
Dimensional Knapsack
Problem
Rani Cahyani (2016). Penerapan Algoritma Genetika dengan
strategi perbaikan kromosom pada
studi kasus Multi-Choice Multi-
Dimensional Knapscak Problem
menggunakan Random Selection,
Twopoint Crossover dan Swap
Mutation. Hasil penelitian ini
menyatakan bahwa Metode GA dengan
strategi perbaikan kromosom mampu
menyelesaikan Multi-Choice Multi-
Dimensional Knapsack Problem
dengan optimal
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
11 Implementasi Algoritma
Genetika untuk
Penjadwalan Instruktur
Niki Min Hidayati Robbi,
Nurochman (2017).
Implementasi Algoritma Genetika
untuk penjadwalan instruktur training
ICT dengan nilai fitness terbaik yang
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Judul Peneliti dan Tahun
Penelitian Isi Penelitian Perbedaan yang Terkait
Training ICT UIN Sunan
Kalijaga.
dihasilkan adalah 0.9523 dengan 1 nilai
eror pada constraint pembagian ruang
kelas yang memiliki bobot 0.05.
menggunakan Roullete Wheel
Selection, Uniform Crossover dan
Random Mutation
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
12 Algoritma Genetika untuk
Optimalisasi Klasifikasi
Kepuasan Pelayanan e-
KTP.
Castaka Agus Sugianto,
Tri Herdiawan Apandi
(2018).
Optimalisasi Klasifikasi Kepuasan
Pelayanan e-KTP dengan cara
menggabungkan metode Naïve Bayes
dan Algoritma Genetika dengan
pemilihan Roulette Wheel Selection.
Penerapan Algoritma
Genetika pada Sistem
Penjadwalan Latihan fitness
di GYM Center
menggunakan Roullete
Wheel Selection, One point
Crossover dan Random
Mutation.
Berdasarkan beberapa hasil penelitian sebelumnya, terdapat beberapa bagian yang menjadi bahan dan referensi dari penelitian ini yaitu
Algoritma Genetika. Adapun penelitian ini akan menggunakan metode Algoritma Genetika dengan mengunakan Roulette Wheel Selection
dalam proses seleksi, One-Point Crossover dalam proses pindah silang dan Random Mutation dalam proses mutasi. Aplikasi ini dibuat
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
berbasiskan web dengan menggunakan Framework Codeigniter untuk dijadikan sebuah sistem penjadwal latihan fitness yang terikat,
teratur dan terarah.
22
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
BAB III
PERANCANGAN DAN REALISASI
3.1 Perancangan Sistem
Perancangan dari sistem yang terdiri dari deksripsi sistem, cara kerja sistem,
rancangan sistem, dan realisasi sistem akan dibahas pada bab ini.
3.1.1 Deskripsi sistem
Sistem yang akan dibuat dalam penelitian ini adalah sistem penjadwalan latihan
fitness dengan menggunakan Algoritma Genetika. Hasil output dari sistem
penjadwalan latihan fitness yaitu perhitungan akan di optimasi dengan Algoritma
Genetika, sehingga akan dihasilkan suatu penjadwalan kegiatan-kegiatan latihan
fitness yang merata dan tidak ada benturan jadwal seperti benturan waktu, ruang,
trainer.
3.1.2 Analisis kebutuhan
Perancangan sistem penjadwalan latihan fitness dengan menggunakan Algoritma
Genetika diperlukan analisis sebagai berikut.
a. Kebutuhan data
Kebutuhan data merupakan hal yang utama dalam membuat sebuah
sistem,termasuk dalam perancangan sistem penjadwalan latihan fitness ini ini
yang menerapkan metode algoritma genetika sebagai proses pembentukan
kromosom atau jadwal terbaik. Data yang diperlukan yaitu data waktu terdiri dari
hari dan jam, data ruang, data materi terdiri dari materi, trainer, dan
member/kelas. Kriteria tersebut didapatkan dari wawancara dan diskusi kelompok
yang dilakukan dengan narasumber yaitu administrator yang mengatur jadwal
latihan.
b. Kebutuhan Fungsional
Kebutuhan fungsional berisi proses-proses yang dapat dilakukan oleh sistem.
Adapun kebutuhan fungsional yang di maksud adalah sebagai berikut:
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
1. Fitur Form Data Waktu
membuat jadwal berdasarkan ketersediaan data hari dan jam yang sudah
diinputkan. berdasarkan case latihan tidak boleh bentrok dengan jam sholat
2. Fitur Form Data Ruang
Membuat data ruang yang tersedia. Terdapat lebih dari 4 ruangan, Semakin
banyak ruangan maka algoritma genetika akan semakin mudah mengenerate
jadwal terbaik
3. Fitur Form Data Materi
Form materi berisi data materi, member/kelas dan trainer. Bisa diinputkan secara
dinamik sesuai data materi, member/kelad dan trainer yang tersedia. Semakin
banyak data materi ini maka algoritma genetika akan semakin banyak melakukan
proses generasi kromosom untuk menghasilkan jadwal terbaik dalam case ini
terdapat 30 data materi
4. Fitur Generate Jadwal
Page generate jadwal terdapat angka default yang bisa diubah misal maksimal
generasi dibangkitkan jika telah mencapai maksimal tapi blm menghasilkan
jadwal terbaik maka kita bisa menambah angka maksimal jika tidak maka hanya
akan menghasilkan jadwal terbaik dengan bentrokan seminim mungkin
5. Fitur Lihat Jadwal
Melihat hasil jadwal yang telah sempurna dan tidak ada bentrok member bisa
memilih jadwal yang cocok dengannya.
c. Kebutuhan non-fungsional
Sistem penjadwalan latihan fitness GYM Center berbasis website. Pengembangan
menggunakan bahasa pemrograman PHP. Spesifikasi kebutuhan hosting minimal
CPU 2.4 Ghz, RAM 1024 MB, disk space 20 GB dengan akses kecepatan internet
yang baik.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.1.3 Alur kerja sistem
Sistem akan berhasil dan bekerja dengan baik apabila bekerja sesuai alur atau cara
kerja yang telah ditentukan. Adapun alur kerja sistem penjadwalan latihan fitnes
dapat dilihat pada gambar 3.1
Gambar 3.1 Alur Kerja Sistem Penjadwalan Latihan Fitness
Gambar 3.1 mengenai alur kerja penjadwalan latihan fitness. Pertama lakukan
login dan buka menu data waktu, data ruang dan data materi, setelah itu ke
halaman generate jadwal. Sistem selanjutnya akan memproses penjadwalan
dengan metode algoritma genetika dan sistem akan menampilkan hasil
penjadwalan yang sempurna tanpa bentrok.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.1.4 Rancangan sistem
Rancangan sistem untuk proses modeling dipaparkan dalam bentuk use case
diagram, activity diagram, class diagram.
a. Use case diagram
Gambar 3.2 Use Case Diagram
Use case dapat menjelaskan apa saja yang dapat dilakukan oleh user. Pada
Gambar 3.2 mengenai use case diagram, dijelaskan dalam kegiatan penjadwalan
latihan pada sistem terdapat satu aktor, yaitu admin. Aktor admin untuk mengatur
data waktu diantaranya jam dan hari. Admin dapat mengatur ruang tempat latihan
fitnes serta mengatur data materi yang terdiri dari materi, trainer, dan member
kelas. Admin dapat juga melakukan generate jadwal, jadwal akan terbuat secara
otomatis dengan algoritma genetika.
3.2 Realisasi Sistem
Realisasi sistem meliputi implementasi tampilan sistem, implementasi yang akan
dijelaskan sebagai berikut :
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.2.1 Implementasi tampilan sistem
Implementasi tampilan sistem meliputi tampilan yang diberlakukan pada sistem.
a. Halaman Jam
Gambar 3.3 Halaman Jam
Gambar 3.3 adalah tampilan menu jam, dimana user dapat melakukan
pengolahan data jam, baik melakukan operasi insert, update dan delete data jam.
b. Halaman Hari.
Gambar 3.4 Halaman Hari
Gambar 3.4 adalah tampilan menu hari, dimana user dapat mengolah data hari,
baik melakukan operasi insert, update dan delete data hari.
c. Halaman Waktu
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.5 Halaman Waktu
Gambar 3.5 adalah tampilan data waktu, dimana user dapat menentukan hari dan
jam sesuai kebutuhan dalam melakukan proses perhitungan penjadwalan pelatihan
fitness.
d. Halaman Kelas
Gambar 3.6 Halaman Kelas
Gambar 3.6 adalah tampilan menu kelas, dimana user dapat mengisi data kelas
yang tesedia sesuai dengan jumlah kelas yang ada di GYM Center.
e. Halaman Trainer
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.7 Halaman Trainer
Gambar 3.7 adalah tampilan data trainer pengajar pelatihan fitness, dimana user
dapat mengolah data trainer, baik melakukan operasi insert, update dan delete data
trainer sesuai dengan kebutuhan dan ketersediaan trainer pengajar di GYM
Center.
f. Halaman Data Materi
Gambar 3.8 Halaman Data Materi
Gambar 3.8 adalah tampilan menu data materi, dimana user dapat melakukan
pengelolaan data materi yang diadakan di GYM Center.
g. Halaman Materi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.9 Halaman Materi
Gambar 3.9 adalah tampilan menu latihan, dimana user dapat mengolah data
latihan dengan menentukan trainer pengajar mata latihan dan kelas yang diajar
oleh trainer di GYM Center.
h. Halaman Ruang
Gambar 3.10 Halaman Ruang
Gambar 3.10 adalah tampilan ruang, dimana user dapat mengolah data ruangan
baik melakukan operasi insert, update dan delete data ruang, sesuai dengan
jumlah ruangan yang tersedia di GYM Center.
i. Halaman Perhitungan Genetika
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.11 Halaman Perhitungan Genetika
Gambar 3.11 adalah tampilan menu proses perhitungan penjadwalan pelatihan
fitness menggunakan algoritma genetika, dimana user diwajibkan untuk mengisi 4
parameter syarat dari algoritma genetika, yaitu jumlah kromosom, jumlah
generasi, probabilitas crossover dan probabilitas mutasi.
j. Halaman Hasil Jadwal
Gambar 3.12 Halaman Hasil Jadwal
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.12 adalah tampilan dari menu hasil penjadwalan, yang menampilkan
data penjadwalan pelatihan fitness dari proses perhitungan penjadwalan
menggunakan algoritma genetika
3.2.2 Implementasi Algoritma Genetika
Persoalan penjadwalan latihan fitness ada beberapa data yang dibutuhkan untuk
mempermudah proses penetapan dan perhitungan algoritma genetika. Antara lain:
1. Penentuan batasan
Berdasarkan hasil observasi dan wawancara penulis di Gym Center ada beberapa
batasan yang perlu diperhatikan dalam proses perhitungan dan penetapan
penjadwal latihan fitness antara lain:
a. Jadwal latihan dapat dilakukan pada hari senin-minggu, setelah pukul 8:00
sampai pukul 11 malam.
b. Jadwal latihan tidak boleh bentrok dengan waktu sholat fardhu.
c. Khusus hari jumat pada pukul 11.00-13.00 tidak ada jadwal latihan.
d. Trainer pengajar materi latihan tidak boleh mengajar pada waktu
bersamaan.
e. Proses pelatihan tidak boleh dilakukan di Ruangan yang sama pada waktu
yang sama.
f. Kelas tidak boleh melaksanakan materi latihan secara bersamaan.
2. Penentuan data
Berdasarkan hasil interview penulis pada Trainer Ridwan selaku pengelola
penjadwalan latihan fitness di Gym Center, berikut Data-data terkait
pembentukan penjadwalan yang ada. Data Latihan berisi informasi data
latihan fitness dengan menyesuaikan batasan-batasan yang ada.
Pada persoalan penjadwalan latihan fitness ada beberapa data yang dibutuhkan
untuk mempermudah proses penetapan dan perhitungan algoritma genetika.
Antara lain:
1. Data Latihan
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Data Latihan berisi rincian informasi Trainer, data Member dan data Materi
Pelatihan Fitness yang dilaksanakan di Gym centre Fitness.
a. Data Trainer
Tabel 2 Data Trainer
No Nama Trainer
1 Dody
2 Ridwan
3 Alex
4 Rofiq
5 Fadhil
Tabel 2 merupakan informasi data trainer pengajar materi latihan di gym centre
fitness yang berjumlah 5 trainer pengajar.
b. Data Member
Tabel 3 Data Member atau Kelas
No Nama Member
1 Member Group 1
2 Member Group 2
3 Member Group 3
4 Member Group 4
5 Member Group 5
Tabel 3 Merupakan informasi data kelas yang dijalankan di gym centre fitness
yang berjumlah 5 member latihan antara lain member 1 sampai member 5
c. Data Materi Latihan
Tabel 4 Data Materi Latihan
No Tema Materi Latihan SKS
1 Dada 2
2 Bahu 3
3 Back 2
4 Tangan 2
5 Perut 2
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
6 Kaki 3
2. Data Ruangan
Tabel 5 Data Ruangan
No Nama Ruangan
1 Ruang 1
2 Ruang 2
3 Ruang 3
4 Sauna
5 Ruang Kardio
6 Teras Calisthenics
Tabel 5 merupakan informasi data ruangan yang akan menjadi tempat
berlangsungnya proses pelatihan, yang terdiri dari 3 data ruangan antara lain
Ruang 1-3.
3. Data Waktu
a. Data Hari
Tabel 6 Data Hari
No Nama Hari
1 Senin
2 Selasa
3 Rabu
4 Kamis
5 Jumat
6 Sabtu
Tabel 6 merupakan informasi data hari pelaksanaan pelatihan fitness digym
centre, yang dilaksanakan sebanyak 6 hari dalam seminggu, mulai hari senin
sampai sabtu.
b. Data Jam
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Tabel 7 Data Jam
No Nama Jam
1 05:00:00
2 08:00:00
3 13:00:00
4 15:30:00
5 20:00:00
6 21:00:00
Tabel 7 merupakan informasi data Jam mulai diadakannya pelatihan fitness di
gym centre fitness.
Kemudian masing-masing informasi data Latihan (Kelas, Trainer dan Tema
Latihan), Waktu (Hari dan Jam) dan Ruangan yang tersedia akan
mempresentasikan isi kromosom yang akan di bangkitkan untuk memperoleh data
penjadwalan pelatihan fitness sesuai batasan-batasan yang telah didefinisikan
sebelumnya.
Dengan rincian data Keterangan Waktu diatas maka dapat diperoleh total waktu
pelatihan yang tersedia sebanyak 36 Waktu dengan mengalikan jumlah jam yang
tersedia dengan jumlah hari yang ada.
3. Proses inisiasi populasi awal
Inisialisasi populasi awal merupakan suatu metode untuk menghasilkan
kromosom-kromosom awal. Data kromosom akan memberikan solusi pada setiap
percobaan. Jumlah gen yang akan dibangkitkan sesuai dengan jumlah data materi
fitness yang ada sebanyak 30 gen. Adapun Parameter yang digunakan setiap gen
adalah data pada tabel yang berisi materi fitness, ruang dan waktu. Jadi, pada
setiap kromosom diisi dengan data gen berupa materi fitness, ruang dan waktu.
Berikut Contoh penerapannya, pada Tabel 8:
Tabel 8 Contoh Representasi Kromosom Bilangan Bulat (Integer)
Integer
K
r
o
([Data Materi, Data Ruang, Data Waktu])
([GEN(i)])
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
m
o
s
o
m
[
0
]
K
r
o
m
o
s
o
m
[
0
]
([0,1,25],[1,5,26],[2,2,19],[3,5,17],[4,5,13],[5,5,19],[6,2,2],[7,4,15],[8,3,18],[9,0,29],[10,5,4],[11,1,8],[12,0,13],[13,0,0],[14,2,10],[15,0,18],[16,1,2],[17,4,23],[18,5,29],[19,3,4],[20,0,13],[21,1,20],[22,4,0],[23,0,21],[24,5,23],[25,0,3],[26,0,11],[27,3,10],[28,0,28],[29,2,24])
([GEN 1], [GEN 2], [ GEN 3], [GEN 4], [GEN 5], [GEN 30)
Alasan penggunaan pengkodean bilangan bulat (integer encoding) dalam
mewakili setiap gen dikarenakan data gen pada setiap kromosom yang mewakili
komposisi materi fitness, ruang dan waktu dapat berubah disaat proses
pembangkitan kromosom secara acak sebelumnya. Dengan metode pengkodean
bilangan bulat, sistem dapat dengan mudah membedakan jenis materi fitness,
ruang dan waktu yang terpilih meskipun isi gen pada kromosom berubah-ubah.
Untuk mempermudah perhitungan pengimplementasian algoritma genetika
dilakukan dengan melakukan contoh perhitungan bagaimana algoritma genetika
dapat menentukan nilai variable a, b dan c sehingga berjumlah 30. Angka 30
adalah angka permisalan dan bisa mengunakan angka berapapun dan apakah
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
algoritma genetika mampu mendapatkan nilai berjumlah 30. Berikut persamaan
yang akan diselesaikan,
“a + 2b + 3c = 30”
Pers. 3. 1 Persamaan Algoritma
Karena yang dicari adalah nilai a, b dan c maka variabel a, b dan c dijadikan
sebagai gen-gen pembentuk kromosom. Dimana data materi akan diwakili oleh
variable a yang berjumlah sebanyak 30 dari hasil perkalian jumlah materi fitness
dengan dengan trainer, data ruangan diwakili oleh variable b sejumlah 6 data
ruang dan data waktu diwakili oleh variable c dengan rincian data waktu yaitu
dengan mengalikan hari dan jam maka dapat diperoleh total waktu pelatihan
yang tersedia sebanyak 36.
Proses inisialisasi dilakukan dengan cara memberikan nilai awal gen-gen dengan
nilai acak sesuai Batasan minimal dan maksimal yang telah ditentukan. Sebagai
contoh jumlah populasi yang akan dibangkitkan adalah 6 kromosom, maka:
Kromosom[1] = [a;b;c] = [12;06;03]
Kromosom[2] = [a;b;c] = [02;01;08]
Kromosom[3] = [a;b;c] = [10;04;03]
Kromosom[4] = [a;b;c] = [20;01;10]
Kromosom[5] = [a;b;c] = [01;04;03]
Kromosom[6] = [a;b;c] = [20;05;07]
Kemudian menghitung fungsi_objektif dari kromosom yang telah dibangkitkan,
fungsi objektif merupakan hasil nilai dari proses komputasi sesuai batasan yang
ada, misal:
fungsi_objektif(kromosom[1]) = Abs(( 12 + 2*6 + 3*3) – 30)
= Abs((12 + 12 + 9) – 30)
= Abs(32 – 30)
= 2
fungsi_objektif(kromosom[2]) = Abs(( 2 + 2*1 + 3*8) – 30)
= Abs(( 2 + 2 + 24) – 30)
= Abs(28 – 30)
= 2
fungsi_objektif(kromosom[3]) = Abs(( 10 + 2*4 + 3*3 ) – 30)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
= Abs(( 10 + 8 + 9 ) – 30)
= Abs(27 – 30)
= 3
fungsi_objektif(kromosom[4]) = Abs(( 20 + 2*1 + 3*10) – 30)
= Abs(( 20 + 2 + 30) – 30)
= Abs(52 – 30)
= 22
fungsi_objektif(kromosom[5]) = Abs(( 1 + 2*4 + 3*3) – 30)
= Abs(( 1 + 8 + 9) – 30)
= Abs(18 – 30) = 12
fungsi_objektif(kromosom[6]) = Abs(( 20 + 2*5 + 3*7) – 30)
= Abs(( 20 + 10 + 21) – 30)
= Abs(41 – 30)
= 11
Rata-rata dari fungsi objektif adalah:
rata-rata = (2+2+3+22+12+11)/6
= 52 / 6
= 8.1666666667
4. Proses evaluasi
Fungsi fitness menjadi penentu utama keberhasilan dari algoritma genetika. Tahap
evaluasi fitness ini akan menghitung nilai fitness dari kromosom yang sebelumnya
diinisialisasikan pada tahapan pertama. Tahapan ini akan menghitung nilai
kesesuaian pada setiap kromosom untuk mengidentifikasi variable nilai a, b dan c
yang dicari.
f1 = 1 / (fungsi_objektif[1]+1)
= 1 / 3 = 0.333
f2 = 1 / (fungsi_objektif[2]+1)
= 1 / 3 = 0.333
f3 = 1 / (fungsi_objektif[3]+1)
= 1 / 4 = 0.25
f4 = 1 / (fungsi_objektif[4]+1)
= 1 / 23 = 0.043
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
f5 = 1 / (fungsi_objektif[5]+1)
= 1 / 13 = 0.076
f6 = 1 / (fungsi_objektif[6]+1)
= 1 / 12 = 0.083
5. Proses seleksi
Adapun metode yang bisa digunakan dalam tahap seleksi pada penelitian ini
adalah Roulette Wheel Selection. Diketahui Kj adalah kromosom ke-j,
a. Jika Rj < Ci, maka pilih K1 sebagai kromosom induk ke-j
b. Jika C(i - 1) < Rj < Ci , maka pilih K1 sebagai kromosom induk ke-j.
Angka acak pertama R[1] adalah lebih besar dari C[1] dan lebih kecil daripada
C[2] maka pilih kromosom[2] sebagai kromosom pada populasi baru, dari
bilangan acak yang telah dibangkitkan diatas maka populasi kromosom baru hasil
proses seleksi adalah:
kromosom[1] = kromosom[2]
kromosom[2] = kromosom[2]
kromosom[3] = kromosom[1]
kromosom[4] = kromosom[5]
kromosom[5] = kromosom[2]
kromosom[6] = kromosom[3]
6. Proses crossover
Tahap ini pertukaran susunan genetik dari kromosom menggunakan probability
crossover sebesar 75%-100%. Crossover dilakukan dengan harapan bahwa
kromosom yang baru akan lebih baik. Dengan membangkitkan bilangan acak r
0<1 sebanyak ukuran populasi. kromosom yang akan dipilih adalah kromosom
dengan nilai acak yang lebih kecil dari probability crossover. Kromosom tersebut
yang nantinya akan di crossover dengan menentukan cut-point menggunakan
penyilangan satu titik yaitu sub-kromosom mana yang akan di crossover.
Misalnya ditentukan crossover probability adalah sebesar 50%, maka diharapkan
dalam satu generasi ada 50% kromosom (3 kromosom) dari satu generasi
mengalami proses crossover. Prosesnya adalah sebagai berikut: Pertama
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
membangkitkan bilangan acak R sebanyak jumlah populasi. Berikut bilangan acak
yang sudah dibangkitkan untuk masing-masing kromosom.
R[1] = 0.191
R[2] = 0.259
R[3] = 0.760
R[4] = 0.006
R[5] = 0.159
R[6] = 0.340
Maka kromosom ke k akan dipilih sebagai induk jika R[k] < ρc, dari bilangan
acak R diatas maka yang dijadikan induk adalah kromosom[1], kromosom[4] dan
kromosom[5]. Setelah melakukan pemilihan induk proses selanjutnya adalah
menentukan posisi crossover. Proses ini dilakukan dengan cara membangkitkan
bilangan acak dengan batasan 1 sampai (panjang kromosom-1), dalam kasus ini
bilangan acak yang dibangkitkan adalah 1 – 3. Diketahui posisi crossover adalah 1
maka kromosom induk akan dipotong mulai gen ke 1 kemudian potongan gen
tersebut saling ditukarkan antar induk.
kromosom[1] >< kromosom[4]
kromosom[4] >< kromosom[5]
kromosom[5] >< kromosom[1]
Posisi cut-point crossover dipilih menggunakan bilangan acak 1-3 sebanyak
jumlah crossover yang terjadi, missal
C[1] = 1
C[2] = 1
C[3] = 2
offspring[1] = kromosom[1] >< kromosom[4]
= [02;01;08] >< [01;04;03]
= [02;04;03]
offspring[4] = kromosom[4] >< kromosom[5]
= [01;04;03] >< [02;01;08]
= [01;01;08]
offspring[5] = kromosom[5] >< kromosom[1]
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
= [02;01;08] >< [02;01;08]
= [02;01;08]
Dengan demikian populasi Kromosom setelah mengalami proses crossover
menjadi:
kromosom[1] = [02;04;03]
kromosom[2] = [02;01;08]
kromosom[3] = [12;05;03]
kromosom[4] = [01;01;08]
kromosom[5] = [02;01;08]
kromosom[6] = [10;04;03]
7. Proses mutasi
Pertama menghitung terlebih dahulu panjang total gen yang ada dalam satu
populasi. Diketahui total gen ∑g = 3 * 6 = 18. Kemudian untuk memilih posisi
gen yang mengalami mutasi dilakukan dengan cara membangkitkan bilangan
integer acak antara 1 sampai total_gen, yaitu 1 sampai 18. Jika bilangan acak yang
dibangkitkan lebih kecil daripada variabel Mutation Rate Probability (ρm) maka
pilih posisi tersebut sebagai sub-kromosom yang mengalami mutasi. Diketahui
ρm sebesar 10% maka diharapkan ada 10% dari total_gen yang mengalami
mutasi.
∑Mutasi = 0.1 * 18 = 1.8 = 2
Kemudian membangkitkan bilangan acak terpilih posisi gen 12 dan 18 yang
mengalami mutasi. Dengan demikian yang akan mengalami mutasi adalah
kromosom ke-4 gen nomor 3 dan kromosom ke-6 gen nomor 3. Maka nilai gen
pada posisi tersebut akan diubah dengan bilangan acak 0-30. Diketahui bilangan
acak yang terbangkitkan adalah 2 dan 5. Maka populasi kromosom setelah
mengalami proses mutasi adalah:
kromosom[1] = [02;04;03]
kromosom[2] = [02;01;08]
kromosom[3] = [12;05;03]
kromosom[4] = [01;01;02]
kromosom[5] = [02;01;08]
kromosom[6] = [10;04;05]
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Setelah proses mutasi maka kita telah menyelesaikan satu iterasi dalam algoritma
genetika atau disebut dengan satu generasi. Maka fungsi_objective setelah satu
generasi adalah:
fungsi_objektif(kromosom[1]) = Abs(( 2 + 2*4 + 3*3) – 30)
= Abs((2 + 8 + 9) – 30)
= Abs(19 – 30)
= 11
fungsi_objektif(kromosom[2]) = Abs(( 2 + 2*1 + 3*8) – 30)
= Abs(( 2 + 2 + 24) – 30)
= Abs(28 – 30)
= 2
fungsi_objektif(kromosom[3]) = Abs(( 12 + 2*5 + 3*3) – 30)
= Abs(( 12 + 10+ 9 ) – 30)
= Abs(31 – 30)
= 1
fungsi_objektif(kromosom[4]) = Abs(( 1 + 2*1 + 3*2) – 30)
= Abs(( 1 + 2 + 6) – 30)
= Abs(9– 30)
= 21
fungsi_objektif(kromosom[5]) = Abs(( 2 + 2*1 + 3*8) – 30)
= Abs(( 1 + 2+ 24) – 30)
= Abs(28 – 30)
= 2
fungsi_objektif(kromosom[6]) = Abs(( 10 + 2*4 + 3*5) – 30)
= Abs(( 10 + 8 + 15) – 30)
= Abs(33 – 30)
= 3
Rata-rata dari fungsi objektif adalah:
rata-rata = (11+2+1+21+2+3)/6
= 40 / 6
= 6
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Dapat dilihat dari hasil perhitungan fungsi objektif diatas bahwa setelah satu
generasi, nilai hasil rata-rata fungsi_objektif lebih menurun dibandingkan hasil
fungsi_objektif pada saat sebelum mengalami seleksi, crossover dan mutasi. Hal
ini menunjukkan bahwa kromosom atau solusi yang dihasilkan setelah satu
generasi lebih baik dibandingkan generasi sebelumnya. Maka pada generasi
selanjutnya kromosom-kromosom yang baru adalah:
kromosom[1] = [02;04;03]
kromosom[2] = [02;01;08]
kromosom[3] = [12;05;03]
kromosom[4] = [01;01;02]
kromosom[5] = [02;01;08]
kromosom[6] = [10;04;05]
Kromosom-kromosom ini akan mengalami proses yang sama seperti generasi
sebelumnya yaitu proses evaluasi, seleksi, crossover dan mutasi yang kemudian
akan menghasilkan kromosom-kromosom baru untuk generasi yang selanjutnya.
Proses ini akan berulang sampai sejumlah generasi yang telah ditetapkan
sebelumnya. Setelah 18 generasi didapatkan kromosom yang terbaik adalah:
Kromosom[6] = [11;05;03]
Diketahui, a = 11, b = 5 dan c = 3. Jika dihitung terhadap persamaan f = a+2b+3c.
Maka f = 11 + (2*5) + (3*3) = 30, memenuhi batasan nilai akhir sebesar 30.
43
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
BAB IV
PEMBAHASAN
4.1 Pengujian
Tujuan dari pengujian ini agar sistem yang digunakan oleh pengguna dapat
berjalan secara optimal dan memenuhi rangkaian kebutuhan pengguna, serta
untuk mengetahui apakah masukan dan keluaran yang dihasilkan sistem sudah
sesuai dengan alur yang ada.
4.1.1 Deskripsi Pengujian
Setelah selesai pembuatan suatu sistem langkah berikutnya yang dilakukan yaitu
pengujian sistem. Pengujian memiliki tujuan untuk memastikan bahwa sistem
yang dibangun telah sesuai dengan kebutuhan yang sebelumnya telah ditentukan.
Pengujian dilakukan untuk menjamin kualitas dari sistem serta mengetahui
apabila terjadinya bugs atau kesalahan yang terdapat pada sistem yang dirancang.
Dengan ditemukannya bugs atau kesalahan-kesalahan pada sistem maka dapat
dilakukan perbaikan sistem.
4.1.2 Prosedur Pengujian
Prosedur pengujian yang dilakukan pertama adalah dengan menggunakan black
box testing. Pengujian ini agar dapat mengetahui fungsional sistem dan kesesuaian
dari data masukan hingga keluaran yang dihasilkan dari sistem yang telah
dirancang. Kedua menghitung tingkat akurasi yaitu menghitung tingkat kemiripan
hasil hitungan manual dengan hasil hitungan sistem.
a. Black box testing
Hasil pengujian fungsionalitas sistem berupa tabel pengujian. Pengujian dilakukan
untuk mengetahui bahwa sistem sesuai dengan yang diharapkan. Jika data yang
dimasukan sesuai dengan harapan. Maka, pada kolom keterangan pada tabel
pengujian, diberikan keterangan sukses. Namun, apabila tidak sesuai maka
keterangan gagal. Berikut adalah hasil pengujian black box testing :
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Tabel 9. Pengujian Blackbox
Data Object Pengujian Hasil yang
diharapkan
Keterangan
Data Jam Button Tambah Menambah
Data Jam Sukses
Button Ubah Mengubah Data Jam Sukses
Button Hapus Menghapus Data
Jam Sukses
Data Hari
Button Tambah Menambah
Data Hari Sukses
Button Ubah Mengubah
Data Hari Sukses
Button Hapus Menghapus Data
Hari Sukses
Data Kelas
Button Tambah Menambah Data
Kelas Sukses
Button Ubah
Mengubah Data
Kelas
Sukses
Button Hapus Menghapus Data
Kelas Sukses
Data Trainer Menghapus Data
Trainer Menghapus Data
Trainer Sukses
Button Ubah Mengubah Data
Trainer Sukses
Button Hapus Menghapus Data
Trainer Sukses
Data Materi
Fitness
Button Tambah Menambah Materi
Fitness Sukses
Button Ubah Mengubah Materi
Fitness Sukses
Button Hapus Menghapus Materi
Fitness Sukses
Data Materi
Button Tambah Menambah Data
Materi Sukses
Button Ubah Mengubah Data
Materi Sukses
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Data Object Pengujian Hasil yang
diharapkan
Keterangan
Button Hapus Menghapus Data
Materi Sukses
Data Ruang
Button Tambah Menambah Data
Ruang Sukses
Button Ubah Mengubah Data
Ruang Sukses
Button Hapus Menghapus Data
Ruang Sukses
Generate
Jadwal Button
Melakukan
Perhitungan AG Sukses
Data Hasil
Jadwal Button Lihat
Berhasil Lihat Hasil
Jadwal Sukses
b. User Acceptance Test
User acceptance test suatu proses pengujian oleh pengguna yang bertujuan untuk
menghasilkan dokumen yang bisa dijadikan bukti bahwa produk yang dibuat
dapat diterima pengguna.
Tabel 10. Bobot Penilaian User Acceptance Test
Sumber : (Pasaribu & Solichin, 2017)
No Keterangan Bobot Nilai
1 Sangat Setuju 5
2 Setuju 4
3 Cukup 3
4 Kurang Setuju 2
5 Sangat Kurang Setuju 1
Tabel 10 merupakan bobot penilaian yang digunakan dalam pengujian user
acceptance test
Tabel 11. User Acceptance Test
No. Pertanyaan Nilai (Responden)
Sangat Kurang Cukup Setuju Sangat
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Kurang
Setuju
Setuju Setuju
1 Tampilan form data mudah
dipahami v
2 Indikator pengisian
mencakup untuk setiap data v
3
Desain Tampilan dan Tata
Letak
Interface mudah dipahami
v
4 Aplikasi membantu dalam
pembuatan jadwal latihan
fitness
v
Tabel 11 merupakan hasil UAT yang dilakukan terhadap 1 responden. Data pada
Tabel 4.11 kemudian mengalikan nilai hasil responden dengan bobot dari setiap
jawaban pada data Tabel 17.
Tabel 12. Hasil Pengujian User Acceptance Test
No. Pertanyaan
Nilai Hasil Pembobotan
Jumlah Sangat Kurang Setuju
x 1
Kurang Setuju
x 2
Cukup x 3
Setuju x 4
Sangat Setuju
x 5
1 Tampilan form data mudah
dipahami v 3
2
Indikator pengisian
mencakup untuk setiap
data
V 4
3
Desain Tampilan dan Tata
Letak
Interface mudah dipahami
V 4
4
Aplikasi membantu dalam
pembuatan jadwal latihan
fitness
v 5
Nilai presentase didapatkan dengan menghitung nilai rata-rata dibagi bobot
maximum dikali seratus persen (100%) (Pasaribu & Solichin, 2017).
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Perhitungan presentase pertanyaan yang dilakukan untuk mendapatkan hasil
seberapa sistem untuk tim penilai layak untuk digunakan.
Hasil presentase dapat dilihat pada Tabel 20.
Tabel 13. Hasil Presentase User Acceptance Test
No Nilai rata-rata Presentase Keterangan
1 3/1 = 3 3/5 * 100% = 60% Persentase Pertanyaan 1
2 4/1 = 4 4/5 * 100 % =80% Persentase Pertanyaan 2
3 4/1 = 4 4/5 * 100% = 80% Persentase Pertanyaan 3
4 5/1 = 5 5/5 * 100% = 100% Persentase Pertanyaan 4
4.1.3 Data Hasil Pengujian Algoritma Genetika
Empat parameter yang digunakan pada algoritma genetika antara lain:
1. Jumlah Kromosom yang ingin dibangkitkan
2. Jumlah Generasi yang Dibangkitkan
3. Probabilitas Crossover (Pc)
4. Probabilitas Mutasi (Pm)
Diketahui jumlah kromosom yang dibangkitkan sebanyak 6 kromosom, dengan
maksimal generasi sebanyak 25 generasi, probabilitas crossover 75% dan
probabilitas mutasi 25%. Pendekatan melalui relational database management
system untuk memudahkan proses perhitungan algoritma genetika penjadwalan
pelatihan fitness dengan menyesuaikan batasan-batasan yang ada dalam
penjadwalan pelatihan fitness terkait rincian materi, rincian ruangan dan waktu.
Berikut hasil keseluruhan data pelatihan yang akan dipakai dalam proses
perhitungan penjadwalan pelatihan fitness menggunakan algoritma genetika.
Tabel 14 Paramater Algoritma Genetika
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
NO Data proses Kode Jumlah Data
1 Data Materi (id_materi) A(1-30) 30
2 Data Ruang (id_ruang) B(1-6) 6
3 Data Waktu (id_waktu) C(1-30) 30
4.2 Analisis Data
a. Pengujian black box
Berdasarkan hasil pengujian black box dengan 23 pengujian terhadap sistem
penjadwalan latihan fitness dengan algoritma genetika sesuai dengan hasil yang
diharapkan.
b. User Acceptance Test
Berdasarkan hasil pengujian User Acceptance Test, didapatkan hasil sesuai
dengan harapan dan user requirement. Maka dapat disimpulkan bahwa terhadap
sistem penjadwalan latihan fitness dengan algoritma genetika berjalan dengan
baik dan seharusnya
c. Analisis pengujian algoritma genetika
Proses algoritma genetika yang digunakan dalam sistem penjadwalan latihan
fitness, yaitu: melakukan inisialisasi populasi awal untuk mengdapatkan solusi
awal dari suatu permasalahan. Inisialisasi akan dilakukan secara acak sebanyak
jumlah kromosom yang diinginkan. Selanjutnya dihitung nilai fitness dan
seterusnya dilakukan seleksi dengan menggunakan metode roda roullete (roulette
wheel selection). Kemudian dilakukan perkawinan silang (one-point crossover)
dan mutasi (random mutation). Algoritma akan terus menerus melakukan
pembangkitan populasi baru sampai kemudian proses perhitungan akan berhenti
ketika sistem telah menghasilkan fitness terbaik dari jumlah populasi dan
maksimal generasi yang telah dibangkitkan.
Berikut adalah hasil penjadwalan yang telah digenerate system dengan
menggunakan algoritma genetika:
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.13 Jadwal yang dihasilkan Algoritma Genetika 1
Tabel 15 Jadwal yang dihasilkan Algoritma Genetika 1
GYM Center
No Hari Jam Materi Total Waktu Kelas Ruang Trainer
1 Senin 05:00 - 06:30 Back 01 Jam 30 Menit MEMBER 5 Teras Calisthenics
Ridwan
2 Senin 05:00 - 07:15 Tangan 02 Jam 15 Menit MEMBER 1 Ruang 2 Rofiq
3 Senin 13:00 - 14:30 Perut 01 Jam 30 Menit MEMBER 3 Teras Calisthenics
Alex
4 Senin 15:30 - 17:00 Perut 01 Jam 30 Menit MEMBER 1 Ruang Kardio
Alex
5 Senin 20:00 - 22:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 4 Ruang 3 Dody
6 Selasa 05:00 - 07:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 1 Ruang 2 Dody
7 Selasa 08:00 - 10:15 Tangan 02 Jam 15 Menit MEMBER 4 Ruang 3 Rofiq
8 Selasa 08:00 - 10:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 2 Sauna Dody
9 Selasa 13:00 - 15:15 Tangan 02 Jam 15 Menit MEMBER 5 Ruang 2 Rofiq
10 Selasa 15:30 - 17:00 Back 01 Jam 30 Menit MEMBER 3 Ruang 2 Ridwan
11 Selasa 15:30 - 17:00 Bahu 01 Jam 30 Menit MEMBER 1 Ruang 1 Dody
12 Rabu 05:00 - 06:30 Perut 01 Jam 30 Menit MEMBER 4 Teras Calisthenics
Alex
13 Rabu 08:00 - 09:30 Bahu 01 Jam 30 Menit MEMBER 5 Ruang 1 Dody
14 Rabu 08:00 - 09:30 Kaki 01 Jam 30 Menit MEMBER 4 Ruang 2 Rofiq
15 Rabu 15:30 - 17:45 Compound Data Tricep
02 Jam 15 Menit MEMBER 3 Ruang Kardio
Dody
16 Rabu 21:00 - 22:30 Back 01 Jam 30 Menit MEMBER 1 Ruang Kardio
Ridwan
17 Rabu 21:00 - 22:30 Bahu 01 Jam 30 Menit MEMBER 3 Ruang 1 Dody
18 Rabu 21:00 - 22:30 Perut 01 Jam 30 Menit MEMBER 5 Teras Calisthenics
Alex
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
19 Kamis 05:00 - 06:30 Kaki 01 Jam 30 Menit MEMBER 1 Sauna Rofiq
20 Kamis 15:30 - 17:00 Back 01 Jam 30 Menit MEMBER 2 Ruang 1 Ridwan
21 Kamis 20:00 - 21:30 Bahu 01 Jam 30 Menit MEMBER 4 Ruang 1 Dody
22 Jumat 15:30 - 17:00 Perut 01 Jam 30 Menit MEMBER 2 Ruang 1 Alex
23 Jumat 21:00 - 22:30 Back 01 Jam 30 Menit MEMBER 4 Ruang Kardio
Ridwan
24 Jumat 21:00 - 22:30 Kaki 01 Jam 30 Menit MEMBER 3 Ruang 1 Rofiq
25 Jumat 21:00 - 22:30 Bahu 01 Jam 30 Menit MEMBER 2 Ruang 3 Dody
26 Sabtu 05:00 - 07:15 Tangan 02 Jam 15 Menit MEMBER 3 Sauna Rofiq
27 Sabtu 08:00 - 10:15 Tangan 02 Jam 15 Menit MEMBER 2 Ruang 2 Rofiq
28 Sabtu 13:00 - 14:30 Kaki 01 Jam 30 Menit MEMBER 5 Teras Calisthenics
Rofiq
29 Sabtu 15:30 - 17:00 Kaki 01 Jam 30 Menit MEMBER 2 Ruang 2 Rofiq
30 Sabtu 20:00 - 22:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 5 Ruang 3 Dody
Gambar 3.14 Jadwal yang dihasilkan Algoritma Genetika 2
Tabel 16 Jadwal yang dihasilkan Algoritma Genetika 2
GYM Center
No Hari Jam Materi Total Waktu Kelas Ruang Trainer
1 Senin 05:00 - 06:30 Back 01 Jam 30 Menit MEMBER 2 Ruang 3 Ridwan
2 Senin 08:00 - 09:30 Perut 01 Jam 30 Menit MEMBER 5 Ruang Kardio
Alex
3 Senin 08:00 - 10:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 2 Sauna Dody
4 Senin 15:30 - 17:45 Tangan 02 Jam 15 Menit MEMBER 3 Ruang 1 Rofiq
5 Senin 15:30 - 17:00 Bahu 01 Jam 30 Menit MEMBER 1 Sauna Dody
6 Senin 20:00 - 22:15 Compound 02 Jam 15 Menit MEMBER 5 Ruang 3 Dody
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Data Tricep
7 Selasa 13:00 - 14:30 Bahu 01 Jam 30 Menit MEMBER 4 Teras Calisthenics
Dody
8 Selasa 15:30 - 17:45 Tangan 02 Jam 15 Menit MEMBER 2 Teras Calisthenics
Rofiq
9 Selasa 15:30 - 17:00 Bahu 01 Jam 30 Menit MEMBER 5 Ruang Kardio
Dody
10 Selasa 20:00 - 22:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 3 Ruang Kardio
Dody
11 Rabu 05:00 - 06:30 Perut 01 Jam 30 Menit MEMBER 4 Ruang 3 Alex
12 Rabu 05:00 - 06:30 Bahu 01 Jam 30 Menit MEMBER 2 Ruang 1 Dody
13 Rabu 08:00 - 10:15 Tangan 02 Jam 15 Menit MEMBER 5 Ruang 3 Rofiq
14 Rabu 08:00 - 09:30 Perut 01 Jam 30 Menit MEMBER 3 Sauna Alex
15 Rabu 13:00 - 14:30 Back 01 Jam 30 Menit MEMBER 5 Teras Calisthenics
Ridwan
16 Rabu 15:30 - 17:00 Perut 01 Jam 30 Menit MEMBER 2 Ruang 1 Alex
17 Rabu 15:30 - 17:00 Kaki 01 Jam 30 Menit MEMBER 5 Sauna Rofiq
18 Kamis 21:00 - 22:30 Back 01 Jam 30 Menit MEMBER 3 Ruang 2 Ridwan
19 Kamis 21:00 - 23:15 Tangan 02 Jam 15 Menit MEMBER 4 Ruang 3 Rofiq
20 Jumat 05:00 - 06:30 Bahu 01 Jam 30 Menit MEMBER 3 Ruang 2 Dody
21 Jumat 05:00 - 06:30 Kaki 01 Jam 30 Menit MEMBER 1 Ruang 1 Rofiq
22 Jumat 08:00 - 09:30 Back 01 Jam 30 Menit MEMBER 4 Ruang 2 Ridwan
23 Jumat 13:00 - 14:30 Back 01 Jam 30 Menit MEMBER 1 Ruang 3 Ridwan
24 Jumat 13:00 - 14:30 Kaki 01 Jam 30 Menit MEMBER 4 Teras Calisthenics
Rofiq
25 Jumat 15:30 - 17:00 Kaki 01 Jam 30 Menit MEMBER 3 Ruang 1 Rofiq
26 Jumat 20:00 - 22:15 Tangan 02 Jam 15 Menit MEMBER 1 Teras Calisthenics
Rofiq
27 Sabtu 05:00 - 06:30 Perut 01 Jam 30 Menit MEMBER 1 Teras Calisthenics
Alex
28 Sabtu 05:00 - 07:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 4 Ruang 1 Dody
29 Sabtu 15:30 - 17:45 Compound Data Tricep
02 Jam 15 Menit MEMBER 1 Teras Calisthenics
Dody
30 Sabtu 21:00 - 22:30 Kaki 01 Jam 30 Menit MEMBER 2 Ruang 2 Rofiq
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.15 Jadwal yang dihasilkan Algoritma Genetika 3
Tabel 17 Jadwal yang dihasilkan Algoritma Genetika 3
GYM Center
No Hari Jam Materi Total Waktu Kelas Ruang Trainer
1 Senin 05:00 - 06:30 Bahu 01 Jam 30 Menit MEMBER 1 Sauna Dody
2 Senin 08:00 - 09:30 Perut 01 Jam 30 Menit MEMBER 5 Ruang 2 Alex
3 Senin 20:00 - 22:15 Tangan 02 Jam 15 Menit MEMBER 4 Ruang 3 Rofiq
4 Senin 20:00 - 21:30 Bahu 01 Jam 30 Menit MEMBER 5 Sauna Dody
5 Selasa 05:00 - 06:30 Perut 01 Jam 30 Menit MEMBER 1 Ruang 2 Alex
6 Selasa 08:00 - 10:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 4 Ruang Kardio
Dody
7 Selasa 13:00 - 15:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 5 Ruang 2 Dody
8 Selasa 15:30 - 17:45 Tangan 02 Jam 15 Menit MEMBER 2 Teras Calisthenics
Rofiq
9 Selasa 15:30 - 17:00 Bahu 01 Jam 30 Menit MEMBER 3 Ruang 2 Dody
10 Selasa 20:00 - 21:30 Bahu 01 Jam 30 Menit MEMBER 4 Ruang 3 Dody
11 Rabu 05:00 - 06:30 Kaki 01 Jam 30 Menit MEMBER 4 Teras Calisthenics
Rofiq
12 Rabu 08:00 - 09:30 Back 01 Jam 30 Menit MEMBER 5 Ruang 2 Ridwan
13 Rabu 08:00 - 09:30 Perut 01 Jam 30 Menit MEMBER 3 Ruang Kardio
Alex
14 Rabu 13:00 - 15:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 3 Sauna Dody
15 Rabu 15:30 - 17:45 Tangan 02 Jam 15 Menit MEMBER 1 Sauna Rofiq
16 Rabu 15:30 - 17:00 Bahu 01 Jam 30 Menit MEMBER 2 Ruang 1 Dody
17 Rabu 20:00 - 21:30 Back 01 Jam 30 Menit MEMBER 2 Teras Calisthenics
Ridwan
18 Kamis 08:00 - 09:30 Kaki 01 Jam 30 Menit MEMBER 2 Teras Rofiq
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Calisthenics
19 Kamis 13:00 - 14:30 Kaki 01 Jam 30 Menit MEMBER 5 Teras Calisthenics
Rofiq
20 Kamis 15:30 - 17:00 Perut 01 Jam 30 Menit MEMBER 4 Teras Calisthenics
Alex
21 Kamis 15:30 - 17:45 Compound Data Tricep
02 Jam 15 Menit MEMBER 1 Sauna Dody
22 Jumat 05:00 - 06:30 Back 01 Jam 30 Menit MEMBER 4 Ruang 2 Ridwan
23 Jumat 05:00 - 07:15 Tangan 02 Jam 15 Menit MEMBER 5 Teras Calisthenics
Rofiq
24 Jumat 08:00 - 09:30 Kaki 01 Jam 30 Menit MEMBER 1 Sauna Rofiq
25 Jumat 13:00 - 14:30 Back 01 Jam 30 Menit MEMBER 3 Ruang 3 Ridwan
26 Jumat 20:00 - 21:30 Kaki 01 Jam 30 Menit MEMBER 3 Teras Calisthenics
Rofiq
27 Jumat 21:00 - 22:30 Back 01 Jam 30 Menit MEMBER 1 Ruang Kardio
Ridwan
28 Sabtu 13:00 - 14:30 Perut 01 Jam 30 Menit MEMBER 2 Ruang 3 Alex
29 Sabtu 20:00 - 22:15 Compound Data Tricep
02 Jam 15 Menit MEMBER 2 Sauna Dody
30 Sabtu 21:00 - 23:15 Tangan 02 Jam 15 Menit MEMBER 3 Ruang 2 Rofiq
No Nama Trainer
1 Dody
2 Ridwan
3 Alex
4 Rofiq
5 Fadhil
No Tema Materi Latihan SKS
1 Dada 2
2 Bahu 3
3 Back 2
4 Tangan 2
5 Perut 2
6 Kaki 3
No Nama Ruangan
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
No Nama Ruangan
1 Ruang 1
2 Ruang 2
3 Ruang 3
4 Sauna
5 Ruang Kardio
6 Teras Calisthenics
No Nama Hari
1 Senin
2 Selasa
3 Rabu
4 Kamis
5 Jumat
6 Sabtu
No Nama Jam
1 05:00:00
2 08:00:00
3 13:00:00
4 15:30:00
5 20:00:00
6 21:00:00
melakukan contoh perhitungan bagaimana algoritma genetika dapat menentukan
nilai variable a, b dan c sehingga berjumlah 30. Angka 30 adalah angka
permisalan apakah algoritma genetika mampu mendapatkan nilai berjumlah 30.
Berikut persamaan yang akan diselesaikan,
“a + 2b + 3c = 30”
Pers. 3. 1 Persamaan Algoritma
Karena yang dicari adalah nilai a, b dan c maka variabel a, b dan c dijadikan
sebagai gen-gen pembentuk kromosom. Dimana materi fitness akan diwakili oleh
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
variable a, data ruangan diwakili oleh variable b dan data waktu diwakili oleh
variable c
56
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
BAB V
PENUTUP
5.1 Kesimpulan.
Berdasarkan uraian rangkaian penelitian Sistem Penjadwalan Latihan Fitness
menggunakan pendekatan Algoritma Genetika dalam penyelesaian masalah
Constraint Penjadwalan Pelatihan Fitness menggunakan alat ukur inputan
operator genetika dengan jumlah pembangkitan kromosom 6 crossover 75% dan
mutasi 25%, menyimpulkan bahwa penjadwalan pelatihan fitness dapat berhasil
karena mampu mencari kombinasi penjadwalan yang tepat dengan nilai fitness
maksimal, dan solusi yang optimal (tidak terjadinya benturan penjadwalan
pelatihan fitness).
5.2 Saran
Adapun saran yang dapat digunakan dalam penelitian selanjutnya terkait
penelitian ini yaitu dapat dilakukan penelitian lebih lanjut dalam hal pengujian
terkait perbedaan hasil output (kecepatan eksekusi dan penggunaan memori)
dalam mencapai nilai fitness terbaik, jika menggunakan bilangan kromosom,
maksimal generasi dan rate yang berbeda-beda.
57
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR PUSTAKA
Ahmad Ashari, Imam., Muslim, Much & Alamsyah. (2016). Comparison
Performance of Genetic Algorithm and Ant Colony Optimization in Course
Scheduling Optimizing. Scientific Journal of Informatics. 3. 51-60.
10.15294/sji.v3i2.7911.
Cahyani, R. (2016). Evaluasi Kinerja Genetic Algortihm (GA) dengan Strategi
Perbaikan Kromosom Studi Kasus Multi-Choice Multi-Dimensional
Knapsack Problem. Fakultas Matematika Dan Ilmu Pengetahuan Alam,
Universitas Lampung.
Connor, A.M. & Shah, A. (2014) Research allocation using metaheuristic search.
Proceedings of the Fourth International Conference on Computer Science &
Information Technology.
Hari, N, H., Putra, F, P, E & Hamdlani. (2018). Optimasi Penjadwalan
Menggunakan Metode Algoritma Genetika di Sekolah Menengah Kejuruan
Annuqayah. Program Studi Teknik Informatika, Universitas Madura.
Larantika, F. (2015). Sistem Penjadwalan Otomatis Menggunakan Algoritma
Genetika di Fakultas Sains Dan Teknologi. Fakultas Sains dan Teknologi,
Universitas Islam Negeri Sunan Kalijaga, Yogyakarta.
Lim, Seng Poh & Haron, Habibollah. (2013). Performance comparison of Genetic
Algorithm, Differential Evolution and Particle Swarm Optimization towards
benchmark functions. 2013 IEEE Conference on Open Systems, ICOS 2013.
41-46. 10.1109/ICOS.2013.6735045.
Liua, Chun & Kroll, Andreas. (2016). On The Performance Of Different Mutation
Operators Of A Subpopulation-Based Genetic Algorithm For Multi-Robot
Task Allocation Problems.
Maharani, F. (2013). Sistem Penjadwalan Proyek Menggunakan Algoritma
Genetika. Fakultas Sains dan Teknologi, Universitas Islam Negeri SUSKA,
Riau.
Mendes, Jorge. (2013). A comparative study of crossover operators for genetic
algorithms to solve the job shop scheduling problem. WSEAS Transactions
on Computers. 12. 164-173.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Priambodo, B. (2015). Pengembangan Aplikasi Penjadwalan Kuliah Semester I
Menggunakan Algoritma Genetika. Jurnal Ilmiah Fifo. P-ISSN 2085-4315 /
E-ISSN 2502-8332
Qoiriah, A. (2014). Penjadwalan Ujian Akhir Semester dengan Algoritma
Genetika (Studi Kasus Jurusan Teknik Informatika Unesa). Fakultas Teknik,
Universitas Negeri Surabaya.
Robbi, N, M, H., & Nurochman. (2017). Implementasi Algoritma Genetika untuk
Penjadwalan Instruktur Training ICT UIN Sunan Kalijaga. Fakultas Sains
dan Teknologi, UIN Sunan Kalijaga, Yogyakarta.
Setyaningsih, F., A. (2014). System Application of Genetic Algorithm for
Scheduling Optimization Study Using Java (Case Study: Department of
Computer System UNTAN). IPTEK, Journal of Proceeding Series, Vol. 1
2014 (eISSN: 2354-6026)
Sugianto, C, A., & Apandi, T, H. (2018). Algoritma Genetika untuk Optimalisasi
Klasifikasi Kepuasan Pelayanan e-KTP. Jurnal & Penelitian Teknik
Informatika, Volume 3, Nomor 1.
Wati, D, A, R., & Rochman, Y, A. (2013). Model Penjadwalan Matakuliah Secara
Otomatis Berbasis Algoritma Particle Swarm Optimization (PSO). Fakultas
Sains dan Teknologi, Universitas Islam Negeri SUSKA, Riau.
Wiga, A, P., Djunaidy, A., & Vinarti, R, A. (2013). Penjadwalan Mata Kuliah
Menggunakan Algoritma Genetika di Jurusan Sistem Informasi ITS.
Institut Teknologi Sepuluh Nopember, Surabaya.
59
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
LAMPIRAN
Daftar Riwayat Hidup Penulis
Muhammad Najib Kusumonegoro
Lahir di Jakarta 24 Juni 1996, anak ke 2 dari 3 bersaudara dari pasangan Agus
Subarkah dan Ibu Esti Nurwidiyanti. Lulus dari MIN Kalisari tahun 2007, SMPN
217 Jakarta tahun 2011, MAN 14 Jakarta tahun 2014. Saat ini sedang menempuh
Pendidikan Diploma IV Program Studi Teknik Informatika Jurusan Teknik
Informatika dan Komputer di Politeknik Negeri Jakarta.
60
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Lampiran Wawancara
Narasumber : Rofiq
Jabatan :Pengelola Penjadwalan Latihan Fitness dan Trainer di GYM
Center
Hari, Tanggal : Senin, 10 Februari 2020
Tempat : Monster GYM Condet
Jam : 20:00 – Selesai
No Pertanyaan Wawancara Jawaban
1.
Bagaimana proses kegiatan
penjadwalan pelatihan
fitnes yang dilakukan di
GYM Center selama ini?
Penjadwalan Pelatihan fitnes bersifat flexible
dengan memperhatikan kesesuaian sumber
daya yang ada seperti ketersediaan trainer,
waktu, ruang, kelas dan member.
2.
Apa saja yang dibutuhkan
dalam proses pengaturan
penjadawalan pelatihan
fitnes?
Beberapa hal yang dibutuhkan dalam proses
pengaturan penjadwalan pelatihan fitnes adalah
ketersediaan sumber daya. Adapun saat ini
terdapat 4 trainer, 5 kelas/member, 6 Materi
pelatihan, 6 Ruangan dan Waktu pelatihan
yang dilakukan setiap hari senin sampai sabtu.
3.
Kendala apa saja yang
dialami saat proses
pengaturan penjadwalan
pelatihan fitnes?
Adapun kendala-kendala yang dialami adalah
proses penjadwalan membutuhkan waktu yang
lama dan sangat sulit mengatur waktu
penjadwalan, baik dalam latihan, mengulang
latihan dan menambah latihan baru
dikarenakan terbatasnya ketersediaan jumlah
trainer, waktu, ruang, kelas dan member.
Sehingga para member tidak memiliki alat ukur
yang pasti untuk menyelesaikan latihan
diwaktu yang tepat.
61
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
4 Apakah ada waktu khusus
dalam pengaturan
penjadwalan pelatihan
fitnes?
Tidak ada waktu khusus pelatihan fitnes, hanya
saja proses pelatihan hanya dapat dilakukan
pada hari senin-sabtu setelah sholat subuh
sampai pukul 11 malam, jadwal latihan tidak
boleh bentrok dengan waktu sholat fardhu,
khusus hari jumat pada pukul 11.00-13.00
tidak boleh ada jadwal latihan, trainer materi
pelatihan tidak boleh mengajar pada waktu
bersamaan dan proses pelatihan tidak boleh
dilakukan di ruangan yang sama pada waktu
yang sama dan kelas tidak boleh melaksanakan
materi pelatihan secara bersamaan.
62
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Hasil UAT oleh Administrator GYM
63
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta