© J. Christopher Beck 20051 Lecture 8: Dispatch Rules.

23
© J. Christopher Beck 2005 1 Lecture 8: Dispatch Rules

Transcript of © J. Christopher Beck 20051 Lecture 8: Dispatch Rules.

© J. Christopher Beck 2005 1

Lecture 8: Dispatch Rules

© J. Christopher Beck 2005 2

Outline What is a Dispatch Rule?

Static & dynamic 1-machine Problems

WSPT, EDD, MS, ATC Parallel Machines

LPT Applying dispatch rules to a big JSP

© J. Christopher Beck 2005 3

Dispatch Rules

Create a queue of operations for each resource include all operations that can execute

at the current time Whenever a machine becomes free:

update queues rank activities (based on a [simple] rule) schedule highest priority activity

© J. Christopher Beck 2005 4

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 5

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 6

Dispatch Rules for JSPJ0

J1

J2

How am I pickingoperations from queue?

© J. Christopher Beck 2005 7

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 8

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 9

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 10

Dispatch Rules for JSPJ0

J1

J2

© J. Christopher Beck 2005 11

Dispatch Rules for JSPJ0

J1

J2

How did I pickoperations?

© J. Christopher Beck 2005 12

Dispatch Rules

Create a queue of operations for each resource include all operations that can execute

at the current time Whenever a machine becomes free:

update queues rank activities (based on a [simple] rule) schedule highest priority activity

© J. Christopher Beck 2005 13

1-Machine Problem & WSPT

rj = 0, dj = ∞, obj = min wjCj

Weighted Shortest Processing Time (WSPT) results in optimal schedule Order operations in decreasing order of

wj/pj

Bonus question: prove that WSPT finds the optimal schedule for min wjCj

© J. Christopher Beck 2005 14

1-Machine Problem & WSPT

p1 = 10w1 = 1

p2 = 2w2 = 2

p3= 5w3 = 0

p4= 7w3 = 3

Use WSPT to find min wjCj schedule Find min Cmax schedule

Does WSPT find optimal schedule ifobj = min Cmax?

© J. Christopher Beck 2005 15

1-Machine Problem & EDD

Different problem rj = 0, obj = min Lmax

Each job has its own dj

Earliest Due Date (EDD) results in optimal schedule Order operations in increasing order

of dj

© J. Christopher Beck 2005 16

WSPT & EDD are Static

Static = basis for ordering operations does not change based on scheduling decisions You can sort all operations once

Dynamic = scheduling decisions change the order of remaining operations You need to re-sort operations in queue

(potentially) after every decision

© J. Christopher Beck 2005 17

Minimum Slack is Dynamic

1-machine, rj = 0, obj = min Lmax

Minimum Slack (MS) orders operations at time t in descending order of: max(dj – pj – t, 0)

MS does not guarantee optimal schedule Question: can you find a 1-machine

problem instance where MS doesn’t find the optimal?

© J. Christopher Beck 2005 18

Composite Dispatch Rules

1-machine, rj = 0, obj = min wjTj

Apparent Tardiness Cost rule orders operations in descending order of:

Weighted tardiness

))0,max(

exp()(pK

tpd

p

wtI

jj

j

jj

WSPT

MS

Mean pj

Scaling parameter

© J. Christopher Beck 2005 19

Good Questions

Given description of a 1-machine problem which dispatch rule would you use and why?

Given a 1-machine problem, produce a schedule using dispatch rule X (show each decision)? X = WSPT, EDD, MS, ATC, or a

dispatching rule (with a given definition)

© J. Christopher Beck 2005 20

Parallel Machines

Like 1-machine but you have a set of machines and operations can go on any machine

Can apply dispatch rules without any optimality guarantee

LPT: Longest Processing Time first pick operations in descending order of

processing time

© J. Christopher Beck 2005 21

Q5.3, p 110 6 identical, unary capacity machines in

parallel Compute makespan using LPT

jobs

1 2 3 4 5 6 7 8 9 10

11

12

13

pj 6 6 6 7 7 8 8 9 9 10

10

11

11

© J. Christopher Beck 2005 22

JSP

Apply the following dispatch rules to the problem from the last lecture: SPT MS

Activities

Jobs

1 2 3 4

1 M1, 9 M2, 8 M3, 4

M4, 4

2 M1, 5 M2, 6 M4, 3

M3, 6

3 M3, 10

M1, 4 M2, 9

M4, 2

© J. Christopher Beck 2005 23

Final Words

Table C.1 p. 416 is a good summary of many dispatch rules