DAFTAR ISI HALAMAN JUDUL... i HALAMAN PENGESAHAN PEMBIMBING... ii HALAMAN PENGESAHAN PENGUJI... iii BERITA ACARA DEMO SOFTWARE TUGAS AKHIR... iv SURAT PERNYATAAN KARYA ASLI TUGAS AKHIR...v ABSTRAK.....vi HALAMAN PERSEMBAHAN... vii KATA PENGANTAR... viii DAFTAR ISI...x DAFTAR GAMBAR... xii DAFTAR TABEL... xiv DAFTAR MODUL PROGRAM... xv BAB I PENDAHULUAN... 1 1.1. Latar Belakang... 1 1.2. Perumusan masalah... 2 1.3. Keaslian Penelitian... 2 1.4. Batasan masalah... 4 1.5. Tujuan penelitian... 5 1.6. Manfaat penelitian... 5 1.7. Metodologi Penelitian... 5 1.7.1. Metodologi pengumpulan data... 5 1.7.2. Metodologi pengembangan sistem... 6 1.8. Sistematika Penulisan... 7 BAB II LANDASAN TEORI... 9 2.1. Penjadwalan... 9 2.2. Penjadwalan mata kuliah... 11 2.3. Defenisi sistem... 12 2.4. Informasi... 13 2.5. Kualitas Informasi... 15 2.6. Sistem informasi... 15 2.7. Optimasi... 16 2.8. Algoritma genetika... 17 2.8.1 Defenisi penting dalam algoritma genetika... 21 2.8.2 Struktur algoritma genetika... 22 2.8.3 Macam-macam algoritma genetika... 27 2.8.4 Penyilangan dalam algoritma genetika... 28 2.8.5 Mutasi dalam algoritma genetika... 29 2.8.6 Kerangka kerja algoritma genetika... 29 2.9. Rekayasa Perangkat Lunak... 30 2.10. PHP... 32 2.11. Sistem Basis Data... 33 2.11.1 ERD (Entity Relationship Diagram)... 35 2.12. Flowchart.... 35 2.13. Data Flow Diagram (DFD)... 36 2.13.1. Simbol dalam DFD... 37 2.15. CodeIgniter (CI)... 37 x
2.16. Keaslian Penelitian... 38 BAB III ANALISIS DAN PERANCANGAN... 42 3.1. Analisa sistem... 43 3.1.1 Observasi........44 3.1.2 Wawancara....47 3.2. Analisa kebutuhan penjadwalan mata kuliah... 47 3.2.1. Mekanisme penjadwalan mata kuliah... 48 3.2.2. Proses penjadwalan kuliah... 49 3.2.3. Definisi penjadwalan perkuliahan... 51 3.2.4. Kompoenen penjadwalan perkuliahan... 52 3.2.5. Aturan umum penjadwalan mata kuliah... 55 3.2.6. Kriteria mata kuliah... 56 3.3. Analisa kebutuhan aplikasi... 57 3.4. Perancangan proses... 57 3.4.1. Perancangan proses penjadwalan kelas mata kuliah... 57 3.4.2. Flow Chart Penjadwalan dengan algoritma Genetika... 66 3.4.3. Data Flow Diagram (DFD)... 69 3.5. perancangan basis data... 72 3.5.1. Perancangan struktur tabel... 72 3.5.2. Entity Relationship Diagram (ERD)... 75 3.5.3. Relasi Antar Tabel... 76 3.6. Perancangan antarmuka... 77 3.6.2. Analisa pengujian sistem... 86 BAB IV HASIL DAN IMPLEMENTASI... 89 4.1. Pengujian perangkat lunak... 89 4.2 Pengujian aplikasi... 129 4.2.1. Pengujian validasi aplikasi... 129 4.2.2. Pengujian sistem manajemen data... 131 4.2.3. Pengujian beta... 134 4.2.4. Pengujian fungsi algoritma genetika... 135 4.2.5. Pengujian pengujian operator algoritma genetika... 141 BAB V PENUTUP... 144 5.1. Kesimpulan 144 5.2. Saran...........145 DAFTAR PUSTAKA... 146 LAMPIRAN......148 xi
DAFTAR GAMBAR Gambar 2.1 Transformasi data menjadi informasi... 14 Gambar 2.2 Siklus informasi... 14 Gambar 2.3 Klasifikasi optimasi... 17 Gambar 2.4. Siklus algoritma genetika... 19 Gambar 2.5. Siklus algoritma genetika... 20 Gambar 2.6. Representasi defenisi yang digunakan dalam algoritma genetika... 22 Gambar 2.7. Tiga jenis pengkodean, binary encoding (atas), discret encoding (tengah),... 22 Gambar 2.8. Contoh pross pindah silang. Jika solusi yang dicari adalah x1 =0 dan x2=0,... 24 Gambar 2.9. Bilangan random yang dihasilkan lebih kecil dari probabilitas... 25 Gambar 2.10 Kerangka kerja penerapan algoritma genetika untuk menyelesaikan masalah optimasi... 29 Gambar 2.11 Metode Waterfall (Pressman, 2010)... 30 Gambar 2.12 Server-side processing (Davis dan Philips, 2007)... 32 Gambar 3.1 Tahapan metodologi penelitian... 43 Gambar 3.2 Data matakuliah kurikulum 2016-2017... 45 Gambar 3.3 Data distribusi dosen pengampu... 45 Gambar 3.4 Data jadwal kuliah semsester gasal TA. 2016/2017... 46 Gambar 3.5 Data distribusi mata kuliah masing-masing dosen... 46 Gambar 3.6 Distribusi dan penjadwalan perkuliahan... 49 Gambar 3.7 Penyusunan jadwal kuliah dengan cara manual... 50 Gambar 3.8 Penyusunan jadwal kuliah dengan algoritma genetika... 51 Gambar 3.9 Rancangan pembangkitan populasi... 62 Gambar 3.10 Ilustrasi crossover pada mata kuliah... 65 Gambar 3.11 Proses Mutasi pada individu 1... 66 Gambar 3.12 Flow Chart penjadwalan perkuliahan dengan algoritma genetika... 68 Gambar 3.13 DFD level 0 penjadwalan perkuliahan... 69 Gambar 3.14 DFD level 1... 70 Gambar 3.15 DFD Level 2 proses 2... 71 Gambar 3.16 Entitiy Relationship Diagram (ERD)... 75 Gambar 3.17 Relasi antar tabel (RAT)... 76 Gambar 3.18 Perancangan struktur menu... 77 Gambar 3.19 Rancangan antarmuka lihat jadwal... 78 Gambar 3.20 Rancangan antarmuka halaman login... 79 Gambar 3.21 Rancangan antarmuka halaman from ubah password... 80 Gambar 3.22 Rancangan antarmuka halaman home dan menu... 81 Gambar 3.23 Rancangan antarmuka halaman pengelolaan data dosen... 82 Gambar 3.24 Rancangan antarmuka halaman pengelolaan tambah data dosen... 83 Gambar 3.25 Rancangan antarmuka halaman pengelolaan ubah data dosen... 84 Gambar 3.26 Rancangan antarmuka halaman pengelolaan... 85 Gambar 3.27 Rancangan antarmuka halaman penjadwalan... 86 Gambar 4.1 Halaman Memilih jurusan... 89 Gambar 4.2 Halaman melihat jadwal... 90 Gambar 4.3 Halaman admin melakukan login... 91 Gambar 4.4 Halaman utama admin... 91 xii
Gambar 4.5 Halaman data tenaga pengajar/dosen... 92 Gambar 4.6 Halaman tambah tenaga pengajar/dosen... 93 Gambar 4.7 Halaman edit tenaga pengajar/dosen... 94 Gambar 4.8 Halaman pengelolaan waktu dosen tidak bersedia mengajar... 96 Gambar 4.9 Halaman pengelolaan mata kuliah... 97 Gambar 4.10 Halaman tambah data mata kuliah... 99 Gambar 4.11 Halaman edit mata kuliah... 100 Gambar 4.12 Halaman pengelolaan data pengampu... 101 Gambar 4.13 Halaman tambah data pengampu... 103 Gambar 4.14 Halaman edit data pengampu... 104 Gambar 4.15 Halaman pengelolaan waktu kuliah... 105 Gambar 4.16 Halaman tambah data waktu... 106 Gambar 4.17 Halaman edit data waktu... 107 Gambar 4.18 Halaman pengelolaan data ruang kelas... 108 Gambar 4.19 Halaman tambah data ruang kelas... 108 Gambar 4.20 Halaman edit data ruang kelas... 109 Gambar 4.21 Halaman Ubah password admin... 110 Gambar 4.22 Halaman aturan penjadwalan algoritma genetika... 112 Gambar 4.23 Halaman input parameter algoritma genetika... 112 Gambar 4.24 Halaman input parameter algoritma genetika... 115 Gambar 4.25 Export jadwal kuliah dengan jenis periode waktu... 117 Gambar 4.26 Export jadwal kuliah masing-masing dosen dengan jenis periode waktu.. 117 Gambar 4.27 Export jadwal kuliah dengan jenis sesi waktu... 118 Gambar 4.28 Hasil proses penjadwalan kuliah dengan jenis periode waktu... 119 Gambar 4.29 Hasil proses algoritma genetika dengan jenis sesi waktu... 124 Gambar 4.30 Exception handling untuk jumlah kelas mata kuliah besar dari ruang dan waktu... 128 Gambar 4.31 Exception handling untuk jumlah kelas praktikum lebih besar dari ruang dan waktu... 128 Gambar 4.32 Exception Handling jika tidak ada data pengampu... 129 Gambar 4.33 Hasil pembentukan individu awal... 137 Gambar 4.34 Hasil menghitung fitness... 138 Gambar 4.35 Hasil peroses fungsi seleksi based-rank fitness... 138 Gambar 4.36 Hasil pengujian fungsi crossover... 139 Gambar 4.37 Hasil pengujian fungsi permutasi... 140 Gambar 4.38 Hasil pengujian fungsi individu terbaik... 141 Gambar 4.39 Grafik jumlah iterasi pada probabilitas crossover... 142 Gambar 4.40 Grafik jumlah iterasi pada probabilitas mutasi... 143 xiii
DAFTAR TABEL Tabel 2.1 Pemetaaan proses alamiah ke proses komputasi... 26 Tabel 2.2 Simbol ERD (Entity Relationship Diagram)... 34 Tabel 2.3 Simbol flowchart... 35 Tabel 2.4 Simbol DFD... 37 Tabel 2.5 Perbandingan penelitian terdahulu dengan penelitian yang akan dilakukan penulis... 39 Tabel 3.1 Jumlah ruangan di jurusan Teknik Informatika........52 Tabel 3.2 Contoh daftar mata kuliah... 53 Tabel 3.3 Contoh dosen dengan mata kuliah yang diampu... 53 Tabel 3.4 Contoh daftar kelas mata kuliah... 53 Tabel 3.5 Daftar waktu perkuliahan dengan periode waktu... 54 Tabel 3.6 Daftar waktu perkuliahan dengan sesi waktu... 54 Tabel 3.7 Contoh jadwal mata kuliah... 55 Tabel 3.8 Daftar waktu kuliah dengan periode dalam 1 minggu... 58 Tabel 3.9 Daftar waktu kuliah dengan sesi dalam 1 minggu... 58 Tabel 3.10 Matrik ruang dan waktu dengan periode waktu dalam 1 minggu... 60 Tabel 3.11 Struktur kromosom... 61 Tabel 3.12 Faktor yang mempengaruhi penentuan jadwal kuliah... 63 Tabel 3.13 Aturan dan nilai pinalti... 63 Tabel 3.14 Keadaan sebelum diranking... 64 Tabel 3.15 Keadaan setelah diranking... 64 Tabel 3.16 Admin... 72 Tabel 3.17 Matakuliah... 72 Tabel 3.18 Pengampu.... 73 Tabel 3.19 Ruang kelas.... 73 Tabel 3.20 Tenaga pengajar... 73 Tabel 3.21 Waktu.... 73 Tabel 3.22 waktu tidak bersedia.... 74 Tabel 3.23 Jadwal kuliah.... 74 Tabel 3.24 Form pengujian beta.... 87 Tabel 4.1. Hasil validasi aplikasi pada jenis waktu periode... 129 Tabel 4.2. Hasil validasi aplikasi pada jenis waktu Sesi... 130 Tabel 4.3 Pengujian sistem manajemen data... 131 Tabel 4.4 Form pengujian Beta dari sekretaris jurusan... 134 Tabel 4.5 Data masukan komponen jadwal kuliah... 135 Tabel 4.6 Parameter algoritma genetika... 135 Tabel 4.7 Pengujian path pemanggilan fungsi algoritma genetika... 136 Tabel 4.8 Pengujian path membentuk individu awal... 136 Tabel 4.9 Pengujian path menghitung nilai fitness... 137 Tabel 4.10 Pengujian path fungsi seleksi based-rank fitness... 138 Tabel 4.11 Pengujian path fungsi crossover... 139 Tabel 4.12 Pengujian path fungsi mutasi... 140 Tabel 4.13 Pengujian path fungsi menyimpan individu solusi... 141 Tabel 4.14 Data jumlah iterasi pada probabilitas crossover... 142 Tabel 4.15 Data jumlah iterasi pada probabilitas mutasi... 142 xiv
DAFTAR MODUL PROGRAM Modul program 4.1 Halaman data tenaga pengajar/dosen... 92 Modul program 4.2 Halaman tambah tenaga pengajar/dosen... 94 Modul program 4.3 Halaman edit tenaga pengajar/dosen... 95 Modul program 4.4 Halaman pengelolaan waktu dosen tidak bersedia mengajar... 96 Modul program 4.5 Halaman pengelolaan mata kuliah... 97 Modul program 4.6 Halaman tambah data mata kuliah... 99 Modul program 4.7 Halaman edit mata kuliah... 100 Modul program 4.8 Halaman pengelolaan data pengampu... 101 Modul program 4.9 Halaman tambah data pengampu... 103 Modul program 4.10 Halaman edit data pengampu... 104 Modul program 4.11 Halaman pengelolaan waktu kuliah... 106 Modul program 4.12 Halaman tambah data waktu... 106 Modul program 4.13 Halaman edit data waktu... 107 Modul program 4.14 Halaman pengelolaan data ruang kelas... 108 Modul program 4.15 Halaman tambah data ruang kelas... 109 Modul program 4.16 Halaman edit data ruang kelas... 110 Modul program 4.17 Halaman ubah password admin... 111 Modul program 4.18 Halaman input parameter algoritma genetika jenis periode waktu. 113 Modul program 4.19 Halaman input parameter algoritma genetika jenis sesi waktu... 115 Modul program 4.20 Hasil proses penjadwalan kuliah dengan jenis periode waktu... 119 Modul program 4.21 Hasil proses algoritma genetika dengan jenis sesi waktu... 124 xv