w1_introduction.ppt

advertisement
Introduction
Operations Scheduling
1. Setting up the Scheduling Problem
2. Single Machine Problems
3. Solving Scheduling Problems
Operational Research & Management
Operations Scheduling
Program
Week
1
2
3
4
5
6
7
Subject
Introduction, Single Machine Scheduling
Resource Constrainted Project Scheduling
Job Shop Scheduling
Flow Shop Scheduling
Economic Lot Scheduling
Interval Scheduling, Timetabling, Reservation
Workforce Scheduling
Operational Research & Management
Chapter
1, 2, 3
4
5
6
7
9
12
Operations Scheduling
2
Acknowledgement
We are very grateful for the slides
prepared by colleagues from other
universities, in particular the slides of
Siggi Olafsson has been used in our
course extensively.
Operational Research & Management
Operations Scheduling
3
Topic 1
Setting up the Scheduling Problem
Operational Research & Management
Operations Scheduling
Scheduling


Scheduling concerns optimal allocation or assignment of
resources, over time, to a set of tasks or activities.
–
Machines Mi,
i=1,...,m
(ith machine)
–
Jobs Jj,
j=1,...,n
(jth job)
Schedule may be represented by Gantt charts.
Operational Research & Management
Operations Scheduling
5
Notation


Static data:
–
Processing time (pij)
–
Release date
(rj)
–
Due date
(dj)
–
Weight
(wj)
on machine i
Dynamic data:
–
Completion time (Cij)
–
Flow Time
on machine i
(Fj = Cj – rj)
Operational Research & Management
Operations Scheduling
6
Modeling

Three components for any machine scheduling model:
–
Machine configuration
–
Constraints and processing characteristics
–
Objective and performance measures

Notation:  |  | 

Characteristics for  obviously present because of , are NOT
mentioned.
Operational Research & Management
Operations Scheduling
7
: Machine Configuration


Standard machine configurations:
–
(1)
Single-Machine models
–
(Pm)
Parallel-Machine models
–
(Jm)
Job Shop models
jobs have different routes
–
(Fm)
Flow Shop models:
jobs have same order and same machines
–
(Om)
Open Shop:
routing also to be determined
Real world always more complicated:
–
(FJc)
Flexible Job Shop:
with parallel machines at each workstation
–
(FFc)
Flexible Flow Shop:
with parallel machines at each stage
Operational Research & Management
Operations Scheduling
8
: Constraints

(rj)
Release dates

(prec)
Precedence constraints

(sjk)
Sequence dependent setup times

(prmp)
Preemptions (resume or repeat)

(block)
Storage / waiting constraints

(Mj)
Machine eligibility

(circ)
Recirculation

Tooling / resource constraints

Personnel scheduling constraints
Operational Research & Management
Operations Scheduling
9
: Objectives and Performance Measures
1. Throughput (TP) and makespan (Cmax)
2. Due date related objectives
3. Work-in-process (WIP), lead time (response time), finished
inventory
4. (Setup Times)
Operational Research & Management
Operations Scheduling
10
1. Throughput and Makespan

Throughput
–
Defined by bottleneck machines
Cmax  max C1 , C2 ,..., Cn 

Makespan

Minimizing makespan tends to maximize throughput and balance
load
Operational Research & Management
Operations Scheduling
11
2. Due Date Related Objectives

Lateness
Lj  C j  d j
Lmax
Minimize maximum lateness

Tardiness T j  max{0, C j  d j }

j
w jT j
Minimize the weighted tardiness

Tardy job
U j  1 if C j  d j
U
j
j
Minimize the number of tardy jobs
Operational Research & Management
Operations Scheduling
12
Due Date Penalties
Tardiness
Lateness
Lj
Tj
Cj
Cj
dj
dj
Late or Not
In practice
Uj
1
Cj
dj
Operational Research & Management
Cj
dj
Operations Scheduling
13
3. WIP and Lead Time

Work-in-Process (WIP) inventory cost

Minimizing WIP also minimizes average lead time (throughput
time)

Minimizing lead time tends to minimize the average number of
jobs in system

Equivalently, we can minimize sum of the completion times:

j
Cj
or

j
w jC j
WIP  TP  C j
Operational Research & Management
Operations Scheduling
14
Topic 2
Single-Machine Scheduling Problems
Operational Research & Management
Operations Scheduling
Classic Scheduling Theory

Look at a specific machine environment with a specific objective

Analyze to prove an optimal policy or to show that no simple
optimal policy exists

Thousands of problems have been studied in detail with
mathematical proofs!
3 Examples: single machine
Operational Research & Management
Operations Scheduling
16
1. Completion Time Models


Lets say we have
–
Single machine (1), where
–
the total weighted completion time should be minimized (SwjCj)
We denote this problem as
Operational Research & Management
1||  wj C j
Operations Scheduling
17
Optimal Solution

Theorem: Weighted Shortest Processing Time first - called the
WSPT rule - is optimal for
1||  wj C j


Note: The SPT rule starts with the job that has the shortest
processing time, moves on the job with the second shortest
processing time, etc.
wj
WSPT starts with job with largest
pj
Operational Research & Management
Operations Scheduling
18
Proof (by contradiction)
Suppose it is not true and schedule S is optimal
–
Then there are two adjacent jobs, say job j followed by job k such that
wj
wk

p j pk
that is
pk w j  p j wk
Do a pairwise interchange to get schedule S’
j
k
t  p j  pk
t
k
t
Operational Research & Management
j
t  p j  pk
Operations Scheduling
19
Proof (continued)

The weighted completion time of the two jobs under S is
C ( S )  Const  (t  p j ) w j  (t  p j  pk ) wk

The weighted completion time of the two jobs under S’ is
C ( S ')  Const  (t  pk ) wk  (t  p j  pk ) w j

Now:
C ( S )  C ( S ')
 (t  p j ) w j  (t  p j  pk ) wk  (t  pk ) wk  (t  pk  p j ) w j
 p j w j  p j wk  pk wk  pk wk  pk w j  p j w j
 p j wk  pk w j  0

Contradicting that S is optimal.
Operational Research & Management
Operations Scheduling
20
More Completion Time Models
1||  C j
SPT rule
1 ||  w j C j
WSPT rule
1| rj |  C j
NP-hard
1| rj , prmp |  C j
preemptive SPT rule
1| rj , prmp |  w j C j
NP-hard
1| prec |  wj C j
NP-hard
1| chain |  w j C j
polynomial algorithm
Operational Research & Management
Operations Scheduling
21
2. Lateness Models


Lets say we have
–
Single machine (1), where
–
the maximum cost for late jobs should be minimized (hmax)
–
subject to precedence constraints
We denote this problem as
1| prec | hmax
hj(Cj) denotes the cost for completing job j at time Cj
e.g. hj(Cj) = Cj-dj
Operational Research & Management
(than hmax = Lmax and EDD optimal)
Operations Scheduling
22
Optimal Solution

Theorem: Lawler’s algorithm is optimal for

Lawler’s Backwards recursive algorithm (Minimizing Maximum Cost):

1| prec | hmax
Cmax   j p j
1.
Determine makespan
2.
Determine job j* with smallest
3.
Schedule job j* as last job in the sequence
4.
Repeat same procedure with one job less (j*)
h j (Cmax )
Proof by contradiction
Operational Research & Management
Operations Scheduling
23
More Lateness Models
1| prec | hmax
Lawler’s algorithm
1|| Lmax
EDD rule
1| rj | Lmax
B&B algorithm (App B2)
1| rj , prec | Lmax
same B&B procedure
1| rj , prmp | Lmax
preemptive EDD rule
Job j is interrupted when job k arrives
with dk < dj
Operational Research & Management
Operations Scheduling
24
3. Tardiness Models


Lets say we have
–
Single machine (1), where
–
the number of late jobs should be minimized (SUj)
We denote this problem as 1|| U j
1
with U j  
0
if C j  d j
otherwise
Operational Research & Management
Operations Scheduling
25
Optimal Solution

Theorem: Moore’s algorithm is optimal for 1|| U j

EDD rule with modification:
1. Three sets: J = empty; (complement of J) JC = {1..n}; (tardy jobs) JD
2. Determine job j* with smallest dj
3. If

jJ
p j  d j*
then
and
add to J and delete from JC
remove job k from J with largest pj
and add k to JD
4. Repeat step 2 and 3 until JC is empty

Proof by induction
Operational Research & Management
Operations Scheduling
26
More Tardiness Models
1|| U j
Moore’s algorithm
1||  w jU j
NP-hard
1||  T j
NP-hard
1||  w jT j
NP-hard
special cases: dj = 0
dj loose
WSPT
MS
otherwise: apparent tardiness heuristic
Operational Research & Management
Operations Scheduling
27
Topic 3
Solving Scheduling Problems
(Appendix C)
Operational Research & Management
Operations Scheduling
General Purpose Scheduling Procedures


Some scheduling problems are easy
–
Simple priority rules
–
Complexity: polynomial time
However, most scheduling problems are hard
–
Complexity: NP-hard, strongly NP-hard
–
Finding an optimal solution is infeasible in practice  heuristic methods
Operational Research & Management
Operations Scheduling
29
Different Methods

Basic Dispatching Rules

Composite Dispatching Rules

Branch and Bound

Beam Search

Simulated Annealing

Tabu Search

Genetic Algorithms
Operational Research & Management
Construction
Methods
Improvement
Methods
Operations Scheduling
30
Dispatching Rules

Other names: list scheduling, priority rules

Prioritize all waiting jobs
–
job attributes
–
machine attributes
–
current time

Whenever a machine becomes free: select the job with the
highest priority

Static or dynamic
Operational Research & Management
Operations Scheduling
31
Release/Due Date Related

Earliest release date first (ERD) rule
–

Earliest due date first (EDD) rule
–

variance in throughput times (flow times)
maximum lateness
Minimum slack first (MS) rule
–
maximum lateness
Current
Time
max d j  p j  t , 0
Deadline
Operational Research & Management
Processing
Time
Operations Scheduling
32
Processing Time Related



Longest Processing Time first (LPT) rule
–
balance load on parallel machines
–
makespan
Shortest Processing Time first (SPT) rule
–
sum of completion times
–
WIP
Weighted Shortest Processing Time first (WSPT) rule
Operational Research & Management
Operations Scheduling
33
Processing Time Related


Critical Path (CP) rule
–
precedence constraints
–
makespan
Largest Number of Successors (LNS) rule
–
precedence constraints
–
makespan
Operational Research & Management
Operations Scheduling
34
Other Dispatching Rules

Service in Random Order (SIRO) rule

Shortest Setup Time first (SST) rule
–

Least Flexible Job first (LFJ) rule
–

makespan and throughput
makespan and throughput
Shortest Queue at the Next Operation (SQNO) rule
–
machine idleness
Operational Research & Management
Operations Scheduling
35
Discussion

Very simple to implement

Optimal for special cases

Only focus on one objective

Limited use in practice

Combine several dispatching rules:
Composite Dispatching Rules
Operational Research & Management
Operations Scheduling
36
Example of
Composite Dispatching Rule
Single Machine with Weighted Total Tardiness
1||  w jT j
Operational Research & Management
Operations Scheduling
Setup
1||  w jT j

Problem:

No efficient algorithm (NP-Hard)

Branch and bound can only solve very small problems (<30 jobs)

Are there any special cases we can solve?
Operational Research & Management
Operations Scheduling
38
Case 1: Tight Deadlines

Assume dj=0
Then
T j  max 0, C j  d j 
 max 0, C j   C j
 w jT j   w j C j

We know that WSPT is optimal for this problem!
Operational Research & Management
Operations Scheduling
39
Case 2: “Easy” Deadlines

Theorem: If the deadlines are sufficiently spread out then the MS
rule
jselect  arg min max d j  p j  t , 0
is optimal (proof a bit harder)

Conclusion: The MS rule should be a good heuristic whenever
deadlines are widely spread out
Operational Research & Management
Operations Scheduling
40
Composite Rule

Two good heuristics
–
Weighted Shorted Processing Time (WSPT )

–
Minimum Slack (MS)

–

Optimal with due dates zero
Optimal when due dates are “spread out”
Any real problem is somewhere in between
Combine the characteristics of these rules into one composite
dispatching rule
Operational Research & Management
Operations Scheduling
41
Apparent Tardiness Cost (ATC)

New ranking index
I j (t ) 
wj
pj
 max d j  p j  t , 0 

exp  


K  p (t )


Scaling constant

When machine becomes free:
–
Compute index for all remaining jobs
–
Select job with highest value
Operational Research & Management
Operations Scheduling
42
Special Cases (Check)

If K is very large:
–

If K is very small and no overdue jobs:
–

ATC reduces to WSPT
ATC reduces to MS
If K is very small and overdue jobs:
–
ATC reduces to WSPT applied to overdue jobs
Operational Research & Management
Operations Scheduling
43
Choosing K

Value of K determined empirically

Related to the due date tightness factor
1  1 
d
Cmax
and the due date range factor
2 
Operational Research & Management
d max  d min
Cmax
Operations Scheduling
44
Beam Search

Is B&B with restricted branching
1.
Quick evaluation of all candidates
2.
Choose the F best options (filter width)
3.
Evaluate F options more thoroughly
4.
Choose the B best options (beam width) for branching
Operational Research & Management
Operations Scheduling
45
Local Search
N(S) = Neighborhood of a solution S =
set containing all solutions that can be obtained by a simple
modification of S
Step 1: Choose a starting solution S1 with value c(S1); k = 1;
Step 2: Evaluate all solutions S in N(Sk)
Step 3: Choose as Sk+1 the best solution only if c(Sk+1) < c(Sk) and
k = k+1; go to step 2
Otherwise stop (local optimum found)
Operational Research & Management
Operations Scheduling
46
Tabu Search

TS = LS with worse solutions allowed

Step 3:
- Choose as Sk+1 the best solution within N(Sk) unless
the associated modification is on the Tabu List.
- Add the modification Sk -> Sk+1 on the Tabu List.
- Remove oldest entry of the Tabu List.
Operational Research & Management
Operations Scheduling
47
Graphically
If c(Sk+2) > c(Sk+1) then
Sk+1 is a strong candidate
for Sk+3
Sk
Sk+1
Operational Research & Management
Sk+2
Operations Scheduling
48
Exercises

From chapter 3:
3.2, 3.4

From appendix C:
C.1, C.4, C.6 (1 step), C.9

Single Machine Problems (see Blackboard)

Proof algorithm of Moore optimal for 1|| U j

Proof EDD optimal for 1|| Lmax
Operational Research & Management
Operations Scheduling
49
Download