PROGRAM PASCASARJANA
UNIVERSITAS HASANUDDIN
MAKASSAR
2009
Tesis
Sebagai Salah Satu Syarat untuk Mencapai Gelar Magister
Program Studi
Teknik Elektro
kepada
PROGRAM PASCASARJANA
UNIVERSITAS HASANUDDIN
MAKASSAR
2009
TESIS
Menyetujui
Komisi Penasihat,
_______________________
Dr. Ir. Zahir Zainuddin, M.Sc.
Ketua
________________________
Prof.Dr. Ir. Salama Manjang, M.T.
____________________________
Drs. Suarga, M.Sc., M.Math., Ph.D.
Anggota
_____________________________
Prof. Dr. dr. Abdul Razak Thaha, M.Sc.
Abstract
Abdul Kadir Jailani. The Application of Algorithm Best-First Search in The
Course Scheduling Design (Guided by Zahir Zainuddin and Suarga)
This research aims to make lecture scheduling application that apply
algorithm best-first search to do scheduling activity automatically, and
look for scheduling result optimalest that can fulfil need every lecturing
activity element without neglecting rule and scheduling limitation.
This research was carried out at electro technique direction faculty of
technique Universitas Hasanuddin (UNHAS). Method that used in this
research observation, and interview. testing technique to detect logic
value a stripe in algorithm best-first search used testing method white-box
and black-box with algorithm complexity testing.
The result shows that any form in this application doesn't experience
function error, interfaces error, and error perfomances then produce
lecture schedule automatically optimal as according to opsional user with
several desirable lecture schedule variations by user and free from logic
error.
ABSTRAK
ABDUL KADIR JAILANI. Penerapan Algoritma Best-First Search Dalam
Perancangan Penjadwalan Kuliah (dibimbing oleh Zahir Zainuddin dan
Suarga)
Penelitian ini bertujuan untuk membuat aplikasi penjadwalan kuliah
yang menerapkan algoritma best-first search untuk melakukan kegiatan
penjadwalan secara otomatis, dan mencari hasil penjadwalan paling
optimal yang dapat memenuhi kebutuhan setiap elemen kegiatan
perkuliahan dengan tetap memperhatikan aturan dan batasan
penjadwalan.
Penelitian dilakukan di Fakultas Teknik jurusan Teknik Elektro Universitas
Hasanuddin (UNHAS). Metode yang digunakan dalam penelitian ini
adalah observasi, dan wawancara. Teknik pengujian untuk mengetahui
nilai logika suatu jalur dalam algoritma best-first search digunakan metode
pengujian white-box dan black-box serta pengujian kompleksitas
algoritma.
Hasil penelitian menunjukkan bahwa semua form dalam aplikasi ini
tidak mengalami kesalahan fungsi, kesalahan interface, kesalahan
perfomansi, dan bebas dari kesalahan logika yang kemudian
menghasilkan jadwal kuliah secara otomatis yang optimal sesuai dengan
opsional pengguna serta beberapa variasi jadwal kuliah yang diinginkan
oleh pengguna.
Nama
: Teknik Elektro
BAB I
PENDAHULUAN
A. Latar Belakang
Pembuatan jadwal mata kuliah dilakukan setiap terjadi pergantian
semester, setelah mahasiswa memasukkan mata kuliah yang diambil pada
semester yang bersangkutan dalam KRS (Kartu Rencana Studi), kemudian
KRS tersebut disetujui oleh dosen wali atau penasehat akademik masingmasing mahasiswa. Inti dari penjadwalan kuliah adalah bagaimana
menjadwalkan sejumlah komponen yang terdiri atas mahasiswa, dosen,
ruang kelas, dan waktu dengan sejumlah batasan-batasan (constraint)
tertentu. Untuk membuat jadwal yang memenuhi kebutuhan seluruh
komponen tersebut diperlukan waktu, tenaga, dan ketelitian.
Batasan-batasan (constraint) yang ditetapkan pada penempatan
jadwal kuliah ini, terdapat beberapa batasan yang dapat dibedakan menjadi
batasan yang merupakan hard constraint dan soft constraint.
Batasan sistem penjadwalan terdiri dari :
1. Hard Constraint : batasan yang mutlak harus dipenuhi dalam proses
penempatan jadwal.
2. Soft Constraint
B. Rumusan Masalah
Detil permasalahan yang diangkat dalam penelitian ini adalah sebagai
berikut:
1. Menangani pembuatan jadwal mata kuliah berdasarkan data kelas yang
ditawarkan pada tiap semester.
2. Mengatur jadwal mata kuliah sesuai dengan ruang kelas yang tersedia.
3. Mengatur jadwal kuliah agar memenuhi berbagai batasan, diantaranya
sebagai berikut:
a. Mengatur jadwal mata kuliah agar tidak ada dosen yang mempunyai
jadwal mengajar yang bentrok antara satu mata kuliah dengan mata
kuliah lainnya.
b. Mengatur jadwal mata kuliah bagi dosen yang hanya dapat mengajar
pada waktu-waktu tertentu.
c. Mengatur jadwal mata kuliah agar mata kuliah untuk semester yang
sama atau mempunyai selisih kurang dari dua semester tidak
ditempatkan pada waktu yang bersamaan.
4. Mengatur (cutomize) batasan-batasan untuk aturan penjadwalan mata
kuliah sesuai dengan yang diinginkan pengguna.
5. Mengatur prioritas batasan-batasan untuk aturan penjadwalan mata
kuliah.
C. Batasan Masalah
Sejumlah permasalahan yang dibahas dalam penelitian ini akan
dibatasi ruang lingkup pembahasannya, antara lain:
1. Studi kasus yang dipakai dalam perancangan ini adalah Jurusan Teknik
Elektro UNHAS, dengan data kelas yang ditawarkan yang mengacu pada
Sistem Akademik UNHAS.
2. Aturan serta batasan penjadwalan yang dipakai sesuai dengan batasanbatasan yang telah dicantumkan dalam rumusan permasalahan.
3. Batasan penjadwalan yang digunakan dapat bersifat opsional sesuai
dengan kebutuhan pengguna.
Proses penjadwalan mata kuliah ini akan mencari hasil yang paling
optimal dan beberapa variasi jadwal dari kemungkinan yang ada, meskipun
BAB II
TINJAUAN PUSTAKA
A. Artificial Intelligence
Kecerdasan buatan atau artificial Intelligence yang biasa disingkat
AI merupakan salah satu bagian ilmu komputer yang membuat mesin
(komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan
oleh manusia. Kecerdasan buatan itu sendiri dimunculkan oleh seorang
profesor dari Massachusetts Institute of Technology (MIT) yang bernama
John McCarthy pada tahun 1956 pada Dartmouth Conference yang dihadiri
oleh para peneliti AI. Untuk melakukan aplikasi kecerdasan buatan ada dua
bagian utama yang sangat dibutuhkan, seperti gambar berikut (Sri
Kusumadewi, 2003:3):
1. Basis Pengetahuan (Knowledge Base), berisi fakta-fakta, teori,
pemikiran dan hubungan antara satu dengan lainnya.
2. Motor Inferensi (Inference Engine), yaitu kemampuan menarik
kesimpulan berdasarkan pengalaman
Sistem yang
Menggunakan AI
MASALAH
SOLUSI
Basis
Pengetahuan
Inference
Engine
buatan
lebih
mudah
diduplikasi
dan
disebarkan.
dengan
harus
mendatangkan
seseorang
untuk
Kemampuan
untuk
menambah
ataupun
memenuhi
alami
memungkinkan
orang
untuk
menggunakan
manusia
dapat
digunakan
secara
luas,
sedangkan
B. Breadth-First Search
Prosedur breadth first search merupakan pencarian yang dilakukan
dengan mengunjungi tiap-tiap node secara sistematis pada setiap level
hingga keadaan tujuan (goal state) ditemukan, atau dengan kata lain,
penelusuran yang dilakukan goal state-nya. Untuk lebih jelasnya, dapat
diilustrasikan seperti gambar berikut:
A
B
10
11
best-first
search
ini
merupakan
kombinasi
dari
beberapa kelebihan teknik depth first search dan breadth first search.
Algoritma dari best first search adalah sbb:
Prosedur best first serch
Begin
Open := [start];
Closed := [ ];
While open [ ] do
Begin
Remove the leftmost state from open, call it X
If X = a goal then return the path from start to X
Else begin
Generate children of X;
For each child of X do
Case
The child is not on open or closed;
Begin
Assign the child is heuristic value;
Add the child to open
End;
The child is already on open;
12
13
E. Kerangka Pikir
Kerangka pikir dari penelitian ini dibuat dalam bentuk bagan sebagai
berikut:
Penjadwalan Kuliah adalah bagaimana menjadwalkan sejumlah
komponen seperti mata kuliah, mahasiswa, dosen, ruang kelas,
waktu, dan batasan-batasan
Algoritma best-first search membutuhkan prioritas dari batasanbatasan dalam pelaksanaan penjadwalan kuliah.
BAB III
METODE PENELITIAN
A. Rancangan Penelitian
Penelitian dilakukan
15
1. Lokasi Penelitian
Penelitian dilaksanakan pada Fakultas Teknik Jurusan Teknik
Elektro Universitas Hasanuddin Makassar.
2. Waktu
Penelitian akan dilaksanakan dari bulan Oktober 2007 s.d. Mei
2009.
C. Perangkat Penelitian
Adapun perangkat penelitian yang digunakan dalam penelitian ini
adalah:
1. 1 Unit Komputer
2. Software-software yang digunakan antara lain:
a. Sistem Operasi, Microsoft Windows XP SP 2
b. Bahasa Pemrograman C++
D. Analisis Sistem
Sistem
penjadwalan
kuliah
yang
akan
dirancang
dapat
16
Dosen
Waktu
JADWAL KULIAH
DOSEN
BATASAN/CONSTRAINT
RUANG1
RUANG2
RUANG N
SENIN
SELASA
RABU
KAMIS
JUMAT
Batasan/Constraint
Ruang
Kuliah
Gambar 3.1 Deskripsi Sistem Penjadwalan Kuliah
Berdasarkan gambar deskripsi sistem penjadwalan kuliah di atas,
maka dalam
17
1. Use Case diagram, yang menggambarkan bagaimana orangorang atau dosen-dosen yang berinteraksi dengan sistem ini.
2. Class diagram, yang menggambarkan dari sudut pandang
konseptual
dan
dapat
menjadi
cara
yang
baik
untuk
dan
manusia.
Sebuah
activity
diagram
dapat
18
2. Soft Constraint
E. Rancangan Sistem
19
Menentukan nilai-nilai
batasan Penjadwalan
Menentukan Ruang
Perkuliahan
Dosen/Bidang Akademik/
Sistem Otomatis
Menyimpan File
Project Penjadwalan
Menentukan
Waktu/Shift
Karyawan
Tata usaha
20
START
MENDEFINISIKAN
MATAKULIAH YG
DITAWARKAN
MENENTUKAN
BATASAN RUANG DAN
WAKTU PERKULIAHAN
MENENTUKAN SOFT
CONSTRAINT SERTA
PRIORITASNYA
MENGESET NILAI-NILAI
CONSTRAINT
MENEMPATKAN
JADWAL KULIAH
STOP
Gambar 3.3 Bagan Alir Rancangan Perangkat Lunak Penjadwalan Kuliah
G. Pertanyaan Penelitian
Pertanyaan penelitiannya adalah apakah penerapan algoritma
best-first search dalam perancangan penjadwalan kuliah dapat dilakukan
21
secara otomatis oleh sistem serta mendapatkan jadwal yang optimal dan
beberapa variasi jadwal kuliah?.
H. Pengujian Sistem
Pengujian yang akan dilakukan dalam penelitian ini adalah
pengujian jalur (path testing) yang merupakan strategi pengujian struktural
yang bertujuan menjamin bahwa setiap jalur program yang independen
dieksekusi paling tidak satu kali, dan menentukan apakah setiap jalur
memiliki nilai benar (true) atau salah (false) dengan kata lain untuk
mengetahui nilai logika suatu jalur dalam algoritma best-first search.
Pengujian struktural yang digunakan adalah metode black-box dan
metode white-box serta pengujian kompleksitas algoritma.
BAB V
kesalahan fungsi,
B. Saran
59
BAB IV
Proses Penjadwalan
23
24
3. Pilihan Data
25
26
j.
27
4. Pilihan Statistik
28
5. Pilihan Jadwal
29
30
Hasil atau Output dari aplikasi ini maksimal 100 variasi jadwal kuliah,
berikut 5 contoh variasi output dari 5 kegiatan di atas:
31
Selasa
Rabu
Kamis
Jumat
07:30-9:10
---
---
---
---
B
Elektronika Daya
Prof. DR.
Muhammad Tola,
Ikhlas Kitta
PBT.401B
09:15-10:55
---
---
---
---
---
11:00-12:40
---
A
Pengolahan Isyarat
Digital
DR.Ir.Zahir
Zainuddin, M.Sc.
J.10
A
Elektronika
Daya
Prof. DR.
Muhammad
Tola
PBT.304
---
---
13:10-14:50(Jumat
---
---
---
---
-x-
---
---
---
13:30-15:10)
14:5516:35(Jumat
14:00-17:40)
---
Topik Khusus
Teknik Kendali
DR.Rhiza S. Sadjad,
Muh. Anshar, S.T.
PBT.301
16:30-17:40
-x-
-x-
-x-
-x-
B
Pengolahan Isyarat
Digital
Ir. Syafruddin
Syarief,M.T.
PBT.302
18:30-20:10
-x-
-x-
-x-
-x-
---
Jadwal dibuat oleh Abdul Kadir Jailani, pada tgl: 5.7.3 14/04/09 13:00
60
DAFTAR PUSTAKA