• Tidak ada hasil yang ditemukan

OPTIMASI PENJADWALAN PERKULIAHAN MENGGUNAKAN METODE SIMULATED ANNEALING (STUDI KASUS: PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS YUDHARTA PASURUAN)

N/A
N/A
Protected

Academic year: 2021

Membagikan "OPTIMASI PENJADWALAN PERKULIAHAN MENGGUNAKAN METODE SIMULATED ANNEALING (STUDI KASUS: PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS YUDHARTA PASURUAN)"

Copied!
8
0
0

Teks penuh

(1)

1

OPTIMASI PENJADWALAN PERKULIAHAN MENGGUNAKAN METODE

SIMULATED ANNEALING

(STUDI KASUS: PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS

YUDHARTA PASURUAN)

ABDUL AZIZ

Fakultas Teknik, Program Studi Teknik Informatika Universitas Yudharta Pasuruan

ABSTRAK

Penjadwalan berkaitan dengan mengalokasikan sumber daya yang terbatas untuk mengoptimalkan fungsi tujuan tertentu. Dan yang sering terjadi pada kegiatan penjadwalan perkuliahan dimungkinkan karena masalah dari segi mahasiswa, keterbatasan dosen, dan waktu ketersediaan dosen untuk mengajar kuliah. Selain itu, harus dipertimbangkan juga ketersediaan kelas sehingga kegiatan belajar dapat dilaksanakan. Permasalahan diatas biasanya yang sering disebut dengan University Timetabling Problems (UTP).

Agar dalam proses pembuatan jadwal tidak terlalu banyak/meminimalkan constraint, maka dalam permasalahan ini diperlukan sebuah optimasi yang dapat diterapkan dalam membuat penjadwalan mata kuliah. Optimasi ini tidak bisa sepenuhnya menghasilkan hasil yang optimal tapi mendekati optimal.

Simulated Annealing adalah algoritma metaheuristik pencarian lokal yang digunakan untuk mengatasi masalah diskrit. Masalah yang membutuhkan pendekatan Simulated Annealing adalah masalah-masalah optimasi kombinatorial, dimana ruang pencarian yang ada terlalu besar, sehingga hampir tidak mungkin ditemukan solusi eksak terhadap permasalahan ini.

Kata Kunci: Penjadwalan Perkuliahan, Optimasi, Simulated Annealing

1. PENDAHULUAN

Penjadwalan berkaitan dengan mengalokasikan sumber daya yang terbatas untuk mengoptimalkan fungsi tujuan tertentu [1]. Kendala yang terjadi pada kegiatan penjadwalan perkuliahan dimungkinkan karena masalah dari segi mahasiswa, keterbatasan dosen, dan waktu ketersediaan dosen untuk mengajar kuliah. Selain itu, harus dipertimbangkan juga ketersediaan kelas sehingga kegiatan belajar dapat dilaksanakan. Permasalahan diatas biasanya yang sering disebut dengan University Timetabling Problems (UTP)[2]. Bila menggunakan sistem manual maka masalah ini membutuhkan waktu proses yang cukup lama untuk pencarian solusinya, terlebih lagi bila ukuran

permasalahan semakin besar, seperti bertambahnya jumlah komponen dan tetapan atau syarat yang ditentukan oleh institusi tempat jadwal tersebut digunakan.

Di Universitas Yudharta Pasuruan khususnya di Jurusan Teknik Informatika juga mengalami kendala seperti di atas. Untuk memecahkan masalah penjadwalan ada dua pendekatan yang dapat diambil yaitu dengan menggunakan metode solusi yang tepat dan pendekatan dengan menggunakan heuristik atau metode pendekatan [3].

Berdasarkan aspek-aspek di atas, agar dalam proses pembuatan jadwal tidak terlalu banyak/meminimalkan constraint, maka dalam permasalahan ini diperlukan sebuah optimasi

(2)

2

yang dapat diterapkan dalam membuat penjadwalan mata kuliah. Optimasi ini tidak bisa sepenuhnya menghasilkan hasil yang optimal tapi mendekati optimal.

Ada beberapa metode optimasi yang sering digunakan untuk menyelesaikan penjadwalan yang masing-masing memiliki keunggulan sendiri [4]. Metode tersebut antara lain, Ant Colony, Simulated Annealing, dan Genetic Algorithm. Kelebihan Ant Colony adalah dapat diterapkan secara sempurna dengan perubahan minimal ke permasalahan optimasi kombinasi, Simulated Annealing memiliki keunggulan lebih cepat dalam menyelesaikan iterasinya, sedangkan Genetic Algorithm dapat digunakan untuk mencari berbagai solusi persoalan yang ada di dunia nyata.

Pada penelitian ini akan menggunakan metode Simulated Annealing sebagai metode optimasi dalam penjadwalan. Simulated Annnealing adalah algoritma penjadwalan probabilistik yang dimodelkan dari proses metalurgi dalam ilmu fisika [5]. Karena kepopularitasannya dan fleksibilitas dalam

permasalahan metaheuristik ini yang membuat penulis menggunakan metode Simulated Annealing [6]. Diharapkan dengan algoritma Simulated Annealing ini penjadwalan yang dibuat bisa lebih optimal.

2. LANDASAN TEORI 2.1. Penjadwalan

Definisi jadwal pada sebuah kutipan kamus bahasa Indonesia, jadwal adalah pembagian waktu berdasarkan rencana pengaturan urutan kerja, daftar (tabel kegiatan) atau rencana kegiatan dengan pembagian waktu pelaksanaan yang terinci.Adapun pengertian penjadwalan menurut beberapa ahli:

Dalam kutipan buku “Multicriteria Schedulling: Theory, Models and Algorithms” karya Vincent T’kindt and Jean-Charles Billaut, penjadwalan adalah proses pengolahan karya dengan memanfaatkan sumber daya untuk melakukan tugas dan memperbaiki waktu mulai mereka [7].

Menurut Michael L. Pinedo dalam bukunya

yang berjudul “Schedullig: Theory, Algorithms, and Systems”, penjadwalan merupakan proses pembuatan keputusan yang yang digunakan secara teratur yang berhubungan dengan sumber daya alokasi tugas selama periode waktu tertentu dan tujuannya adalah untuk mengoptimalkan satu atau lebih tujuan [8].

Dalam buku “School Timetable Construction: Algorithms Complexity” karya Robertus J. Willemen, jadwal adalah tabel peristiwa yang diatur sesuai dengan waktu. Sebuah jadwal harus memenuhi sejumlah persyaratan dan harus memuaskan keinginan semua orang yang terlibat secara bersamaan dengan sebaik-baiknya. Waktu kejadian harus sedemikian rupa bahwa tidak ada yang memiliki lebih dari satu acara di waktu yang sama [9].

Jadi, penjadwalan merupakan proses penyusunan jadwal. Permasalahan penjadwalan biasanya berhubungan dengan penjadwalan kelas dalam sekolah atau perkuliahan dan juga dalam lingkup yang tidak jauh berbeda seperti penjadwalan pelajaran sekolah, penjadwalan ujian, atau dapat juga penjadwalan karyawan.

2.2. Penjadwalan Perkuliahan

Penjadwalan mata kuliah merupakan proses pengaturan jadwal dengan memperhatikan dosen, ruang kelas, mata kuliah dan waktu yang disesuaikan dengan sejumlah batasan tertentu. Pada penjadwalan mata kuliah sejumlah mata kuliah harus dijadwalkan ke dalam ruang dan slot (pembagian) waktu tertentu dimana penjadwalan tersebut memperhatikan aturan-aturan dan batasan penjadwalan yang telah ditentukan.

Dalam kutipan buku “School Timetable Contruction”, ada beberapa survey mengenai masalah penjadwalan. Schaerf memberikan gambaran literatur tentang masalah penjadwalan [9].

(3)

3

Gambar 1 Konsep penjadwalan 2.3. Optimasi

Optimasi merupakan aktivitas untuk mendapatkan hasil yang terbaik dari pilihan yang tersedia, yang disebut optimal. Optimasi juga merupakan bidang interdisipliner matematika dan ilmu komputer yang membicarakan jumlah untuk memilih elemen terbaik dari beberapa set alternatif yang tersedia dan mempelajari sifat-sifatnya. Optimasi telah dipakai di mana-mana seperti ke berbagai arah penelitian teoritis dan terapan matematika modern.

Optimasi dalam arti luas merupakan suatu disiplin yang mencakup berbagai bidang, termasuk nonsmooth dan analisis cembung, analisis numerik, teori kompleksitas komputasi, dan teori algoritma. Misalnya, terutama dalam pengaturan dimensi tak terbatas, hanya mampu menjamin adanya solusi. Optimasi modern memiliki asal-usul dalam pemrograman linier, dikembangkan pada tahun 1930 dan 1940-an oleh Leonid Kantorovich, John von Neumann dan George Dantzig, yang berkaitan dengan masalah meminimalkan fungsional linear.

2.4. Simulated Annealing

Simulated Annealing adalah algoritma metaheuristik pencarian lokal yang digunakan untuk mengatasi masalah diskrit. Masalah yang membutuhakan pendekatan Simulated Annealing adalah masalah-masalah optimasi kombinatorial, dimana ruang pencarian yang ada terlalu besar, sehingga hampir tidak mungkin ditemukan solusi eksak terhadap permasalahan ini. Publikasi tentang pendekatan ini pertama kali dilakukan oleh Kirkpatrick, Gelett dan Vecchi pada tahun 1983 yang diaplikasikan pada desain optimal hardware komputer, dan juga pada masalah Traveling Salesman Problem. Dan Cerny pada tahun 1985

untuk menemukan fungsi biaya global minimum yang mungkin diproses [10].

Menurut Kirkpatrick (Kirkpatrick, 1983), ada tiga hal utama yang perlu diperhatikan dalam penggunaan Simulated Annealing untuk memodelkan suatu permasalahan [5]:

1. Representasi yang akurat dari konfigurasi dalam suatu permasalahan.

2. Proses modifikasi, langkah acak atau perubahan apa yang harus dilakukan terhadap elemen-elemen konfigurasi untuk menghasilkan konfigurasi berikutnya.

3. Fungsi evaluasi atau fungsi objektif yang dapat menyatakan baik-buruknya suatu solusi terhadap permasalahan.

Optimasi dengan metode simulated annealing ini membutuhkan:

a. Spesifikasi sebuah fungsi objektif nilai tunggal dengan baik.

b. Deskripsi ruang variabel independen dan daerah di mana solusi akan dicari.

c. Definisi lingkungan dari suatu titik dalam ruang variabel independen.

d. Prosedur yang menghasilkan pseudo acak melalui lingkungan yang berdampingan. e. Kriteria untuk penghentian random walk.

Pada Gambar 2 disajikan flowchart Simulated Annealing secara umum menurut Dr. Ayman Hammadeh [11].

Struktur Algoritma Simulated Annealing secara umum adalah sebagai berikut [12]:

1. Cari solusi awal S menggunakan parameter awal dan metode heuristik awal yang dapat ditentukan sendiri.

2. Tetapkan suatu nilai temperatur awal T yang cukup tinggi, dimana T>0

3. Pada keadaan titik frozen, lakukan: a. Lakukan L kali:

i. Cari solusi neighbourhoodS’ dari S menggunakan metode yang dapat ditetapkan sendiri.

ii. Ä = Nilai objektif (S’) – Nilai objektif (S).

iii. Jika Ä<0, maka tetapkan S=S’, jika tidak maka tetapkan S=S’ dengan probabilitas exp(-Ä/T).

Dosen

Mata Kuliah Waktu Mahasisw

a

(4)

4

b. Turunkan T, T = 0.9*T c. Dapatkan solusi optimal.

Start

Masukan dan Bentuk State Awal dari

Tetapkan Suhu Awal

Hasilkan Solusi Baru

Apakah Solusi Baru Lebih Baik Dari Solusi

Sekarang ?

Ganti Solusi Lama Dengan

Apakah Percobaan Sudah Maksimal Untuk Suhu Saat Ini ?

Turunkan Suhu Dengan Tingkatan Yang

Ditentukan

Mencapai Suhu Terendah Dibolehkan

Stop

Gambar 2 SA secara umum

Berikut ini adalah pemetaan dari Physical Annealing ke Simulated Annealing [11]:

Tabel 3 Physical Annealing Fisika

(Termodinamika)

Simulated Annealing

Keadaan Sistem Solusi Yang Mungkin

Energi Biaya

Perubahan Keadaan Solusi Tenaga Temperatur Parameter

Kontrol

Keadaan Beku Solusi Heuristik

3. METODOLOGI 3.1. Tahapan Penelitian

Penelitian ini dilakukan untuk merancang dan membuat aplikasi penjadwalan mata kuliah yang fungsinya untuk membantu proses dalam hal pembuatan jadwal mata kuliah. Hal ini dikarenakan karena dalam pembuatan jadwal masih terdapat bentrokan (constraint) serta penyusunannya masih manual dan membutuhkan waktu yang lama sehingga menjadi tidak efektif dan efisien.

3.2. Analisa Data

Dari analisa proses pembuatan penjadwalan ada beberapa hal yang harus dioptimasi menggunakan menggunakan algoritma penjadwalan sehingga aplikasi penjadwalan yang dibuat dapat bekerja optimal. Hasil analisa terdapat beberapa permasalahan yang perlu dilakukan pengoptimasian, yaitu: 1. Tidak ada bentrok jam mengajar dosen. 2. Tidak ada bentrok ruang perkuliahan.

3. Dosen mengajar pada jam-jam dimana dosen tersebut tidak berhalangan untuk mengajar. 4. Ruang perkuliahan terisi dengan maksimal

dan merata.

3.3. Penulisan Kode Program

Penulisan aplikasi penjadwalan ini menggunakan bahasa pemrograman Visual Basic .Net, sedangkan untuk penyimpanan datanya menggunakan database MySql. Dengan menggunakan algoritma penjadwalan maka dimulailah teknik pengoptimasian dalam

(5)

5

tahapan ini. Selain itu teknik komputerisasi lebih lanjut juga dilakukan sehingga aplikasi penjadwalan yang diinginkan sesuai dengan harapan.

3.4. Uji Coba

Pada tahap ini diuji cobakan dengan data-data penjadwalan dan constraint yang ada menggunakan metode Simulated Annealing untuk proses pengoptimasian. Sedangkan untuk uji coba aplikasi menggunakan teknik Blackbox untuk mengujinya.

3.5. Perancangan Perangkat Lunak

(Software)

Pada penelitian ini kami berikan sebuah desain awal aplikasi yang akan digunakan sebagai interface di komputer.

Data penjadwalan yang terdiri dari gabungan dari data mata kuliah, data dosen, data ruang, data waktu dan kelas. Selanjutnya data tersebut dilakukan proses generate jadwal. Saat proses generate pertama menghasilkan jadwal awal, bila jadwal awal kondisinya masih buruk maka dilakukan generate ulang yang menghasilkan jadwal baru yang merupakan jadwal awal yang di generate ulang untuk menghasilkan jadwal yang lebih baik lagi. Bila nilai bentrok yang baru lebih baik daripada nilai bentrok jadwal awal maka jadwal baru yang dipakai, begitu sebaliknya. Pengontrol ditetapkan sebanyak mungkin untuk membatasi proses iterasi. Nilai alpha digunakan untuk menurunkan nilai pengontrol secara bertahap untuk mencapai kondisi maksimal.

. Ouput dari aplikasi berupa sebuah jadwal yang dapat dilihat berdasarkan angkatan kuliah. Output ini merupakan jadwal final dari proses Simulated Annealing. Jadwal final dapat diambil dengan menghentikan iterasi dengan syarat nilai bentrokan bernilai 0.

Constraint adalah aturan penjadwalan yang digunakan untuk menghitung nilai bentrokan. Ada dua yaitu hard constraint (tidak boleh dilanggar) dan soft constraint (boleh dilanggar).

4. HASIL DAN PEMBAHASAN 4.1. Deskripsi Program

Dalam sebuah program aplikasi yang digunakan untuk membantu pengguna dalam melakukan penjadwalan mata kuliah. Berikut ini adalah tampilan utama program dapa dilihat pada gambar 4.1 berikut ini:

Gambar 5Interface Menu Utama

1. Input Data

Program memerlukan beberapa interface untuk melalukan input data komponen penjadwalan yang meliputi beberapa interface, antara lain:

Gambar 6 Interface Dosen

(6)

6

Gambar 8 Interface Hari

Gambar 9 Interface Jam

2. Konfigurasi

Hal-hal yang perlu untuk dikonfigurasi adalah kombinasi parameter Simulated Annealing, pengontrol jadwal dan pereduksi pengontrol jadwal. Gambar 10 berikut adalah form konfigurasi parameter Simulated Annealing:

Gambar 10 Form Parameter Simulated Annealing

4.2. Penerapan Program Pada Penjadwalan Kuliah

Tabel 11 Kombinasi Default Parameter

Parameter Nilai

Pengontrol Jadwal 100 Pereduksi Pengontrol 1

Program akan dapat digunakan untuk menyelesaikan masalah penjadwalan dengan berbagai kombinasi parameter Simulated

Annealing. Pada tabel 11 dijelaskan pengontrol jadwal 100 untuk memberikan gerak bebas pada komponen penjadwalan. Pereduksi sebesar 1. Apabila parameter tersebut sudah disimpan, maka proses selanjutnya adalah pembuatan jadwal melalui tombol proses.

Gambar 12 Form Proses Jadwal

5. PENUTUP 5.1. Kesimpulan

Dari penelitian ini, dapat disimpulkan bahwa penggunaan metode optimasi menggunakan Simulated Annealing pada penjadwalan dapat diimplementasikan dengan baik. Selain itu, masih terdapat beberapa kendala yang belum tertangani dalam aplikasi ini. Kendala tersebut antara lain pada penanganan masalah jam mengajar dengan sks. Sedangkan untuk masalah ruang dan hari sudah tertangani dengan baik tanpa adanya bentrokan.

Dalam proses iterasinya, Simulated Annealing lebih cepat dalam memproses penjadwalan karena Simulated Annealing memiliki iterasi sedikit pada prosesnya sehingga proses pembuatan jadwal menjadi lebih cepat dibandingkan dengan algoritma lain yang proses iterasinya lebih banyak.

5.2. Saran Bagi Peneliti

Setelah membuat aplikasi ini, diharapkan peniliti bisa lebih mengembangkan aplikasi yang sudah ada agar lebih baik lagi sehingga mampu memberikan kontribusi pada perkembangan algoritma tersebut.

(7)

7

Konstrain dapat ditambah dan disesuaikan dengan kebutuhan dan persyaratan pembuatan jadwal yang berlaku.

Bagi Pembaca

Ruang lingkup aplikasi ini masih sangat kecil yaitu di lingkup Jurusan. Peneliti berharap untuk penelitian selanjutnya dapat dikembangkan lagi untuk ruang lingkup yang lebih besar.

DAFTAR PUSTAKA

V. Selladurai P. V. Senthiil, "Optimal Job Shop Scheduling Performance Enhancement Through Computer Based Simulated Annealing Technique," 2007.

Ivan Nugraha, "Aplikasi Algoritma Genetik Untuk Optimasi Penjadwalan Kegiatan Belajar Mengajar," Institut Teknologi, Bandung, 2008.

L.J.M Cluitmans, Using Genetic Algorithms for Scheduling Data Flow Graphs.: Eindhoven Univerisity of Technology Research Reports.

Komang Setemen, "Implementasi Algoritma Genetika Dalam Pengembangan Sistem Aplikasi Penjadwalan Kuliah," Manajemen Informasi Universitas Diponegoro, Semarang, Skripsi ISSN 1829-5282,.

Sugeng Sad Harjono, "Optimasi Penjadwalan Perkuliahan Jurusan Teknik Informatika Universitas Islam Negeri Maulana Malik Ibrahim Malang Menggunakan Metode Simulated Annealing," Teknik Informatika Universitas Negeri Maulana Malik Ibrahim, Malang, Skripsi 2012. Sheldon H. Jacobson Alexander G. Nikolaev,

Handbook of Metaheuristics, Second Edition ed., Jean-Yves Potvin Michel Gendreau, Ed. New York: Springer. Jean-Charles Billaut Vincent T’kindt,

Multicriteria Schedulling: Theory, Models and Algorithms, Second Edition ed. France: Springer.

Michael L. Pinedo, Schedullig: Theory, Algorithms, and Systems, Fourth Edition ed. New York, USA: Springer.

Robertus J. Willemen, School Timetable Construction: Algorithms Complexity. Eindhoven, Netherlands, 2002.

C. D. Gelatt, M. P. Vecchi S. Kirkpatrick, "Optimization by Simulated Annealing," JSTOR, vol. 220, pp. 671-680, May 1983.

Dr. Ayman Hammadeh, "Intelence Algorithms Simulated Annealing Algorithn," Aleppo University, 2011-2012.

N. Jawahar, P. Aravindan, S.G. Ponnambalam, "A Simulated Annealing Algorithm for Job Shop Scheduling," vol. 10, no. 8, pp. 767-777.

Lina Maria Ulfa, "Optimasi Penjadwalan Perkuliahan Menggunakan Algoritma Genetika," Universitas Negeri Maulana Malik Ibrahim, Malang, Skripsi 2011. Ruey-Maw Chen and Hsiao-Fang Shih,

"Solving University Course Timetabling Problems Using Constriction Particle Swarm Optimization with Local Search," MDPI, no. 6, pp. 227-244, April 2013.

Phuc Nguyen and Noung Tran Khang Nguyen, "A hybrid algorithm of Harmony Search and Bees Algorithm for a University Course Timetabling Problem," IJCSI, vol. IX, no. 1, January 2012.

Kirill Fakhroutdinov. Unified Modeling Language. [Online]. http://www.uml-diagrams.org/use-case-diagrams.html (2013) Smart Draw. [Online].

http://www.smartdraw.com/resources/tut orials/uml-activity-diagram/

Tripod. [Online].

http://myyee.tripod.com/cs457/dfd.htm Thomas Weise. Global Optimation Algorithms:

Theory and Aplication. [Online]. http://www.it-weise.de/

(8)

Gambar

Tabel 3 Physical Annealing  Fisika
Gambar 5Interface Menu Utama  1. Input Data
Gambar 9 Interface Jam  2.  Konfigurasi

Referensi

Dokumen terkait

Dalam tahapan ini dilakukan pengembangan algoritma Simulated Annealing (SA) dan Variable Neighbourhood Search (VNS) untuk menyelasaikan permasalahan Vehicle Routing Problem with

Pada kesempatan ini saya mengucapkan banyak terimakasih kepada pihak – pihak yang secara langsung atau tidak langsung membantu dalam tugas akhir dan penulisan

hibridisasi GA-SA dilakukan dengan membandingkan hasil rata-rata fitness tertinggi dari masing-masing pengujian algoritme genetika, algoritme simulated annealing dan

Rancang Bangun Sistem Pendukung Keputusan Penjadwalan Produksi menggunakan Metode Simulated Annealing (Studi Kasus PT. Bella Agung Citra Mandiri Sidoarjo). Skripsi

dan hidayah-Nya, sehingga penulisan naskah skripsi dengan judul RANCANG BANGUN SISTEM PENDUKUNG KEPUTUSAN OPTIMASI PENJADWALAN KEGIATAN SOSIALISASI MEDIA ELEKTRONIK

Berdasarkan eksperimen dengan 3 supplier dam 157 item menggunakan multiple can-order level dengan can-order policy yang dihasilkan algoritma Simulated Annealing,