Anda di halaman 1dari 42

Penjadwalan

Kuliah 10
LSiPro FT Untirta
Muhammad Adha Ilhami
2nd Edition

Muhammad Adha Ilhami

Tujuan Pembelajaran
Mahasiswa mampu memahami
konsep & logika penjadwalan.
Mahasiswa mampu membuat jadwal
produksi

Muhammad Adha Ilhami

Permasalahan Penjadwalan
Masalah penjadwalan muncul di pabrik,
rumah sakit, universitas, airport, klinik, dll.
Kadang pesanan (job/order) berbeda tapi
harus dikerjakan pada mesin/alat/orang
yang sama. Sehingga perlu diatur job
mana yang dikerjakan duluan dan mana
yang belakangan.

Muhammad Adha Ilhami

Tipe Permasalahan Penjadwalan

Muhammad Adha Ilhami

Model Penjadwalan
Job Scheduling : hanya memecahkan masalah sequencing
(urutan job) saja, karena ukuran job diketahui.
Batch Scheduling : memecahkan masalah sequencing dan
penentuan ukuran batch sekaligus.

Pendekatan Penjadwalan
Forward Scheduling: penjadwalan maju yang dimulai
segera saat job siap (ready time);mulai dari time zero dan
bergerak searah dengan pergerakan waktu. Jadwal
dipastikan feasible namun mungkin melewati due date.
Backward Scheduling : penjadwalan mundur yang dimulai
dari due date dan bergerak berlawanan arah waktu.
Jadwal pasti memenuhi due date namun belum pasti
feasible.
Muhammad Adha Ilhami

Ilustrasi Single Stage


Due date

Due date
M1

M1
t=0
Backward Scheduling

t=0
Forward Scheduling

Mana duluan?
Single
Machine
Single Machine

Job
1
Job 2
Job 3
t

Mana duluan dan di mesin mana?


Job
Machin
1
e NC
Job 2
Machin
e NC

Job 3

Paralel/Heterogeneous Machine
Muhammad Adha Ilhami

Ilustrasi Multiple Stages


Which is the better schedule? A or B
Flow Shop A
J1

M1
M2

Flow Shop B

J2

J2

M1

J1

M2

J2

t=0

J2
t=0

Job Shop
J1

M1
M2

J2

J1

J2
J1

t=0
Muhammad Adha Ilhami

J1

Terminologi dalam
Penjadwalan
Processing Time (waktu proses): estimasi waktu
penyelesaian (job/task), ti.
Setup time (waktu setup): waktu yang dibutuhkan untuk
kegiatan persiapan sebelum job diproses, si.
Flow time (waktu tinggal): waktu antara saat datang
(arrival time) dan saat kirim (delivery date), Fi.
Arrival time (saat datang): saat job mulai berada di shop
floor (production line), ai.
Delivery date (saat kirim): saat pengiriman job dari shop
floor ke proses berikutnya atau ke konsumen, deli.
Ready time (saat siap): saat sebuah job siap diproses, ri.
Due date (deadline): saat jika saat job selesai
melampaui waktu tersebut job dikatakan terlambat, di.
Muhammad Adha Ilhami

Terminologi dalam
Penjadwalan
Makespan: interval waktu total untuk penyelesaian
seluruh job, completion time terbesar dari seluruh job.
Completion time (saat selesai): saat suatu job selesai
diproses, ci.
Lateness: deviasi antara saat selesai dan due date, Li =
c i d i.
Tardiness (Ti) = positive lateness, Earliness (Ei) =
negative lateness.
Slack: sisa waktu sampai due date, SLi =di ti saat
sekarang.
Loading: menggambarkan beban mesin
Schedule: menggambarkan urutan (sequence) dari job
yang akan dikerjakan (ada saat mulai dan saat selesai)
Muhammad Adha Ilhami

Terminologi dalam
Penjadwalan
Waiting time: adalah waktu job menunggu
karena mesin sedang mengerjakan job lain.
Idle time: adalah waktu mesin tidak bekerja
karena tidak ada job yang harus dikerjakan.
Priority rule: aturan penjadwalan
berdasarkan prioritas tertentu. Seperti: FCFS
(first come first serve), SPT (shortest
processing time), LPT (longest processing
time), EDD (earliest due date), CR (critical
ratio)

Muhammad Adha Ilhami

Kriteria Penjadwalan
Ada beberapa kriteria yang dapat digunakan
dalam menentukan apakah suatu jadwal itu
baik atau buruk, yaitu:
1. Minimasi shop time (waktu shop digunakan):
minimize flow time, atau minimize
makespan.
2. Maksimasi utilisasi shop floor (yaitu
meminimasi idle time)
3. Minimasi WIP (work in process): minimize
flow time atau minimize earliness.
4. Minimasi konsumen menunggu (maksimasi
kepuasan konsumen): number of tardy jobs,
mean lateness, Muhammad
maximum
lateness, mean
Adha Ilhami

A. Permasalahan Single
Machine : SPT

Job

Pi

Flow time

Job

Pi

Flow time

10

10

18

14

32

16

37

10

26

40

14

40

SPT

Total Flow
time

137

Total Flow
time

93

Mean Flow
time

27,4

Mean Flow
time

18,6

4 5

54
t
Muhammad Adha Ilhami

3
t

B. Penjadwalan Single Machine:


WSPT
Job

Pi

Bobot

Job

P/W

Bobot

(Wi)

10

10

2,6
7

14

Pi

(Wi)

Flow

Weighted

time

flow time

10

13

39

16

16

2,5

14

30

60

10

40

40

Total

Total

104

165

20,8

33

WSPT

Rata-rata

Muhammad Adha Ilhami

C. Penjadwalan Single Machine:


EDD
Job

Waktu

Due

Saat

Latene

Date

Selesa

ss

Job
Waktu

ED
D

Due
date

Saat

Lateness

Selesai

10

12

13

17

18

10

12

10

-2

20

18

-2

14

18

32

14

14

18

32

14

17

37

20

20

40

20

40

37

Total

36

Total

69

Rata-rata

7,2

Rata-rata

13,8

Maximum

20

Maximum

37

Terbukti, EDD mampu meminimumkan maximum lateness.


Muhammad Adha Ilhami

D. Penjadwalan Single Machine:


Algoritma Hodgson
Algoritma Hodgson meminimumkan jumlah job yang tardy pada
sebuah mesin.
Langkah-langkah Algoritma Hodgson:
Step 1: Urutkan job dengan EDD, jika tidak ada atau hanya satu job
yang tardy (positive lateness) maka stop. Jika lebih dari satu maka
lanjutkan ke langkah 2.
Step 2: Mulai dari awal sampai akhir dari urutan EDD, lakukan
identifikasi tardy job yang paling awal. Bila tidak tardy lanjutkan ke
step 4. Jika ada, lanjutkan ke step 3.
Step 3: Jika job tardy berada di urutan ke-i, pilih job dengan 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 dalam urutan sembarang di
bagian akhir urutan job.
Muhammad Adha Ilhami

Contoh Algoritma
Hodgson
i

ti

10

14

Ci

13

19

29

32

46

53

56

Di

10

15

15

20

25

40

45

50

Li

-2

-2

Number of Tardy Jobs = 6 Jobs

Muhammad Adha Ilhami

Contoh Algoritma
Hodgson
i

Ti

10

14

Ci

11

21

24

38

45

48

Di

15

15

20

25

40

45

50

Li

-10

-4

-1

-2

-2

Karena hanya ada 1 job yang Tardy maka STOP

Muhammad Adha Ilhami

Contoh Algoritma
Hodgson
i

Ti

10

14

Ci

11

21

24

38

45

48

56

Di

15

15

20

25

40

45

50

10

Li

-10

-4

-1

-2

-2

46

Number of Tardy Jobs = 2 Jobs

Muhammad Adha Ilhami

Perbandingan Penjadwalan Single


Machine & Peruntukannya
Berdasarkan Kriteria Performansi

Muhammad Adha Ilhami

I. Penjadwalan n Job Mesin


Paralel: SPT
Tujuannya : Meminimumkan flow time pada mesin
paralel.
Step 1 Urut semua job dengan aturan SPT
Step 2 Jadwalkan job satu per satu pada mesin yang
memiliki beban minimum. Bila beban sama pilih
sembarang.
Job

Pi Contoh: ada 2 mesin paralel (sejenis) dan ada 5 job.

10

14

Urutan SPT
i
Pi

10

14

Muhammad Adha Ilhami

I. Penjadwalan n Job Mesin


Paralel: SPT
i

Pi

10

14

Machin
e NC 5 2
#1
Machin
e NC
4 1
#2
i

Mesin #1

Mesin #2

Pi

14

10

11

25

15

FT

Mean Flow Time = (3 + 11 + 25 + 5 + 15)/5 = 11,8


Muhammad Adha Ilhami

II. Penjadwalan n Job Mesin


Serial
Penjadwalan Flow Shop 2 mesin:
Algoritma Johnson (1956), solusi optimal.
Penjadwalan Flow Shop m mesin:
Algoritma Campbell, Dudek, & Smith
(CDS).
Penjadwalan Job Shop

Muhammad Adha Ilhami

II.A. Penjadwalan Flow Shop 2 Mesin


Serial: Kriteria Minimasi Makespan
Flow Shop, jumlah mesin > 1, urutan proses
seluruh job adalah sama.
Asumsi:
Setiap mesin hanya mampu memproses 1
job pada satu saat.
Setiap job hanya bisa diproses di satu mesin
di saat yang sama.

Muhammad Adha Ilhami

II.A. Penjadwalan Flow Shop 2


Mesin Serial : Algoritma Johnson
Step 1 Tentukan waktu proses terpendek dari daftar job.
Step 2 Ada tiga kondisi:
2.a
Jika waktu terpendek ada di mesin 1, maka
jadwalkan job tersebut pada posisi paling kiri pada
urutan yang dimungkinkan. Step 3
2.b
Jika waktu terpendek ada di mesin 2, maka
jadwalkan job tersebut pada posisi paling kanan pada
urutan yang dimungkinkan. Step 3
2.c Jika terdapat beberapa nilai waktu terpendek yang
sama, maka pilih sembarang, dan jadwalkan job
tersebut di posisi paling kiri atau kanan sesuai di
mesin mana job tersebut memiliki waktu proses
terpendek. Step 3
Adha Ilhamidijadwalkan dari daftar
Step 3 Keluarkan job Muhammad
yang sudah

Contoh Algoritma Johnson


Job

Mesin 1

10

14

Mesin 2

12

3
5

2
3

1
2

4
1

Makespan = 42
Machin
5
e1
Machin
e2

1 4

Muhammad Adha Ilhami

II.B. Penjadwalan Flow Shop m


Mesin Serial : Algoritma CDS
Step 1 Set K = 1. Hitung ti,1* dan ti,2* (m = jumlah
mesin)

Step 2 Gunakan Algoritma Johnson untuk penentuan


urutan pekerjaan dengan menyatakan ti,1 = ti,1* dan
ti,2 = ti,2*.
Step 3 Hitung makespan untuk urutan tersebut. Catat
Jadwal dan makespan yang dihasilkan.
Step 4 Jika K = m 1, maka pilih jadwal dengan
makespan terpendek sebagai jadwal yang
digunakan, lalu STOP. Jika K = K + 1, maka kembali
ke Step 1.
Muhammad Adha Ilhami

II.B. Penjadwalan Flow Shop m


Mesin Serial : Algoritma CDS
Job

Mesin
1

10

14

Mesin
2

Mesin
8
6 12 7
3 m 1 =3 1 =
K=

12
5

Job

K=1
tm1

tm3

10

14

12

5
3
5
2
Maka akan ada 2 iterasi dan menghasilkan 2 jadwal.

Iterasi 1
Step 1 - K = 1, waktu yang digunakan adalah
waktu pada mesin 1 dan mesin 3 saja.
Step 2 Lakukan penjadwalan dengan algoritma
Johnson
Muhammad Adha Ilhami
Step 3 Hitung makespan,
dan catat nilai

II.B. Penjadwalan Flow Shop m


Mesin Serial : Algoritma CDS
Urutan
Job

No.
1
2
3
4
5

K=1
tm1

tm3

14

12

10

Job
5
4
3
1
2

Start Time
M1
0
3
8
22
32

M1
3
5
14
10
8

Start Time
M2
3
8
22
32
40

M2
12
2
9
5
7

Job

Mesin
1

10

14

Mesin
2

12

Mesin
3

12

Idle Time Start Time


M2
M3
3
15
0
17
5
31
1
37
3
47

M3
5
7
12
8
6

Idle Time M3
15
0
4
0
0
Makespan

ep 4 Karena K = 1 < 2, maka lanjutkan/kembali ke Step 1.


Muhammad Adha Ilhami

Finish Time
20
27
43
51
57
57

II.B. Penjadwalan Flow Shop m


Mesin Serial : Algoritma CDS
Iterasi 2
Step 1 - K = 2, waktu yang digunakan
adalah waktu pada (mesin 1 + mesin 2)
dan (mesin 2 + mesin 3).
Step 2 Lakukan penjadwalan dengan
algoritma Johnson
Step 3 Hitung makespan, dan catat nilai
makespan tersebut.
Job

K=2
Tm1+
2

Tm2+
3

15

13

15

Uruta
n Job

K=2
Tm1+
2

Tm2+
3

13

15

17

23

21

23

21

15

13

15

17

15

13

Muhammad Adha Ilhami

II.B. Penjadwalan Flow Shop m


Mesin Serial : Algoritma CDS
Uruta
n Job

No.
1
2
3
4
5

Job
4
5
3
2
1

K=2

Job

Tm1+
2

Tm2+
3

Mesin
1

10

14

15

17

Mesin
2

12

23

21

12

15

13

Mesin
3

15

13

Start Time
M1
0
5
8
22
30

M1
5
3
14
8
10

Start Time
M2
5
8
22
30
40

M2
2
12
9
7
5

Idle Time Start Time


M2
M3
5
7
1
20
2
31
0
38
2
45

Step 4 Karena K = 1+1 = 2, maka Stop.


Muhammad Adha Ilhami

M3
7
5
12
6
8

Idle Time
M3
7
6
6
0
0

Finish
Time
14
25
43
49
57

Makespan

57

III. Job Shop Scheduling


Job Shop : urutan pekerjaan tidak unidirectional.
Indeks yang umum digunakan dalam penjadwalan Job
Shop adalah indeks (i, j, k)
Dimana:
New Job
Finish Job
i : indeks job
WIP
WIP
WIP
j : indeks operasi
M1
Mk
k : indeks mesin
Finish Job

Muhammad Adha Ilhami

New Job

III. Jenis Job Shop Scheduling


Jenis Penjadwalan Job Shop:
1. Jadwal Semi Aktif
2. Jadwal Aktif*
3. Jadwal Non Delay.
* Optimal

SA

ND

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Jadwal Aktif (Notasi)
PSt = Jadwal parsial yang terdiri dari t buah operasi
terjadwal
St = Set/kumpulan operasi yang dapat dijadwalkan
pada stage t, setelah diperoleh PSt.
t = Waktu tercepat operasi J St dapat dimulai
t = Waktu tercepat operasi J St dapat diselesaikan

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Algoritma Jadwal Aktif
Step 1 Tentukan t = 0, dan kemudian mulai dengan PS0 sebagai
jadwal parsial nol. Tentukan seluruh operasi tanpa
predecessor sebagai S0.
Step 2 Tentukan * = minjSt {j} dan mesin m* yaitu mesin
tempat * dapat direalisasikan.
Step 3 Untuk setiap operasi j St yang membutuhkan mesin m*
dan berlaku j < *, buat jadwal parsial baru dengan
menambahkan operasi j pada PSt dengan saat mulai operasi
pada j .
Step 4 Untuk setiap jadwal parsial baru PSt+1, yang dihasilkan
pada step 3, perbaharui set data berikut:
Keluarkan operasi j dari St.
Tambahkan suksesor langsung operasi j ke dalam St+1.
Naikkan nilai t dengan 1.
Muhammad Adha Ilhami
Step 5 Untuk setiap PSt+1 yang dihasilkan pada Step 3, kembali

III. Jenis Job Shop Scheduling:


Contoh Permasalahan Jadwal Aktif

Misalkan secara sembarang diusulkan jadwal dengan urutan 4 3 2


1, maka dihasilkan Gantt Chart sbb:

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (1)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (2)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (3)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (4)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (5)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (6)

Muhammad Adha Ilhami

III. Jenis Job Shop Scheduling:


Penyelesaian Jadwal Aktif (7)

Muhammad Adha Ilhami