Deskripsi :
Materi Penjadwalan mesin untuk manufaktur menjelaskan pentingnya penjadwalan
sumber daya (mesin) dan teknik-teknik penjadwalan mesin untuk mencapai
produksi optimal
Relevansi :
Pemahaman dan kemampuan dalam penjadwalan mesin mutlak diperlukan dalam
mencapai produksi optimal
Standar Kompetensi :
Setelah mempelajari Perencanaan dan Pengendalian Produksi mahasiswa mampu :
1. melakukan perencanaan dan pengendalian produksi dengan konsep MRP, Just in
Time, manufaktur berbasis konstrain (TOC) dan manufaktur berbasis beban
(LOMC)
2. memilih konsep yang tepat sesuai karakteristik sistem sehingga bisa meminimalkan
biaya produksi dan optimal.
Kompetensi Dasar :
Setelah mempelajari penjadwalan mesin diharapkan mampu :
1. membuat penjadwalan mesin dengan metode yang sesuai dengan karakteristik
sistem manufakturnya
2. mengukur performasi sistem manufaktur dan menentukan metode terbaik
143
Beberapa tujuan yang ingin dicapai dengan dilaksanakannya Penjadwalan
produksi adalah :
1. Meningkatkan utilitas sumber daya yang dimiliki
2. Mengurangi makespan yang juga berarti menurunkan rata-rata flowtime dan rata-
rata work in process
3. Meminimasi biaya produksi
4. Mengurangi persediaan barang setengah jadi dengan jalan mengurangi jumlah
rata-rata pekerjaan yang menunggu antrian suatu mesin yang dalam keadaan sibuk
5. Memenuhi keinginan konsumen, baik itu dalam hal kualitas produk yang
dihasilkan maupun dalam hal ketepatan waktu.
Sasaran Penjadwalan, khususnya untuk flowshop adalah hanyalah minimasi
waktu alir rata-rata dan minimasi kelambatan. Hal itu dilakukan dengan cara :
1. Minimasi waktu alir rata-rata (mean flow time) yang dilakukan dengan
menggunakan aturan Shortest Processing Time (SPT).
2. Minimasi waktu alir rata-rata berbobot (weighted mean flow time), yang dilakukan
dengan menggunakan aturan Weigted Shortest Processing Time (WSPT).
3. Minimasi kelambatan rata-rata (Mean Lateness), yang dilakukan dengan
menggunakan SPT.
4. Minimasi keterlambatan maksimum (maximum tardiness), yang dilakukan dengan
menggunakan aturan Earliness Due Date (EDD).
5. Minimasi jumlah pekerjaan yang terlambat, yang dilakukan dengan menggunakan
Algoritma Hodgson.
6. Minimasi keterlambatan rata-rata (mean tardiness), yang dapat menggunakan
aturan Slack ataupun Algoritma Wilkerson Irwin.
Adapun tipe-tipe keputusan yang akan diperoleh dari pelaksanaan Penjadwalan
tersebut berupa :
1. Pengurutan pekerjaan (sequencing)
2. Penugasan (dispatching)
3. Pengurutan operasi suatu job (routing)
4. Penentuan waktu mulai dan selesai pekerjaan (timing)
144
5.2 Asumsi Dasar Penjadwalan
Dalam menyelesaikan suatu maslah Penjadwalan biasanya diberlakukan asumsi
yang menyangkut karateristik tugas, operasi, mesin yang digunakan dan waktu proses.
Hal ini dimaksudkan untuk menyederhanakan masalah penjadulan itu sendiri. Asumsi-
asumsi dasar (Baker, 1974) tersebut antara lain :
1. Karakteristik Job
a. Job terdiri dari urutan operasi yang telah ditentukan
b. Suatu operasi hanya bisa dikerjakan pada satu tipe mesin
c. Hanya ada satu mesin dari tiap tipe mesin dalam shop
d. Waktu proses diketahui dengan pasti seperti halnya due date
e. Urutan waktu set up bersifat independen dan waktu transportasi antar mesin dapat
diabaikan
f. Operasi yang sedang dikerjakan pada mesin tidak dapat diinterupsi
g. Operasi tidak dapat dimulai sampai operasi pendahulunya diselesaikan
h. Setiap mesin hanya dapat memproses satu operasi pada satu waktu
i. Setiap part hanya dapat memproses satu operasi di satu mesi pada suatau waktu
2. Karakteristik Operasi
a. Setiap operasi merupakan suatu kesatuan, walaupun mungkin terdiri dari
beberapa unit
b. Setiap operasi yang telah dimulai proses pengerjaannya pada suatu mesin harus
diselesaikan
c. Setiap operasi tidak boleh diproses lebih dari satu mesin pada waktu yang sama
d. Setiap operasi dikerjakan menurut urutan yang telah disusun dan tidak boleh
berdasarkan urutan lainnya (Presedence constrain)
e. Setiap operasi boleh diproses lebih dari satu kali di mesin yang sama
f. Setiap operasi dapat diproses pada berbagai jenis mesin yang mampu
melaksanakan operasi tersebut.
g. Setiap job hanya mempunyai satu routing dalam memproses operasi-operasinya
3. Karakteristik Mesin
a. Setiap mesin hanya memproses satu tugas pada satu saat tertentu
145
b. Setiap mesin secara kontinyu siap untuk dibebani tugas selama proses
Penjadwalan apabila tidak mengalami interupsi akibat kerusakan dan perawatan
c. Setiap mesin beroperasi sesuai dengan informasi waktu dan distribusi yang
diketahui secara tepat
4. Karakteristik Waktu Proses
a. Waktu proses telah diketahui baik rata-rata maupun distribusinya
b. Waktu proses independen terhadap jadual. Artinya urutan set up time bersifat
independen dan move time antar mesin dapat diabaikan
c. Setiap waktu proses secara implisit sudah mencakup waktu pemindahan benda
kerja, set up, dan penghentian mesin.
146
Sistem produksi ini hampir sama dengan sistem Job Shop, perbedaanya terletak pada
job yang berulang dari part yang multi purpose. Selain itu pada sistem produksi ini
job-job yang dikerjakan seringkali mempunyai alternatif routing.
3. Batch Shop
Proses produksinya bisa diskrit atau kontinyu, alirannya kurang komplek, banyak
job berulang, part multi purpose, pengelompokan dan penentuan ukuran lot menjadi
suatu yang penting.
4. Flow Shop
Proses produksinya bisa diskrit atau kontinyu, aliran linier, job mempunyai
kemiripan yang tinggi, pengelompokan dan penentuan ukuran lot menjadi suatu
yang penting.
5. Batch/Flow Shop
Mirip dengan Flow Shop, dengan perbedaan mempunyai proses batch yang
kontinyu.
6. Manufacturing Cell
Proses produksinya diskrit, mempunyai tipe Open Job Shop atau Batch Shop yang
terotomasi.
7. Assembly Shop
Versi perakitan (Assemblly Version) dari Open Job Shop atau Batch Shop.
8. Assembly Line
Volume produknya tinggi dan variasinya rendah.
9. Transfer Line
Sistem produksi ini bercirikan volume produk sangat tinggi dan variasi rendah,
fasilitas produksi yang linier dengan operasi yang terotomasi.
147
5.5 Permasalahan Penjadwalan
Penjadwalan didefinisikan sebagai pengambilan keputusan tentang penyesuaian
aktivitas dan sumber daya dalam rangka menyelesaikan sekumpulan pekerjaan agar
tepat pada waktunya dan mempunyai kualitas seperti yang diinginkan. Keputusan
yang dibuat dalam Penjadwalan meliputi :
1. Jumlah Mesin
Penjadwalan dapat dibedakan atas proses dengan mesin tunggal atau mesin jamak (m
mesin).
2. Pola Kedatangan Pekerjaan
Pola kedatangan pekerjaan dapat dibedakan atas :
a. Pola kedatangan statis, yaitu pola dimana pekerjaan datang secara bersamaan dan
siap dikerjakan pada mesin yang menganggur
b. Pola kedatangan dinamis, yaitu pola dimana pekerjaan datang secara acak atau
kedatangan pekerjaan tidak menentu
3. Ketidakpastian pada Pekerjaan dan Mesin
Dibagi menjadi dua bagian, yaitu :
a. Model Deterministik, yaitu model yang ada di dalamnya terdapat kepastian
tentang pekerjaan dan mesin, misalnya mengenai waktu kedatangan pekerjaan
dan waktu proses.
b. Model Stokastik, yaitu model yang didalamnya terdapat ketidakpastian mengenai
pekerjaan dan mesin.
148
4. Pola Aliran Proses
Terdapat dua aliran produksi, yaitu :
Pure Flowshop, yaitu flowshop yang memiliki jalur produksi yang sama untuk
semua tugas
J1 M1 M1 M1
General flowshop, yaitu flowshop yang memiliki pola aliran yang berbeda. Ini
disebabkan adanya variansi dalam pengerjaan tugas, sehingga tugas yang datang
tidak harus dikerjakan pada semua mesin. Jadi mungkin saja suatu proses
dilewati.
J1 M1 M1 M1
J2
Gambar 5. 2 Lintasan Proses General Flowshop
b. Job Shop, yang memiliki urutan operasi (routing) yang unik dan berbeda-beda
untuk semua job. Akibatnya pola yang timbul di sini adalah pola random. Pola jenis
ini dapat dilihat pada gambar berikut.
M1 M1 M1 J1
J1
149
a. Job
Job dapat didefinisikan sebagai suatu pekerjaan yang harus diselesaikan untuk
mendapatkan suatu produk. Job biasanya terdiri dari beberapa operasi yang harus
dikerjakan (minimal satu operasi). Informasi yang dipunya oleh suatu job kepada
ketika datang ke lantai kerja pabrik biasanya adalah operasi-operasi yang harus
dilakukan di dalamnya (dari bagian engineering), saat job harus diselesaikan dan saat
job mulai dapat dikerjakan.
b. Operasi
Operasi adalah himpunan bagian dari job. Untuk menyelesaikan suatu job operasi-
operasi dalam job diurutkan dalam suatu urutan pekerjaan tertentu. Urutan tersebut
ditentukan pada saat perencanaan proses. Matriks routing berisikan informasi
mengenai urutan pengerjaan dan jenis mesin yang digunakan dalam setiap operasi.
Setiap operasi mempunyai waktu proses. Waktu proses tij adalah waktu pengerjaan
yang diperlukan untuk melakukan operasi tersebut. Waktu proses operasi untuk suatu
job biasanya telah diketahui sebelumnya dan mempunya besar tertentu. Waktu operasi
ditampilkan juga dalam bentuk matriks yang dikenal sebagai matriks waktu
operasi/proses.
150
Tabel 5. 2 Contoh Waktu Proses
OPERASI
1 2 3
1 4 3 2
2 1 4 4
JOB
3 3 2 3
4 3 3 1
Pada matriks waktu proses, operasi 1 dari job 1 memiliki waktu proses 4 satuan waktu
dan pada matriks routing, operasi 1 dan job 1 dikerjakan di mesin 1. Untuk menuliskan
kondisi tersebut seringkali digunakan notasi Oijk untuk merepresentasikan suatu
operasi j dari job i diproses di mesin k dan tijk untuk merepresentasikan waktu proses
suatu operasi j dari job I diproses di mesin k. Setelah input dari masing-masing job
telah didefinisikan, proses selanjutnya adalah penugasan operasi dari job pada tiap
mesin. Penugasan ini mempunyai aturan yang bermacam-macam dan penggunaannya
biasanya ditentukan oleh kebijaksanaan manajemen dan berdasarkan sistem
produksinya serta kriteria optimalitas yang diinginkan.
c. Mesin
Mesin adalah sumber daya yang diperlukan untuk mengerjakan proses penyelesaian
suatu job. Setiap mesin hanya dapat memproses satu tugas pada satu saat tertentu.
Seebuah jadwal yang layak adalah kumpulan dari hubungan presedensi
(precedence relation), yang memberikan urutan proses yang lengkap pada setiap mesin.
Hal tersebut harus memenuhi tiga kondisi berikut :
1. Routing tiap job diikuti
2. Setiap mesin hanya memproses satu job pada satu waktu, dan pemrosesan tidak
diinterupsi
3. Waktu proses dari tiap operasi telah ditentukan
Permasalahan Penjadwalannya adalah memilih sebuah jadual dari semua jadual yang
layak dengan kriteria performansi yang diinginkan.
151
5.8 Istilah dalam Penjadualan
Beberapa istilah yang biasa digunakan dalam kriteria optimalitas penjadualan
adalah :
Waktu Proses (ti) : Waktu proses yang dibutuhkan per job i
Makespan (Ms)/Flow Time Maksimum : Jangka waktu penyelesaian suatu
penjadualan yang merupakan jumlah seluruh waktu proses .
n
Untuk 1 Mesin : Ms = i 1
ti
152
Earliness (Ei) : Lateness dari job i jika memenuhi due date atau nilainya nol jika tidak
memenuhi due date
Ei = min (0,Li)
1 n
Rata-Rata Tardiness : Ts = Tj
n j 1
Number Of Tardiness :
n
NT =
t 1
i
i = 1, bila Ti > 0
i = 0, bila Tj < 0
Slack Time (Si) : Waktu sisa yang tersedia bagi suatu job
Si = di ti
Utilitas Mesin (U) : Ratio dari seluruh waktu proses yang dibebankan pada mesin
dengan rentang waktu untuk menyelesaikan seluruh tugas pada semua mesin.
n
t i
U i 1
(mxF max)
Tmax atau L max :
Tmax = max (0, Lmax)
Lmax = max (Li)
153
1. Makespan (Ms) : waktu selesainya semua job
n
Ms t i (1)
i 1
dimana:
Ms = Makespan untuk n pekerjaan pada jadwal S,
Ti = Waktu proses untuk pekerjaan i.
dimana
Fi , s = flow time untuk job i dalam jadwal S
3. Mean Lateness ( Ls ) = rata-rata deviasi antara waktu selesai suatu job dengan due
datenya.
jika asumsinya semua due dates diukur dari T = 0.0,
lateness Li , s Ci , s d i (4)
1 n
mean lateness Ls Li, s
n i 1
(5)
1 n
mean tardiness Ts Ti, s
n i 1
(7)
n
number of tardy job : NT i (7.8)
i 1
154
maksimum lateness Lmax max Li , s
A B
B A
Rumusan FLOWTIME : . Fs
1
F1 F2 1 t1 t1 t2 (8)
2 2
155
Flowtime B =6 (waktu proses)
A = 6 + 2 (waktu menunggu A + waktu proses)
Total = 6 + 8 = 14
Terbukti : Mengurutkan pekerjaan dari yang terkecil memberi flowtime lebih kecil.
156
K
t i*,1 t i ,k
k 1
K
t i*, 2 t i ,m k 1
k 1
157
MFT Fs
1
8 x3 7 x3 6 x5 5 x6 4 x7 3x8 2 x10 1x14
8
=
1
24 21 30 30 28 24 20 14 = 23.875 jam
8
Kinerja SPT :
meminimasi mean flow time,
meminimasi mean lateness,
meminimasi waiting time, dan
meminimasi mean number of tasks waiting sebagai WIP.
Bukti yang diberikan di atas adalah untuk n job pada satu mesin dimana semua
job ada pada awal periode.
Kelemahan. Jika job secara kontinyu datang dari waktu ke waktu, aturan SPT akan
cenderung menolak job dengan waktu proses yang lama dan lebih cenderung ke job yang
waktu prosesnya lebih pendek. Jadi, ini memungkinkan job yang waktu prosesnya lama
mempunyai flow time yang sangat lama.
Solusi sederhana :
Melihat secara periodic job yang telah menunggu dengan waktu yang lama dan
menjalankan mereka berikutnya kendati ada job yang lebih pendek.
Secara periodik mengumpulkan semua job bersamaan dan menjalankan mereka
sebelum batch yang berikutnya datang.
Variasi dari aturan SPT adalah weighted scheduling rule (WSPT), yang digunakan
ketika pentingnya job berbeda. Penjadwal dapat memberikan nilai kepentingan, wi, pada
masing-masing job. Nilai yang paling besar, adalah job yang lebih penting. Kemudian,
dengan membagi waktu proses dengan weighting factor, tendensinya untuk
menempatkan job yang lebih penting ke posisi yang lebih awal pada urutan. The weighted
mean flow time didapatkan rumus
158
n
w F i i
Fw, s i 1
n
w
i 1
Contoh WSPT :
Job Waktu proses Bobot kepentingan ti
(i) (ti) jam (wi) wi
1 5 1 5.0
2 8 2 40
3 6 3 2.0
4 3 1 3.0
5 10 2 5.0
6 14 3 4.7
7 7 2 3.5
8 3 1 3.0
159
1 n
Ls Fi di
n i 1
1 n 1 n
i n
n i 1
F
i 1
di
Fs d s
Ingat bahwa d s adalah rata-rata pada sekumpulan due dates yang konstan dan
independent pada urutan. Jadi, untuk meminimasi Ls , kita hanya meminimasi Fs dengan
menggunakan aturan SPT.
Perhatikan kembali contoh masalah sebelumnya, sekarang kita memperluas
dengan menyertakan due dates.
Ingat bahwa aturan SPT yang dihasilkan pada urutan 4-8-1-3-7-2-5-6. Lateness pada
masing-masing job didapatkan seperti di bawah ini
160
Job Waktu Completion Due Date Lateness
(i) proses Time (di) (Li,s)
Ti (ci)
4 3 3 25 -22
8 3 6 50 -44
1 5 11 15 -4
3 6 17 15 2
7 7 24 45 -21
2 8 32 10 22
5 10 42 20 22
6 14 56 40 16
Mean Lateness adalah = -29/8 = -3.624 jam
161
Performansi :
Jumlah job terlambat : 6.
mean lateness : 36/8 = 4.5 jam.
Maksimum lateness dan tardiness : 9 jam.
Aturan EDD memberikan jadwal yang diinginkan hanya jika menghasilkan nol
atau satu keterlambatan job. Jika menghasilkan lebih dari satu keterlambatan job,
algoritma hodgson akan menghasilkan tujuan yang diinginkan. Algoritma Hodgson akan
diberikan di bawah ini.
162
Job i 2 1 3 5 4 6 7 8
Processing Time ti 8 5 6 10 3 14 7 3
Completion Time ci 8 13 19 29 32 46 53 56
Due date di 10 15 15 20 25 40 45 50
Lateness Li -2 -2 4 9 7 6 8 6
Langkah 3. Job 2 mempunyai waktu proses yang terlama pada tiga job pertama, jadi ini
digeser di belakang
Job i 1 3 5 4 6 7 8
Processing Time ti 5 6 10 3 14 7 3
Completion Time 5 11 21 24 38 45 48
ci
Due date di 15 15 20 25 40 45 50
Lateness Li -10 -4 1 -1 -2 0 -2
Iterasi 2.
Job 5 merupakan job yang pertama kali terlambat; dan job 1, 3, dan 5; job 5 merupakan
yang terlama. Untuk itu, digeser di belakang
Job i 1 3 4 6 7 8
Processing Time ti 5 6 3 14 7 3
Completion Time 5 11 14 28 35 38
ci
Due date di 15 15 25 40 45 50
Lateness Li -10 -4 -11 -12 -10 -12
Tidak ada lagi job yang terlambat. Jadi yang pertama dalam urutan adalah 1-3-4-6-7-8
dan urutan yang paling akhir adalah job 2 dan 5. jadi, urutannya menjadi 1-3-4-6-7-8-2-
163
5. Hasil urutannya akan ditunjukkan sebagai berikut
164
Job Processing Due Date Slack Time
(i) Time (di) (SLi)
(ti)
1 5 15 1
2 8 1 2
3 6 15 9
4 3 25 22
5 10 20 10
6 14 40 26
7 7 45 38
8 3 50 47
165
5.8.2 Penjadwalan Mesin N Job 1 Mesin Paralel
ALGORITMA SPT
Langkah 1 : Urutan semua tugas di order/pesanan SPT.
Langkah 2 : Mengambil job/order satu demi satu, menjadwalkan mereka di mesin sesuai
urutannya dengan memprioritaskan mesin yang paling siap terlebih dahulu
Contoh :
Task Processing
i Time t I
1 5
2 6
3 3
4 8
5 7
6 2
7 3
8 5
9 4
10 2
Urutan SPT adalah 6-10-3-7-9-1-8-2-5-4.
Hasil Penjadwalannya :
Mesin
3 3 1 5
2 10 9 2
1 6 7 8 4
Waktu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Gambar 5. 5 Ilustrasi Penjadwalan untuk Algoritma SPT
166
Mengurangi Makespan dan Mean Flowtime sekaligus.
Langkah 1 : Urutan n job dengan LPT (Longest Processing Time).
Langkah 2 :Jadwal masing-masing job sesuai aturan LPT pada mesin dengan
mendahulukan mesin yang paling siap
Langkah 3 : Setelah selesai, balikkan urutan mereka di masing-masing mesin, seperti
aturan SPT.
Urutan LPT : 4-5-2-1-5-9-3-7-6-70.
Hasil Penjadwalan :
Mesin
3 2 1 3 10
2 5 8 7
1 4 9 6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Waktu
Gambar 5. 6 Ilustrasi penjadwalan sesuai aturan LPT (tahap1)
Mesin
3 10 3 1 2
2 7 8 5
1 6 9 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Waktu
Gambar 5. 7 Ilustrasi penjadwalan hasil pembalikan seperti SPT (tahap 2)
Mean Flowtime : 8.1 jam
Makespan : 16 jam.
ALGORITMA EDD
167
Mengurangi Maximun Kelambatan di Prosesor Parallel M
Langkah 1 : Urutan job dengan aturan EDD.
Langkah 2 : Jadwalkan pada mesin paralel dengan mendahulukan mesin yang paling
siap
Hasil urutannya : 6-10-1-7-2-8-5-4-3-9.
Hasil Penjadwalan :
Mesin
3 1 5 9
2 10 2 4
1 6 7 8 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Waktu
Gambar 5. 8 Ilustrasi Contoh Masalah Penjadwalan dengan Algoritma EDD pada Mesin Paralel
Performansi :
Keterlambatan rata-rata : 0.6 jam,
Keterlambatan maksimum : 4 jam,
Jumlah keterlambatan : 3 job yang terlambat
ALGORITMA SLACK
Langkah 1 : urutkan berdasarkan aturan SLACK.
Langkah 2 : Jadwalkan hasil urutannya pada mesin paralel
Hasil : 1-2-b-4-5-7-5-10-3-9-7
Penjadwalan :
168
Mesin
3 6 4 10 9
2 2 7 8
1 1 5 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Waktu
Gambar 5. 9 Ilustrasi Penjadwalan Contoh Masalah dengan Aturan SLACK
Performansi :
Keterlambatan rata-rata : 1.3 jam
Keterlambatan maksimum : 5 jam
Jumlah yang terlambat : 6 job
ALGORITMA HODGSON
Langkah 1 : urutkan berdasarkan aturan EDD. Jadwalkan secara paralel
Langkah 2 : Untuk setiap prosesor, review job sampai menemukan job yang terlambat.
Latihan 3 : Identifikasi dengan LPT. Pindahkan job yang mempunyai waktu terlama dan
pindah ke belakang. Revisi completion time sesuai perubahan
jadwal.
Tahap 1, hasil urutan dan jadwalnya seperti hasil algoritma EDD dengan 3 job terlambat
yaitu 4, 5, dan 9.
Untuk tahap 2 dan 3, tidak ada yang bisa dilakukan pada mesin 1 dan 2. Karena job 4
berada di urutan terakhir. Pada mesin 3 kita dapat memindahkan job 5 sehingga job 9 bisa
diselesaikan tepat waktu.
Penjadwalan :
169
Mesin
3 6 4 10 9
2 2 7 8
1 1 5 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Waktu
Gambar 5. 10 Ilustrasi Penjadwalan Contoh Masalah Dengan Aturan SLACK
Performansi :
Keterlambatan rata-rata : 0.9 jam
Keterlambatan maksimum : 5 jam
Jumlah yang terlambat : 2 job
Tabel 5. 3 Aturan untuk penjadwalan n job m mesin paralel
Tujuan Algo Mean Terlambat Jmlh Terlambat
Makespan
(mengurangi) ritma Flow Max terlambat rata-rata
SPT 9.3 8.1 18 6 3 1.3
LPT 9.4 8.1 16 7 4 1.4
EDD 9.5 8.9 16 4 3 0.6
SLACK 9.6 10.1 16 5 6 1.3
HODGSON 9.8 8.8 16 5 2 0.9
170
Tahap 3 : Hilangkan job yang sudah dijadwalkan dalam daftar. Jika job masih,
kembali ke tahap 1 jika tidak maka berhenti.
Berikut ini merupakan contoh yang terdiri dari 10 job dengan menggunakan algoritma
Johnson.
Waktu proses mesin 1 Waktu proses mesin 2
Job (i)
(jam) (jam)
1 3 5
2 6 2
3 2 8
4 7 6
5 6 6
6 5 9
7 5 4
8 3 2
9 6 8
10 10 4
Waktu proses yang paling sedikit dari 10 job tersebut adalah t2,2, t3,1, dan t8,2. Lalu
job 3 sebaiknya dijadwalkan pada awal jadwal (awal urutan) dan job 2 dan 8 diakhir. Kita
memilih antara job 2 dan 8 untuk dijadwalkan paling akhir maka kita menggunakan job
2 karena memiliki waktu proses terlama pada mesin 1. maka penjadwalannya :
3 82
Dengan 3 job hilang dari daftar, minimum waktu proses adalah 3 jam untuk mesin
1 (ti,1) yang mana mengambil job 1 pada posisi penjadwalan yang kedua.
3 1 82
171
2 3 1 6 9 5 4 7 10 8 2
Mesin
1 3 1 6 9 5 4 7 10 8 2
4 8 12 16 20 24 28 32 36 40 44 48 52 56
Waktu
Pada sistem flowshop, sangat dimungkinkan terjadi waiting time dan idle time.
Waiting time : waktu tunggu material karena sudah selesai di suatu mesin tapi mesin
berikutnya belum siap. Mesin masih memproses job lain. Sehingga
terpaksa harus menunggu.
Contoh : Job 9. Pada mesin 1 selesai pada t=16, sedang mesin 2 baru siap
memproses job 9 pada t=24. Sehingga Wt = 8.
Idle time : waktu tunggu mesin karena sudah selesai memproses suatu job tetapi
job berikutnya masih diproses di mesin sebelumnya.
Aturan CDS (Campbell, Dudek dan Smith) meminimasi makespan pada N Job M
Mesin serial
Sebuah generalisai dari aturan Johnson untuk m mesin dapat menggunakan
algoritma Campbell, Dudek, dan Smith. Idenya adalah menggunakan sebuah aturan
seperti Johnson untuk membuat m-1 mesin pada penjadwalan dan pilih yang terbaik dari
ini untuk diimplementasikan. Untuk penjadwalan yang pertama, satu aplikasi algoritma
Johnson untuk t*i,1 dan t*i,2 dimana
t*i,1 = ti,1
t*i,2 = ti,m
ini merupakan, waktu proses pada mesin pertama dan mesin yang terakhir. Untuk
penjadwalan yang kedua,
t*i,1 = ti,1 + ti,2
t*i,2 = ti,m + ti,m-1
172
ini merupakan, waktu proses pada dua pertama dan dua yang terakhir. Untuk K
penjadwalan,
K
t*i,1 = t
k 1
i,k ....................................(9)
K
t*i,2 = t
k 1
i , m k 1 ................................(10)
Tahap 1 : Untuk K=1. hitunglah t*i,1 dan t*i,2 menggunakan persamaan (9) dan (10).
Tahap 2 : Penjadwalan m job dengan menggunakan algoritma Johnsons, dimana
ti,1 = t*i,1 dan ti,2 = t*i,2, yang diperoleh dari tahap 1. Catat urutannya dan
hitung makespan. Jika makespan makespan paling kecil diperoleh maka
simpan urutan penjadwalan ini dan nilai makespannya.
Tahap 3 : Jika K = (m-1), berhenti; yang terbaik sekarang disimpan urutannya
dimana hanya satu urutan yang diberlakukan. Jika K (m-1),
tingkatkan nilai K satu demi satu dan kembali ke tahap 1, sampai (m-1).
Ilustrasi dari algoritma ini dan mengembangkan sebuah metode untuk menghitung
makespan pada situasi M mesin, menggunakan masalah pada 3 mesin serial.
Untuk K= 1dan K=2, nilai t*i,1 dan t*i,2 adalah sebagai berikut
K=1 K=2
Job (i)
t*i,1 t*i,2 t*i,1 t*i,2
173
1 4 5 7 8
2 3 4 6 7
3 2 6 3 7
4 5 2 8 5
5 6 7 9 11
6 1 3 10 11
174
Penjadwalan untuk K=1
Mesin
3 6 3 2 1 5 4
2 6 3 2 1 5 4
1 6 3 2 1 5 4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 Waktu
2 3 2 1 6 5 4
1 3 2 1 6 5 4
Wakt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 u
Gambar 5. 12 Ilustrasi Penjadwalan Contoh Masalah dengan Algoritma CDS
175
Aplikasi algoritma CDS untuk K=1 dengan pengurutan 6-3-2-1-5-4. Untuk K=2 dengan
urutan 3-2-1-6-5-4. Hasil dari dua penjadwalan ini dapat dilihat pada gambar di atas.
Untuk K=1, makespan = 36 jam dan K=2 makespan = 33 jam. Maka urutan yang
diberlakukan adalah3-2-1-6-5-4.
New jobs
Mesin
In-process jobs In-process jobs
k
Completed jobs
Pada flow shop, operasi k dari beberapa job dilakukan pada mesin k, dan tidak
perlu dibedakan antara nomer operasi dan nomer mesin. Pada kasus job shop hal ini
lebih tepat untuk menggambarkan sebuah operasi dengan triplet (i,j,k) dengan tujuan
untuk menandai operasi j untuk job i dan dilakukan pada mesin k. Sebaliknya, model
job shop didasarkan pada asumsi yang sama dengan model flow shop
176
Penggambaran secara grafis permasalahan job shop melibatkan job dan gantt
chart. Penggambaran job secara grafis pada gambar 5.14 (a), 5.14 (b), dan 5.15 (a),
5.15 (b).
Gambar 5. 14 (a) Gambaran Secara Grafis dari Job Shop Job Demi Job
(b) Gambaran Secara Grafis dari Job Shop Job Demi Job Mesin Demi Mesin.
177
Job 1 111 122 133
Representasi tabular dari data untuk contoh diatas ditunjukkan pada tabel 1
Sekumpulan penugasan pada mesin terhadap job yang diberikan disebut routing. Sebagai
contoh, job 2 mempunyai routing mesin 2-1-3.
4 3 3 1
Teknik-teknik Penjadwalan Job Shop dapat dibedaakan dalam dua bentuk yaitu :
178
Priority Dispatching
Dispatching adalah suatu jenis metoda penjadulan dimana waktu siap dari
setiap mesin ditentukan sedemikian rupa sehingga berurutan naik. Keputusan
pemilihan produk yang akan diproses dapat dilakukan pada saat mesin siap
menerima produk (mesin menganggur). Pada teknik ini ditentukan aturan prioritas
untuk memilih satu operasi diantara operasi-operasi yang mengalami konflik pada
mesin m pada setiap tahap. Mengenai aturan prioritas ini telah dibahas
sebelumnya pada bab ini.
Sampling
Probabilistik Dispatching
179
digunakan pada masing-masing mesin. Berhubungan dengan hal tersebut, dibuat
jadwal semiaktif yang ditampilkan pada gambar 5.16a. Dimana tidak ada left local
shift yang mungkin pada jadwal ini, sebuah jadwal yang lebih baik dapat dihasilkan.
Sebagai contoh, jadwal ini memungkinkan untuk memulai operasi pada (1,1,1) lebih
awal dari 18 tanpa menunggu operasi lainnya. Sesungguhnya, operasi (1,1,1) dapat
dimulai pada waktu 0, dan ketiga operasi dari job 1 dapat dimulai lebih awal tanpa
menunggu operasi lainnya. Pada gantt chart, perubahan yang dihubungkan operasi
shift (1,1,1) pada bagian kiri dan melebihi operasi lain yang siap dijawdalkan pada
mesin 1. Tipe pengaturan ini-dimana beberapa operasi dimulai lebih awal tanpa
menunggu operasi lain-disebut global left shift, atau left shift yang sederhana.
Sekumpulan semua jadwal yang tidak terdapat global left shift dapat dibuat yang
disebut dengan jadwal aktif, dan jelas bahwa ini adalah subset dari set jadwal
semiaktif.
Mesin 1 4 3 2 1
Mesin 2 4 3 2 1
Mesin 3 4 3 2 1
(a)
Mesin 1 1 4 3 2
Mesin 2 4 3 2 1
Mesin 3 3 4 1 2
18
(b)
180
Mesin 1 1 4 2 3
Mesin 2 4 1 2 3
Mesin 3 3 4 1 2
16
(c)
Mesin 1 1 3 2 4
Mesin 2 4 3 2 1
Mesin 3 3 4 1 2
15
(d)
Gambar 5. 16 Pengaruh Left Shift pada Perubahan yang Diberikan Jadwal Semiaktif (A), Jadwal
Lebih Padat dan Semakin Padat Lagi (B), (C), (D).
Jalan lain untuk melihat aturan jadwal semiaktif dan aktif adalah dengan
menggunakan Diagram Venn. Segi empat besar pada gambar 5.17 menggambarkan
semua jadwal(jenisnya terbatas). Daerah bagian dalam yang berlabel S-A
menunjukkan jadwal semiaktif yang terbatas. Secara keseluruhan memuat
sekumpulan jadwal aktif, yang ditunjukkan daerah berlabel A. Tanda bintang
menunjukkan jadwal optimal, yang ditempatkan untuk mengindikasikan bahwa hasil
optimum harus ada pada jadwal aktif.
181
S-A
*
16
All
Gambar 5. 17 Diagram Venn yang menggambarkan jadwal semiaktif (S-A) dan jadwal aktif (A).
Jumlah jadwal aktif tetaplah besar, dan terkadang jumlah ini dapat dipercaya
untuk focus pada subset yang lebih kecil kyang disebut jadwal nondelay. Pada jadwal
nondelay tidak ada mesin yang idle pada satu waktu ketika dimulainya proses operasi.
Sebagai contoh, pada gambar 5.16b, perlu dicatat bahwa mesin 1 mengalami idle pada
waktu 5 ketika operasi mulai (3,3,1). Untuk itu jadwal tersebut bukanlah jadwal nondelay.
Jika job order pada mesin 1 diganti menjadi 1-3-2-4 maka jadwal semiaktif tersebut
menjadi jadwal aktif dan nondelay (lihat gambar 5.16d). dengan menentukan rentang idle
pada gambar 5.16c dapat juga ditentukan bahwa jadwal yang ditunjukkan bukanlah
jadwal nondelay. Sebagian jadwal ini mempengaruhi untuk membuat jadwal nondelay
dari jadwal aktif yang diberikan.
Semua jadwal nondelay adalah jadwal aktif sejak tidak ada left shifting yang
mungkin terjadi. Pada literature lain disebutkan jadwal aktif bukanlah jadwal nondelay.
Hal ini berartijumlah jadwal nondelay berkurang secara signifikan terhadap jumlah
jadwal aktif. Terjadinya dilemma dikarenakan tidak adanya garansi mengenai solusi
optimum pada jadwal nondelay. Diagram Venn pada gambar 5.17 dilengkapi dengan
jadwal nondelay pada gambar 5.18. Gambar 5.18a menggambarkan situasi dimana jadwal
optimal merupakan jadwal nondelay, dan gambar 5.18b menunjukkan jadwal optimal
bukan pada jadwal nondelay.
182
S-A
ND
*
A
All
* S-A
ND
All
Gambar 5. 18 Diagram Venn menggambrkan hubungan antara jadwal nondelay (ND), jadwal aktif
dan semiaktif.
Sebagai ringkasan, jadwal aktif secara umum mendominasi dalam job shop
problem. Jadwal nondelay merupakan terkecil dalam jumlah namun tidak dominan.
Namun, jadwal nondelay terbaik biasanya dapat diperkirakan dengan menghasilkan
solusi yang sangat baik, jika solusi tersebut ternyata tidak optimum. Aturan pada jadwal
nondelay sama seperti jadwal permutasi pada masalah flow shop yang besar: meskipun
set tersebut tidak selalu dominan, jadwal ini dapat mengahsilkan solusi dekat dengan
solusi optimum.
Perlakuan pada jadwal dilakukan untuk menyelesaikan masalah pada jobshop.
Fase selanjutnya adalah perkembangan prosedur sistematik untuk pembangkitan jadwal.
Kemudian, berbagai solusi algoritma dapat dibuat, dengan mengadopsi pembangkitan
prosedur menjadi kebutuhan masalah spesifik.
183
menugaskan waktu mulai yang tidak dapat dirubah untuk masing-masing operasi,
tetapi prosedur tersebut juga membuat one pass dalam waktu mulai dari awal hingga
akhir prosedur. Prosesdur membangun jadwal pada Gantt chart mulai dari kanan
hingga kiri. Pendekatan single-pass yang berbeda, contohnya, adalah prosedur job-
at-a-time. Mekanisme tipe ini membuat single-pass sepanjang operasi, job demi job.
Mekanisme itu menjadwalkan semua operasi dari job yang diberikan sebelum
menerusakan ke jadwal operasi job yang lain. Pendekatan seperti itu membuat one
pass sepanjang daftar operasi, walaupun hal itu akan membuat beberapa pass pada
waktu sepanjang jadwal.
Kebanyakan prosedur pembangkitan jadwal melakukan operasi secara
konsisten dengan hubungan prioritas (precedence relation) masalah. Dengan kata
lain, tidak ada operasi yang dipertimbangkan hingga semua pendahulunya
(predecessor) telah dijadwalkan. Setelah semua predecessor operasi (i,j,k)
dijadwalkan, operasi telah dikatakan terjadwal (schedulable), dengan memperhatikan
waktu aktual dimana keputusan penjadwalan selanjutnya dibutuhkan. Prosedur
pembangkitan dijalankan dengan suatu susunan operasi penjadwalan pada setiap
stage, dan susuan tersebut ditentukan secara sederhana dari struktur prioritas
(precedence). Jumlah stage untuk prosedur one-pass adalah sama untuk jumlah
operasi, atau nm. Pada setiap stage, operasi yang telah ditugaskan waktu
permulaannya membentuk jadwal parsial. Jadwal parsial yang telah diberikan untuk
setiap masalah job shop, mungkin membentuk operasi penjadwalan dengan susunan
hubungan yang unik. Perhatikan
PSt = jadwal parsial yang mengandung t operasi penjadwalan.
St = susunan operasi pejadwalan pada stage t , berhubungan dengan PSt yang
telah diketahui.
j = waktu awal dimana operasi j S t dapat dmulai
Untuk jadwal parsial aktif yang telah diberikan, waktu mulai potensial j
ditentukan oleh waktu penyelesaian dari predecessor langsung operasi j dan waktu
penyelesaian paling akhir pada mesin diperoleh dari operasi j . Dua kuantitas tersebut
184
yang paling besar adalah j . Waktu selesai potensial j adalah hanya j + t j ,
Algoritma 1
(Pembangkitan Jadwal Aktif)
Langkah 1 . Buatlah t 0 dan mulai dengan PSt sebagai jadwal parsial ke nol. Sebagai
permulaan, St meliputi semua operasi tanpa predecessor.
Langkah 2 . Tentukan * min j St { j } dan mesin m* dimana * dapat
direalisasikan.
Langkah 3 . Untuk setiap operasi j S t yang memerlukan mesin m * dan sehingga
Langkah 4 . Untuk setiap jadwal parsial baru PSt 1 , yang dibuat pada langkah 3,
perbaharui susunan data sebagai berikut:
(a) Hilangkan operasi j dari St .
St = {(1,2,2),(2,2,1),(3,3,1),(4,3,1)}
185
* = min{ 122 , 221, 331, 431 } = min {9,10,8,7} = 7
m* = 1
Untuk mesin 1 : 221 6, 331 5, dan 431 6 . Karena masing-masing dari tiga waktu
mulai potensial tersebut adalah kurang dari * , tiga jadwal parsial aktif dapat dibentuk
untuk stage 8. hal tersebut sesuai dengan berikut.
1. Start (2,2,1) pada waktu 6; St = {(1,2,2),(2,3,3),(3,3,1),(4,3,1)},
2. Start (3,3,1) pada waktu 5; St = {(1,2,2),(2,2,1),(4,3,1)},
3. Start (4,3,1) pada waktu 6; St = {(1,2,2),(2,2,1),(3,3,1)}.
Catat bahwa jadwal partial ketiga pada daftar tersebut terdapat dalam jadwal penuh yang
diperlihatkan dalam gambar 5.17b.
Mesin 1 1
Mesin 2 4 3 2
Mesin 3 3 4
186
Algoritma 2
(Pembangkitan Jadwal Nondelay)
Langkah 1 . Buatlah t = 0 dan mulai dengan PSt sebagai jadwal parsial ke nol. Sebagai
permulaan, St meliputi semua operasi tanpa predecessor.
Langkah 2 . Tentukan * min { j } dan mesin m * sehingga * dapat direalisasikan.
jSt
Langkah 4 . Untuk setiap jadwal parsial baru PSt 1 , yang dibuat pada langkah 3,
perbaharui susunan data sebagai berikut:
(a) Hilangkan operasi j dari St
operasi dengan j * akan kurang dari atau sama untuk jumlah dengan * * .
187
Untuk mesin 1, hanya 221 5 dan , oleh sebab itu, hanya satu jadwal parsial yang
dihasilkan pada stage berikutnya:
Start (3,3,1) pada waktu 5; St = {(1,2,2),(2,2,1),(4,3,1)}
Hai ini merupakan salah satu alternatif yang muncul ketika algoritma 1
diterapkan, tetapi alternatif lain tidak mengarah kepada jadwal nondelay dan tidak
muncul saat ini.
Nilai * ditentukan pada berbagai stage mewakili titik dalam waktu dimana
keputusan penjadwalan dibuat pada masing-masing * mesin diperintahkan untuk
memulai operasi yang khusus. Karena nilai * membentuk urutan tanpa pengurangan,
Algoritma 2 secara jelas merupakan prosedur dispatching. Untuk Algoritma 1, titik
keputusan untuk masing-masing mesin membentuk urutan peningkatan; oleh sebab itu
hal tersebut juga merupakan prosedur dispatching.
Prosedur pembangkitan dimana berdasarkan Algoritma 1 dan 2 merupakan
pendekatan struktur pohon (tree-structure) terhadap pembangkitan jadwal. Titik pada
pohon sesuai dengan jadwal parsial, dan setiap waktu operasi baru ditempatkan pada
jadwal parsial algoritma memproses dari level yang satu ke level berikutnya. Jika pohon
dibangun pada keseluruhannya, kemudian semua jadwal aktif dijumlahkan dibawah
algoritma 1 dan semua jadwal nondelay dijumlahkan dibawah algoritma 2. Mekanisme
tree-structure yang diberikan tersebut, pendekatan yang memungkinkan mungkin untuk
menjumlahkan dengan prosedur branch and bound, yang akan dibahas pada bagian
berikutnya. Lebih lanjut lagi, perancangan beberapa prosedur heuristik yang efektif
berdasarkan pendekatan yang sama untuk pembangkitan jadwal.
188
1. Mesin Rusak
2. Bahan Baku Tidak Ada
3. Aktivitas Perawatan
4. Penambahan Order Baru
5. Adanya Perubahan Prioritas
6. Perubahan Due Date
Seluruh hambatan atau gangguan dalam melaksanakan jadwal produksi semula
tersebut dapat terjadi secara bersamaan (multi disturbances) maupun secara sendiri-
sendiri (single disturbances).
189
a. Minimasi Jumlah Produk yang Mengalami Keterlambatan
b. Maksimasi Utilitas mesin
Sedangkan pengelompokan beberapa besaran yang digunakan untuk mengukur
keberhasilan Penjadwalan sebagai berikut :
a. Berdasarkan waktu penyelesaian
Minimasi maksimal makespan
Minimasi rata-rata makespan
Minimasi waktu penyelesaian maksimal
b. Berdasarkan batas penyelesaian
Minimasi maksimal keterlambatan
Minimasi rata-rata keterlambatan
Minimasi maksimal jumlah job yang terlambat
c. Berdasarkan penggunaan sumber
Rata-rata jumlah job yang menunggu diproses
Rata-rata mesin waktu menunggu
190
berakhir. Seringkali event saat berakhirnya aktifitas merupakan event saat
dimulainya aktifitas berikut.
Pada sistem manufaktur event dapat dibedakan menjadi dua yaitu :
1. Event yang dapat diperkirakan (teramal)
Event yang dapat diperkirakan kekadiannya yang berhubungan dengan produk
atau benda kerja meliputi akhir operasi pengerjaan, kedatangan order normal yang
teramal dan sebagainya. Sedangkan yang berhubungan dengan peralatan produksi
antara lain akhir operasi (pemesinan, transportasi dll.), instalasi peralatan baru, akhir
perbaikan, perawatan dan sebagainya.
Jenis event yang perlu diperhatikan adalah event yang tak teramal kapan
terjadinya. Event-event ini memerlukan penanganan khusus yang berbeda dengan
kondisi normal.
Suatu event dalam suatu sistem produksi yang real time harus mampu
mengatasi dengan cepat perubahan kondisi yang menyebabkan jadual awal (initial
schedule) menjadi tidak layak. Oleh karena itu proses Penjadwalan ulang atau
rescheduling sangat diperlukan untuk mengatasi hal tersebut
Rescheduling sendiri merupakan sebuah proses iteratif yang terdiri dari dua
langkah :
1. Evaluasi jadual yang sudah ada tergantung pada perubahan kondisi, permintaan,
kendala-kendala (constrant),jika hasil dari refisi jadual bisa di terima maka proses
berhenti.
191
2. Tentukan solusi yang lebih baik, jadual revisi atau jadual yang sudah ada di revisi
kembali berdasrkan solusi yang lebih baik (improved solution), jika hasil revisi ini
diterima, berhenti, jika tidak maka ulangi langkah kedua sampai jadual bisa di terima.
Suatu jadual yang bisa di terima adalah jadual yang mampu mengatasi perubahan
kondisi, pada kenyataanya definisi sebuah jadual yang layak adalah tergantung pada
kebutuhan user
192
Selain itu rescheduling dapat dipandang sebagai koreksi atas jadual yang sudah
ada. Koreksi yang diperlukan untuk sebuah perubahan yang menyebabkan suatu
jadual menjadi tidak layak dapat dibagi menjadi tiga yaitu :
193
disebut dengan periodic rescheduling. Event driven rescheduling adalah
rescheduling yang dilakukan untuk mengatasi perubahan yang terjadi di shop floor
karena faktor-faktor rescheduling. Adapun faktor-faktor rescheduling dapat
dikelompokkan menjadi dua yaitu yang berasal dari lingkungan internal shoop floor
dan yang berasal dari lingkungan ekternal shoop flor.
194
5.14 Contoh Soal
SOAL JAWAB UNTUK KASUS N JOB 1 MESIN
1. Berikut terdapat 8 order yang mempunyai waktu berbeda-beda tetapi harus dikerjakan
pada satu mesin yang sama. Buktikan bahwa SPT mampu meminimasi
MeanFlowtime, Hodgson meminimasi jumlah job yang terlambat, EDD meminimasi
maksimum keterlambatan, dll.
JAWABAN
Jika terdapat permasalahan pembuktian, maka kita harus membangkitkan data dan diolah
dengan semua algoritma. Dari hasil pengolahan ini akan terbukti secara nyata,
performansi masing-masing algoritma.
Disini dibangkitkan 8 job yang diasumsikan datang pada waktu yang hampir bersamaan.
Data meliputi waktu proses beserta due datenya.
195
Penjadwalan 8 job pada mesin tunggal
****Perbandingan antar aturan Penjadwalan****
Aturan
Meanflow Weight Mean Keterlambatan Jumlah job Keterlambatan
yang
time meanflow Lateness maksimum terlambat rata-rata
digunakan
SPT 23.875 29 -3.625 22 4 7.750
WSPT 27 27.467 -0.5 36 4 10.625
EDD 32 31.733 4.5 9 6 5
SLACK 32.125 31.133 4.625 9 6 5
Hodgson 29.125 29.867 1.625 36 2 9
Wilkerson 28.875 30.667 1.375 16 3 4
JAWABAN
Penjadwalan N Job M mesin serial menggunakan aturan CDS (Campbell, Dudek
dan Smith).
196
K
t*i,2 = t
k 1
i , m k 1
T1* T2*
1 4 5
2 4 1
3 6 5
4 2 3
5 5 2
6 3 4
7 1 3
7-4-6-1-3-5-2
197
idel
time: 38 makespan: 37
waiting time 12
utilisasi: 0,6481
K=2
Mechine
M1 M2 M3 M4 M5
Job
1 4 1 5 2 5
2 4 4 2 3 1
3 6 3 4 1 5
4 2 5 3 5 3
5 5 2 3 2 2
6 3 4 2 4 4
7 1 1 1 3 3
T1* T2*
1 5 7
2 8 4
3 9 6
4 7 8
5 7 4
6 7 8
7 2 6
7-1-4-6-3-5-2
idel
time: 35 makespan: 36
waiting time: 14
utilisasi 0,675925926
198
K=3
Mechine
M1 M2 M3 M4 M5
Job
1 4 1 5 2 5
2 4 4 2 3 1
3 6 3 4 1 5
4 2 5 3 5 3
5 5 2 3 2 2
6 3 4 2 4 4
7 1 1 1 3 3
T1* T2*
1 10 12
2 10 6
3 13 10
4 10 11
5 10 7
6 9 10
7 3 7
7-6-1-4-3-5-2
idel
time: 38 makespan: 36
waiting time: 5
utilisasi 0,648148148
199
K=4
Mechine
M1 M2 M3 M4 M5
Job
1 4 1 5 2 5
2 4 4 2 3 1
3 6 3 4 1 5
4 2 5 3 5 3
5 5 2 3 2 2
6 3 4 2 4 4
7 1 1 1 3 3
T1* T2*
1 12 13
2 13 10
3 14 13
4 15 16
5 12 9
6 13 14
7 6 8
7-1-6-4-3-2-5
Dari keempat alternatif di atas, urutan yang memberikan makespan terkecil adalah jadwal
dengan k = 2 dengan utilisasi 0.68
200
JOBSHOP SCHEDULING
Diketahui data routing dan waktu proses dari 5 job 3 mesin sebagai berikut :
Routing
Operasi Operasi Operasi
1 2 3
Job 1 1 2 3
Job 2 2 1 3
Job 3 3 2 1
Job 4 2 3 1
Job 5 1 3 2
Waktu
Proses
Operasi Operasi Operasi
1 2 3
Job 1 2 3 4
Job 2 2 2 4
Job 3 4 2 1
Job 4 3 3 2
Job 5 1 3 2
Buatlah penjadwalan untuk permasalahan jobshop tersebut!
JAWABAN
Algoritma Pembangkitan Jadwal Aktif(1)
Notasi :
PSt = Jadwal parsial yang terdiri t buah operasi terjadwal
St = Set operasi yang dapat dijadwalkan pada stage t, setelah diperoleh PSt
Ct = Waktu tercepat operasi dapat dimulai
rj = Waktu tercepat operasi dapat diselesaikan (rj = cj + tij)
tij = Waktu proses pekerjaan i pada operasi j
Algoritma Pembangkitan Jadwal Aktif(2)
Step 1.Tentukan t=0, dan kemudian mulai dengan PS0 sebagai jadwal parsial nol.
Tentukan seluruh operasi tanpa predecessor sebagai S0
Step 2.Tentukan r* min{rj; jESt} dan mesin m* yaitu mesin yang dapat merealisasikan
r*
201
Step 3.Untuk setiap operasi j E St yang membutuhkan mesin m * dan memenuhi rj < r*
maka tambahan operasi j yang memenuhi syarat ini ke dalam PSt dan hitung
indeks prioritas. Masukkan operasi dengan indeks prioritas tertinggi ke dalam
PSt dan dikerjakan pada mesin M* sesuai dengan urutan prioritas
Step 4.Untuk setiap jadwal parsial baru PSt+1, yang dihasilkan pada Step 3, perbaharui
(up date) set data berikut:
Keluarkan operasi j dari St
Masukkan operasi selanjutnya dari pekerjaan yang sama dari operasi
yang dikeluarkan tersebut ke dalam St
Harga t berubah menjadi t+1
Step 5.Untuk setiap PS t+1 yang dihasilkan pada Step 3, kembali ke Step 2. Lanjutkan
langkah-langkah ini sampai suatu jadwal aktif dihasilkan.
Perhitungan
Mesin
Stage St Cj tij rj r* m* Pst
1 2 3
0 0 0 111 0 2 2
212 0 2 2
0 313 0 4 4
412 0 3 3
511 0 1 1 1 1 511
1 0 0 111 1 2 3
212 0 2 2 2 2 212
1 313 0 4 4
412 0 3 3
523 1 3 4
1 2 0 111 1 2 3 3 1 111
221 2 2 4
2 313 0 4 4
412 2 3 5
523 1 3 4
3 2 0 122 3 3 6
221 3 2 5
3 313 0 4 4 4 3 313
412 2 3 5
523 1 3 4
3 2 4 122 3 3 6
221 3 2 5
4
322 4 2 6
412 2 3 5 5 2 412
202
523 4 3 7
3 5 4 122 5 3 8
221 3 2 5 5 1 221
5 322 5 2 7
423 5 3 8
523 4 3 7
5 5 4 122 5 3 8
233 5 4 9
6 322 5 2 7
423 5 3 8
523 4 3 7 7 3 523
5 5 7 122 5 3 8
233 7 4 11
7 322 5 2 7 7 2 322
423 7 3 10
532 7 2 9
5 7 7 122 7 3 10
233 7 4 11
8 331 7 1 8 8 1 331
423 7 3 10
532 7 2 9
8 7 7 122 7 3 10
233 7 4 11
9
423 7 3 10
532 7 2 9 9 2 532
8 9 7 122 9 3 12
10 233 7 4 11
423 7 3 10 10 3 423
8 9 10 122 9 2 11 11 2 122
11 233 10 4 14
431 10 2 12
8 11 10 133 11 4 15
12 233 10 4 14
431 10 2 12 12 1 431
12 11 10 133 11 4 15
13
233 10 4 14 14 3 233
14 8 11 14 133 11 4 15
203
IT: 16
WT: 21
MS: 18
Perhitungan
Mesin
Stage St Cj tij rj c* m* Pst
1 2 3
0 0 0 111 0 2 2 0 1
212 0 2 2 0 2 212
0 313 0 4 4 0 3 313
412 0 3 3 0 2
511 0 1 1 0 1 511
1 2 4 111 1 2 3 1 1 111
221 2 2 4
1 322 4 2 6
412 2 3 5
523 4 3 7
3 2 4 122 3 3 6
221 3 2 5
2 322 2 2 4 2 2 322
412 2 3 5
523 4 3 7
3 4 4 122 4 3 7
221 3 2 5 3 1 221
3 331 4 1 5
412 4 3 7
523 4 3 7
5 4 4 122 4 3 7 4 2 122
4 233 5 4 9
331 5 1 6
204
412 4 3 7
523 4 3 7 4 3 523
5 7 7 133 7 4 11
233 7 4 11
5 331 5 1 6 5 1 331
412 7 3 10
532 7 2 9
6 7 8 133 8 4 12
233 8 4 12
6
412 7 3 10
532 7 2 9 7 2 532
6 9 8 133 8 4 12
7 233 7 4 11 7 3 233
412 9 3 12
6 9 11 133 11 4 15
8
412 9 3 12 9 2 412
6 12 11 133 11 4 15 11 3 133
9
423 11 3 14
10 6 12 15 423 15 3 18 15 3 423
11 6 12 18 431 6 3 9
IT : 22
WT: 14
MS: 20
205
JOB 1 2 3 4 5 6 7 8 9 10
ti 5 4 5 6 2 9 4 7 1 8
Buktikan bahwa algoritma LPT mampu meminimasi makespan sekaligus Mean
Flowtime.
SOAL II
PT JUJUR ITU GENTLEMEN mempunyai 4 order. Proses tersebut adalah sbb.
Matriks Waktu Matriks Routing
Job\urutan 1 2 3 Job\urutan 1 2 3
1 3 4 2 1 1 2 4
2 4 2 3 2 2 3 4
3 3 4 4 3 1 3 4
4 1 2 5 4 1 2 3
Buat jadwal yang mampu meminimalkan makespan. Hitung waiting dan idle time.
206
Kasus : Penerapan Algoritma Flexible Flow Line Loading untuk Mereduksi WIP
CV. CI merupakan perusahaan furniture dengan bahan baku kayu. Dalam proses
produksi bahan baku akan melewati 3 bagian yaitu bagian pembahanan, bagian milling
produksi dan bagian rakit jadi. Bagian milling produksi hanya digunakan untuk
membentuk kayu log menjadi ukuran komponen. Bagian milling produksi CV. Citra
Indomebel terdiri dari 19 stasiun kerja dimana pada bagian tersebut dilakukan proses
terhadap komponen-komponen produk sebelum komponen tersebut dirakit. Setiap
komponen hanya diproses sekali pada stasiun kerja di bagian milling produksi. Setiap
bulan CV. Citra Indomebel hanya rata-rata menerima 10 order yang harus dikerjakan
pada bagian milling produksi. Order tersebut terdiri dari komponen-komponen yang
memiliki routing sheet berbeda. Namun dengan aliran proses searah dapat dikatakan jika
1 order memiliki 15 komponen maka dengan 10 order yang diterima maka akan terdapat
150 job yang dialokasikan untuk bagian milling produksi.
Keadaaan tersebut menggambarkan flow shop sequencing problem dimana
terdapat n job yang diaplikasikan ke m mesin dengan jumlah maksimal operasi m operasi
yang disebut dengan general flowshop. Selama ini perusahaan menggunakan algoritma
heuristic dalam menyelesaikan masalah flowshop. Permasalahan utama yang sering
dihadapi dalam penjadwalan flow shop adalah untuk menemukan job yang dapat
meminimsi maksimum flow time atau yang disebut dengan makespan. Penjadwalan flow
shop yang akan digunakan menggunakan algoritma genetik untuk meminimasi make span
dalam flow shop sequencing problem yang akan dibandingakan dengan algoritma
heuristik. Tahap-tahap yang dilakukan guna menerapkan algoritma genetik adalah:
1. Menghasilkan populasi random kromosom.
2. Mengevaluasi kekuatan kromosom dalam populasi.
3. Menciptakan populasi baru melalui seleksi, crossover, mutasi dan penerimaan.
4. Menggunakan populasi tersebut untuk menjalankan algoritma.
5. Menguji hasil.
207
Metode representasi kromosom yang digunakan adalah Job-Based
Representation yaitu pemberian kode dalam satu kromosom berdasarkan job. Sesuai
dengan data yang digunakan, terdapat 89 job yang akan dialokasikan ke 19 stasiun kerja,
jadi dalam 1 kromosom akan terdapat 89 gen dengan no 1-89. Prosedur penentuan job
yang dilakukan adalah:
1. Menggabungkan permintaan produk yang sejenis
2. Menggabungkan komponen yang sama baik bentuk maupun ukurannya pada
setiap produk
3. Menentukan jumlah setiap job.
Langkah selanjutnya adalah pembuatan model penjadwalan dengan langkah-langkah
sebagai berikut:
1. Menentukan waktu mulai suatu job pada setiap stasiun kerja yang dilalui dalam
routing produksinya.
2. Menghitung completion time (Ci) setiap job
Cij= Sij+Pij
Dimana: i = Indeks Job
J = Indeks Stasiun Kerja
Cij = Completion time job ke i pada stasiun kerja ke j
Sij = Starting time job ke i pada stasiun kerja ke j
Pij = Processing time job ke i pada stasiun kerja ke j
Langkah selanjutnya adalah perhitungan Cmax (Makespan) guna mengetahui wakku
selesai job yang terlama.
Berdasarkan analisis dan pembahasan diperoleh kesimpulan sebagai berikut:
1. Makespan yang dihasilkan oleh algoritma genetik pada umumnya memberikan
peningkatan performansi apabila dibandingkan dengan makespan yang dihasilkan
oleh algoritma heuristik
2. Nilai makespan terkecil algoritma genetik pada generasi 1 sebesar 462.25 jam
sedangkan nilai makespan dengan menggunakan algoritma heuristik ditunjukkan
pada tabel 1.1 berikut ini:
208
Metode Nilai makespan (jam)
Johnson 557
CDS 471
Dannenbrings 473
Gupta 632
Ho and Chang 471
Hundal and
518
Rajgopals
Palmers 521
Peningkatan Performansi
Metode
(dalam %)
Johnson 28.30%
CDS 15.20%
Dannenbrings 15.56%
Gupta 36.81%
Ho and Chang 15.20%
Hundal and Rajgopals 22.90%
Palmers 23.34%
4. Dari 108 kali pengolahan data dengan 17 setting parameter dan 4 kombinasi
crossover dan mutasi, makespan terkecil yaitu sebesar 399,3913 jam diperoleh
ketika algoritma genetik dijalankan dengan pengaturan parameter sebagai berikut:
Ukuran Populasi = 40
Tingkat Crossover = 0,5
Tingkat Mutasi = 0.5
Jumlah generasi = 150
[Sri Hartini, KRMT Haryo S, Deny ZN ; 2005]
Kasus : Penjadwalan Job Shop dengan Algoritma Hybrid Active Non Delay
209
PT. Maithland Smith Indonesia (MSI) merupakan salah satu industri manufaktur
besar di Jawa Tengah yang memproduksi mebel dengan kualitas ekspor ke kawasan
Amerika. Pada lantai produksi terdapat 5 departemen yaitu Machinery, Part Stock,
Assembly dan Sanding, Finishing, dan Shipping. Departemen machinery kembali terbagi
menjadi 3 Work Center, yaitu Work Center awal Rough Mill, MSI 1 dan MSi 3. Semua
raw material akan melewati work center Rough mill. Selama ini pihak PPIC PT. MSI
melakukan penjadwalan produksi dengan cara mengumpulkan demand secara periodik
selama 1 bulan. Untuk memilih dan menentuka order mana yang akan dikerjakan terlebih
dahulu di lantai produksi, pihak PPIC melakukan Brainstorming dengan pihak customer
service, kemudian dibuat rencana produksi secara mingguan. Rencana produksi
mingguan tersebut dijadikan acuan oleh supervisor work center rough mill dan part stock
untuk dijadikan dispatching list, yaitu urutan order mana yang akan dikerjakan terlebih
dahulu. Sedangkan untuk work center machinery 1 dan 3, Assembly, finishing dan
sanding, dispatching mengikuti order yang dikeluarkan oleh work center rough mill dan
part stock. Supervisor rough mill mengerjakan kompoenen job satu persatu dengan urutan
order sesuai dengan dispatch list yang dikeluarkan oleh PPIC karena tidak adanya
rencana produksi harian, urutan pengerjaan komponen dan loading job pada masing-
masing mesin.
Dari data penelitian awal work center rough mill memiliki sejumlah order yang
waktu penyelesaian pengerjaanya melebihi target(miss target) paling besar. Berdasarkan
situasi dan kondisi yang terjadi di lantai produksi PT. MSI khususnya work center rough
mill, maka diusulkan penggunaan algoritma hybrid Active non-delay schedule adalah
algoritma gabungan jadwal Active dan jadwal non-delay. Pada algoritma ini jadwal disusu
bersasarkan waktu proses penyelesaian paling singkat, memilih dan mengurutkan job
berdasarkan waktu mulai job yang paling awal dengan memperhatikan batasan delay.
Dengan mengadopsi ide dasar spt tersebut, jadwal Active dapat meinimasi mean flow
time yang tentunya ekuivalen dengan meminimasi mean completion time.
Kelebihan dari lagoritma Active schedule adalah memperhatikan precedence job,
melaksanakan operasi sesegera mungkin (non left shift) dan jaminan setidakanya terdapat
suatu solusi optimal dari penjadwalan yang dibangkitkan. Kelebihan jadwal non-delay
adalah tidak membiarkan mesin menunggu bila mesin tersebut sudah dapat mulai
210
memproses operasi, jumlah bangkitan jadwal yang dapat disusun oleh jadwal non-delay
lebih sedikit dari pada jadwal Active. Namun jadwal non-delay tidak memberikan
jaminan solusi penjadwalan akan selalu optimal, hanya memberikan solusi yang
mendekati optimal.
MSI melakukan penjadwalan berdasarkan intuisi, tidak ada prioritas dan
penugasan job/ loading secara langsung terhadap mesin-mesin di setiap work center, serta
pengerjaan order satu per satu sesuai dengan urutan rencana produksi order mingguan.
Sengan sistem penugasan seperti ini terjadi kinerja missed schedule, terutama di work
center rough mill yang memiliki miss order tertinggi yaitu 78.99%. Dari perumusan
masalah tersebut, maka akan dicoba dilakukan pengurutan dan penjadwalan komponen
pada work center rough mill menggunakan algoritma hybrid active-non delay untuk
meminimasi completion time. Job dan order yang akan dijadwalkan hanyalah minggu ke
empat Desember 2004 dan minggu pertama Januari 2005.
Langkah pertama dalam menjadwalkan dengan menggunakan algoritma hybrid
adalah mengumpulkan data komponen maupun order yang akan diproduksi pada minggu
keempat Desember dan minggu pertama Januari 2005. langkah selanjutnya adalah
melakukan penjadwalan dengan menggunakan parameter delay () yang telah ditentukan
(dalam kasus ini 0, 0.5, 0.8, 1 secara manual, dan 0-1 dengan menggunakan software)
untuk mengetahui completion time, make span, dll.
Berikut merupakan hasil perbandingan penjadwalan perusahaan dengan
penjadwalan menggunakan algoritma hybrid:
211
Minggu Hybrid (Komp) 7974.5 4247.5 74.7 13 91.2
keempat =0 iterasi 1
Perusahaan 9480 8813.75 444.375 2 75
Desember
(Order)
2004
Hybrid (order) 7976.5 6669.775 874.8113 5 62.5
=0 iterasi 1
Minggu Perusahaan 21330 15783.5 2454.292 103 28.5
pertama (Komp)
Hybrid (Komp) 14741.6 8704.139 89.73125 8 94.4
Januari 2005
=0 iterasi 2
Perusahaan 21330 17667.3 2908.636 9 18.2
(Order)
Hybrid (Order) 14741.6 11945.64 779.9727 4 63.64
=0 iterasi 2
Hasil :
Secara teoritis penjadwalan dengan menggunakan algoritma hybrid Active-non delay
untuk job shop n x m, dengan mesin pararel di work center rough mill, dapat
mempersingkat rata-rata sekitar 25-40% waktu penyelesaian di rough mill.
212