Manufacturing Resource Planning Historical Perspective ERP- Enterprise Resource Planning MRP II – Manufacturing Resource Planning mrp – material requirements planning MRP Crusade (1975) Material Requirements Planning Make sure you have enough parts when you need them Take future demands, factor in lead times (time phase), compare to on hand, order Determine order size and timing Control and plan purchasing vs. OSWO inventory management Closed-Loop MRP Capacity Consideration: Part routings Calculate loads on each work station See if scheduled load exceeds capacity Lead-time long enough to allow some shuffling to make plan feasible MRP II -- Manufacturing Resource Planning “A method for the effective planning of all resources of a manufacturing company” (APICS def.) Financial accounting incorporated Sales Operations Planning Simulate capacity requirements of different possible Master Production Schedules 1989, $1.2B MRPII sales in U.S., one third of total software sales Success? MRP Crusade Begins Electronic Data Interchange My computer talks to yours, tells you exactly what I want to order, when You fill out a form, very compressed message sent, viewed as form Software, hardware expensive to implement Sample Purchase Transaction ST88850*1 BEG*00*NE*00498765**010698 PID*X*08*MC**Large Widget P01**5*DZ*4.55*TD CTT*1 SE*1*1 Transaction Set identifier Beginning of Segment Description of Product Baseline Item Data Transaction Totals End of Segment XML e Xtensible Markup Language XML provides self-describing information. Much easier, faster to implement or modify than EDI. Expected to replace EDI. Standardization through RosettaNet efforts ERP differences Material planning Capacity planning Product design Information warehousing All functions in the entire company operate off of one common set of data Instantaneous updating, visibility Historical Perspective User PCs Application Server(s) Database Server(s) ERP Sales Worldwide sales of top 10 vendors 1995 $2.8 B 1996 $4.2 B 1997 $5.8 B $3.2 B SAP Fortune survey: 44% reported spending at least 4 times as much on implementation as on software ERP Challenges Modules assume “best practices:” Change software to reflect company ($) Change company to follow software (?) Accuracy of data Drives entire system Ownership of / responsibility for Ability to follow structure ERP Novel? “Goal-like” novel Hero learns more about ERP, deciding if it is right for his company Company rushes through installation General introduction to ERP systems, what they do, how different from MRP SAP R/3 screen shots 3 Reasons for ERP 1. Legacy systems outdated and need replacing anyway 2. Desire for greater communication between locations 3. Reconfigure business to take advantage of current and future communications and computing breakthroughs Flexibility Why ERP? High Common Client Multiple Processes Multiple Clients Multiple Processes Low Common Client “Best Practices” Multiple Clients Mostly “Best Practices” High Centralization Low ERP Considerations 1. Control: how much centralization, drill-down visibility? 2. Structure: How large & dispersed, how tightly integrated does it need to be? 3. Database: desired structure, accessibility 4. Customization: out/in source, how willing? Ability to modify in real time. Creating in-house experts vs. continued consulting dependence 5. Best practices: how willing to embrace? Source: Carol A. Ptak “ERP: Tools, Techniques and Applications for Integrating the Supply Chain,” St. Lucie Press, APICS Series on Resource Management, 1999, p. 252. How do we System for organizing WIP releases Consider LT for each item Look at BOM to see what parts needed Release so they will arrive just as needed Example – Snow Shovel Order quantity is 50 units LT is one week MRP Table 1 Gross Requirements 3 10 Scheduled receipts (begin) Projected Available Balance (ending) 2 4 5 40 10 50 4 54 44 44 4 Net Requirements 6 Planned Order Receipts Planned Order Releases 6 units short MRP Table 1 Gross Requirements 10 Scheduled receipts (begin) Projected Available Balance (ending) 2 3 4 5 40 10 50 4 54 44 44 4 Net Requirements 6 Planned Order Receipts Planned Order Releases Order 50 units week earlier 50 50 Ending Inventory 1 Gross Requirements 10 Scheduled receipts (begin) Projected Available Balance (ending) 2 3 4 5 40 10 50 4 54 44 44 4 44 Net Requirements 6 Planned Order Receipts Planned Order Releases Ending inventory 50 50 Terminology Projected Available balance Not on-hand (that may be greater) Tells how many will be available (in ATP sense) Planned order releases ≠ scheduled receipts Only when material has been committed to their production Move to scheduled receipts as late as possible Preserves flexibility 1605 Snow Shovel 1605 Snow Shovel 314 scoop assembly 118 Shaft (wood) 14127 Rivet (4) 048 Scoop-shaft connector 062 Nail (4) 13122 Top Handle Assy 314 scoop assembly 314 scoop assembly 019 Blade (steel) 2142 Scoop (aluminum) 14127 Rivet (6) 13122 Top Handle Assembly 13122 Top Handle Assembly 11495 Welded Top handle bracket Assembly 457 Top handle (wood) 1118 Top handle Coupling (steel) 129 Top Handle Bracket (steel) 082 Nail (2) BOM Explosion Process of translating net requirements into components part requirements Take into account existing inventories Consider also scheduled receipts BOM Explosion Example Need to make 100 shovels We are responsible for handle assemblies. 13122 Top Handle Assembly 13122 Top Handle Assembly 11495 Welded Top handle bracket Assembly 457 Top handle (wood) 1118 Top handle Coupling (steel) 129 Top Handle Bracket (steel) 082 Nail (2) Net Requirements Part Description Top handle assy Top handle Nail (2 required) Bracket Assy Top bracket Top coupling Inv 25 22 4 27 15 39 Sch Gross Rec Req -100 25 50 --15 Net Req 75 Net Requirements Part Description Top handle assy Top handle Nail (2 required) Bracket Assy Top bracket Top coupling Inv 25 22 4 27 15 39 Sch Rec -25 50 --15 Gross Req 100 75 150 75 Net Req 75 28 96 48 13122 Top Handle Assembly 13122 Top Handle Assembly 11495 Welded Top handle bracket Assembly 457 Top handle (wood) 1118 Top handle Coupling (steel) 129 Top Handle Bracket (steel) 082 Nail (2) Net Requirements Part Description Top handle assy Top handle Nail (2 required) Bracket Assy Top bracket Top coupling Sch Inv 25 22 4 27 15 39 Gross Rec Req -100 25 75 50 150 -75 -48 15 48 Net Req 75 28 96 48 33 -- Timing of Production This tells us how many of each we need Doesn’t tell when to start Start as soon as possible? Dependent events (oh no, not that!) Front schedule Cutting approach Back schedule 13122 Top Handle Assy 13122 Top handle LT = 2 Gross Req 1 2 20 3 25 25 5 5 4 10 Sch receipts Proj. Avail Bal (ending) Net Req 5 Pl Order Rec Pl Order Rel 5 5 5 6 7 20 5 8 9 10 35 10 13122 Top Handle Assy-2 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 5 5 20 20 35 10 35 10 13122 Top Handle Assy -3 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 5 5 20 20 5 5 35 10 35 10 457 Top Handle 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec 5 Pl Order Rel One handle for Each assembly LT = 2 Gross Req 5 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 2 5 3 25 22 22 20 5 20 5 4 20 5 5 35 10 35 10 6 7 8 35 10 9 10 457 Top Handle LT = 2 Gross Req 1 2 5 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 3 25 22 22 17 4 20 5 5 6 7 8 35 10 9 10 457 Top Handle LT = 2 Gross Req Sch receipts Proj. Avail Bal (ending) Net Req 1 2 5 3 4 20 5 5 6 25 22 22 17 42 22 17 17 18 10 Pl Order Rec Pl Order Rel 7 8 35 10 18 10 18 10 9 10 082 Nail (2 required) 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec 5 Pl Order Rel Two nails for Each assembly 5 LT = 1 Lot Size = 50 Gross Req 1 Sch receipts 50 Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 4 54 2 10 20 3 20 5 5 4 5 40 10 35 10 35 10 6 7 8 70 20 9 10 082 Nail (2 required) LT = 1 Lot Size = 50 Gross Req 1 Sch receipts 50 Proj. Avail Bal (ending) Net Req 2 10 3 4 54 44 44 4 5 40 10 4 6 Pl Order Rec Pl Order Rel 50 50 6 7 8 70 20 9 10 082 Nail (2 required) LT = 1 Lot Size = 50 Gross Req 1 Sch receipts 50 Proj. Avail Bal (ending) Net Req 2 10 3 4 54 44 44 4 5 40 10 4 Pl Order Rec Pl Order Rel 44 6 50 50 6 7 8 70 20 26 20 9 10 082 Nail (2 required) LT = 1 Lot Size = 50 Gross Req 1 Sch receipts 50 Proj. Avail Bal (ending) Net Req 2 10 3 4 54 44 44 4 5 40 10 4 Pl Order Rec Pl Order Rel 7 8 70 20 44 44 24 6 26 50 50 6 50 4 9 10 4 4 11495 Bracket Assembly 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec 5 Pl Order Rel One bracket for Each assembly 5 LT = 2 Gross Req 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 27 2 3 20 5 20 5 4 5 35 10 35 10 6 7 8 9 10 11495 Bracket Assembly 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec 5 Pl Order Rel One bracket for Each assembly 5 LT = 2 Gross Req 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 27 2 5 3 20 5 20 5 4 5 35 10 35 10 6 7 8 9 10 11495 Bracket Assembly 13122 Top handle LT = 2 Gross Req 1 2 20 3 4 10 5 6 7 20 5 8 9 10 35 10 25 25 5 5 0 5 0 0 0 20 5 0 0 0 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec 5 Pl Order Rel One bracket for Each assembly 5 LT = 2 Gross Req 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 27 2 5 3 20 5 20 5 4 20 5 5 35 10 35 10 6 7 8 35 10 9 10 11495 Bracket Assembly LT = 2 Gross Req 1 2 5 3 4 20 22 22 2 5 5 6 7 8 35 10 Sch receipts Proj. Avail Bal (ending) Net Req 27 Pl Order Rec Pl Order Rel 3 3 35 10 3 35 10 35 10 9 10 129 Top Bracket LT = 2 Gross Req 1 2 5 3 4 20 5 5 6 7 8 35 10 9 10 Sch receipts Proj. Avail Bal (ending) Net Req 27 22 22 2 Pl Order Rec Pl Order Rel 3 LT = 1 Gross Req 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 15 2 3 3 3 35 10 3 35 10 35 10 4 5 6 7 35 10 8 9 10 129 Top handle bracket LT = 1 Gross Req 1 2 3 3 4 5 6 7 35 10 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 15 15 15 12 12 23 10 23 10 23 10 8 9 10 1118 Top handle coupling LT = 2 Gross Req 1 2 5 3 4 20 5 5 6 7 8 35 10 9 10 Sch receipts Proj. Avail Bal (ending) Net Req 27 22 22 2 Pl Order Rec Pl Order Rel 3 LT = 3 Safety Stock = 20 Gross Req 1 Sch receipts Proj. Avail Bal (ending) Net Req Pl Order Rec Pl Order Rel 39 2 3 35 10 3 35 10 35 10 3 3 4 5 6 35 10 7 8 9 10 1118 Top handle coupling LT = 3 Safety Stock = 20 Gross Req Sch receipts Proj. Avail Bal (ending) Net Req 1 2 3 3 4 15 39 39 54 51 51 16 4 Pl Order Rec Pl Order Rel 5 6 7 35 10 4 4 8 9 10 1118 Top handle coupling LT = 3 Safety Stock = 20 Gross Req Sch receipts Proj. Avail Bal (ending) Net Req 1 2 3 3 4 8 9 10 15 39 39 54 51 51 20 20 20 20 20 20 4 10 Pl Order Rec Pl Order Rel 5 6 7 35 10 4 4 10 10 Other considerations Safety stock if uncertainty in demand or supply quantity Safety LT if uncertainty in arrival time of supply Don’t let available go down to 0 Place order earlier than necessary Order quantities EOQ, Lot-For-Lot, Periodic Order quantity, others MRP Priorities First: Get installed, part of ongoing managerial process, get users trained Understand critical linkages with other areas Achieve high levels of data integrity Link MRP with front end, engine, back end Then: Determine order quantities more exactly Buffering concepts Nervousness Ordering Policies Dependent Demand Not independent demand Discrete – not continuous Lumpy – may have surges Complexity Reduces costs – ordering & holding Anything other than lot-for-lot Increases lumpiness downstream Assumptions All requirements must be available at start of period All future requirements must be met, and can’t be backordered System operated on periodic basis (e.g. weekly) Requirements properly offset for LTs Parts used uniformly through a period Use average inventory levels for holding cost Example Demands Try several lot-sizing methods Economic Order Quantity Periodic Order Quantity Part Period Balancing Wagner Within Order cost = $300 per order = CP Inventory Carrying cost = $2 / unit/ week = CH Avg Demand = 92.1 / wk = D Week number Requirements 1 2 3 4 5 6 7 8 9 10 11 12 10 10 15 20 70 180 250 270 230 40 0 10 EOQ Minimizes total ordering & holding costs Assumes demand same every period Definitely not always true for this use Avg. demand and holding cost need same time units (e.g. per week) Economic Lot Size: 2CP D ELS CH Where: D = avg demand CP = ordering cost CH = holding cost EOQ Sqrt( 2 * 300 * 92.1 / 2) = 166 Week number Requirements 1 10 Order Quant 166 Begin Inv Ending Inv 2 10 3 15 4 20 5 70 6 7 8 9 180 250 270 230 10 40 11 0 12 10 EOQ Week number Requirements 1 10 Order Quant 166 Begin Inv 166 156 146 131 111 207 250 270 230 166 126 126 Ending Inv 156 146 131 111 41 2 10 3 15 4 20 5 6 7 8 9 10 70 180 250 270 230 40 Ordering cost = 6 * 300 = Inv carry cost = 1,532.5 * 2 = Total 11 0 12 10 166 223 270 230 166 27 0 $1,800 $3,065 $4,865 0 0 126 126 116 Periodic Order Quantities EOQ Gave good tradeoff between ordering & holding resulted in a lot of leftovers. Only order enough to get through a certain number of periods – no leftovers How many? EOQ / avg. demand 166 / 92.1 = 1.805 ~ 2 weeks’ worth Periodic Order Quantities Week No. 1 Req. 10 Orders 20 Begin 20 End 10 Avg Inv 15 2 10 4 20 10 0 3 15 35 35 20 5 6 7 8 9 10 11 12 70 180 250 270 230 40 0 10 250 520 270 10 20 250 180 520 270 270 40 10 10 0 180 0 270 0 40 0 10 0 5 28 10 215 Ordering cost = 6 * 300 = Inv carry cost =1,082.5 * 2 = Total 90 395 135 155 $1,800 $2,145 $3,945 20 10 5 Part Period Balancing (Least Total Cost) Increase the quantity until holding costs equal the ordering cost Week No. 1 Req. 10 2 10 3 15 4 20 5 6 7 8 9 10 11 12 70 180 250 270 230 40 0 10 Order 10 – holding = 10/2*2 = 10 Order 20 – holding = 10 + 10*1.5*2 = $40 Order 35 = 40 + 15*2.5*2 = $115 Order 55 = 115 + 20*3.5*2 = $255 Order 125 = 255 + 70*4.5*2 = $85 Part Period Balancing Week No. 1 Req. 10 Orders 55 2 10 0 3 15 0 4 20 0 5 6 7 8 9 10 11 12 70 180 250 270 230 40 0 10 Week 5: Order 70: Holding = 10*0.5*2 = $10 Order 250: 10 + 180*1.5*2 = $550 So I could: Order 250 units, pay $300 in ordering and $540 holding, for a total of $840, Order 70 now, 180 next week, and pay $600 in ordering and $10 + 180*0.5*2=180 in holding = $790 Seems like the second option is best. Part Period Balancing Week No. 1 Req. 10 Orders 55 2 10 0 3 15 0 4 20 0 5 6 7 8 9 10 11 12 70 180 250 270 230 40 0 10 70 180 250 270 When should we place a separate order? If 1.5*$2*D > 300. D>300/3 = 100 Whenever demand is >= 100, we might as well place a separate order. What about week 9? Order 230: holding = 230*0.5*2 = $230 Order 270: = 230 + 40*1.5*2 = $350 Order 280: = 350 + 10*3.5*2 = $420 Part Period Balancing Week No. 1 Req. 10 Orders 55 Begin 55 End 45 2 10 0 45 35 3 15 0 35 20 4 20 0 20 0 5 6 7 8 9 10 11 12 70 180 250 270 230 40 0 10 70 180 250 270 280 0 0 0 70 180 250 270 280 50 10 10 0 0 0 0 50 10 10 0 Wagner-Within Mathematically optimal Work back from planning period farthest in the future Consider all possibilities: Order for 5, 4 and 5, 3 and 4, then 5, etc. Uses “dynamic programming” – similar to linear programming Simulation Experiments What is best under real-world conditions? Multiple levels to be concerned about Real-time changes