• Tidak ada hasil yang ditemukan

PENDEKATAN CROSS ENTROPY-GENETIC ALGORITHM UNTUK PERMASALAHAN PENJADWALAN JOB SHOP TANPA WAKTU TUNGGU PADA BANYAK MESIN

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENDEKATAN CROSS ENTROPY-GENETIC ALGORITHM UNTUK PERMASALAHAN PENJADWALAN JOB SHOP TANPA WAKTU TUNGGU PADA BANYAK MESIN"

Copied!
11
0
0

Teks penuh

(1)

PENDEKATAN CROSS ENTROPY-GENETIC ALGORITHM UNTUK

PERMASALAHAN PENJADWALAN JOB SHOP TANPA WAKTU TUNGGU PADA BANYAK MESIN

Muhammad Arif Budiman

Jurusan Teknik Industri, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember Surabaya

arif_doudo@ie.its.ac.id ABSTRAK

Permasalahan penjadwalan job shop tanpa waktu tunggu (no-wait job-shop scheduling

NWJSS) merupakan salah satu permasalahan penjadwalan klasik yang dapat ditemui pada perusahaan-perusahaan pengecoran logam, plastik, dan makanan, dengan operasi tidak diizinkan menunggu. Beberapa metode penyelesaian permasalahan tersebut telah dikembangkan baik dengan pendekatan eksak maupun heuristik/metaheuristik. Cross entropy

sebagai salah satu metode metaheuristik yang relatif baru dapat menjadi alternatif metode untuk mendapatkan pendekatan penyelesaian permasalahan tersebut. Metode ini sudah diaplikasikan pada permasalahan optimasi kombinatorial, optimasi multi ekstermal, serta rare event simulation, dengan hasil penyelesaian yang cukup optimal dengan waktu yang relatif singkat. Penelitian ini mengimplementasikan metode cross entropy yang dihibridasi dengan algoritma genetika (cross entropy – genetic algorithm/CEGA) dalam permasalahan

m-machines NWJSS, serta membandingkan kelebihan dan kekurangan antara metode CEGA

tersebut dengan metode lain pada permasalahan yang sama. Hasil yang diharapkan dari penelitian ini adalah pengembangan algoritma CEGA pada permasalahan NWJSS, untuk mendapatkan hasil makespan yang lebih baik.

I. PENGANTAR

Permasalahan NWJSS merupakan permasalahan yang tergolong non-polynomial hard

(NP-Hard), terutama pada permasalahan banyak mesin (m-machines NWJSS) (Pan, 2009). Pada permasalahan job shop secara umum, urutan pengerjaan operasi pada masing-masing job

tidak sama, sehingga ketidak-tepatan penjadwalan dapat mengakibatkan bertambahnya waktu penyelesaian keseluruhan job (makespan). Selain itu, batasan no-wait (tanpa waktu tunggu) – misalnya pada beberapa perusahaan pengecoran logam, plastik, dan makanan – membuat permasalahan tersebut menjadi lebih rumit, di mana ketidak-tepatan penjadwalan dapat mengakibatkan mundurnya makespan yang lebih signifikan. Hal ini karena keberlangsungan operasi kerja dalam satu job harus dijaga untuk menghindari pengerjaan ulang operasi (operation rework) maupun pengerjaan ulang job kembali dari operasi permulaan (jobredo).

Beberapa penelitian untuk mendapatkan penyelesaian permasalahan NWJSS tersebut telah dilakukan, misalnya dengan menggunakan Genetic Algorithm-Simulated Annealing

(Schuster, 2003) dan Tabu Search Hibrida (Bożejko, 2009). Beberapa dari metode tersebut mendapatkan hasil makespan yang kurang optimal, namun ada pula yang mendapatkan hasil

makespan yang optimal namun dengan waktu komputasi yang relatif lama.

Metode cross entropy sebagai salah satu metode metaheuristik yang relatif baru telah digunakan dalam beberapa permasalahan optimasi kombinatorial, optimasi kontinu, optimasi

noisy, dan rare event simulation (Rubinstein, 2004). Pada beberapa permasalahan, metode ini dapat menghasilkan penyelesaian yang cukup optimal dengan perbandingan waktu penghitungan yang relatif lebih singkat, misalnya pada permasalahan Support Vector Machine

(Widyarini, 2009). Penelitian ini akan melakukan suatu pengembangan algoritma dengan pendekatan cross entropy yang dihibridasi dengan algoritma genetika (untuk selanjutnya dinamakan cross entropy-genetic algorithm atau CEGA) untuk menyelesaikan permasalahan

(2)

NWJSS. Penggunaan pendekatan cross entropy-genetic algorithm untuk mengembangkan algoritma dalam menyelesaikan permasalahan NWJSS diharapkan menjadi alternatif untuk menghasilkan jadwal dengan makespan yang optimal.

II. MODEL PERMASALAHAN

Merujuk pada definisi Graham dkk. pada penelitian Schuster (2003), permasalahan

NWJSS secara umum adalah sebagai berikut:

Terdapat seperangkat mesin M = {1, 2, …, m} yang akan digunakan untuk mengerjakan seperangkat job J = {1, 2, …, n}. Untuk setiap job ke-i J, diberikan urutan-urutan pengerjaan sebanyak k operasi O = {O(i,1), O(i,2), …, O(i,j)} yang merupakan detail dari

pengerjaan semua job ke-i. Masing-masing operasi tersebut memiliki (m(i,j), w(i,j)) ,

yang menunjukkan bahwa operasi o(i,j) dikerjakan pada mesin m(i,j) dengan waktu operasi

w(i,j).

Sedangkan merujuk pada model yang diusulkan Brizuela pada penelitian Pan (2009), permasalahan NWJSS dengan minimasi makespan dapat dimodelkan dalam bentuk pemrograman integer sebagai berikut:

 Simbol yang digunakan

Ji Job ke-i

Mk Mesin ke-k

Oik Operasi job ke-i yang dijalankan di mesin ke-k

O(i,j) Operasi ke-j pada job ke-i

Ni Banyaknya operasi pada job ke-i  Parameter permasalahan

M Bilangan positif sembarang yang sangat besar

n Banyaknya job

m Banyaknya mesin pada lantai produksi

wik Waktu proses job ke-i pada mesin ke-k

r(i,j,k) Biner pemroses, bernilai 1 jika O(i,j) diproses di Mk, bernilai 0 jika tidak  Peubah keputusan

Cmax Waktu penyelesaian maksimal tercepat (makespan)

sik Waktu mulai tercepat job ke-i pada mesin ke-k

Z(i,i’,k) Biner pendahulu, bernilai 1 jika job ke-i mendahului job ke-i’ pada mesin ke-k, bernilai 0 jika tidak

 Model permasalahan Minimize Cmax Subject to (7) (8) (9) (10) (11) dengan i∊ {1,2,...,n}; j∊ {1,2,...,Ni-1}; k∊ {1,2,...,m};

(3)

Persamaan (7) memberi batasan bahwa mesin ke-k akan memulai O(i,j+1) sesaat setelah O(i,j) sudah selesai (untuk meyakinkan bahwa batasan tanpa tunggu terpenuhi). Persamaan (8) dan (9) memberi batasan bahwa hanya ada satu job yang diproses dalam satu mesin pada satu waktu. Keduanya secara bersama-sama dipakai untuk meyakinkan bahwa hanya satu persamaan yang akan berdampak, terkait dengan nilai biner Z(i,i’,k). Persamaan (10) digunakan untuk meminimalkan Cmax terkait dengan fungsi tujuan. Sedangkan persamaan (11) digunakan untuk meyakinkan bahwa nilai Cmaxdan sik tak negatif.

III. ALGORITMA YANG DIUSULKAN

Dalam penelitian ini, metode yang diusulkan yakni metode cross entropy yang dihibridasi dengan algoritma genetika (untuk selanjutnya dinamakan Cross Entropy-Genetic Algorithm/ CEGA). Kaidah cross entropy digunakan sebagai kaidah dasar dalam algoritma, sedangkan kaidah algoritma genetika hanya terbatas penggunaannya pada proses pembangkitan sampel.

Metode cross entropy sendiri diilhami oleh sebuah konsep pada teori informasi modern, yakni konsep jarak Kullback-Leibler atau yang dikenal juga dengan nama yang sama: konsep jarak cross entropy (Rubinstein, 2004). Konsep ini dikembangkan oleh Solomon Kullback dan Richard Leibler, untuk mengukur perbedaan selisih jarak antara sebuah distribusi referensi ideal p dengan distribusi teraplikasi q. Sedangkan metode algoritma genetika sendiri diilhamii dari proses evolusi biologis yang terjadi di alam, yang meliputi unsur-unsur pewarisan gen, seleksi alam, pindah silang/rekombinasi, dan mutasi.

Secara umum alur algoritma CEGA yang digunakan sebagai metode penyelesaian permasalahan NWJSS ini adalah sebagai berikut:

Gambar 1 Diagram Alir Algoritma CEGA

Mulai Pendefinisian input dan output Penentuan nilai parameter inisial Pembangkitan sampel awal Penghitungan makespan masing-masing jadwal

Pemilihan sampel elite

Pembaharuan parameter pindah silang dan parameter

mutasi Apakah sudah memenuhi syarat pemberhentian? Penampilan hasil Selesai Ya Tidak Pembobotan sampel elite Penghitungan Nilai Linear Fitness Ranking Pindah Silang Mutasi Penentuan Induk

(4)

Penjelasan dari alur di atas adalah sebagai berikut: 1. Pendefinisian Input dan Output

Pada langkah ini ditentukan input apa saja yang akan diproses pada algoritma dan output

apa saja yang akan ditampilkan sebagai hasil dari proses. Adapun pada penelitian ini, mengingat permasalahan yang diteliti adalah permasalahan NWJSS dan metode yang digunakan adalah cross entropy yang dihibridasi dengan algoritma genetika, maka input

dan output-nya adalah sebagai berikut:  Input:

 Matriks rute mesin (R(j,k); dengan j menyatakan nomor job dan k menyatakan nomor urutan operasi)

 Matriks waktu proses (W(j,k))

 Jumlah sampel pembangkitan (N)

 Parameter kejarangan (ρ)

 Koefisien penghalusan (α)

 Parameter pindah silang/crossover rate (Pps) inisial

 Toleransi pemberhentian (β)

Output:

Timetable jadwal optimal (waktu mulai dan waktu selesai masing-masing operasi)

 Nilai makespan jadwal optimal (Cmax)

 Waktu komputasi (T)

 Jumlah iterasi (iterasi) 2. Penentuan Nilai Parameter Inisial

Parameter-parameter yang dimasukkan sebagai input, yakni N, ρ , α, Pps inisial, dan β, ditentukan sebagai tolok ukur performansi output yang dihasilkan. Dengan nilai parameter yang berbeda pastinya akan didapatkan hasil yang berbeda.

Adapun aturan untuk pemberian parameter tersebut di atas adalah sebagai berikut:

 Untuk jumlah sampel pembangkitan N, tidak ada aturan khusus terkait dengan penentuan jumlah sampel pada optimasi kombinatorial, namun semakin besar jumlah job pastinya semakin besar sampel yang harusnya diambil. Pada algoritma digunakan jumlah sampel default sama dengan jumlah job pangkat tiga (n3).  Untuk parameter kejarangan ρ, biasanya digunakan nilai 1% - 10% (Kroese,

2009). Pada algoritma digunakan nilai default 2%

 Untuk koefisien penghalusan α, nilainya berada antara 0 – 1, namun secara empiris nilai 0,4 - 0,9 merupakan nilai yang paling optimal (de Boer, 2003). Pada algoritma digunakan nilai default 0,8

 Untuk parameter pindah silang (Pps) inisial digunakan nilai 1 sebagai nilai default  Untuk toleransi pemberhentian β, nilainya mendekati 0 ( ). Pada

algoritma digunakan nilai default 0,001 3. Pembangkitan Sampel

Sampel yang dibangkitkan di sini adalah merupakan urutan prioritas job yang terlebih dahulu dijadwalkan. Pembangkitan sampel inisial (iterasi=1) dilakukan dengan menggunakan teknik acak penuh (fully randomized), sedangkan pada pembangkitan sampel setelahnya (iterasi>1) dilakukan dengan menggunakan kaidah algoritma genetika, yakni pindah silang dan mutasi, dengan alur sebagai berikut:

a) Pembobotan sampel elite

Pembobotan ini diperlukan untuk tahap pemilihan induk pertama, di mana induk pertama akan dipilih dari sampel elite dengan mempertimbangkan bobot dari masing-masing urutan pada sampel elite. Adapun aturan pembobotan yang digunakan yakni, jika makespan yang dihasilkan oleh urutan lebih baik daripada

(5)

makespan terbaik yang pernah dikunjungi pada iterasi sebelumnya, maka bobot yang diberikan adalah senilai banyaknya sampel elite, selebihnya hanya diberi bobot 1.

b) Penghitungan linear fitness ranking

Linear fitness ranking (LFR) dihitung dari perbandingan nilai kesesuaian (fitness) semua sampel yang telah dibangkitkan pada iterasi sebelumnya. Nilai LFR adalah sebesar LFR(I(N-i+1))=Fmax-(Fmax-Fmin)((i-1)/(N-1))

Dengan i merupakan nilai yang berkisar antara 1 sampai dengan jumlah sampel (N), serta I menunjukkan indeks job pada matriks sampel.

c) Pemilihan induk

Pemilihan induk dilakukan dengan menggunakan mekanisme roda roulette

(roulette wheel selection), di mana bobot yang lebih besar akan mendapatkan peluang yang lebih tinggi untuk terpilih sebagai induk. Induk pertama dipilih dari sampel elite dengan pembobotan yang sudah ditentukan sebelumnya, sedangkan induk kedua dipilih dari sampel pada iterasi sebelumnya dengan pembobotan dari nilai linearfitness ranking.

d) Pindah silang

Pindah silang dilakukan dengan menggunakan teknik order crossover dua titik, di mana pemilihan dua titik tersebut dilakukan secara acak pada kedua induk. Hasil anakan yang didapat mempunyai segmen yang sama di antara dua titik tersebut sebagaimana induknya, namun segmen yang lain dijaga urutannya sesuai dengan induk yang lain dari masing-masing anakan.

e) Mutasi

Mutasi dilakukan dengan menggunakan metode swapping mutation, di mana mutasi dilakukan dengan mempertukarkan job yang termutasi dengan job lain pada anakan yang sama.

4. Penghitungan Makespan

Penghitungan nilai makespan ini dilakukan dengan menggunakan metode timetabling

geser sederhana (simple shift timetabling) yang diadaptasi dari metode geser dari Zhu dkk. (2009). Langkah-langkahnya sebagai berikut:

a) Jadwalkan job urutan priotitas pertama mulai t = 0

b) Jadwalkan job urutan prioritas selanjutnya mulai t=0, kemudian cek apakah terjadi

overload pada mesin. Jika ya, maka geser job ke kanan sampai tidak terdapat

overload

c) Ulangi langkah b) hingga seluruh job terjadwalkan 5. Pemilihan Sampel Elite

Sampel elite dipilih sebanyak ⌈ρ N⌉ dari jumlah sampel yang dibangkitkan berdasarkan nilai makespan-nya. Sebelum langkah ini dilakukan, terlebih dahulu makespan yang didapatkan dari semua sampel diurutkan dari yang terkecil hingga yang terbesar.

6. Pembaharuan Parameter Pindah Silang dan Parameter Mutasi

Pembaharuan parameter dilakukan dengan menggunakan perbandingan antara rata-rata

makespan pada sampel elite dengan 2 kali nilai makespan terbaik pada tiap iterasi. Nilai perbandingan tersebut didefinisikan sebagai u. Parameter pindah silang kemudian diperbaharui dengan menggunakan rumus Pi=(1-α)u+Pi-1 Sedangkan parameter mutasi nilainya didefinisikan sebagai ½ dari nilai parameter pindah silang

7. Pengecekan terhadap Syarat Pemberhentian

Syarat pemberhentian pada penelitian ini adalah bahwa selisih antara parameter pindah silang hasil pembaharuan dengan parameter pindah silang sebelumnya lebih kecil dari β. Jika syarat pemberhentian ini terpenuhi, maka hentikan iterasi dan lanjutkan ke langkah berikutnya. Jika tidak, maka ulangi kembali iterasi mulai langkah keempat.

(6)

8. Penampilan Hasil

Hasil yang ditampilkan dari algoritma ini adalah berupa output-output yang sudah didefinisikan sebelumnya.

IV. PENGUJIAN ALGORITMA

Pengujian algoritma dilakukan dengan membuat kode program algoritma pada

software Matlab). Kode ini kemudian dijalankan sebanyak 30 kali pengulangan, dengan menggunakan spesifikasi komputer Intel Core 2 Duo 1,66 GHz, RAM 1 GB, serta menggunakan software Matlab seri 6.5. Sedangkan data yang digunakan sebagai data uji adalah set data kasus pada ORLibrary yakni data kasus dengan kode Ft06, Ft10, La01-La25, serta Orb01-Orb06 dan Orb08-Orb10.

Adapun hasil dari pengujian adalah sebagai berikut:

Tabel 1 Statistik Hasil Pengujian Algoritma CEGA untuk Kasus Ukuran Kecil

Kasus Ukuran Makespan Makespan CEGA Waktu (detik)

Job Mesin Referensi Best Avg StDev ARPD Avg StDev

ft06 6 6 73 73 73,0 0,0 0,0 7,1 0,1 la01 10 5 971 975 990,1 14,7 0,4 132,6 10,8 la02 10 5 937 961 970,9 9,0 2,5 141,1 6,1 la03 10 5 820 820 852,4 19,3 0,0 133,0 12,2 la04 10 5 887 887 891,7 8,8 0,0 130,1 12,7 la05 10 5 777 781 788,0 11,4 0,5 149,3 12,4 ft10 10 10 1607 1607 1611,9 12,4 0,0 269,4 12,1 orb01 10 10 1615 1615 1630,6 20,2 0,0 307,8 24,2 orb02 10 10 1485 1485 1509,2 14,8 0,0 240,4 10,8 orb03 10 10 1599 1599 1620,2 19,8 0,0 295,8 16,9 orb04 10 10 1653 1653 1692,7 39,3 0,0 278,5 14,0 orb05 10 10 1365 1370 1390,3 18,7 0,4 257,1 14,9 orb06 10 10 1555 1555 1559,1 15,5 0,0 284,2 15,0 orb08 10 10 1319 1319 1319,0 0,0 0,0 291,7 3,4 orb09 10 10 1445 1445 1482,6 39,2 0,0 270,7 23,2 orb10 10 10 1557 1557 1585,6 16,2 0,0 253,4 17,7 la16 10 10 1575 1575 1581,5 19,9 0,0 250,9 13,6 la17 10 10 1371 1384 1405,5 24,9 0,9 241,5 21,6 la18 10 10 1417 1507 1509,7 9,1 6,0 240,0 17,8 la19 10 10 1482 1491 1531,4 34,8 0,6 253,2 7,4 la20 10 10 1526 1526 1542,5 28,8 0,0 255,8 11,4

Tabel 2 Statistik Hasil Pengujian Algoritma CEGA untuk Kasus Ukuran Besar

Kasus Ukuran Makespan Makespan CEGA Waktu (detik)

Job Mesin Referensi Best Avg StDev ARPD Avg StDev

la06 15 5 1248 1304 1342,0 24,3 4,3 1635,8 236,9

la07 15 5 1172 1221 1265,7 23,9 4,0 1670,1 205,8

la08 15 5 1244 1274 1323,8 23,2 2,4 1626,9 187,2

la09 15 5 1358 1382 1443,1 21,2 1,7 1745,9 202,6

(7)

Kasus Ukuran Makespan Makespan CEGA Waktu (detik) Job Mesin Referensi Best Avg StDev ARPD Avg StDev la11 20 5 1671 1722 1793,5 31,9 3,0 10061,7 1097,2 la12 20 5 1452 1538 1597,9 26,2 5,6 9695,1 1102,8 la13 20 5 1624 1674 1759,1 30,7 3,0 10525,0 1028,4 la14 20 5 1691 1749 1821,4 31,6 3,3 9976,7 1199,6 la15 20 5 1694 1752 1851,9 41,3 3,3 10722,1 1237,0 la21 15 10 2048 2054 2209,8 62,1 0,3 3032,3 426,2 la22 15 10 1887 1910 1972,1 42,1 1,2 2970,9 418,5 la23 15 10 2032 2098 2184,0 45,2 3,1 2995,8 429,7 la24 15 10 2015 2056 2133,6 36,9 2,0 2889,1 332,4 la25 15 10 1917 1994 2059,4 31,7 3,9 3049,5 458,7

Dari hasil pengujian algoritma yang telah dilakukan, dapat diketahui bahwa performansi dari CEGA relatif baik, terutama pada kode kasus yang berukuran kecil. Hal ini dapat dilihat dari sebagian besar nilai ARPD pada kasus yang berukuran kecil bernilai 0,0 dan hampir seluruhnya bernilai di bawah 1,0 (kecuali pada La02 dan La18), yang berarti nilai

makespan terbaik yang didapat oleh CEGA pada tersebut relatif hampir sama dengan nilai optimal yang didapatkan dari hasil penghitungan dengan branch and bound. Bahkan pada kode kasus Ft06 dan Orb08, algoritma ini menghasilkan nilai ARPD 0,0 sekaligus nilai simpangan bakunya 0,0, yang berarti hasil yang didapatkan pada 30 kali pengulangan adalah seragam sama dengan nilai optimalnya.

Sedangkan pada kasus berukuran besar, performansi algoritma CEGA cenderung menurun, dapat dilihat dari nilai ARPD-nya yang cenderung di atas 1,0. Hal ini dapat dimaklumi, mengingat jumlah ruang pencarian yang semakin besar dan meningkat secara faktorial, yang tidak diimbangi dengan peningkatan jumlah sampel pencarian. Untuk peningkatan ukuran dari 10 job menjadi 15 job saja, terjadi peningkatan ruang pencarian dari 10! menjadi 15! atau sebanyak 15x14x13x12x11=360360 kali lipat dari semula. Peningkatan tersebut tentunya tidak dapat serta-merta diikuti dengan peningkatan jumlah sampel, mengingat pertimbangan waktu komputasi yang akan juga meningkat secara drastis. Namun demikian, dengan menggunakan jumlah sampel n3, performansi yang ditunjukkan boleh dibilang masih dalam nilai yang cukup bagus, ditunjukkan dengan terdapatnya nilai ARPD di bawah 1,0 (yakni pada La10 dan La21) dan sebagian besar nilai ARPD masih di bawah nilai galat baku yakni 5,0 (kecuali La12).

Gambar 2 Grafik Waktu Komputasi Berdasarkan Ukuran Job

0 2000 4000 6000 8000 10000 12000 0 5 10 15 20 25 W ak tu K om pu ta si (D e ti k) Ukuran Job Rata-rata Simpangan Baku

(8)

Apabila ditinjau secara keseluruhan dari nilai rata-rata dan simpangan baku makespan

dari pengulangan yang dilakukan, nilai rata-rata yang didapatkan cenderung mendekati nilai

makespan referensinya, sedangkan nilai simpangan bakunya cenderung besar (cenderung bernilai lebih besar dari 10,0, kecuali pada beberapa kasus). Hal itu berarti algoritma ini cenderung menghasilkan nilai makespan yang tidak seragam pada masing-masing pengulangannya, namun dengan probabilitas mendapatkan hasil yang terbaik relatif lebih besar. Performansi yang seperti ini dirasakan sudah cukup baik, mengingat hasil tersebut menunjukkan adanya upaya untuk tidak terjebak pada satu nilai penyelesaian saja (dalam hal ini optimal setempat). Namun tentunya, algoritma perlu lebih dioptimalkan kembali agar nilai simpangan baku yang besar itu bisa diperkecil, dengan nilai rata-rata yang lebih baik atau, paling tidak, sama (yang berarti nilai makespan yang didapatkan pada tiap pengulangan akan lebih seragam namun dengan tetap cenderung mendekati nilai terbaik referensinya).

Walaupun algoritma ini menghasilkan nilai makespan yang secara keseluruhan lebih baik, namun waktu yang digunakan untuk melakukan perhitungan relatif lama dan bertambah secara signifikan pada setiap penambahan job. Hal tersebut dapat dilihat pada grafik yang ditampilkan pada Gambar 2, di mana nilai rata-rata waktu yang dibutuhkan oleh algoritma untuk setiap penambahan job akan meningkat dengan drastis, diikuti pula dengan peningkatan nilai simpangan bakunya. Ini diduga disebabkan oleh proses timetabling untuk menghitung fungsi tujuan yang relatif memakan waktu. Seperti yang sudah dijelaskan pada bab sebelumnya bahwa mekanisme timetabling geser sederhana yang digunakan mengharuskan pengecekan terhadap adanya overload pada mesin untuk setiap penjadwalan job baru. Setiap kali terjadi overload pengerjaan operasi pada job yang akan dijadwalkan maka job yang akan dijadwalkan harus digeser sejauh nilai waktu mesin yang bersangkutan overload. Jika setelah digeser, mesin yang lain overload maka dilakukan lagi penggeseran, hingga semua mesin tidak ada yang mengalami overload pengerjaan operasi. Ini tentunya memakan waktu komputasi yang cukup lama, terutama apabila ukuran job yang harus dijadwalkan semakin banyak. Selain itu juga, penggunaan spesifikasi komputer dan spesifikasi software juga berpengaruh terhadap kecepatan penghitungan dari algoritma tersebut.

Kemudian, apabila dibandingkan dengan algoritma-algoritma lain yakni Genetic Algorithm-Simulated Annealing (Schuster, 2003) dan Hybrid Tabu Search (Bożejko, 2009), performansi CEGA dapat ditunjukkan pada Tabel 3 dan Tabel 4.

Tabel 3 Perbandingan Makespan GASA, HTS, dan CEGA pada Kasus Ukuran Kecil

Instance Ref GASA HTS CEGA

Best ARPD Best ARPD Best ARPD

ft06 73 73 0,0 73 0,0 73 0,0 la01 971 1037 6,4 975 0,4 975 0,4 la02 937 990 5,4 975 4,1 961 2,5 la03 820 832 1,4 820 0,0 820 0,0 la04 887 889 0,2 889 0,2 887 0,0 la05 777 817 4,9 777 0,0 781 0,5 ft10 1607 1620 0,8 1607 0,0 1607 0,0 orb01 1615 1663 2,9 1615 0,0 1615 0,0 orb02 1485 1555 4,5 1518 2,2 1485 0,0 orb03 1599 1603 0,2 1599 0,0 1599 0,0 orb04 1653 1653 0,0 1653 0,0 1653 0,0 orb05 1365 1415 3,5 1367 0,1 1370 0,4 orb06 1555 1555 0,0 1557 0,1 1555 0,0 orb08 1319 1319 0,0 1319 0,0 1319 0,0 orb09 1445 1535 5,9 1449 0,3 1445 0,0

(9)

Instance Ref GASA HTS CEGA Best ARPD Best ARPD Best ARPD orb10 1557 1618 3,8 1571 0,9 1557 0,0 la16 1575 1637 3,8 1575 0,0 1575 0,0 la17 1371 1430 4,1 1384 0,9 1384 0,9 la18 1417 1555 8,9 1417 0,0 1507 6,0 la19 1482 1610 8,0 1491 0,6 1491 0,6 la20 1526 1693 9,9 1526 0,0 1526 0,0 Rata-rata 3,5 0,5 0,5

Tabel 4 Perbandingan Makespan GASA, HTS, dan CEGA pada Kasus Ukuran Besar

Kasus Ref GASA HTS CEGA

Best ARPD Best ARPD Best ARPD la06 1248 1339 6,8 1248 0,0 1304 4,3 la07 1172 1240 5,5 1172 0,0 1221 4,0 la08 1244 1296 4,0 1298 4,2 1274 2,4 la09 1358 1447 6,2 1415 4,0 1382 1,7 la10 1287 1338 3,8 1345 4,3 1299 0,9 la11 1671 1825 8,4 1704 1,9 1722 3,0 la12 1452 1631 11,0 1500 3,2 1538 5,6 la13 1624 1766 8,0 1696 4,2 1674 3,0 la14 1691 1805 6,3 1722 1,8 1749 3,3 la15 1694 1829 7,4 1747 3,0 1752 3,3 la21 2048 2182 6,1 2191 6,5 2054 0,3 la22 1887 1965 4,0 1922 1,8 1910 1,2 la23 2032 2193 7,3 2126 4,4 2098 3,1 la24 2015 2150 6,3 2132 5,5 2056 2,0 la25 1917 2034 5,8 2020 5,1 1994 3,9 Rata-rata 6,5 3,3 2,8

Dari hasil perbandingan tersebut dapat dilihat bahwa tingkat performansi CEGA

berdasarkan makespan terbaik yang didapat ternyata jauh lebih baik jika dibandingkan dengan GASA, ditandai dengan selisih nilai rata-rata ARPD antara CEGA dan GASA yang sangat besar, serta nilai makespan yang didapat pada masing-masing kasus di mana CEGA

unggul secara mutlak.

Sedangkan jika dibandingkan dengan HTS, performansinya relatif sama namun CEGA

sedikit lebih baik. Hal ini dapat dilihat dari selisih nilai rata-rata ARPD, di mana pada kasus berukuran kecil ARPD bernilai 0 sehingga dapat dianggap tidak signifikan. Sedangkan untuk kasus berukuran besar, nilai ARPD-nya hanya berselisih 0,5. Selain itu, nilai makespan yang didapatkan oleh CEGA tidak unggul secara mutlak dibandingkan dengan HTS, terlihat dari beberapa nilai makespan terbaik HTS yang lebih unggul dibandingkan dengan CEGA, misalnya pada La06 dan La07.

V. KESIMPULAN

Dari hasil analisis dan interpretasi hasil pengujian serta perbandingan hasil ekseprimen dengan metode lain, dapat ditarik kesimpulan bahwa metode CEGA dapat digunakan sebagai metode alternatif penyelesaian permasalahan NWJSS, dan dapat diaplikasikan kegunaannya pada perusahaan-perusahaan dengan karakteristik NWJSS. Ini mengingat performansi yang

(10)

didapatkan dari algoritma ini relatif baik, terutama pada kasus NWJSS berukuran kecil, walaupun performansinya semakin menurun seiring dengan bertambahnya ukuran kasus.

Diharapkan pada penelitian-penelitian selanjutnya, ada upaya untuk melakukan modifikasi lanjutan bagi algoritma CEGA bagi permasalahan NWJSS agar dapat meningkatkan performansinya untuk ukuran populasi yang besar. Selain itu, penggunaan algoritma ini pada permasalahan yang lain juga dianjurkan.

DAFTAR RUJUKAN

Baker, Kenneth R. 1974. Introduction to Sequencing and Scheduling. New York: John Wiley & Sons, Inc.

Beasley, J. E., 1990. OR-Library: Distributing Test Problems by Electronic Mail. Journal of the Operational Research Society 41: 1069 – 1072.

Boubezoul, Abderrahmane; Paris, Sébastien; dan Ouladsine, Mustapha. 2008. Application of

the Cross Entropy Method to the GLVQ Algorithm. Pattern Recognition 41: 3173

– 3178

Bożejko, Wojciech dan Makuchowski, Mariusz. 2009. A Fast Hybrid Tabu Search Algorithm for the No-Wait Job Shop Problem. Computers & Industrial Engineering 56: 1502–1509

Caserta, M.; Rico, E. Quiñonez; dan Uribe, A. Márquez. 2008. A Cross Entropy Algorithm for the Knapsack Problem with Setups. Computers & Operations Research 35: 241 – 252

de Boer, Pieter-Tjerk; Kroese, Dirk P.; Mannor, Shie; dan Rubinstein, Reuven Y. 2003. A

Tutorial on the Cross-Entropy Method. Haifa: Department of Industrial

Engineering, Technion – Israel Institute of Technology

Dewi, Dian Retno Sari. Pengembangan Algoritma Penjadualan Produksi Job Shop untuk Meminimumkan Total Biaya Earliness dan Tardiness. Jurnal Ilmiah Teknik Industri 4 no. 2: 57 – 65

Ganduri, Chandrasekhar V. 2004. Rule Driven Job-Shop Scheduling Derived from Neural Networks Through Extraction. Department of Industrial and Manufacturing Systems Engineering, Ohio University

Kroese, Dirk P. 2009. Cross-Entropy Method. Brisbane: Mathematics Department, University of Queensland

Liaw, Ching-Fang. 2008. An Efficient Simple Metaheuristic for Minimizing The Makespan in Two-Machine No-Wait Job Shops. Computer & Operations Research 35: 3276 – 3283

Mascis, Alessandro, dan Pacciarelli, Dario. 2002. Discrete Optimization: Job-Shop

Scheduling with Blocking and No-Wait Constraints. European Journal of

Operational Research 143: 498 – 517

Pan, Jason Chao-Hsien, dan Huang, Han-Chiang. 2009. A Hybrid Genetic Algorithm for

No-Wait Job Shop Scheduling Problems. Expert Systems with Application 36: 5800 –

5806

Rera, Gladiez Florista. 2010. Penerapan Metode Cross Entropy dalam Penyelesaian

Capacitated Vehicle Routing ProblemStudi Kasus: Distribusi Koran Jawa Pos

Surabaya. Surabaya: Institut Teknologi Sepuluh Nopember

Rubinstein, Reuven Y., dan Kroese, Dirk P. 2004. The Cross-Entropy Method: A Unified Approach to Combinatorial Optimization, Monte-Carlo Simulation, and Machine

Learning. New York: Springer Science+Business Media, Inc.

Schuster, Christoph J. dan Framinan, Jose M. 2003. Approximative Procedures for No-Wait Job Shop Scheduling. Operations Research Letters 31: 308 – 318

Widyarini, Tiananda. 2009. Aplikasi Metode Cross Entropy untuk Support Vector Machines. Surabaya: Institut Teknologi Sepuluh Nopember

(11)

Waterloo Manufacturing Software. Job Shop Scheduling. http://www.waterloo-software.com/planning-and-scheduling/job-shop-scheduling.html. Diakses pada 24 Februari 2010

Wikipedia. Cross Entropy Method. http://en.wikipedia.org/wiki/Cross_Entropy_Method. Diakses pada 19 Februari 2010

_________. Crossover (Genetic Algorithm). http://en.wikipedia.org/wiki/Crossover_ (Genetic_Algorithm). Diakses pada 18 Juni 2010

_________. Genetic Algorithm. http://en.wikipedia.org/wiki/ Genetic_Algorithm. Diakses pada 18 Juni 2010

_________. Kullback-Leibler Divergence. http://en.wikipedia.org/wiki/Kullback-Leibler_ Divergence. Diakses pada 19 Februari 2010

_________. Mutation (Genetic Algorithm). http://en.wikipedia.org/wiki/Mutation_ (Genetic_Algorithm). Diakses pada 18 Juni 2010

_________. Selection (Genetic Algorithm). http://en.wikipedia.org/wiki/Selection_ (Genetic_Algorithm). Diakses pada 18 Juni 2010

Zhu, Jie; Li, Xiaoping; dan Wang, Qian. 2009. Complete Local Search with Limited Memory

Algorithm for No-Wait Job Shops to Minimize Makespan. European Journal of

Gambar

Gambar 1 Diagram Alir Algoritma CEGA
Tabel 1 Statistik Hasil Pengujian Algoritma CEGA untuk Kasus Ukuran Kecil  Kasus  Ukuran  Makespan  Makespan CEGA  Waktu (detik)
Gambar 2 Grafik Waktu Komputasi Berdasarkan Ukuran Job
Tabel 3 Perbandingan Makespan GASA, HTS, dan CEGA pada Kasus Ukuran Kecil
+2

Referensi

Dokumen terkait

Menurut Sutanto (2002), bahwa PO dapat dipahami sebagai suatu praktek pertanian yang bersifat holistik mengingat kegiatan PO menyangkut berbagai aspek, antara lain :

Hasil penelitian ini bahwa: (1) model media pembelajaran interaktif pengetahuan rangkaian pengendali dasaryang tepat untuk mata pelajaran pengetahuan

Definisi ini dipenuhi oleh elemen-elemen rangkaian seperti R, L, dan C, karena elemen-elemen ini akan memberikan sinyal keluaran (tegangan atau arus) tertentu jika diberi

Hasil dari penelitian ini menunjukkan adanya hubungan yang bermakna antara ketepatan jam pemberian makanan dengan tingkat kepuasan pasien terhadap pelayanan makanan dengan (p=

Hasil sidik ragam terhadap Berat Kering tanaman sawi hijau menunjukkan bahwa semua perlakuan memberikan pengaruh yang sama atau tidak berbeda nyata karena kombinasi

Terkait dengan Siwa-Budha di Pura Pegulingan akan dimulai dengan membahas komponen ritus dan upacara berupa tempat pemujaan yakni stupa dan berbagai palinggih yang bersifat

merupakan pusat pengembangan kesehatan masyarakat yang juga membina peran serta masyarakat disamping memberikan pelayanan secara menyeluruh dan terpadu kepada masyarakat di

PR sebagai pendengar setia dan broker informasi. Mereka sebagai penghubung, interpreter dan mediator antara organisasi dan publiknya. Mereka mengelola