• Tidak ada hasil yang ditemukan

Penerapan Algoritma Genetika dan Jaringa (1)

N/A
N/A
Protected

Academic year: 2018

Membagikan "Penerapan Algoritma Genetika dan Jaringa (1)"

Copied!
138
0
0

Teks penuh

(1)

SKRIPSI

PENERAPAN ALGORITMA GENETIKA DAN JARINGAN SYARAF TIRUAN DALAM PENJADWALAN MATA KULIAH DI FAKULTAS

MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

IMPLEMENTATION OF GENETIC ALGORITHM AND ARTIFICIAL NEURAL NETWORK IN LECTURE SCHEDULING IN FACULTY OF

MATHEMATICS AND NATURAL SCIENCE UNIVERSITAS GADJAH MADA

EKO BUDI PRASETYO 12/336144/PA/15079

PROGRAM STUDI ILMU KOMPUTER

JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

YOGYAKARTA

(2)

SKRIPSI

PENERAPAN ALGORITMA GENETIKA DAN JARINGAN SYARAF TIRUAN DALAM PENJADWALAN MATA KULIAH DI FAKULTAS

MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

IMPLEMENTATION OF GENETIC ALGORITHM AND ARTIFICIAL NEURAL NETWORK IN LECTURE SCHEDULING IN FACULTY OF

MATHEMATICS AND NATURAL SCIENCE UNIVERSITAS GADJAH MADA

Diajukan untuk memenuhi salah satu syarat memperoleh derajat Sarjana Komputer

EKO BUDI PRASETYO 12/336144/PA/15079

PROGRAM STUDI ILMU KOMPUTER

JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

YOGYAKARTA

(3)

HALAMAN PENGESAHAN

SKRIPSI

PENERAPAN ALGORITMA GENETIKA DAN JARINGAN SYARAF TIRUAN DALAM PENJADWALAN MATA KULIAH DI FAKULTAS

MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

Telah dipersiapkan dan disusun oleh EKO BUDI PRASETYO

12/336144/PA/15079

Telah dipertahankan di depan Tim Penguji pada tanggal 15 Desember 2014

Susunan Tim Penguji

Faizah, S.Kom., M.Kom.

Pembimbing Anifuddin Aziz, S.Si., M.Kom. Penguji I

(4)

iv

PERNYATAAN

Dengan ini saya menyatakan bahwa Skripsi ini tidak terdapat karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan Tinggi, dan sepanjang pengetahuan saya juga tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan dalam daftar pustaka.

Yogyakarta, 21 November 2014

(5)

v

PRAKATA

Segala puji dan syukur kehadirat Allah SWT atas berkah limpahan rahmat dan karunia, serta petunjuk-Nya sehingga tugas akhir berupa penyusunan skripsi ini telah terselesaikan dengan baik.

Banyak arahan, bantuan, serta dukungan dari berbagai pihak yang diberikan kepada penulis dalam rangka penyelesaian skripsi ini. Maka dari itu pada kesempatan ini penulis mengucapkan banyak terima kasih kepada:

1. Ayah, Ibu, dan Adik penulis yang selalu mendoakan dan mendukung perjuangan penulis selama ini.

2. Ibu Sukati selaku nenek penulis yang telah banyak memberikan inspirasi perjuangan bagi penulis.

3. Ibu Faizah, S.Kom., M.Kom., selaku dosen pembimbing yang telah banyak membantu dan memberi bimbingan kepada penulis dalam menyelesaikan skripsi ini.

4. Bapak Anifuddin Aziz, S.Si., M.Kom., selaku dosen penguji I sidang skripsi penulis.

5. Bapak Retantyo Wardoyo, Drs., M.Sc., Ph.D., selaku dosen penguji II sidang skripsi penulis.

6. Bapak Janoe Hendarto, Drs., M.Kom., selaku dosen wali akademik atas bimbingan dan arahan selama penulis menempuh pendidikan S1 Ilmu Komputer.

7. Seluruh dosen pengajar serta civitas akademika di lingkungan fakultas MIPA UGM, khususnya program studi ilmu komputer.

8. Rekan-rekan seperjuangan Ilmu Komputer alih jenis angkatan 2012 (Bayu, Ani, Uzun, Joko) serta teman-teman alih jenis angkatan 2011 dan 2013.

(6)

vi

10.Pihak-pihak lain yang telah membantu dalam penyelesaian skripsi ini dan tidak dapat disebutkan satu-persatu.

Penulis menyadari bahwa dalam skripsi ini masih terdapat kekurangan. Oleh karena itu, saran dan kritik yang bersifat membangun sangat penulis harapkan. Akhir kata, penulis berharap semoga skripsi ini dapat memberikan manfaat bagi pembaca.

Yogyakarta, 22 Desember 2014

(7)

vii

DAFTAR ISI

HALAMAN PENGESAHAN ... iii

PERNYATAAN ... iv

PRAKATA ... v

DAFTAR ISI ... vii

DAFTAR GAMBAR ... xi

DAFTAR TABEL ... xiv

INTISARI ... xvi

ABSTRACT ... xvii

BAB I ... 1

PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 3

1.3 Batasan Masalah ... 3

1.4 Tujuan Penelitian ... 4

1.5 Manfaat Penelitian ... 4

1.6 Sistematika Penulisan ... 4

BAB II ... 6

TINJAUAN PUSTAKA... 6

BAB III... 8

LANDASAN TEORI ... 8

(8)

viii

3.1.1 Skema pengkodean (encoding) ... 9

3.1.2 Nilai fitness ... 10

3.1.3 Seleksi orang tua ... 10

3.1.4 Pindah silang (crossover) ... 12

3.1.5 Mutasi ... 14

3.1.6 Elitisme ... 15

3.1.7 Penggantian populasi ... 15

3.1.8 Kriteria penghentian ... 15

3.2 Jaringan syaraf tiruan ... 16

3.2.1 Sejarah jaringan saraf tiruan ... 16

3.2.2 Model neuron jaringan syaraf tiruan ... 17

3.2.3 Arsitektur jaringan saraf tiruan ... 18

3.2.4 Fungsi aktifasi ... 20

3.2.5 Metode pelatihan ... 21

3.2.6 Backprogation ... 22

3.3 PHP ... 26

3.4 Diagram E-R ... 27

3.7 Data Flow Diagram ... 30

3.7.1 Langkah pengembangan data flow diagram ... 32

BAB IV ... 33

ANALISIS DAN PERANCANGAN ... 33

4.1 Analisis Penjadwalan Mata Kuliah ... 33

4.1.1 Mekanisme penjadwalan mata kuliah di fakultas MIPA UGM... 34

4.1.2 Karakteristik komponen utama penjadwalan mata kuliah ... 35

4.1.3 Aturan umum penjadwalan mata kuliah ... 37

4.1.4 Aturan khusus penjadwalan mata kuliah ... 39

(9)

ix

4.2 Analisis Kebutuhan Aplikasi ... 42

4.2.1 Kebutuhan fungsional ... 42

4.2.2 Kebutuhan non fungsional ... 42

4.3 Perancangan Basis Data ... 42

4.3.1 Perancangan bisnis proses ... 43

4.3.2 Perancangan diagram E-R ... 45

4.4 Perancangan Proses ... 46

4.4.1 Perancangan proses prediksi peserta mata kuliah ... 47

4.4.2 Perancangan proses pembangkitan kelas ... 53

4.4.3 Perancangan proses penjadwalan kelas mata kuliah ... 55

4.4.4 Perancangan Data Flow Diagram (DFD) ... 64

4.5 Perancangan Antarmuka Pengguna... 70

4.5.1 Perancangan halaman menu pengelolaan referensi ... 70

4.5.2 Perancangan halaman menu prediksi jumlah peserta mata kuliah ... 72

4.5.3 Perancangan halaman menu penjadwalan kuliah ... 74

BAB V ... 76

IMPLEMENTASI ... 76

5.1 Pengembangan Aplikasi ... 76

5.2 Implementasi Basis Data ... 76

5.3 Implementasi Proses ... 77

5.3.1 Implementasi proses prediksi peserta ... 77

5.3.2 Implementasi proses pembangkitan kelas ... 83

5.3.3 Implementasi proses pembuatan jadwal ... 85

5.4 Implementasi Antarmuka ... 92

5.4.1 Implementasi halaman pengelolaan ... 92

(10)

x

5.4.3 Implementasi halaman rekapitulasi jumlah peserta mata kuliah ... 94

5.4.4 Implementasi halaman input proses prediksi ... 94

5.4.5 Implementasi halaman prediksi jumlah peserta mata kuliah ... 95

5.4.6 Implementasi halaman input pembangkitan kelas ... 96

5.4.7 Implementasi halaman daftar kelas ... 97

5.4.8 Implementasi halaman input proses penjadwalan... 98

5.4.9 Implementasi halaman jadwal mata kuliah ... 98

BAB VI ... 100

HASIL PENELITIAN DAN PENGUJIAN ... 100

6.1 Statistik Data ... 100

6.2 Hasil Penelitian ... 100

6.2.1 Prediksi jumlah peserta mata kuliah ... 101

6.2.2 Pembangkitan kelas ... 103

6.2.3 Penjadwalan mata kuliah ... 105

6.3 Pengujian ... 106

6.3.1 Pengujian prediksi peserta mata kuliah ... 106

6.3.2 Pengujian penjadwalan mata kuliah ... 110

6.3.3 Pengujian jumlah kelas mata kuliah terhadap waktu penjadwalan ... 116

BAB VII ... 118

KESIMPULAN DAN SARAN ... 118

7.1 Kesimpulan ... 118

7.2 Saran ... 118

(11)

xi

DAFTAR GAMBAR

Gambar 3.1 Contoh representasi real-number encoding ... 9

Gambar 3.2 Contoh representasi discrete decimal encoding ... 10

Gambar 3.3 Contoh representasi binary encoding ... 10

Gambar 3.4 Contoh seleksi roda roulette ... 11

Gambar 3.5 Contoh pindah silang satu titik ... 13

Gambar 3.6 Contoh pindah silang banyak titik ... 13

Gambar 3.7 Contoh pindah silang pola seragam ... 14

Gambar 3.8 Contoh mutasi tingkat kromosom... 14

Gambar 3.9 Contoh mutasi tingkat gen ... 14

Gambar 3.10 Contoh mutasi tingkat bit ... 14

Gambar 3.11 Model neuron jaringan syaraf tiruan (Hajek, 2005) ... 17

Gambar 3.12 Jaringan syaraf dengan lapisan tunggal (Kawaguchi, 2000) ... 19

Gambar 3.13 Jaringan syaraf dengan banyak lapisan (Kawaguchi, 2000) ... 19

Gambar 3.14 Jaringan syaraf dengan lapisan kompetitif (Kusumadewi, 2003) ... 20

Gambar 3.15 Arsitektur jaringan backpropagation ... 23

Gambar 3.16 Server-side processing (Davis dan Philips, 2007) ... 26

Gambar 3.17 Komponen diagram E-R (Pallaw, 2010) ... 27

Gambar 3.18 One-to-one (Earp dkk., 2003) ... 28

Gambar 3.19 One-to-many (Earp dkk., 2003) ... 29

Gambar 3.20 Many-to-one (Earp dkk., 2003) ... 29

Gambar 3.21 Many-to-many (Earp dkk., 2003) ... 30

Gambar 3.22 Simbol dasar data flow diagram (Kendall, 2011) ... 30

Gambar 4.1 Diagram E-R... 46

Gambar 4.2 Tahapan proses utama secara umum ... 47

Gambar 4.3 Struktur neuron ... 48

(12)

xii

Gambar 4.5 Model matriks ruang waktu... 57

Gambar 4.6 Kromosom penjadwalan ... 58

Gambar 4.7 Rancangan pembangkitan populasi ... 59

Gambar 4.8 Contoh proses 2-points crossover... 63

Gambar 4.9 Contoh proses mutasi ... 64

Gambar 4.10 Diagram konteks ... 65

Gambar 4.11 Diagram 0 ... 66

Gambar 4.12 Diagram 1 ... 67

Gambar 4.13 Diagram 2 ... 68

Gambar 4.14 Diagram 3 ... 69

Gambar 4.15 Rancangan halaman utama ... 70

Gambar 4.16 Rancangan halaman view pengelolaan referensi ... 71

Gambar 4.17 Rancangan halaman masukan ... 72

Gambar 4.18 Rancangan konfirmasi hapus... 72

Gambar 4.19 Rancangan halaman pemrosesan prediksi ... 73

Gambar 4.20 Rancangan halaman masukan parameter prediksi ... 74

Gambar 4.21 Rancangan halaman penjadwalan kuliah ... 74

Gambar 4.22 Rancangan halaman masukan parameter penjadwalan kuliah ... 75

Gambar 5.1 Struktur basis data ... 77

Gambar 5.2 Algoritma proses prediksi peserta ... 78

Gambar 5.3 Kode sumber fungsi createWeight() ... 79

Gambar 5.4 Kode sumber fungsi scale()... 80

Gambar 5.5 Kode sumber fungsi feedForward() ... 80

Gambar 5.6 Kode sumber fungsi prosesBackprop() ... 82

Gambar 5.7 Kode sumber fungsi mse() ... 83

Gambar 5.8 Kode sumber unscaleOutput()... 83

Gambar 5.9 Algoritma pembangkitan kelas ... 84

Gambar 5.10 Kode sumber fungsi klasifikasi() ... 85

(13)

xiii

Gambar 5.12 Kode sumber fungsi generate_population() ... 86

Gambar 5.13 Kode sumber fungsi create_ind() ... 87

Gambar 5.14 Kode sumber fungsi update_population() ... 87

Gambar 5.15 Kode sumber fungsi count_fitness() ... 88

Gambar 5.16 Kode sumber fungsi roulette_wheel_selection() ... 89

Gambar 5.17 Kode sumber fungsi crossover()... 90

Gambar 5.18 Kode sumber fungsi mutation() ... 91

Gambar 5.19 Kode sumber fungsi update_selection() ... 92

Gambar 5.20 Halaman pengelolaan ... 93

Gambar 5.21 Halaman pengelolaan mata kuliah ... 93

Gambar 5.22 Halaman daftar rekapitulasi mata kuliah ... 94

Gambar 5.23 Halaman input proses prediksi ... 95

Gambar 5.24 Halaman mata kuliah beserta prediksi jumlah peserta ... 96

Gambar 5.25 Halaman input pembangkitan kelas ... 97

Gambar 5.26 Halaman daftar kelas... 97

Gambar 5.27 Halaman input proses penjadwalan ... 98

Gambar 5.28 Halaman jadwal mata kuliah ... 99

Gambar 6.1 Perubahan MSE pada pengujian learningrate... 107

Gambar 6.2 Perubahan MSE pada pengujian treshold ... 108

Gambar 6.3 Perubahan MSE pada pengujian jumlah epoch ... 110

Gambar 6.4 Perubahan nilai fitness pada pengujian probabilitas crossover ... 111

Gambar 6.5 Perubahan nilai fitness pada pengujian probabilitas mutasi ... 113

Gambar 6.6 Perubahan nilai fitness pada pengujian populasi ... 114

Gambar 6.7 Perubahan nilai fitness pada pengujian generasi ... 115

(14)

xiv

DAFTAR TABEL

Tabel 4.1 Daftar jurusan dan program studi S1 di Fakultas MIPA UGM ... 33

Tabel 4.2 Contoh daftar mata kuliah ... 35

Tabel 4.3 Contoh dosen dengan mata kuliah yang diampu ... 36

Tabel 4.4 Contoh daftar kelas mata kuliah ... 36

Tabel 4.5 Contoh daftar ruang dan kapasitas maksimalnya ... 36

Tabel 4.6 Daftar sesi kuliah ... 37

Tabel 4.7 Contoh jadwal mata kuliah ... 37

Tabel 4.8 Kardinalitas pada entitas ... 45

Tabel 4.9 Daftar waktu kuliah dalam seminggu ... 57

Tabel 4.10 Keterangan label pada Data Flow Diagram ... 65

Tabel 6.1 Statistik data ... 100

Tabel 6.2 Gambaran data rekapitulasi mata kuliah pada 14 data pertama ... 101

Tabel 6.3 Gambaran data hasil prediksi menggunakan data masukkan proses pelatihan pada 14 data pertama ... 102

Tabel 6.4 Gambaran hasil prediksi jumlah peserta pada semester ganjil tahun 2014 pada 14 data pertama ... 102

Tabel 6.5 Representasi daftar mata kuliah dan jumlah peserta prediksi pada 14 data pertama ... 103

Tabel 6.6 Konfigurasi global pembangkitan kelas oleh fakultas MIPA ... 104

Tabel 6.7 Gambaran hasil kelas yang dibangkitkan pada 29 data pertama ... 104

Tabel 6.8 Gambaran hasil jadwal kelas mata kuliah untuk semester ganjil tahun 2014 pada 29 data pertama ... 105

Tabel 6.9 Nilai rata-rata MSE pada pengujian learningrate ... 107

Tabel 6.10 Nilai rata-rata MSE pada pengujian treshold ... 108

Tabel 6.11 Nilai rata-rata MSE pada pengujian jumlah epoch ... 109

Tabel 6.12 Nilai rata-rata fitness pada pengujian probabilitas crossover ... 111

(15)

xv

(16)

xvi

INTISARI

Penerapan Algoritma Genetika dan Jaringan Syaraf Tiruan dalam Penjadwalan Mata Kuliah di Fakultas Matematika dan

Ilmu Pengetahuan Alam Universitas Gadjah Mada

Eko Budi Prasetyo 12/336144/PA/15079

Pembuatan jadwal mata kuliah di fakultas Matematika dan Ilmu Pengetahuan Alam (MIPA) Universitas Gadjah Mada (UGM) biasanya dilakukan oleh fakultas melalui perwakilan masing-masing program studi. Selama ini proses ini memakan waktu yang cukup lama dikarenakan setelah jadwal terbentuk fakultas masih harus melakukan sinkronisasi terhadap semua jadwal yang diterima. Selain itu, keterbatasan ruang dan waktu dalam penjadwalan dapat memungkinkan terjadinya tumbukan mata kuliah dan ketidaksesuaian antara kapasitas ruang dan jumlah mahasiswa yang mengambil mata kuliah tersebut.

Salah satu cara untuk mengatasi masalah penjadwalan adalah dengan menggunakan algoritma genetika dan jaringan syaraf tiruan. Jaringan syaraf tiruan melalui metode backpropagation dapat digunakan dalam prediksi jumlah peserta mata kuliah yang dipakai untuk penentuan ruang. Algoritma genetika akan digunakan untuk menentukan solusi optimal dari beberapa solusi jadwal yang dihasilkan.

Penelitian ini mengembangkan aplikasi berbasis web yang mampu melakukan prediksi jumlah peserta mata kuliah yang berperan dalam penentuan ruang mata kuliah dan mampu untuk melakukan penjadwalan mata kuliah secara “satu pintu”. Penerapan algoritma genetika dan jaringan syaraf tiruan dengan parameter yang tepat dapat menghasilkan jadwal mata kuliah yang optimal. Selain itu waktu yang dibutuhkan dalam proses penjadwalan menjadi lebih cepat.

(17)

xvii

ABSTRACT

Implementation of Genetic Algorithm and Artificial Neural Network in Lecture Scheduling in Faculty of Mathematics and Natural Science

Universitas Gadjah Mada

Eko Budi Prasetyo 12/336144/PA/15079

Lecture scheduling in faculty of Matematika dan Ilmu Pengetahuan Alam (MIPA) Universitas Gadjah Mada (UGM) is usually performed by faculty through delegation of each study program. So far its process takes a long time because after the schedule was established the faculty still need to synchronize for all schedules that have been given. Moreover, the limitations of time and room in scheduling can allow collision of lecture and incompatibility between the room capacity and the number of student who take the lecture.

One of the way to get over the scheduling problem is by using genetic algorithm and artificial neural network. Artificial neural network through

backpropagation method can be used in the prediction of the number of lecture

participants that is used for the determination of room. Genetic algorithms will be used to determine the optimal solution of some generated solutions schedule.

This research develop an web based application which capable to predict the number of lecture participants that have a role in determining lecture room and capable to scheduling the lecture in “one door”. The implementation of genetic algorithm and artificial neural network with appropriate parameters can produce optimal lecture schedule. Furthermore time required in scheduling process become faster.

(18)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Algoritma adalah serangkaian langkah-langkah untuk menyelesaikan suatu permasalahan. Algoritma genetika merupakan algoritma yang digunakan dalam teknik pencarian evolutionary computation yang menemukan perkiraan solusi untuk optimasi dan masalah pencarian. Algoritma genetika termasuk algoritma heuristik (solusi tidak harus tepat namun mendekati) dan stokastik (menerapkan metode pengacakan pada proses pembangkitan individu dan seleksinya). Algoritma genetika sendiri telah banyak digunakan untuk permasalahan yang sulit (misalkan pada permasalahan NP-complete), untuk pembelajaran mesin dan juga untuk mengembangkan program sederhana (Deepa dkk., 2007). Salah satu penerapan untuk permasalahan yang sulit yaitu dalam permasalahan penjadwalan mata kuliah pada fakultas di perguruan tinggi.

Perguruan tinggi terdiri dari banyak fakultas yang di dalamnya terdapat berbagai macam program studi dan disiplin ilmu. Dalam pelaksanaan kegiatan perkuliahan, dibutuhkan banyak sumber daya pengajaran terutama dosen, waktu, dan ruang. Namun dalam kenyataannya jumlah sumber daya yang ada tersebut jumlahnya sangat terbatas. Oleh karena itu, untuk memanfaatkan sumber daya tersebut dengan optimal dibutuhkan penjadwalan yang baik sesuai dengan aturan atau batasan yang telah ditetapkan agar tidak terjadi permasalahan yang menyebabkan jadwal tidak dapat dilaksanakan. Hal ini menyebabkan pembuatan jadwal mata kuliah merupakan masalah klasik yang sulit untuk diselesaikan (Weare dkk., 1995).

(19)

2 Kartu Rencana Studi (KRS) di masing-masing program studi setiap semester. Proses pertama yang dilakukan adalah dengan membuat suatu rancangan jadwal yang mengalokasikan ruang dari blok program studi yang disediakan oleh fakultas dan juga alokasi dosen untuk mengampu mata kuliah yang terselenggara sesuai dengan kurikulum yang berlaku. Kemudian ditentukan ruang untuk masing-masing mata kuliah dengan cara melakukan perkiraan jumlah peserta berdasarkan jumlah mahasiswa yang mengambil mata kuliah yang sama pada tahun lalu. Hasil jadwal dari masing-masing program studi lalu dikumpulkan dan diverifikasi melalui rapat pada jurusan yang kemudian diserahkan kepada sekretariat fakultas MIPA UGM.

Hasil jadwal dari masing-masing jurusan yang diserahkan kepada sekretariat MIPA UGM biasanya belum sepenuhnya baik, karena ada kemungkinan kapasitas ruang yang besar dialokasikan untuk mahasiswa yang jumlahnya sedikit. Maka dari itu, setelah jadwal selesai dibuat biasanya akan diproses ulang oleh sekretariat MIPA UGM dengan melakukan penukaran ruang pada kelas mata kuliah agar sisa tempat duduk yang tidak terpakai menjadi seminimal mungkin. Permasalahan lain pada penjadwalan muncul pada saat pengisian KRS, yaitu ketika mahasiswa akan mengulang mata kuliah pilihan di semester tahun lalu tetapi tidak dapat dilakukan karena terjadi tumbukan waktu dengan mata kuliah wajib pada paket semester dan program studi yang sama.

(20)

3 jadwal yang nantinya akan digunakan pada masa pengisian KRS di fakultas MIPA UGM.

1.2 Perumusan Masalah

Berdasarkan permasalahan yang telah dipaparkan di latar belakang di atas maka objek penelitian ini adalah bagaimana menyelesaikan permasalahan pembuatan jadwal mata kuliah secara kolektif sesuai aturan penjadwalan yang digunakan pada masa pengisian KRS di fakultas MIPA UGM dengan menggunakan algoritma genetika. Selain itu penelitian ini juga melakukan prediksi untuk jumlah peserta mata kuliah guna menentukan ruang yang digunakan dalam penjadwalan sesuai dengan kriteria-kriteria yang telah ditentukan dengan mengimplementasikan jaringan syaraf tiruan.

1.3 Batasan Masalah

Adapun batasan masalah dalam penelitian ini agar lebih mudah dipahami dan tidak terlalu luas dalam penulisannya yaitu sebagai berikut:

1. Algoritma genetika digunakan pada proses penjadwalan mata kuliah.

2. Jaringan syaraf tiruan digunakan dalam proses prediksi jumlah peserta mata kuliah.

3. Prediksi dilakukan dengan menggunakan data pelatihan berupa data mata kuliah dari tahun 2008 hingga tahun 2013.

4. Penjadwalan yang dilakukan terbatas dan tidak melibatkan komponen mahasiswa.

5. Diasumsikan setiap kelas mata kuliah paralel diampu oleh dosen yang berbeda.

6. Aplikasi yang dikembangkan berbasis web menggunakan framework

(21)

4 8. Penjadwalan difokuskan pada mata kuliah jenjang S1 yang menggunakan

ruang di fakultas MIPA UGM.

9. Sistem penjadwalan mata kuliah dibuat untuk menghasilkan jadwal dalam waktu satu semester.

1.4 Tujuan Penelitian

Tujuan penelitian yang dilakukan adalah mengembangkan aplikasi dengan menerapkan algoritma genetika yang mampu melakukan penjadwalan mata kuliah dan menghasilkan jadwal mata kuliah yang digunakan pada masa pengisian KRS di fakultas MIPA UGM dengan pemilihan ruang berdasarkan jumlah peserta yang dihasilkan dari proses prediksi dengan menerapkan jaringan syaraf tiruan.

1.5 Manfaat Penelitian

Dengan adanya penelitian ini diharapkan mampu memberikan manfaat sebagai berikut:

1. Melakukan otomatisasi penjadwalan mata kuliah secara kolektif di fakultas MIPA UGM.

2. Mempercepat proses penjadwalan yang dilakukan di fakultas MIPA UGM. 1.6 Sistematika Penulisan

Sistematika dalam penulisan tugas akhir ini akan terdiri dari tujuh bab, yaitu:

BAB I PENDAHULUAN

Berisi mengenai latar belakang, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

(22)

5 penjelasan yang membedakan penelitian ini dengan penelitian sejenis yang dilakukan sebelumnya.

BAB III LANDASAN TEORI

Bab ini berisi teori-teori yang menjadi landasan dalam penulisan penelitian ini yang menyangkut kajian ilmu yang terlibat.

BAB IV ANALISIS DAN PERANCANGAN

Bab ini berisi uraian tentang hasil analisis yang dilakukan serta perancangan sistem yang akan dikembangkan.

BAB V IMPLEMENTASI

Bab ini berisi hasil penerapan dari sistem yang telah dibangun berdasarkan analisis dan perancangan sistem yang dilakukan sebelumnya.

BAB VI HASIL PENELITIAN DAN PENGUJIAN

Pada bab ini berisi pembahasan mengenai kevalidan sistem dalam menghasilkan keluaran dan hasil pengujian terhadap sistem yang telah dibangun.

BAB VII KESIMPULAN DAN SARAN

(23)

6

BAB II

TINJAUAN PUSTAKA

Adamanti (2002) mencoba memecahkan masalah penjadwalan matakuliah dengan menggunakan algoritma genetika. Pemodelan kromosom dilakukan dengan membaginya menjadi dua fase. Fase pertama menempatkan mata kuliah pada slot waktu yang tersedia. Kemudian fase kedua menempatkan mata kuliah yang telah mendapatkan slot waktu pada ruangan yang sesuai. Fase pertama diselesaikan dengan algoritma genetika, sedangkan fase ke dua diselesaikan dengan pengacakan yang menerapkan prinsip semua kelas mata kuliah mendapatkan ruang sesuai dengan kurang dari atau sama dengan kapasitasnya. Penelitian diimplementasikan dengan aplikasi berbasis desktop dan diklaim mampu menghasilkan jadwal mata kuliah yang memenuhi aturan-aturan yang sudah ditentukan. Namun tidak semua aturan dapat terpenuhi dalam pembuatan jadwal mata kuliah. Pada penelitian terkait, penjadwalan ruang dilakukan setelah diketahui peserta masing-masing mata kuliah atau setelah mahasiswa selesai mengisi KRS. Selain itu aturan yang dipakai dalam penjadwalan ketika penelitian sudah tidak relevan lagi dengan aturan yang ada sekarang di fakultas MIPA UGM. Penelitian yang sama dengan metode yang berbeda dilakukan oleh Anggamardika (2008). Penelitiannya mencoba membangun system untuk menyelesaikan masalah penjadwalan mata kuliah di fakultas MIPA UGM dengan menggunakan pendekatan Artificial Immune System yang merupakan metode yang terinspirasi dari cara kerja system kekebalan tubuh mamalia. Sistem yang dihasilkan diklaim mampu mengoptimalisasi dan mengotomatisasi pembuatan jadwal mata kuliah untuk seluruh program studi S1 reguler sekaligus dalam satu kali penjadwalan berdasarkan aturan-aturan yang sudah ditentukan.

(24)

7 genetika. Berbeda dengan Adamanti, Aydin melakukan penjadwalan dengan satu fase, yang mengalokasikan kelas mata kuliah ke slot-slot dimensi ruang dan waktu dari sumber daya yang diketahui. Penjadwalan dilakukan pada periode setelah mahasiswa melakukan pengisian KRS sehingga jumlah peserta mata kuliah telah diketahui secara pasti.

Rahayu (2010) membangun sistem tentang penjadwalan praktikum dengan menggunakan algoritma genetika. Sistem yang dibangun mampu mengotomatisasi pembuatan jadwal praktikum dalam satu kali penjadwalan. Pada penelitian yang dilakukan menghasilkan jadwal yang mengalokasikan kelas praktikum ke dalam slot waktu dan mengabaikan penjadwalan ruang.

(25)

8

BAB III

LANDASAN TEORI

3.1 Algoritma Genetika

Algoritma genetika adalah algoritma pencarian yang didasarkan pada mekanisme seleksi alamiah dan genetika alamiah. Pada awalnya algoritma genetika memang digunakan sebagai algoritma pencarian parameter-parameter optimal. Namun dalam perkembangannya, algoritma genetika bisa diaplikasikan untuk berbagai masalah lain seperti pembelajaran, peramalan, pemrograman otomatis, dan sebagainya. Pada bidang soft computing, algoritma genetika banyak digunakan untuk mendapatkan nilai-nilai parameter yang optimal pada jaringan syaraf tiruan maupun sistem fuzzy (Suyanto, 2011).

Algoritma genetika adalah optimasi dan teknik pencarian berdasarkan prinsip-prinsip genetika dan seleksi alam. Algoritma genetika memungkinkan populasi yang terdiri dari banyak individu untuk dapat berkembang berdasarkan aturan seleksi tertentu ke keadaan fitness maksimal (fungsi biaya minimal). Metode ini dikembangkan oleh John Holland (1975) selama tahun 1960-an dan 1970-an dan akhirnya dipopulerkan oleh salah seorang muridnya, David Goldberg (Haupt, 2004).

Suyanto (2011) mengemukakan terdapat beberapa komponen dalam algoritma genetika, yaitu:

1. Skema pengkodean, merupakan hasil konversi suatu permasalahan ke dalam bentuk individu yang diwakili oleh satu atau lebih kromosom dengan kode tertentu.

(26)

9 3. Seleksi orang tua, merupakan proses pemilihan dua individu sebagai orang tua yang biasanya dilakukan secara proporsional berdasarkan nilai-nilai fitness -nya.

4. Pindah silang (crossover), merupakan proses kombinasi pewarisan gen-gen dari induknya yang menghasilkan susunan kromosom yang baru.

5. Mutasi direpresentasikan sebagai suatu proses berubahnya satu atau lebih nilai gen dalam kromosom dengan suatu nilai acak.

6. Elitisme, merupakan proses yang berfungsi menyalin individu yang bernilai

fitness tertinggi agar tidak hilang selama proses evolusi akibat seleksi individu

secara acak. Prosedur ini digunakan pada algoritma genetika yang berjenis

generationalreplacement.

7. Penggantian populasi, pada algoritma genetika berjenis generational

replacement, sejumlah individu pada suatu generasi digantikan sejumlah

individu baru hasil pindah silang dan mutasi.

8. Kriteria penghentian, merupakan kriteria yang digunakan untuk menghentikan proses iterasi dalam evolusi.

3.1.1 Skema pengkodean (encoding)

Algoritma genetika merepresentasikan gen (buatan), secara umum, sebagai bilangan real, desimal atau biner, yaitu:

1. Real-number encoding. Pada skema ini, nilai gen berada dalam interval [0,R],

dimana R adalah bilangan real positif dan biasanya R = 1. Contoh representasi

real-number encoding ditunjukkan pada gambar 3.1.

Kromosom A 2 1 3 5 6 8 7 4 9 Kromosom B 6 1 3 4 2 9 5 7 8

(27)

10

2. Discrete decimal encoding. Pada skema ini, setiap gen bisa berupa deretan

bilangan bulat dalam interval [0,9]. Contoh representasi discrete decimal

encoding ditunjukkan pada gambar 3.2.

Kromosom A 0.122 1.456 5.333 1.925 Kromosom B 1.456 1.925 5.333 0.122

Gambar 3.2 Contoh representasi discrete decimal encoding

3. Binary encoding. Setiap gen bisa berupa deretan dengan nilai 0 atau 1. Contoh

representasi binary encoding ditunjukkan pada gambar 3.3. Kromosom A 0 1 0 1 0 0 0 0 1 Kromosom B 1 0 1 0 0 1 0 1 0

Gambar 3.3 Contoh representasi binary encoding 3.1.2 Nilai fitness

Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai ukuran nilai fitness-nya. Dalam proses evolusi, individu yang survive dari proses seleksi alam akan mempunyai kesempatan untuk bereproduksi kembali. Dengan demikian kemampuan individu untuk dapat beradaptasi dan bertahan hidup untuk selamat sangat penting. Dalam terminologi algoritma genetika kemampuan suatu individu atau kromosom untuk bertahan dapat diukur berdasarkan nilai fitness-nya. Semakin baik nilai fitness suatu kromosom maka akan semakin baik peluang kromosom tersebut untuk bertahan hidup dan ikut dalam proses reproduksi. Nilai

fitness suatu kromosom dapat dihitung dengan menggunakan fungsi objektif

(Goldberg, 1989). 3.1.3 Seleksi orang tua

(28)

11 1. Seleksi roda roulette (roulette wheel selection)

Pada metode seleksi ini, parent dipilih berdasarkan nilai fitness-nya, semakin baik nilai fitness-nya maka semakin besar kemungkinannya untuk terpilih. Contoh probabilitas terpilihnya suatu kromosom dalam roda roulette

ditunjukkan pada gambar 3.4.

Gambar 3.4 Contoh seleksi roda roulette

Skema seleksi dengan roda roulette ini adalah berdasarkan skala fitness

(fitness scale). Karena terpilihnya suatu kromosom dalam populasi untuk dapat

berkembang biak adalah sebanding dengan fitness-nya, maka akan terjadi semacam trade off antara ekplorasi dan ekploitasi jika terdapat satu atau kelompok kecil kromosom yang mempunyai fitness yang baik yaitu antara mengeksplorasi bagian-bagian baru dalam ruang pencarian, atau terus mengeksplotasi informasi yang telah diperoleh. Kecenderungan kromosom yang baik untuk terpelihara terus dapat membawa ke hasil optimum lokal atau konvergensi dini (premature

convergence) ke suatu hasil yang bukan optimum global. Sebaliknya jika semua

kromosom dalam populasi mempunyai fitness yang hampir sama, maka seleksi ini akan menjadi seleksi yang bersifat acak.

2. Seleksi rangking (rank selection)

(29)

12 Seleksi ranking terlebih dahulu merangking atau mengurutkan kromosom di dalam populasi berdasarkan fitness-nya kemudian memberi nilai fitness baru berdasarkan urutannya. Kromosom dengan fitness terburuk akan memiliki fitness

baru bernilai 1, terburuk kedua bernilai 2 dan seterusnya, sehingga kromosom yang memiliki fitness terbaik akan memiliki nilai fitness N, dimana N adalah jumlah kromosom di dalam populasi.

Setelah proses pengurutan dan pemberian nilai fitness baru, setiap kromosom akan memiliki kesempatan yang lebih adil untuk terpilih. Namun metode ini dapat menyebabkan konvergensi menjadi lambat, karena kromosom terbaik tidak terlalu berbeda dengan yang lainnya.

3. Seleksi turnamen (tournament selection)

Seleksi turnamen merupakan variasi antara seleksi roda roulette dan seleksi rangking. Sejumlah k kromosom tertentu dari populasi beranggota n kromosom (k ≤ n) dipilih secara acak dengan probabilitas yang sama. Dari k kromosom yang terpilih kemudian akan dipilih satu kromosom dengan fitness

terbaik, yang diperoleh dari hasil pengurutan rangking fitness semua kromosom terpilih. Perbedaannya dengan seleksi roda roulette adalah pemilihan kromosom yang akan digunakan untuk berkembang biak tidak berdasarkan skala fitness dari populasi.

3.1.4 Pindah silang (crossover)

(30)

13 pindah silang satu titik, pindah silang banyak titik, dan pindah silang pola seragam.

1. Pindah silang satu titik (single-point crossover)

Pindah silang ini merupakan skema pindah silang yang paling sederhana. Titik pindah silang hanya satu dengan posisi yang dibangkitkan secara acak. Contoh pindah silang satu titik ditunjukkan pada gambar 3.5.

Gambar 3.5 Contoh pindah silang satu titik 2. Pindah silang banyak titik (multi-point crossover)

Pindah silang ini menggunakan banyak titik untuk pertukarannya. Contoh pindah silang banyak titik ditunjukkan pada gambar 3.6.

Gambar 3.6 Contoh pindah silang banyak titik 3. Pindah silang pola seragam (uniform crossover)

(31)

14 Gambar 3.7 Contoh pindah silang pola seragam

3.1.5 Mutasi

Mutasi diperlukan untuk mengembalikan informasi bit yang hilang akibat

crossover. Mutasi diterapkan dengan probabilitas yang sangat kecil. Jika mutasi

dilakukan terlalu sering, maka akan menghasilkan individu yang lemah karena konfigutasi gen pada individu yang unggul akan dirusak. Mutasi dapat dibedakan menjadi tiga bagian:

1. Mutasi pada tingkat kromosom, yakni semua gen dalam kromosom berubah seperti yang ditunjukkan pada gambar 3.8.

Gambar 3.8 Contoh mutasi tingkat kromosom

2. Mutasi pada tingkat gen, yakni semua bit dalam satu gen akan berubah seperti yang ditunjukkan pada gambar 3.9.

Gambar 3.9 Contoh mutasi tingkat gen

3. Mutasi pada tingkat bit, yakni hanya satu bit yang akan berubah seperti yang ditunjukkan pada gambar 3.10.

(32)

15 3.1.6 Elitisme

Karena seleksi dilakukan secara acak, maka tidak ada jaminan bahwa suatu individu bernilai fitness tertinggi akan selalu dipilih. Kalaupun individu bernilai fitness tertinggi terpilih, mungkin saja individu tersebut akan rusak karena proses pindah silang. Untuk menjaga agar individu bernilai fitness tertinggi tersebut tidak hilang selama proses evolusi, perlu dibuat satu atau dua salinannya. Prosedur ini dikenal dengan elitisme. Prosedur ini hanya digunakan pada algoritma genetika berjenis generational replacement.

3.1.7 Penggantian populasi

Pada algoritma genetika berjenis generational replacement, N individu pada suatu generasi digantikan sekaligus oleh N individu baru hasil pindah silang dan mutasi. Untuk mempertahankan individu terbaik, diperlukan skema elitisme. 3.1.8 Kriteria penghentian

Terdapat berbagai macam kriteria penghentian yang bisa digunakan, tiga diantaranya adalah:

1. Memberikan batasan jumlah iterasi. Apabila batas iterasi tersebut dicapai, iterasi dihentikan dan laporkan individu bernilai fitness tertinggi sebagai solusi terbaik.

2. Memberikan batasan waktu proses algoritma genetika. Kriteria ini digunakan pada sistem-sistem waktu nyata (real time system), dimana solusi harus ditemukan paling lama, misalkan 12 jam. Dengan demikian, algoritma genetika bisa dihentikan, ketika proses sudah berlangsung hampir 12 jam. 3. Menghitung kegagalan penggantian anggota populasi yang terjadi secara

(33)

16 3.2 Jaringan syaraf tiruan

Jaringan syaraf tiruan adalah jaringan komputasi yang mencoba untuk mensimulasikan secara kasar jaringan sel syaraf (neuron) biologis sistem syaraf pusat yang terdapat pada manusia atau hewan. Simulasi ini diambil dari ilmu neurofisiologis tentang neuron biologis dan jaringan neuron biologis. Simulasi ini juga berbeda dari mesin komputasi tradisional (digital atau analog) yang berbasis pada pelayanan atau penggantian, yakni meningkatkan atau mempercepat komputasi otak manusia tanpa berkaitan dengan pengelolaan elemen komputasi dan jaringannya. Sehingga dapat dikatakan bahwa simulasi yang diberikan oleh jaringan syaraf tiruan masih bersifat kasar (Graupe, 1997).

3.2.1 Sejarah jaringan saraf tiruan

Mulai dari ditemukannya, jaringan syaraf tiruan telah mengalami tahap-tahap perkembangan (Kusumadewi, 2003). Dimulai tahun 1940-an, para ilmuwan menemukan bahwa psikologi dari otak sama dengan mode pemrosesan yang dilakukan oleh peralatan komputer. McCulloch dan Pitts (1943) merancang model formal yang pertama kali sebagai perhitungan dasar neuron. Hebb (1949) menyatakan bahwa informasi dapat disimpan dalam koneksi-koneksi dan mengusulkan adanya skema pembelajaran untuk memperbaiki koneksi-koneksi antar neuron tersebut. Farley dan Clark (1954) menginisiasi model-model untuk relasi adaptif stimulus-respon dalam jaringan random. Rosenblatt (1958) mengembangkan kosep dasar tentang perceptron untuk klasifikasi pola. Widrow dan Hoff (1960) mengembangkan adaline untuk kendali adaptif dan pencocokan pola yang dilatih dengan aturan pembelajaran Least Mean Square (LMS). Werbos (1974) memperkenalkan algoritma backpropagation untuk melatih perceptron

(34)

17 diinspirasi oleh perkembangan psikologi. Bersama Carpenter, mereka mengenalkan sejumlah arsitektur jaringan, antara lain Adaptive Resonance Theory

(ART), ART2, dan ART3. Hopfield (1982) mengembangkan jaringan syaraf

reccurent yang dapat digunakan untuk menyimpan informasi dan optimasi. Pada

tahun 1985, algoritma pembelajaran dengan menggunakan mesin Boltzmann yang menggunakan model jaringan syaraf probabilistik mulai dikembangkan. Kosko (1987) mengembangkan jaringan Adaptive Bidirectional Associative Memory

(ABAM). Pada tahun 1988, mulai dikembangkan fungsi radial basis. 3.2.2 Model neuron jaringan syaraf tiruan

Neuron adalah unit pemrosesan informasi yang penting untuk pengoperasian jaringan saraf. Model neuron yang terdapat pada jaringan syaraf tiruan dapat ditunjukkan seperti pada gambar 3.11.

Gambar 3.11 Model neuron jaringan syaraf tiruan (Hajek, 2005) Hajek (2005) mengidentifikasi tiga elemen dasar dari model neuron: 1. Kumpulan sinapsis masing-masing ditandai dengan bobot yang memiliki nilai.

(35)

18 pertama mengacu pada neuron yang bersangkutan dan subskrip kedua mengacu pada akhir masukan dari tempat bobot sinapsis berasal. Bobot w

positif jika sinapsis terkait merupakan perangsangan, dan bernilai negatif jika sinapsis berupa penghambatan.

2. Sebuah adder (summing function) berfungsi untuk menjumlahkan sinyal-sinyal

input, yang berasal dari sinapsis masing-masing dari neuron.

3. Fungsi aktivasi untuk membatasi simpangan terjauh pada suatu output dari neuron. Fungsi aktivasi juga disebut dalam literatur sebagai fungsi squashing.

Dalam hal ini, squashes (batas) rentang simpangan yang diizinkan dari sinyal

output untuk beberapa nilai terbatas. Biasanya, normalisasi rentang simpangan

output dari neuron ditulis sebagai satuan interval tertutup [0, 1] atau [-1, 1].

3.2.3 Arsitektur jaringan saraf tiruan

Ada beberapa arsitektur jaringan syaraf tiruan (Kusumadewi, 2003), antara lain:

1. Jaringan dengan lapisan tunggal (single layer net)

Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot-bobot terhubung. Jaringan ini hanya menerima input kemudian secara langsung akan mengolahnya menjadi output tanpa harus melalui lapisan tersembunyi . Lapisan

input memiliki N neuron, yaitu X1, X2, X3, hingga Xn. Pada lapisan output

terdapat N neuron yaitu Y1, Y2 hingga Yn neuron-neuron pada kedua lapisan saling berhubungan. Seberapa besar hubungan antara 2 neuron ditentukan oleh bobot yang bersesuaian. Semua unit input akan dihubungkan dengan setiap unit

(36)

19 Gambar 3.12 Jaringan syaraf dengan lapisan tunggal (Kawaguchi, 2000) 2. Jaringan dengan banyak lapisan (multilayer net)

Jaringan dengan banyak lapisan memiliki 1 atau lebih lapisan yang terletak diantara lapisan input dan lapisan output (memiliki 1 atau lebih lapisan

tersembunyi). Umumnya, ada lapisan bobot-bobot yang terletak antara 2 lapisan yang bersebelahan. Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang lebih sulit daripada lapisan dengan lapisan tunggal, tentu saja dengan pembelajaran yang lebih rumit. Namun demikian, pada banyak kasus, pembelajaran pada jaringan dengan banyak lapisan ini lebih sukses dalam

menyelesaikan masalah. Jaringan syaraf dengan banyak lapisan ditunjukkan pada gambar 3.13.

(37)

20 Umumnya, hubungan antar neuron pada lapisan kompetitif ini tidak diperlihatkan pada diagram arsitektur. Gambar di bawah ini menunjukkan salah satu contoh arsitektur jaringan dengan lapisan kompetitif yang memiliki bobot –ƞ. Jaringan syaraf dengan lapisan kompetitif ditunjukkan pada gambar 3.14.

Gambar 3.14 Jaringan syaraf dengan lapisan kompetitif (Kusumadewi, 2003) 3.2.4 Fungsi aktifasi

Dalam jaringan syaraf tiruan, fungsi aktifasi digunakan untuk menentukan keluaran satu neuron. Argumen fungsi aktifasi adalah set masukkan (kombinasi linier masukan dan bobotnya) (Siang, 2004).

Jika net = Σx w

Maka fungsi aktifasinya adalah seperti yang ditunjukan pada persamaan 3.1.

f(net) = f(Σx w) (3.1)

Beberapa fungsi aktifasi yang digunakan adalah (Jon, 2004):

1. Fungsi threshold (batas ambang) ditunjukan pada persamaan 3.2.

( ) = 1,0, (3.2)

Fungsi treshold merupakan fungsi threshold biner. Untuk kasus bilangan bipolar, maka angka 0 diganti dengan angka -1. Sehingga persamaan di atas diubah ditunjukan pada persamaan 3.3.

(38)

21 2. Fungsi sigmoid ditunjukan pada persamaan 3.4 dan fungsi turunannya

ditunjukkan pada persamaan 3.5.

( ) = (3.4)

′( ) = ( )(1 − ( )) (3.5)

3. Fungsi identitas ditunjukan pada persamaan 3.6.

( ) = (3.6)

Digunakan jika keluaran yang dihasilkan oleh jaringan syaraf tiruan merupakan sembarang bilangan riil (bukan hanya pada range [0,1] atau [1,-1]).

3.2.5 Metode pelatihan

Cara berlangsungnya pembelajaran atau pelatihan jaringan syaraf tiruan dikelompokkan menjadi 3 yaitu (Puspitaningrum, 2006):

a. Supervised learning (pembelajaran terawasi).

Pada metode ini, setiap pola yang diberikan kedalam jaringan syaraf tiruan telah diketahui output-nya. Selisih antara pola output aktual (output yang dihasilkan) dengan pola output yang dikehendaki (output target) yang disebut error

digunakan untuk mengoreksi bobot jaringan syaraf tiruan sehingga jaringan syaraf tiruan mampu menghasilkan output sedekat mungkin dengan pola target yang telah diketahui oleh jaringan syaraf tiruan. Contoh algoritma jaringan syaraf tiruan yang menggunakan metode ini adalah hebbian, perceptron, adaline,

boltzman, hopfield, dan backpropagation.

b. Unsupervised learning (pembelajaran tak terawasi).

(39)

22 mengelompokkan unit-unit yang hampir sama dalam suatu area tertentu. Pembelajaran ini biasanya sangat cocok untuk klasifikasi pola. Contoh algoritma jaringan syaraf tiruan yang menggunakan metode ini adalah competitive, hebbian,

kohonen, LVQ (Learning Vector Quantization), dan neocognitron.

c. Hybrid learning (pembelajaran hibrida).

Merupakan kombinasi dari metode pembelajaran supervised learning dan

unsupervised learning, sebagian dari bobot-bobotnya ditentukan melalui

pembelajaran terawasi dan sebagian lainnya melalui pembelajaran tak terawasi. Contoh algoritma jaringan syaraf tiruan yang menggunakan metode ini adalah algoritma RBF.

3.2.6 Backprogation

Backpropagation merupakan algoritma pembelajaran yang terawasi dan

(40)

23 Gambar 3.15 Arsitektur jaringan backpropagation

Algoritma backpropagation (Puspitaningrum, 2006):

a) Inisialisasi bobot (ambil bobot awal dengan nilai random yang cukup kecil). b) Kerjakan langkah-langkah berikut selama kondisi berhenti bernilai false:

1. Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran, kerjakan:

Propagasi maju:

a. Tiap-tiap unit input (Xi, i=1,2,3,...,n) menerima sinyal xi dan meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di atasnya (lapisan tersembunyi).

b. Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) menjumlahkan sinyal-sinyal input terbobot, serta menambahkan bias jika diketahui. Proses tersebut ditunjukan seperti pada persamaan 3.7.

_ = + (3.7)

gunakan fungsi aktivasi untuk menghitung sinyal output-nya seperti yang ditunjukan pada persamaan 3.8.

(41)

24 dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit

output).

c. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menjumlahkan sinyal-sinyal

input terbobot. Proses tersebut ditunjukan seperti pada persamaan 3.9.

_ = + (3.9)

gunakan fungsi aktivasi untuk menghitung sinyal output-nya seperti yang ditunjukan oleh persamaan 3.10.

= ( _ ) (3.10)

dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit

output).

Propagasi mundur:

d. Tiap-tiap unit output (Yk, k=1,2,3,...,m) menerima target pola yang berhubungan dengan pola input pembelajaran, hitung informasi error -nya seperti yang ditunjukan oleh persamaan 3.11.

= ( − ) ( _ ) (3.11)

kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai wjk) seperti yang ditunjukan oleh persamaan 3.12.

∆ = (3.12)

hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai w0k) seperti yang ditunjukan oleh persamaan 3.13.

∆ = (3.13)

(42)

25 e. Tiap-tiap unit tersembunyi (Zj, j = 1,2,3,...,p) menjumlahkan delta

input-nya (dari unit-unit yang berada pada lapisan di atasnya) seperti

yang ditunjukan oleh persamaan 3.14.

_ = (3.14)

kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error seperti yang ditunjukan oleh persamaan 3.15.

= _ ( _ ) (3.15)

kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij) seperti yang ditunjukan oleh persamaan 3.16.

∆ = (3.16)

hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai v0j) seperti yang ditunjukan oleh persamaan 3.17.

∆ = (3.17)

f. Tiap-tiap unit output (Yk, k=1,2,3,...,m) memperbaiki bias dan bobotnya (j=0,1,2,...,p) seperti yang ditunjukan oleh persamaan 3.18.

( ) = ( ) + ∆ (3.18)

Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) memperbaiki bias dan bobotnya (i = 0,1,2,...,n) seperti yang ditunjukan oleh persamaan 3.19.

( ) = ( ) + ∆ (3.19)

2.Tes kondisi berhenti apabila error ditemukan.

(43)

26

= ∑ ( 2− ) (3.20)

3.3 PHP

PHP adalah bahasa pengembangan web yang ditulis oleh dan untuk pengembang web. PHP singkatan dari Hypertext Preprocessor. PHP adalah bahasa scripting server-side, yang dapat tertanam dalam HTML atau digunakan sebagai biner mandiri (Converse dkk., 2004). Pemrosesan PHP pada server disebut dengan server-side processing. Proses tersebut dapat diilustrasikan seperti yang ditunjukkan pada gambar 3.16.

Gambar 3.16 Server-side processing (Davis dan Philips, 2007)

(44)

27

browser menggunakan markup HTML yang dikembalikan dari web server untuk

menampilkan halaman web di layar komputer. 3.4 Diagram E-R

Diagram E-R merupakan diagram pemodelan data yang didasarkan pada persepsi pada dunia nyata yang terdiri dari kumpulan dasar objek yang disebut entitas dan hubungan antara objek-objek tersebut (Pallaw, 2010). Diagram terdiri dari entity, relationship, dan attribute. Entity merupakan penyimpan data yang namanya dapat merepresentasikan suatu kelas atau tipe. Relationship merupakan hubungan antara entitas yang biasanya dilambangkan dengan frase kata kerja.

Atribute merupakan properti atau karakteristik dari suatu entity (Bagui dan Earp,

2003). Diagram E-R dapat tersusun dari komponen-komponen seperti yang tampak pada gambar 3.17.

Gambar 3.17 Komponen diagram E-R (Pallaw, 2010) Berikut penjelasan dari gambar 3.17.

a. Line

Merupakan penghubung yang digunakan untuk menghubungkan attribute ke

entity set dan penghubung antar entity.

b. Rectangle

Merepresentasikan entity set.

(45)

28 Merepresentasikan hubungan antara entity set.

d. Ellips

Merepresentasikan attribute.

e. DoubleLine

Merepresentasikan partisipasi total dari sebuah entity pada suatu hubungan.

f. DoubleRectangle

Merepresentasikan entity set lemah, yakni entity dimana keberadaan dari

entity tersebut tergantung dari keberadaan entity lain.

g. DoubleDiamond

Merepresentasikan bahwa pada suatu hubungan terdapat entity lemah yang terlibat.

h. Double Ellips

Merepresentasikan multi valued attribute, yakni nilai dari suatu attribute yang mempunyai lebih dari satu nilai (multi value) dari attribute yang bersangkutan.

Menurut Bagui dan Earp (2003), relationship terbagi menjadi 4 tipe yaitu:

1) One-to-one: Pada relationship jenis ini, tiap satu anggota himpunan pada

entity terhubung dengan satu anggota himpunan pada entity lain dan

sebaliknya. Representasi dari relationshipone-to-one ditunjukan pada gambar 3.18.

(46)

29

2) One-to-many: Pada relationship jenis ini, satu anggota himpunan pada entity

terhubung dengan banyak anggota himpunan pada entity. Representasi dari

relationship one-to-many ditunjukan pada gambar 3.19.

Gambar 3.19 One-to-many (Earp dkk., 2003)

3) Many-to-one: Pada relationship jenis ini, banyak anggota himpunan entity

terhubung dengan satu anggota himpunan pada entity lain. Representasi dari

relationship many-to-one ditunjukan pada gambar 3.20.

Gambar 3.20 Many-to-one (Earp dkk., 2003)

4) Many-to-many: Pada relationship jenis ini, banyak anggota himpunan pada

entity dapat terhubung dengan banyak anggota himpunan pada entity lain dan

(47)

30 Gambar 3.21 Many-to-many (Earp dkk., 2003)

3.7 Data Flow Diagram

Data flow diagram adalah penggambaran data process, data flow, dan

data store pada suatu sistem (Kendall, 2011). Data flow diagram merupakan

model proses yang digunakan untuk menggambarkan aliran data yang melalui sebuah sistem dan proses-proses yang dilakukan oleh sistem tersebut. Terdapat 4 simbol dasar yang digunakan pada data flow diagram seperti yang ditunjukkan pada gambar 3.22.

(48)

31

a. Entity

Entity digunakan untuk menggambarkan suatu entitas eksternal (departemen,

bisnis, sesorang, atau mesin) yang dapat mengirim data atau menerima data dari sistem. Entitas eksternal atau entitas ini bisa juga disebut sumber atau tujuan data dan dianggap terletak di luar sistem yang digambarkan. Setiap entitas diberi label dengan nama yang sesuai. Meskipun berinteraksi dengan sistem, entitas dianggap di luar batas dari sistem. Entitas harus dinamai dengan menggunakan kata benda. Entitas yang sama dapat digunakan lebih dari sekali pada data flow diagram yang digambarkan untuk menghindari melintasi garis aliran data.

b. Data flow

Data flow menunjukkan pergerakan data dari satu titik ke titik lain, dengan

kepala panah menunjuk ke arah tujuan data. Arus data yang terjadi secara simultan dapat digambarkan melalui penggunaan panah paralel. Karena panah mewakili data tentang seseorang, tempat, atau hal. Data flow dinamai dengan menggunakan kata benda.

c. Process

Process digunakan untuk menunjukkan terjadinya proses transformasi.

Process selalu menunjukkan suatu perubahan atau transformasi data sehingga

data flow yang meninggalkan process selalu diberikan label yang berbeda

pada saat masuk pertama kali. Process merupakan pekerjaan yang dilakukan di dalam sistem sehingga harus diberi nama yang menunjukan proses melakukan sesuatu. Sebuah proses juga harus diberi nomor identifikasi yang unik yang menunjukkan tingkat kedalaman diagram.

d. Data store

Data store dapat mewakili sebuah penyimpanan manual, seperti lemari arsip,

(49)

32 sementara, tidak disertakan pada data flow diagram. Masing-masing data

store diberi nomor referensi yang unik, seperti D1, D2, D3, dan sebagainya.

3.7.1 Langkah pengembangan data flow diagram

Menurut Kendall (2011), terdapat beberapa langkah pendekatan dalam mengembangkan data flow diagram yakni sebagai berikut:

1) Buat daftar aktifitas bisnis dan gunakan untuk menentukan berbagai macam external entity, data flow, process, dan data store.

2) Buat diagram konteks yang menunjukan asal dan tujuan dari external

entity dan data flow pada lingkungan sistem. Pada langkah ini tidak

ditunjukkan detil dari process maupun datastore.

3) Gambar diagram 0 pada level selanjutnya yang menunjukan process yang bersifat general atau umum. Tunjukkan datastore pada level ini.

4) Buat diagram anak untuk tiap process yang ada di diagram 0.

5) Periksa kesalahan dan pastikan label yang diberikan pada tiap process dan

dataflow tepat dan berarti.

6) Kembangkan sebuah physical data flow diagram dari logical data flow

diagram. Bedakan antara proses manual dan otomatis, jelaskan file

sebenarnya dan laporan berdasarkan nama, dan tambahkan kontrol untuk mengindikasikan ketika proses lengkap atau terjadi kesalahan.

(50)

33

BAB IV

ANALISIS DAN PERANCANGAN

4.1 Analisis Penjadwalan Mata Kuliah

Penjadwalan mata kuliah bertujuan untuk menempatkan kelas mata kuliah ke dalam slot-slot ruang dan waktu dalam rangka aktifitas perkuliahan. Saat ini proses penjadwalan dibuat di masing-masing program studi di fakultas MIPA UGM.

Fakultas MIPA UGM terdiri dari 4 jurusan, yaitu jurusan fisika, jurusan kimia, jurusan matematika, serta jurusan ilmu komputer dan elektronika. Program studi pada jenjang S1 (strata 1) yang ada di masing-masing jurusan ditunjukan pada tabel 4.1.

Tabel 4.1 Daftar jurusan dan program studi S1 di Fakultas MIPA UGM

Jurusan Program Studi

Fisika S1 Fisika

S1 Geofisika

Kimia S1 Kimia

Matematika S1 Matematika

S1 Statistika Ilmu Komputer dan

Elektronika S1 Ilmu KomputerS1 Elektronika dan Instrumentasi

(51)

34 4.1.1 Mekanisme penjadwalan mata kuliah di fakultas MIPA UGM

Penjadwalan mata kuliah di fakultas MIPA UGM diawali dengan penyusunan program kurikulum yang digunakan untuk jangka waktu 5 tahun yaitu menentukan mata kuliah wajib dan mata kuliah pilihan setiap semester di masing-masing program studi, setelah itu diusulkan nama dosen yang akan mengajar mata kuliah yang ditawarkan beserta rekomendasi ruang berdasarkan blok ruang program studi yang disepakati. Jika suatu jurusan mewajibkan mahasiswanya mengambil mata kuliah milik jurusan lain, maka jurusan akan meminta dosen dari jurusan penyelenggara mata kuliah atau menitipkan mahasiswanya pada kelas di jurusan penyelenggara mata kuliah. Jumlah kelas untuk suatu mata kuliah diputuskan berdasarkan peserta mata kuliah tahun lalu jika kurikulum masih sama, dan berdasarkan perkiraan jika kurikulumnya baru.

Kemudian daftar mata kuliah dan dosen dari program studi dibahas melalui rapat di masing-masing jurusan. Hal-hal yang dibahas pada rapat itu antara lain masalah mata kuliah dan penugasan dosen untuk jurusan itu sendiri, jurusan lain dan fakultas lain. Sebagai salah satu fakultas ilmu dasar, fakultas MIPA berkewajiban menugaskan dosen-dosennya untuk memberikan kuliah di fakultas lain yang menyelenggarakan ilmu dasar seperti misalnya fisika dasar, kimia dasar, kalkulus, dan lain-lain. Hasil dari rapat masing-masing jurusan diserahkan kepada fakultas dan selanjutnya digunakan untuk menetapkan jadwal kuliah.

(52)

35 4.1.2 Karakteristik komponen utama penjadwalan mata kuliah

Penjadwalan mata kuliah tersusun dari beberapa komponen utama seperti kelas mata kuliah, ruang, dan waktu. Masing-masing komponen ini memiliki karakteristik yang digunakan dalam proses pembuatan jadwal mata kuliah.

Kelas mata kuliah terbentuk dari sekumpulan mahasiswa yang mengambil mata kuliah yang sama pada semester tertentu. Ruang di fakultas MIPA memiliki kapasitas terbatas sehingga untuk kelas mata kuliah tertentu yang jumlah mahasiswa melebihi kapasitas ruang maksimal akan dipecah menjadi beberapa kelas yang lebih kecil disebut kelas paralel. Kegiatan perkuliahan pada kelas paralel biasanya diselenggarakan dalam waktu yang sama. Kelas mata kuliah tersusun oleh beberapa komponen yaitu jumlah peserta/mahasiswa, mata kuliah, dan dosen.

Mata kuliah merupakan sumber daya dari perguruan tinggi yang ditawarkan di setiap program studi pada semester tertentu sesuai dengan kurikulum yang digunakan. Mata kuliah terdiri dari mata kuliah wajib dan pilihan yang telah dipaketkan di setiap semester. Contoh daftar mata kuliah ditunjukan pada tabel 4.2.

Tabel 4.2 Contoh daftar mata kuliah

Kode Nama Mata Kuliah Sks Semester Sifat Paket Semester Mik-3001 Filsafat ilmu komputer 2 Ganjil Wajib 3

(53)

36 Tabel 4.3 Contoh dosen dengan mata kuliah yang diampu

Dosen Mata Kuliah yang Diampu

Sri Mulyana, Drs., M.Kom MMS-1801, MMS-2702 Medi, Drs., M.Kom. MIK-2601

Suprapto, Drs., M.Ikom. MIK-4203, MIK-2203 Y. Suyanto, Drs., M.Kom MMS-2806

Dari komponen mata kuliah dan dosen serta sejumlah peserta/mahasiswa yang mengambil mata kuliah tersebut dikombinasikan menghasilkan kelas mata kuliah seperti yang ditunjukan pada gambar 4.4.

Tabel 4.4 Contoh daftar kelas mata kuliah

Kelas Mata Kuliah Dosen Mahasiswa Jumlah Mata kuliah

ILKOM-A-MIK4651 Medi, Drs., M.Kom. 69 Analisis dan Desain Protokol

ILKOM-B-MIK4651 Medi, Drs., M.Kom. 74 Analisis dan Desain Protokol MAT-UMM101 Karlina Denistia, S.S.,

M.A.

Irwan Endrayanto A., S.Si., M.Sc., Dr.

54 Bahasa inggris

Ruang merupakan tempat penyelenggaraan kuliah. Semua ruang kuliah di fakultas MIPA dapat digunakan pada semua jam kuliah yang ada. Kapasitas masing-masing ruangan untuk menampung jumlah peserta dapat berbeda-beda tergantung dari besarnya ruangan. Berikut adalah contoh ruang dan kapasitas maksimalnya yang ditunjukan pada tabel 4.5.

Tabel 4.5 Contoh daftar ruang dan kapasitas maksimalnya Nama Ruang Kapasitas Maksimal

B1.02 150

T2.01 100

U2.01 80

(54)

37 Waktu merupakan kombinasi dari hari dan jam yang digunakan dalam penyelenggaraan mata kuliah. Di fakultas MIPA, kegiatan kuliah diadakan selama 5 hari dalam seminggu yakni dari Senin hingga Jumat. Kegiatan perkuliahan dalam sehari dibagi menjadi 10 sesi dengan setiap sesinya 50 menit yang berbobot 1 SKS. Berikut adalah daftar urutan satuan waktu yang digunakan. Contoh daftar waktu ditunjukan pada tabel 4.6.

Tabel 4.6 Daftar sesi kuliah

Sesi Jam Sesi Jam

Kombinasi semua komponen utama membentuk penjadwalan mata kuliah. Penjadwalan mata kuliah dikatakan optimal jika semua aturan yang ditentukan dapat terpenuhi. Berikut adalah contoh penjadwalan mata kuliah yang dibentuk dari kombinasi komponen-komponen utama seperti yang ditunjukan pada tabel 4.7.

Tabel 4.7 Contoh jadwal mata kuliah

Kelas Hari Sesi Ruang Sks

ILKOM-A-MIK4651 Kamis 1-2 T2.01 3 ILKOM-B-MIK4651 Rabu 4-5 M2.14 3

MAT-UMM101 Senin 7-8 S2.03 3

KIMIA-A-MKK2502 Kamis 10 S2.S3 3 4.1.3 Aturan umum penjadwalan mata kuliah

(55)

38 fakultas MIPA, terdapat beberapa aturan umum yang dipakai yakni sebagai berikut:

1. Durasi kelas mata kuliah tidak lebih dari jam 17.20 pada hari yang sama. Waktu perkuliahan pada jenjang S1 reguler setiap hari diadakan sesuai jadwal waktu yang ditentukan yakni sebanyak 10 sesi dari pukul 07.30 hingga pukul 17.20.

2. Durasi kelas mata kuliah tidak diadakan pada hari Jumat jam 11.30 - 13.00. Sesuai aturan kriteria penjadwalan yang digunakan sekretariat akademik di fakultas MIPA Universitas Gadjah Mada, pada hari jumat pukul 11.30 hingga 13.00 tidak diadakan kegiatan perkuliahan karena bertepatan dengan ibadah sholat jumat.

3. Kelas mata kuliah yang satu paket pada program studi yang sama tidak diadakan pada waktu yang sama. Mata kuliah yang memiliki paket semester yang sama akan digunakan sebagai alternatif pilihan bagi mahasiswa di masing-masing program studinya sehingga mahasiswa dapat mengambil mata kuliah pada semester tersebut tanpa harus terjadi bentrok waktu.

4. Kapasitas ruang kelas mata kuliah lebih dari atau sama dengan jumlah peserta. Setiap ruang memiliki kapasitas yang berbeda dan dapat digunakan maksimal sejumlah peserta kelas mata kuliah.

5. Dosen yang sama tidak mengajar lebih dari satu kelas mata kuliah pada waktu yang sama. Dosen pengajar ditugaskan untuk mengajar 1 kelas dalam 1 waktu. Pada implementasinya, kelas berbeda dapat dijadwalkan dengan dosen yang sama pada waktu yang sama apabila salah satu kelas termasuk team-teaching (kelas memiliki lebih dari satu dosen pengajar) yakni membagi penugasan kepada dosen yang lain ketika pelaksanaan kuliah.

(56)

39 menjadi 2 sks dan 1 sks. Maka pertemuan kelas tersebut diselenggarakan pada hari yang berbeda.

7. Kelas mata kuliah wajib yang berdekatan jenis semesternya (ganjil/genap) pada paket semester yang sama dan program studi yang sama, tidak diadakan pada waktu yang sama. Mata kuliah wajib memiliki prioritas dalam penyelenggaraannya daripada mata kuliah pilihan, karena mata kuliah wajib adalah mata kuliah yang harus diselesaikan dalam masa studi. Oleh karena itu mata kuliah wajib dijadwalkan pada waktu yang tidak bertabrakan satu sama lain.

8. Kelas yang memiliki mata kuliah yang sama (kelas paralel) diadakan pada waktu yang sama. Mata kuliah yang dibagi menjadi beberapa kelas, maka diselenggarakan dalam waktu yang sama. Hal ini digunakan untuk mempermudah pembuatan jadwal ujian pada kelas mata kuliah yang sama diadakan juga pada waktu yang sama.

9. Kelas kemipaan dari mata kuliah bersama diadakan pada sesi pertama dan dijadwalkan secara merata harinya. Kelas kemipaan terbentuk dari mata kuliah bersama yang biasanya terdiri dari beberapa kelas sekaligus. Sehingga penjadwalan waktunya diambil di sesi pertama dan disebar secara merata pada jadwal mingguannya. Misalnya kelas kemipaan terdiri dari 8 kelas, maka penjadwalannya tiap 2 kelas ditempatkan pada hari yang sama demikian seterusnya dari senin hingga kamis, maka selama 4 hari tersebut akan ada 2 kelas kemipaan pada jam yang sama di ruang yang berbeda.

4.1.4 Aturan khusus penjadwalan mata kuliah

(57)

40 kepada Ibu Erri Ismiyati, S.I.P selaku narasumber dari fakultas MIPA, terdapat beberapa aturan khusus yang dipakai yakni sebagai berikut:

1. Kelas mata kuliah pilihan dengan kelas mata kuliah wajib pada program studi yang sama dan paket semester yang berdekatan jenis semesternya (ganjil/genap), tidak diadakan pada waktu yang sama. Hal ini digunakan mengingat banyaknya mahasiswa yang sering mengulang mata kuliah pilihan pada semester tahun sebelumnya namun kadang tidak dapat diambil karna bertabrakan waktunya dengan mata kuliah wajib pada semester saat mahasiswa sedang mengisi Kartu Rencana Studi (KRS). 2. Kelas mata kuliah diadakan pada ruang yang sesuai dengan program studi.

Terdapat kesepakatan di fakultas, untuk membagi ruang yang tersedia kepada program studi untuk digunakan sebagai kelas perkuliahan. Namun kesepakatan ini tidak harus terpenuhi, karena kemungkinan dapat terjadi seperti kasus ruang dengan kapasitas 100 ditempati mahasiswa yang hanya berjumlah 10 orang. Sehingga perlu dialokasikan ke ruang yang lainnya yang kapasitasnya mendekati jumlah mahasiswa. Dan ruang yang diambil bisa dari ruang milik program studi lainnya.

3. Kelas mata kuliah yang memiliki paket yang sama maksimal berjumlah 8 sks dalam sehari. Hal ini dilakukan agar mahasiswa tidak merasa jenuh dalam mengikuti kegiatan perkuliahan dalam sehari.

4. Ruang kelas ditempati minimal sejumlah prosentase dari kapasitasnya. Biasanya fakultas memiliki kriteria perkiraan kapasitas ruang kelas minimal yang harus terpenuhi agar ruang terpakai secara optimal.

Gambar

Gambar 3.15 Arsitektur jaringan backpropagation
Gambar 3.18 One-to-one (Earp dkk., 2003)
Gambar 3.20 Many-to-one (Earp dkk., 2003)
Gambar 3.21 Many-to-many (Earp dkk., 2003)
+7

Referensi

Dokumen terkait

Berdasarkan reviu kami, tidak ada hal-hal yang menjadi perhatian kami yang menyebabkan kami percaya bahwa laporan keuangan konsolidasian interim terlampir tidak

Berdasarkan latar belakang di atas, maka penelitian yang perlu dilakukan yaitu dengan judul “Pengaruh Jenis Tanaman Air dan Lama Perendaman terhadap Penyerapan

dilakukan dalam analisis secara spektrofotometri UV-Vis karena pada panjang gelombang maksimum dihasilkan absorbansi tertinggi yang menunjukkan kepekaan

Pada tahap ini penulis melakukan pengujian terhadap program website yang telah dibuat untuk memastikan program layak digunakan , dan meminimalisir kesalahan (error)

Nomor 55 Tahun 2016 tentang Ketentuan Umum dan Tatacara Pemungutan Pajak Daerah dan Peraturan Daerah Kabupaten Ciamis Nomor 8 Tahun 2016 tentang Organisasi

Dalam mengimplementasikan PAK keluarga tentunya membutuhkan dana, untuk itu orang tua sebagai penanggungjawab PAK keluarga harus memikirkan pendanaan atau dana yang

Menimbang, bahwa berdasarkan fakta-fakta tersebut dapat disimpulkan bahwa Pemohon I yang bernama PEMOHON I dan Pemohon II yang bernama PEMOHON II sebagaimana yang

Penelitian ini bertujuan untuk mengetahui pengaruh Orientasi Pelanggan, Orientasi Penjualan, Pengalaman, dan Likeability Wiraniaga Terhadap Kepercayaan Pelanggan Kepada