2. Lecture Outline
Lecture Outline
Objectives in Scheduling
Loading
Sequencing
17
17-
-879
879
Sequencing
Monitoring
Advanced Planning and Scheduling Systems
Theory of Constraints
Employee Scheduling
3. What is Scheduling?
What is Scheduling?
Last stage of planning before production
Last stage of planning before production
occurs
occurs
Specifies
Specifies when
when labor, equipment, and
labor, equipment, and
17
17-
-880
880
Specifies
Specifies when
when labor, equipment, and
labor, equipment, and
facilities are needed to produce a
facilities are needed to produce a
product or provide a service
product or provide a service
4. Scheduled Operations
Scheduled Operations
Process Industry
Process Industry
Linear programming
Linear programming
EOQ with non
EOQ with non-
-instantaneous
instantaneous
replenishment
replenishment
Batch Production
Batch Production
Aggregate planning
Aggregate planning
Master scheduling
Master scheduling
17
17-
-881
881
Mass Production
Mass Production
Assembly line balancing
Assembly line balancing
Project
Project
Project
Project -
-scheduling
scheduling
techniques (PERT, CPM)
techniques (PERT, CPM)
Material requirements
Material requirements
planning (MRP)
planning (MRP)
Capacity requirements
Capacity requirements
planning (CRP)
planning (CRP)
5. Objectives in Scheduling
Objectives in Scheduling
Meet customer due
Meet customer due
dates
dates
Minimize job lateness
Minimize job lateness
Minimize overtime
Minimize overtime
Maximize machine or
Maximize machine or
labor utilization
labor utilization
17
17-
-882
882
Minimize response time
Minimize response time
Minimize completion
Minimize completion
time
time
Minimize time in the
Minimize time in the
system
system
Minimize idle time
Minimize idle time
Minimize work
Minimize work-
-in
in-
-
process inventory
process inventory
6. Shop Floor Control (SFC)
Shop Floor Control (SFC)
scheduling and monitoring of day
scheduling and monitoring of day-
-to
to-
-day production
day production
in a job shop
in a job shop
also called
also called production control
production control and
and production
production
activity control
activity control (PAC)
(PAC)
17
17-
-883
883
activity control
activity control (PAC)
(PAC)
usually performed by production control department
usually performed by production control department
Loading
Loading
Check availability of material, machines, and labor
Check availability of material, machines, and labor
Sequencing
Sequencing
Release work orders to shop and issue dispatch lists for
Release work orders to shop and issue dispatch lists for
individual machines
individual machines
Monitoring
Monitoring
Maintain progress reports on each job until it is complete
Maintain progress reports on each job until it is complete
7. Loading
Loading
Process of assigning work to limited
Process of assigning work to limited
resources
resources
Perform work with most efficient
Perform work with most efficient
17
17-
-884
884
Perform work with most efficient
Perform work with most efficient
resources
resources
Use assignment method of linear
Use assignment method of linear
programming to determine allocation
programming to determine allocation
8. Assignment Method
Assignment Method
1.
1. Perform row reductions
Perform row reductions
subtract minimum value in each
subtract minimum value in each
row from all other row values
row from all other row values
2.
2. Perform column reductions
Perform column reductions
4.
4. If number of lines equals number
If number of lines equals number
of rows in matrix, then optimum
of rows in matrix, then optimum
solution has been found. Make
solution has been found. Make
assignments where zeros appear
assignments where zeros appear
17
17-
-885
885
2.
2. Perform column reductions
Perform column reductions
subtract minimum value in each
subtract minimum value in each
column from all other column
column from all other column
values
values
3.
3. Cross out all zeros in matrix
Cross out all zeros in matrix
use minimum number of
use minimum number of
horizontal and vertical lines
horizontal and vertical lines
Else modify matrix
Else modify matrix
subtract minimum uncrossed value
subtract minimum uncrossed value
from all uncrossed values
from all uncrossed values
add it to all cells where two lines
add it to all cells where two lines
intersect
intersect
other values in matrix remain
other values in matrix remain
unchanged
unchanged
5.
5. Repeat steps 3 and 4 until
Repeat steps 3 and 4 until
optimum solution is reached
optimum solution is reached
10. Assignment Method: Example (cont.)
Assignment Method: Example (cont.)
Modify matrix
Modify matrix Cover all zeros
Cover all zeros
1
1 0
0 1
1 2
2 1 0 1 2
0
0 0
0 2
2 1
1 0 0 2 1
0
0 3
3 2
2 0
0 0 3 2 0
1
1 1
1 0
0 3
3 1 1 0 3
Number of lines = number of rows so at optimal solution
Number of lines = number of rows so at optimal solution
17
17-
-887
887
1
1 2
2 3
3 4
4
Bryan
Bryan 1
1 0
0 1
1 2
2
Kari
Kari 0
0 0
0 2
2 1
1
Noah
Noah 0
0 3
3 2
2 0
0
Chris
Chris 1
1 1
1 0
0 3
3
PROJECT
PROJECT
1
1 2
2 3
3 4
4
Bryan
Bryan 10
10 5 6
6 10
10
Kari
Kari 6 2
2 4
4 6
6
Noah
Noah 7
7 6
6 5
5 6
Chris
Chris 9
9 5
5 4 10
10
PROJECT
PROJECT
Project Cost = (5 + 6 + 4 + 6) X $100 = $2,100
Project Cost = (5 + 6 + 4 + 6) X $100 = $2,100
11. Sequencing
Sequencing
Prioritize jobs assigned to a resource
If no order specified use first-come first-served (FCFS)
Other Sequencing Rules
FCFS - first-come, first-served
17
17-
-888
888
FCFS - first-come, first-served
LCFS - last come, first served
DDATE - earliest due date
CUSTPR - highest customer priority
SETUP - similar required setups
SLACK - smallest slack
CR - smallest critical ratio
SPT - shortest processing time
LPT - longest processing time
12. Minimum Slack and
Minimum Slack and
Smallest Critical Ratio
Smallest Critical Ratio
SLACK considers both work and time remaining
SLACK considers both work and time remaining
CR recalculates sequence as processing
CR recalculates sequence as processing
SLACK = (due date
SLACK = (due date –
– today’s date)
today’s date) –
– (processing time)
(processing time)
17
17-
-889
889
CR = =
CR = =
If CR 1, job ahead of schedule
If CR 1, job ahead of schedule
If CR 1, job behind schedule
If CR 1, job behind schedule
If CR = 1, job on schedule
If CR = 1, job on schedule
time remaining
time remaining due date
due date -
- today’s date
today’s date
work remaining
work remaining remaining processing time
remaining processing time
CR recalculates sequence as processing
CR recalculates sequence as processing
continues and arranges information in ratio form
continues and arranges information in ratio form
13. Sequencing Jobs through One Process
Sequencing Jobs through One Process
Flow time (completion time)
Flow time (completion time)
Time for a job to flow through system
Time for a job to flow through system
Makespan
Makespan
17
17-
-890
890
Makespan
Makespan
Time for a group of jobs to be completed
Time for a group of jobs to be completed
Tardiness
Tardiness
Difference between a late job’s due date
Difference between a late job’s due date
and its completion time
and its completion time
14. Simple Sequencing Rules
Simple Sequencing Rules
PROCESSING
PROCESSING DUE
DUE
JOB
JOB TIME
TIME DATE
DATE
A
A 5
5 10
10
17
17-
-891
891
A
A 5
5 10
10
B
B 10
10 15
15
C
C 2
2 5
5
D
D 8
8 12
12
E
E 6
6 8
8
15. Simple Sequencing
Simple Sequencing
Rules: FCFS
Rules: FCFS
A
A 0
0 5
5 5
5 10
10 0
0
FCFS
FCFS START
START PROCESSING
PROCESSING COMPLETION
COMPLETION DUE
DUE
SEQUENCE
SEQUENCE TIME
TIME TIME
TIME TIME
TIME DATE
DATE TARDINESS
TARDINESS
17
17-
-892
892
A
A 0
0 5
5 5
5 10
10 0
0
B
B 5
5 10
10 15
15 15
15 0
0
C
C 15
15 2
2 17
17 5
5 12
12
D
D 17
17 8
8 25
25 12
12 13
13
E
E 25
25 6
6 31
31 8
8 23
23
Total
Total 93
93 48
48
Average
Average 93/5 = 18.60
93/5 = 18.60 48/5 = 9.6
48/5 = 9.6
16. Simple Sequencing
Simple Sequencing
Rules: DDATE
Rules: DDATE
C
C 0
0 2
2 2
2 5
5 0
0
E
E 2
2 6
6 8
8 8
8 0
0
DDATE
DDATE START
START PROCESSING
PROCESSING COMPLETION
COMPLETION DUE
DUE
SEQUENCE
SEQUENCE TIME
TIME TIME
TIME TIME
TIME DATE
DATE TARDINESS
TARDINESS
17
17-
-893
893
E
E 2
2 6
6 8
8 8
8 0
0
A
A 8
8 5
5 13
13 10
10 3
3
D
D 13
13 8
8 21
21 12
12 9
9
B
B 21
21 10
10 31
31 15
15 16
16
Total
Total 75
75 28
28
Average
Average 75/5 = 15.00
75/5 = 15.00 28/5 = 5.6
28/5 = 5.6
17. A(10-0) – 5 = 5
B(15-0) – 10 = 5
C(5-0) – 2 = 3
D(12-0) – 8 = 4
E(8-0) – 6 = 2
Simple Sequencing
Simple Sequencing
Rules: SLACK
Rules: SLACK
SLACK
SLACK START
START PROCESSING
PROCESSING COMPLETION
COMPLETION DUE
DUE
SEQUENCE
SEQUENCE TIME
TIME TIME
TIME TIME
TIME DATE
DATE TARDINESS
TARDINESS
17
17-
-894
894
E
E 0
0 6
6 6
6 8
8 0
0
C
C 6
6 2
2 8
8 5
5 3
3
D
D 8
8 8
8 16
16 12
12 4
4
A
A 16
16 5
5 21
21 10
10 11
11
B
B 21
21 10
10 31
31 15
15 16
16
Total
Total 82
82 34
34
Average
Average 82/5 = 16.40 34/5 = 6.8
82/5 = 16.40 34/5 = 6.8
SEQUENCE
SEQUENCE TIME
TIME TIME
TIME TIME
TIME DATE
DATE TARDINESS
TARDINESS
18. Simple Sequencing
Simple Sequencing
Rules: SPT
Rules: SPT
SPT
SPT START
START PROCESSING
PROCESSING COMPLETION
COMPLETION DUE
DUE
SEQUENCE
SEQUENCE TIME
TIME TIME
TIME TIME
TIME DATE
DATE TARDINESS
TARDINESS
17
17-
-895
895
C
C 0
0 2
2 2
2 5
5 0
0
A
A 2
2 5
5 7
7 10
10 0
0
E
E 7
7 6
6 13
13 8
8 5
5
D
D 13
13 8
8 21
21 12
12 9
9
B
B 21
21 10
10 31
31 15
15 16
16
Total
Total 74
74 30
30
Average
Average 74/5 = 14.80
74/5 = 14.80 30/5 = 6
30/5 = 6
19. Simple Sequencing
Simple Sequencing
Rules: Summary
Rules: Summary
FCFS
FCFS 18.60
18.60 9.6
9.6 3 23
23
DDATE
DDATE 15.00
15.00 5.6 3 16
AVERAGE
AVERAGE AVERAGE
AVERAGE NO. OF
NO. OF MAXIMUM
MAXIMUM
RULE
RULE COMPLETION TIME
COMPLETION TIME TARDINESS
TARDINESS JOBS TARDY
JOBS TARDY TARDINESS
TARDINESS
17
17-
-896
896
DDATE
DDATE 15.00
15.00 5.6 3 16
SLACK
SLACK 16.40
16.40 6.8
6.8 4
4 16
16
SPT
SPT 14.80 6.0
6.0 3 16
20. Sequencing Jobs Through
Sequencing Jobs Through
Two Serial Process
Two Serial Process
Johnson’s Rule
Johnson’s Rule
1.
1. List time required to process each job at each machine.
List time required to process each job at each machine.
Set up a one
Set up a one-
-dimensional matrix to represent desired
dimensional matrix to represent desired
sequence with # of slots equal to # of jobs.
sequence with # of slots equal to # of jobs.
2.
2. Select smallest processing time at either machine. If
Select smallest processing time at either machine. If
17
17-
-897
897
2.
2. Select smallest processing time at either machine. If
Select smallest processing time at either machine. If
that time is on machine 1, put the job as near to
that time is on machine 1, put the job as near to
beginning of sequence as possible.
beginning of sequence as possible.
3.
3. If smallest time occurs on machine 2, put the job as
If smallest time occurs on machine 2, put the job as
near to the end of the sequence as possible.
near to the end of the sequence as possible.
4.
4. Remove job from list.
Remove job from list.
5.
5. Repeat steps 2
Repeat steps 2-
-4 until all slots in matrix are filled and all
4 until all slots in matrix are filled and all
jobs are sequenced.
jobs are sequenced.
21. Johnson’s Rule
Johnson’s Rule
JOB
JOB PROCESS 1
PROCESS 1 PROCESS 2
PROCESS 2
A
A 6
6 8
8
B
B 11
11 6
6
C
C 7
7 3
3
17
17-
-898
898
C
C 7
7 3
3
D
D 9
9 7
7
E
E 5
5 10
10
C
E A B
D
22. Johnson’s Rule (cont.)
Johnson’s Rule (cont.)
A B C
D
E
E A D B C Process 1
Process 1
(sanding)
(sanding)
17
17-
-899
899
E A D B C Process 1
Process 1
(sanding)
(sanding)
5
5 11
11 20
20 31
31 38
38
E A D B C Process 2
Process 2
(painting)
(painting)
5
5 15
15 23
23 30
30 37
37 41
41
Idle time
Idle time
Completion time = 41
Idle time = 5+1+1+3=10
23. Guidelines for Selecting a
Guidelines for Selecting a
Sequencing Rule
Sequencing Rule
1.
1. SPT most useful when shop is highly congested
SPT most useful when shop is highly congested
2.
2. Use SLACK for periods of normal activity
Use SLACK for periods of normal activity
3.
3. Use DDATE when only small tardiness values can
Use DDATE when only small tardiness values can
17
17-
-900
900
3.
3. Use DDATE when only small tardiness values can
Use DDATE when only small tardiness values can
be tolerated
be tolerated
4.
4. Use LPT if subcontracting is anticipated
Use LPT if subcontracting is anticipated
5.
5. Use FCFS when operating at low
Use FCFS when operating at low-
-capacity levels
capacity levels
6.
6. Do not use SPT to sequence jobs that have to be
Do not use SPT to sequence jobs that have to be
assembled with other jobs at a later date
assembled with other jobs at a later date
24. Monitoring
Monitoring
Work package
Work package
Shop paperwork that travels with a job
Shop paperwork that travels with a job
Gantt Chart
Gantt Chart
17
17-
-901
901
Gantt Chart
Gantt Chart
Shows both planned and completed
Shows both planned and completed
activities against a time scale
activities against a time scale
Input/Output Control
Input/Output Control
Monitors the input and output from each
Monitors the input and output from each
work center
work center
28. Advanced Planning and
Advanced Planning and
Scheduling Systems
Scheduling Systems
Infinite
Infinite -
- assumes infinite capacity
assumes infinite capacity
Loads without regard to capacity
Loads without regard to capacity
Then levels the load and sequences jobs
Then levels the load and sequences jobs
17
17-
-905
905
Then levels the load and sequences jobs
Then levels the load and sequences jobs
Finite
Finite -
- assumes finite (limited) capacity
assumes finite (limited) capacity
Sequences jobs as part of the loading
Sequences jobs as part of the loading
decision
decision
Resources are never loaded beyond
Resources are never loaded beyond
capacity
capacity
29. Advanced Planning and
Advanced Planning and
Scheduling Systems (cont.)
Scheduling Systems (cont.)
Advanced planning and scheduling (APS)
Advanced planning and scheduling (APS)
Add
Add-
-ins to ERP systems
ins to ERP systems
Constraint
Constraint-
-based programming (CBP) identifies a
based programming (CBP) identifies a
17
17-
-906
906
Constraint
Constraint-
-based programming (CBP) identifies a
based programming (CBP) identifies a
solution space and evaluates alternatives
solution space and evaluates alternatives
Genetic algorithms based on natural selection
Genetic algorithms based on natural selection
properties of genetics
properties of genetics
Manufacturing execution system (MES) monitors
Manufacturing execution system (MES) monitors
status, usage, availability, quality
status, usage, availability, quality
30. Theory of Constraints
Theory of Constraints
Not all resources are used evenly
Not all resources are used evenly
17
17-
-907
907
Not all resources are used evenly
Not all resources are used evenly
Concentrate on the” bottleneck” resource
Concentrate on the” bottleneck” resource
Synchronize flow through the bottleneck
Synchronize flow through the bottleneck
Use process and transfer batch sizes to
Use process and transfer batch sizes to
move product through facility
move product through facility
31. Drum-Buffer-Rope
Drum
Drum
Bottleneck, beating to set the pace of production for
Bottleneck, beating to set the pace of production for
the rest of the system
the rest of the system
Buffer
Buffer
17
17-
-908
908
Buffer
Buffer
Inventory placed in front of the bottleneck to ensure
Inventory placed in front of the bottleneck to ensure
it is always kept busy
it is always kept busy
Determines output or throughput of the system
Determines output or throughput of the system
Rope
Rope
Communication signal; tells processes upstream
Communication signal; tells processes upstream
when they should begin production
when they should begin production
32. TOC Scheduling Procedure
Identify bottleneck
Schedule job first whose lead time to
bottleneck is less than or equal to
bottleneck processing time
17
17-
-909
909
bottleneck processing time
Forward schedule bottleneck machine
Backward schedule other machines to
sustain bottleneck schedule
Transfer in batch sizes smaller than
process batch size
33. B
A
C D
B3
B3 1 7
7 C3
C3 2 15
15 D3
D3 3 5
5
17
17-
-910
910
Synchronous
Synchronous
Manufacturing
Manufacturing
B1
B1 1 5
5
B2
B2 2 3
3
C1
C1 3 2
2
C2
C2 1 10
10
D1
D1 3 10
10
D2
D2 2 8
8
Operation
Operation j
j of item
of item i
i performed at
performed at
machine center
machine center k
k takes
takes l
l minutes
minutes
to process
to process
Item
Item i
i
Key:
Key: i
ij
ij k l
l
36. Employee Scheduling
Employee Scheduling
Labor is very flexible
Labor is very flexible
resource
resource
Scheduling workforce is
Scheduling workforce is
17
17-
-913
913
complicated, repetitive
complicated, repetitive
task
task
Assignment method can
Assignment method can
be used
be used
Heuristics are commonly
Heuristics are commonly
used
used
37. Employee Scheduling Heuristic
Employee Scheduling Heuristic
1.
1. Let
Let N = no. of workers available
N = no. of workers available
D
Di
i = demand for workers on day i
= demand for workers on day i
X = day working
X = day working
O = day off
O = day off
2.
2. Assign the first N
Assign the first N -
- D
D1
1 workers day 1 off. Assign the next N
workers day 1 off. Assign the next N -
- D
D2
2
17
17-
-914
914
2.
2. Assign the first N
Assign the first N -
- D
D1
1 workers day 1 off. Assign the next N
workers day 1 off. Assign the next N -
- D
D2
2
workers day 2 off. Continue in a similar manner until all days are
workers day 2 off. Continue in a similar manner until all days are
have been scheduled
have been scheduled
3.
3. If number of workdays for full time employee 5, assign
If number of workdays for full time employee 5, assign
remaining workdays so consecutive days off are possible
remaining workdays so consecutive days off are possible
4.
4. Assign any remaining work to part
Assign any remaining work to part-
-time employees
time employees
5.
5. If consecutive days off are desired, consider switching schedules
If consecutive days off are desired, consider switching schedules
among days with the same demand requirements
among days with the same demand requirements
38. DAY OF WEEK
DAY OF WEEK M
M T
T W
W TH
TH F
F SA
SA SU
SU
MIN NO. OF
MIN NO. OF
WORKERS REQUIRED
WORKERS REQUIRED 3
3 3
3 4
4 3
3 4
4 5
5 3
3
Taylor
Taylor
Smith
Smith
Simpson
Simpson
Employee Scheduling
Employee Scheduling
17
17-
-915
915
Simpson
Simpson
Allen
Allen
Dickerson
Dickerson
39. DAY OF WEEK
DAY OF WEEK M
M T
T W
W TH
TH F
F SA
SA SU
SU
MIN NO. OF
MIN NO. OF
WORKERS REQUIRED
WORKERS REQUIRED 3
3 3
3 4
4 3
3 4
4 5
5 3
3
Taylor
Taylor O
O X
X X
X O
O X
X X
X X
X
Smith
Smith O
O X
X X
X O
O X
X X
X X
X
Simpson
Simpson X
X O
O X
X X
X O
O X
X X
X
Employee Scheduling (cont.)
Employee Scheduling (cont.)
17
17-
-916
916
Simpson
Simpson X
X O
O X
X X
X O
O X
X X
X
Allen
Allen X
X O
O X
X X
X X
X X
X O
O
Dickerson
Dickerson X
X X
X O
O X
X X
X X
X O
O
Completed schedule satisfies requirements but has no
Completed schedule satisfies requirements but has no
consecutive days off
consecutive days off
40. Employee Scheduling (cont.)
Employee Scheduling (cont.)
DAY OF WEEK
DAY OF WEEK M
M T
T W
W TH
TH F
F SA
SA SU
SU
MIN NO. OF
MIN NO. OF
WORKERS REQUIRED
WORKERS REQUIRED 3
3 3
3 4
4 3
3 4
4 5
5 3
3
Taylor
Taylor O
O O
O X
X X
X X
X X
X X
X
Smith
Smith O
O O
O X
X X
X X
X X
X X
X
Simpson
Simpson X
X X
X O
O O
O X
X X
X X
X
17
17-
-917
917
Simpson
Simpson X
X X
X O
O O
O X
X X
X X
X
Allen
Allen X
X X
X X
X O
O X
X X
X O
O
Dickerson
Dickerson X
X X
X X
X X
X O
O X
X O
O
Revised schedule satisfies requirements with consecutive
Revised schedule satisfies requirements with consecutive
days off for most employees
days off for most employees