Transcript Production Scheduling for the McGuiness & Co. Microbrewery
Production Scheduling for the McGuiness & Co. Microbrewery
A Production Planning & Control Framework
Tactical Planning
Demand Forecasting Production Scheduling Capacity Planning Material Requirements Planning
Execution
Sales order Processing
Recording
Purchasing Inventory records Production Control Shop-floor data Collection
The Production Scheduling Problem
Capacity Consts.
Company Policies Product Charact.
Economic Considerations Placed Orders Forecasted Demand Current Inventory Positions Already Initiated Production
Production Scheduling
Master Production Schedule: When & How Much to produce for each product Planning Horizon Time unit Capacity Planning
Problem Specialization for McGuinness Microbrewery Case Study
• Capacity Constraints: Number and capacity of fermentors • Company Policies: – Product cannot be shelved for more than 2 months – Production in a fermentor can be started at any level of its capacity.
• Product Characteristics: – Production lead times • Economic Considerations: (Unnecessary) Inventories should be minimized (consistent with the Just-In-Time philosophy) • Planning Horizon: 6-12 months (based on production lead times, product seasonalities, and product obsolescence) • Time unit: 1 week (based on the order of production lead times)
Possible Approaches • Empirical Approach:
Spreadsheet-based Simulation
• Analytical Approach:
Mathematical (Integer) Programming formulation
The Driving Logic for the Empirical Approach
Demand Availability: •Initial Inventory Position •Scheduled Receipts Compute Future Inventory Positions Net Requirements Future inventories Scheduled Releases Lot Sizing Resource (Fermentor) Occupancy Product i Feasibility Testing Schedule Infeasibilities Master Production Schedule Revise Prod. Reqs
Example: Implementing the Empirical Approach in Excel
Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage # Fermentors: 1 0 1 0 2 0% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 Unit Cap: 2 0 2 0% 0 2 2 50 3 2 205 40 75 200 3 0 2 0% 0 3 3 40 165 30 45 4 0 2 0% 0 4 4 40 125 30 15 Shelf Life: 20 5 0 2 0% 0 5 5 40 85 40 -25 25 6 0 2 0% 0 6 6 40 45 40 -40 40 7 0 2 0% 0 7 7 40 5 40 -40 40 8 0 2 0% 0 8 8 40 -35 35 40 -40 40 9 0 2 0% 0 9 9 40 -40 40 50 -50 50 10 0 2 0% 0 10 10 40 -40 40 50 -50 50
Computing Inventory Positions and Net Requirements
Inventory Position: IP i = max{IP i-1 ,0}+ SR i +BNR i -D i (Material Balance Equation) (IP i-1 ) + i D i SR i +BNR i IP i Net Requirement: NR i = abs(min{0, IP i })
Problem Decision Variables: Scheduled Releases
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 1 0 2 0% 0 Unit Cap: 2 0 2 0% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 2 2 50 205 3 2 40 75 200 3 0 2 0% 0 3 3 40 165 30 45 4 0 2 0% 0 Shelf Life: 20 5 0 2 0% 0 6 1 2 100% 0 7 1 2 100% 0 4 4 40 125 30 15 5 5 40 85 40 -25 25 6 6 40 45 200 1 1 40 -40 40 7 7 40 5 1 40 -40 40 8 0 2 0% 0 8 8 40 165 200 40 -40 40 9 0 2 0% 0 9 9 40 125 50 -50 50 10 0 2 0% 0 10 40 10 85 50 -50 50
Testing the Schedule Feasibility
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 1 0 2 0% 0 Unit Cap: Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 2 2 50 205 3 2 40 75 200 1 1 200 2 1 2 100% 0 3 1 2 100% 0 4 1 2 100% 0 3 3 40 165 30 45 1 4 4 40 125 30 15 1 Shelf Life: 20 5 0 2 0% 0 5 5 40 85 40 175 200 6 1 2 100% 0 6 6 40 45 200 1 1 40 135 7 2 NO 2 200% 0 7 7 40 5 1 40 95 200 1 1 8 1 2 100% 0 9 1 2 100% 0 8 8 40 165 200 40 55 1 9 9 40 125 50 5 1 10 0 2 0% 0 10 40 10 85 50 155 200
Fixing the Original Schedule
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 1 0 2 0% 0 Unit Cap: 2 1 2 100% 0 3 1 2 100% 0 4 1 2 100% 0 5 1 2 100% 0 6 1 2 100% 0 7 1 2 100% 0 8 1 2 100% 0 9 1 2 100% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 2 2 50 205 3 2 40 75 200 1 1 200 3 3 40 165 30 45 1 4 4 40 125 30 15 1 Shelf Life: 5 5 40 85 200 1 1 40 175 200 20 6 6 40 45 1 40 135 7 7 40 205 200 40 95 200 1 1 8 8 40 165 40 55 1 9 9 40 125 50 5 1 10 0 2 0% 0 10 40 10 85 50 155 200
Infeasible Production Requirements
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 Unit Cap: 200 1 1 2 100% 0 2 1 2 100% 0 3 1 2 100% 0 4 1 2 100% 0 Shelf Life: 20 5 0 2 0% 0 6 0 2 0% 0 7 0 2 0% 0 8 0 2 0% 0 9 0 2 0% 0 10 0 2 0% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 100 0 1 45 55 1 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 2 2 50 200 1 205 3 2 40 75 200 1 1 3 40 4 40 3 165 40 35 1 4 125 40 -5 5 1 5 40 6 40 85 5 40 6 40 160 200 45 120 7 40 8 40 9 40 10 40 7 5 40 80 8 -35 35 40 40 9 -40 40 50 -10 10 10 -40 40 50 -50 50
Modeling the Inventory Spoilage
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 1 0 2 0% 0 Unit Cap: 2 0 2 0% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 2 2 50 205 3 2 40 75 200 3 0 2 0% 0 3 3 40 165 30 45 4 0 2 0% 0 4 40 4 125 30 15 Shelf Life: 6 5 0 2 0% 0 6 0 2 0% 0 5 5 40 85 40 -25 25 6 6 40 45 40 -40 40 7 0 2 0% 45 7 40 45 -40 40 -40 40 8 0 2 0% 0 8 40 -40 40 7 40 8 40 -40 40 9 0 2 0% 0 9 40 10 40 9 -40 40 50 -50 50 10 0 2 0% 0 10 -40 40 50 -50 50
A feasible schedule with spoilage effects
# Fermentors: Microbrewery Performance Week # Fermentors Req'd Feasible Loading?
Min # Fermentors Req'd Fermentor Utilization Total Spoilage 1 0 Unit Cap: 1 1 2 100% 0 2 1 2 100% 0 Pale Ale Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied 100 Fermentation Time: 0 1 45 200 1 255 Stout Week Demand Scheduled Receipts Fermentors Released Inventory Spoilage Inventory Position Net Requirements Batched Net Receipts Scheduled Releases Fermentors Seized Total Fermentors Occupied Fermentation Time: 150 0 1 35 115 200 1 1 2 2 50 205 3 2 40 75 1 200 3 1 2 100% 0 4 1 2 100% 0 3 3 40 165 30 45 1 4 4 40 125 200 1 1 30 215 200 Shelf Life: 6 5 1 2 100% 0 5 5 40 85 1 40 175 6 0 2 0% 0 6 6 40 245 200 40 135 7 1 2 100% 45 7 40 45 160 7 40 95 200 1 1 8 1 2 100% 0 8 8 40 120 40 55 1 9 1 2 100% 0 9 40 80 9 50 5 1 10 0 2 0% 5 10 40 40 10 50 5 150 200
Computing Spoilage and Modified Inventory Position
Spoilage: SP i = max{0, IP i-1 ( SR i-1 +SR i-2 +…+SR i-sl+1 ) ( BNR i-1 +BNR i-2 +…+BNR i-sl+1 )} Inventory Position: IP i = max{IP i-1 ,0}+ SR i +BNR i -D i -SP i SR i (Material Balance Equation) (IP i-1 ) + +BNR i i D i SP i IP i
Advantages and Disadvantages of the Empirical Approach
• Advantages: – Easy to present and motivate – Provides clear visibility to the problems and their underlying causes – Supports effective and efficient “what-if” analysis – Provides modeling flexibility • Disadvantages – No guarantee for optimality or exhaustive search for a feasible solution – Hard to trace for more complex production environments