BAB II LANDASAN TEORI Pada bab ini akan dibahas menenai konsep dasar masalah penjadwalan kuliah, aloritma memetika serta komponen aloritma memetika. Aoritma memetika diilhami dari proses evolusi makhluk hidup, sedankan penjadwalan kuliah merupakan baian dari penjadwalan denan kriteria dan kendala tertentu. Hubunan dari kedua hal tersebut adalah aloritma memetika dapat diunakan untuk menyelesaikan masalah penjadwalan kuliah. 2.1 PENJADWALAN KULIAH STANDAR INTERNASIONAL Masalah penjadwalan kuliah bermula dari kompetisi membuat jadwal kuliah di 20 instansi di Universitas Napier di Edinburh Skotlandia. Model permasalahan telah ditetapkan, tetapi partisipan dapat menunakan berbaai metode untuk menyelesaikannya. Berikut akan dibahas model masalah penjadwalan kuliah standar internasional dan mesin penjadwalan kuliah.
2 2.1.1 Deskripsi Masalah Penjadwalan Kuliah Standar Internasional Masalah penjadwalan kuliah standar internasional dikenal denan University Course Timetablin Problem ( UCTP ) akan menjadwalkan sejumlah kuliah denan 45 slot-waktu yakni 9 slot-waktu per hari dari senin sampai denan jumat. Komponen yan mempenaruhi jadwal terdiri dari kapasitas ruanan yan tersedia, waktu kehadiran dosen, mahasiswa penikut kuliah, serta batasan-batasan yan ditentukan. Batasan atau kendala yan terdapat dalam UCTP terbai dalam dua kateori yaitu kendala hard dan kendala soft. Kendala hard merupakan kendala essensial yan harus terpenuhi dalam pembuatan jadwal, sedankan kendala soft merupakan kendala nonessensial yan menentukan kualitas dari jadwal yan dihasilkan. Kendala hard dan soft terjadi akibat interaksi antar komponen jadwal, seperti kapasitas ruan dan jumlah mahasiswa penikut kuliah, selain itu interaksi jua dapat terjadi antar kuliah-kuliah yan tidak boleh dijadwalkan pada waktu yan bersamaan. Klasifikasi kedua kendala tersebut telah ditentukan oleh Universitas Napier karena disesuaikan denan kondisi penjadwalan kuliah di universitas tersebut. Berikut adalah kendala hard dalam UCTP, untuk membentuk solusi jadwal kuliah yan layak kendala-kendala ini harus terpenuhi:
3 1. H1: Dua atau lebih kuliah tidak dapat diberikan pada suatu waktu denan ruanan yan sama 2. H2: Setiap kuliah harus dilakukan pada ruanan yan memenuhi fasilitas dan kapasitas untuk kuliah tersebut. 3. H3: Tidak ada mahasiswa yan mendapat 2 / lebih kuliah pada waktu yan sama. Setelah seluruh kendala hard terpenuhi dalam pembentukan jadwal, maka akan dilanjutkan denan meminimumkan funsi penalti kendala soft yakni pelanaran jadwal terhadap kendala soft sedapat munkin diminimalisasi. Berikut adalah kendala soft yan telah didefinisikan dalam UCTP: 1. S1: Mahasiswa tidak memperoleh kuliah pada akhir slot-waktu terakhir setiap hari 2. S2: Mahasiswa tidak mendapat kuliah lebih dari 6 jam berturut- turut 3. S3: Mahasiswa tidak memperoleh hanya satu kuliah dalam 1 hari 2.1.2 Mesin Penjadwalan Kuliah Sejarah mesin penjadwalan kuliah bermula dari kompetisi menyelesaikan masalah penjadwalan kuliah standar internasional. Penujian dan penilaian kompetisi ini menunakan data 20 instansi di Universitas Napier di Edinburh Skotlandia dimana penalti soft terbaik dan terburuk
4 setiap mata kuliah telah diketahui. Kompetisi tersebut menundan perhatian partisipan dari seluruh penjuru dunia denan berbaai metode pendekatan. Penilain untuk masin-masin partisipan berdasar atas penalti kendala soft yan dihitun sebaai berikut : dimana : j := Partisipan ke-j p i := Himpunan 20 instansi f i := Penalti soft instansi ke-i j b f ( j ) f ( j ) w b f ( j ) f ( j ) j i i i i i I i i i i j j i := Jadwal yan disusun oleh partisipan j untuk instansi ke-i b j i := Jadwal terbaik pada instansi ke-i yan telah diketahui w j i := Jadwal terburuk pada instansi ke-i yan telah diketahui Penjumlahan suku-suku tersebut menhasilkan penalti untuk partisipan ke-j, sehina pemenan kompetisi adalah partisipan denan penalti minimum. Ternyata denan sistem penilaian kompetisi diatas, aloritma hibrid metaheuristik menjadi aloritma yan palin efektif. Aloritma memetika jua telah diujikan dalam masalah tersebut dan hasilnya adalah seluruh kendala hard dan soft seluruh instansi terpenuhi denan waktu komputasi yan efektif (Rossidoria, 2004). Hal itu menjadi alasan penulis untuk menunakan aloritma memetika dalam skripsi ini.
5 2.2.3 Penjadwalan Kuliah di Departemen Matematika UI Penjadwalan kuliah di departemen Matematika UI melibatkan beberapa komponen yakni sejumlah ruan kuliah, dosen, serta mahasiswa. Penjadwalan kuliah awal tahun 2008 tersedia 8 ruan kuliah denan beraam kapasitas, 35 dosen yan memberikan kuliah pada jam kehadiran, serta mahasiswa terbai atas 7 kelompok yaitu kelompok mahasiswa tinkat 1, tinkat 2, serta 5 bidan minat. Kendala dalam pembentukan model penjadwalan kuliah di departemen matematika UI dibuat melalui penambanan UCTP serta penyesuaian denan kondisi penjadwalan perkuliahan di departemen Matematika UI. Penembanan dan penyesuaian itu menakibatkan penambahan 2 kendala hard serta 1 kendala soft yan didefinisikan sebaai berikut: Kendala hard: 1. H1: Dua atau lebih kuliah tidak dapat diberikan pada suatu waktu denan ruanan yan sama 2. H2: Setiap kuliah harus dilakukan pada ruanan yan memenuhi fasilitas dan kapasitas untuk kuliah tersebut. 3. H3: Tidak ada mahasiswa yan mendapat 2 / lebih kuliah pada waktu yan sama.
6 4. H4: Dosen dituaskan hanya pada waktu kehadiran 5. H5: Dosen tidak dapat memberikan 2 atau lebih kuliah pada waktu yan bersamaan Kendala soft: 1. S1: Mahasiswa tidak memperoleh kuliah pada akhir slot-waktu terakhir setiap hari 2. S2: Mahasiswa tidak mendapat kuliah lebih dari 6 jam berturut- turut 3. S3: Mahasiswa tidak memperoleh hanya satu kuliah dalam 1 hari 4. S4: Kuliah tidak dilansunkan bersamaan denan prasyaratnya. Penambahan kendala tersebut merupakan penyesuaian denan kondisi penjadwalan kuliah di departemen Matematika UI yan akan diselesaikan menunakan aloritma memetika. 2.2 KONSEP DASAR ALGORITMA MEMETIKA Penertian Memetika adalah suatu ilmu penetahuan yan mempelajari proses replikasi (replication), penyebaran (spread), dan evolusi ( evolution ) dari meme atau pola informasi. Meme dapat direplikasi melalui komunikasi antar sesama individu, tanpa ada keterkaitan denan tinkat replikasi dari en masin-masin individu dan dapat disebarkan ke individu
7 lain melalui berbaai cara seperti pencarian lokal, pindah silan, evolusi atau denan cara lainnya. Proses replikasi meme disebut jua process of self-reproduction atau the memetic life-cycle yan dilanjutkan denan penyebaran meme. Penyebaran terjadi melalui sebuah kelompok dari beberapa individu. Urutan proses tersebut menilustrasikan meme sebaai suatu replicator seperti layaknya suatu en. Proses replikasi pada en hanya dapat terjadi dari oran tua kepada anaknya (vertical transmission) yan merupakan konsep dari aloritma enetika, sedankan proses replikasi pada meme dapat jua terjadi dalam satu individu (horizontal transmission). Gabunan kedua konsep itu diunakan sebaai dasar aloritma memetika, selanjutnya meme dalam aloritma memetika jua disebut denan en. Individu dalam aloritma enetika dan memetika direpresentasikan denan satu kromosom, kromosom inilah yan mewakili kandidat solusi permasalahan. Kromosom terdiri atas beberapa en yan membawa informasi baian solusi permasalahan, sedankan kumpulan dari kromosom biasa disebut denan populasi. Aloritma memetika adalah pendekatan yan dilakukan berdasarkan populasi kromosom untuk pemecahan suatu masalah optimasi. Karena aloritma memetika hanya suatu pendekatan maka aloritma tersebut termasuk dalam metode heuristik yakni suatu metode yan diunakan ketika ukuran ruan pencarian solusi sulit dikontrol secara eksak dan belum ada
8 aloritma yan dapat mencari solusi optimal secara efektif. Aloritma memetika memiliki kompleksitas yan lebih tini dibandinkan aloritma enetika (untuk domain tertentu) karena adanya penambahan pencarian solusi lokal. 2.3 KOMPONEN ALGORITMA MEMETIKA Pada dasarnya aloritma memetika terdiri dari tujuh komponen yaitu skema penkodean, funsi penalti, seleksi oran tua, pindah silan ( crossover ), pencarian lokal, mutasi, dan perantian populasi. Berikut akan dijelaskan menenai masin- masin komponen di atas. 2.3.1 Skema penkodean Terdapat 3 skema yan palin umum diunakan yakni : Real number encodin yaitu penkodean nilai en berada dalam interval [0, R], dimana R adalah bilanan positif yan biasanya bernilai 1 Discrete decimal encodin yaitu penkodean nilai en bisa bernilai dari salah satu bilanan bulat dalam interval [0, N]
9 Binary encodin yakni setiap en hanya bisa bernilai 0 atau 1 kromosom : Berikut merupakan ambaran skema penkodean en-en dalam 0,3001 0,1000 10,000 Real number encodin en1 en2 en3 1 3 2 45 56 9 0 23 9 Discrete decimal encodin en1 en2 en3 en4 en5 en6 en7 en8 en9 0 1 0 0 1 0 1 1 1 Binary encodin en1 en2 en3 en4 en5 en6 en7 en8 en9 Gambar 1: Penkodean kromosom dalam aloritma memetika 2.3.2 Funsi penalti Funsi penalti merupakan nilai yan terdapat dalam suatu kromosom yan menentukan kualitas atau kelayakan suatu solusi masalah. Makna dari nilai menandakan penalti atas pelanaran terhadap suatu kendala. Akibatnya, semakin kecil nilai penalti akan meninkatkan kualitas solusi, sedankan kelayakan solusi ditentukan oleh batasan suatu nilai penalti.
10 Dalam masalah optimasi, nilai penalti tersebut biasanya diminimumkan sehina diperoleh solusi denan jumlah pelanaran kendala yan palin sedikit. 2.3.3 Seleksi oran tua Seleksi oran tua merupakan cara pemilihan dua kromosom sebaai oran tua. Dalam aloritma memetika, seleksi oran tua merupakan baian dari evolusi yakni proses mendekati kandidat solusi permasalahan yan diharapkan. Sebelum proses seleksi oran tua harus terdapat populasi awal yan berisi sejumlah kromosom yan diinisialisasi terlebih dahulu baik denan random, nonrandom atau abunannya. Proses seleksi dapat dilakukan denan turnamen (tournament selection) atau roulette while. Turnamen berukuran n dilakukan denan memilih n kromosom secara random kemudian kromosom denan nilai penalti terbaik akan menjadi salah satu oran tua terpilih. Seleksi denan Roulette while dilakukan denan memberi proporsi yan proporsional denan kebalikan nilai penalti setiap kromosom, kemudian salah satu oran tua dipilih secara random denan probabilitas sebesar proporsi tersebut. 2.3.4 Pindah silan (crossover) Pindah silan (crossover) merupakan komponen palin pentin dalam aloritma enetika dan memetika karena proses inilah yan dapat mendekati kromosom-kromosom sebaai kandidat solusi yan diharapkan. Kromosom
11 yan menarah pada nilai penalti yan lebih baus diperoleh dari proses memindah-silankan dua buah kromosom yan diperoleh dari seleksi oran tua. Pindah silan dapat menhasilkan satu atau beberapa kromosom yan biasa disebut denan kromosom anak. Perhatikan contoh pindah silan berikut : titk poton oran tua 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 oran tua 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 anak 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 anak 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 kromoso m 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 Gambar 2: Pindah silan 1 titik poton Pindah silan dapat berakibat buruk jika jumlah populasinya sanat kecil karena suatu kromosom denan en-en yan menarah ke solusi ( kromosom yan diharapkan) akan sanat cepat menyebar ke kromosom-
12 kromosom lainnya. Untuk menatasi masalah ini pindah silan hanya bisa dilakukan untuk probabilitas tertentu katakanlah p c, artinya pindah silan dilakukan jika suatu bilanan random [0,1) yan dibankitkan kuran dari p c yan ditentukan. Pada umumnya, p c diset mendekati satu, misalnya 0.8. Pindah silan jua dapat dilakukan denan cara yan berbeda-beda, yan palin sederhana adalah pindah silan satu titik poton (one-point crossover) seperti pada Gambar 2. Titik poton dipilih secara random, kemudian baian pertama dari oran tua 1 diabunkan denan baian kedua oran tua 2 dan sebaliknya. Untuk kasus kromosom yan sanat panjan, misalnya 2000 en, munkin diperlukan beberapa titik poton. Namun, penentuan jumlah titik poton ini tidak mutlak, artinya boleh berapa saja. Pindah silan denan n titik ini serin disebut denan n-point crossover, dimana n titik poton dipilih secara random dan baian-baian kromosom dipilih denan probabilitas 0,5 dari salah satu oran tuanya. Salah satu skema pindah silan yan lain adalah pindah silan seraam (uniform crossover), yakni jika n titik poton dipilih sebanyak jumlah en dikurani satu. 2.3.5 Mutasi Mutasi merupakan proses pertukaran / perubahan informasi yan dibawa oleh masin-masin en dalam kromosom anak hasil pindah silan. Mutasi ini bertujuan untuk menurani kesamaan informasi yan dibawa oleh kromosom anak dan oran tua, sehina dapat berkontribusi untuk menuju
13 kromosom yan palin berkualitas. Mutasi dilakukan pada beberapa en dalam kromosom anak denan probabilitas mutasi yan relatif kecil yakni p mut, dimana p mut biasanya diset sebesar 1/n. Mutasi adaptive merupakan mutasi yan dilakukan pada beberapa en sehina tersedia tempat yan layak untuk en-en yan hilan akibat pindah silan. 2.3.6 Pencarian lokal Pencarian lokal merupakan pertukaran / penempatan kembali informasi yan dibawa oleh en-en dalam satu kromosom anak denan harapan dapat meninkatkan kualitas kromosom tersebut. Pencarian lokal dapat dilakukan denan menukar dua en, atau permutasi beberapa en tanpa menurani kualitas dari kromosom sebelumya. Dalam kasus tertentu pencarian lokal hanya dilakukan kepada en yan terkena penalti, artinya hanya informasi yan kuran tepat yan dipertukarkan antar en dalam satu kromosom yan sama. 2.3.7 Perantian populasi Perantian populasi merupakan pembentukan populasi baru yan beranotakan kromosom-kromosom yan lebih berkualitas. Denan perantian populasi yan dilakukan terus menerus diharapkan kandidat solusi permasalahan semakin medekati optimal. Secara umum perantian populasi ini dilakukan denan memasukkan satu atau dua kromosom anak ke
14 populasi awal dan membuan satu atau dua kromosom dalam populasi awal yan mempunyai nilai penalti terbesar.