Anda di halaman 1dari 105

PERENCANAAN PRODUKSI

DAN PENGENDALIAN
Something
PERSEDIAAN as
title goes here.
Meriastuti Ginting
ukrida.ac.id
SUB TOPIK

Penjadwalan Produksi

2
Tujuan Pembelajaran

• Umum
– Mahasiswa mampu menerapkan model matematik,
heuristik dan teknik statistik untuk menganalisis dan
merancang suatu sistem produksi
• Khusus
– Memahami konsep penjadwalan produksi serta
mampu menyusun jadwal produksi

3
Pendahuluan

• Masalah penjadwalan muncul di berbagai macam


kegiatan: rumah sakit, universitas, airline, factory
• Penjadwalan yang dimaksud dibahas adalah untuk
keperluan perencanaan dan pengendalian produksi
Pendahuluan

• Keluaran proses perencanaan tahap akhir ini dalam


bentuk jadwal kerja operasi-operasi manufaktur
pada setiap mesin atau fasilitas
• Kapan (time) dan dimana (resource) operasi-operasi
manufaktur dilakukan
Tujuan Penjadwalan

• Meningkatkan penggunaan sumber daya atau mengurangi waktu


tunggu sehingga produktivitas meningkat
• Mengurangi persediaan barang setengah jadi
• Mengurangi beberapa kelambatan pekerjaan
• Membantu pengambil keputusan mengenai perencanaan kapasitas
pabrik
Model Penjadwalan
Single machine
Single stage
Parallel/heterogeneous
Penjadwalan Job machines

Flow shop
Multiple stages
Job shop
Batch
Model Penjadwalan

• Job scheduling (memecahkan masalah sequencing


saja, karena ukuran job telah diketahui)
– n jobs on 1 processor
– n jobs on m-parallel processors Single Stage

– Flow shop scheduling


Multiple Stage
– Job shop scheduling
Model Penjadwalan

• Batch scheduling (memecahkan masalah penentuan


ukuran batch dan masalah sequencing secara simultan)
• Tipe produksi batch akan diwakili oleh metode Runout
time
Pendekatan

Backward scheduling (penjadwalan mundur):


Forward scheduling(penjadwalan maju): penjadwalan
penjadwalan mulai dari due date dan bergerak
yang dimulai segera setelah saat job siap; mulai dari time
berlawanan arah dengan arah pergerakan waktu.
zero dan bergerak searah dengan pergerakan waktu.
Jadwal pasti memenuhi due date tapi mungkin tidak
Jadwal pasti feasible tapi mungkin melebihi due date
feasible

10
Terminologi
• Processing time (waktu proses): estimasi waktu
penyelesaian pekerjaan (termasuk setup dan
finishing time), ti
• Setup time (waktu setup): waktu yang dibutuhkan
untuk kegiatan persiapan sebelum pemrosesan job
dilaksanakan. si

11
Terminologi
• Flow time (waktu tinggal/alir): waktu antara saat datang (pekerjaan
tersedia/dapat dimulai) dan saat kirim (pekerjaan selesai) (termasuk
waktu menunggu), Fi
– Saat datang adalah saat job mulai berada di shop floor (production line), ai
– Delivery date (saat kirim): saat pengiriman job dari shop floor ke proses
berikut atau ke konsumen, di

12
Terminologi
• Ready time (saat siap): saat sebuah job siap diproses.
• Due date: saat batas (deadline) untuk job, yang
setelah batas tersebut job dinyatakan terlambat, di
• Makespan: interval waktu total untuk penyelesaian
seluruh job

13
Terminologi
• Completion time (saat selesai): saat suatu job selesai
diproses, ci
• Lateness: deviasi antara saat selesai dan due date, Li = ci - di
• Tardiness (Ti): positive lateness.
• Earliness (Ei): negative lateness

14
Terminologi
• Slack: sisa waktu sampai due date, SLi = di - ti – saat sekarang
• Gantt chart: adalah peta visual yang menggambarkan loading
dan scheduling
– Loading menggambarkan beban mesin
– Schedule menggambarkan urutan (sequence) pemrosesan job, dan
menggambarkan saat dimulai dan saat selesai suatu pekerjaan

15
Terminologi
• Dalam bidang penelitian scheduling, schedule dan
sequence biasanya mempunyai pengertian yang dapat
dipertukarkan (schedule = sequence)
• Waiting time adalah waktu job menunggu karena mesin
yang seharusnya memproses job tersebut sedang
memproses job lain

16
Terminologi
• Idle time : waktu mesin tidak bekerja/menganggur karena
tidak ada job yang harus diproses
• Priority rules: aturan penentuan prioritas pemrosesan
– FCFS (first come first serve);
– SPT (shortest processing time),
– LPT (longest processing time),
– EDD (earliest due date);
– Rasio kritis (critical ratio, CR).
CR = (due date – today’s date)/(lead time remaining) atau CR = (due
date – today’s date)/(workdays remaining)
17
Terminologi
• Kriteria penjadwalan :
– Minimasi shop time: flow time, makespan
– Maksimasi utilization (minimasi idle time)
– Minimasi WIP   (work in process): Minimasi flow time, minimasi
earliness
– Minimasi customer waiting time: number of tardy jobs, mean lateness,
maximum lateness, mean queue time

18
KRITERIA PENJADWALAN
• Make Span
n
Ms   ti
i 1
• Mean Flow Time

n
1 1
F   Fi   nt1  ( n  1)t 2  ...  2(t n 1 )  t n 
n i 1
• Mean Lateness n

n
1
L   Li
n i 1
19
KRITERIA PENJADWALAN
• Mean Tardiness
n
1
T   Ti
• Number ofnTardy
i 1Jobs

dimana :
δi = 1Njikai T
i>0 i
δi = 0 jika Ti ≤ 0

20
PENJADWALAN BATCH
• Kuantitas dari batch dan frekuensi produksi akan mempengaruhi
tingkat persediaan dan biaya set up
• Biaya set up terjadi setiap ada pergantian pembuatan produk baru
• Dengan production run yang lebih panjang dibutuhkan persediaan
lebih panjang tetapi dengan setup lebih sedikit.
• Kuantitas batch optimal : EPQ

21
PENJADWALAN BATCH
•Teknik penjadwalan Runout Time (R)

Tingkat persediaan
R
Kecepapanjangnya
•Runout Time merupakan tan per min
waktu dari taan
persediaan akan tersedia untuk
memenuhi permintaan
•Jadwalkan produk dengan R paling kecil pertama sekali

22
PENJADWALAN BATCH
• Misalkan suatu perusahaan memproduksi 5 ukuran cairan
pembersih lantai untuk perusahaan CS suatu pabrik. Ukuran lot
ekonomis dan permintaan sbb :
Ukuran ELS Waktu Prod Permintaan Persediaan skrg
(mgu) (unit/mgu)
Kecil 1000 1.2 250 800
Medium 800 0.8 300 600
Besar 1500 1.9 500 2000
Jumbo 1800 2.0 800 2500
Raksasa 600 1.0 300 525

23
PENJADWALAN BATCH
Ukuran ELS Waktu Prod Permintaan Persediaan Runout
(mgu) (unit/mgu) skrg Time (R)

Kecil 1000 1.2 250 800 3.2


Medium 800 0.8 300 600 2.0
Besar 1500 1.9 500 2000 4.0
Jumbo 1800 2.0 800 2500 3.125
Raksasa 600 1.0 300 525 1.75

24
PENJADWALAN BATCH

Jadwalkan terlebih dahulu Raksasa dengan ukuran lot 600,


waktu yang dibutuhkan 1 minggu. Setelah 1 mgu
persediaan menjadi :
Ukuran ELS Permintaan Persediaan Persediaan
(unit/mgu) awal skrg

Kecil 1000 250 800 800-250(1)=550


Medium 800 300 600 600-300(1)=300
Besar 1500 500 2000 2000-500(1)=1500
Jumbo 1800 800 2500 2500-800(1)=1700
Raksasa 600 300 525 525+600-300(1)=825

25
PENJADWALAN BATCH

Gunakan tingkat persediaan baru untuk menghitung R dan


memilih R terkecil untuk diproduksi selanjutnya :
Ukuran ELS Permintaan Persediaan Runout
(unit/mgu) skrg Time (R)

Kecil 1000 250 800-250(1)=550 2.2


Medium 800 300 600-300(1)=300 1.0
Besar 1500 500 2000-500(1)=1500 3.0
Jumbo 1800 800 2500-800(1)=1700 2.125
Raksasa 600 300 525-300(1)=825 2.75

26
PENJADWALAN JOB
• Penjadwalan job shop melibatkan aturan-aturan
prioritas sequencing yang diaplikasikan untuk
seluruh job yang sedang menunggu dalam antrian.
Bila pusat kerja telah lowong, maka job dengan
prioritas terdahulu akan diprioritaskan
• Pemilihan prioritas mempertimbangkan efisiensi
penggunaan fasilitas dengan kriteria al: biaya setup,
biaya persediaan WIP, waktu menganggur, rata-rata
jumlah job yang menunggu dsb
27
Penjadwalan n jobs pada single machine

KASUS TANPA DUE DATE


• Aturan SPT (shortest processing time) untuk
meminimumkan waktu tinggal (flow time) rata-
rata:
• Langkah-langkah :
– Urutkan pekerjaan mulai dari ti terkecil
– Jadwalkan sesuai urutan
t 1
– Hitung waktu  t  2
tinggal ...  t  n 1  t  n
28
Penjadwalan n jobs pada single machine

Waktu Waktu Flow time


Job Job
proses proses
1 5 4 3 3
2 8 8 3 6
3 6 1 5 11
4 3 3 6 17
5 10 7 7 24
6 14 2 8 32
7 7 5 10 42
8 3 6 14 56
F 191
F 23.875

Urutan yang dihasilkan: 4-8-1-3-7-2-5-6


Flow time rata-rata: 23,875
29
Penjadwalan n jobs pada single machine

Waktu
Job Flow time
proses
4 3 3
8 3 6 Makespan = 56
1 5 11
3 6 17
7 7 24 4 8 1 3 7 2 5 6
2 8 32
5 10 42
6 14 56
Total 191
Rata-rata 23.875
Gantt chart

30
Penjadwalan n jobs pada single machine

• Aturan WSPT (Weighted shortest processing time):


• Bila terdapat n jobs yang akan diproses di sebuah
mesin dan setiap job mempunyai bobot Wi, maka
rata-rata flow time akan minimum bila job
tersebut diurut menurut:

t1 t 2  t n 1 t n 
  ...  
W1 W 2  W n 1 W n 
31
Penjadwalan n jobs pada single machine

• Aturan WSPT
• Langkah-langkah :
– Beri bobot masing-masning pekerjaan (wi)
– Hitung nilai (ti/wi)
– Urutkan pekerjaan mulai dari (ti/wi) terkecil
– Jadwalkan sesuai urutan
– Hitung waktu tinggal
32
Penjadwalan n jobs pada single machine

Waktu ti Job Bob Waktu Flow time


Weighted
Job Bobot Flow time
proses Wi
3 3 6 6 18
1 5 1 5 4 1 3 9 9
2 8 2 4 8 1 3 12 12
3 6 3 2 7 2 7 19 38
4 3 1 3 2 2 8 27 54
5 10 2 5 6 3 14 41 123
1 1 5 46 46
6 14 3 4.7
5 2 10 56 112
7 7 2 3.5 Total 15 Total 216 412
8 3 1 3 Rata-rata 27 27.46667

Urutan yang dihasilkan: 3-4-8-7-2-6-1-5


Flow time rata-rata: 27,0
Flow time tertimbang rata-rata: 27,46667

33
Penjadwalan n jobs pada single machine

KASUS DENGAN DUE DATE


• Aturan SPT (shortest processing time) untuk
meminimumkan mean lateness
• Langkah-langkah :
– Urutkan pekerjaan mulai dari ti terkecil
– Jadwalkan sesuai urutan
– Hitung kelambatan

34
Penjadwalan n jobs pada single machine

Job Waktu Due date


1 5 15
2 8 10
3 6 15
4 3 25
5 10 20
6 14 40
7 7 45
8 3 50
35
Penjadwalan n jobs pada single machine
Saat Latenesss
Job Waktu Due date
Selesai c-d
4 3 25 3 -22
8 3 50 6 -44
1 5 15 11 -4
3 6 15 17 2
7 7 45 24 -21
2 8 10 32 22
5 10 20 42 22
6 14 40 56 16
Total -29
Rata-rata -3.625

36
Maximum lateness : 22
Penjadwalan n jobs pada single machine
• Aturan EDD (earliest due date)
• Aturan EDD meminimumkan maximum lateness
pada sebuah mesin
• Langkah-langkah :
– Urutkan pekerjaan mulai dari di terkecil
– Jadwalkan sesuai urutan
– Hitung kelambatan
37
Penjadwalan n jobs pada single machine
Saat Latenesss
Job Waktu Due date
Selesai c-d
2 8 10 8 -2
1 5 15 13 -2
3 6 15 19 4
5 10 20 29 9
4 3 25 32 7
6 14 40 46 6
7 7 45 53 8
8 3 50 56 6
Total 36
Rata-rata 4.5
Maximum lateness : 9
38
Penjadwalan n jobs pada single machine
• Algoritma Hodgson meminimumkan jumlah job
yang tardy pada sebuah mesin
• Asumsi : waktu terlambat dan denda tidak
dipengaruhi

39
Penjadwalan n jobs pada single machine
• Algoritma Hodgson
• Langkah-langkah :
– Step 1. Urut semua job sesuai EDD; bila tidak ada atau
hanya satu job yang tardy (positive lateness) maka stop.
Bila lebih dari sebuah maka lanjutkan ke Step 2
– Step 2. Mulai dari awal sampai akhir job pada urutan EDD,
identifikasi tardy job yang paling awal. Bila tidak ada tardy
job maka lanjutkan ke Step 4. Bila ada, maka lanjutkan ke
Step 3
40
Penjadwalan n jobs pada single machine
• Algoritma Hodgson
– Step 3. Misal tardy job tersebut berada di urutan ke i.
Pilih job yang mempunyai waktu proses terpanjang di
antara i buah job tersebut. Keluarkan job terpilih
tersebut. Hitung saat selesai yang baru, dan kembali ke
Step 2.
– Step 4. Tempatkan job yang dikeluarkan di ujung
belakang urutan

41
Penjadwalan n jobs pada single machine
i 2 1 3 5 4 6 7 8
ti 8 5 6 10 3 14 7 3
ci 8 13 19 29 32 46 53 56
di 10 15 15 20 25 40 45 50
Li -2 -2 4 9 7 6 8 6

i 1 3 5 4 6 7 8
ti 5 6 10 3 14 7 3
ci 5 11 21 24 38 45 48
di 15 15 20 25 40 45 50
Li -10 -4 1 -1 -2 0 -2

42
Penjadwalan n jobs pada single machine
i 1 3 4 6 7 8
ti 5 6 3 14 7 3
ci 5 11 14 28 35 38
di 15 15 25 40 45 50
Li -10 -4 -11 -12 -10 -12

i 1 3 4 6 7 8 2 5
ti 5 6 3 14 7 3 8 10
ci 5 11 14 28 35 38 46 56
di 15 15 25 40 45 50 10 20
Li -10 -4 -11 -12 -10 -12 36 36

Jumlah tardy job: 2


Rata-rata lateness adalah 1,625, dan maximum lateness adalah 36
43
Penjadwalan n jobs pada single machine
Aturan Slack
• Slack : selisih antara batas waktu penyelesaian
pekerjaan dengan waktu proses pekerjaan tersebut
(kelonggaran yang dimiliki oleh pekerjaan ybs)
• Pekerjaan dengan kelonggaran yang sedikit harus
dijadwalkan terlebih dahulu

44
Penjadwalan n jobs pada single machine
Job Waktu DD Slack
1 5 15 10
2 8 10 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

Hasil penjadwalan : 2-3-1-5-4-6-7-8


45
Penjadwalan n jobs pada single machine
Job Waktu CT DD Lateness
2 8 8 10 -2
3 6 14 15 -1
1 5 19 15 -1
5 10 29 20 9
4 3 32 25 7
6 14 46 40 6
7 7 53 45 8
8 3 56 50 6

Hasil penjadwalan : 2-3-1-5-4-6-7-8


46
Penjadwalan n jobs pada single machine
• Algoritma Wilkerson dan Irwin meminimumkan
rata-rata keterlambatan pada sebuah mesin
• Jika waktu terlambat dan denda ditentukan

47
Penjadwalan n jobs pada single machine
Algoritma Wilkerson dan Irwin
1. Urutkan pekerjaan dengan urutan EDD. Bandingkan 2 job
pertama masing-masing diberi simbol A dan B kemudian
bandingkan kedua job tersebut dengan syarat : Max
(ta,tb) ≤ Max (da,db). Jika kondisi ini benar maka
masukkan A ke kolom α dan B ke kolom β jika tidak maka
sebaliknya. Pekerjaan ketiga dalam urutan EDD
ditempatkan pada kolom δ.
48
Penjadwalan n jobs pada single machine
Algoritma Wilkerson dan Irwin
2. Bandingkan β dan δ untuk melihat apakah β akan dapat
dijadwalkan bersama α. Jika tβ ≤ tδ atau Fα + max {tβ,tδ}
≤ max {dβ,dδ} pindahkan pekerjaan di kolom β ke kolom α
artinya pekerjaan itu sudah dijadwalkan, pekerjaan yang
ada di kolom δ dipindahkan ke kolom β. Selanjutnya
pekerjaan dalam daftar EDD dimpatkan di kolom δ. Jika
tidak ada lagi ke langkah 5. Jika ada ulangi langkah 2. Jika
kedua kondisi tidak terpenuhi ke langkah 3
49
Penjadwalan n jobs pada single machine
Algoritma Wilkerson dan Irwin
3. Kembalikan pekerjaan di kolom β ke dalam EDD dan
pindahkan pekerjaan di kolom δ ke kolom β. Bandingkan
α dan β apakah β akan dijadwalkan bersama α. Jika tα ≤
tβ atau Fα - tα + max {tα,tβ}≤ max {dα ≤ dβ} pindahkan
pekerjaan di kolom β ke kolom α dan pilih 2 pekerjaan
berikutnya dalam EDD sebagai β dan δ baru. Ulangi
langkah 2 jika kondisi diatas tidak terpenuhi ke langkah 4.
50
Penjadwalan n jobs pada single machine
Algoritma Wilkerson dan Irwin
4. Pindahkan pekerjaan di kolom α ke EDD dan
tempatkan pekerjaan terakhir yang masuk ke
dalam jadwal sebagai α baru. Ke langkah 3. Jika
tidak ada pekerjaan yang telah dijadwalkan,
letakkan β ke dalam jadwal dan 2 pekerjaan
pertama EDD menjadi β dan δ. Ke langkah 2.
51
Penjadwalan n jobs pada single machine
Algoritma Wilkerson dan Irwin
5. Bandingkan hasil penjadwalan dengan
menggunakan jadwal inisial yang lain yang
dimasukkan ke dalam W & I. Pilih jadwal yang
memberikan keterlambatan rata-rata minimum.

52
Penjadwalan n jobs pada single machine
Perbandingan perfomansi scheduling rule
Mean Flow Weighted Mean Maximum No. of Mean
Rule Time Mean Flow Lateness Lateness Tardy Tardiness
Time Jobs
SPT 23,875 29 -3,625 22 4 7,75
WSPT 27 27,467 -0.5 36 4 10,625
EDD 32 31733 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

53
Penjadwalan n jobs, parallel machines
• Algoritma meminimkan mean flow time pada
mesin paralel
– Step 1. Urut semua jobs dengan urutan SPT
– Step 2. Jadwalkan job tersebut satu per satu pada
mesin yang memiliki beban minimum. Bila beban
mesin sama, pilih sembarang mesin

54
Penjadwalan n jobs, parallel machines
Sebuah perusahaan harus menjadwalkan 10 pekerjaan pada 3
mesin yang dimiliki, masing-masing pekerjaan tidak
tergantung dan cukup dikerjakan pada satu mesin
i 1 2 3 4 5 6 7 8 9 10
ti 5 6 3 8 7 2 3 5 4 2
Urutan SPT

i 6 10 3 7 9 1 8 2 5 4
ti 2 2 3 3 4 5 5 6 7 8
55
Penjadwalan n jobs, parallel machines
i 6 10 3 7 9 1 8 2 5 4
ti 2 2 3 3 4 5 5 6 7 8

M3 3 1 5

M2 10 9 2

M1 6 7 8 4

56
Penjadwalan n jobs, parallel machines

M1 M2 M3
Job Waktu Flow time Job Waktu Flow time Job Waktu Flow time
6 2 2 10 2 2 3 3 3
7 3 5 9 4 6 1 5 8
8 5 10 2 6 12 5 7 15
4 8 18
Total 35 20 26
Rata-rata 8.75 6.666667 8.666667

Rata-rata flow time: 8,01


Makespan: 18
57
Penjadwalan n jobs, parallel machines

• Algoritma untuk Minimasi Makespan dan Mean Flow Time


• Langkah-langkah algoritma adalah:
– Langkah 1: Urutkan pekerjaan menurut aturan LPT (Longest
Processing Time)
– Langkah 2: Dari daftar urutan tersebut, bebankan satu per satu
pekerjaan pada mesin yang paling sedikit mempunyai beban waktu
pekerjaan terjadwal
– Langkah 3: Setelah semua pekerjaan terjadwalkan pada mesin-
mesin, balik urutan pengerjaan pada setiap mesin dengan aturan
58
SPT (Shortest Procesing Time)
Contoh
• Contoh penjadwalan yang sama dengan persoalan
sebelumnya
• Dengan aturan LPT diperoleh urutan pengerjaan sbb:

• 4 – 5 – 2 – 1 – 8 – 9 – 3 – 7 – 6 – 10

• Langkah 1 membebankan pada mesin


• Langkah 2 membalik urutan pada setiap mesin

59
Langkah 2 Contoh
M e s in 3 2 1 3 10

M e s in 2 5 8 7

M e s in 1 4 9 6

2 4 6 10 18
60
Langkah 3 Contoh
M e s in 3 10 3 2 1

M e s in 2 7 8 5

M e s in 1 6 9 4

2 4 6 10 18

61
Penjadwalan n jobs, parallel machines
• Algoritma untuk mengurangi maksimum
kelambatan
• Langkah-langkah algoritma adalah:
– Langkah 1: Urutkan pekerjaan menurut aturan EDD
(Earliest Due Date)
– Langkah 2: Jadwalkan hasil EDD pada masing-masing
prosessor secara berurutan
62
Penjadwalan n jobs, parallel machines
Pekerjaan Wkt Proses Due Date Slack
Ti (jam) (Di) (Sli)
1 5 8 3
2 6 9 3
3 3 14 11
4 8 12 4
5 7 11 4
6 2 5 3
7 3 8 5
8 5 10 5
9 4 15 11
10 2 7 5

63
Urutan EDD : 6-10-1-7-2-8-5-4-3-9
Penjadwalan n jobs, parallel machines
Langkah 2

Mesin 3 1 8 3

Mesin 2 10 2 4

Mesin 1 6 7 5 9

2 4 6 8 10 14 16
Penjadwalan n jobs, parallel machines

Pekerjaan Waktu Completion Due Date Lateness


Proses Time
Mesin 1
6 2 2 5 -3
7 3 5 8 -3
5 7 12 11 1
9 4 16 15 1

Mesin 2
10 2 2 7 -5
2 6 8 9 -1
4 8 16 12 4
Mesin 3
1 5 5 8 -3
8 5 10 10 0
3 3 13 14 -1
Penjadwalan n jobs, parallel machines
Kesimpulan
Mesin 1 :
Kelambatan (L>0) : 2 buah (5&9) masing2 satu
jam
Mesin 2 :
Kelambatan (L>0) : satu buah (4) slma 4 jam
Mesin 3 :
Kelambatan (L>0) : tidak ada (berarti tidak ada
pekerjaan terlambat
Penjadwalan n jobs, parallel machines
• Algoritma untuk meminimalkan jumlah pekerjaan yang
terlambat
• Langkah-langkah algoritma adalah:
– Langkah 1: Urutkan pekerjaan menurut aturan EDD dan jadwalkan pada
masing-masing mesin secara berurutan
– Langkah 2: Pada masing2 mesin revisi pekerjaan dari awal sampai
pekerjaan terlambat (mis pek i pada mesin j)
– Langkah 3: Lihat mesin j dan waktu masing2 pekerjaan. Pindahkan
pekerjaan i dan sesudahnya dengan mengurutkan berdasarkan waktu
67 proses tercepat pada mesin yang sama.
Penjadwalan n jobs, parallel machines
Dari perhitungan terlihat mesin 1 dan 2 masing-masing
mempunyai pekerjaan terlambat yaitu pekerjaan 4, 5
dan 9.
Mesin 2 sudah berurutan berdasarkan waktu prosesnya
sehingga tidak dapat direvisi
Mesin 1, urutan pekerjaan dapat diubah menjadi 6-7-9-
5. karena waktu proses pekerjaan 9<5
Penjadwalan n jobs, parallel machines
Langkah 2

Mesin 3 1 8 3

Mesin 2 10 2 4

Mesin 1 6 7 9 5

2 4 6 8 10 14 16
Penjadwalan n jobs, parallel machines

Pekerjaan Waktu Completion Due Date Lateness


Proses Time
Mesin 1
6 2 2 5 -3
7 3 5 8 -3
9 4 9 15 -6
5 7 16 11 5

Kesimpulan :
Kelambatan 1 buah (pekerjaan 5) selama 5 jam.
Sehingga total pekerjaan menjadi 2 buah, pada mesin 1 dan
2 masing-masing 1 buah
Penjadwalan n jobs, serial machines
• Kriteria: minimasi makespan
– Flow shop 2 mesin: Algoritma Johnson (1956)
– Flow shop m mesin: Algoritma Campbell, Dudek dan Smith (CDS)
• Urutan pemrosesan n job di seluruh mesin sama
• Panjang makespan ditentukan dengan membuat Gantt chart
untuk jadwal terpilih: Setiap job hanya diproses di satu mesin
pada saat yang sama, dan setiap mesin hanya memproses
sebuah job pada saat yang sama

71
1. Algoritma Johnson
Tentukan waktu proses yang terpendek di antara seluruh job
dalam daftar job yang akan diproses
2. a. Bila waktu proses terpendek berada di mesin M1, maka
jadwalkan job dengan waktu terpendek itu pada posisi paling
kiri pada urutan yang dimungkinkan, dan lanjutkan ke Step 3.
b. Bila waktu proses terpendek berada di mesin M2, maka
jadwalkan job dengan waktu terpendek itu pada posisi paling
kanan pada urutan yang dimungkinkan, dan lanjutkan ke Step
3.

72
Algoritma Johnson

c. Bila terdapat beberapa nilai waktu proses terpendek, maka


pilih sembarang; dan jadwalkan job dengan waktu proses
terpilih di posisi paling kiri atau kanan sesuai dengan
keberadaan waktu proses terpilih tersebut.
3. Keluarkan job yang sudah dijadwalkan dari daftar job. Bila
masih ada job yang belum dijadwalkan, maka kembali ke
Step 1. Bila seluruh job sudah dijadwalkan maka stop.

73
Algoritma Johnson

Job Job1 Job2 Job3 Job4 Job5


tj1 3 5 1 6 7
tj2 6 2 2 6 5

Job3 Job1 Job4 Job5 Job2 M=24


3
1 4 5 2

3 1 4 5 2
24

74
Algoritma Campbell-Dudek-Smith (CDS)

• Pengembangan aturan Johnson


• Digunakan untuk flow shop dengan jumlah mesin
m>2
• Rute proses tetap, dari mesin 1, mesin 2, …. mesin
n

75
Algoritma Campbell-Dudek-Smith (CDS)

Algortima:
I. Tetapkan K=1; buat dua mesin semu dengan waktu
proses ti,1 dan tKi,2 dengan cara:
* *
K
t *
i ,1   ti , k t *
i,2  t i , m  k 1
k 1 k 1

II. Urutkan pekerjaan dengan aturan Johnson dan hitung


makespan
III. Jika K=(m-1) berhenti; cari urutan dengan makespan
76
terpendek. Jika tidak K=K+1, kembali ke langkah I.
Pekerjaan
i
Contoh: t
ti,1 i,2 ti,3

1 4 3 5
2 3 3 4
3 2 1 6
4 5 3 2
5 6 4 7
6 1 8 3
Pekerjaan
i K=1 K=2
t*i,1 t*i,2 t*i,1 t*i,2
1 4 5 7 8
2 3 4 6 7
3 2 6 3 7
4 5 2 8 5
5 6 7 10 11
6 1 3 9 11
77
Contoh
• Untuk K = 1 :
– Urutan yang terbentuk : 6 – 3 – 2 – 1 – 5 – 4
– Makespan adalah: 36 satuan waktu
• Untuk K = 2
– Urutan yang terbentuk : 3 – 2 – 1 – 6 – 5 – 4
– Makespan adalah: 33 satuan waktu

Dengan demikian penjadwalan mengikuti urutan:


78 yang kedua: 3 – 2 – 1 – 6 – 5 – 4
Job shop scheduling(1)
• Flow shop: aliran kerja unidirectional
• Job shop: aliran kerjaNew
tidak
jobsunidirectional

In process jobs In process jobs


Mk

Completed jobs

79
Job shop scheduling(2)

• Flow shop: Indeks (i, j)


Waktu proses
Job M1 M2 … Mm
tij: Waktu proses job i di mesin j J1 … … … …
J2 … … … …
… … …


Jn … … …
• Job shop: Indeks (i, j, k)

job operasi mesin


tijk Waktu operasi ke j untuk pemrosesan job i di mesin k
80
Job shop scheduling(2)

Waktu Proses Routing


Operasi 1 Operasi 2 Operasi 3 Operasi 1 Operasi 2 Operasi 3
Job J1 4 3 2 Job J1 1 2 3
Job J2 1 4 4 Job J2 2 1 3
Job J3 3 2 3 Job J3 3 2 1
Job J4 3 3 1 Job J4 2 3 1

t233 = 4 t31…3 = 3 1= t431

81
Geser-kiri (left-shift)

• Geser-kiri lokal (local left-shift)


penyesuaian (menjadi lebih cepat) saat mulai (start time)
suatu operasi dengan tanpa mengubah urutan
• Geser-kiri global (global left-shift)
penyesuaian sehingga suatu operasi dimulai lebih cepat
tanpa menyebabkan delay operasi lain

82
Jenis jadwal pada job shop(1)

1. Jadwal semiaktif
– adalah satu set jadwal yang tidak memungkinkan lagi
untuk melakukan geser-kiri lokal
– adalah satu set jadwal yang tidak memiliki superfluous
idle time
Superfluous idle time terjadi pada jadwal yang apabila suatu
operasi dimulai lebih awal tidak menyebabkan perubahan
urutan pada mesin manapun

83
Jenis jadwal pada job shop(1)
Waktu Proses Routing
Operasi 1 Operasi 2 Operasi 3 Operasi 1 Operasi 2 Operasi 3
Job J1 4 3 2 Job J1 1 2 3
Job J2 1 4 4 Job J2 2 1 3
Job J3 3 2 3 Job J3 3 2 1
Job J4 3 3 1 Job J4 2 3 1

Misal urutan job adalah 4-3-2-1:

M1 4 3 2 1

M2 4 3 2 1

M3 4 3 2 1

84
Jenis jadwal pada job shop(2)

Geser-kiri lokal tidak bisa dilakukan (menggeser saat mulai tanpa


mengubah urutan)
Saat mulai operasi (1,1,1) bisa dilakukan tanpa menyebabkan delay
pada operasi lain (tapi harus mengubah urutan)
1
M1 4 1 3 2 1
1
M2 4 3 2 1 1

M3 4 3 1 2 1
1
85
Jenis jadwal pada job shop(3)

2. Jadwal Aktif
adalah satu set jadwal yang tidak memungkinkan lagi
untuk melakukan geser-kiri global

3. Jadwal non-delay
adalah jadwal aktif yang tidak membiarkan mesin menjadi
idle bila suatu operasi dapat dimulai

86
Jenis jadwal pada job shop(4)
All schedule
* SA = semiactive
SA A * A = active
ND
ND = non-delay
* = optimal

87
Algoritma Pembangkitan Jadwal Aktif(1)
PSt = Jadwal parsial yang terdiri t buah operasi terjadwal
St = Set operasi yang dapat dijadwalkan pada stage t, setelah
diperoleh PSt j  St
t = Waktu tercepat operasi j  S tdimulai
dapat
t = Waktu tercepat operasi dapat diselesaikan

Berikut adalah algoritma untuk mendapatkan/mem-bangkitkan


salah satu jadwal aktif

88
Algoritma Pembangkitan Jadwal Aktif(2)

Step 1. Tentukan t=0, dan kemudian mulai dengan PS0 sebagai


jadwal parsial nol. Tentukan seluruh operasi tanpa
  min jS  j 
*
predecessor sebagai S0. t

Step 2. Tentukan dan mesin m


j  St yaitu mesin
*

tempat * dapat direalisasikan   j


*

Step 3. Untuk setiap operasi yang membutuhkan


mesin m dan berlaku
*
, buat jadwal parsial baru
dengan menambahkan operasi j pada PSt dengan saat mulai
operasi pada j 89
Algoritma Pembangkitan Jadwal Aktif(3)

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
– Tambahkan suksesor langsung operasi j ke dalam St+1
– Naikkan nilai t dengan 1
Step 5. Untuk setiap PSt+1 yang dihasilkan pada Step 3, kembali ke Step 2.
Lanjutkan langkah-langkah ini sampai suatu jadwal aktif dihasilkan.

90
Jadwal Aktif(1)

Mesin
Stage 1 2 3 st j tij j * m* PSt

0 0 0 0 111 0 4 4 212
212 0 1 1 1 2
313 0 3 3
412 0 3 3
1 0 1 0 111 0 4 4 313
221 1 4 5
313 0 3 3 3 3
412 1 3 4

91
Jadwal Aktif(2)
Mesin
Stage 1 2 3 st j tij j * m* PSt

2 0 1 3 111 0 4 4 4 1 111
221 1 4 5
322 3 2 5
412 1 3 4
3 4 1 3 122 4 3 7 412
221 4 4 8
322 3 2 5
412 1 3 4 4 2

92
Jadwal Aktif(3)
Mesin
Stage 1 2 3 st j tij j * m* PSt

4 4 4 3 122 4 3 7 322
221 4 4 8
322 4 2 6 6 2
423 4 3 7
5 4 6 3 122 6 3 9 423
221 4 4 8
331 6 3 9
423 4 3 7 7 3

93
Jadwal Aktif(4)
Mesin
Stage 1 2 3 st j tij j * m* PSt

6 4 6 7 122 6 3 9 221
221 4 4 8 8 1
331 6 3 9
431 7 1 8
7 8 6 7 122 6 3 9 431
233 8 4 12
331 8 3 11
431 8 1 9 9 1

94
Jadwal Aktif(5)

Mesin
Stage 1 2 3 st j tij j * m* PSt

8 9 6 7 122 6 3 9 122
233 8 4 12 8 1
331 9 3 12
9 9 9 7 133 9 2 11 11 3 133
233 8 4 12
331 9 3 12

95
Jadwal Aktif(6)

Mesin
Stage 1 2 3 st j tij j * m* PSt

10 9 9 11 233 11 4 15 331
331 9 3 12 12 1
11 12 9 11 233 11 4 15 15 3 233
12 9 15

96
Jadwal Aktif(7)

M3 313 423 133 233

M2 412 322 122


212
M1 111 221 331
431

97
Algoritma Pembangkitan Jadwal Non-delay(1)

Step 1. Tentukan t=0, dan kemudian mulai dengan PS0 sebagai


jadwal parsial nol. Tentukan seluruh operasi tanpa
  min jS  j 
*
predecessor sebagai S0. t

Step 2. Tentukan dan mesin m


j  St yaitu
*
mesin
tempat  * dapat direalisasikan   *
j

Step 3. Untuk setiap operasi yang membutuhkan


mesin m dan berlaku
*
, buat jadwal parsial baru
dengan menambahkan operasi j pada PSt dengan saat mulai
operasi pada j 98
Algoritma Pembangkitan Jadwal Non-delay (2)

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
– Tambahkan suksesor langsung operasi j ke dalam St+1
– Naikkan nilai t dengan 1
Step 5. Untuk setiap PSt+1 yang dihasilkan pada Step 3, kembali
ke Step 2. Lanjutkan langkah-langkah ini sampai seluruh
jadwal aktif dihasilkan.
99
JADWAL NON DELAY ATURAN PRIORITAS SPT
Stage Mesin
1 2 3 St Cj tij rj C* m* PSt
0 0 0 0 111 0 4 4 0 1 111
212 0 1 1 2 212
313 0 3 3 3 313
412 0 3 3
1 4 1 3 122 4 3 7 412
221 4 4 8
322 3 2 5
412 1 2 4 1 2
2 4 4 3 122 4 3 7 221
221 4 4 8 4 1 322
322 4 2 6 2 423
423 4 3 7 3
100
Stage Mesin
1 2 3 St Cj tij rj C* m* PSt
3 8 6 7 122 6 3 9 6 2 122
233 8 4 12
331 8 3 11
431 8 1 9
4 8 9 7 133 9 2 11 233
233 8 4 12 8 3 431
331 8 3 11
431 8 1 9
5 9 9 12 133 12 2 14 331
331 9 3 12 9 1
6 12 9 12 133 12 2 14 12 3 133
101
HASIL PENJADWALAN NON DELAY

Mesin 1 313 423 233 133


3 4 7 8 12 14
Mesin 2 212 412 322 122
1 4 6 9
Mesin 3 111 221 431 331
4 8 9 12

102
Daftar Pustaka
• Steven Nahmias, Production and Operation
Analysis, 7th Edition, McGraw Hill, 2008
• Ronald G. Askin and Jeffery B. Goldberg, Design
and Analysis of Lean Production Systems, John
Willey and Sons, 2002.
• Sipper & Bulfin Jr., Production Planning, Control,
and Integrations, McGraw Hill, 1997
Engineers Make Things,
Industrial Engineers Make
Things Better......

Thank You
ukrida.ac.id

McShane/Von Glinow OB 3e © 2005 The McGraw-Hill Companies, Inc. All rights reserved.

Anda mungkin juga menyukai