• Tidak ada hasil yang ditemukan

PENJADWALAN DUA MESIN FLOW SHOP UNTUK MEMINIMASI TOTAL TARDINESS DENGAN MEMPERHATIKAN KETIDAKTERSEDIAAN PADA KEDUA MESIN

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENJADWALAN DUA MESIN FLOW SHOP UNTUK MEMINIMASI TOTAL TARDINESS DENGAN MEMPERHATIKAN KETIDAKTERSEDIAAN PADA KEDUA MESIN"

Copied!
11
0
0

Teks penuh

(1)

PENJADWALAN DUA MESIN FLOW SHOP UNTUK MEMINIMASI TOTAL

TARDINESS DENGAN MEMPERHATIKAN KETIDAKTERSEDIAAN PADA

KEDUA MESIN

Rr.Orifia Pitrasari, Stefanus Eko Wiratno, Patdono Suwignjo Jurusan Teknik Industri

Institut Teknologi Sepuluh Nopember (ITS) Surabaya Kampus ITS Sukolilo Surabaya 60111

Email: [email protected] ; [email protected]; [email protected] ABSTRAK

Penelitian ini membahas permasalahan penjadwalan dua mesin flow shop yang mengakomodasi ketidaktersediaan pada kedua mesin dengan kondisi non-resumable. Sebuah model matematis dan algoritma heuristik dirancang untuk mendapatkan urutan job yang dapat meminimasi total tardiness. Model matematis diselesaikan dengan bantuan Lingo, sedangkan algoritma heuristik dirancang dengan menggunakan 3 prioritas pengurutan yaitu earliness due date, slack dan earliness D/P. Hasil penelitian mengkonfirmasikan bahwa model matematis dapat menghasilkan solusi yang lebih baik dibanding algoritma heuristik, namun membutuhkan waktu yang sangat lama untuk menyelesaikan permasalahan dengan jumlah job yang banyak. Sedangkan untuk algoritma heuristik dengan prioritas pengurutan earliness due date dapat menghasilkan solusi yang lebih baik dibandingkan dengan slack dan earliness D/P. Selain itu, model matematis dan heuristik yang telah dirancang tidak selalu dapat menghasilkan solusi yang optimal.

Kata Kunci : Flow Shop, ketidaktersediaan, model matematis, dan Heuristik

ABSTRACT

This research discussed about two machines flow shop scheduling problem that accommodate non-availability of two machines in non-resumable condition. A mathematic model and heuristic algorithm is established to get job sequence to minimize total tardiness. Mathematic model is solved by using lingo software, whereas the heuristic algorithm that established to solve mathematic model is using three dispatching priority there are earliness due date, slack, and earliness D/P. The result is confirm that mathematic model can get better solution than heuristic algorithm, however need much time to solve a big problem. Whereas for heuristic algorithm that using earliness due date priority can get solution better than slack and earliness D/P. In addition, mathematic model and heuristic that have been established not always can get optimal solution.

Key word: Flow Shop, Non-availability, Mathematic Model, Heuristic

1. Pendahuluan

Beberapa penelitian dilakukan untuk

mengatasi masalah penjadwalan pada sistem

flow shop antara lain adalah penelitian Pan et al. (2002) membuat model penjadwalan dua mesin dengan kriteria performansi minimasi total

tardiness dan mengasumsikan mesin dalam

keadaan tersedia. Selain itu, ada penelitian yang mengasumsikan bahwa mesin tidak selalu

tersedia saat akan digunakan dalam

penjadwalan deterministik. Penelitian tersebut antara lain penelitian yang dilakukan oleh Lee (1997) model tersebut mengasumsikan kondisi ketidaktersediaan mesin yang resumable serta

non-resumable dan ketidaktersediaan hanya

terjadi pada satu mesin dengan kriteria

minimasi makespan. Lee (1999)

mengembangkan model penjadwalan untuk kondisi semi-resumable. Arlianto (2001) dalam

Berhitu (2008) mengembangkan model

penjadwalan Lee (1999) menjadi model

penjadwalan flow shop m mesin n job dengan kendala ketidaktersediaan pada salah satu

mesin. Kubiak et al. (2002) membuat model

penjadwalan untuk kondisi resumable, dengan interval ketidaktersediaan pada beberapa mesin,

dengan kriteria minimasi makespan. Setiawati

(2003) dalam Berhitu (2008) mengembangkan

model Arlianto (2001) dengan

mempertimbangkan ketidaktersediaan mesin yang dapat terjadi pada lebih dari satu mesin dan terletak pada posisi manapun untuk kondisi

(2)

non resumable dengan kriteria minimasi mean Earliness. Berhitu (2008) membuat model penjadwalan m mesin dengan kondisi

non-resumable, semi resumable dan resumble untuk

tujuan minimasi makespan. Kusuma (2008)

membuat model penjadwalan dua mesin dimana ketidaktersediaan terjadi terbatas hanya pada salah satu mesin untuk kondisi non-resumable dengan kriteria minimasi total tardiness.

Pengembangan model dalam penelitian ini

mengacu pada penelitian Kusuma (2008).

Penelitian ini membuat suatu model

penjadwalan dua mesin untuk meminimasi total

keterlambatan (total tardiness) dengan

memperhatikan ketidaktersediaan yang terjadi pada kedua mesin kondisi non-resumable. Dalam penelitian ini, proses pengerjaan job bersifat non-resumable yang berarti jika

terdapat job yang proses pengerjaannya

terpotong oleh ketidaktersediaan mesin, ketika mesin tersedia kembali, job tersebut harus

diulang prosesnya dari awal. Menurut Morton

and Pentico (1993) apabila memasukkan kendala due date dalam menjadwalkan suatu

job, maka fungsi tujuan yang sesuai adalah

minimasi total tardiness. Minimasi Total

tardiness terjadi karena besarnya penalty yang

diberikan oleh konsumen proportional terhadap jumlah job yang terlambat serta tidak ada reward apabila job selesai dikerjakan sebelum

due date.

Hasil penelitian diharapkan dapat menjadi alternatif bagi pemecahan masalah penjadwalan

flow shop untuk meminimasi total tardiness

yang mempertimbangkan ketidaktersediaan kedua mesin yang proses jobnya bersifat

non-resumable.

2. Studi Literatur Penjadwalan

Penjadwalan Menurut (Blazewicz et.al,

2007) terdiri dari 3 karakteristik, yaitu sejumlah

T = {T1, T2,.., Tn} dimana n adalah tugas/job,

sejumlah P = {P1,P2,..,Pm} dimana m merupakan mesin, dan sejumlah R = {R1,R2,..,

Rs} dimana s merupakan sumberdaya lainnya.

Atau dengan kata lain, penjadwalan berarti

penugasan sejumlah job untuk diproses

disejumlah mesin dengan sumberdaya yang ada serta dengan batasan yang ditentukan.

Faktor-Faktor yang menggambarkan

karakteristik penjadwalan produksi adalah : 1. Jumlah pekerjaan (job) yang dijadwalkan,

yaitu jumlah job yang akan diproses, waktu yang diperlukan untuk tiap proses, dan jenis mesin yang diperlukan.

2. Jumlah mesin dan atau operasi pada

workshop.

3. Pola fasilitas manufaktur : flow shop,

jobshop, openshop.

4.

Production environment : deterministic

(waktu proses dan hal lain yang

berhubungan dengan penjadwalan sudah diketahui) dan Stochastic (tidak diketahui

secara pasti secara pastiwaktu yang ada).

Klasifikasi penjadwalan

Beberapa machine environment yang mungkin terbentuk adalah sebagai berikut :

a. Mesin Tunggal (Single Machine)

Hanya ada satu mesin untuk memproses sejumlah n job.

b. Mesin Paralel (Parallel Machine)

Terdapat m mesin identik yang disusun secara paralel. Sehingga job j dapat dilayani oleh mesin mana saja.

c. Flow Shop

Terdapat m mesin, dimana job

memerlukan operasi di masing-masing mesin. Semua job memiliki routing yang

sama. Biasanya semua antriannya

diasumsikan beroperasi secara First in

First Out.

d. Job Shop

Dalam penjadwalan job shop ini routing tiap mesin tetap, namun urutan proses tidak sama untuk setiap job.

e. Open Shop

Terdapat m mesin, dimana masing-masing

job melewati mesin yang sama lebih dari

satu kali. Job yang berbeda bisa memiliki

routing berbeda.

Penjadwalan flow shop

Ada beberapa macam pola flow shop

menurut Morton and Pentico(1993) :

1. Pure Flow shop

Semua job memerlukan satu operasi pada setiap mesin dan karena tiap job memerlukan jumlah mesin dan urutan

(3)

yang sama. Gambar 2.2 menunjukkan pola pure flow shop.

1 2 m

Gambar 2.2 Pola Pure Flow shop 2. Skip Flow shop

Gambar 2.3 menunjukkan pola skip flow

shop atau pola melompat, dimana

mesin-mesin tertentu dapat dilompati oleh

job-job tertentu.

1 2 3 4 5 6

Gambar 2.3 Pola Skip Flow shop 3. Reentrant Flow shop

Dalam reentrant flow shop, beberapa mesin dapat dilalui lebih dari sekali. 2.4 menunjukkan pola reentrant flow shop

4 2 3 2 1 2 R R R

Gambar 2.4 Pola Reentrant Flow shop 4. Compound Flow shop

Dalam compound flow shop, satu mesin dalam set mesin dapat digantikan oleh sekelompok mesin. Kelompok mesin tersebut umumnya adalah mesin-mesin parallel atau jalur batch yang diikuti oleh

mesin-mesin parallel. Gambar 2.5

menunjukkan pola compound flow shop.

Gambar 2.5 Pola Compound Flow shop Availability dalam Penjadwalan

Menurut Strusevich et al. (2009)

kondisi ketidaktersediaan mesin dapat

dibedakan menjadi tiga macam, antara lain : Resumable

Pada kondisi ini job yang belum selesai diproses tersebut bisa dilanjutkan kembali setelah mesin tersedia tanpa mengulang proses

tersebut dari awal. Contoh kondisi ini adalah pada proses welding (mengelas),

Semi-Resumable

Bagian proses yang telah dikerjakan sebelum terjadi ketidaktersediaan maka setelah mesin tersedia, ada bagian proses yang harus diulang. Contoh kondisi semi-resumable yaitu pada proses drilling (mengebor).

Non-Resumable

Kondisi dimana jika terdapat job yang

proses pengerjaannya terpotong oleh

ketidaktersediaan mesin, ketika mesin tersedia kembali, job tersebut harus diulang prosesnya dari awal. Contoh adalah pengecoran.

Model Penjadwalan Kusuma

Model yang digunakan dalam

penjadwalan Kusuma(2008) adalah :

Z = f(Tk) = Fungsi Tujuan Z adalah minimasi Total tardiness

i = nomor job i = 1,2,..,n

j = nomor mesin j = 1,2

k = urutan job k = 1,2,..,n

pi,j = waktu proses job-i pada mesin-j

aj = saat mulai interval ketidaktersediaan

mesin pada mesin ke-j

bj = saat selesai interval ketidaktersediaan

mesin pada mesin ke-i

di = due date job i = 1,2..,n

Variabel Keputusan yang digunakan adalah :

Zik = indeks job i dijadwalkan pada posisi

ke-k. Zik = 1 jika job i dijadwalkan pada posisi ke-k, jika tidak, maka Zi,k = 0.

Auxiliary Variable :

Pkj = processing job urutan ke-k di mesin j

dk = due date job urutan ke-k

Sk,1 = starting time job urutan ke-k pada

mesin pertama, k = 1,2,..,n

Xk = idle time untuk job urutan urutan

ke-k, yaitu waktu antara selesainya job urutan ke-k

pada mesin pertama dengan mulainya job urutan ke-k pada mesin kedua, k =1,2,..,n

hkj = indeks mesin ke-j tersedia saat job

urutan ke-k, hkj = 1, bila mesin ke-j tidak

tersedia saat job urutan ke-k;

hkj = 0, jika mesin ke-j tersedia saat job

urutan ke-k.

Ckj = completion time untuk job urutan ke-k

pada mesin ke-j.

Bila Ketidaktersediaan Terjadi Pada Mesin Pertama

(4)

Berikut adalah model matematis bila terdapat ketidaktersediaan pada mesin pertama. Fungsi Tujuan : k

T

MinZ

(1) Subject To : n i k i

Z

1 ,

1

Untuk k =1,2,..,n ; i = 1,2,..,n (2) n i ij k i kj

Z

x

p

p

1 ,

)

(

Untuk j = 1,2; k = 1,2,..,n (3) n i i k i k

Z

x

d

d

1 ,

)

(

Untuk k = 1,2,..,n (4)

}

,

0

max{

k,2 k k

C

d

T

Untuk k = 1,2,..,n (5) 1 , 2 , 1

,

0

max{

k k k

C

C

X

} Untuk j=1; k= 1,2,..,n (6)

Untuk Starting time:

1 1 , 1 1 , 1

h

xb

S

Untuk k = 1 (7)

)}

(

{

,1 1 1,1 1 , 1 1 , 1 1 , k k k k k

S

xP

h

x

b

C

S

Untuk k = 2,3,..n (8)

Untuk Completion time:

n i ij k i kj kj

S

Z

x

p

C

1 ,

)

(

Untuk j = 1; k=1,2,..,n (9) 2 , 1 1 , 1 2 , 1

C

P

C

Untuk j = 2 dan k = 1 (10) k k k k

C

P

X

C

,2 ,1 ,2 Untuk k = 2,3,..,n (11)

1

1 , n k k i

h

Untuk j=1; k=1,2,..,n (12)

}

1

,

0

{

, j k

h

Untuk j = 1,2; k = 1,2,..,n (13)

}

1

,

0

{

,k j

Z

Untuk i = 1,2,..n; k = 1,2,..n (14) j j k

jika

P

A

h

,

0

1,1 Untuk i = 1 dan j = 1 (15) j j k kj j j k kj j k kj j j k j k

B

C

atau

A

P

C

dan

A

C

jika

h

) , 1 ( ) , ( ) , 1 ( , 1 ,

0

Untuk k = 2,3,..n dan j = 1 (16)

Bila Ketidaktersediaan Terjadi Pada Mesin Kedua

Adapun batasan untuk

ketidaktersediaan yang terjadi pada mesin ke-2 adalah sebagai berikut

Untuk Starting time :

0

1 , 1

S

Untuk k = 1 (17) 1 , 1 1 , 1 1 , k k k

S

P

S

Untuk k = 2,3,..,n (18)

)

(

2 ,1 2 , 1 , 1 1 , 2 , k k k k k k

S

P

X

h

x

b

C

S

Untuk k = 1,2,..n (19)

Untuk Completion time:

}

{

2 ,1 2 , 2 , 1 , 2 , k k k k k

C

P

h

x

b

C

C

Untuk k = 1 (20)

}

{

2 ,1 2 , 2 , 1 , 2 , k k k k k k k

C

P

X

h

x

b

C

X

C

Untuk k = 2,3,..,n (21) j j k kj j j k kj j k kj j j k j k

B

C

atau

A

P

C

dan

A

C

jika

h

) 1 , ( ) , ( ) 1 , ( 1 , ,

0

Untuk k =1 ; j =2 (22) j j k kj j k j k kj j k kj j j k j k B C atau A X P C dan A C jika h ) 1 , ( ) , ( ) 1 , ( 1 , , 0 Untuk k =2,3,..n; j =2 (23) 3. Formulasi Masalah

Pengembangan model dilakukan pada sistem flow shop dua mesin dengan asumsi bahwa posisi ketidaktersediaan untuk masing-masing mesin diketahui pada saat penjadwalan akan dilakukan, tidak ada mesin yang dapat memproses lebih dari satu operasi dalam waktu yang bersamaan, waktu proses untuk masing-masing job telah diketahui serta waktu set up sudah termasuk dalam waktu proses.

Model yang dikembangkan ini

dimodifikasi dari model Kusuma (2008).

Modifikasi tersebut adalah :

Modifikasi 1 : Pembuatan model eksak dalam

(5)

interval ketidaktersediaan mesin ditinjau dari waktu awal proses

(starting time). Sedangkan

Kusuma (2008) meninjau dari

waktu selesainya job

(completion time).

Modifikasi 2 : Penggabungan parameter saat mulai (a1) dan saat selesai (b1)

ketidaktersediaan pada mesin pertama dan saat mulai (a2) dan

saat selesai (b2)

ketidaktersediaan pada mesin

kedua dalam starting time

maupun completion time. Penjabaran komponen-komponen model untuk penyusunan formulasi model matematis seperti dibawah ini.

i nomor job i = 1,2,..,n j nomor mesin j = 1,2 k urutan job setelah di jadwalkan

k = 1,2,..,n L urutan job setelah di jadwalkan

L = 1,2,..,n pij waktu proses job i pada mesin ke-j

aj saat mulai interval ketidaktersediaan mesin

pada mesin ke-j.

bj saat selesai interval ketidaktersediaan mesin

pada mesin ke-j

di due date job i = 1,2,..,n

Variabel Keputusan :

Zik indeks job i dijadwalkan pada posisi ke-k. Zik = 1 jika job i dijadwalkan pada posisi

ke-k, jika tidak maka Zik = 0

Sk1 Starting time job urutan ke-k pada mesin

pertama. k = 1,2,..,n

Ckj Completion time untuk job urutan ke-k

pada mesin ke-j.

Parameter yang digunakan:

Pkj Processing time job urutan ke-k dimesin

ke-j

dk due date job urutan ke-k

Xk idle time untuk job urutan ke-k, yaitu

waktu antara selesainya job urutan ke-k pada mesin pertama dengan mulainya job urutan ke-k pada mesin kedua, k = 1,2,..,n

hkj indeks mesin ke-j tersedia saat job urutan

ke-k, hkj = 1 bila mesin ke-j tidak tersedia saat

job urutan ke-k ; hkj = 0 jika mesin ke-j tersedia

saat job urutan ke-k

Model matematis ditunjukkan oleh persamaan 1 sampai dengan 21 Fungsi Tujuan : k

T

MinZ

Untuk k = 1,2,..,n

(1)

Subject to :

n i k i

Z

1 ,

1

Untuk k =1,2,..,n;

(2)

n k k i

Z

1 ,

1

Untuk i = 1,2,..,n

(3)

n i ij k i j k

Z

x

p

p

1 , ,

(

)

Untuk j=1,2; k=1,2,..,n

(4)

n i i k i k

Z

x

d

d

1 ,

)

(

Untuk k = 1,2,..,n

(5)

}

,

0

max{

k,2 k k

C

d

T

Untuk k = 1,2,..,n

(6)

1 , 2 , 1

,

0

max{

k k k

C

C

X

}

Untuk j=1; k = 1,2,..,n

(7)

1

1 , n k k i

h

Untuk j = 1,2; k = 1,2,..,n

(8)

Berikut ini pembuatan model matematis dari hasil modifikasi seperti yang disebutkan dalam penjabaran model, yaitu :

Modifikasi 1

Pada modifikasi 1, persamaan (15), (16) dan (22),(23) menjadi persamaan (9), (10),(11) dan (12) dibawah ini j j k

jika

P

A

h

,

0

1,1

Untuk k = 1; j = 1

(9)

(6)

j j k j k j k j j k j k

A

p

p

S

dan

B

S

jika

h

, , 1 , 1 , 1 ,

0

,

Untuk k = 2,3,..,n; j = 1 (10)

j j k j k j k j k

jika

S

p

p

A

h

,

0

, 1 , 1 , Untuk k = 1; j = 2 (11) j j k j k j k j j k j k

A

p

p

S

dan

B

S

jika

h

, 1 , 1 , , 1 ,

0

,

Untuk k = 2,3,..,n; j = 2 (12)

Modifikasi 2 untuk starting time:

Pada model modifikasi 2, persamaan (7), (8), dan (17),(18) ,(19) menjadi persamaan (13), (14), (15) dan (16) dibawah ini

1 1 , 1 1 , 1

h

xb

S

Untuk k = 1 ; j = 1 (13)

)}

(

{

,1 1 1,1 1 , 1 1 , 1 1 , k k k k k

S

P

h

x

b

C

S

Untuk k = 2,3,..,n

(14)

)}

,

0

max(

{

,2 2 ,1 1 , 1 , 2 , k k k k k

S

P

h

x

b

C

S

Untuk k = 1; j = 2

(15)

)}

,

0

max(

{

,2 2 ,1 1 , 1 , 2 , k k k k k k

S

P

X

h

x

b

C

S

Untuk k = 2,3,..,n; j = 2

(16)

Modifikasi 2 untuk completion time:

persamaan (9), (10) dan (11) serta (20) dan (21) menjadi (18) dan (19) dibawah ini :

n i ij k i j k j k

S

Z

x

p

C

1 , , ,

(

)

Untuk j = 1; k dan i = 1,2,..,n(17)

)}

,

0

max(

{

,2 2 1,1 2 , 1 1 , 1 2 , 1

C

P

h

x

b

C

C

k

Untuk k = 1; j = 2

(18)

)} , 0 {max( { ,2 2 ,1 2 , 1 , 2 , k k k k k k C P X h x b C C

Untuk k =2,3,..,n; j = 2

(19)

}

1

,

0

{

, j k

h

Untuk j = 1,2; k =1,2,..,n

(20)

}

1

,

0

{

,k j

Z

Untuk i = 1,2..,n; k = 1,2,...,n(21)

Konstrain (1) memastikan fungsi tujuan

meminimasi total keterlambatan (total

tardiness) job. Konstrain (2) dan (3)

memastikan bahwa hanya terdapat satu job yang dapat dijadwalkan pada posisi ke-k. Konstrain (4) memastikan waktu proses (processing time)

job urutan ke-k di mesin ke-j.

Konstrain (5) memastikan tenggat waktu (due

date) job untuk job urutan ke-k. Konstrain (6)

memastikan bahwa jika (Ck,2 – dk) bernilai

positif, maka job terlambat. Jika nilainya

negatif, maka tidak ada keterlambatan.

Konstrain (7) memastikan idle time job terjadi jika waktu selesainya proses job urutan ke (k-1) pada mesin kedua lebih besar dari waktu selesainya proses job urutan

ke-k dimesin pertama. Bila tidak terjadi idle

time job, maka Xk = 0. Konstrain (8)

memastikan bahwa selama penjadwalan

dilakukan, ketidaktersediaan hanya terjadi sekali. Konstrain (9) sampai (12) memastikan jika proses job ke-k dimesin ke-j tidak terpotong oleh interval ketidaktersediaan, maka mesin

tersedia (

h

k, j

0

). Konstrain (13) sampai

dengan (16) memastikan starting time job di mesin ke-j terjadi sebelum mesin tidak tersedia atau setelah mesin tersedia serta setelah job sebelumnya selesai diproses di mesin ke-j. Konstrain (17) sampai dengan (18) memastikan bahwa completion time job terjadi pada saat awal mesin mulai tidaktersedia atau terjadi saat mesin telah tersedia. Konstrain (4.19) dan

(4.20) memastikan indeks interval

ketidaktersediaan mesin dan urutan job berupa

binary.

Model matematis yang dibuat

diselesaikan dengan Lingo.8 dan juga

diselesaikan dengan Algoritma heuristik.

Algoritma Heuristik

Algoritma yang dikembangkan dalam

penelitian ini menggunakan 3 prioritas

pengurutan job, yaitu aturan EDD, Slack, dan

(7)

pada mesin pertama. Langkah-langkah algoritma yang dibuat adalah :

Langkah 1 : tentukan posisi mesin beserta

panjang interval

ketidaktersediaan di mesin 1

(a1,b1) dan mesin 2 (a2,b2).

Lanjutkan ke langkah 2.

Langkah 2 : masukkan data tentang Pi1, Pi2,

jumlah job (n), Due date

masing-masing job (di), A

sebagai urutan job yang belum terjadwal, B sebagai urutan job yang telah terjadwal.

Langkah 3 : tentukan prioritas pengurutan

dan urutkan job berdasarkan prioritas pengurutan.

Langkah 4 : Set L = 1,2,..,n ; j = 1 dan L =

1

Langkah 5 : periksa apakah masih belum

ada job yang telah dischedule kan ( B=0 ), jika memenuhi lanjutkan ke langkah 6. Jika tidak memenuhi yang berarti

telah ada job yang

terjadwalkan, lanjutkan ke

langkah 8

Langkah 6 : periksa apakah keadaan B=0

berada pada mesin pertama (mesin ke-1),. Jika memenuhi, maka job tersebut diproses

dimesin ke-1 urutan ke-1

dimana starting time-nya = 0 dan lanjutkan ke langkah 11. Jika tidak memenuhi, berarti

job urutan ke L tersebut tidak

diproses di mesin ke-1,

sehingga dipastikan dia

diproses di mesin ke-2 dan lanjutkan ke langkah 7.

Langkah 7 : hitung starting time job urutan

ke-L = 1 dimesin ke dua.

Dimana Starting time job

urutan ke L dimesin ke 2 merupakan Completion time job urutan ke-L di mesin ke-1 (SL,2= SL,1 + PL,1). Selanjutnya ke

langkah 11

Langkah 8 : periksa apakah job yang akan

terjadwalkan tersebut akan di proses pada mesin pertama. Jika

memenuhi, lanjutkan ke

langkah 9. Jika tidak memenuhi

yang berarti job tersebut di

jadwalkan pada mesin

selanjutnya, yaitu mesin ke-2, maka lanjutkan ke langkah 10

Langkah 9 : hitung starting time job urutan

ke-L dimesin ke satu, dimana

Starting time job urutan ke-L di

mesin 1 merupakan Completion

time job sebelumnya yang telah

terjadwalkan di mesin ke-1

(SL,1= SL-1,1 + PL-1,1). Kemudian

lanjutkan ke langkah 11.

Langkah 10 : hitung starting time job urutan ke-L di mesin ke-2 setelah ada beberapa job yang terjadwal.

Starting time job urutan ke-L

dimesin ke-2 ini merupakan

completion time job urutan ke-L

di mesin ke-1 ditambah dengan

idle job. Selanjutnya ke langkah

11.

Langkah 11 : hitung completion time job

urutan ke-L yang akan

dijadwalkan baik pada mesin 1 maupun mesin ke-2. Dimana

completion time job urutan ke-L

yang diproses di mesin ke-J merupakan penambahan dari

starting time job urutan ke-L di

mesin ke-J dengan processing

time job urutan ke-L di mesin

ke-J. Lanjutkan ke langkah 12.

Langkah 12 : periksa apakah job ke-L

diproses di mesin ke-1. Jika

memenuhi, lanjutkan ke

langkah 13. Jika tidak

memenuhi ke langkah 21 Langkah 13 : periksa apakah job urutan ke-L

bisa dijadwalkan pada mesin

ke-J sebelum waktu

ketidaktersediaan mesin.

Gunakan syarat CL,J ≤ aJ apabila

syarat tersebut terpenuhi, maka lanjutkan ke langkah 14. Jika syarat tersebut tidak terpenuhi, maka lanjutkan ke langkah 15. Langkah 14 : Jadwalkan job urutan ke-L

setelah job urutan ke-L-1

selesai. Set k = L, dimana k merupakan urutan pengerjaan

job yang telah terjadwal (B).

(8)

Langkah 15 : periksa apakah job urutan ke-L bisa dijadwalkan pada mesin

ke-J sebelum waktu

ketidaktersediaan mesin.

Gunakan syarat SL,J ≤ aJ apabila

syarat tersebut terpenuhi, maka ke langkah

Jika syarat tersebut tidak

terpenuhi, maka lanjutkan ke langkah 17.

Langkah 16 : Periksa apakah ada job

pengganti dibelakang job urutan ke-L dengan syarat CL,J ≤ aJ.

Apabila syarat tersebut

terpenuhi, maka Tukar posisi

job pengganti dan urutkan job

menurut di terkecil hingga terbesar dan kembali ke langkah 14. Jika syarat tersebut tidak

terpenuhi, Lanjutkan ke

langkah 17.

Langkah 17 : periksa apakah SL,J ≤ bJ. Jika

syarat tersebut terpenuhi,

lanjutkan ke langkah 18. Jika syarat tersebut tidak terpenuhi, maka kembali ke langkah 14.

Langkah 18 : job merupakan cross over job,

yaitu job tersebut terpotong oleh interval ketidaktersediaan mesin, sehingga set SL,J = b1,

kemudian hitung CL,J = SL,J + PL,J. Dan kembali ke langkah

14.

Langkah 19 : set L = L+1. Jika L = n, maka output dari mesin ke-1 yang berupa urutan job yang telah terjadwal (B) akan menjadi input di mesin ke-2 (A). Sehingga untuk diproses di mesin ke-2, maka set B di mesin ke-1= 0. Lanjutkan ke langkah 20. Jika L < = n, maka kembali ke langkah 5.

Langkah 20 : set J = J+1. Jika J > jumlah mesin (M), maka lanjutkan ke langkah 27 . Jika tidak maka kembali ke langkah 4.

Langkah 21 : periksa apakah job urutan ke-L bisa dijadwalkan pada mesin

ke-J sebelum waktu

ketidaktersediaan mesin.

Gunakan syarat CL,J ≤ aJ apabila

syarat tersebut terpenuhi, maka lanjutkan ke langkah 14. Jika syarat tersebut tidak terpenuhi, maka lanjutkan ke langkah 22. Langkah 22 : periksa apakah job urutan ke-L

bisa dijadwalkan pada mesin

ke-J sebelum waktu

ketidaktersediaan mesin.

Gunakan syarat SL,J ≤ aJ apabila

syarat tersebut terpenuhi, maka ke langkah 23. Jika syarat tersebut tidak terpenuhi, maka lanjutkan ke langkah 24.

Langkah 23 : Periksa apakah ada job

pengganti dibelakang job urutan ke-L dengan syarat CL,J ≤ aJ.

Apabila syarat tersebut

terpenuhi, maka Tukar posisi

job pengganti dan urutkan job

menurut di terkecil hingga terbesar dan kembali ke langkah 14. Jika syarat tersebut tidak

terpenuhi, Lanjutkan ke

langkah 24.

Langkah 24 : periksa apakah SL,J ≤ bJ. Jika

syarat tersebut terpenuhi,

lanjutkan ke langkah 25. Jika syarat tersebut tidak terpenuhi, maka lanjutkan ke langkah 14.

Langkah 25 : job merupakan cross over job,

yaitu job tersebut terpotong oleh interval ketidaktersediaan mesin, sehingga set SL,J = b1,

kemudian hitung CL,J = SL,J + PL,J. Dan kembali ke langkah

14.

Langkah 26 : hitung total tardiness dari

semua job yang telah

dijadwalkan , dimana Σ(Tk) = Σmax(0, Ck-dk). Lanjutkan ke

langkah 27. Langkah 27 : Algoritma selesai

4. Contoh Numerik dan Analisis Hasil

Contoh numerik dilakukan terhadap teknik penyelesaian, yaitu enumerasi, eksak dan heuristik dengan mengambil sampel jumlah job sebanyak n = 5 (data dari penelitian

sebelumnya, Schaller (2005)) sehingga

menghasilkan total tardiness. Kemudian, total

(9)

kemampuan masing-masing teknik penyelesaian dalam menyelesaikan problem penjadwalan.

Problem penjadwalan dengan jumlah job n = 5 salah satunya dilakukan dengan enumerasi karena dipastikan memberikan solusi optimal.

Dengan enumerasi semua alternatif

penjadwalan dihitung total tardinessnya dan masing-masing n job diuji dengan beberapa interval ketidaktersediaan mesin. Perhitungan enumerasi memerlukan waktu yang cukup lama apabila dilakukan secara manual, Oleh karena itu untuk memudahkan dalam perhitungan,

enumerasi yang dilakukan disini untuk

mempermudah perhitungan menggunakan

bantuan pemrograman Java. Dari rekapan

enumerasi, diketahui hubungan antara

ketidaktersediaan yang terjadi di kedua mesin dalam mempengaruhi total keterlambatan, yaitu

keterlambatan terbesar terjadi apabila

ketidaktersediaan mesin terjadi di awal untuk mesin pertama dan terjadi di tengah untuk mesin ke dua.

Selain diselesaikan dengan enumerasi

model matematis diselesaikan dengan

Algoritma Heuristik dan Lingo.8. Untuk

mempermudah melakukan perhitungan,

Algoritma heuristik menggunakan alat bantu Java dengan mengikuti Langkah 1 sampai dengan Langkah 27 seperti yang dijelaskan diatas. Dari hasil heuristik diketahui bahwa prioritas pengurutan dengan menggunakan EDD menghasilkan total keterlambatan yang paling kecil dibandingkan dengan Slack dan Earliness D/P. Hal ini dikarenakan dalam EDD, due date

merupakan pertimbangan utama dalam

permulaan pengerjaan job. Dimana job dengan

due date terkecil diproses terlebih dahulu.

Untuk mengetahui performansi

penyelesaian masalah penjadwalan dengan Lingo.8, maka akan diujikan sejumlah job (n) dengan n = 6 sampai dengan n = 12. Setelah model matematis dirunning dengan Lingo.8, dari n = 6 sampai dengan n = 8, tidak dibutuhkan adanya penyesuaian konstrain. Namun ketika n = 9 sampai dengan n = 12, dibutuhkan adanya penyesuaian konstrain.

Kemudian dibandingkan performansi antara ketiga teknik penyelesaian (enumerasi, eksak dan heuristik) dalam menyelesaikan kasus

penjadwalan yang memperhatikan

ketidaktersediaan mesin, maka dilakukan suatu perbandingan terhadap masing-masing posisi

ketidaktersediaan mesin. Dalam penelitian ini, terdapat 9 kombinasi posisi ketidaktersediaan mesin. Dan hasilnya ditunjukkan oleh Gambar 1 dibawah ini.

Gambar 1. Perbandingan Performansi Enumerasi, Eksak dan Heuristik

Dari gambar 1 diatas, kemudian dibuat suatu persentase perbedaan total tardiness yang dapat dilihat pada persamaan 22 dan 23 berikut ini.

Perbedaan total tardiness antara solusi eksak terhadap enumerasi: % 3 % 100 69 69 71 x (22) Perbedaan total tardiness antara solusi heuristik terhadap enumerasi :

%

5

%

100

69

69

72

x

(23) Persentase perbedaan pada persamaan 22 dan

23 menunjukkan bahwa semakin kecil

perbedaan terhadap solusi enumerasi (solusi optimal) maka semakin baik performansi eksak maupun heuristik

5. Kesimpulan

Model matematis yang dikembangkan

merupakan model Integer Non-Linear

Programming, maka dalam pencapaian solusinya, menghasilkan solusi yang local

optimum. Dalam penyelesaiannya model matematis di running dalam Lingo.8, dimana dalam menyelesaikan problem penjadwalan, untuk beberapa jumlah job model matematis

masih membutuhkan adanya penyesuaian

konstrain. Pembuatan model matematis ini sangatlah rumit dan membutuhkan ketelitian serta waktu yang cukup lama. Selain pembuatan

model matematis yang sangat rumit,

(10)

job yang banyak akan membutuhkan waktu

yang lama dalam memperoleh hasil keputusan. Untuk mengatasi hal tersebut, model matematis diselesaikan dengan pendekatan Heuristik.

Algoritma heuristik yang dibuat mampu menyelesaikan kasus penjadwalan flow shop dua mesin dengan kriteria performansi minimasi

total tardiness dengan mempertimbangkan

kendala ketidaktersediaan pada kedua mesin kondisi non-resumble dalam waktu singkat tanpa adanya penyesuaian konstrain. Dimana algoritma heuristik dengan prioritas pengurutan EDD disertai adanya pertukaran job (switch job) dimesin pertama menghasilkan penjadwalan yang cukup baik, yaitu total tardiness paling minimum dibandingkan dengan slack dan juga

earliness D/P. Namun, prioritas pengurutan

EDD untuk fungsi tujuan total tardiness tidak selalu memperoleh hasil yang optimal.

Performansi antara metode eksak (dengan merun dalam Lingo.8) dan heuristik (dengan merun dalam Java) terhadap enumerasi (hasil optimal), diketahui bahwa metode eksak menghasilkan nilai total tardiness yang lebih kecil dibandingkan dengan Algoritma heuristik sehingga dikatakan metode eksak lebih baik dari segi hasil, yaitu menghasilkan job dengan urutan yang nilai keterlambatannya lebih kecil

dibandingkan dengan algoritma heuristik.

Dengan persentase perbedaan antara enumerasi dan eksak sebesar 3% dan persentase perbedaan antara enumerasi dan heuristik sebasar 5%.

Namun dalam kasus tertentu, Algoritma heuristik lebih disarankan digunakan dari pada

eksak karena dalam memperoleh hasil

keputusan dengan jumlah job yang sangat besar, penyelesaian dengan heuristik membutuhkan waktu yang cukup singkat.

Dalam penelitian selanjutnya untuk

melengkapi dan menyempurnakan penelitian ini perlu diperhatikan hal-hal sebagai berikut :

1. Interval ketidaktersediaan menggunakan lebih dari sekali untuk masing-masing mesin.

2. Modifikasi model matematik untuk permasalahan dengan jumlah job yang banyak sehingga tidak perlu melakukan penyesuaian model matematik ketika dirunning dengan software Lingo 3. Urutan job di mesin kedua dapat dibuat

berbeda dengan urutan job di mesin kesatu.

4. Prioritas pengurutan job dalam heuristik

perlu disempurnakan agar dapat

menghasilkan solusi yang optimal dan/atau lebih baik.

5. Posisi ketidaktersediaan mesin bersifat probabilistik.

6. Daftar Pustaka

Allaoui, H., Artiba, A., Elmaghraby, S.E., Riane, F. 2006. Scheduling of Two-Machine Flow Shop With Availability Constraints On The First Machine. International Journal of Production Economics, Vol. 99, pp. 16-27.

Baker, K. R. 1974. Introduction to Scheduling. Canada : John Wiley & Sons, Inc.

Berhitu, Jefikz. 2008. Model Penjadwalan Flow Shop n Job m Mesin untuk Meminimasi Makespan dengan Kendala Ketidaktersediaan Mesin dengan Due Date. Thesis Jurusan Teknik Industri ITS.

Blazewicz J., Ecker K., Pesch E., Schmidt G., Weglarz J. 2007. International Handbooks Scheduling Computer and Manufacturing Process. Berlin : Springer Chantaravarapan, Samarn, B.E., M.S.I.E. 2002. Heuristic For The Family Scheduling Problems To Minimize Total Tardiness. A Dissertation in Industrial Engineering of Texas.

Kubiak, Weislaw, Blazewicz J.,

Formanowicz P.,Breit J.,Schmidt G. 2002. Two-Machine Flow Shop with Limited Machine Availability. European Journal Of Operation Research, Vol. 136, pp. 528-540.

Kusuma, Budiyanti. 2008. Penjadwalan Dua Mesin Flow Shop Untuk Meminimasi

Total Tardiness berdasarkan

Ketidaktersediaan Mesin. Tugas Akhir Jurusan Teknik Industri ITS.

Lee, C. Y. 1997. Minimizing the Makespan in The Two Flow Shop Scheduling

(11)

Problem With Unavaibility Constraints. Operation Research Letter, Vol.20, pp.129-139.

Lee, C.Y. 1999. Two Machine Flow Shop Scheduling with Avaibility Constraints.

European Journal Of Operation

Research, Vol.114, pp. 420-129.

Liao, L.M and Tsai, C.H. 2008. Heuristic Algorithm for Two Machine Flow Shop with Avaibility Constraints. Computer & Industrial Engineering, Vol. Xxx, pp. xxx-xxx

Morton, Thomas E and Pentico, David W. 1993. Heuristic Scheduling Systems. Canada : John Wiley & Sons, Inc. Pan, J.C.H., Chen, J.S., and Chao, C.M.

2002. Minimizing Tardiness in A Two

Machine Flowshop. Computers &

Operation Research, Vol. 29, pp. 869-885.

Pinedo, Michael. 2002. Scheduling Theory, Algorithms, and System, Third Edition. New York : Prentice Hall, Inc.

Pinedo, Michael. 2008. Scheduling Theory, Algorithms, and System, Second Edition. New Jersey : Prentice Hall, Inc.

Riggs, James L. 1976. Production Systems : Planning, Analysis and Control, Third Edition. Canada : John Wiley & Sons, Inc.

Schaller, Jefrey. 2005. Note on Minimizing Total Tardiness on A Two-Machine Flowshop. Computers & Operation Research, Vol. 32, pp. 3273-3281. Sipper, D and Bulfin, Robert L., Jr. 1997.

Production : Planning, Control, and Integration. New York : The MacGraw Hill, Inc.

Strusevich, Vitaly A., Potts, Chris N., And

Kubzin, Mikhail A. 2009.

Approximation Result for Flow Shop Scheduling Problems with Machine

Availability Constraints. Computers & Operation Research, Vol. 36, pp. 379-390.

Gambar

Gambar 1. Perbandingan Performansi Enumerasi,  Eksak dan Heuristik

Referensi

Dokumen terkait

Hasil simulasi memperlihatkan, dengan menggunakan optimisasi algoritma genetika kinerja pengendali meningkat, yaitu mengecilnya settling time dan galat keadaan tunak dari

Penelitian ini bertujuan untuk mengungkap nilai- nilai dan norma-norma sosial yang masih dimiliki masyarakat nelayan yang berperan memelihara keberlanjutan sumberdaya

Tahap analisis data pada penelitian ini dilakukan dengan tahap-tahap: (1) memberikan skor pada setiap soal tes yang dilakukan dengan mengoreksi jawaban siswa; (2)

dengan jumlah seluruhnya sebesar Rp 1.537.089.043.000 (Rupiah penuh) yang akan berlaku efektif setelah Perjanjian Kredit Investasi atas fasilitas pinjaman tersebut

Penelitian ini membahas penerapan metode Geometric Brownian Motion (GBM) untuk memprediksi harga saham berdasarkan nilai return saham periode sebelumnya serta

Berdasarkan Tabel 1 dapat diinformasikan bahwa terjadi interaksi pada parameter tinggi tanaman jagung manis dengan perlakuan pemberian Plant Growth Promoting

Berdasarkan hasil penelitian yang telah dilakukan oleh peneliti mengenai bagaimana tingkat pengetahuan Ibu tentang swamedikasi diare pada balita di Desa Lendang Nangka

Atas dasar itulah penulis membuat program penjadwalan kereta api antar kota ini dengan menggunakan Java 2 Micro Edition sebagai bahasa pemograman, dan dibantu dengan PHP dan MySQL