BAB II DASAR TEORI DASAR TEORI
2.5. Algoritma Differential Evolution
2.5.3. Penerapan Algoritma DE pada Penjadwalan Job Shop
2.5.3.1. Elemen-elemen dasar algoritma DE
Inisialisasi parameter
Inisialisasi target population Melakukan permutasi operasi Menentukan job repetition Evaluasi
Do{
Membentuk mutant population Membentuk Trial populaiton Melakukan permutasi operasi Menentukan job repetition Mengevaluasi Trial population Proses penyeleksian
}While (Berhenti)
2.5.3.1. Elemen-elemen dasar algoritma DE
Sebelum memulai proses pencarian solusi optimum pada permasalahan penjadwalan job shop dengan metode algoritma Differential Evolution, diperkenalkan terlebih dahulu elemen-elemen dasar algoritma DE yang akan digunakan. Elemen-elemen dasar tersebut adalah sebagai berikut (Tasgetiren et al, 2004):
• Individual target: individu ke-i anggota populasi pada generasi ke-t, dan diuraikan sebagai = |, , , ..., | di mana merupakan nilai dimensi individu ke-i terhadap dimensi ke-j (j = 1, 2, ..., n)
• Mutant individual: individu ke-i anggota populasi pada generasi ke-t, dan diuraikan sebagai = |, , , ..., | di mana merupakan nilai dimensi individu ke-i terhadap dimensi ke-j (j = 1, 2, ..., n)
• Trial individual: individu ke-i anggota populasi pada generasi ke-t, dan diuraikan sebagai = |, , , ..., | di mana merupakan nilai dimensi individu ke-i terhadap dimensi ke-j (j = 1, 2, ..., n)
• Target population: Xt kumpulan individu sejumlah NP dalam target population pada generasi ke-t
Universitas Indonesia
• Mutant population: Vt kumpulan individu sejumlah NP dalam target population pada generasi ke-t
• Trial population: Ut kumpulan individu sejumlah NP dalam target population pada generasi ke-t
• Operasi permutasi: t i
π
operasi permutasi job terhadap individu Xit.Diuraikan sebagai
[
t]
n i t t i t iπ
1,π
12,...,π
,π =
, dimanaπ
ijt merupakanpenugasan operasi ke-j individu ke-i, pada iterasi ke-t. • Konstanta mutasi: F∈(0,2)
• Konstanta pindah silang: CR∈(0,1)
• Fungsi objektif: Dalam suatu masalah minimasi, fungsi objektif
dilambangkan dengan
(
t)
i t i
i X
f π ← . Dalam penelitian ini, fungsi objektif
yang digunakan adalah
(
t)
i t i i X f π ← =
= n j 1( jTj)min β dimana j adalah penalti atas satu unit tardiness dan Tj adalah total unit tardiness yang terjadi, sedangkan untuk earliness tidak dikenakan penalti (penalti dianggap bernilai nol).
• Kriteria terminasi: adalah kondisi dimana program akan berhenti berjalan, bisa dalam bentuk jumlah maksimum generasi atau waktu maksimum CPU bekerja.
Tabel 2.2. Kriteria Terminasi
Dimension, j 1 2 3 4 5 6 7 8 9 1.8 -0.99 3.01 0.72 -0.45 -2.25 5.3 4.8 1.9 6 2 5 4 1 9 3 8 7 2 1 2 2 1 3 1 3 3 (Sumber: Tasgetiren 2004)
Untuk melakukan proses pencarian solusi optimal pada permasalahan penjadwalan job shop dengan metode algoritma DE, dilakukan beberapa tahap atau prosedur. Prosedur ditunjukkan dalam diagram alir yang tertera pada gambar 2.5. Prosedur tersebut dijabarkan sebagai berikut(Tasgetiren et al, 2004):
1. Tahap inisialisasi
Menetapkan t = 0, CR, F, dan NP Dimensi : jumlah job
Membangun individu awal sebanyak NP, yakni
{
Xt i NP}
i, =1,2,..., , dimana
[
0]
, 0 2 0 1 0 i,
i,..,
inm iX X X
X =
; Xik0 =Xmin+(Xmax−Xmin)xrXmin= -1; Xmax= 1; r = bilangan random (0-1)
Melakukan operasi permutasi
[
0]
, 0 12 0 1 0 i
, ,...,
in iπ π π
π =
untuk setiap Xi0dengan mengaplikasikan aturan Smallest Position Value (SPV).
Mengevaluasi setiap individu i dalam populasi dengan menggunakan fungsi objektif 0
(
0 0)
i i
i X
f
π
← (i = 1,2,…,NP), untuk memilih individu target.2. Meng-update generasi t=t+1 3. Membentuk populasi mutan
Untuk setiap individu target, akan dicari individu mutan
[
1]
, 1 2 1 1 1 +,
+,..,
+ +=
t nm i t i t i t iv v v
V
yang diperoleh melalui operasi(
t)
ci t bi t ai t i X F X X V +1= + − , (ai bi ci) 4. Membentuk populasi TrialIndividu trial
[
1]
, 1 2 1 1 1 +,
+,..,
+ +=
t nm i t i t i t iu u u
U
diperoleh melalui operasi:{
v if r CR}
otherwise x t ik t ik t ik t iku
+=
+1, +1≤ , 1CR adalah konstanta pindah silang pada range (0,1), dan rikt+1 adalah bilangan acak uniform antara 0 sampai 1.
5. Melakukan operasi permutasi job
Operasi permutasi job dilakukan dengan menerapkan aturan SPV untuk
melakukan operasi permutasi
[
t]
nm i t i t i t i
ϕ
1,ϕ
2,..,ϕ
,ϕ =
(i = 1,2,…,NP).6. Mengevaluasi populasi Trial
Evaluasi populasi trial menggunakan fungsi objektif +1
(
+1← t+1)
i t i t i U f
π
(i = 1,2,…,NP)
Universitas Indonesia
7. Melakukan penyeleksian
Nilai fungsi objektif individu trial Uit+1 akan dibandingkan dengan individu target generasi sebelumnya, Xit, untuk menentukan apakah individu Trial tersebut layak menjadi anggota populasi target generasi berikutnya atau tidak. 8. Menghentikan operasi pencarian
Jika jumlah iterasi sudah mencapai jumlah iterasi yang telah ditentukan, maka algoritma dihentikan, namun jika belum maka kembali ke tahap 2.
Gambar 2.3. Diagram Alir Algoritma DE untuk Job Shop Sequencing Problem 2.6. Model Matematis
Untuk model matematis, digunakan pendekatan model Manne yang dimodifikasi oleh Cemal Ozguven et al. (2010). Model pada jurnal ini dipakai karena model ini dibangun dengan tujuan mengurutkan operasi-operasi pada
mesin, sehingga waktu penyelesaian seluruh job menjadi minimum. Dari model Cemal Ozguven et al. ini yang dipakai adalah masalah fleksibilitas rute yang bersesuaian dengan permasalahan yang dihadapi dalam penelitian ini dengan tujuan meminimumkan total biaya produksi.
Pada penelitian Cemal Ozguven, model dibandingkan dengan model yang diajukan oleh Fattahi et al. (2007). Untuk masalah dengan ukuran kecil kedua model saling bersinggungan; untuk ukuran sedang model Cemal Ozguven lebih baik dari model Fattahi. Namun, secara keseluruhan model Cemal Ozguven lebih baik dari model Fattahi dari sisi waktu CPU, nilai Cmax dan ukuran model permasalahan. Model Cemal Ozguven dibandingkan dengan jurnal terbarunya Fattahi et al. (2009) memunyai kemiripan. Operasi dari job model Fattahi ini bisa overlap sepanjang barang pertama sudah selesai kemudian akan diproses otomatis pada mesin berikutnya. Karena belum ada literatur pembanding terhadap model Fattahi terbaru ini, maka dalam penelitian digunakan model Cemal Ozguven. Gambaran model matematis job shop tersebut adalah sebagai berikut:
Fungsi Tujuan : Meminimumkan Total Biaya Produksi f(B) = (bi + i(Ci - di))
Penjelasan notasinya sebagai berikut;
i = penalti job i terhadap keterlambatan positif di = due date job i
bi = biaya produksi job i i = job (1,2,3…….n) j = operasi (1,2,3……..m) k = mesin (1,2,3…..o)
Keterlambatan negatif sama dengan nol Cmax Sijk + Pijk
Variabel Keputusan
Xijk = 1, jika mesin k dipilih untuk operasi Oij; 0, sebaliknya Sijk = Waktu mulai operasi Oij pada mesin k
Cijk = Waktu selesai operasi Oij pada mesin k
Yij,ij+1,k =
Universitas Indonesia
M = bilangan besar ()
Pijk = Waktu proses operasi Oij pada mesin k
Cmax = Waktu selesai keseluruhan pekerjaan (makespan) Dengan kendala-kendala sebagai berikut:
Operasi Oij ditetapkan hanya pada satu mesin ijk = 1
Set waktu mulai dan selesai nya pada mesin k sama dengan nol Sijk + Cijk (Xijk) . M
Perbedaan antara waktu mulai operasi berikutnya paling tidak sama dengan waktu selesai operasi sebelumnya di mesin k
Cijk Sijk + Pijk atau Sijk Cijk + Pijk , dijadikan linier menjadi; MXijk + Cijk - Sijk Pijk
M(1-Xijk) + Sijk - Cijk Pijk
Operasi Oij dan operasi Oij+1 tidak dapat dilakukan pada waktu yang sama pada mesin yang sama
Cijk Cij+1k + Pijk atau
Cij+1k Cijk + Pij+1k jadikan linier menjadi; Cijk Cij+1,k +Pijk - M(Yij,ij+1,k)
Cij+1k Cijk + Pij+1k - (1-Yij,ij+1k).M
Hubungan antara operasi yang harus didahulukan tidak bertentangan, operasi Oij tidak bisa dimulai sebelum operasi Oij-1 selesai
ijk i,j-1,k
Waktu selesai harus lebih besar atau sama dengan total waktu proses dan waktu pelepasan
Ci Pi + ri
Waktu selesai pekerjaan (operasi akhir) Ci ijk J
Waktu keseluruhan pekerjaan (makespan)
Cmax Ci J