Download presentation
Presentation is loading. Please wait.
Published byBernard Hicks Modified over 9 years ago
1
Chapter 15: Production Scheduling TM 663 Operations Planning November 28,2011 Paula Jensen
2
Agenda Factory Physics Chapter 15: Production Scheduling (New Assignment Chapter 15 problems 1-3)
3
Production Scheduling Let all things be done decently and in order. – I Corinthians
4
Goals of Production Scheduling High Customer Service: on-time delivery Low Inventory Levels: WIP and FGI High Utilization: of machines INVENTORY UTILIZATION SERVICE
5
Meeting 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.
6
Reducing WIP and Cycle Time Less WIP Equals Shorter Cycle Times (Little’s 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
7
Classic 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.
8
Classic 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.
9
Classic 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.
10
Classic 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.
11
Johnson’s Algorithm Example Data: Iteration 1: min time is 4 (job 1 on M1); place this job first and remove from lists:
12
Johnson’s 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
13
Gantt Chart for Johnson’s Algorithm Example Short task on M1 to “load up” quickly. Short task on M2 to “clear out” quickly.
14
Classic 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. –(shortest process time) 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.
15
The 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 e n /10000 and 10000n 10. –At n = 40, e n /10000 = 2.4 10 13, 10000n 10 = 1.0 10 20 –At n = 80, e n /10000 = 5.5 10 30, 10000n 10 = 1.1 10 23 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 e n /10000 10000n 10
16
Computation 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?
17
Effect 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?
18
Polynomial 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?
19
Effect of Faster Computer Situation: New computer 1000 times faster. How much does the size of dispatching problem we can solve increase?
20
Implications for Real Problems Computation: NP algorithms are slow to use. No Technology Fix: Faster computers don’t 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.
21
Implications 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
22
The 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.
23
The 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 Johnson’s 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.
24
The 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.
25
Due Date Quoting New Job (c) “Emergency” Positions Backlog (b) m = w + b +c Completed Rate Out r P, WIP (W)
26
Dynamic Due Date Quoting – Analytic Approach Notation: Required Condition: Due Date Quote: safety lead time prob of not completing m units of work within lead time of l
27
Dynamic Due Date Quoting – Observations If = 0 then l = m/ , regardless of s (i.e., quoting m/ days will achieve 100% service in a system with no variability). The due date is increasing in (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.
28
Dynamic Due Date Quoting Example Data:
29
Dynamic Due Date Quoting Example (cont.) Solution: Interpretation: Note that n/ = 1500/100 = 15 days, so to accommodate the variability we are building in 2 days of safety lead time into our quote.
30
Dynamic 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
31
Scheduling 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/ClipPressSaw
32
Scheduling via Lot Sizing Notation: Problem: choose lot sizes for the month to meet demand as “efficiently” as possible.
33
Cyclic 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 don’t necessarily want to make the same number of runs of a low demand product as of a high demand product. spare capacity setup/cycle
34
Non-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?
35
MiniMax 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
36
MiniMax Schedule (cont.) IP Formulation:
37
Example 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 won’t be produced until pretty late in the month. Total Prod Time Req = 281.67 hrs
38
Example (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).
39
Example (cont.) MiniMax Schedule: We can implement the above formulation as follows: 1. Start with n i = 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 n 1 = 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 n 2 = 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:
40
Example (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.
41
TJ 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%?)
42
Scheduling 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
43
Scheduling 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.
44
A 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
45
A Sequencing Example (cont.) EDD Sequence: Average Tardiness: 10.375
46
Sequencing Example (cont.) Greedy Approach: Consider all pairwise interchanges Choose one that reduces average tardiness by maximum amount Continue until no further improvement is possible
47
Sequencing Example (cont.) First Interchange: Exchange jobs 4 and 5. Average Tardiness: 5.0 (reduction of 5.375!)
48
Sequencing Example (cont.) Configuration After Greedy Search: Average Tardiness: 0.5 (9.875 lower than EDD)
49
Sequencing Example (cont.) A Better (Feasible) Sequence: Average Tardiness: 0
50
Diagnostic 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).
51
Scheduling 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
52
Scheduling Infeasibilities Example (cont.) *WIP infeasibility **capacity infeasibility
53
Cumulative Demand vs. Cumulative Capacity
54
Surplus WIP Infeasibility Capacity Infeasibility
55
MRP-C Notation
56
MRP-C Notation (cont.)
57
MRP-C Example How should we resolve infeasibility?
58
MRP-C Example: Correcting Infeasibility Delay 40 units of demand in period 12: 10 to period 13, 20 to period 14, 10 to period 14
59
Multi-Stage MRP-C Calculations Issues –must work backward from end items (like in MRP) –disaggregation can be tricky (poor tie-breaking can cause WIP infeasibility) Stage 1 Requirements Starts Stage 2 Requirements Starts Stage 3 Requirements Starts End Items
60
Scheduling 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)
61
Perturbation 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
62
Linking 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
63
Linking 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.
64
Scheduling 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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.