Documentos de Académico
Documentos de Profesional
Documentos de Cultura
OPERATIONS SCHEDULING
Outline
1
Hierarchy of Production Decisions
Forecast of demand
Aggregate Plan
Sequencing
Sequencing and scheduling are similar terms. But
sequencing does not refer to time. For example, if a bank
teller processes 5 customers, the bank teller may just
process the customers on a first come first served basis
without any planning about exact start and end times for
each customer. Thats sequencing. Scheduling, in contrast,
produces a detail plan of various activities over time.
A Gantt chart representation of a schedule
A Gantt chart representation of a schedule is shown on the
next slide. Suppose that there are two machines: one lathe
machine and one grinding machine. Two jobs Job A12 and
Job B23 are to be produced over the next 14 days. 8
Operations Scheduling
2 4 6 8 10 12 14
Days
9
Operations Scheduling
14
Production Systems: Flow Shop
IN
OUT
The above picture is a conceptual view of a flow shop. The
boxes represent machines and the arrows show the job flow.
Every job visits the machines in the same order. 16
Production Systems: Job Shop
L L M M D D D D
L L G G G P
L L G G G P
Receiving and
A A A
Shipping Assembly
18
A conceptual view of a job shop
Production Systems: Batch Production
20
Production Systems: Batch Production
Examples:
Books
Pastry
Painting
Automobile gears (the
picture shows a
Computer Numerical
Control (CNC) machine
used to produce gears)
21
Production Systems
Project and Continuous Production
Flow shop is not the extreme case with respect to the high
volume of production. The continuous production system is
used in process industry e.g., oil refinery is set up to
produce products with little or no variety 24 hours/day and 7
days/week.
Job shop is not the extreme case with respect to flexibility or
customization. Huge projects are managed to produce a
bridge, a sky-scraper, an aeroplane, a submarine, etc.
22
Production
High Systems
Project
Job
Customization
Shop
Batch
production
Flow
Shop
Continuous
Production
Low
Low High 23
Volume
Production
High Aircraft
Systems
Project
Custom-made
Job
Machine and Parts
Customization
Shop
Batch Books
production
Automobile
Flow
Shop Oil
refinery
Continuous
Production
Low
Low High 24
Volume
Labor Production
High Systems
Intensive
Project
Job
Customization
Shop
Batch
production
Capital
Flow Intensive
Shop
Continuous
Production
Low
Low High 25
Volume
READING AND EXERCISES
Lesson 12
Reading:
Section 8.1, pp. 413-416 (4th Ed.), pp. 404-405 (5th
Ed.)
Exercises:
8.3a, 8.3b, p. 425 (4th Ed.), p. 413 (5th Ed.)
8.31 (identify the job and machine) p. 464 (4th Ed.),
p. 450 (5th Ed.)
26
LESSON 13: SCHEDULING OBJECTIVES
Outline
Job Characteristics
Comparison of Schedules
Scheduling Terms
Scheduling Objectives
27
Job Characteristics
28
Job Characteristics
29
Job Characteristics
Assumptions:
A machine can process one job at a time
A job can be processed by one machine at a time
We usually assume an equal importance and the same
arrival time for all jobs (Example 1 is an exception, where
jobs arrive at different times). Further, we assume that
preemption is not allowed. So, once a job is started on a
machine, the job must be completed before another job
can be processed by that machine.
30
Comparison of Schedules
Schedule 1 Schedule 1
requires the
facility to be Job 1 Job 2
open for fewer
hours (3 hours d2 d1
only in contrast 0 1 2 3 4
to 4 hours Time, t
required by Schedule 2
Schedule 2)
Schedule 2 Job 2 Job 1
meets the due
dates d2 d1
(Schedule 1 0 1 2 3 4
does not) Time, t 34
Comparison of Schedules
Schedule 3 Schedule 3
requires less
parking fees (1
Car 1 Car 2
hour only in
contrast to 3 d2 d1
hours required 0 1 2 3 4
by Schedule 4) Time, t
Schedule 4 Schedule 4
meets the due
dates
Car 2 Car 1
(Schedule 3
does not) d2 d1
0 1 2 3 4
36
Time, t
Scheduling Terms
37
Scheduling Terms
38
Scheduling Terms
39
Scheduling Terms
Jobs
M1 M2 M3
Enter Exit
Machines
41
Scheduling Terms
Schedule 1 F2
C2
Job 1 Job 2
r2
0 1 2 3 4
Time, t
Important note: if all the jobs are ready for processing
at t 0, as they are in static scheduling, then
completion time is just the same as flow time.
Fj C j if rj 0 44
Scheduling Terms
46
Scheduling Terms
49
Scheduling Terms
52
Scheduling Objectives
Reading:
Sections 8.2-8.3, pp. 416-419 (4th Ed.), pp. 406-
409 (5th Ed.)
Section 8.5, pp. 423-424 (4th Ed.), pp. 412-414 (5th
Ed.)
Exercises:
8.1, 8.2, 8.3 (parts c, d, e) pp. 424-425 (4th Ed.), p.
413 (5th Ed.)
LESSON 14: SCHEDULING WITH
PRIORITY SEQUENCING RULES
Outline
Sequencing
Sequencing Rules
Sequencing Rule Example
Remarks
Sequencing
You get the most value of money if you pay the bills
on the due dates. The simplest rule that comes to
mind in presence of due dates is the earliest due date
(EDD) rule which requires that the jobs be done in
the order in which the jobs are due.
Often in manufacturing, items are put in a stack. The
last item arriving is put on the top and processed first.
The last-come first-served (LCFS) rule is also
observed in elevators. The person arriving last must
step out first.
The critical ratio (CR) rule combines SPT and EDD
rule. The CR rule is explained on the next slide.
Sequencing Rules: Critical Ratio
CR = time remaining / work remaining
Processing Due
Suppose that 5 jobs will be
Job Time Date
processed on a single
A 5 10 machine. The jobs are ready
B 10 15 for processing at time t 0.
C 2 5 The other job characteristics
D 8 12 are as shown in the table on
left.
E 6 8
Sequencing Rule Example
62
First-Come First-Served
64
Earliest Due Date
Critical Ratio
Current
Time
Job Processing Due Critical Assign?
Time Date Ratio
A 5 10
B 10 15
C 2 5
D 8 12
E 6 8
Iteration 1 69
Phase I
Critical Ratio
Current
Time
Job Processing Due Critical Assign?
Time Date Ratio
A 5 10
B 10 15
C 2 5
D 8 12
E 6 8
Iteration 2 70
Phase I
Critical Ratio
Current
Time
Job Processing Due Critical Assign?
Time Date Ratio
A 5 10
B 10 15
C 2 5
D 8 12
E 6 8
Iteration 3 71
Phase I
Critical Ratio
Current
Time
Job Processing Due Critical Assign?
Time Date Ratio
A 5 10
B 10 15
C 2 5
D 8 12
E 6 8
Iteration 4 72
Phase II
Critical Ratio
* Best values
Guaranteed best values are shown in bold
Remarks
Reading:
Section 8.4, pp. 419-423 (4th Ed.), pp. 409-412 (5th
Ed.)
Exercises:
8.4, 8.5, pp. 424-425 (4th Ed.), pp. 413-414 (5th
Ed.)
82
LESSON 15: SINGLE MACHINE
SCHEDULING
Outline
83
Single Machine Scheduling
84
Single Machine Scheduling
85
Total Completion Time
86
Total Completion Time
87
Total Completion Time
89
Maximum Lateness
92
Maximum Lateness
Steps
1. Arrange the jobs in the Earliest Due Date (EDD)
order.
2. Repeat the following as long as there is any tardy job:
If the i th job is the first tardy job, consider the first i
jobs and remove the one with the largest processing
time.
3. Append all the tardy jobs, if any, in the end in any
order.
95
Number of Tardy Jobs: Example
Processing Completion Due
Job Time Time Date
A 7 9
B 8 17
C 4 18
D 6 19
E 6 21
96
Number of Tardy Jobs: Example
Processing Completion Due
Job Time Time Date
A 7 9
B 8 17
C 4 18
D 6 19
E 6 21
Arrange the jobs in the EDD order and find if any is tardy
Step 1 97
Number of Tardy Jobs: Example
Processing Completion Due
Job Time Time Date
A 7 9
B 8 17
C 4 18
D 6 19
E 6 21
Eliminate the longest job before the first one tardy and
arrange the others in the EDD order.
Step 2-1 98
Number of Tardy Jobs: Example
Processing Completion Due
Job Time Time Date
A 7 9
B 8 17
C 4 18
D 6 19
E 6 21
Eliminate the longest job before the first one tardy and
arrange the others in the EDD order.
Step 2-2 99
Number of Tardy Jobs: Example
Processing Completion Due
Job Time Time Date
A 7 9
B 8 17
C 4 18
D 6 19
E 6 21
Eliminate the longest job before the first one tardy and
arrange the others in the EDD order.
Step 3 102
Number of Tardy Jobs: A Note
103
Forward and Backward Scheduling
104
Lawlers Algorithm for Precedence Constraints
105
Lawlers Algorithm for Precedence Constraints
106
Lawlers Algorithm for Precedence Constraints
107
Lawlers Algorithm for Precedence Constraints
108
C
A B D
A B D
D 6 19
114
READING AND EXERCISES
Lesson 15
Reading:
Section 8.6, pp. 425-431 (4th Ed.), pp. 414-419 (5th
Ed.)
Exercises:
8.6, 8.7, p. 431 (4th Ed.), pp. 419-420 (5th Ed.)
115
LESSON 16:
MULTIPLE MACHINE SCHEDULING
Outline
2 4 6 8 10 12 14
Today's date Days
Enter Exit
M1 M2
A Conceptual View of
A Two-Machine Flow Shop 119
Two Machine Flow Shop
The main characteristic of a two-machine flow shop
system is that every job first visits Machine 1 and
then Machine 2.
Examples:
Customizing and painting
Machining and polishing
Moulding and baking
Repair and testing
Typing and proofing (of chapters of a book)
Review and data entry (of claims)
Checkups by a nurse and a doctor (of patients)
120
Two Machine Flow Shop
We continue to assume that
every machine can process one job at a time.
every job can be processed by one machine at a
time and
So, in terms of a Gantt chart every job will appear
twice: once on Machine 1 and again on Machine 2
No two rectangles can overlap (every machine
processes one job at a time)
If a vertical line is drawn, the line must not
intersect two rectangles corresponding to the
same job (every job can be processed by one
machine at a time) 121
Two Machine Flow Shop
See the example on the next slide
If a vertical line is drawn through the rectangle
representing Job B23 on the Lathe machine,
the line must not intersect the rectangle
representing Job B23 on the Grinding machine
Since, every job visits Machine 1 before Machine
2, a rectangle corresponding to a job on Machine
1 must be on the left side of the rectangle
corresponding to that job on Machine 2
The rectangle representing Job A12 on the
Lathe machine is on the left side of that of Job
A12 on the Grinding machine (same for Job
122
B23).
Two Machine Flow Shop
2 4 6 8 10 12 14 16
Days
123
Two Machine Flow Shop
For most objectives listed in Lesson 2, the same
order on both machines is optimal. So, if Machine 1
processes Job 1 before Job 2, then Machine 2 will
also process Job 1 before Job 2. When the job-order
is the same on all machines, the schedule is called a
permutation schedule
See the Gantt chart on the previous slide:
Lathe machine processes Job A12 before Job
B23. Grinding machine also processes Job A12
before Job B23. Thats a permutation schedule.
If Job A12 were started at time 16 on Grinding
machine (instead of time 4), it would still be a flow
124
shop but not a permutation schedule.
Two Machine Flow Shop
Its better to keep track of starting, processing and
finishing times of every job on every machine.
Consider an example.
Example 1: Each of the two jobs A and B must be
processed on Machine 1 before Machine 2. The
processing times are shown below:
Machine Machine
Job Center 1 Center 2
A 16 5
B 9 17
125
Two Machine Flow Shop
Schedule1: Suppose that each machine processes
Job A before Job B. Then, the starting, processing,
and finishing times are as follows:
Machine 1 Machine 2
Job Start Process Finish Start Process Finish
A 16 5
B 9 17
Processing starts at time 0 (Job A on Machine 1).
Finishing time = Starting time + Processing time. So,
Job A finishes at time 0+16 = 16 on Machine 1.
Job A can start on Machine 2 only after time 16, when
its completed on Machine 1. 126
Two Machine Flow Shop
Job B can start on Machine 1 only after time 16,
when Machine 1 becomes idle.
The starting time of Job B on Machine 2 is the
maximum of finishing times of Job A on Machine 2
(Machine 2 becomes idle) and Job B on Machine 1
(Job becomes free).
So, Starting time of Job B on Machine 2 = max
(finishing time of Job A on Machine 2, finishing time
of Job B on Machine 1) = max (21, 25) = 25.
Starting time of every job, except the first one, on
Machine 2 is a maximum of two numbers.
127
Two Machine Flow Shop
The finishing time of the last job (Job B) on the last
machine (Machine 2) is the makespan. So, here
makespan = 42.
We shall discuss Johnsons rule, which can minimize
makespan (repetitive application of the rule yields a
schedule with least makespan)
First, observe that a different sequence provides a
different makespan.
128
Two Machine Flow Shop
Schedule 2: Suppose that each machine processes
Job B before Job A.
Machine 1 Machine 2
Job Start Process Finish Start Process Finish
B 9 17
A 16 5
The process starts at time 0 (Job B on Machine 1).
Starting time of Job A on Machine 2 = max (26, 25) =
26.
Makespan = Finishing time of Job A (the last job) on
Machine 2 (the last machine) = 31 (improved!!!)
129
Two Machine Flow Shop
Johnsons rule explains why makespan is improved
by Schedule 2. Notice that the minimum processing
time = 5 is given by Job A on Machine 2.
The main idea of Johnsons rule: If the minimum
processing time is on Machine 1 (or Machine 2),
then schedule the job with the minimum time in the
beginning (or end). Apply the rule repeatedly until all
jobs are scheduled. Break ties arbitrarily.
Here, the minimum processing time = min (9, 17, 16,
5) = 5 is given by Job A on Machine 2. So, Job A is
scheduled in the end. The details of Johnsons rule
and an example will now follow.
130
Two-Machine Flow Shop
Johnsons Rule
A 5 6
B 16 5
C 8 2
D 9 17
E 4 6
A 5 6
B 16 5
D 9 17
E 4 6
C
A 5 6
B 16 5
D 9 17
E C
B 16 5
D 9 17
E A C
D 9 17
E A B C
E A D B C
E A D B C
M1
M2
6 12 18 24 30 36 42 48
Time
A Conceptual View of
A Three-Machine Flow Shop
Extension of Johnsons Rule
To A Three Machine Flow Shop
145
Extension of Johnsons Rule
To A Three Machine Flow Shop
Machine Machine
Job 1 2 3 Job 1 2
1 6 5 7 1
2 9 3 3 2
3 5 4 8 3
4 8 2 4 4
5 7 3 5 5
Three-Machine Problem Fictitious Two-Machine Problem
149
Gantt Chart
M1
M2
M3
6 12 18 24 30 36 42
Time
The Gantt chart corresponding to the optimal sequence,
obtained using the extension of Johnsons rule. 150
Gantt Chart
151
READING AND EXERCISES
Lesson 16
Reading:
Section 8.7, pp. 432-437 (4th Ed.), pp. 421-425 (5th
Ed.)
Exercise:
8.13, 8.14, p. 441 (4th Ed.), p. 428 (5th Ed.)
152
LESSON 17: TWO-JOB
JOB SHOP AND FLOW SHOP SCHEDULING
Outline
153
Two-Job Job Shop and Flow shop Problem
Peter Patricia
Activity Time Activity Time
A 10 B 5
B 5 A 5
C 25 C 20
D 10 D 5
156
Two-Job Job Shop and Flow shop Problem
30
20
10
10 20 30 40 50
159
Step 2: Find Peters and Patricias
Start and End Times
The start and end times are computed below separately for
Peter and Patricia. Each starts at time zero. Notice that the
times are not clock times, but Peters and Patricias
cumulative times. The clock times will be computed later.
Peters Time Patricias Time
Activity Start Process End Activity Start Process End
A B
B A
C C
D D
Note a = 50, b = 35 according to the notations on slide 6. 160
Step 3: Identify Coordinates of Corners of
Rectangles Representing Activities
162
Step 4: Draw Rectangles
30
Patricia's Time
20
10
10 20 30 40 50
Peter's Time 163
Step 5: Using only Three Special Types of
Line Segments and Not Crossing the
Rectangles Find A Path From (0,0) To (a,b)
Use only the following three types of line segments
Horizontal line: representing a time interval when only
Peter is busy, Patricia is idle
Vertical line: representing a time interval when only
Patricia is busy, Peter is idle
45-degree line (same rise as run): representing a time
interval when both Peter and Patricia are busy
165
Step 5: Using only Three Special Types of
Line Segments and Not Crossing the
Rectangles Find A Path From (0,0) To (a,b)
Such a path is shown on the next slide. The path
starts from (0,0) in the 45-degree direction (it could also
start horizontally or vertically; 45-degree lines are
preferred as they keep the length shorter)
starts moving horizontally when blocked by rectangle A,
changes to 45 degree at (10,5)
starts moving horizontally when blocked by rectangle C
(could also start vertically at (10,5)), changes to 45 degree
at (40,10)
Starts vertically when reaches a boundary at x=a=50 (the
other boundary is (y=b=35)
166
Step 5: Using only Three Special Types of
Line Segments and Not Crossing the
Rectangles Find A Path From (0,0) To (a,b)
(a,b)
D
30
Patricia's Time
20 C
10
A
B
(0,0)
10 20 30 40 50
Peter's Time 167
Step 6: Compute
Clock Times Along the Path
168
Step 6: Compute
Clock Times Along the Path
The line represents that both Peter and Patricia are busy
for 5 units of time. So, it moves 5 units horizontally and 5
units vertically. So, clock time advances by 5 units.
Thus, the clock time at (5,5)
= clock time at (0,0)+5
=0+5
=5
169
Step 6: Compute
Clock Times Along the Path
(a,b)
D
30
Patricia's Time
20 C
10
A
B
(0,0)
20 1030 40 50
Peter's Time 171
Length of the vertical line = 5, clock time = 60 + 5 = 65
Step 7: Another Path
70
(a,b)
40 D
30
Patricia's Time
35
20 C
10
A 15
5 10 B
(0,0)
20 30 10
40 50
Peter's Time 172
Check the clock times and length of the path.
Step 8: Interpretation
173
Step 8: Interpretation
174
Step 8: Interpretation
175
Step 9: The Gantt Chart
A
B
C
D
10 20 30 40 50 60
Gantt Chart
176
READING AND EXERCISES
Lesson 17
Reading:
Section 8.7, pp. 437-440 (4th Ed.), pp. 425-427 (5th
Ed.)
Exercise:
8.15, 8.16, pp. 441-442 (4th Ed.), pp. 428-429 (5th
Ed.)
177
LESSON 18: STOCHASTIC SCHEDULING
Outline
Probability Distribution
0.75
0.5
Probability
0.25
0
2H 1H1T 2T
Event
A Review on Probability Distributions
Area = probability
Probability(2t8)
f(t)
= Shaded area
0 2 4 6 8 10
Processing Time, t
186
A Review on Probability Distributions
0.4
0.3
Normal
Distribution
f(z)
0.2
0.1
0
-4 -2 0 2 4
188
z
A Review on Probability Distributions
0.3
f(t)
0.2
Exponential distribution
with mean = 3
0.1
0
0 5 10 15 20
Time, t
Stochastic Scheduling
194
Static Analysis: Parallel Machines
195
Static Analysis: Parallel Machines
197
Static Analysis: Parallel Machines
Back To Deterministic Scheduling
Check that
Sum of processing times idle time
Makespan
2
198
Static Analysis: Parallel Machines
Back To Deterministic Scheduling
200
Static Analysis: Parallel Machines
202
Static Analysis: Parallel Machines
204
Static Analysis: Parallel Machines
The rows are arranged in the ascending order of start times. 205
Static Analysis: Parallel Machines
6 12 18 24 30 36 42 48 54 60 66
Time
206
Static Analysis: Two Machine Flow Shop
Enter Exit
M1 M2
A Conceptual View of
A Two-Machine Flow Shop
207
Static Analysis: Two Machine Flow Shop
208
Static Analysis: Two Machine Flow Shop
Where,
Aj = the processing time of job j on machine 1
Bj = the processing time of job j on machine 2
209
Static Analysis: Two Machine Flow Shop
215
Dynamic Analysis: Selection of Disciplines
216
Dynamic Analysis: The c Rule
Suppose that
Jobs arrive randomly with exponential service rates.
Job j has a service rate j . The service rate j 1 / t j
where, t j = processing time of job j.
A job-dependent return c j is available if job j is
completed by some pre-specified due date t which
is the same for all jobs.
The best scheduling policy that maximizes total
earnings is to choose the job with the largest value of
cj j
217
Dynamic Analysis: The c Rule
218
Dynamic Analysis: The c Rule
219
READING AND EXERCISES
Lesson 18
Reading:
Section 8.8 pp. 442-446 (4th Ed.), pp. 429- 432 (5th Ed.)
Section 8.9 (partial) pp. 450-452 (4th Ed.), pp. 436-438
(5th Ed.)
Exercises:
8.18, 8.19 (done in the note), 8.21, p. 446 (4th Ed.), pp.
432-433 (5th Ed.) and 8.25a p. 453 (4th Ed.), p. 439 (5th
Ed.)
220
LESSON 19: ASSEMBLY LINE BALANCING
Outline
Assembly Line
Assembly Line Balancing
The Precedence Diagram
Assignment of Work Elements to Workstations
A Line Balancing Heuristic
221
Assembly Line
222
Assembly Line
230
Assembly Line Balancing
Example 5: Efficiency =
238
Assignment of Work
Elements to Workstations 12
Find a feasible B
line balancing
solution if the 6 A D 18
required cycle
time is 24 sec
C
24
239
Assignment of Work Elements to
Workstations
241
A Line Balancing Heuristic
Positional Weight Method
242
A Line Balancing Heuristic
Positional Weight Method
Work Time Immediate
Element Description (min) Predecessor(s)
A Tan leather 30 -
B Dye leather 15 A
C Shape case 5 B
D Mold hinges and fixtures 15 -
E Install hinges and fixtures 10 C,D
F Assemble case 10 E
If the demand is 60 cases per 40-hour week, compute the
required cycle time. How would you balance the the
assembly line?
243
A Line Balancing Heuristic
Positional Weight Method
First, compute the required cycle time.
Required cycle time
Production time per week
Demand per week
B 15 Work Positional
Element Weight Rank
10 A
B
A 5 C E C
30 D
E
15 D 10 F F
246
A Line Balancing Heuristic
Positional Weight Method
Step 3 is to assign work elements to workstations. For
this step, both the ranks and precedence diagram shown
on the last slide are useful.
The assignment starts from the lowest rank. First A is
assigned to a workstation, then B, then D, then C, etc.
The first assignment is made to workstation 1. So, A is
assigned to workstation 1.
For each of the other work elements, first an attempt is
made to assign the element to workstation 1. If the total
workload exceeds the required cycle time, or a
precedence constraint is violated, next attempt is to
assign the element to workstation 2, and so on. 247
A Line Balancing Heuristic
Positional Weight Method
Rank 1: Work element A (30)
248
A Line Balancing Heuristic
Positional Weight Method
Rank 3: Work element D (15)
249
A Line Balancing Heuristic
Positional Weight Method
Rank 5: Work element E (10)
250
A Line Balancing Heuristic
Positional Weight Method
Final Solution:
Station 1:
Station 2:
Station 3:
Actual cycle time =
251
READING AND EXERCISES
Lesson 19
Reading:
Section 8.10 pp. 453-458 (4th Ed.), pp. 439-443 (5th
Ed.)
Exercises:
8.27, 8.29 p. 458-460 (4th Ed.), pp. 443-446
252