Jurusan Teknik Industri, Universitas Andalas TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan 14,15,16 TIN 218 Perencanaan dan Pengendalian Produksi Pertemuan 14,15,16: Penjadwalan (Scheduling) Jurusan Teknik Industri Universitas Andalas
Slide 1TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
TIN 218
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Mampu memahami pengertian, terminologi, kriteria dan aturan
prioritas pada penjadwalan produksi
Mampu menggunakan teknik-teknik penjadwalan untuk single stage dan
multiple stages (flow shop)
Mampu memahami pengertian sistem job shop, jadwal semi aktif,
jadwal aktif dan non-delay
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Masalah penjadwalan muncul di berbagai macam kegiatan: rumah sakit,
universitas, airline, factory
Output MRP adalah planned order releases
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Job scheduling (memecahkan masalah sequencing saja, karena ukuran
job telah diketahui)
n jobs on 1 processor
n jobs on m-parallel processors
Flow shop scheduling
Job shop scheduling
Single stage
Multiple stages
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Pendekatan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Processing time (waktu proses): estimasi waktu penyelesaian
pekerjaan (job, task), ti
Setup time (waktu setup): waktu yang dibutuhkan untuk kegiatan
persiapan sebelum pemrosesan job dilaksanakan. Sequence dependent
and independent setup times. si
Flow time (waktu tinggal): waktu antara saat datang (arrival time)
dan saat kirim (delivery date), Fi
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Terminologi(2)
Delivery date (saat kirim): saat pengiriman job dari shop floor ke
proses berikut atau ke konsumen, di
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
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
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Gantt chart: adalah peta visual yang menggambarkan loading dan
scheduling
Loading menggambarkan beban mesin
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Terminologi(4)
Waiting time adalah waktu job menunggu karena mesin yang seharusnya
memproses job tersebut sedang memproses job lain
Idle time adalah waktu mesin tidak bekerja (menganggur) karena
tidak ada job yang harus diproses.
Priority rule: aturan penentuan prioritas pemrosesan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Maksimasi utilization (minimasi idle time)
Minimasi WIP (work in process): Minimasi flow time, minimasi
earliness
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Suatu variant dalam batch scheduling problems adalah lot
streaming.
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Aturan SPT (shortest processing time) untuk meminimumkan waktu
tinggal (flow time) rata-rata:
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Urutan yang dihasilkan: 4-8-1-3-7-2-5-6
Flow time rata-rata: 23,875
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Gantt chart
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Penjadwalan n jobs pada single machine(4)
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:
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Urutan yang dihasilkan: 3-4-8-7-2-6-1-5
Flow time rata-rata: 27,0
Urutan berdasarkan t/W
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Aturan SPT meminimumkan mean lateness
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Maximum lateness: 22
Aturan prioritas: SPT
Urutan berdasarkan SPT:
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Aturan EDD (earliest due date)
Aturan EDD meminimumkan maximum lateness pada sebuah mesin
Maximum lateness:
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Hodgson meminimumkan jumlah job yang tardy pada sebuah
mesin
Step 1. Urut semua job sesuai EDD; bila tidak ada atau hanya satu
job yang tardy (positive lateness) maka stop. Bila lebih dari satu
job yg tardy, 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 lagi job
yang tardy maka lanjutkan ke Step 4. Bila ada, maka lanjutkan ke
Step 3
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.
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Iterasi 1:
proses terbesar, yaitu
saat selesai yang baru
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Jumlah tardy job: 2
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Perbandingan perfomansi scheduling rule
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
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
Urutan SPT
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
M1
M2
M3
3
1
5
2
9
10
6
7
8
4
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Rata-rata flow time: 8,01
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
Penjadwalan n jobs, parallel machines(3)
Algoritma Slack meminimumkan tardiness pada mesin paralel
Langkah 1: Urutkan job berdasarkan slack
Langkah 2: Jadwalkan job tersebut satu per satu pada mesin yang
memiliki beban minimum. Bila beban mesin sama, pilih sembarang
mesin
Urutan yang diperoleh berdasarkan slack
adalah 1-2-6-4-5-7-8-10-3-9
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
n jobs, serial machines
Konsep flowshop: semua job diproses secara berurutan pada beberapa
mesin; Urutan pemrosesan n job di seluruh mesin adalah sama, yaitu
mulai dari mesin 1 mesin ke-n
Masalah: job mana yang harus dijadwalkan terlebih dahulu
Kriteria: minimasi makespan
Flow shop m mesin: Algoritma Campbell, Dudek dan Smith (CDS)
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Alternatif 1
Alternatif 2
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Johnson untuk 2 mesin seri (1)
Step 1. Tentukan waktu proses yang terpendek di antara seluruh job
dalam daftar job yang akan diproses
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Johnson untuk 2 mesin seri (2)
Step 2c. 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.
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Step 1. Set K=1. Hitung
m = jumlah mesin; K = indeks (pencacah)
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Campbel, Dudek and Smith(2)
Step 3. Hitung makespan untuk urutan tersebut. Catat jadwal dan
makespan yang dihasilkan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Jika jumlah mesin adalah 3 maka untuk K = 1:
Untuk K = 2:
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Campbel, Dudek and Smith(4)
Urutan pada K = 1 adalah 6-3-2-1-5-4, dan K = 2 adalah
3-2-1-6-5-4
Data Awal:
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Makespan K = 1 adalah 36 jam
Makespan K = 2 adalah 33 jam
Dengan demikian jadwal yang terbaik adalah Jadwal K = 2 dengan
urutan 3-2-1-6-5-4
1
5
4
1
5
4
1
5
4
M2
M1
M3
3
2
6
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Job shop scheduling(1)
Flow shop: aliran kerja unidirectional; setiap job memiliki routing
yang sama
Job shop: aliran kerja tidak unidirectional; setiap jaob tidak
memilik routing yang sama
Mk
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Job
M1
M2
Mm
Job shop: Indeks (i, j, k)
Waktu proses job i, operasi ke j untuk pemrosesan di mesin k
job
operasi
mesin
tijk
tij:
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Misalkan ada 2 mesin: A dan B
Penjadwalan memiliki 4 kemungkinan urutan job, yaitu: Jobs diproses
di A saja; jobs diproses di B saja; jobs diproses di A kemudian di
B; atau jobs diproses di B kemudian di A
ditulis: {A}, {B}, {A,B}, {B,A}
Pada Mesin A
Job dengan konfigurasi {A,B} harus didahulukan daripada Job dengan
konfigurasi {B,A}. Mengapa?
Job dgn konfigurasi {A,B} harus didahulukan daripada Job dengan
konfigurasi {A}. Mengapa?
Urutan pemrosesan job di mesin A {A,B}, {A}, {B,A}
Urutan pemrosesan job di mesin B {B,A}, {B}, {A,B}
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Penjadwalan dengan kriteria minimasi makespan
Mesin A: Job dengan onfigurasi {A,B} diurutkan dengan algoritma
johnson, kemudian Job dengank onfigurasi {A}, kemudain job dengan
konfigurasi {B,A} dengan urutan terbalik algoritma johnson
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Pengelompokkan:
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Urutan untuk {A,B}
Job
2
6
10
2
10
6
t_i,1
1
9
2
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Gese-kiri global (global left-shift)
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
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
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
M1
M2
M3
4
3
3
3
4
4
2
2
2
1
1
1
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
4
3
3
3
4
4
2
2
2
1
1
1
M1
M2
M3
Geser-kiri lokal tidak bisa dilakukan (menggeser saat mulai tanpa
mengubah urutan)
Saat mulai operasi (1,1,1) bisa digeser lebih awal tanpa
menyebabkan delay pada operasi lain (tapi harus mengubah
urutan)
1
1
1
1
1
1
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
1. Jadwal Aktif
adalah satu set jadwal yang tidak memungkinkan lagi untuk melakukan
geser-kiri global
2. Jadwal non-delay
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
All schedule
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
terjadwal
stage t, setelah diperoleh PSt
t = Waktu tercepat operasi dapat dimulai
t = Waktu tercepat operasi dapat
diselesaikan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
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 dan mesin m* yaitu mesin tempat dimana * dapat
direalisasikan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
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 = t+ 1
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
0 0 0
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
0 1 3
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
4 4 3
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
4 6 7
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
9 6 7
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Stage 1 2 3 st j tij j * m* PSt
9 9 11
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Algoritma Pembangkitan Jadwal Non-delay(1)
Step 1. Tentukan t=0, dan kemudian mulai dengan PS0 sebagai jadwal
parsial nol. Tentukan seluruh operasi tanpa predecessor sebagai
S0.
Step 2. Tentukan dan mesin m* yaitu mesin tempat dmn * dapat
direalisasikan
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
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 = t+ 1
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
0
0
0
0
412
0
3
3
0
1
2
3
111
212
313
122
4
3
7
221
4
4
8
322
3
2
5
1
4
1
3
412
1
3
4
1
2
412
Mesin
Stage
1
2
3
St
sj
tij
rj
s*
m*
PSt
111
0
4
4
212
0
1
1
313
0
3
3
122
4
3
7
221
4
4
8
322
4
2
6
2
4
4
3
423
4
3
7
4
1
2
3
221
322
423
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
TIN218 Perencanaan dan Pengendalian Produksi, Pertemuan
14,15,16
*
Waktu proses
1 5 1 5 2 8 2 4 3 6 3 2 4 3 1 3 5 10 2 5 6 14 3 4.7 7 7 2 3.5 8 3 1
3
Job Bobot i
i
i
W
t
Weighted
Flow time 3 3 6 6 18 4 1 3 9 9 8 1 3 12 12 7 2 7 19 38 2 2 8 27 54
6 3 14 41 123 1 1 5 46 46 5 2 10 56 112
Total 15 Total 216 412 Rata-rata 27 27.47
Job Bobot Waktu Flow time
Weighted
JobBobotWaktu Flow time
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
+
=
+
=
Operasi 1 Operasi 2 Operasi 3 Job J1 4 3 2 Job J2 1 4 4 Job J3 3 2
3 Job J4 3 3 1
Waktu Proses
Job J1432
Job J2144
Job J3323
Job J4331
Waktu Proses
M1 M2 M3 Job J1 1 2 3 Job J2 2 1 3 Job J3 3 2 1 Job J4 2 3 1
Routing (Urutan proses)
Routing (Urutan proses)
Mesin 1 Mesin 2 Mesin 3 Job J1 1 2 3 Job J2 2 1 3 Job J3 3 2 1 Job
J4 2 1 3
Routing