Title: Factory Physics?
1(No Transcript)
2TM 663 Operations Planning
December 3, 2007
Dr. Frank J. Matejcik CM 319 Work (605)
394-6066 Roughly 9-3 M-F Home (605) 342-6871
Frank.Matejcik_at_.sdsmt.edu
3TM 663Operations Planning Dr. Frank Joseph
Matejcik
11th Session Chapter 15 Production Scheduling
- South Dakota School of Mines and Technology
- Rapid City
4Agenda
- Factory Physics
- Exam 3 is ready!
- Chapter 15 Production Scheduling
- (New Assignment Chapter 15 problems 1-3)
5Tentative Schedule
Chapters Assigned 9/10/2007 0,1 ________
9/17/2007 2 C2 4,5,9,11,13 9/24/2007 2, 3 C3
2,3,5,6,11 10/01/2007 4, 5 Study
Qs 10/08/2007 Holiday 10/15/2007 Exam
1 10/22/2007 6, 7 C61, C74,6 10/29/2007 8, 9
C86,8 C9 1-4 11/05/2007 10 11/12/2007 Holiday 11
/19/2007 Exam 2
Chapters Assigned 11/26/2007 13, 14 Ch.
13 p1 , Ch. 14 1,2 12/03/2007 15
p1-3 12/10/2007 16, 17 12/17/2007 Final Note,
Chapters 11 12 skipped this year
6Production Scheduling
Let all things be done decently and in order.
I Corinthians
7Goals of Production Scheduling
- High Customer Service on-time delivery
- Low Inventory Levels WIP and FGI
- High Utilization of machines
UTILIZATION
SERVICE
INVENTORY
8Meeting Due Dates Measures
- Service Level
- Used typically in make to order systems.
- Fraction of orders which are filled on or before
their due dates. - Fill Rate
- Used typically in make to stock systems.
- Fraction of demands met from stock.
- Lateness
- Used in shop floor control.
- Difference between order due date and completion
date. - Average lateness has little meaning.
- Better measure is lateness variance.
- Tardiness
- Used in shop floor control.
- Is equal to the lateness of a job if it is late
and zero, otherwise. - Average tardiness is meaningful but unintuitive.
9Reducing WIP and Cycle Time
- Less WIP Equals Shorter Cycle Times (Littles
Law) - Benefits of shorter cycle times
- Lower Cost less money in inventory
- More Flexibility less disruptive to change
backlog that work in process - Better Quality faster defect detection
- Less Reliance on Forecasts cycle times below
frozen zone allow make to order - Better Forecasts distant (inaccurate) forecasts
are no longer needed
10Classic Scheduling Assumptions
- MRP/ERP
- Benefits Simple paradigm, hierarchical
approach. - Problems
- MRP assumes that lead times are an attribute of
the part, independent of the status of the shop. - MRP uses pessimistic lead time estimates.
11Classic Scheduling Assumptions (cont.)
- Classic Scheduling (only classic in academia)
- Benefits Optimal schedules
- Problems Bad assumptions.
- All jobs available at the start of the problem.
- Deterministic processing times.
- No setups.
- No machine breakdowns.
- No preemption.
- No cancellation.
12Classic Single Machine Results
- Minimizing Average Cycle Time
- Minimize by performing in shortest process time
(SPT) order. - Makespan is not affected.
- Minimizing Maximum Lateness (or Tardiness)
- Minimize by performing in earliest due date
(EDD) order. - Makespan is not affected.
- If there exists a sequence with no tardy jobs,
EDD will do it. - Minimizing Average Tardiness
- No simple sequencing rule will work. Problem is
NP Hard. - Makespan is not affected.
13Classic Multi Machine Results
- Minimizing Makespan on Two Machines given a
set of jobs that must go through a sequence of
two machines, what sequence will yield the
minimum makespan? - Makespan is sequence dependent.
- Simple algorithm (Johnson 1954)
- 1. Sort the times of the jobs on the two machines
in two lists. - 2. Find the shortest time in either list and
remove job from both lists. - If time came from first list, place job in first
available position. - If time came from second list, place job in last
available position in sequence. - 3. Repeat until lists are exhausted.
-
- The resulting sequence will minimize makespan.
14Johnsons Algorithm Example
- Data
- Iteration 1 min time is 4 (job 1 on M1) place
this job first and remove from lists
15Johnsons Algorithm Example (cont.)
- Iteration 2 min time is 5 (job 3 on M2) place
this job last and remove from lists - Iteration 3 only job left is job 2 place in
remaining position (middle). - Final Sequence 1-2-3
- Makespan 28
16Gantt Chart for Johnsons Algorithm Example
Short task on M2 to clear out quickly.
Short task on M1 to load up quickly.
17Classic Dispatching Results
- Optimal Schedules Impossible to find for most
real problems. - Dispatching sorts jobs as they arrive at a
machine. - Dispatching rules
- FIFO simplest, seems fair.
- SPT Actually works quite well with tight due
dates. - EDD Works well when jobs are mostly the same
size. - Many (100?) others.
- Problems with Dispatching
- Cannot be optimal (can be bad).
- Tends to be myopic.
18The Difficulty of Scheduling Problems
- Dilemma
- Too hard for optimal solutions.
- Need something anyway.
- Classifying Hardness
- Class P has a polynomial solution.
- Class NP has no polynomial solution.
- Example Sequencing problems grow as n!.
- Compare en/10000 and 10000n10.
- At n 40, en/10000 2.4 ? 1013, 10000n10 1.0
? 1020 - At n 80, en/10000 5.5 ? 1030, 10000n10 1.1
? 1023 - 3! 6, 4! 24, 5! 120, 6! 720, 10!
3,628,800, while - 13! 6,227,020,800
- 25! 15,511,210,043,330,985,984,000,000
en/10000
10000n10
19Computation Times
- Current situation computer can examine 1,000,000
sequences per second and we wish to build a
scheduling system that has response time of no
longer than one minute. How many jobs can we
sequence optimally?
20Effect of Faster Computers
- Future Situation New computer is 1,000 times
faster, i.e. it can do 1 billion comparisons per
second. How many jobs can we sequence optimally
now?
21Polynomial vs. Non-Polynomial Algorithms
- Polynomial Example dispatching (sorting) time
goes up as n log n. Suppose, for comparison, that
is takes the same amount of time to sort 10 jobs
as it does to examine the 10! sequences. How
large a problem can we solve using dispatching?
22Effect of Faster Computer
- Situation New computer 1000 times faster. How
much does the size of dispatching problem we can
solve increase?
23Implications for Real Problems
- Computation NP algorithms are slow to use.
- No Technology Fix Faster computers dont help on
NP algorithm. - Scheduling is Hard Real scheduling problems tend
to be NP Hard. - Scheduling is Big Real scheduling problems also
tend to be quite large impossible to solve
optimally.
24Implications for Real Problems (cont.)
- Robustness? NP hard problems have many solutions,
and presumably many good ones. - Example 25 job sequencing problem. Suppose that
only one in a trillion of the possible solutions
is good. This still leaves 15 trillion good
solutions. Our task is to find one of these. - Role of Heuristics Polynomial algorithms can be
used to obtain good solutions. Example
heuristics include - Simulated Annealing
- Tabu Search
- Genetic Algorithms
25The Bad News
- Violation of Assumptions Most real-world
scheduling problems violate the assumptions made
in the classic literature - There are always more than two machines.
- Process times are not deterministic.
- All jobs are not ready at the beginning of the
problem. - Process time are sequence dependent.
- Problem Difficulty Most real-world production
scheduling problems are NP-hard. - We cannot hope to find optimal solutions of
realistic sized scheduling problems. - Polynomial approaches, like dispatching, may not
work well.
26The Good News
- Due Dates We can set the due dates.
- Job Splitting We can get smaller jobs by
splitting larger ones. - Single machine SPT results imply small jobs
clear out more quickly than larger jobs. - Mechanics of Johnsons algorithm implies we
should start with a small job and end with a
small job. - Small jobs make for small move batches and can
be combined to form larger process batches.
27The Good News (cont.)
- Feasible Schedules We do not need to find an
optimal schedule, only a good feasible one. - Focus on Bottleneck We can often concentrate on
scheduling the bottleneck process, which
simplifies problem closer to single machine case. - Capacity Capacity can be adjusted dynamically
(overtime, floating workers, use of vendors,
etc.) to adapt facility (somewhat) to schedule.
28Due Date Quoting
New Job (c)
Emergency Positions
Rate Out
WIP (W)
rP, s
Backlog (b)
Completed
m w b c
29Dynamic Due Date Quoting Analytic Approach
- Notation
- Required Condition
- Due Date Quote
prob of not completing m units of work within
lead time of l
30Dynamic Due Date Quoting Observations
- If s 0 then l m/m, regardless of s (i.e.,
quoting m/m days will achieve 100 service in a
system with no variability). - The due date is increasing in s (i.e., more
variability will require more safety lead time). - In order to achieve service of at least s, we
must round l up to the next integer to arrive at
the due date to quote in units of full days.
31Dynamic Due Date Quoting Example
32Dynamic Due Date Quoting Example (cont.)
- Solution
- Interpretation Note that n/m 1500/100 15
days, so to accommodate the variability we are
building in 2 days of safety lead time into our
quote.
33Dynamic Due Date Quoting Empirical Approach
- Basic Model
- where
- Methodology use control chart approach to adjust
FF to attain desired service level. - Advantages
- very few modeling assumptions
- simple to implement
- adapts to continuous improvement
34Scheduling via Lot Sizing
- Case TJ International Parallam Product
- Issues
- Press is bottleneck
- 12 hour changeover time to switch widths (12,
14, 16, 19) - Many products made from each width, but less
14/16 than 16/19 - Currently try to run at least a week between
changeovers - Seasonal demand inventory build up in
off-season - Problem determine run sequence each month
Lathe/Clip
Press
Saw
35Scheduling via Lot Sizing
- Notation
- Problem choose lot sizes for the month to meet
demand as efficiently as possible.
36Cyclic Schedule
- Approach fix lot sizes for all products and
compute number of cycles that can be run in the
month as - If the horizon is short, N should be rounded
down to the nearest integer. Otherwise, a
non-integer N is ok since you will be
rescheduling anyway. - Lot Sizes The lot sizes will be
-
- These, of course, need to be rounded or
ceilinged. - Problem You dont necessarily want to make the
same number of runs of a low demand product as of
a high demand product.
spare capacity setup/cycle
37Non-Cyclic Schedules
- Fundamental Issue What is your objective?
- Minimize Sum of Run Lengths? If we write out the
Lagrangian for the nonlinear optimization problem
and optimize assuming continuous lot sizes, we
get - where
- Problems
- Since we solved for lot sizes, we wind up with a
non-integer number of setups for the month. How
do we allocate the setup time? - What order do we run the products in the
non-cyclic schedule? - Conclusion We should solve for the number of run
cycles for each product. But what objective do we
use?
38MiniMax Schedule
- Objective minimize the maximum run length.
- We are never too far away from changing over to
another product. - Perhaps a good surrogate for maximizing
flexibility. - Notation Let
decision variable
39MiniMax Schedule (cont.)
40Example
- Data
- H 22 days ? 18 hrs/day 396 hrs
- u 0.9
- Minimal Run Schedule Suppose the plant has a
policy of never making less than 1500 so their
current lot sizes are 15000, 12000, 1500, 1500.
This takes 19.2 days, close to the 22 days
available, but it means that some product wont
be produced until pretty late in the month.
Total Prod Time Req 281.67 hrs
41Example (cont.)
- Cyclic Schedule The number of cycles per month
is - N (396 ? 0.9 - 281.67)/26 2.87
- yielding lot sizes of
- But N 2.87 means that the first two cycles in
the month use the above lot sizes while the last
one uses reduced lot sizes (87 of base).
42Example (cont.)
- MiniMax Schedule We can implement the above
formulation as follows - 1. Start with ni 1 for all i. Note that the
product with max run length is product 1 with a
run of 158 hours. - 2. Add setup for product 1, so n1 2, and its
max run length becomes 83 and now product 2 has
the longest run length at 128 hours. - 3. Add a setup for product 2, so n2 2, and its
max run length becomes 68 and now product 1 has
longest run length at 83 hours. - 4. Continue adding setups to product with longest
run until we run out of capacity. The optimal
solution is
43Example (cont.)
- Results The schedule goes as follows
- 1. We set up for the 4th product and get it out
of the way. - 2. Likewise for the 3rd.
- 3. Now we run 3750 of product 1 and 3000 of
product 2 in succession for 4 times. - The longest anyone would ever have to wait would
be for product 2 at the beginning of the month at
3.73 days. After that the longest wait would be
2.53 days. - Conclusion Minimax schedule results in shorter
wait for product than either minimal run schedule
or cyclic schedule. And it is simple to compute.
44TJ International Case
- Non-Cyclic Scheduling?
- Fewer runs of 12, 14
- But long setups make running anything twice in
the month difficult. - Skip 12, 14 some months?
- How to Handle Seasonality?
- Could run high volume products in off-season
(sure to sell) - But running 12, 14 products would help skip
setups and increase capacity in peak season - Need to choose fractile of demand to stock in
off-season (75?)
45Scheduling in Pull Environments
- Simple CONWIP Lines
- Simple sequence sufficient.
- No setups ? EDD sequence.
- CONWIP Lines with Shared Resources
- No setups ? EDD within lines.
- Need to augment sequence at shared lines.
- FISFO at shared resources.
FISFO sequencing
46Scheduling in Pull Environments (cont.)
- CONWIP Lines with Setups
- Sequence still reasonable.
- Must balance capacity loss with due date
requirements. - Exact solution impossible.
- Heuristics starting with EDD and rearranging
sequence can work well. - More General Environments
- Many routings make simple sequence insufficient.
- Backward scheduling due dates may be
infeasible. - Forward scheduling may be suboptimal.
47A Sequencing Example
- Problem Description
- 16 jobs
- Each job takes 1 hour on single machine
(bottleneck resource) - 4 hour setup to change families
- Fixed due dates
- Find feasible solution if possible
48A Sequencing Example (cont.)
- EDD Sequence
- Average Tardiness 10.375
49Sequencing Example (cont.)
- Greedy Approach
- Consider all pairwise interchanges
- Choose one that reduces average tardiness by
maximum amount - Continue until no further improvement is possible
50Sequencing Example (cont.)
- First Interchange Exchange jobs 4 and 5.
- Average Tardiness 5.0 (reduction of 5.375!)
51Sequencing Example (cont.)
- Configuration After Greedy Search
- Average Tardiness 0.5 (9.875 lower than EDD)
52Sequencing Example (cont.)
- A Better (Feasible) Sequence
- Average Tardiness 0
53Diagnostic Scheduling
- Goals
- Schedule at appropriate level of detail for
environment. - Make use of realistic, obtainable data.
- Accommodate intangibles in decision-support
mode. - Approach
- Deterministic model.
- Based on conveyor model.
- Release as late as possible subject to due dates.
- Provide diagnostics on infeasibilities.
- Types of Infeasibility
- WIP (must move out due dates).
- Capacity (can move due dates or increase
capacity).
54Scheduling Infeasibilities Example
- Problem Description
- Capacity 100/day
- Minimum Practical Lead Time 3 days
- WIP in system with 1, 2, 3 days to go 95, 90,
115
55Scheduling Infeasibilities Example (cont.)
- WIP infeasibility
- capacity infeasibility
56Cumulative Demand vs. Cumulative Capacity
57Surplus
WIP Infeasibility
Capacity Infeasibility
58MRP-C Notation
59MRP-C Notation (cont.)
60MRP-C Example
How should we resolve infeasibility?
61MRP-C Example Correcting Infeasibility
Delay 40 units of demand in period 12 10 to
period 13, 20 to period 14, 10 to period 14
62Multi-Stage MRP-C Calculations
End Items
Stage 1
Stage 2
Stage 3
Requirements
Requirements
Requirements
Starts
Starts
Starts
- Issues
- must work backward from end items (like in MRP)
- disaggregation can be tricky (poor tie-breaking
can cause WIP infeasibility)
63Scheduling Software Approaches
- Fixed leadtime backward scheduling (MRP)
- Rule based forward scheduling (FACTOR)
- AI/Expert System approaches (MIMI)
- Bottleneck scheduling (OPT)
- Heuristics (MADEMA/PROMIS)
- Diagnostic (backward) scheduling (MRP-C)
- Perturbation scheduling (developmental)
64Perturbation Scheduling
- Simulation Engine
- input lead times, WIP positions, demands,
priority rules - fast simulator based on conveyor model
- predict range of completion times
- Due Date Quoting
- given a set of demands
- find due dates that ensure target service level
- useful in coordinating multi-level system
- Lead Time Optimization
- specify objective (e.g., average tardiness)
- use perturbation analysis to compute lead time
gradients - optimize lead times during simulation
- lead times specify release schedule
65Linking Scheduling with Releases
- Approach
- Use Scheduling Module to plan.
- Use SFC Module to launch orders.
- Track progress relative to schedule with
Production Tracking Module. - Scheduling Modules
- Finite capacity scheduler (e.g., MRP-C)
- MRP
- Ad hoc method
66Linking Scheduling with Release (cont.)
- SFC Modules
- CONWIP
- Kanban
- Pull-From-the Bottleneck
- Arbitrary WIP-Cap Mechanism
- Benefits
- Prevent WIP explosions
- Stabilize cycle times ? facilitates better
scheduling - Clear opportunity for feedback from floor to
scheduler.
67Scheduling Takeaways
- Scheduling is hard!
- Even simple toy problems generate complicated
mathematics. - Scheduling can be simplified through the
environment - due date quoting
- flow simplification ? sequencing in place of
scheduling - Finite capacity scheduling is coming.
- But in what form is unclear (shifting bottleneck,
genetic algorithms, rule based systems, etc.). - Diagnostics are important in scheduling.
- pure optimization generally impossible
- need good interface to allow human intervention
68(No Transcript)