• Tidak ada hasil yang ditemukan

Analisis Kinerja Greedy Crossover (Gx) Pada Algoritma Genetika Untuk Rostering

N/A
N/A
Protected

Academic year: 2017

Membagikan "Analisis Kinerja Greedy Crossover (Gx) Pada Algoritma Genetika Untuk Rostering"

Copied!
21
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

2.1. Pengantar

Algoritma genetika merupakan algoritma yang lahir dari sebuah inspirasi teori evolusi Darwin yang mengatakan anggota dari spesies yang lemah lambat laun akan mengalami kepunahan sedangkan anggota dari spesies yang kuat akan tetap dapat bertahan hidup dan berkembang biak untuk kelangsungan hidup spesies tersebut. Algoritma genetika merupakan sebuah algoritma pencarian yang berdasarkan mekanisme seleksi alam dan genetika alam (Goldberg, 1989).

2.1.1. Istilah-istilah dasar dalam algoritma genetika

Didalam algoritma genetika kita perlu mengetahui beberapa pengertian dari istilah-istilah yang digunakan didalam algoritma tersebut, yaitu :

1. Gen (Genotype) adalah variabel dasar yang membentuk suatu kromosom, yang dapat dinyatakan dalam bentuk biner, float, integer dan karakter.

2. Allele adalah nilai dari suatu gen, dapat berbentuk biner, float, integer maupun karakter.

3. Kromosom adalah gabungan dari gen-gen yang membentuk arti tertentu. Dalam algoritma genetika ada beberapa macam bentuk kromosom, yaitu : a. Kromosom Biner : kromosom yang disusun dari gen-gen yang bernilai

biner, kromosom ini memiliki tingkat keberhasilan yang tinggi. Kromosom ini baik digunakan untuk permasalahan yang parameter dan range nilainya tertentu.

b. Kromosom Float : kromosom yang disusun dari gen-gen yang bernilai pecahan dan yang bernilai bulat. Kromosom ini merupakan model yang memiliki parameter yang banyak dan tingkat keberhasilan dari kromosom ini rendah.

(2)

d. Kromosom Kombinatorial : kromosom yang disusun dari gen-gen yang dinilai berdasarkan urutannya.

4. Individu adalah kumpulan dari beberapa kromosom yang membentuk satu kesatuan, individu menyatakan salah satu kemungkinan solusi dari suatu permasalahan.

5. Populasi adalah sekumpulan individu yang akan diproses secara bersama-sama dalam satu siklus proses evolusi.

6. Generasi menyatakan satu kesatuan siklus proses evolusi.

7. Iterasi adalah bilangan yang menunjukkan tingkat generasi dan perulangan. 8. Nilai fitness menyatakan seberapa baik nilai dari suatu individu atau solusi

yang dihasilkan, dan nilai inilah yang dijadikan acuan untuk mencari nilai optimal dari suatu permasalahan.

9. Fungsi pinalti : fungsi matematis yang dilibatkan dalam proses pencarian nilai optimum pada masalah optimasi dengan kendala.

10.Probabilitas adalah peluang terjadinya sesuatu.

2.1.2. Siklus algoritma genetika.

(3)

terus-menerus hingga generasi ke-n yaitu menghasilkan generasi yang sesuai dengan harapan.

Gambar 2.1. Siklus Algoritma Genetika oleh David Goldberg (Sutojo T. et al. 2010)

Siklus yang diperkenalkan oleh david Goldberg kemudian diperbaiki oleh Zbigniew Michalewicz yaitu dengan menambah satu proses lagi yaitu proses Elitisme dan membalik proses reproduksi dahulu, kemudian proses seleksi.

Gambar 2.2. Siklus Algoritma Genetika hasil perbaikan yang diperkenalkan oleh Zbigniew Michalewicz (Sutojo T. et al. 2010)

(4)

2.1.3. Struktur umum algoritma genetika.

Algoritma genetika memberikan suatu pilihan bagi penentuan nilai parameter dengan meniru cara reproduksi genetika, pembentukan kromosom baru serta seleksi alam seperti yang terjadi pada mahluk hidup. Algoritma genetika secara umum dapat diilustrasikan dalam diagram alir berikut ini :

Gambar 2.3. Diagram Alir Algoritma Genetika Generasi Baru

Finish Kriteria optimal ?

Ya

Tidak Start

Representasi kromosom

Inisialisasi populasi

Fungsi objektif

Seleksi

Crossover

(5)

Secara umum, Rexhepi et al. (2013) mengemukakan bahwa struktur umum dari suatu algoritma genetika dapat didefenisikan dengan langkah-langkah sebagai berikut:

1.Membangkitkan populasi awal

Populasi awal dibangkitkan secara random sehingga didapat solusi awal. Populasi itu sendiri terdiri atas sejumlah kromosom yang merepresentasikan solusi yang diinginkan.

2.Membentuk generasi baru

Untuk membentuk generasi baru digunakan operator reproduksi yaitu seleksi, crossover dan mutasi. Proses ini dilakukan secara berulang-ulang sehingga didapatkan jumlah kromosom yang cukup untuk membentuk generasi baru, dimana generasi baru ini merupakan representasi dari solusi baru. Generasi baru ini dikenal dengan istilah anak (offspring).

3.Evaluasi solusi

Pada setiap generasi, kromosom akan melalui proses evaluasi dengan menggunakan alat ukur yang dinamakan fitness. Nilai fitness suatu kromosom menggambarkan kualitas kromosom dalam populasi tersebut. Proses ini akan mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai terpenuhi kriteria berhenti. Jika kriteria berhenti belum terpenuhi akan membentuk generasi baru dengan mengulang langkah 2. Beberapa kriteria berhenti yang sering digunakan yaitu berhenti pada generasi tertentu, berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai fitness tertinggi tidak berubah dan berhenti bila dalam n generasi berikut tidak didapatkan nilai fitness yang lebih tinggi.

Goldberg (1989) mengemukakan bahwa algoritma genetika memiliki beberapa karakteristik yang harus diketahui sehingga dapat dibedakan dari prosedur pencarian atau optimasi lainnya, yaitu :

(6)

2. Algoritma Genetika melakukan pencarian pada sebuah populasi dari sejumlah individu-individu yang merupakan solusi permasalahan bukan hanya dari sebuah individu.

3. Algoritma Genetika merupakan informasi fungsi obyektif (fitness), sebagai cara untuk mengevaluasi individu yang mempunyai solusi terbaik, bukan turunan dari suatu fungsi.

4. Algoritma Genetika menggunakan aturan-aturan transisi peluang, bukan aturan-aturan deterministik.

Menurut Kuhn et al. (2013), variabel dan parameter yang digunakan pada algoritma genetika adalah:

1. Fungsi fitness (fungsi tujuan) yang dimiliki oleh masing-masing individu untuk menentukan tingkat kesesuaian individu tersebut dengan kriteria yang ingin dicapai.

2. Populasi jumlah individu yang dilibatkan pada setiap generasi. 3. Probabilitas terjadinya persilangan (crossover) pada suatu generasi. 4. Probabilitas terjadinya mutasi pada setiap individu.

5. Jumlah generasi yang akan dibentuk yang menentukan lama penerapan dari algoritma genetika.

2.2. Pengkodean dalam Algoritma Genetika

Pengkodean merupakan suatu bagian yang paling penting apabila kita menggunakan algoritma genetika. Apapun masalah optimasi yang akan diselesaikan dengan Algoritma Genetika perlu dikodekan kedalam kromosom secara tepat. Hal ini disebabkan dalam proses komputasi yang sebenarnya, kromosom-kromosom itulah yang nantinya akan diproses ke dalam Algoritma Genetika. Pengkodean adalah suatu teknik yang dipakai untuk menyatakan populasi awal sebagai calon solusi suatu masalah kedalam suatu kromosom (Gen dan Cheng, 2000) sebagai suatu kunci utama dari permasalahan ketika menggunakan algoritma genetika.

(7)

sebagai nilai suatu gen atau disebut dengan allele. Adapun metode pengkodean dalam algoritma genetika dapat diklasifikasikan sebagai berikut : pengkodean biner, bilangan rill, bilangan bulat dan struktur data (Gen dan Cheng, 2000). Sedangkan menurut (Kumar, 2012) ada bermacam-macam teknik encoding yang dapat dilakukan dalam algoritma genetika. Beberapa teknik encoding itu antara lain adalah binary encoding, permutation encoding, value encoding serta tree encoding.

Menurut Varnamkasthi & Lee (2012), beberapa macam encoding pada algoritma genetika adalah :

1. Binary Encoding

Encoding jenis ini sering digunakan. Kromosom dari binary encoding ini berupa kumpulan dari nilai biner 0 dan 1.

Contohnya:

Chromosome1 : 0101010100110110 Chromosome2 : 1011011100011110

Dalam Binary Encoding kemungkinkan dihasilkan suatu kromosom yang memiliki nilai allele yang lebih sedikit atau kecil, keuntungan pengkodean biner ini adalah sederhana untuk diciptakan dan mudah dimanipulasi (Davis, 1991). Di pihak lain pengkodean biner ini memiliki kekurangan yaitu tidak dapat digunakan untuk beberapa permasalahan dan terkadang pengkoreksian harus dilakukan setelah proses crossover dan mutasi dilakukan. Salah satu permasalahan yang menggunakan encoding adalah menghitung nilai maksimal dari suatu fungsi.

2. Permutation Encoding/ pengkodean bilangan Riil

Kromosom dari permutation encoding ini berupa kumpulan dari nilai integer yang mewakili suatu posisi dalam sebuah urutan. Biasanya digunakan pada permasalahan TSP, penjadwalan dan masalah optimasi lainnya.

Contohnya:

(8)

3. Value Encoding

Kromosom dari value encoding berupa kumpulan dari suatu nilai, yang bisa berupa macam-macam nilai sesuai dengan permasalahan yang dihadapi, seperti bilangan real, char atau objek yang lain. Encoding ini merupakan pilihan yang bagus untuk beberapa permasalahan khusus, biasanya diperlukan metode khusus untuk memproses crossover dan mutasinya sesuai dengan permasalahan yang dihadapi.

Contohnya:

Chromosome 1 : A B C D E F G Chromosome 2 : H I J K LM N 4. Tree Encoding

Tree Encoding biasanya digunakan pada genetic programming. Kromosom yang digunakan berupa sebuah tree dari beberapa objek, seperti fungsi atau command pada genetic programming.

Pengkodean bilangan riil adalah suatu pengkodean bilangan dalam bentuk riil. Masalah optimalisasi fungsi (Gen & Cheng, 2000) dan optimalisasi kendala (Eshelman & Schaffer, 1993) lebih tepat jika diselesaikan dengan pengkodean bilangan riil karena struktur topologi ruang genotif untuk pengkodean bilangan riil identik dengan ruang fenotifnya, sehingga sangat mudah untuk membentuk operator genetika yang efektif dengan cara menggunakan teknik yang berasal dari metode konvensional.

2.3. Operator dalam Algoritma Genetika

(9)

Operator genetika yang digunakan setelah proses evaluasi tahap pertama membentuk populasi baru dari generasi sekarang. Operator-operator tersebut adalah operator seleksi, crossover dan mutasi (Malhotra et al. 2011).

2.3.1. Operator Seleksi

Seleksi memegang peranan yang sangat penting dalam keberhasilan algoritma genetika yaitu memilih kromosm-kromosom dalam populasi hingga didapatkan kromosom terbaik yang memiliki peluang yang lebih besar untuk dijadikan populasi awal. Seleksi bertujuan memberikan kesempatan reproduksi yang lebih besar bagi anggota populasi yang paling fit. Langkah pertama dalam seleksi ini adalah pencarian nilai fitness. Masing-masing individu dalam suatu wadah seleksi akan menerima probabilitas reproduksi yang tergantung pada nilai objektif dirinya sendiri terhadap nilai objektif dari semua individu dalam wadah seleksi tersebut.

Kemampuan algoritma genetika untuk memproduksi kromosom yang lebih baik secara progresif tergantung pada penekanan selektif (selective pressure) yang diterapkan ke populasi. Penekanan selektif dapat diterapkan dalam dua cara. Cara pertama adalah membuat lebih banyak kromosom anak yang dipelihara dalam populasi dan memilih hanya kromosom-kromosom terbaik bagi generasi berikut. Walaupun orang tua dipilih secara acak, metode ini akan terus menghasilkan kromosom yang lebih baik berhubungan dengan penekanan selektif yang diterapkan pada individu anak tersebut.

(10)

2.3.2. Operator Crossover

Crossover (perkawinan silang) bertujuan menambah keanekaragaman string dalam populasi dengan penyilangan antar string yang diperoleh dari sebelumnya. Beberapa jenis crossover tersebut adalah:

1. Crossover satu titik / one point crossover

Pada crossover dilakukan dengan memisahkan suatu string menjadi dua bagian dan selanjutnya salah satu bagian dipertukarkan dengan salah satu bagian dari string yang lain yang telah dipisahkan dengan cara yang sama. Proses yang demikian dinamakan operator crossover satu titik seperti terlihat pada gambar 2.1.

Tabel 2.1 Contoh Crossover satu titik Kromosom Orangtua 1 10101010

Kromosom Orangtua 2 11000111

Keturunan 10100111

2. Crossover dua titik/ two point crossover

Proses crossover ini dilakukan dengan memilih dua titik crossover. Kromosom keturunan kemudian dibentuk dengan barisan bit dari awal kromosom sampai titik crossover pertama disalin dari orang tua pertama, bagian dari titik crossover pertama dan kedua disalin dari orang tua kedua, kemudian selebihnya disalin dari orangtua pertama lagi seperti terlihat pada gambar 2.2.

Tabel 2.2 Contoh Crossover dua titik Kromosom Orangtua 1 10101010

Kromosom Orangtua 2 11000111

(11)

3. Crossover seragam

Crossover seragam manghasilkan kromosom keturunan dengan menyalin bit-bit secara acak dari kedua orang tuanya seperti terlihat pada gambar 2.3.

Tabel 2.3 Contoh Crossover seragam Kromosom Orangtua 1 10101010

Kromosom Orangtua 2 11000111

Keturunan 11101111

2.3.3. Operator Mutasi

Mutasi merupakan operator dalam algoritma genetika yang bertujuan untuk mengubah gen-gen tertentu dari sebuah kromosom. Mutasi merupakan sebuah proses dengan cara mengubah nilai dari satu atau beberapa gen dalam suatu kromosom. Operasi crossover yang dilakukan pada kromosom dengan tujuan untuk memperoleh kromosom-kromosom baru sebagai kandidat solusi pada generasi mendatang dengan fitness yang lebih baik, dan lama-kelamaan menuju solusi optimum yang diinginkan. Akan tetapi, untuk mencapai hal ini, penekanan selektif juga memegang peranan yang penting. Jika dalam proses pemilihan kromosom-kromosom cenderung pada kromosom yang memiliki fitness yang tinggi saja, konvergensi premature, yaitu mencapai solusi yang optimal lokal sangat mudah terjadi. Probabilitas mutasi dari suatu gen biasanya dipilih sangat kecil.

Operasi mutasi merupakan operasi yang menyangkut satu kromosom tertentu. Beberapa cara operasi mutasi diterapkan dalam algoritma genetika menurut jenis pengkodean terhadap phenotype, antara lain :

1. Mutasi dalam pengkodean biner

(12)

tertentu pada kromosom, yang disebut inversi bit seperti terlihat pada tabel 2.4 dibawah ini.

Tabel 2.4 Contoh Mutasi dalam pengkodean biner Kromosom sebelum mutasi 10101010 Kromosom setelah mutasi 11101010

2. Mutasi dalam pengkodean permutasi

Proses mutasi yang dilakukan dalam pengkodean biner dengan mengubah langsung bit-bit pada kromosom tidak dapat dilakukan pada pengkodean permutasi karena konsistensi urutan permutasi harus diperhatikan. Salah satu cara yang dapat dilakukan adalah dengan memilih dua posisi (locus) dari kromosom dan kemudian nilainya saling dipertukarkan seperti terlihat pada tabel 2.5 dibawah ini.

Tabel 2.5 Contoh Mutasi dalam pengkodean permutasi Kromosom sebelum mutasi 1 2 3 4 5 6 7 8 9

Kromosom setelah mutasi 1 5 3 4 5 7 7 8 9

3.Mutasi dalam pengkodean nilai

Mutasi pada pengkodean nilai hampir sama dengan yang dilakukan pada pengkodean biner, tetapi yang dilakukan bukan menginversi nilai bit. Penerapannya bergantung pada jenis nilai yang digunakan. Sebagai contoh untuk nilai rill, proses mutasi dapat dilakukan seperti yang dilakukan pada pengkodean permutasi, dengan saling mempertukarkan nilai dua gen pada kromosom.

(13)

4.Mutasi dalam pengkodean pohon

Mutasi dalam pengkodean pohon dapat dilakukan antara lain dengan cara mengubah operator (+, -, *, /) atau nilai yang terkandung pada suatu verteks pohon yang dipilih atau dapat juga dilakukan dengan memilih dua verteks dari pohon dan saling mempertukarkan operator atau nilainya.

2.4. Kontrol Parameter dalam Algoritma Genetika

Kontrol parameter dalam algoritma genetika merupakan salah satu bagian paling penting dalam penerapan algoritma genetika. Parameter ini diperlukan untuk mengendalikan operator-operator dalam algoritma genetika. Pemilihan parameter genetika menentukan penampilan kinerja algoritma genetika dalam memecahkan persoalan.

Parameter dalam algoritma genetika yang disarankan menurut De Jong (Hopgood, 2001) adalah :

1. Probabilitas penyilangan cukup besar (berkisar 60 % sampai 70 %). 2. Probabilitas Mutasi cukup kecil (sebuah gen untuk sebuah kromosom). 3. Ukuran populasi berkisar antara 50 sampai 500 kromosom.

2.4.1. Probabilitas persilangan (crossover probability)

Probabilitas crossover menyatakan seberapa sering proses crossover akan terjadi antara dua kromosom induk/orang tua. Dari hasil penelitian yang telah dilakukan sebelumnya menyatakan bahwa angka probabilitas crossover sebaiknya cukup tinggi, yaitu antara 80 % sampai dengan 95 % untuk memberikan hasil yang baik. Untuk beberapa masalah tertentu probabilitas crossover 60 % memberikan hasil yang lebih baik (Marek, 1998). Probability Crossover dapat digunakan dengan rumus sebagai berikut :

(14)

2.4.2. Probabilitas mutasi (mutation probability)

Probabilitas mutasi menunjukkan seberapa sering gen-gen yang menyusun sebuah kromosom akan dimutasikan. Jika tidak terjadi mutasi atau probabilitas mutasi 0 % maka keturunan yang dihasilkan setelah crossover tidak akan berubah, dan jika terjadi mutasi pada bagian kromosom yang telah dipilih akan mengalami perubahan. Jika probabilitas 100 %, semua kromosom akan dilakukan mutasi dan keseluruhan kromosom akan berubah.

Probabilitas dalam mutasi sebaiknya diberi nilai yang kecil. Probabilitas mutasi digunakan untuk mendapatkan rata-rata satu mutasi per kromosom yaitu angka/allele = 1 / (panjang kromosom). Dari hasil yang sudah pernah dicoba para peneliti yang menunjukkan bahwa angka probabilitas terbaik adalah 0,5 % - 1 % hal ini disebabkan oleh karena untuk menjaga perbedaan kromosom dalam populasi agar terhindar dari konvergensi premature. Probability Mutasi dapat digunakan dengan rumus sebagai berikut :

Pm = Jumlah % x (Jumlah Individu x Banyaknya gen dalam 1 Individu)

2.4.3. Jumlah individu

Jumlah individu yaitu banyaknya jumlah kromosom yang terdapat dalam satu populasi. Jika satu populasi hanya memiliki kromosom dengan junlah yang sedikit menyebabkan algoritma akan memiliki variasi yang akan diberikan pada proses crossover, sebaliknya jika terdapat jumlah kromosom dalam satu populasi yang terlalu banyak maka algoritma genetika akan berjalan lambat untuk menemukan solusi yang diharapkan. Ukuran populasi yang sering digunakan oleh para peneliti sebelumnya antara 20 – 30 kromosom, tetapi ada juga peneliti yang menggunakan 50 - 100 kromosom dengan hasil yang baik. Ukuran populasi yang terbaik adalah tergantung dari pengkodean yang dilakukan yaitu ukuran dari barisan yang dienkodekan.

(15)

Jumlah populasi yaitu banyaknya populasi atau banyaknya generasi yang akan dihasilkan yang digunakan sebagai batas akhir dari semua proses dalam algoritma genetika yaitu proses seleksi, proses crossover dan proses mutasi.

2.5. Greedy Crossover

Metode Greedy Crossover (GX) adalah salah satu metode crossover atau perkawinan silang yang sangat spesifik yang diterapkan pada Algoritma Genetika selain dari metode-metode crossover klasik yang ada pada algoritma genetika tersebut. Metode Greedy Crossover ini pertama kali ditemukan oleh Grefenstette et al. (1985). Metode Greedy Crossover dapat diterapkan apabila semua gen yang terdapat dalam sebuah kromosom tersebut berbeda, dan susunan seluruh gen untuk kedua kromosom harus sama atau identik dan hanya bisa di order pada gen kromosom yang bervariasi, kedua kondisi tersebut selalu benar dan dapat diterapkan berkali-kali. Greedy crossover ini bekerja dengan membuang gen yang tidak sesuai atau tidak memenuhi kondisi yang diinginkan pada kromosom induk pertama / father dan menggantinya dengan gen yang lain pada kromosom induk kedua / mother.

Metode Greedy Crossover memiliki prinsip yang sama dengan algoritma Greedy dan sesuai dengan namanya greedy dalam bahasa Indonesia berarti tamak atau rakus dan algoritma ini memiliki prinsip “ Take what you can get now” yang berarti “ mengambil apa yang bisa anda dapatkan sekarang” . Algoritma greedy adalah algoritma untuk menyelesaikan permasalahan secara bertahap (Brassard G, 1996). Tahap penyelesaiannya adalah:

1. Mengambil pilihan yang terbaik yang dapat diperoleh pada saat itu tanpa memperhatikan konsekuensi ke depan.

2. Berharap bahwa dengan memilih optimum lokal pada setiap langkah akan berakhir dengan optimum global.

(16)

Metode Greedy Crossover yang digunakan adalah dengan memilih kromosom pertama sebagai langkah awal dan melihat seluruh gen yang terdapat pada kromosom tersebut dari salah satu orang tua dan membandingkannya dengan orang tua kedua. Jika salah satu gen dalam kromosom orang tua pertama ada yang tidak baik atau tidak memenuhi syarat maka akan dipilih gen pada orang tua kedua. Pertukaran gen ini hanya terjadi pada posisi yang sama dengan gen yang rusak tersebut, proses seperti ini akan dilakukan secara berulang-ulang sampai kondisi berhenti terpenuhi. Prosedur dari greedy crossover ini merupakan prosedur penyesuaian lokal dan perbaikan pada sebuah kromosom .

Dalam pengimplementasiannya metode greedy crossover menggunakan beberapa elemen yaitu :

1. Himpunan Kandidat, (C).

Himpunan ini berisi elemen-elemen pembentuk solusi 2. Himpunan Solusi, (S).

Himpunan ini berisi kandidat yang terpilih sebagai solusi persoalan, atau himpunan bagian dari himpunan kandidat.

3. Fungsi seleksi

Fungsi seleksi merupakan fungsi yang ada pada setiap langkah memilih kandidat yang paling memungkinkan guna mencapai solusi optimal.

4. Fungsi Kelayakan (Feasible)

Fungsi kelayakan adalah fungsi yang memeriksa apakah suatu kandidat yang telah terpilih dapat memberikan solusi yang layak dan tidak melanggar batasan atau constraints yang ada.

2.6. Optimalisasi Rostering Mata Pelajaran

2.6.1. Pengertian Optimalisasi

(17)

maksimum dari suatu fungsi. Optimalisasi ini dipakai hampir disemua bidang keilmuan antara lain bidang teknik, ilmu sosial, sains, ekonomi, bisnis maupun dibidang pendidikan. Banyak permasalahan dalam bidang-bidang tersebut yang dapat dinyatakan sebagai permasalahan optimalisassi seperti meminimalkan biaya, mempersingkat waktu, memaksimalkan keuntungan dan kualitas.

Optimalisasi merupakan proses dalam mencari nilai yang terbaik berdasarkan fungsi tujuan dengan daerah asal yang telah didefenisikan. Pengertian Optimalisasi menurut Kamus Besar Bahasa Indonesia (Depdikbud, 1995) yaitu optimalisasi berasal dari kata optimal yang berarti terbaik, tertinggi jadi optimalisasi adalah suatu proses meninggikan atau meningkatkan. Optimalisai banyak juga diartikan sebagai ukuran dimana semua kebutuhan dapat dipenuhi dari kegiatan-kegiatan yang dilaksanakan. Berdasarkan uraian diatas optimalisasi dapat diartikan sebagai serangkaian proses secara sistematis yang dilakukan dengan metode yang paling baik dalam suatu pekerjaan dengan harapan dapat meningkatkan kualitas dari pekerjaan tersebut secara efektif dan efisien.

2.6.2. Rostering/Penjadwalan Mata Pelajaran

Pembuatan jadwal mata pelajaran merupakan salah satu bagian yang paling penting agar terlaksananya proses belajar mengajar dengan baik, efektif dan efisien pada suatu lembaga pendidikan formal. Penjadwalan adalah kegiatan pengalokasian sumber-sumber atau mesin-mesin yang ada untuk menjalankan sekumpulan tugas dalam jangka waktu tertentu (Baker, 1974). Penjadwalan juga didefinisikan sebagai rencana pengaturan urutan kerja serta pengalokasian sumber, baik waktu maupun fasilitas untuk setiap operasi yang harus diselesaikan (Vollman, 1998).

(18)

banyak. Untuk menyusun jadwal mata pelajaran yang baik, pembuat jadwal perlu memperhatikan berbagai aspek yang mempengaruhi jadwal mata pelajaran tersebut. Dari aspek guru, pembuat jadwal perlu memperhatikan kemungkinan guru yang bersangkutan hanya ingin mengajar suatu mata pelajaran pada hari dan jam tertentu. Pembuat jadwal juga harus memperhatikan keterbatasan guru pengajar yang dimiliki oleh sekolah. Pembuat jadwal juga perlu memperhatikan dari aspek mata pelajaran yang diajarkan. Sebagai contoh, mata pelajaran matematika seharusnya diajarkan 4 jam dalam seminggu dengan maskimal 2 jam dalam satu hari. Selain itu, pembuat jadwal juga perlu memperhatikan bahwa jadwal yang dibuat tidak ada bentrokan jam antar pengajar satu dengan pengajar yang lain dalam satu waktu dan kelas tertentu, atau satu pengajar yang berada di lebih dari satu kelas pada satu waktu tertentu. Berdasarkan aspek-aspek di atas, seharusnya jadwal yang disusun dapat menjadi solusi sehingga tidak ada bentrokan jadwal pengajar, mata pelajaran, atau kelas yang terjadi, dan tentunya memenuhi persyaratan kegiatan belajar yang sudah ditentukan. Oleh karena itu dibutuhkan metode optimasi yang dapat diterapkan untuk menyusun jadwal mata pelajaran.

(19)

permintaan guru yang tidak bisa masuk untuk mengajar di hari-hari tertentu. Sehingga hal ini sangat menyulitkan bagi pegawai yang bekerja dibagian kurikulum.

2.7. Penelitian Terdahulu

Dalam melakukan penelitian, penulis menggunakan beberapa penelitian yang relevan dengan permasalahan yang diteliti yang digunakan sebagai acuan agar penelitian ini berjalan dengan lancar.

Algoritma genetika sering terjadi konvergen prematur dalam mencari daerah global optimum (Xinyang, 2011). Algoritma genetika memiliki kelemahan dalam menyelesaikan penjadwalan mata kuliah yaitu sering terjebak pada nilai optimum lokal (Sivanandan, 2008). Ongko (2015) melakukan analisis keterkaitan jumlah gen yang mengalami crossover terhadap kinerja algoritma genetika. Penelitian dilakukan dengan membandingkan whole arithmetic crossover, simple arithmetic dan single arithmatic crossover. Hasil penelitian menunjukkan bahwa semakin banyak gen yang terlibat dalam proses crossover akan meningkatkan kinerja algoritma genetika. hasil lainnya menyatakan bahwa whole arithmetic crossover lebih baik daripada simple arithmetic dan single arithmatic crossover.

(20)

Tabel. 2.7. Penelitian yang relevan

Mereka melakukan modifikasi pada metode crossover yang disebut dengan swapped inverted crossover (SIC), kemudian melakukan multi mutation operation dan terakhir menambahkan metode partial local mutation operation. Hasil yang diperoleh menunjukkan peningkatan kinerja algoritma genetika. pengembangan atas metode greedy crossover untuk meningkatkan kinerja algoritma genetika pada kasus TSP.

(21)

Tabel. 2.7. Penelitian yang relevan (Lanjutan)

Dari hasil penerapannya Algoritma GA-Greedy digunakan sangat praktis dalam mencari pendekatan dinamis dan statis pada crossover dalam menyelesaikan masalah Traveling crossover, simple arithmetic dan single arithmatic crossover. Hasil penelitian menunjukkan bahwa semakin banyak gen yang terlibat dalam proses crossover akan meningkatkan kinerja algoritma genetika. hasil lainnya menyatakan bahwa whole arithmetic crossover lebih baik daripada simple arithmetic dan single arithmatic crossover.

6. Otman dan Jaafar (2011)

Genetic Algorithmn

Gambar

Gambar 2.1. Siklus Algoritma Genetika oleh David Goldberg (Sutojo T. et al. 2010)
Gambar 2.3. Diagram Alir Algoritma Genetika
Tabel 2.2 Contoh Crossover dua titik
Tabel 2.3 Contoh Crossover seragam
+3

Referensi

Dokumen terkait

Penelitian ini bertujuan untuk mengetahui daya inhibisi dari ekstrak etanol, fraksi, isolat dari Annona muricata L (sirsak) serta mengetahui fraksi aktif yang

Pemberian Rekomendasi Penilaian dan Umpan Balik Briefing Asesor Kompetensi dan Peserta Uji Kompetensi. Pra

Berdasar hasil penelitian dan analisis yang telah dilakukan maka dapat ditarik beberapa kesimpulan sebagai berikut: Dengan menggunakan variabel Dependen kinerja

sebagaimana dimaksud pada ayat (1) tersebut di atas, masing-masing dipimpin oleh seorang Kepala Badan, Inspektur dan Kepala Kantor serta Direktur yang berada dibawah dan

Hasil penelitian menunjukkan bahwa adanya variasi kadar sukrosa dan glukosa mempengaruhi sifat fisik hard candy lozenges ekstrak daun legundi yaitu meningkatkan

Sedangkan metode NeFTIS-TDCB menggunakan lebih dari 1 cluster issue (pemilihan cluster issue tetap berdasar urutan descending bobot CI tertinggi) dikarenakan issue

Seimbang dengan Perilaku Pemenuhan Gizi pada Balita Usia 3-5 Tahun di.. Desa Banjarsari Kecamatan

Teman-Teman Teknik Informatika Universitas Muria Kudus, yang sudah memberikan masukan dan nasehat untuk menyelesaikan skripsi ini dan proses akhir laporan skripsi, serta