FORMULASI DAN ALGORITMA PENYELESAIAN MODEL BATCHING DAN SEQUENCING DENGAN KRITERIA MINIMASI WAKTU TINGGAL AKTUAL TOTAL Zahedi1 ABSTRACT This paper examines batch scheduling problem that have batching and sequencing in single formulation. The first step is to develop a model for single item single resource model discussed in Halim et al. (1998) has determined batch sizes and the schedule for the resulting batch sizes in two steps, but this paper determines batch sizes and their schedule simultaneously. The objective function of the models is the same as Halim et al. (1998), i.e. to minimize the total actual flow times. The propose algorithm to the model can find optimal solution effectively. Keywords: actual flow time, batching, sequencing, single formulation, optimal solution.
ABSTRAK Tulisan ini mengevaluasi problem penjadwalan batch di mana penentuan ukuran batch dan penjadwalan batch dibuat dalam formulasi tunggal. Langkah pertama adalah mengembangkan model satu item satu sumber yang dibahas dalam Halim et al. (1998), di sini penentuan ukuran batch dan penjadwalan batch yang dihasilkan dilakukan secara terpisah. Dalam tulisan ini penentuan ukuran batch dan penjadwalan batch yang dihasilkan dilakukan secara simultan.Fungsi tujuan dari tulisan ini sama dengan Halim et al. (1998), yaitu minimasi waktu tinggal actual. Algoritma yang diusulkan untuk model dapat menentukan solusi optimal secara efektif. Kata kunci: waktu tinggal actual, batching, sequencing, formulasi tunggal, solusi optimal
1
Jurusan Jurusan Matematika, Fakultas Sains dan Teknologi, Universitas Bina Nusantara, Jln. Kebon Jeruk Raya No.27, Kebon Jeruk, Jakarta Barat 11530,
[email protected]
92
Jurnal Mat Stat, Vol. 9 No. 2 Juli 2009: 92-99
PENDAHULUAN Model penjadwalan batch (kumpulan part) telah banyak ditulis oleh para peneliti, misalnya Dobson et al. (1987, 1989) yang menggunakan kriteria minimasi total flow time (waktu tinggal total) seluruh part. Dalam model yang dikembangkan, persoalan penjadwalan dapat dijelaskan sebagai berikut. Misalkan ada sejumlah part, yang seluruhnya datang pada lini produksi pada waktu nol (time zero) dan akan diproses pada sebuah mesin, dengan waktu pemrosesan setiap part pada mesin diketahui. Batch yang selesai diproses diasumsikan dikirim pada saat yang sama dengan waktu selesai proses (completion time). Persoalan yang muncul adalah penentuan jumlah batch, ukuran batch dan urutan pemrosesan dari batch. Pendekatan yang digunakan adalah pendekatan maju (forward). Di samping Dobson et al. (1987, 1989), penelitian lain yang mengembangkan penjawalan batch adalah Halim et al. (1998), yang menambahkan kendala bahwa seluruh part harus selesai pada saat due date (tidak diizinkan ada part yang terlambat (tardy)). Pengembangan lain yang dilakukan adalah bahwa part yang akan diproses tidak perlu tiba di lini produksi secara bersamaan pada waktu nol, tetapi bisa tiba saat diperlukan, sehingga sangat adaptif dengan konsep sistem produksi Just In Time (JIT). Dalam pemecahan masalah tersebut, Halim et al. (1998) menggunakan kriteria minimasi total actual flow time (waktu tinggal aktual total) dengan pendekatan mundur (backward). Dobson et al. (1989b) mengembangkan konsep batching dan scheduling dalam formulasi tunggal, di mana fungsi tujuan yang digunakan adalah minimasi jumlah flow time seluruh part yang dihitung dengan cara menjumlahkan perkalian antara waktu tinggal batch dengan ukuran batch dan ongkos simpan part per satuan waktu (holding cost) sebagai bobot.
Asumsi dan Batasan Masalah Untuk mencapai tujuan penelitian, diperlukan beberapa asumsi dan batasan sebagai berikut. Waktu setup (persiapan) antar batch sama pada mesin (sumber) yang digunakan; ukuran batch diasumsikan kontinu; sumber yang akan digunakan siap digunakan pada waktu nol (time zero), tidak ada kerusakan sumber saat digunakan, semua parameter model seperti waktu setup antar batch, waktu proses per part, jumlah part yang akan diproses, waktu jatuh tempo penyerahan (common due date) diasumsikan diketahui.
Total Waktu Tinggal Aktual Waktu tinggal aktual dalam penelitian ini dikembangkan dari konsep yang dikemukakan Halim dkk. (1998) dalam pembahasan tentang penjadwalan batch. Dikemukakan dalam pembahasan tersebut bahwa misalkan ada suatu kumpulan n job Ji (i = 1,2,…,n) diproses pada suatu mesin dan diserahkan pada due date (waktu jatuh tempo) yang bersamaan d. Waktu proses pi untuk job Ji diketahui, waktu set up si untuk job Ji tidak tergantung dari urutan job dan tidak termasuk dalam waktu proses. Waktu siap-siap ri yang menyatakan job Ji telah tersedia untuk diproses diasumsikan berhubungan dengan waktu mulai pemrosesan Bi. Jika semua job harus diselesaikan sebelum atau bertepatan dengan due date dan meninggalkan shop secara serentak pada due date bersama maka waktu tinggal aktual Fi a dari job Ji dapat dinyatakan sebagai berikut.
Fi a = d − Bi ………………………………………………………………………………................ (1) Rumusan (1) ini menyatakan bahwa waktu tinggal aktual adalah rentang waktu job Ji tinggal di shop dari waktu mulai pemrosesan sampai due date d.
Formulasi dan Algoritma …... (Zahedi)
93
Jika hal ini dikaitkan dengan penjadwalan mundur, di mana posisi job dihitung dari posisi akhir pada skala waktu, maka rumus (1) dapat diilustrasikan dengan gambar gantt chart (Gambar 1) dan dapat ditulis kembali dalam bentuk rumusan (2) berikut.
Gambar 1 Gantt Chart Penjadwalan Batch
i
FJ [ai] = ∑ ( p j + s ) − s, i = 1,2,…,N ………………………………………………………………. (2) j =1
Untuk batch di mana jumlah part dalam batch dinyatakan dengan Q[ j ] , waktu untuk menyelesaikan satu part dinyatakan dengan t, dan jumlah seluruh batch adalah N, maka waktu tinggal aktual dari batch L[i ] yang dikerjakan pada posisi i dapat dinyatakan sebagai. i
FL[ai ] = ∑ (tQ[ j ] + s ) − s, i = 1,2,…, N …………………………………………………………….. (3) j =1
Dalam teori yang dikemukakan berkaitan dengan sequencing N batch dengan waktu setup konstan yang diproses pada satu mesin, dinyatakan bahwa dengan meminimalkan total waktu tinggal aktual FLa dari batch yang melalui shop, maka penjadwalan LPT (batch terkecil dijadwalkan pada posisi terakhir) akan memberikan solusi optimal sehingga total waktu tinggal aktual semua batch dapat ditulis sebagai: N
FLa = ∑ { i =1
i
∑ (tQ j =1
[ j]
+ s ) − s }Q[ i ] ………………………………………………………………... (4)
Pengembangan Model Misalkan sekumpulan part dari item sejenis harus diproses pada sebuah mesin. Setiap part hanya perlu satu operasi untuk menyelesaikannya (single stage). Permasalahan yang dibahas adalah menentukan ukuran-ukuran batch dan menjadwalkan batch tersebut sehingga waktu tinggal aktual (actual flow times) total untuk jadwal yang dihasilkan menjadi minimum. Parameter-parameter yang diketahui adalah waktu proses per part, waktu setup antar batch, jumlah part yang akan dijadwal, dan waktu penyerahan seluruh part. Waktu penyerahan ini diasumsikan dilakukan secara bersamaan untuk semua part atau dikenal juga dengan due date bersama (common due date).
94
Jurnal Mat Stat, Vol. 9 No. 2 Juli 2009: 92-99
Model formulasi penjadwalan satu-item-satu-sumber (Formulasi SISS) dengan batching dan sequencing dalam satu formulasi ini, dikembangkan dari tulisan Halim dkk (1998). Dalam Halim dkk (1998), batching dan sequencing dilakukan secara terpisah. Penambahan koefisien biner Y dan X akan menyatakan bahwa formulasi SISS berikut menggabungkan tahap batching dan sequencing dalam satu formulasi (untuk pendekatan forward, lihat Dobson dkk (1989)). Formulasi SISS Minimasi F= ∑Ni=1[∑ij=1{ sXj + tQ[j] } - s ] Q[i] ……………………………………………………….. (5) Dengan syarat: ∑Ni=1 Q[i] = n ……………………………………………………………..………………… (6) B[1] +
t Q[1]
= d ………………………………………………………………………… (7)
(Nmaks -1)s + t ∑Ni=1 Q[i] ≤ d ………………………………………………………………... (8) B[i] + t Q[i] ≤ B[j] + M (Yi j) ∀ i,j, i≠j ……………………………………………………. (9) Yi j + Yji = 1 ∀ i,j, i≠j ………………………………………………………………….. (10) Q[i] ≤ Xi n ∀ i …………………………………………………………………………….. (11) Yij =
0,1 ∀ i,j, i≠j ……………………………………………………………………… (12)
Xi =
0,1 ∀ i …………………………………………………………………………….. (13)
B[N] ≥ 0 ……………………………………………………………………………………. (14) Q[i] ≥ 0 i ………………………………………………………………………………….. (15) N ≥ 1 dan integer …………………………………………………………………………. (16) Fungsi (5) menyatakan tujuan model, yaitu minimasi waktu tinggal aktual total semua part yang akan diproses. Syarat (6) menyatakan jumlah part untuk seluruh batch harus sama dengan jumlah part total yang harus diproses. Syarat (7) menyatakan batch terakhir yang diproses harus selesai tepat pada due date d. Syarat (8) menyatakan waktu selesai seluruh batch terjadwal harus pada interval antara titik nol (time zero) dan due date. Pada syarat (9), nilai M adalah bilangan positif yang cukup besar. Dalam prakteknya, nilai M dapat diambil dengan rumusan M = n (s + t ). Untuk nilai Yij = 1, syarat (9) ini tidak mengikat (unbinding), tetapi jika Yij = 0 syarat (9) menyatakan waktu selesai dari batch-i harus lebih kecil dari waktu mulai batch-j jika batch-j mendahului batch-i (secara backward). Syarat (10) dan (12) menyatakan tidak ada dua batch yang dikerjakan pada mesin pada saat yang sama. Syarat (11) dan (13) menyatakan bahwa batch-i tak kosong akan memiliki nilai Xi = 1. Jika Xi = 0, maka batch-i kosong. Kendala (14) menyatakan waktu mulai batch pertama yang diproses harus pada waktu nol atau setelah waktu nol. Syarat (15) menyatakan syarat kenonnegatifan variabel keputusan, dan syarat (16) menyatakan syarat bulat (integer) dari jumlah batch. Berikut ini akan disederhanakan formulasi SISS di atas agar lebih mudah dioperasikan, dengan mensubsititusikan n sebagai jumlah part dari seluruh batch dan menghilangkan syarat biner tanpa mengubah persoalan serta sempurnakan syarat (7) untuk semua batch terjadwal agar rapat ke due date. Hasilnya adalah sebagai berikut. Formulasi SISS* Minimasi Fa = ∑Ni=1[ ∑ij=1{sXj + t Q[j] } - s ] Q[i] …………………………………………………………………………... (17)
Formulasi dan Algoritma …... (Zahedi)
95
Dengan syarat ∑Ni Q[i] = n ………………………………………………………………………………….. (18) B[i] + ∑ij=1{sXj + t Q[j]} - s = d ∀ i = 1, 2,...,N …………………………………………….. (19) (Nmaks -1)s + t n ≤ d …………………………………………………………………………. (20) B[i] + t Q[i] ≤ B[j] + n(s+t)(Yi j) ∀i,j,i≠ j ………………………………………………… (21) Yi j + Yji = 1 ∀ i,j, i≠j …………………………………………………………………….. (22) Q[i] ≤ Xi n ∀ i ……………………………………………………………………………….. (23) B[N] ≥ 0 ……………………………………………………………………………………… (24) Yij ≥ 0 ∀i,j,i≠j ……………………………………………………………………………… (25) Yij ≤ 1 ∀ i,j, i≠j …………………………………………………………………………….. (26) Q[i] ≥ 0 ∀i ………………………………………………………………………………….. (27) Xi ≥ 0 ∀i …………………………………………………………………………………… (28) Xi ≤ 1 ∀ i …………………………………………………………………………………... (29) N, Yij, Xi ≥ 0 dan integer ∀ i,j, i≠j ………………………………………………………… (30) Formulasi SISS ini termasuk problem pemrograman kuadratik bulat (Integer Quadratic Programming (IQP)). Untuk menyelesaikan problem SISS ini, langkah pertama yang harus dilakukan adalah menunjukkan kelayakan problem terhadap due date, kemudian tentukan N sebagai jumlah batch integer maksimal yang dihitung dari kendala (20), dan diperoleh: N = ⎣ Nmaks ⎦, dengan Nmaks = (d-tn)/s +1 ………………………………………………………………………………….. (31) yaitu bilangan bulat terbesar yang lebih kecil atau sama dengan nilai Nmaks. Selanjutnya substitusikan semua parameter yang duketahui ke dalam formulasi SISS* dan lakukan batching, dengan menaikkan jumlah batch sampai tercapai waktu tinggal aktual total minimal. Heuristik yang lengkap dari penyelesaian problem SISS adalah sebagai berikut.
Algoritma Siss Step-1. Hitung Tmin = n.t Step-2. Problem SISS layak jika dan hanya jika Tmin ≤ d. Lanjutkan Step-3. Jika Tmin > d, maka problem SISS tidak layak, stop. Step-3. Hitung N dengan persamaan (31). Step-4.Substitusikan nilai-nilai dari N dengan N = ⎣ Nmaks ⎦, n, t, s dan d ke dalam formulasi SISS* tanpa syarat integer sehingga diperoleh uraian formulasi SISS* untuk problem. Step-5. Set Yij = 1, jika i < j, ∀ i, j, i≠j, dan Yij = 0 untuk yang lainnya. Step-6. Set F0a = n2.t + 1 Step-7. Untuk i = 1, set Xj = 1, untuk j = 1,..., i, dan Xj = 0, untuk yang lain. Step-8. Selesaikan problem pada step-7. Step-9. Apakah B[i] ≥ 0, - Jika ya, tulis Fia, - Apakah Fia < Fi-1a, - Jika ya, set i = i + 1, lanjutkan ke step-7.
96
Jurnal Mat Stat, Vol. 9 No. 2 Juli 2009: 92-99
- Jika tidak, set i-1 = N(opt), lanjutkan ke step-10. -Jika tidak, set i-1 = N(opt), Solusi optimal tercapai, lanjutkan step-10. Step-10. Tulis nilai fungsi tujuan dan semua nilai variabel keputusan. Untuk memudahkan pemahaman tentang model SISS dan algoritmanya, berikut ini dikemukakan sebuah contoh. Contoh SISS Misalkan suatu problem SISS dengan n = 40, t = 0.6, s = 2.4 serta d = 50. Step-1 dan 2 akan memberikan Tmin= 24 < d=50 sehingga problem SISS ini adalah layak. Step-3, dengan persamaan (31) akan diperoleh Nmaks = 11.8 sehingga jumlah batch maksimum integer N = 11. Step-4, dengan melakukan substitusi nilai-nilai yang diketahui ke dalam formulasi terakhir (SISS*), maka akan diperoleh uraian formulasi SISS*. Lanjutkan step-5. Selanjutnya, dengan step-5, 6, dan 7 akan memberikan nilai F1a = 960.0. Dengan menyelesaikan seluruh iterasi pada step-8, 9, dan 10 akan memberikan solusi optimal sebagai berikut.
Tabel 1 Solusi Optimal Contoh SISS Nopt
4
Urutan i
Ukuran batch Q[i]
Waktu mulai B[i]
1 2 3 4
16.0 12.0 8.0 4.0
40.4 30.8 23.6 18.8
Waktu Tinggal Aktual Total Fa 720.0
Analisis Model Pengelompokan hasil pengujian terhadap algoritma model yang dikembangkan dilakukan berdasarkan kenaikan salah satu atau dua parameter model. Tabel kelompok I dengan nomor 1, 2, 3 berarti terdapat kenaikan waktu setup (s). Tabel kelompok II dengan nomor 1, 4, 5 berarti terdapat penurunan due date (d) pada model, dan seterusnya. Terlihat dari Tabel 2 di bawah bahwa penambahan waktu setup dan waktu proses akan memperbesar waktu tinggal aktual total (lihat contoh-contoh pada kelompok I, III, VI, XII). Pengurangan due date pada kasus due date longgar tidak mengurangi waktu tinggal aktual total (lihat pasangan contoh-contoh (8, 16, 18), (9, 17, 19), (10, 20)). Di mana total waktu tinggal aktual optimalnya sama. Hal ini berarti bahwa perbedaan pada jadwal hanya terjadi pada waktu mulai pemrosesan batch pertama. Pada kelompok-kelompok contoh dengan perubahan pada dua parameter dapat dikatakan bahwa dengan semakin kecilnya perbandingan t terhadap s, maka jumlah batch optimal cenderung mengecil (lihat kelompok contoh IV, V, VI, VII). Pada kelompok-kelompok contoh di mana terjadi perubahan pada tiga parameter, maka hal yang dapat dikatakan bahwa pada kasus due date longgar maka waktu tinggal aktual totalsama (lihat kelompok contoh VIII sampai XV).
Formulasi dan Algoritma …... (Zahedi)
97
Tabel 2 Solusi Optimal Contoh-Contoh Problem SISS
98
Fa
N opt
B Nopt
d 50 50 50
720,00 773,00 789,33
4 3 3
18,80 18,00 16,00
2,4 2,4 2,4
50 40 30
720,00 720,00 726,33
4 4 3
18,80 8,80 1,20
0,4 0,6 0,9
2,4 2,4 2,4
50 50 50
508,27 720,00 1126,40
3 4 2
29,20 18,80 11,60
40 40 40
0,6 0,4 0,2
2,4 2,6 2,8
50 50 50
720,00 514,80 286,20
4 3 2
18,80 28,80 39,20
1 10 11
40 40 40
0,6 0,8 1,0
2,4 2,2 2,0
50 50 50
720,00 913,80 1098,00
4 5 6
18,80 9,19 0,00
VI
1 12 13
40 40 40
0,6 0,8 1,0
2,4 2,6 2,8
50 50 50
720,00 933,80 1148,00
4 5 4
18,80 7,60 1,60
VII
1 14 15
40 40 40
0,6 0,4 0,2
2,4 2,2 2,0
50 50 50
720,00 501,80 273,30
4 4 3
18,80 27,40 38,00
VIII
1 16 17
40 40 40
0,6 0,4 0,2
2,4 2,6 2,8
50 60 70
720,00 513,80 286,20
4 3 2
18,80 38,80 59,20
IX
1 18 19
40 40 40
0,6 0,4 0,2
2,4 2,6 2,8
50 40 30
720,00 513,80 286,20
4 3 2
18,80 18,80 19,20
X
1 20 21
40 40 40
0,6 0,8 1,0
2,4 2,2 2,0
50 60 70
720,00 913,80 1098,00
4 5 6
18,80 19,20 20,00
XI
1 22 23
40 40 40
0,6 0,8 1,0
2,4 2,2 2,0
50 40 30
720,00 916,90 Tak layak
4 4
18,80 1,39
XII
1 24 25
40 40 40
0,6 0,8 1,0
2,4 2,6 2,8
50 60 70
720,00 933,80 1148,00
4 5 4
18,80 17,60 21,60
XIII
1 26 27
40 40 40
0,6 0,8 1,0
2,4 2,6 2,8
50 40 30
720,00 934,90 Tak layak
4 4
18,80 0,20
XIV
1 28 29
40 40 40
0,6 0,4 0,2
2,4 2,2 2,0
50 60 70
720,00 501,80 273,30
4 4 3
18,80 37,40 58,00
XV
1 30 31
40 40 40
0,6 0,4 0,2
2,4 2,2 2,0
50 40 30
720,00 501,80 273,30
4 4 3
18,80 17,40 18,00
Kel.
No
Data Problem
I
1 2 3
n 40 40 40
t 0,6 0,6 0,6
s 2,4 4,0 5,0
II
1 4 5
40 40 40
0,6 0,6 0,6
III
7 1 6
40 40 40
IV
1 8 9
V
Jurnal Mat Stat, Vol. 9 No. 2 Juli 2009: 92-99
PENUTUP Terlihat dari contoh-contoh problem yang diberikan pada Tabel 2, bahwa penambahan waktu setup dan waktu proses cenderung memperbesar waktu tinggal aktual total. Pengurangan due date pada kasus due date longgar tidak mengurangi waktu tinggal aktual total.
DAFTAR PUSTAKA Dobson G., Karmarkar U.S., and Rummel J.L. (1987). Batching to minimize flow times on one machine, Management Science, 33, 784-799. Dobson G., Karmarkar U.S., and Rummel J.L. (1989). Batching to minimize flow times on heterogeneous machines, Management Science, 35, 607-613. Dobson G., and Karmarkar U.S. Simultaneous resource scheduling to minimize weighted flow times, Operations Research, 37(4), July-August 1989. Halim, A.H., Toha, I.S., and Zahedi. (1998). Simultaneous resource scheduling to minimize total actual flow times. Congress of Manufacturing and Management, Victoria, Australia. Zahedi. (2008). Relaksasi integer untuk problem binary quadratic programming untuk kasus penyelesaian scheduling dan sequencing banyak sumber, Jurnal MatStat Universitas Bina Nusantara, 5(1), September 2007, Akreditasi Dikti No 23a/DIKTI/Kep/2004. Zahedi. (2008). Model optimasi ukuran blok optimal dengan kriteria minimasi total waktu tinggal aktual, Jurnal MatStat Universitas Bina Nusantara, 6(1), Januari 2008, Akreditasi Dikti No 23a/DIKTI/Kep/2004.
Formulasi dan Algoritma …... (Zahedi)
99