Desain Algoritma Genetika Untuk Optimasi Penjadwalan...

18
Tugas Mata Kuliah E-Bisnis REVIEW TESIS Desain Algoritma Genetika Untuk Optimasi Penjadwalan Produksi Meuble Kayu Studi Kasus Pada PT. Sinar Bakti Utama (oleh Fransiska Sidharta dibawah bimbingan Prof.Kudang Boro Seminar) Disusun oleh Rizal Bahara P056120232.41E Dosen Dr. Ir. Arif Iman Suroso, MSc. MAGISTER MANAJEMEN BISNIS PROGRAM PASCASARJANA MANAJEMEN DAN BISNIS 2014

Transcript of Desain Algoritma Genetika Untuk Optimasi Penjadwalan...

Page 1: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Tugas Mata Kuliah E-Bisnis

REVIEW TESIS

Desain Algoritma Genetika Untuk Optimasi Penjadwalan Produksi Meuble Kayu

Studi Kasus Pada PT. Sinar Bakti Utama (oleh Fransiska Sidharta

dibawah bimbingan Prof.Kudang Boro Seminar)

Disusun oleh

Rizal Bahara P056120232.41E

Dosen

Dr. Ir. Arif Iman Suroso, MSc.

MAGISTER MANAJEMEN BISNIS

PROGRAM PASCASARJANA MANAJEMEN DAN BISNIS

2014

Page 2: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

1. Identifikasi Judul Jurnal : Desain Algoritma Genetika Untuk Optimasi Penjadwalan Produksi Mebel Kayu (Studi Kasus Pada PT. Sinar Bakti Utama)

Nama Penulis : Fransiska Sidharta Nama Universitas : IPB Dosen Pembimbing : Prof. Kudang Boroseminar

2. Latar Belakang

Perjadwalan Produksi mebel kayu merupakan persoalan pengurutan tahapan produksi yang dip roses pada mesin-mesin tertentu dengan urutan pengerjaan yang berbeda untuk setiap jenis produk yang berbeda. Dengan banyaknya jumlah pesanan yang masuk perlu di gunakan metode untuk mencari semua kemungkinan kombinasi penjadwalan untuk mendapatkan solusi yang optimal Pencarian semua kemungkinan kombinasi penjadwalan ini dilakukan dengan menggunakan metode algoritma genetika. Digunakan 3 proses dasar algoritma genetika yaitu : proses seleksi, proses crossover dan proses mutasi untuk mencari solusi yang paling optimum dari banyak kemungkinan kombinasi solusi.

3. Tujuan

a. Merancang Algoritma Genetika untuk optimasi penjadwalan produksi kayu b. Implementasi algoritma tersebut dalam sebuah prototype program aplikasi

4. Pemasalahan

a. Produksi meubel kayu pada PT. Sinar Bakti Utama mengalami beberapa

keterlambatan yang disebabkan kurang teraturnya jadwal produksi yang dibuat secara manual. Hal ini berdasarkan tinjuan awal pada pabrik tersebut

b. Belum ada suatu metode penjadwalan yang optimal pada pabrik meubel kayu.

Page 3: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

5. Kerangka Pemikiran dan Metode Penelitian

6. Konsep dan Teori

Algoritma Genetika

Algoritma genetika (GA) merupakan suatu metode pencarian yang didasarkan pada

mekanisme dari seleksi dan genetika natural (Haupt dan Haupt 2004). Proses GA dapat

dilihat pada Gambar 3.

Page 4: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

GA digunakan untuk menemukan solusi dalam masalah yang kompleks melalui

kumpulan-kumpulan metode atau teknik seperti fungsi evaluasi (fitness function), pindah

silang, mutasi, dan seleksi alam (Owais et al., 2005). Walaupun algoritma genetika sudah

banyak digunakan di bidang pertanian dan agroindustri secara umum seperti yang

dilakukan (Mardle dan Pascoe 2000, Matthews et al., 2005, Mayer et al., 2001, Sarker dan

Ray 2009, Stewart et al., 2004, Zhang et al., 2009), namun publikasi penggunaan algoritma

genetika untuk optimasi rantai pasok produk hortikultura belum banyak ditemukan. GA

dikarakterisasi dengan 5 komponen dasar yaitu :

1. Representasikan kromosom untuk memudahkan penemuan solusi dalam masalah

pengoptimasian.

2. Inisialisasi populasi.

3. Fitness function yang mengevaluasi setiap solusi.

4. Proses genetik yang menghasilkan sebuah populasi baru dari populasi yang ada.

Page 5: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

5. Parameter seperti ukuran populasi, probabilitas proses genetik, banyaknya generasi, dan

lain-lain.

Definisi

Algoritma genetika adalah algoritma komputasi yang diinspirasi teori evolusi

yang kemudian diadopsi menjadi algoritma komputasi untuk mencari solusi suatu

permasalahan dengan cara yang lebih “alamiah”, algoritma genetik juga merupakan

algoritma pencarian secara heuristik. Salah satu fungsinya ialah untuk mencari solusi atas

permasalahan optimasi kombinasi, yaitu mendapatkan suatu nilai solusi optimal terhadap

suatu permasalahan yang mempunyai banyak kemungkinan solusi. Teori dasar dari

Algoritma Genetika dikembangkan oleh John Holland awal tahun 1975 di Universitas

Michigan, Amerika Serikat. Dimana prinsip algoritma genetik diambil dari teori Darwin

yaitu setiap makhluk hidup akan menurunkan satu atau beberapa karakter ke anak atau

keturunannya. Penyelesaian menggunakan algoritma genetik sangat berpengaruh dari

kromosom yang dibangun, dimana kromosom ialah sebuah molekul yang berisi DNA

dimana terdapat informasi genetik dalam setiap sel gen yang disimpan.

Komponen Algoritma Genetik

Algoritma genetik terdiri dari delapan komponen, yang bertugas untuk menunjang

dari optimasi tersebut, adapun komponen tersebut ialah, skema pengkodean, nilai fitness,

seleksi orang tua, pindah silang, mutasi, elitisme, penggantian populasi dan kriteria

penghentian.

Skema Pengkodean

Untuk dapat diproses menggunakan algortima genetik, suatu permasalahan harus

dikonversi dahulu kedalam bentuk individu yang diwakili oleh satu atau lebih kromosom

dengan kode tertentu. Hal ini berbeda dengan teori genetika di dunia nyata. Algoritma

genetik merepresentasikan gen secara umum, sebagai bilangan real, desimal atau biner

yaitu:

1. Real number enconding. Pada skema ini, niai gen berada dalam interval [0,R] dimana R ialah bilangan real positif dan biasanya R = 1.

2. Discrete decimal enconding. Pada skema ini setiap gen bisa berupa deretan bilangan bulat dalam interval [0.9].

3. Binary enconding. Setiap gen bisa berupa deretan nilai 0 atau 1.

Page 6: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Nilai Fittnes

Nilai fitness dalam sebuah algoritma genetik menggambarkan tingkat kovergensi

keoptimalan algoritma dimana yang diharapkan adalah nilai fitness yang optimal dalam hal

ini angka tertinggi ialah nilai terbaik. Dalam evolusi dunia nyata, individu

bernilai fitness tinggi akan bertahan hidup, sedangkan yang memiliki nilai fitness rendah

akan gugur atau mati. Pada algoritma genetik, fitness biasanya dapat berupa fungsi objektif

dari masalah yang akan dioptimalisasi. Kromosom-kromosom diseleksi menurut

nilai fitnessmasing-masing Kromosom yang kuat mempunyai kemungkinan tinggi untuk

bertahan hidup pada generasi berikutnya.

Seleksi Orang Tua

Seleksi merupakan proses pemilihan kromosom dari generasi lama untuk dijadikan

orangtua yang akan saling kawin silang untuk membentuk kromosom baru digenerasi baru,

dalam hal ini kita menggunakan seleksi roda roulette (roulette wheel selection). Dalam hal

ini pemilihan dua buah kromosom sebagai orang tua (parent) dilakukan secara proposional

sesuai dengan nilai fitnessnya. Dimana kromosom yang memiliki nilai fitness tertinggi akan

menempati potongan yang lebih besar pada lingkaran daripada kromosom dengan

nilai fitness yang lebih rendah. Contoh metode roulette-wheel dapat diilustrasikan sebagai

berikut.

Page 7: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Pada contoh diatas, nilai dari S1 memiliki nilai fitnes yang paling besar, dengan

demikian peluang dari S1 untuk terpilih menjadi orang tua sebesar 0.277 sedangkan untuk

nilai S2 dan S3 memiliki peluang yang sama sebesar 0.138

Pindah Silang

Menurut George F.Luger dan William A. Stubblefield dalam buku Artificial

Intelegence Structures and Strategies For Complex Promblem Solving. Kekuatan dari

algoritma genetik ialah pada kemampuan pencarian mereka dalam pindah silang, dimana

algoritma genetik menerapkan mempertahankan beberapa solusi terbaik, dan

menghilangkan solusi yang tidak bagus. Komponen pindah silang digunakan untuk

membentuk keturunan baru berdasarkan orangtua yang terpilih. Komponen ini sangat

Page 8: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

dominan dalam algoritma genetik dibandingkan dengan komponen mutasi. Dan jumlah

kromosom yang digunakan sebanyak dua buah kromosom.

Pindah silang dilakukan dengan harapan kromosom-kromosom baru akan

mempunyai bagian baik dari kromosom-kromosom lama dan tidak menutup kemungkinan

menjadi kromosom-kromosom yang lebih baik

Skema dari pindah silang ini ialah, dengan mendapatkan dua buah individu orang

tua, selanjutnya ditentukan titik pindah silang secara acak. Jika diasumsikan L adalah

panjang kromosom, maka titik pindah silang berada diantara 1 hingga L-1, kemudian

beberapa bagian dari dua kromosom ditukar pada titik pindah silang yang terpilih. Titik

pindah silang ialah titik terjadinya pertukaran gen antar dua individu orang tua.

Mutasi

Mutasi diperlukan untuk mengembalikan informasi bit yang hilang akibat pindah

silang. Mutasi diterapkan dengan probabilitas yang sangat kecil. Jika mutasi dilakukan

Page 9: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

terlalu sering, maka akan menghasilkan individu yang lemah karena konfigurasi gen pada

individu yang unggul akan dirusak. Berdasarkan bagian yang termutasi, proses mutasi

dapat dibedakan atas tiga bagian.

Eliteisme

Karena seleksi dilakukan secara acak, maka tidak ada jaminan bahwa suatu individu

bernilai fitnes tertinggi akan selalu terpilih. Kalaupun individu bernilai fitnes tertinggi

terpilih, mungkin saja akan menjadi rusak karena proses pindah silang. Untuk menjaga agar

individu bernilai fitnes tertinggi tersebut tidak hilang selama evolusi, perlu dibuat satu atau

dua kopinya. Prosedur ini dikenal sebagai elitisme. Prosedur ini hanya digunakan pada

algoritma genetic berjenis generational replacement.

Penggantian Populasi

Pada algoritma genetik berjenis generational replacement, N individu pada suatu

generasi digantikan sekaligus oleh N individu baru hasil pindah silang dan mutasi. Untuk

mempertahankan individu terbaik, diperlukan skema elitisme.

Adapun prosedur penggantian populasi pada algoritma genetik ialah:

Page 10: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

1. Mengganti individu yang memiliki nilai fitnes terkecil. 2. Mengganti individu yang paling tua. 3. Membandingkan anak dengan kedua orang tua, apabila anak memiliki nilai

menggantikan orang tua yang memiliki nilai fitnes terendah.

Kriteria Penghentian

Terdapat beberapa syarat penghentian yang digunakan pada proses perulangan.

1. Memberikan batasan jumlah iterasi, apabila batas iterasi tersebut tercapai dan nilai fitnes tertingi sebagai solusi.

2. Memberikan batasan waktu proses algoritma genetic 3. Menghitung kegagalan penggantian anggota populasi yang terjadi secara berurutan

sampai jumlah tertentu.

7. Tahapan Penelitian dan Lokasi

Lokasi penelitian adalah di PT. Sinar Bakti Utama Cimanggis Bogor. Tahapan

penelitian di lakukan dengan melakukan penelitian pendahuluan, identifikasi masalah, studi

pustaka, perumusan tujuan penelitian, pengumpulan data, pemodelan algoritma genetika,

dan terakhir adalah implementasi algoritma kedalam bentuk protype program.

8. HASIL DAN PEMBAHASAN

Perancangan algoritma genetika 4 hal dasar yang di terapkan sebelum merancang algoritma genetika adalah pemilihan jenis representasi masalah, pemilihan operator genetika, penerapan fungsi fitness dan penerapan parameter gentika. Metode pemilihan representasi masalah di lakukan dengan representasi kedalam bentuk string. Tipe pengkodean pada representasi dalam bentuk string dapat berbentuk binary encoding, permutasi encoding dan value encoding. Pada penelitian ini menggunakan permutation encoding. Satu gen mewakili satu operasi, nilai yang terdapat dalam gen tersebut mewakili nomor job dan nomer urut tahapan produksi operasi tesebut. Jika ada n Job dan tiap job maksimal terdiri dari m operasi maka panjang string maksimal adalah n x m gen. Tabel 1. Contoh tahapan produksi yang direpresentasikan ke string

Page 11: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Tipe Produk

Job Tahap 1 Tahap 2 Tahap 3

2210 Job 1 Job 2 Job 3 Job 4

1,5 1,5 2,3 3,3

2,6 2,4 5,5 5,5

5,3 3,6 6,5 8,4

Gambar 1. Contoh representasi string untuk tabel 1 Pemilihan Operator Genetika Operator genetika yang dipakai pada perancangan algoritma genetika terdiri dari operator seleksi, operator crossover dan mutasi. Operator seleksi digunakan elitism yaitu membuat sejumlah string terbaik tiap generaso akan otomatis diturunkan ke generasi berikutnya. Operator crossover yang digunakan adalah precedence preservative crossover, dimana string baru di susun secara acak dari gen dua string induk. Angka acak 1 atau 2 dipakai untuk memilih induk. Jika 1 diturunkan gen paling kiri dari induk pertama lalu gen tersebut di hapus dari induk kedua. Jika 2 di turunkan gen paling kiri dari induk kedua lalu gen tersebut di hapus dari induk pertama, proses di lakukan sampai karakter dikedua induk tersebut habis.

Penetapan Fungsi Fitness

Pada penjadwalan ini fungsi fitness yang menjadi parameter setiap string adalah jumlah waktu efektif pengoperasian mesin pada jadwal. Faktor yang mempengaruhi nilai fitness adalah prosedur pengubahan string menjadi sebuah jadwal, karena dengan prosedur tersebut ditentukan waktu mulai dan waktu selesai sebuah operasi pada mesin, mesin yang dipakai untuk operasi-operasi tersebut dan akan prosedur ini juga menntukan waktu delay pada sebuah jadwal.

1-1 3-3 2-3 4-3 2-2 4-1 3-1 1-3 4-2 2-1 3-2 1-2

Page 12: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Penerapan Parameter Genetika

Parameter genetikan berguna untuk pengedalian operator-operator genetika, parameter yang digunakan adalah ukuran populasi, jumlah generasi, probabilitas crossover dan probabilitas mutasi. Pada penelitian ini ukuran populasinya 20, jumlah generasi 100, dan probabilitas crossover 80% dan probabilitas mutasi 1%

Pemodelan Matematika Penjadwalan

Penjadwalan yang dimaksud adalah proses penyusunan jadwal dari string. Untuk menjelaskannya perlu di tetapkan beberapa notasi seperti tabel dibawah.

Tabel 2. Notasi dalam pemodelan matematika penjadwalan

Notasi Penjelasan

O Operasi (job)

On Operasi ke n dimana 1<n<jumlah opeasi pada string

Ts ( On) Waktu start dari On

Tp ( On) Periode eksekusi mesin oleh On

Tf ( On) Waktu finish dari On

Mi Nomer mesin jenis i

Page 13: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan
Page 14: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan
Page 15: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Hasil Peracangan Algoritma Genetika

Page 16: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan
Page 17: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

Gambar 2. Hasil output jadwal

Gambar 3. Grafik Nilai Fitness

Page 18: Desain Algoritma Genetika Untuk Optimasi Penjadwalan ...rizal41e.blogstudent.mb.ipb.ac.id/files/2014/01/Review-Tesis-E... · lain-lain. Definisi Algoritma ... Hal ini berbeda dengan

9. KESIMPULAN

a. Pada Penelitian ini telah di kembangkan desain algoritma genetika untuk optimasi penjadwalan produksi meubel kayu

b. Pada Penelitian ini telah di implementasikan algoritma tersebut pada sebuah prototype program aplikasi

10. SARAN a. Dapat di lakukan perancangan sistem informasi produksi pada pabtik meubel kayu

tersebut b. Terdapat kemungkinan perbedaan kapasitas mesin untuk jenis mesin yang sama, oleh

karena itu dapat di rancang kembali algoritma yang memperhitungkang keausan mesin ataupun adanya mesin yang baru dimana mesin tersebut mempunyai kapasitas yang berbeda dari mesin sebelumnya

c. Terdapat kemungkinan timbulnya konsekuensi kerja yang belum diantisipasi sebelumnya sebagai akibat dari penerapan penjadwalan ini.