Perancangan dan Implementasi Finite Automata · PDF filebekerja dengan cukup baik [3]....

download Perancangan dan Implementasi Finite Automata · PDF filebekerja dengan cukup baik [3]. Penelitian lain tentang Algoritma Steepest Ascent ... dalam bahasa pemrograman PHP 5 dan untuk

If you can't read please download the document

Transcript of Perancangan dan Implementasi Finite Automata · PDF filebekerja dengan cukup baik [3]....

  • 1

    Perancangan dan Implementasi

    Penjadwalan Mata Kuliah

    Menggunakan Algoritma Steepest Ascent Hill Climbing

    (Studi Kasus : Fakultas Psikologi UKSW)

    Artikel Ilmiah

    Peneliti:

    Klaudius Nikotino Putranto (672008192)

    M. A. Ineke Pakereng, M.Kom.

    Ramos Somya, S.Kom., M.Cs.

    Program Studi Teknik Informatika

    Fakultas Teknologi Informasi

    Universitas Kristen SatyaWacana

    Salatiga

    Mei 2012

  • 2

  • 3

  • 4

    Perancangan dan Implementasi

    Penjadwalan Mata Kuliah

    Menggunakan Algoritma Steepest Ascent Hill Climbing

    (Studi Kasus : Fakultas Psikologi UKSW)

    1) Klaudius Nikotino P.,

    2) M. A. Ineke Pakereng,

    3) Ramos Somya

    Fakultas Teknologi Informasi

    Universitas Kristen Satya Wacana

    Jl. Diponegoro 52-60, Salatiga 50771, Indonesia

    Email: 1)

    [email protected], 2)

    [email protected] 3)

    [email protected]

    Abstract

    Schedule of courses has been one of the most important part in a universitys

    teaching and learning activity. The large number of courses and lecturers that are

    involved, make some clashes on courses schedule or class rooms schedule could happens frequently, so it requires an application to simplify the process of developing the

    course schedule. Steepest ascent hill climbing algorithm is an algorithm that generates all possible solutions, and then checks every solution to obtain optimum solution. The

    result of this research is this course scheduling system can facilitate courses schedulling,

    in addition steepest ascent hill climbing algorithm is able to obtain optimum scheduling

    courses solutions.

    Keywords : Course Schedulling, Steepest Ascent Hill Climbing

    Abstrak

    Jadwal mata kuliah telah menjadi salah satu bagian terpenting dalam proses

    belajar mengajar sebuah universitas. Banyaknya jumlah mata kuliah dan dosen yang terlibat, mengakibatkan sering terjadinya bentrokan jadwal mata kuliah atau pun dalam

    pemakaian ruang perkuliahan, sehingga diperlukan sebuah aplikasi guna mempermudah

    proses penyusunan jadwal mata kuliah tersebut. Algoritma steepest ascent hill climbing adalah algoritma yang mengumpulkan seluruh solusi yang mungkin, dan mengecek setiap

    solusi untuk memperoleh solusi yang optimal. Hasil dari penelitian ini adalah aplikasi

    yang dibangun dapat digunakan untuk memudahkan penjadwalan mata kuliah selain itu algoritma steepest ascent hill climbing mampu memperoleh solusi penjadwalan mata

    kuliah yang optimal.

    Kata Kunci : Penjadwalan Mata Kuliah, Steepest Ascent Hill Climbing. 1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya

    Wacana Salatiga. 2) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga. 3) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga.

    mailto:[email protected]

  • 5

    1. Pendahuluan

    Jadwal mata kuliah menjadi salah satu bagian terpenting dalam proses belajar

    mengajar suatu lembaga pendidikan, termasuk Fakultas Psikologi Universitas

    Kristen Satya Wacana. Banyaknya jumlah mata kuliah dan dosen yang terlibat,

    mengakibatkan sering terjadinya bentrokan jadwal mata kuliah atau pun dalam

    pemakaian ruang perkuliahan.

    Terdapat beberapa aspek yang perlu dipertimbangkan dalam menyusun jadwal

    mata kuliah yang baik. Pada Aspek dosen perlu dihindari adanya jadwal mengajar

    2 (dua) mata kuliah yang berbeda pada hari dan jam yang sama. Pada aspek ruang,

    ketersediaan ruang pun menjadi pertimbangan tersendiri dan menjadi poin penting

    yang tidak dapat diabaikan dalam pembuatan jadwal mata kuliah, di mana dalam

    pembuatan setiap jadwal mata kuliah, harus melihat ketersediaan ruang yang ada

    serta kapasitas maksimal masing-masing ruang. Proses penyusunan jadwal mata

    kuliah atau yang dalam istilah asing disebut university timetabling problem ini

    bukanlah pekerjaan mudah dan kerap kali terjadi kesalahan. Sejauh ini Fakultas

    Psikologi Universitas Kristen Satya Wacana masih melakukan penyusunan jadwal

    mata kuliah secara manual. Selain rentan terjadi kesalahan dalam pelaksanaannya,

    proses penyusunan jadwal mata kuliah tersebut juga merepotkan serta kurang

    efektif dan efisien, sehingga diperlukan sebuah aplikasi guna mempermudah

    proses penyusunan jadwal mata kuliah tersebut. Dalam aplikasi tersebut

    diperlukan pula metode optimasi untuk memperoleh hasil yang terbaik, mengingat

    banyaknya aspek yang harus dipertimbangkan. Sehingga dibutuhkan algoritma

    yang dapat menyelesaikan masalah multi-kriteria dan multi-objektif, seperti

    penyusunan jadwal mata kuliah. Salah satu algoritma yang dapat digunakan

    adalah steepest ascent hill climbing. Berdasarkan latar belakang tersebut, muncul

    sebuah ide untuk membuat sebuah penjadwalan mata kuliah menggunakan

    algoritma steepest ascent hill climbing.

    2. Kajian Pustaka

    Penelitian tentang penjadwalan mata kuliah telah cukup banyak dilakukan.

    Pada penelitian berjudul Aplikasi Algoritma Genetik untuk Optimasi Penjadwalan

    Kegiatan Belajar Mengajar, diperoleh hasil bahwa aplikasi penjadwalan mata

    kuliah dapat menyusun jadwal mata kuliah secara optimal, selain itu dapat

    meminimalkan frekuensi mengajar seorang dosen, frekuensi kuliah suatu kelas

    dan faktor pengaruh lainnya [1]. Penelitian lainnya, yaitu Penggunaan Tabu

    Search dalam Penjadwalan Kuliah dan Ujian Perguruan Tinggi (Studi Kasus :

    Sekolah Tinggi Manajemen Bandung) diperoleh kesimpulan bahwa aplikasi

    penjadwalan ini mempermudah bagian sekretariat dalam menyusun jadwal kuliah

    dan ujian pada tiap semesternya [2].

    Demikian pula dengan penerapan algoritma steepest ascent hill climbing

    dalam suatu aplikasi atau pun penelitian mengenai algoritma tersebut telah cukup

    banyak dilakukan. Penelitian yang membahas tentang Implementasi Metode

    Steepest Ascent Hill Climbing pada Mikrokontroler MCS51 untuk Robot Mobil

    Pencari Jalan Terpendek diperoleh kesimpulan bahwa algoritma steepest ascent

  • 6

    hill climbing dapat diterapkan pada masalah pencarian jarak terpendek serta dapat

    bekerja dengan cukup baik [3]. Penelitian lain tentang Algoritma Steepest Ascent

    Hill Climbing untuk Menyelesaikan Masalah Penugasan menunjukkan bahwa

    algoritma steepest ascent hill climbing dapat melakukan perhitungan yang akurat

    pada kasus penugasan [4].

    Berdasarkan penelitian sebelumnya terkait penjadwalan mata kuliah, dan

    penelitian penerapan algoritma steepest ascent hill climbing, maka melalui

    penelitian ini akan dirancang sebuah penjadwalan mata kuliah menggunakan

    algoritma steepest ascent hill climbing. Algoritma steepest ascent hill climbing

    memiliki keunggulan di mana semua solusi yang mungkin akan dibangkitkan

    kemudian akan diperiksa satu persatu, sehingga akan diperoleh solusi terbaik dan

    mendekati hasil optimasi yang diharapkan.

    Algoritma Steepest Ascent Hill Climbing

    Algoritma steepest ascent hill climbing adalah salah satu algoritma yang

    sering digunakan untuk memecahkan masalah optimasi. Secara harafiah steepest

    berarti tertinggi, sedangkan ascent adalah kenaikan. Sehingga steepest ascent

    dapat diartikan sebagai kenaikan tertinggi, di mana prinsip dasar dari algoritma ini

    adalah mencari kenaikan tertinggi dari solusi-solusi yang mungkin terjadi, untuk

    mencapai nilai yang paling optimal [5].

    Algoritma steepest ascent hill climbing merupakan pengembangan dari

    algoritma simple hill climbing. Perbedaan kedua algoritma ini adalah, pada simple

    hill climbing, next state akan ditentukan dengan membandingkan current state

    dengan satu successor saja. Proses pembandingan ini dimulai dari sebelah kiri.

    Apabila ditemukan successor baru yang lebih baik dari current state maka

    successor tersebut akan menjadi next state. Sedangkan pada steepest ascent hill

    climbing dalam menentukan next state, current state akan dibandingkan dengan

    semua successor yang ada di dekatnya, sehingga next state yang diperoleh

    merupakan successor yang paling baik serta mendekati hasil optimasi yang

    diharapkan. Selain itu pada steepest ascent hill climbing urutan penggunaan

    operator tidak berpengaruh terhadap solusi, sedangkan pada simple hill climbing

    urutan penggunaan operator sangat berpengaruh.

    Adapun urutan atau langkah dari algoritma steepest ascent hill climbing

    [5] adalah sebagai berikut : (1) Pada keadaan awal dilakukan pengujian: jika

    merupakan tujuan maka berhenti; dan jika tidak maka lanjutkan pencarian dengan

    keadaan sekarang sebagai keadaan awal; (2) Lakukan proses berikut tujuan

    tercapai atau hingga iterasi tidak memberikan perubahan pada keadaan sekarang :;

    (a) Tentukan SUCC sebagai nilai heuristik terbaik dari successor-successornya;

    (b) Lakukan proses berikut untuk tiap operator yang digunakan oleh keadaan

    sekarang :; (i) Gunakan operator tersebut dan bentuk keadaan baru.; (ii) Evaluasi

    keadaan baru yang diperoleh. Jika merupakan tujuan, keluar. Jika bukan,

    bandingkan nilai heuristik yang ada dengan SUCC, apabila lebih baik, jadikan

    nilai heuristik keadaan baru sebagai SUCC. Namun apabila tidak lebih baik, maka

    nilai SUCC tetap.; (c) Jika SUCC lebih baik dari nilai heuristik keadaan sekarang,

    ubah node SUCC menjadi keadaan sekarang.