Analisis Proses Penjadwalan Algoritma Ant Colony System Dalam Penjadwalan Kegiatan Belajar Mengajar Di Sekolah Dasar

2.5 Analisis Proses Penjadwalan

3.3.1 Batasan – batasan constraints dalam Penjadwalan

Permasalahan yang muncul dalam penjadwalan kegiatan belajar mengajar dalam studi kasus ini adalah konflik yang terjadi antara guru, ruangan yang tersedia, dan jumlah waktu yang dapat digunakan. Konflik yang terjadi pada guru antara lain terjadi ketika seorang guru mengajar yang berbeda dalam dua ruangan atau lebih yang berbeda dalam suatu waktu tertentu, jumlah waktu mengajar seorang guru yang tidak dapat dialokasikan dengan tepat sesuai dengan jumlah waktu mengajar yang ditetapkan, serta adanya guru yang tidak dapat mengajar pada waktu tertentu. Konflik pada tingkat mata pelajaran antara lain terjadi ketika suatu mata pelajaran memiliki jumlah pertemuan berturut sebanyak lebih dari waktu yang telah ditetapkan dalam sehari, serta jumlah mata pelajaran yang tidak teralokasikan dengan tepat dalam seminggu. Sedangkan pada kriteria waktu,yang harus diperhatikan adalah bagaimana menyusun jadwal sesuai dengan slot waktu yang tersedia. Pada konflik waktu yang terjadi ketika tidak adanya waktu yang sesuai untuk seorang guru dikarenakan waktu tersebut sudah digunakan oleh guru yang lain. Oleh karena itu, dibutuhkan batasan-batasan constraints untuk mengatasi dan menghindari masalah penjadwalan kegiatan belajar mengajar tersebut. Sehingga dalam proses penjadwalan sejumlah mata pelajaran serta guru pengampu dapat dialokasikan kedalam slot waktu yang tersedia sesuai dengan constraints yang telah ditentukan. Pada penjadwalan kegiatan belajar ini ada dua batasan yang digunakan dalam proses penjadwalan, antara lain: a. Batasan keras hard constraints Hard constraints dalam penjadwalan adalah batasan yang harus dipenuhi dan tidak boleh dilanggar dalam penyusunan sebuah jadwal kegiatan belajar mengajar. Berikut adalah batasan-batasan keras yang digunakan dalam kasus penjadwalan ini antara lain: 1. Tidak adanya bentrok guru, yaitu seorang guru hanya dapat mengajar pada satu ruangan dan waktu tertentu. Universitas Sumatera Utara 2. Tidak adanya bentrok ruangan, yaitu sebuah ruangan hanya dapat digunakan untuk proses belajar mengajar untuk suatu mata pelajaran dan waktu tertentu. 3. Jumlah waktu mengajar untuk setiap guru yang telah ditentukan harus tepat dialokasikan dalam setiap minggunya. Misalnya guru A mendapat jam mengajar 23 jam dalam seminggu. Maka 23 jam waktu mengajar tersebut harus dialokasikan dengan tepat dalam seminggu; 4. Jumlah mata pelajaran untuk setiap kelas telah ditentukan dan harus tepat dialokasikan dalam setiap minggunya. Misalnya mata pelajaran matematika untuk kelas 1A memiliki jumlah pertemuan 7 kali setiap minggu. Maka 7 kali pertemuan tersebut harus dialokasikan dengan tepat dalam seminggu pada kelas 1A. 5. Seorang guru mengajar sesuai dengan mata pelajaran yang telah ditentukan. 6. Kegiatan belajar mengajar berlangsung dari hari Senin s.d Sabtu. Dan masing masing kelas terdiri dari jumlah pertemuan yang telah ditentutkan. 7. Periode waktu kegiatan belajar mengajar satu pertemuan adalah 40 menit. b. Batasan lunak soft constraint Berbeda dengan hard constraint, batasan dalam soft constraint adalah kendala yang tidak selalu dapat terpenuhi dalam proses penyusunan jadwal kegiatan belajar mengajar. Walaupun tidak harus terpenuhi tetapi jadwal kegiatan belajar mengajar yang dihasilkan harus semaksimal mungkin berusaha memenuhi ketentuan soft constraint ini. Berikut ini beberapa contoh soft constraint dalam kasus penjadwalan kegiatan belajar mengajar di sekolah: 1. Preferensi jadwal pengajar; misal pengajar A bisa mengajar hari apa saja asalkan pada pukul 09.00-13.00. Pengajar B bisa mengajar hanya pada hari Senin-Kamis pada pukul 07.30-10.00. 2. Seorang guru tidak boleh mendapatkan jadwal mengajar dengan mata pelajaran yang sama lebih dari tiga pertemuan dalam sehari pada kelas yang sama. Universitas Sumatera Utara

3.3.2 Perancangan Flowchart Sistem

Sistem yang dirancang adalah penjadwalan mata pelajaran dengan algoritma Ant Colony System ACS dapat dilihat pada Gambar 3.1. Mulai Data Akademik, Parameter Semut Constraint Penjadwalan Probabilitas ACS Optimasi Daftar Jadwal Mata pelajaran Selesai Gambar 3.1 Flowchart sistem Pada Gambar 3.1 di atas proses awal adalah pemasukan data akademik dan data parameter semut untuk diolah pada proses constraint penjadwalan. Hasil constraint penjadwalan berupa estimasi jadwal mata pelajaran yang diolah selanjutnya untuk mendapatkan probabilitas jadwal yang memungkinkan. Probabilitas jadwal yang dihasilkan diolah dengan algoritma ACS untuk mendapatkan daftar jadwal mata pelajaran yang sesuai dengan constraint penjadwalan. Universitas Sumatera Utara

3.3.3 Penerapan Algoritma Ant Colony System dalam Penjadwalan

Algoritma Ant Colony System merupakan teknik probabilistik untuk menyelesaikan masalah komputasi dengan menemukan rute terpendek dari suatu graf. Dalam mencari rute terpendek dalam algoritma semut, ‘semut-semut tiruan’ akan bertindak seperti agen, dimana setiap semut memiliki rute masing-masing dari titik awal menuju titik tujuan dengan tidak mengunjungi suatu titik lebih dari satu kali untuk mendapatkan hasil terbaik.

3.3.3.1 Karakteristik Algoritma Ant Colony System

Terdapat tiga karakteristik utama dari algoritma semut, yaitu aturan transisi status, aturan pembaruan feromon lokal, dan aturan pembaruan feromon global. Untuk mencapai penjadwalan yang optimal semut harus melakukan beberapa tahap diantaranya: Tahap I: Inisialisasi Parameter. Tahap awal dari proses penjadwalan ini adalah inisialisasi parameter. Parameter- parameter yang digunakan dalam proses ini antara lain: a. Seed sequence adalah kumpulan dari mata pelajaran tawar yang ditempatkan pada sejumlah waktu dan ruang berdasarkan ketersediaan waktu mengajar guru berdasarkan pada constraint yang ada. b. α, β merupakan parameter-parameter lain yang mengontrol bobot relatif antara jejak feromon dan nilai heuristik. Jika α=0, maka pencarian akan berdasarkan nilai heuristik semata. Jika sebaliknya β=0, maka pencarian hanya dituntun oleh informasi jejak feromon. c. ρ adalah sebuah koefisien dimana 1-ρ menunjukkan tingkat evaporasi feromon. ρ memiliki nilai yang sama untuk semua iterasi yaitu 0.01. d. Zbest adalah besarnya jumlah data seed sequence dalam enam hari aktif belajar. Nilai Zbest akan diperbarui pada setiap iterasi. e. Tmax dan Tmin adalah batas maksimum dan minimum dari nilai intensitas elemen feromon. Tmax dan Tmin diperoleh dari Zbest dengan formula sebagai berikut: Universitas Sumatera Utara Tmax= 11- ρZbest Tmin = Tmax 5 t ij adalah intensitas jejak feromon mata pelajaran i diposisi k. Pada iterasi awal t ij yaitu Tmax. Tahap II: Iterasi Suatu iterasi akan menghasilkan sebuah solusi yaitu jadwal dari urutan sejumlah mata pelajaran yang ditawarkan. Solusi dari setiap iterasi dioptimalkan lagi dalam iterasi selanjutnya berdasarkan jejak feromon yang nilainya berubah-ubah tergantung pada solusi yang dihasilkan pada iterasi sebelumnya. Iterasi pada penjadwalan ini menggunakan sejumlah semut dalam beberapa siklus untuk mencari nilai probabilitas setiap jadwal yang ditawarkan dalam 1 minggu. Dari hasil probabilitas, diperoleh nilai probabilitas yang tertinggi yang merupakan solusi jadwal. Setiap semut yang telah menyelesaikan 1 iterasi dilakukan update feromon untuk menempatkan semut yang selanjut pada siklus berikutnya. Update global dilakukan setelah semua semut melakukan iterasi untuk memperoleh nilai probabilitas. a. Update Local Feromon Setiap semut setelah selesai menghitung probabilitas setiap jadwal yang ditawarkan dilakukan update local feromon. b. Aturan Update Global Feromon Update global feromon hanya dilakukan oleh semut yang membuat jadwal yang memungkinkan sejak awal iterasi. Pada akhir sebuah siklus, setelah semua semut menyelesaikan perjalanan mereka, intensitas feromon diperbaharui pada sisi-sisi yang dilewati oleh seekor semut yang telah menemukan jadwal yang optimum. Tingkat feromon diperbarui dengan menerapkan aturan pembaruan feromon global yang ditunjukkan oleh persamaan 4. , . , . 1 , v t v t v t τ α τ α τ ∆ + − ← ................................persamaan 4     ∈ = ∆ − , , 1 terbaik rute v t jika L v t gb τ Universitas Sumatera Utara dimana: τt,v : nilai feromon akhir setelah mengalami pembaruan lokal L gb : banyaknya matapelajaran pada akhir siklus. α : tetapan pengendali feromon. ∆τ : perubahan intensitas feromon.

3.3.3.2 Parameter Algoritma Ant Colony System

Parameter algoritma Ant Colony System dalam mencapai solusi penjadwalan adalah dengan menginisialisasi harga parameter: 1. Intensitas feromon τ ij . 2. Tetapan siklus semut q . 3. Tetapan pengendali intensitas visibilitas β, nilai β ≥ 0. 4. Tetapan pengendali feromon α, nilai α ≥ 0. 5. Jumlah semut m. 6. Tetapan penguapan feromon ρ, nilai ρ harus 0 dan 1. 7. Jumlah siklus maksimum NC max .

3.3.3.3 Pembentukan Solusi

Proses pembentukan solusi dilakukan dengan menambahkan mata pelajaran satu persatu ke dalam solusi jadwal. Untuk memilih mata pelajaran i yang belum terjadwal untuk dijadwalkan pada posisi k dalam jadwal adalah sebagai berikut: 1. Pembentukan solusi sementara dengan melakukan hard constraint untuk setiap slot jadwal terhadap guru dan pelajaran. 2. Tentukan nilai produk feromon A ij � ��= �� �� �� | � � |: � �� � = �� �� �� � �� �� � � . 3. Tentukan nilai Tik yaitu akumulasi dari produk feromon T ik = ∑ ���. 4. Hitung Visiabiltas Maksimun dan minimum untuk setiap jadwal Tmax,Tmin. 5. Hitung Probabilitas setiap jadwal mata pelajaran Probabilitask= ProbabilitasMax. Universitas Sumatera Utara

3.3.3.4 Flowchart Penjadwalan Ant Colony System ACS

Berdasarkan penjelasan sebelumnya, maka dapatlah digambarkan flowchart Penjadwalan ACS seperti Gambar 3.2 dibawah ini: Mulai Input data kelas , jam , hari , mata pelajaran, ampu, ketersedian guru Inisialisasi Paramater Inisialisasi Jadwal Siklus = Siklus -1 Semut = Semut -1 Hitung Constraint Jadwal k Bangkitkan Bil.Random Hitung Produk Feromon Hitung u = Bilangan random x Jumlah Semut Semut = 0 Siklus = 0 Jadwal mata pelajaran No Yes Yes Selesai No No ij A ik ij T A = ∑ Hitung Probabilitas Jadwal k Pkik = Jadwal k Hitung Probabilitas jadwal k Tik Maks = Jadwalk Yes Jadwal k = Jadwal ik u = Jumlah Mata Pelajaran Gambar 3.2 Flowchart penjadwalan ACS Universitas Sumatera Utara 1. Menginisialisasi parameter algoritma semut: a. Intensitas Feromon: τ ij = 0,01 b. Tetapan siklus semut: q = 0,1 c. Pengendalian Feromon: α = 0,1 d. Pengendalian Visibilitas: β = 1 e. Banyak semut: m = 2 f. Penguapan Feromon: ρ = 0,5 g. Banyak Siklus: NCmax = 2 Dari nilai parameter diatas nilai α dan β harus lebih besar atau sama dengan 0 sementara nilai ρ harus diantara 0 dan 1. 2. Inisialisasi jadwal Data jadwal yang akan diinisialisasi adalah kelas, hari dan jam yang berfungsi sebagai data awal untuk proses penjadwalan. Inisialisasi jadwal dapat dilihat pada Tabel 3.5. Tabel 3.5 Inisialisasi jadwal No. Urut Jadwal Kelas Hari Jam 1 1 1 1 2 2 1 2 3 3 1 3 4 4 1 4 5 5 1 5 Keterangan: Semua data inisialisasi memiliki tipe integer antara lain: Nomor Urut Jadwal : IDJadwal Hari : IDHari Jam : IDJam Kelas : IDKelas 3. Inisialisasi Constraint Jumlah Jam Mata pelajaran Jumlah jam mata pelajaran maksimum dalam 1 hari dan yang harus terpenuhi dalam 1 minggu dimasukkan ke dalam Constraint jumlah jam mata pelajaran seperti pada Tabel 3.6. Universitas Sumatera Utara Tabel 3.6. Constraint jumlah jam mata pelajaran Mata pelajaran Maksimun 1 hari 1 Minggu Matematika 3 8 Bahasa Indonesia 3 8 IPA 3 3 IPS 3 3 Bahasa Inggris 2 2 4. Penjadwalan Dengan ACS Untuk memasukkan setiap mata pelajaran ke dalam jadwal, dilakukan aturan seperti constraint ketersediaan guru dan jumlah jam mata pelajaran Tabel 3.5 dan 3.6 diatas. Pertama-tama dilakukan penghitungan jumlah jadwal setiap kelas dalam 1 minggu lalu hitung produk pheromone untuk semua jadwal diatas dengan persamaan berikut: � ��= �� �� �� | � � |: � �� � = �� �� �� � �� �� � � . 2.6 Spesifikasi Keperluaan Sistem Dalam skripsi ini, dibangun sebuah sistem penjadwalan kegiatan belajar mengajar yang mengimplementasikan algoritma ant colony system. Sistem ini dirancang menggunakan metode pendekatan atas-bawah Top-Down Approach sehingga perancangan dimulai dari bentuk yang paling umum, kemudian diturunkan secara bertahap menjadi bentuk yang lebih detail. Spesifikasi umum kebutuhan sistem menjelaskan dasar pembuatan rancangan sistem yang terdiri dari fungsi sistem, tujuan sistem, masukan dan keluaran sistem.

3.4.1 Fungsi Sistem

Sistem yang akan dibangun memiliki fungsi sebagai berikut: 1. Mengelola semua data yang berhubungan dengan penjadwalan kegiatan belajar mengajar di sekolah dasar mata pelajaran, waktu kegiatan belajar mengajar, guru, ruangan, jumlah waktu per ruangan, mata pelajaran yang diampu oleh setiap guru, dan ketersedian waktu guru. 2. Mengisi slot jadwal secara otomatis. 3. Membuat laporan jadwal per guru dan per ruangan. Universitas Sumatera Utara

3.4.2 Masukan Sistem

Input atau masukan dari aplikasi penjadwalan ini adalah: 1. Data guru, pelajaran, kelas, hari, jam, ampu, ketersediaan guru. 2. Parameter-parameter yang diperlukan dalam perhitungan algoritma ACS, yaitu: a. Intensitas feromon antar titik τ ij . b. Tetapan siklus semut q . c. Tetapan pengendali intensitas visibilitas β. d. Tetapan pengendali feromon α. e. Jumlah semut m. f. Tetapan penguapan feromon ρ. g. Jumlah siklus maksimum NC max .

3.4.3 Keluaran Sistem

Keluaran output sistem adalah daftar penjadwalan yang dikelompokkan berdasarkan nama guru serta kelas. 2.7 Perancangan Sistem Penjadwalan Kegiatan Belajar Mengajar Tujuan dari perancangan sistem adalah untuk menentukan hasil akhir dari aplikasi yang akan dibangun dengan melakukan beberapa proses untuk memperoleh hasil tersebut. Metode perancangan yang digunakan dalam pembuatan penjadwalan kegiatan belajar mengajar di sekolah dasar menggunakan algoritma ant colony system dan menggunakan alat-alat pengembangan dalam bentuk DFD Data Flow Diagram, diagram relasi antar tabel dan rancangan antarmuka interface.

3.5.1 Perancangan DFD Data Flow Diagram

3.5.1.1 Diagram Konteks DFD Level 0

Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Dalam aplikasi ini pengguna sebagai admin akan Universitas Sumatera Utara memasukkan data berupa data mata pelajaran, guru, kelas, hari, jam, ketersediaan guru, parameter semut, serta admin yang akan digunakan dalam proses penjadwalan dengan menggunakan algoritma ACS. Diagram konteks perancangan aplikasi penjadwalan kegiatan belajar mengajar dengan algoritma ACS dapat dilihat pada gambar 3.3 dibawah ini. Admin Penjadwalan Kegiatan Belajar Mengajar dengan Algoritma ACS Data hari, jam, guru, kelas, jumlah les per kelas, mata pelajaran, pengampu mata pelajaran, ketersedian guru dan data admin Jadwal Kegiatan Belajar Mengajar Gambar 3.3 Diagram konteks Tabel 3.7 Spesifikasi proses diagram konteks PROSES Penjadwalan Kegiatan Belajar Mengajar dengan Algoritma Ant Colony System Input Input Data Penjadwalan Proses Dalam proses ini, admin akan melakukan penginputan data berupa data hari, data jam, data guru,data kelas, data jumlah per kelas, data mata pelajaran, data pengampu mata pelajaran, data ketersedian guru dan data admin yang akan diproses dengan menggunakan algoritma ant colony system. Selanjutnya sistem akan memberikan hasil output berupa jadwal kegiatan belajar mengajar. Output Jadwal Kegiatan Belajar Mengajar

3.5.1.2 DFD Data Flow Diagram Level 1

Setelah dibuat diagram konteks, langkah selanjutnya adalah menurunkan diagram konteks menjadi bentuk yang lebih detail, yaitu DFD Data Flow Diagram level 1.DFD Data Flow Diagram level 1 mengilustrasikan bagaimana data diproses oleh sistem,dalam hal ini inputdan output dari sistem. Berdasarkan diagram konteks pada Gambar 3.3 diatas, DFD level 1 memiliki empat proses yaitu proses Verifikasi Otoritas, Login, Input Data serta Penjadwalan. DFD level 1 dapat dilihat seperti pada Gambar 3.4. Universitas Sumatera Utara Admin 1.1 Login 1.2 Input Data 1.3 Proses Penjadwalan dengan ACS User User Id, Password Status Data Guru Data Pelajaran Data Kelas Data Hari Data Jam Data Parameter Data Les per Kelas Data Ampu Data Ketersediaan Input data guru Input data pelajaran Input data kelas Input data hari Input data jam Input data les Input data ampu Output data guru Output data pelajaran Output data kelas Output data hari Output data jam Output data parameter Output data les per kelas Output data les per ampu Output data ketersediaan Input User Id, Password Login unvalid Login Valid Jadwal Mata pelajaran Input data parameter Input data ketersediaan mengajar guru Gambar 3.4 DFD level 1 Pada proses Login, sistem membutuhkan data masukan berupa UserID dan Password, kemudian proses akan memberikan otoritas dengan cara membandingkan ke data User. Proses-proses yang terjadi pada DFD Level 1 proses 1 diuraikan pada Tabel 3.8 di bawah ini. Tabel 3.8 Spesifikasi proses DFD level 1 proses 1 PROSES P1.1 Proses Login Input UserID Password Proses Dalam proses ini, admin login dengan mengisi user ID dan password Output Login Valid dan Login Invalid Universitas Sumatera Utara Masing-masing entitas data yang tercantum pada DFD level 1 proses 1 ditampilkan pada tabel 3.9 di bawah ini. Tabel 3.9 Kamus data pada DFD level 1 proses 1 Nama Keterangan UserID Nama Penguna Password Kata sandi Pada proses Input Data, dilakukan penginputan data awal yang akan diproses menjadi data jadwal pelajaran oleh user. Proses-proses yang terjadi pada DFD Level 1 proses 2 diuraikan pada Tabel 3.10 di bawah ini. Tabel 3.10 Spesifikasi proses DFD level 1 proses 2 PROSES P1.2 Proses Input Data Input Data Guru, Kelas,Pelajaran,Hari,Jam,Ampu,Parameter,Ketersediaan Proses Proses Penginputan data. Output Data Guru, Kelas,Pelajaran,Hari,Jam,Ampu,Parameter,Ketersediaan Masing-masing entitas data yang tercantum pada DFD level 1 proses 2 ditampilkan pada Tabel 3.11 di bawah ini. Tabel 3.11 Kamus data pada DFD level 1 proses 2 Nama Keterangan Data Guru Terdiri dari IDGuru, Nama Guru, Jumlah pertemuan dalam seminggu. Data Ruangan Terdiri dari IDRuangan, Nama Ruangan Data Pelajaran Terdiri dari IDPelajaran, Nama Pelajaran, Ruangan, Alokasi waktu minggu. Data Hari Terdiri dari IDHari, Nama Hari dalam seminggu Data Jam Terdiri dari IDJam, Nama Jam dalam seminggu Data Ampu Terdiri dari mata pelajaran yang diampu setiap guru Data Parameter Parameter Semut yang akan digunakan dalam proses penjadwalan Data Ketersediaan Data Ketersediaan Guru mengajar dalam setiap minggu Universitas Sumatera Utara

3.5.2 Basis Data

Pembuatan aplikasi ini membutuhkan database yang akan digunakan untuk menyimpan data-data. Data-data tersebut disimpan kedalam tabel-tabel tertentu. Berikut tabel-tabel yang digunakan dalam aplikasi penjadwalan kegiatan belajar mengajar antara lain :

3.5.2.1 Tabel Guru

Tabel ini digunakan untuk menyimpan data seluruh pengajar, terdiri dari : IDGuru, NmGuru, JumlahLes, Status, StatusSedia mengajar setiap guru dalam seminggu. Tabel guru dapat dilihat pada Tabel 3.12. Tabel 3.12 Tabel guru Nama Field Data Type Length Keterangan IDGuru PK smallint 2 ID Guru NmGuru nchar 50 Nama Guru JmlLes smallint 2 Jumlah pertemuan dalam seminggu Status char 1 Status yang digunakan untuk ampu StatusSedia char 1 Status yang digunakan untuk ketersediaan waktu mengajar

3.5.2.2 Tabel Kelas

Tabel ini digunakan untuk menyimpan seluruh data kelas , terdiri dari : IDKelas dan NmKelas. Tabel Kelas dapat dilihat pada Tabel 3.13. Tabel 3.13 Tabel Kelas Nama Field Data Type Length Keterangan IDKelas PK smallint 2 ID Kelas NmKelas nchar 50 Nama Kelas Universitas Sumatera Utara

3.5.2.3 Tabel Jam

Tabel ini digunakan untuk menyimpan data jam belajar mengajar, terdiri dari : IDJam dan NmJam. Tabel Jam dapat dilihat pada Tabel 3.14. Tabel 3.14 Tabel Jam Nama Field Data Type Length Keterangan IDJam PK smallint 2 ID Jam NmJam nchar 50 Nama Jam

3.5.2.4 Tabel Hari

Tabel ini digunakan untuk menyimpan data hari belajar mengajar, terdiri dari : IDHari dan NmHari. Tabel Hari dapat dilihat pada Tabel 3.15. Tabel 3.15 Tabel Hari Nama Field Data Type Length Keterangan IDHari PK smallint 2 ID Hari NmHari nchar 50 Nama Hari

3.5.2.5 Tabel Pelajaran

Tabel ini digunakan untuk menyimpan seluruh data mata pelajaran yang diajarkan, terdiri dari : IDPel, NmPelajaran, Jumlah, dan Status. Tabel Pelajaran dapat dilihat pada Tabel 3.16. Tabel 3.16 Tabel Pelajaran Nama Field Data Type Length Keterangan IDPel PK smallint 2 ID Pelajaran IDKelas FK1 smallint 2 ID Kelas NmPelajaran nchar 35 Nama Pelajaran Jumlah smallint 2 Jumlah pertemuan tiap minggu setiap mata pelajaran Status char 1 Status yang digunakan pada saat penyimpanan data. Universitas Sumatera Utara

3.5.2.6 Tabel Ampu

Tabel ini digunakan untuk menyimpan seluruh data id ampu yang diambil oleh setiap guru, terdiri dari : IDampu dan IDGuru. Tabel Ampu dapat dilihat pada Tabel 3.17. Tabel 3.17 Tabel Ampu Nama Field Data Type Length Keterangan IDAmpu PK smallint 2 ID Ampu IDGuru FK1 smallint 2 ID Guru

3.5.2.7 Tabel DAmpu

Tabel ini digunakan untuk menyimpan data detail ampu setiap mata pelajaran yang diampu oleh setiap guru, terdiri dari : IDDampu, IDAmpu, dan IDPel. Tabel DAmpu dapat dilihat pada Tabel 3.18. Tabel 3.18 Tabel DAmpu Nama Field Data Type Length Keterangan IDDAmpu PK smallint 2 ID Detail Ampu IDAmpu FK1 smallint 2 ID Ampu IDPel FK2 smallint 2 ID Pelajaran Status char 1 status data ID detail Ampu telah digunakan.

3.5.2.8 Tabel

User Tabel ini digunakan untuk menyimpan data user dari sistem, terdiri dari : UserID, dan Passwd. Tabel User dapat dilihat pada Tabel 3.19. Tabel 3.19 Tabel User Nama Field Jenis Field Ukuran Field Keterangan UserID PK char 20 User ID Passwd char 20 Password Universitas Sumatera Utara

3.5.2.9 Tabel Ketersedian Hari

Tabel ini digunakan untuk menyimpan data ketersedian hari dan jam mengajar oleh setiap guru, terdiri dari : IDSediahari, IDGuru, IDHari, dan IDJam. Tabel Ketersedian Hari dapat dilihat pada Tabel 3.20. Tabel 3.20 Tabel Ketersediaan Hari Nama Field Data Type Length Keterangan IDSediaHari PK smallint 2 ID Sedia Guru IDGuru FK1 smallint 2 ID Guru IDJam FK2 smallint 2 ID Jam IDHari FK3 smallint 2 ID Hari Status char 1 Status yang digunakan saat penyimpanan data ketersediaan hari.

3.5.2.10 Tabel Jumlah Pertemuan

Tabel ini digunakan untuk menyimpan data jumlah pertemuan setiap kelas dalam satu hari pertemuan, terdiri dari : IDLes, IDKelas, IDHari, JumlahLes. Tabel Jumlah Les dapat dilihat pada Tabel 3.21. Tabel 3.21 Tabel Jumlah Pertemuan Nama Field Data Type Length Keterangan IDLes PK smallint 2 ID Pertemuan IDKelas FK1 smallint 2 ID Kelas IDHari FK2 smallint 2 ID Hari JumlahLes smallint 2 Jumlah waktu pertemuan setiap kelas dalam seminggu

3.5.2.11 Tabel Jadwal Guru

Tabel ini digunakan untuk menyimpan daftar jadwal guru yang telah berhasil dijadwalkan, terdiri dari IDJadwalGuru, IDJadwal, IDKelas, IDHari, IDJam, IDGuru, IDPel, Ket. Tabel Jadwal Guru dapat dilihat Tabel 3.22. Universitas Sumatera Utara Tabel 3.22 Tabel Jadwal Guru Nama Field Jenis Field Ukuran Field Keterangan IDJadwalGuru PK smallint 2 ID Jadwal Guru IDJadwal FK1 smallint 2 ID Jadwal IDKelas FK2 smallint 2 ID Kelas IDHari FK3 smallint 2 ID Hari IDJam FK4 smallint 2 ID Jam IDGuru FK5 smallint 2 ID Guru IDPel FK6 smallint 2 ID Pelajaran

3.5.3 Relasi Tabel

Hari PK IDHari nmHari Jam PK IDJam NmJam Guru PK IDGuru NmGuru JmlPertemuan Status StatusSedia Kelas PK IDKelas NmKelas JumlahLes PK IDLes FK1 IDKelas FK2 IDHari JumlahLes Pelajaran PK IDPel FK1 IDKelas NmPelajaran Jumlah Status StatusPel Ampu PK IDAmpu FK1 IDGuru DAmpu PK IDDAmpu FK1 IDAmpu FK2 IDPel Status KetersediaanHari PK IDSediaHari FK1 IDGuru FK3 IDHari FK2 IDJam Status Bebas JadwalGuru PK IDJadwalGuru FK1 IDJadwal FK2 IDKelas FK3 IDHari FK4 IDJam FK5 IDGuru FK6 IDPel Jadwal PK IDJadwal FK1 IDKelas FK2 IDJam FK3 IDHari Status Gambar 3.5 Skema relasi antar tabel Universitas Sumatera Utara

3.5.4 Perancangan Antar Muka

3.5.4.1 Perancangan Form Menu Utama

Perancangan antar muka menu utama berfungsi sebagai form awal ketika menjalankan program. Gambar 3.6 Perancangan form menu utama

3.5.4.2 Perancangan Form Data Hari

Perancangan antar muka data hari berfungsi sebagai form untuk mengisi data hari yang digunakan dalam proses kegiatan belajar mengajar. Gambar 3.7 Perancangan form data hari TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data Hari ID Hari Nama Hari ID Hari Nama Hari LogIn LogOut File Proses Hasil Bantuan Keluar Gambar Pembuka NamaNim Penulis Logo USU Universitas Sumatera Utara

3.5.4.3 Perancangan Form Data Jam

Perancangan antar muka data jam berfungsi sebagai form untuk mengisi data jam yang digunakan dalam proses kegiatan belajar mengajar. Gambar 3.8 Perancangan form data jam pelajaran

3.5.4.4 Perancangan Form Data Guru

Perancangan antar muka data guru berfungsi sebagai form untuk mengisi data guru yang mengajar dalam proses kegiatan belajar mengajar. Gambar 3.9 Perancangan form data guru TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data Jam ID Jam Nama Jam ID Jam Nama Jam TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data Guru ID Guru Nama Guru Jumlah Pertemuan Jumlah Pertemuan Nama Guru ID Guru Universitas Sumatera Utara

3.5.4.5 Perancangan Form Data Ruangan

Perancangan antar muka data kelas berfungsi sebagai form untuk mengisi data ruangan yang digunakan dalam proses kegiatan belajar mengajar. Gambar 3.10 Perancangan form data ruangan

3.5.4.6 Perancangan Form Data Jumlah Jam Pertemuan per Ruangan

Perancangan antar muka data jumlah jam pertemuan per ruangan berfungsi sebagai form untuk mengisi data jumlah pertemuan dalam setiap hari yang digunakan dalam setiap ruangan. Gambar 3.11 Perancangan form data jumlah pertemuan per ruangan TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data Jumlah Pertemuan per ruangan Jumlah Nama Hari Nama Ruangan ID Nama Hari Jumlah ID Nama Ruangan TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data Ruangan ID Ruangan Nama Ruangan Nama Ruangan Universitas Sumatera Utara

3.5.4.7 Perancangan Form Data Mata Pelajaran

Perancangan antar muka data mata pelajaran berfungsi sebagai form untuk mengisi data mata pelajaran yang digunakan dalam proses kegiatan belajar mengajar. Gambar 3.12 Perancangan form data mata pelajaran

3.5.4.8 Perancangan Form Data Pengampu Mata Pelajaran

Perancangan antar muka data pengampu mata pelajaran berfungsi sebagai form untuk mengisi seluruh data mata pelajaran yang diajarkan oleh setiap guru. Gambar 3.13 Perancangan form data pengampu mata pelajaran Data Pengampu Mata Pelajaran Nama Guru Alokasi waktu mengajar Nama Jumlah ID Pel Daftar Mata Pelajaran Nama Jumlah ID Pel Daftar Guru Pengampu Mata Pelajaran TambahSimpan Cari Hapus Batal Keluar Tombol Nama Jumlah ID Pel Mata Pelajaran yang Diampu Total jumlah waktu mengajar minggu TambahSimpan Cari Ubah Hapus Batal Keluar Tombol ID Mata Pelajaran Nama Pelajaran Alokasi Minggu Data Mata Pelajaran Alokasi Minggu Nama Pelajaran ID Mata Pelajaran Universitas Sumatera Utara

3.5.4.9 Perancangan Form Data Ketersedian Guru Mengajar

Perancangan antar muka data ketersedian guru mengajar berfungsi sebagai form untuk mengisi waktu seluruh waktu yang dapat digunakan oleh guru untuk mengajar. Gambar 3.14 Perancangan form ketersediaan guru mengajar

3.5.4.10 Perancangan Form Data User

Perancangan antar muka data user berfungsi sebagai form untuk mengisi data pengguna dari sistem. Gambar 3.15 Perancangan form data user Data Ketersedian Guru Mengajar Nama Guru TambahSimpan Cari Hapus Batal Keluar Tombol Hari ID Jam Nama Jam Ketersedian Guru Mengajar Nama Pelajaran Jumlah ID Pel Daftar Guru ID Sedia Nama Guru TambahSimpan Cari Ubah Hapus Batal Keluar Tombol Data User ID Kelas Nama Kelas Universitas Sumatera Utara

3.5.4.11 Perancangan Form Proses Penjadwalan

Perancangan antar muka proses penjadwalan berfungsi sebagai form untuk melakukan proses penjadwalan kegiatan belajar mengajar dengan menggunakan algoritma ant colony system. Gambar 3.16 Perancangan form proses penjadwalan

3.5.4.12 Perancangan Menu About

Perancangan antar muka about berfungsi untuk menampilkan nama judul skripsi, nama pembuat program dan juga studi kasus dari penelitian. Gambar 3.17 Perancangan form menu abou About Gambar tampilan awal program Judul Skripsi Nama Pembuat Program Studi Kasus Penelitian Ok Proses Penjadwalan Parameter Intensitas Feromon Pengendali Feromon Tetapan Siklus Pengendali Penguapan Feromon Banyak Semut Banyak Siklus TMax TMin Proses Tombol Clear Keluar Daftar Pelajaran yang sudah terjadwal Daftar Pelajaran yang belum terjadwal Proses Constraint Proses Iterasi Universitas Sumatera Utara BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

2.8 Implementasi Sistem