i
SISTEM PENJADWALAN KERETA API PADA
JADWAL KERETA API SEMARANG - JAKARTA
LAPORAN PENELITIAN
Diajukan kepada Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti: Martin Kartiyoso Wiwin Sulistyo, S.T, M.Kom. Dian W. Chandra, S.Kom. M.Cs.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana
ii
iii
Pernyataan
Skripsi yang berikut ini:
Judul : Sistem Penjadwalan Kereta Api pada jadwal
Semarang - Jakarta
Pembimbing : 1. Wiwin Sulistyo, S.T, M.Kom. 2. Dian W. Chandra, S.Kom. M.Cs.
adalah benar hasil karya saya:
Nama : Martin Kartiyoso
NIM : 672003144
Saya menyatakan tidak mengambil sebagian atau seluruhnya dari hasil karya orang lain kecuali sebagaimana yang tertulis pada daftar pustaka.
Pernyataan ini dibuat dengan sebenarnya sesuai dengan ketentuan yang berlaku dalam penulisan karya ilmiah.
Salatiga, Januari 2012
iv
Lembar Identitas
Judul : Sistem Penjadwalan Kereta Api
Pada Jadwal Kereta Api Semarang - Jakarta
Mahasiswa
a) Nama Lengkap : Martin Kartiyoso
b) NIM : 672003144
c) Bidang Konsentrasi : Jaringan
d) Fakultas/Progdi : Teknologi Informasi / Teknik
Informatika
e) Alamat : Jl. P.Diponegoro 27 Tayu - Pati
f) Telp/HP/Faks : 08995834339
g) Email : martin.kartiyoso@yahoo.com
Peneliti 1
e) Telpon/HP/Faks : 085742347505
f) Email : wiwinsulistyo@staff.uksw.edu
Peneliti 2
a) Nama Lengkap : Dian W.Chandra
b) Bidang Keahlian : Jaringan
c) Unit Kerja : Salatiga
d) Alamat : Salatiga
e) Telpon/HP/Faks : 08156565156
v
Prakata
Puji syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa karena atas kasih dan penyertaan-Nya, penulis dapat menyelesaikan skripsi yang berjudul ”Sistem Penjadwalan Kereta Api pada Jadwal Kereta Api Semarang - Jakarta” ini. Skripsi ini disusun untuk memenuhi sebagian persyaratan dalam memperoleh gelar Sarjana Komputer pada Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga.
Skripsi ini dapat selesai berkat bantuan dari berbagai pihak yang telah memberikan bimbingan, ide, dan berbagai dukungan lainnya kepada penulis. Pada kesempatan ini penulis mengucapkan terima kasih kepada :
1. Bapak Andeka Rocky Tanaamah, SE., M.Cs., selaku Dekan Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga.
2. Bapak Dian W. Chandra, S.Kom., M.Cs. selaku Ketua Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga.
3. Bapak Wiwin Sulistyo, ST., M.kom., sebagai dosen
pembimbing pertama atas kesabaran dalam memberi bimbingan, petunjuk, motivasi dan pengarahan dalam penyusunan skripsi ini.
4. Bapak Dian W. Chandra, S.Kom., M.Cs. selaku dosen
vi
5. Seluruh Bapak/Ibu dosen pengajar di Fakultas Teknologi Informasi yang telah mendidik dan memberikan bekal kepada penulis selama kuliah serta seluruh staf atas bantuannya. 6. Orang tua yang selalu mendorong dan memberi dukungan
sepenuhnya.
7. Teman kos Dipo 68G Sinchan, Ari, unyil, Amal, erisman, djoko, willy, Gori, oki dan semua teman tempat berbagi keceriaan, suka dan duka, terima kasih.
8. Teman–teman dari FTI 2003, teman–teman seperjuangan selama ini, yang telah mengisi kehidupan kuliah di FTI UKSW.
9. Pihak-pihak yang tidak dapat penulis sebutkan satu persatu yang telah membantu penulis selama penyusunan skripsi ini.
Penulis menyadari sepenuhnya bahwa dalam penulisan skripsi ini masih terdapat kekurangan. Oleh karena itu, penulis mengharapkan saran yang membangun dari pembaca demi penyempurnaan laporan ini. Akhir kata, penulis berharap semoga laporan skripsi ini dapat bermanfaat bagi pembaca sekalian.
Salatiga, Januari 2012
vii
2.2.3 Klasifikasi Penjadwalan Kereta ... 11
2.3 Algoritma Genetik ... 12
2.3.1 Struktur Umum Algoritma Genetik …... 14
2.4 Pemodelan Algoritma Genetik ... 17
2.4.1 Pemilihan Operator Genetik ... 18
2.4.2 Fungsi Fitness ... 19
2.4.3 Parameter Genetik ... 19
2.4.4 Pemodelan Penjadwalan ... 20
Bab 3 Metode Perancangan Sistem ... 23
3.1 Analisa kebutuhan ... 25
3.2 Perancangan Permodelan Algoritma Genetik ... 27
3.3 Parameter Genetik dalam Penjadwalan Kereta .... 32
3.4 Perancangan Database ... 32
3.4.1 Tabel………... 33
viii
Bab 4 Implementasi Sistem ... 37
4.1 Pembangunan Prototype ... 37
4.2 Hasil dan Pembahasan ... 47
4.3 Pengujian Sistem ... 50
4.3.1 Pengujian Black Box ... 50
4.3.2 Pengujian Fungsi Program ... 51
4.3.3 Pengujian performance program ... 51
Bab 5 Kesimpulan dan Saran Pengembangan ... 53
5.1 Kesimpulan ... 53
5.2 Saran Pengembangan ... 53
ix
Daftar Gambar
Halaman
Gambar 2.1 Siklus Algoritma Genetik. ... 15
Gambar 2.2 String A dan Hasil Mutasi ... 18
Gambar 2.3 Notasi ... 20
Gambar 3.1 Model Prototyping ... 23
Gambar 3.2 Jadwal Kereta Semarang – Jakarta (Keberangkatan) ... 25
Gambar 3.3 Jadwal Kereta Jakarta – Semarang (Kedatangan) ... 26
Gambar 3.4 Proses Penjadwalan Manual ... 28
Gambar 3.5 Tahapan Penjadwalan ... 29
Gambar 3.6 Implementasi Algoritma genetik ... 31
Gambar 3.7 Tampilan Awal Aplikasi ... 34
Gambar 3.8 Form Manage Jadwal ... 35
Gambar 3.9 Form Hasil Optimasi Penjadwalan ... 36
Gambar 4.1 Form Manage Kereta ... 37
Gambar 4.2 Proteksi Operator Manage Data Kereta ... 39
Gambar 4.3 Form Menu Operator Manage Jadwal ... 40
Gambar 4.4 Form Menu Operator Generate Jadwal ... 45
Gambar 4.5 Form Hasil penjadwalan 1 ... 48
x
Daftar Tabel
Halaman
xi
Daftar Kode Program
Halaman
Kode Program 4.1 Kode Program untuk input kereta dan tujuan ... 38
Kode Program 4.2 Perintah untuk men-generate populasi awal ... 41
Kode Program 4.3 Perintah untuk evaluasi fitness ... 42
Kode Program 4.4 Perintah untuk memilih individu yang terbaik ... 43
Kode Program 4.5 Perintah untuk Crossover ... 43
Kode Program 4.6 Proses Mutasi ... 44
xii
Abstract
Every year PT KAI (Kereta Api Indonesia) have to perform effective scheduling of train which is in accordance with the needs of rail transportation with the number of passangers, umber of trains, railway lines, and departure times of train between stations. At the moment the cheduling system is still done manually which consume a long time due to the fairly complicated process of counting the train schedule.
To solve this obstacle, it is needed a system that can be operated effectively and not consume a lot of time where the system is modeled and then look for solutions scheduling using genetic algorithms to generate a more effective train departure schedule by considering the number of trains, railway lines and the amount of time between the departure station.
Keywords: Scheduling, genetic algorithms.
Abstrak
Setiap tahun PT KAI (Kereta Api Indonesia) harus melakukan penjadwalan kereta api yang efektif sesuai dengan tingkat kebutuhan angkutan kereta api dengan jumlah penumpang, jumlah kereta, jumlah jalur kereta dan waktu keberangkatan kereta antar stasiun. Pada saat ini proses penjadwalan masih di lakukan secara manual yang memakan waktu cukup lama dikarenakan cukup rumitnya proses penghitungan jadwal kereta api tersebut.
Untuk mengatasi hal tersebut dibutuhkan sebuah sistem yang dapat berfungsi dengan efektif dan tidak memakan waktu penghitungan yang lama dimana sistem tersebut dimodelkan dan kemudian dicari solusi penjadwalan menggunakan algoritma genetik yang akan menghasilkan jadwal keberangkatan kereta api yang lebih efektif dengan mempertimbangkan jumlah kereta, jumlah jalur kereta dan waktu keberangkatan antar stasiun.