Algoritma Ant Colony System Dalam Penjadwalan Kegiatan Belajar Mengajar Di Sekolah Dasar
ALGORITMA ANT COLONY SYSTEM DALAM PENJADWALAN
KEGIATAN BELAJAR MENGAJAR DI SEKOLAH DASAR
SKRIPSI
YELLY ARVIANI
061401068
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER & TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2013 ALGORITMA ANT COLONY SYSTEM DALAM PENJADWALAN KEGIATAN BELAJAR MENGAJAR DI SEKOLAH DASAR SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar
Sarjana Komputer YELLY ARVIANI
061401068 PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER & TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN
2013
PERSETUJUAN
Judul : ALGORITMA ANT COLONY SYSTEM DALAM PENJADWALAN KEGIATAN BELAJAR MENGAJAR DI SEKOLAH DASAR
Kategori : SKRIPSI Nama : YELLY ARVIANI Nomor Induk Mahasiswa : 061401068 Program Studi : SARJANA (S1) ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI Diluluskan di Medan, 21 Agustus 2013
Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Drs. Sawaluddin, MIT Maya Silvi Lydia, B.Sc, M.Sc NIP. 195912311998021001 NIP. 197401272002122001 Diketahui / Disetujui oleh Departemen Ilmu Komputer FASILKOMTI USU Ketua, Dr. Poltak Sihombing, M.Kom NIP. 196203171991021001
PERNYATAAN
ALGORITMA ANT COLONY SYSTEM DALAM PENJADWALAN KEGIATAN BELAJAR MENGAJAR DI SEKOLAH DASAR SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Agustus 2013 YELLY ARVIANI 061401068
PENGHARGAAN
Alhamdulillah, segala puji dan syukur penulis panjatkan kehadiran Allah SWT yang telah melimpahkan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan penyususan skripsi ini. Shalawat dan salam penulis sampaikan kepada Rasulullah SAW berserta keluarganya, sahabatnya, dan orang-orang yang tetap setia mengikuti sunnahnya.
Skripsi ini berjudul “Algoritma Ant Colony System dalam Penjadwalan
Kegiatan Belajar Mengajar di Sekolah Dasar” disusun sebagai salah satu syarat
untuk memperoleh gelar Sarjana Komputer Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer Universitas Sumatera Utara. Penulis menyadari banyak hambatan dalam penyelesaian skripsi ini namun senantiasa mendapatkan dukungan, saran, dan nasehat dari berbagai pihak. Oleh karena itu, penulis mengucapkan terima kasih kepada pihak-pihak yang terkait, yakni:
1. Rektor Universitas Sumatera Utara, Bapak Prof. Dr. dr. Syahril Pasaribu, D.T.M.&H, M.Sc. (C.T.M), Sp.A.(K.).
2. Dekan Fakultas Ilmu Komputer dan Teknologi Informasi USU, Bapak Prof.
Dr. Muhammad Zarlis, M.Kom.
3. Bapak Dr. Poltak Sihombing, M.Kom. sebagai Ketua Departemen Ilmu Komputer dan juga selaku dosen penguji I yang telah memberikan masukan kepada penulis.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc sebagai sekretaris Departemen Ilmu Komputer dan selaku pembimbing I, yang telah meluangkan waktunya dalam memberikan masukan-masukan kepada penulis.
5. Bapak Drs. Sawaluddin, MIT selaku pembimbing II yang telah meluangkan waktunya dalam memberikan masukan-masukan kepada penulis dalam menyelesaikan skripsi ini.
6. Bapak M. Andri B, ST, MCompSc, MEM selaku penguji II yang telah memberikan masukan kepada penulis dalam menyelesaikan skripsi ini.
7. Bapak dan Ibu staf pengajar Departemen Ilmu Komputer USU, yang telah memberikan bimbingan dan pengajaran selama perkuliahan.
8. Ibunda Eni Rostati tercinta yang telah memberikan kasih sayang, pengorbanan, doa dan kesabaran yang luar biasa dalam membimbing dan memberikan dukungan sehingga penulis dapat merampungkan penyelesaian skripsi ini. Dukungan dari M. Ichsan (abang), Amel (adik), serta seluruh keluarga besar yang telah memberikan motivasi kepada penulis.
9. Sahabat Ayudia Rifki, Chili Harahap dan Ruby yang senantiasa mengingatkan penulis. Teman seperjuangan angkatan 2006 yang telah banyak berbagi ilmu, saran, dukungan, dan kenangan selama proses perkuliahan spesial Esti Utami, Indah Wike dan Desfa teman seperjuangan disaat akhir.
10. Semua pihak yang tidak dapat Penulis sebutkan satu persatu yang telah membantu selama ini baik secara moril maupun materil. Semoga Allah SWT memberikan limpahan karunia atas kebaikan dan dukungan mereka sehingga Penulis dapat menyelesaikan skripsi ini. Akhir kata Penulis menyadari bahwa masih banyak kekurangan dalam penulisan skripsi ini. Oleh karena itu, Penulis mengharapkan saran dan kritik yang membangun agar kelak dapat lebih menjadi lebih baik. Penulis juga mengharapkan semoga laporan ini dapat bermanfaat dan menambah wawasan kepada pembaca.
Medan, Agustus 2013 Penulis
ABSTRAK
Penyusunan jadwal mata pelajaran adalah masalah yang ditemukan pada setiap awal tahun ajaran baru oleh setiap sekolah. Penjadwalan merupakan salah satu hal yang penting dalam proses pembelajaran pada setiap sekolah. Pada proses penjadwalan banyak batasan yang terlibat untuk menghasilkan jadwal yang sesuai untuk sekolah dan guru. Komponen dasar yang terdiri dari guru, mata pelajaran, ruangan dan waktu harus dapat dijadwalkan dengan efektif dan bebas dari bentrok. Penelitian ini menggunakan data Sekolah Dasar Sultan Agung Pematangsiantar tahun ajaran 2010/2011. Selama ini penyusunan jadwal mata pelajaran dilakukan secara manual sehingga membutuhkan waktu yang lama. Tugas akhir ini membahas penggunaan algoritma Ant Colony System dalam menyelesaikan penjadwalan mata pelajaran secara otomotis. Algoritma Ant Colony System merupakan salah satu variasi dari Ant Colony
Optimization (ACO). Algoritma ini adalah salah satu jenis algoritma meta-heuristic
yang telah digunakan untuk menyelesaikan permasalahan kombinatorial. Algoritma ini meniru tingkah laku semut ketika mereka berada dalam koloni untuk mencari sebuah sumber makanan. Program ditulis dengan menggunakan Visual Basic 6.0,
Database Management System Microsoft SQL Server 2000 dan Crystal Report. Dari
hasil pengujian diperoleh hasil jadwal mata pelajaran bebas konflik. Kata kunci: Ant Colony, Penjadwalan, Optimisasi.ANT COLONY SYSTEM ALGORITHM IN SCHEDULING OF TEACHING ACTIVITIES IN PRIMARY SCHOOL ABSTRACT
Arranging of the lesson schedule are problems found at the beginning of each school year by each school. Schedulling is one of the important activity in teaching process at each school. Many restrictions on the scheduling process involved in producing the appropriate schedule for schools and teachers. Basic components consisting of teachers, lesson, space and time must be scheduled with the effective and free from clashing. This research used data from Primary School Sultan Agung Pematangsiantar academic year 2010/2011. During this lesson scheduling is done manually so it takes a long time. This paper is talking about the using Ant Colony System(ACS) algorithm to solve the automatic scheduling of lessons. Ant Colony System algorithm is one of the variations Ant Colony Optimization (ACO). This algorithm is a kind of meta-heuristic algorithm that has been used can solve combinatorial problems. This algorithm adapt from ant behavioural when they are in their colony in order looking for a food source. This Program written in Visual Basic 6.0, Database Management System Microsoft SQL Server 2000 and Crystal Report. Results obtained from the test results free lesson schedule conflict.
Keywords: Ant Colony, Scheduling, Optimization
Halaman Persetujuan ii
21
2.2.1 Konsep Dasar Ant Colony Optimization (ACO)
10
2.2.2 Varian Algoritma ACO
13
2.2.3 Ant Colony System (ACS)
14 Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Penjadwalan Kegiatan Belajar Mengajar di Sekolah Dasar
19
3.2 Faktor – faktor yang Mempengaruhi Penjadwalan Kegiatan Belajar Mengajar di Sekolah Dasar
20
3.2.1 Guru
20
3.2.2 Ruangan
3.2.3 Mata Pelajaran
2.2. Ant Colony Optimization (ACO)
21
3.2.4 Waktu
22
3.3 Analisis Proses Penjadwalan
24
3.3.1 Batasan – batasan (constraints) dalam Penjadwalan
24
3.3.2 Perancangan Flow Chart Sistem
26
3.3.3 Penerapan Algoritma Ant Colony System dalam Penjadwalan
27
3.3.3.1 Karakteristik Algoritma Ant Colony System
27
3.3.3.2 Paramater Algoritma Ant Colony System
10
8
Pernyataan iii
2
Penghargaan iv
Abstrak vi
Abstract vii
Daftar Isi viii
Daftar Tabel xi
Daftar Gambar xii
Bab 1 Pendahuluan
1
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
1.4 Tujuan Penelitian
2.1.3 Penyelesaian Penjadwalan
3
1.5 Manfaat Penelitian
3
1.6 Metodologi Penelitian
3
1.7 Sistematika Penulisan
4 Bab 2 Landasan Teori
6
2.1 Penjadwalan
6
2.1.1 Definisi Penjadwalan Kegiatan Belajar Mengajar
6
2.1.2 Batasan-Batasan dalam Masalah Penjadwalan
7
29
3.3.3.2 Paramater Algoritma Ant Colony System
44
46
3.5.4.9 Perancangan Form Data Ketersedian Guru Mengajar
45
3.5.4.8 Perancangan FormData Pengampu Mata Pelajaran
45
3.5.4.7 Perancangan Form Data Mata Pelajaran
44
3.5.4.6 Perancangan Form Data Jumlah Jam Pertemuan per Ruangan
3.5.4.5 Perancangan Form Data Ruangan
46
43
3.5.4.4 Perancangan Form Data Guru
43
3.5.4.3 Perancangan Form Data Jam
42
3.5.4.2 Perancangan Form Data Hari
42
3.5.4.1 Perancangan Form Menu Utama
42
3.5.4.10 Perancangan Form Data User
3.5.4.11 Perancangan Form Proses Penjadwalan
41
49
4.1.2.6 Form Data Ruangan
53
4.1.2.5 Form Data Guru
53
4.1.2.4 Form Data Jam Pelajaran
51
4.1.2.3 Form Data Hari
50
4.1.2.2 Form LogIn Admin
4.1.2.1 Form Utama
47
49
4.1.2 Implementasi Antarmuka Sistem
48
4.1.1 Lingkungan Implementasi
48
4.1 Implementasi Sistem
48
47 Bab 4 Implementasi dan Pengujian Sistem
3.5.4.12 Perancangan Menu About
3.5.4 Perancangan Antarmuka
3.5.3 Relasi Tabel
29
3.4.3 Keluaran Sistem
3.5.1.2 DFD (Data Flow Diagram) Level 1
33
3.5.1.1 Diagram Konteks (DFD Level 0)
33
3.5.1 Perancangan DFD (Data Flow Diagram)
33
3.5 Perancangan Sistem Penjadwalan Kegiatan Belajar Mengajar
33
33
3.5.2 Basis Data
3.4.2 Masukan Sistem
32
3.4.1 Fungsi Sistem
32
3.4 Spesifikasi Keperluan Sistem
30
3.3.3.4 Flow chart Penjadwalan Ant Colony System(ACS)
29
3.3.3.3 Pembentukan Solusi
34
37
40
39
3.5.2.11 Tabel Jadwal Guru
40
3.5.2.10 Tabel Jumlah Pertemuan
40
3.5.2.9 Tabel Ketersedian Hari
39
3.5.2.8 Tabel User
39
3.5.2.7 Tabel DAmpu
3.5.2.6 Tabel Ampu
3.5.2.1 Tabel Guru
38
3.5.2.5 Tabel Pelajaran
38
3.5.2.4 Tabel Hari
38
3.5.2.3 Tabel Jam
37
3.5.2.2 Tabel Kelas
37
54
4.1.2.7 Form Data Jumlah Pertemuan per Ruangan
55
4.1.2.8 Form Data Mata Pelajaran
56
4.1.2.9 Form Data Pengampu Mata Pelajaran
57
4.1.2.10 Form Data Ketersediaan Guru
59
4.1.2.11 Form Data User
62
4.1.2.12 Form About
63
4.1.2.13 Form Proses Penjadwalan Otomatis ACS
63
4.2 Pengujian Sistem
64
4.2.1 Data Pengujian
64
4.2.2 Hasil Pengujian Sistem
64 Bab 5 Kesimpulan dan Saran
69
5.1 Kesimpulan
69
5.2 Saran
69 Daftar Pustaka
70 Lampiran A: Listing Program A-1
DAFTAR TABEL
Tabel Keterangan Halaman
37
22
23
23
31
32
34
35
36
36
36
37
38
13
38
38
39
39
39
40
40
41
65
65
66
67
20
Spesifikasi proses diagram konteks Spesifikasi proses DFD level 1 proses 1 Kamus data pada DFD level 1 proses 1 Spesifikasi proses DFD level 1 proses 2 Kamus data pada DFD level 1 proses 2 Tabel guru Tabel kelas Tabel jam Tabel hari Tabel pelajaran Tabel ampu Tabel DAmpu Tabel user Tabel ketersedian hari Tabel jumlah pertemuan Tabel jadwal guru Jadwal guru Wang Siu Cen Jadwal guru Lina Jadwal guru Eko Suzatmiko Jadwal guru Sherly Jadwal guru Lan-lan
2.1
3.14
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8 3.9.
3.10
3.11
3.12
3.13
3.15
Constraint jumlah jam matapelajaran
3.16
3.17
3.18
3.19
3.20
3.21
3.22
4.1
4.2
4.3
4.4
4.5 Sembilan varian ACO yang diusulkan oleh para ahli Daftar beberapa guru dan mata pelajaran yang diampunya Mata Pelajaran di SD Swasta Sultan Agung Daftar pembagian waktu kegiatan belajar mengajar dalam 1 minggu untuk setiap kelas Contoh jadwal kegiatan belajar mengajar Inisialisasi jadwal
67
DAFTAR GAMBAR
Gambar Keterangan Halaman43
47
46
46
45
45
44
44
43
50
42
42
41
35
34
30
26
12
47
50
login
58
61
61
60
60
59
59
58
57
51
56
56
55
54
53
53
52
52
Tampilan implementasi antarmuka form data hari Tampilan kotak dialog ketika data belum lengkap Tampilan kotak dialog yakin dihapus Tampilan implementasi antarmuka form data jam pelajaran Tampilan implementasi antarmuka form data guru Tampilan implementasi antarmuka form data ruangan Tampilan implementasi antarmuka form data jumlah pertemuan per Ruangan Tampilan implementasi antarmuka form data mata pelajaran Tampilan implementasi antarmuka form data pengampu mata pelajaran Tampilan nama guru yang tersedia dan nama mata pelajaran Pemberitahuan ketika jumlah les melebihi alokasi waktu Kotak dialog data mata pelajaran ketika akan dihapus Kotak diolog data guru ampu ketika akan dihapus Tampilan implementasi antarmuka form data ketersediaan guru Tampilan waktu yang tersedia dalam proses mengajar Tampilan ketika admin setelah selesai memilih data ketersedian guru mengajar untuk setiap guru Kotak dialog data sudah disimpan Kotak dialog data sudah dihapus
Diagram konteks DFD level 1 Skema relasi antar tabel Perancangan form menu utama Perancangan form data hari Perancangan form data jam pelajaran Perancangan form data guru Perancangan form data ruangan Perancangan form data jumlah pertemuan per ruangan Perancangan form data mata pelajaran Perancangan form data pengampu mata pelajaran Perancangan form data ketersediaan guru mengajar Perancangan form data user Perancangan form proses penjadwalan Perancangan form menu about Tampilan implementasi antarmuka form utama Tampilan implementaasi antarmuka form login Tampilan implementasi antarmuka form utama setelah
2.1
3.10
3.17
3.16
3.15
3.14
3.13
3.12
3.11
3.9
4.2
3.8
3.7
3.6
3.5
3.4
3.3
3.2
3.1
4.1
4.3
Flow chart sistem Flow chart penjadwalan ACS
4.14
4.21 Perjalanan semut menemukan sumber makanan
4.20
4.19
4.18
4.17
4.16
4.15
4.13
4.4
4.12
4.11
4.10
4.9
4.8
4.7
4.6
4.5
62
4.22
4.23
4.24 Tampilan implementasi antarmuka form data admin Tampilan implementasi antarmuka form about Tampilan implementasi proses penjadwalan otomatis ASC
62
63
64