Lecture7_scheduling_f06_604

advertisement
Chapter 17: Operations Scheduling
• Scheduling is the allocation of resources over time to
perform a collection of tasks
• Resources
– Workers, Machines, Tools
• Tasks
– Operations that bring some physical changes to material
in order to eventually manufacture products
– Setups such as walking to reach the workplace, obtaining
and returning tools, setting the required jigs and fixtures,
positioning and inspecting material, cleaning etc.
Production
Systems
High
Project
Job Shop
Customization
Batch
production
Flow
Shop
Continuous
production
Low
Low
High
Volume
High
Production
Systems
Aircraft
Project
Custom-made
machines and
Job Shop parts
Books
Customization
Batch
production
Automobile
Flow
Shop
Oil refinery
Continuous
production
Low
Low
High
Volume
Production
Systems
Labor intensive
High
Project
Job Shop
Customization
Batch
production
Capital
intensive
Flow
Shop
Continuous
production
Low
Low
High
Volume
Production
Systems
More frequent
Rescheduling
High
Project
Job Shop
Customization
Batch
production
Flow
Shop
Less frequent
Rescheduling
Continuous
production
Low
Low
High
Volume
Infinite/Finite Scheduling
• Infinite - assumes infinite capacity
– Loads without regard to capacity, levels the
load and sequence jobs
– Job shop/batch production
• Finite - assumes finite (limited) capacity
– Sequences jobs as part of the loading decision,
resources are never loaded beyond capacity
– Flow shop/continuous production
Scheduling Job Shop/Batch
Production
• Batch Production
– many planning steps
•
•
•
•
aggregate planning
master scheduling
material requirements planning (MRP)
capacity requirements planning (CRP)
• Scheduling determines
– machine/worker/job assignments
– resource/requirement matchings
Objectives in Scheduling
• Conformance to prescribed deadlines
– Meet customer due dates, minimize job lateness, minimize
maximum lateness, minimize number of tardy jobs
• Response time or lead time
– Minimize mean completion time, minimize average time in
the system
• Efficient utilization of resources
– Maximize machine or labor utilization, minimize idle time,
maximize throughput, minimize the length of time the shop
is open
• Costs
– Minimize work-in-process inventory, minimize overtime
Responsibilities of Production
Control Department
• Loading
– Allocate orders to workers and machines, worker and
machines to work centers etc.
• Sequencing
– Release work orders to shop & issue dispatch lists for
individual machines
• Monitoring
– Maintain progress reports on each job until it is
complete
Loading
• Allocate orders to workers and machines,
workers and machines to work centers, etc.
• Perform work on most efficient resources
• Use assignment method of linear
programming to determine allocation
Assignment Method
1. Perform row reductions
– Subtract minimum value in each row from all other row
values
2. Perform column reductions
– Subtract minimum value in each column from all other
column values
3. Line Test
– Cross out all zeros in matrix using minimum number of
horizontal & vertical lines. If number of lines equals number
of rows in matrix, optimum solution has been found, stop.
4. Matrix Modification
– Subtract minimum uncrossed value from all uncrossed values
& add it to all cells where two lines intersect. Go to Step 3.
Assignment Example
Cooker
Food
Beans
Peaches
Tomatoes
Corn
1
10
6
7
9
Row reduction
5 0 1 5
4 0 2 4
2 1 0 1
5 1 0 6
2
5
2
6
5
3 4
6 10
4 6
5 6
4 10
Column reduction
3 0 1 4
2 0 2 3
0 1 0 0
3 1 0 5
Line Test
3 0 1
2 0 2
0 1 0
3 1 0
Number lines <> number of rows so modify matrix
4
3
0
5
Assignment Example
Modify matrix
Line Test
1
0
0
1
1
0
0
1
0
0
3
1
1
2
2
0
2
1
0
3
0
0
3
1
Cooker
Food
Beans
Peaches
Tom
Corn
1
1
0
0
1
2
0
0
3
1
1
2
2
0
2
1
0
3
# lines = # rows
so at optimal solution
Cooker
3
1
2
2
0
4
2
1
0
3
Food
1 2 3 4
Beans
10 5 6 10
Peaches
6 2 4 6
Tomatoes 7 6 5 6
Corn
9 5 4 10
Orders completed in 6 hours
Total number of hours = 21
Sequencing
• Prioritize jobs assigned to a resource
• If no order specified use first-come firstserved (FCFS)
• Many other sequencing rules exist
• Each attempts to achieve to an objective
Sequencing Rules
•
•
•
•
FCFS - first-come, first-served
SOT - shortest operating time
DDATE - earliest due date
STR - slack time remaining
– (due date - today’s date) - (remaining processing time)
• LCFS - last come, first served
Critical Ratio Rule
• CR = time remaining / work remaining
=
due date - today’s date
remaining processing time
Jobs with the smallest CR are run first.
Performance Measures
• Completion time
– Epoch at which the job is completed
• Makespan
– Completion time of the last job processed
• Lateness
– Lateness of job j
– = (completion time of job j)-(due date of job j)
• Tardiness
– Tardiness of job j = max(0, lateness of job j)
Sequencing Rule Example
Processing Due
Job
Time
Date
A
5
10
B
10
15
C
2
5
D
8
12
E
6
8
Slack
(10-1) - 5 = 4
(15-1)-10 = 4
(5-1)-2 = 2
(12-1)-8 = 3
(8-1)-6 = 1
120 possible sequences for 5 jobs
Critical
Ratio
(10-1)/5 = 1.80
(15-1)/10 = 1.40
(5-1)/2 = 2.00
(12-1)/8 = 1.37
(8-1)/6 = 1.16
First-Come First-Served
Start Processing
SequenceTime
Time
A
B
C
D
E
Average
5
10
2
8
6
Completion
Time
Due
Date
10
15
5
12
8
Tardiness
Earliest Due Date
Start Processing
SequenceTime
Time
C
E
A
D
E
Average
2
6
5
8
10
Completion
Time
Due
Date
5
8
10
12
15
Tardiness
Slack Time Remaining
Slack for each job A - 4, B - 4, C - 2, D - 3, E - 1
Start Processing
SequenceTime
Time
E
C
D
A
B
Average
6
2
8
5
10
Completion
Time
Due
Date
8
5
12
10
15
Tardiness
Critical Ratio
CR for each job A - 1.80, B - 1.40, C - 2.00, D - 1.37, E - 1.16
Start Processing
SequenceTime
Time
E
6
D
8
B
10
A
5
C
2
Average
Completion
Time
Due
Date
8
12
15
10
5
Tardiness
Shortest Operating Time
Start Processing
SequenceTime
Time
C
A
E
D
B
Average
2
5
6
8
10
Completion
Time
Due
Date
5
10
8
12
15
Tardiness
Summary
Rule
FCFS
DDATE
STR
CR
SOT
Average
Completion Time
18.60
15.00
16.40
20.80
14.80 *
*
* Best values
** Guaranteed best values
Average
No. of
Maximum
Tardiness Jobs Tardy Tardiness
9.6
3*
23
5.6 *
3 *
16 **
6.8
4
16 *
11.2
4
26
6.0
3 *
16 *
Johnson’s Rule: Sequencing Jobs Through a Two
Machine Flow Shop to Minimize Makespan
1. List time required to process each job at each machine. Set up a
one-dimensional matrix to represent desired sequence with # of
slots equal to # of jobs.
2. Select smallest processing time at either machine. If that time is
on machine 1, put the job as near to beginning of sequence as
possible.
3. If smallest time occurs on machine 2, put the job as near to the
end of the sequence as possible.
4. Remove job from list.
5. Repeat steps 2-4 until all slots in matrix are filled & all jobs are
sequenced.
Johnson’s Rule Example
Job
A
B
C
D
E
Machine
Center 1
6
11
7
9
5
Machine
Center 2
8
6
3
7
10
Johnson’s Rule Example
Job
A
B
Machine
Center 1
6
11
D
E
9
5
Machine
Center 2
8
6
7
10
C
Johnson’s Rule Example
Job
A
B
Machine
Center 1
6
11
Machine
Center 2
8
6
D
9
7
E
C
Johnson’s Rule Example
Job
Machine
Center 1
Machine
Center 2
B
11
6
D
9
7
E
A
C
Johnson’s Rule Example
Job
Machine
Center 1
Machine
Center 2
D
9
7
E
A
B
C
Johnson’s Rule Example
Job
E
Machine
Center 1
Machine
Center 2
A
C
D
B
Johnson’s Rule Example
Job
E
A
D
B
C
E
Machine
Center 1
5
6
9
11
7
Machine
Center 2
10
8
7
6
3
A
C
D
B
Each triplet above shows the start, processing, and stopping times
of an operation.
Johnson’s rule guarantees that the above schedule gives the best
value (41) of makespan.
Monitoring with Gantt Chart
Key:
Completed
Activity
Job 32B
3
Behind schedule
Planned
Activity
Facility
Job 23C
2
Ahead of schedule
Job 11C
Job 12A
1
On schedule
1
2
3
4
5
6
8
9
10 11 12
Days
Today’s Date
Gantt Chart shows both planned and completed
activities against a time scale
Employee Scheduling
• Labor is very flexible resource
• Scheduling workforce is a complicated
repetitive task
• An objective is to create a consecutive days
off schedule that uses the fewest workers.
• Heuristics are commonly used.
Employee Scheduling Heuristic
1. Consider the first worker and the
unassigned workload.
2. Assign the worker to all days except the
two consecutive days with the lowest
unassigned workload.
3. If there are unassigned workload, consider
the next worker and repeat step 2. Else,
stop.
Employee Scheduling Example
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
Employee Scheduling Example
Worker 1
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
Employee Scheduling Example
Worker 1
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
Employee Scheduling Example
Worker 1
Worker 2
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
Employee Scheduling Example
Worker 1
Worker 2
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Worker 4
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
2 1 2 1 1 2 1
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Worker 4
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
2 1 2 1 1 2 1
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Worker 4
Worker 5
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
2 1 2 1 1 2 1
1 0 1 1 1 1 0
Employee Scheduling Example
Worker 1
Worker 2
Worker 3
Worker 4
Worker 5
Number of Workers Required
M Tu W Th F S Su
3 3 4 3 4 5 3
3 3 4 3 4 5 3
3 3 3 2 3 4 2
2 2 3 2 2 3 1
2 1 2 1 1 2 1
1 0 1 1 1 1 0
Employee Scheduling Example
Remark:
The resulting schedule provides consecutive days
off to 4 workers among 5. Still, it’s better than
two schedules shown next.
Employee Scheduling Example
Day of week
M
Min # workers
3
Worker 1
O
Worker 2
O
Worker 3
X
Worker 4
X
Worker 5
X
IMPROVED SCHEDULE
Day of week
M
Min # workers
3
Worker 1
O
Worker 2
O
Worker 3
X
Worker 4
X
Worker 5
X
T
3
X
X
O
O
X
W
4
X
X
X
X
O
Th
3
0
0
X
X
X
F
4
X
X
O
X
X
Sa
5
X
X
X
X
X
Su
3
X
X
X
O
O
T
3
O
O
X
X
X
W
4
X
X
O
X
X
Th
3
X
X
O
O
X
F
4
X
X
X
X
O
Sa
5
X
X
X
X
X
Su
3
X
X
X
O
O
Reading
• Reading: Chapter 17 pp. 668-74, 678-81
• Chapter end problems: 4,6,12,13
Download