Anda di halaman 1dari 7

See

discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/312069091

PENGEMBANGAN SISTEM PENJADWALAN


KULIAH MENGGUNAKAN ALGORITMA
STEEPEST ASCENT HILL CLIMBING

Article · December 2016

CITATIONS READS

0 1,134

2 authors:

Shoffan Saifullah Arief Hermawan Hermawan


Ahmad Dahlan University Universitas Teknologi Yogyakarta
9 PUBLICATIONS 5 CITATIONS 15 PUBLICATIONS 4 CITATIONS

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Comparative Analysis of Thermal Camera and Digital Camera View project

The Dimensional Reduction to Improve the Speed and Accuracy of Neural Network in the Senior High
School Student's Major View project

All content following this page was uploaded by Shoffan Saifullah on 05 January 2017.

The user has requested enhancement of the downloaded file.


PENGEMBANGAN SISTEM PENJADWALAN KULIAH MENGGUNAKAN
ALGORITMA STEEPEST ASCENT HILL CLIMBING
Shoffan Saifullah1, Arief Hermawan2

 tetapi, banyak kemungkinan kombinasi yang perlu


Abstract— University of Technology Yogyakarta is a private diperhatikan. Sehingga perlu dibangun sistem penjadwalan
university in Yogyakarta, it has several purposes, one of them is kuliah yang dapat membantu meningkatkan pelayanan
utilizing the maximum potential of technology to improve the akademik dan untuk mewujudkan tujuan dari Universitas
effectiveness and efficiency of learning and dissemination of Teknologi Yogyakarta.
science and technology. One of the factors that can improve Saat ini sistem pelayanan akademik dalam pembuatan
academic services are scheduling courses. Scheduling proses isn’t
jadwal kuliah kurang efektif, karena memerlukan waktu yang
easy because they have to consider the possibility in scheduling,
include subjects, times, lecturers, and lecture halls. lama, dan sering terjadi bentrok pada jadwal mahasiswa.
Now, subject scheduling is still using Ms. Excel, the process is to Ketika jadwal yang diterima mahasiswa terjadi bentrok
input lecturer’s name one by one, to teach to the prescribed dengan jadwal yang lainnya, maka mahasiswa perlu waktu
schedule and also to check whether the data is conflicting or not, revisi dengan proses yang cukup lama yaitu 2 minggu, bahkan
so it takes long time. Therefore, we need a system that is able to lebih. Oleh karena itu perlu dibangun sistem penjadwalan
perform scheduling more quickly, effectively and optimally. kuliah dengan menggunakan algoritma steepest ascent hill
Subject scheduling system can be done by using the optimization climbing yang lebih cepat, efektif dan optimal sehingga jadwal
system. For the case of optimization can be done using the yang telah diproses tidak akan mengalami bentrok.
steepest ascent hill climbing algorithm. Steepest ascent hill
Tujuan dari penelitian ini yaitu untuk mengembangkan
climbing algorithm is a search algorithm (heuristic), it is able to
solve the problems of optimization with estimates to be produced sistem penjadwalan kuliah dengan harapan dapat
in accordance with the desired criteria or rules. meningkatkan proses belajar mengajar, sehingga tidak
Subject scheduling process produces a schedule that takes less terganggu dengan adanya jadwal yang bentrok. Dan
time compared to a system that is currently running. Although it mengetahui bagaimana penggunaan dan penerapan algoritma
is able to minimize the level of clashing schedules, its application steepest ascent hill climbing dalam proses penjadwalan yang
needs to be re-checked on the level of conflicting schedules. akan dilakukan sehingga mampu menghasilkan proses yang
Index Terms— Scheduling Lecture, Steepest Ascent Hill Climbing cepat, efektif dan efisien sesuai dengan pengguna sistem.
Algorithms, and Schedules.
II. TINJAUAN PUSTAKA
I. PENDAHULUAN Sirken (2013) menjelaskan tentang bagaimana
penyelesaian permasalahan pembuatan jadwal mata pelajaran
Universitas Teknologi Yogyakarta (UTY) merupakan di SMA Negeri 3 Temanggung dengan menggunakan metode
salah satu universitas swasta di Yogyakarta yang mempunyai algoritma genetika. Disamping itu, sistem yang dibuat dapat
beberapa tujuan, salah satunya adalah memanfaatkan sebesar- melakukan proses penjadwalan mata pelajaran secara otomatis
besarnya potensi teknologi untuk meningkatkan efektifitas dan sehingga penjadwalan dapat dilakukan secara cepat dan dapat
efisiensi pembelajaran dan penyebarluasan ilmu pengetahuan mengoptimalkan pendistribusian waktu secara otomatis.
dan teknologi. Dalam pelaksanaan tujuan tersebut, UTY Putranto (2012) menjelaskan tentang penerapan algoritma
memiliki keterbatasan pada proses pembelajaran yaitu steepest ascent hill climbing dalam proses penjadwalan yang
penjadwalan kuliah yang dilakukan setiap awal semester. optimal sehingga tidak ditemukan bentrok pada jadwal
Penjadwalan kuliah yang selama ini berjalan masih perkuliahan. Dalam proses pengembangan yang mungkin
menimbulkan bentrok, baik pada waktu, ruang maupun dosen untuk dilakukan, pihak peneliti memberikan masukan untuk
mengajar. menambahkan constraint dalam pembuatan jadwal, dan
Untuk meningkatkan pelayanan akademik, penjadwalan penambahan fungsi yang mampu menyelesaikan proses
kuliah merupakan suatu hal yang penting, karena berhubungan penjadwalan tanpa melakukan pengecekan ulang dari solusi
dengan proses pengaturan pembelajaran yaitu mata kuliah, jadwal yang telah diproses. Dan juga, untuk memberikan
waktu, dosen dan ruang. Proses penjadwal kuliah bukan laporan dosen dalam mengajar untuk tiap semesternya.
merupakan suatu kegiatan yang mudah untuk dilakukan, Kumala (2010) menjelaskan tentang bagaimana penerapan
karena dalam melakukan penjadwalan tidak hanya menyusun algoritma genetika dalam melakukan proses optimasi
jadwal antara mata kuliah, waktu, dosen dan ruangan. Akan produksi, dan pada hasilnya didapat bahwa algoritma genetika
merupakan metode yang baik dalam proses optimasi.
1 Fahrurozi (2011) menjelaskan mengenai pembuatan sistem
Shoffan Saifullah, Magister Teknik Informatika, Universitas Ahmad
Dahlan, Yogyakarta, Indonesia (phone: +6285725119117; e-mail: informasi penjadwalan mata kuliah dengan memberikan
shoffan_s@yahoo.com). pembatasan waktu pengumpulan kesediaan dosen dalam
2
Arief Hermawan, Teknik Informatika, Universitas Teknologi memberikan pembelajaran dengan jumlah sks yang sesuai
Yogyakarta, Yogyakarta, Indonesia (e-mail: arifdb@yahoo.co.id).

57 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456
dengan status kerjanya. Dengan adanya sistem informasi Entity Relation Diagram (ERD), interface baik untuk input,
penjadwalan mata kuliah ini, UIN Syarif Hidayatullah Jakarta proses maupun output, dan basis data.
dapat mempercepat proses penjadwalan mata kuliah dan
d. Implementasi Sistem
penggunaan laboratorium untuk prodi TI dan SI dengan
Pada tahap ini sistem yang dibuat akan diuji cobakan dan
Website.
diimplementasikan di Fakultas Sains dan Teknologi
Berdasarkan penelitian-penelitian di atas, menjelaskan
Universitas Teknologi Yogyakata pada bagian akademik.
bagaimana untuk menyelesaikan penjadwalan, dan
Tools yang akan digunakan pada sistem ini yaitu
membangun sistem penjadwalan dengan berbagai metode.
menggunakan bahasa pemrograman Borland Delphi 7, dengan
Perbedaan penelitian ini adalah menyelesaikan masalah
menggunakan basis data MySql, dan diharapkan dapat
penjadwalan kuliah teori dengan membatasi jumlah mata
membatu dalam melakukan proses penjadwalan mata kuliah
kuliah yang diajarkan dalam 1 hari untuk untuk tiap
mahasiswa secara efektif dan efisien.
semesternya, dan penambahan constraint yang akan membuat
jadwal yang telah dibuat tidak menghasilkan bentrok serta
adanya permintaan dosen untuk waktu mengajar. Metode yang IV. HASIL DAN PEMBAHASAN
digunakan dalam proses penjadwalan adalah algoritma
steepest ascent hill climbing. Pada metode ini akan Pada langkah-langkah pengembangan sistem setelah
ditambahkan fungsi yang akan mengecek solusi jadwal akhir melakukan analisis adalah desain sistem. Desain sistem yang
telah dilakukan yaitu menggunakan perancangan DAD, ERD
tanpa melakukan pengecekan ulang atas solusi jadwal yang
telah dilakukan. Dan dapat memberikan jadwal yang optimal dan Flowchart proses penjadwalan kuliah. adapun
beserta laporan untuk beban dosen mengajar. perancangannya diantaranya adalah sebagai berikut:
DAD Level 0
III. METODOLOGI
Adapun langkah-langkah dalam pengembangan sistem
meliputi perencanaan dan seleksi sistem, analisis sistem,
desain sistem, dan implementasi.
a. Perencanaan dan Seleksi Sistem
Langkah awal dalam membangun sebuah sistem yaitu
dengan melakukan identifikasi mengenai sistem-sistem yang
ada di instansi. Setelah itu, sistem-sistem yang ada di instansi
tersebut dikelompokkan sesuai dengan kriteria tertentu, baik
berupa analisis nilai sistem, kesejajaran sistem, potensi
keuntungan dari sistem tersebut, ketersediaan sumber daya
Gambar 1. DAD Level 0
yang dibutuhkan oleh sistem, ukuran dan durasi proyek yang
memungkinkan untuk membuat sistem, serta tingkat resiko DAD Level 0 merupakan rancangan desain proses yang
yang kemungkinan akan terjadi. Kemudian pada penelitian menunjukan gambaran secara umum mengenai keseluruhan
yang dilakukan di Universitas Teknologi Yogyakarta sistem proses.
yang dipilih adalah sistem penjadwalan kuliah. Sitem
DAD Level 1
penjadwalan kuliah yang telah dilakukan di UTY masih
sederhana yaitu masih menggunakan Ms.Excel.
b. Analisis Sistem
Metode ini digunakan untuk melakukan analisis mengenai
kebutuhan user dalam sistem penjadwalan mata kuliah dengan
melakukan wawancara langsung dengan dekan fakultas dan
kepala bagian operasional. Disamping itu juga melakukan
observasi langsung ke lapangan, dan membaca studi pustaka
baik dari buku, e-book, jurnal, makalah, maupun internet yang
terkait dengan penulisan proyek tugas akhir yang akan
dilakukan.
c. Desain Sistem
Metode ini digunakan untuk merancang dan membangun
sistem penjadwalan mata kuliah mahasiswa Universitas
Teknologi Yogyakarta dengan algoritma steepest ascent hill
climbing pada Fakultas Sains dan Teknologi dengan analisis
kebutuhan yang diperlukan oleh sistem berdasar pada metode
analisis sistem. Perancangan sistem akan dibuat menggunakan

58 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456
DAD Level 2 Proses 2 merupakan perancangan proses
yang menunjukan tentang penjadwalan yang dilakukan dengan
memproses secara otomatis. Sehingga semua kebutuhan
sistem sudah siap maka dengan melakukan proses
penjadwalan algoritma steepest ascent hill climbing
penjadwalan akan dilakukan secara otomatis.
Algoritma Steepest Ascent Hill Climbing
Suyanto (2007) menjelaskan algoritma SAHC sebagai
berikut:
1. Evaluasi initial state. Jika state ini adalah goal state, maka
kembalikan state ini sebagai solusi dan keluar dari fungsi.
Jika state ini bukan goal state, lanjutkan proses dengan
initial state sebagai current state (keadaan sekarang).
2. Ulangi sampai solusi ditemukan atau sampai tidak ada
perubahan terhadap current state:
a). Misalkan SUK adalah suatu state yang menjadi
suksesor sari current state.
b). Untuk setiap operator yang bisa dilakukan terhadap
current state, kerjakan:
(i) Aplikasikan operator tersebut dan bangkitkan new
state.
(ii) Evaluasi new state. Jika merupakan goal state,
kembalikan state ini sebagai solusi dan keluar dari
program. Jika bukan goal state, bandingkan new
state dengan SUK. Jika new state lebih baik dari
SUK, maka ganti SUK dengan new state. Jika tidak
lebih baik, SUK tidak perlu diganti.
Gambar 2. DAD Level 1 3. Jika SUK lebih baik dari current state, maka ganti
current state dengan SUK.
DAD Level 1 merupakan rancangan desain proses di level
1 yang bisa dilakukan oleh pengguna dalam menjalankan Flowchart Algoritma Steepest Ascent Hill Climbing pada
aplikasi. DAD Level 1 berisi tentang proses awal yang bisa proses Penjadwalan Kuliah
dijalankan pengguna.
DAD Level 2 Proses 4

Gambar 3. DAD Level 2 Proses 4

59 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456
menjadi successor dan akan berjalan terus sampai
diketemukan jadwal yang optimal.
ERD (Entity Relationship Diagram)

Gambar 5. ERD (Entity Relationship Diagram)


Hasil Implementasi dari aplikasi penjadwalan kuliah
dengan algoritma steepest ascent hill climbing adalah sebagai
berikut ini:
Form Login Sistem

Gambar 6. Form Login


Untuk setiap kali aplikasi di running, maka akan tampil
form login yang akan menuju ke form utama.
Form Proses Penjadwalan Kuliah dengan Menggunakan
Steepest Ascent Hill Climbing
Gambar 4. Flowchart Steepest Ascent Hill Climbing
Algoritma steepest ascent hill climbing dalam
menyelesaikan masalah penjadwalan di FST UTY. Algoritma
ini merupakan algoritma untuk menyelesaikan masalah
optimasi. Langkah-langkah dalam proses penjadwalan ini
berdasarkan flowchart di atas yaitu setelah mulai proses
algoritma akan melakukan penjadwalan secara acak.
Kemudian menentukan jumlah data jadwal yang akan di
jadwalkan. Berdasarkan pada jumlah data dan perulangan
maka akan digunakan sebagai fungsi perulangan. Pada saat Gambar 7. Form Proses Penjadwalan Kuliah dengan
penjadwalan dilakukan langkah pertama adalah Menggunakan Steepest Ascent Hill Climbing
menginisialisasi untuk nilai f = 0, dan menentukan
successor,yang akan digunakan untuk membandingkan Pada form Penjadwalan SAHC ini untuk bisa
dengan jadwal yang telah dibuat secara acak. Ketika successor menjadwalkan secara otomatis, maka parameter-parameter
itu optimal, tidak terjadi bentrok (sesuai dengan parameter yang diatasnya perlu diisikan dan kebutuhan akan jadwal
yang dikehendaki) maka successor akan menjadi solusi seperti hari, ruang, jam, dosen dengan beban mengajar sudah
optimal, akan tetapi jika data jadwal itu lebih baik terpenuhi (terisi). Untuk proses dapat dilakukan dengan sekali
dibandingkan dengan successor maka data tersebut akan klik pada proses Penjadwalan SAHC. Setelah itu akan

60 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456
menampilkan form hasil jadwal yang telah dijadwalkan oleh Form Hasil Penjadwalan Proses Penjadwalan Steepest Ascent
sistem. Hill Climbing
Potongan Listing Proses Penjadwalan SAHC:
with dm.qr_jadwal1 do
begin
active:=false;close;
sql.clear; sql.Text:='Select * from jadwal where
kd_ruang='+QuotedStr(kd_ruang)+' and
kd_hari='+QuotedStr(kd_hr)+'';
execsql; open;
end;
if dm.qr_jadwal1.Eof then
begin
f:=f+1;
with dm.qr_jadwal2 do
begin
active:=false; close;
sql.clear; sql.Text:='select mk_detail.kd_dsn,
kd_hari ,waktu_ajar from jadwal,mk_detail where Gambar 8. Form Hasil Penjadwalan SAHC
mk_detail.kd_detail=jadwal.kd_detail and
kd_dsn='+quotedstr(kd_dsn)+' and Pada form hasil penjadwalan SAHC ini memberikan
kd_hari='+quotedstr(kd_hr)+' and
waktu_ajar='+quotedstr(jam)+''; informasi mengenai random jadwal awal secara acak untuk
execSQL; open; semua kemungkinan, hasil penjadwalan SAHC setelah proses,
end; semua jadwal yang telah tersimpan sesuai dengan parameter
if dm.qr_jadwal2.Eof then yang diisikan, dan data yang belum terjadwalkan oleh sistem.
begin
f:=f+1;
with dm.qr_jadwal3 do V. KESIMPULAN
begin Berdasarkan penelitian yang telah dilakukan penulis dapat
Active:=false; close;
sql.Clear; sql.Text:='SELECT
disimpulkan sebagai berikut:
matkul.kd_prodi,prodi.nm_prodi, 1. Sistem ini dapat membantu mempercepat dalam proses
mk_detail.kd_kelas,kelas.nm_kelas,smt, penjadwalan kuliah Fakultas Sains dan Teknologi
jadwal.kd_hari,hari.nm_hari'+ Universitas Teknologi Yogyakarta jika dibandingkan
'FROM jadwal,matkul,mk_detail,prodi,kelas,hari
'+'WHERE jadwal.kd_detail=mk_detail.kd_detail AND dengan proses yang dilakukan saat ini secara manual satu
mk_detail.kd_mk = matkul.kd_mk AND persatu dalam menjadwalkan kuliah.
matkul.kd_prodi=prodi.kd_prodi AND 2. Dengan menggunakan sistem ini diharapkan dapat
kelas.kd_kelas=mk_detail.kd_kelas '+ meminimalkan tingkat bentrokan yang terjadi saat proses
'AND jadwal.kd_hari=hari.kd_hari '+
'and nm_prodi='+QuotedStr(nm_jur)+' and penjadwalan dilakukan.
nm_kelas='+QuotedStr(kelas)+'and 3. Sistem penjadwalan dengan menggunakan algoritma
smt='+quotedstr(smt)+'and nm_hari = steepest ascent hill climbing mampu untuk membantu
'+QuotedStr(hari);
ExecSQL; open;
dalam proses penjadwalan di Fakultas Sains dan Teknologi
end; Yogyakarta.
if dm.qr_jadwal3.RecordCount<=StrToInt(sedit2.Text) 4. Proses penjadwalan memerlukan waktu yang cukup lama
then untuk data yang banyak.
begin
f:=f+1;
Adapun saran dalam pengembangan penelitian adalah
goto lanjut; sebagai berikut :
end else f:=0; 1. Untuk pengembangan sistem penjadwalan selanjutnya
end else f:=0;end diharapkan mampu mengembangkan dengan menggunakan
Potongan Listing untuk aturan yang dapat memberikan kombinasi berbagai metode yang mampu memberikan
nilai heuristik dari yang awalnya bernilai 0 (f=0) sampai nilai proses penjadwalan yang lebih cepat.
heuristiknya menjadi 3 (f=3). 2. Memanfaatkan sistem yang telah ada dan kemudian
merelasikan dengan sistem penjadwalan (misalkan data
dosen dan inventori ruang yang sudah terkomputerisasi
dan data tersimpan di database yang ada), sehingga tidak
melakukan input manual.

DAFTAR PUSTAKA
Abraham Silberschatz, Henry F. Korth, S. Sudarshan. 2011. “Database
System Concepts. Ed. 6. ISBN 978-0-07-352332-3 (alk. paper)

61 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456
Fahrurozi. 2011. “Sistem Informasi Penjadwalan Kuliah Pada International Sirken, A. S. 2013. “Sistem Penjadwalan Mata Pelajaran Menggunakan
Programs Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta Algoritma Genetika (Studi Kasus : SMA NEGERI 3 TEMANGGUNG)”.
Berbasis Website”. UIN Syarif Hidayatullah Jakarta: Jakarta. Universitas Teknologi Yogyakarta: Yogyakarta.
http://www.ilmukomputer.org/wp-content/ uploads/2009/10/anharku- Suyanto. 2007. “Artificial Intelligence Searching, Reasoning, Planning, and
bobolserver. pdf. tanggal akses 22 Oktober 2014. Jam 08.13 Learning”. Bandung: Informatika.
Jogiyanto HM. 2009. “Sistem Teknologi Informasi”. Yogyakarta: Andi. Sridadi, B. 2009. “Pemodelan dan Simulasi Sistem Teori, Aplikasi, dan
Kenneth C. Laudon, Jane P.Laudon,. 2008. Sistem Informasi Manajemen. Contoh Program dalam Bahasa C”. Bandung: Informatika.
Ed.10. Salemba Empat : Jakarta. Valacich, George, Hoffer. 2012. “Esentials of Systems Analisis & Desain”.
Kumala. 2010. “Implementasi Algoritma Genetika untuk Optimasi Produksi”. Ed. 5 (E-Books)
Universitas Teknologi Yogyakarta. Yuhilda. 2007. “Sistem Pendukung Pengambilan Keputusan Penjadwalan
Pressman, R. S. 2002. “Rekayasa Perangkat Lunak Buku I. Andi: Yogyakarta. Kuliah Berdasarkan Preferensi Kesediaan Waktu Dosen Untuk Mengajar
Putranto, K. N.2012.Perancangan dan Implementasi Penjadwalan Mata Kuliah (Studi Kasus pada STIE SBI Yogyakarta)”. Tesis Sekolah Pasca Sarjana
Menggunakan Algoritma Steepest Ascent Hill Climbing (Studi Kasus : Ilmu Komputer. UGM: Yogyakarta.
Fakultas Psikologi UKSW). Universitas Kristen Satya Wacana Salatiga.
Sidik, Betha,. 2003. MySQL Untuk Pengguna, Administrator, dan
Pengembang Aplikasi Web. Informatika Bandung: Bandung.

62 – jsiskom JURNAL SISTEM KOMPUTER – Vol. 6, No 2, November 2016, ISSN : 2087-4685, e-ISSN: 2252-3456

View publication stats

Anda mungkin juga menyukai