Upload
patrick-mcbride
View
214
Download
0
Embed Size (px)
Citation preview
MGTSC 352Lecture 14: Aggregate Planning
WestPlast CaseHow to deal with multiple objectives
How to use binary variables
AltaMetal CaseAggregating into multiple product groups
An example where having integer constraints makes the problem much harder to solve
WestPlast Criteria
• Maximize Revenue• Maximize Plant Capability Index (PCI)
1. plant output rate
2. quality compared to industry standards
3. raw material quality needed
4. overhead burden
5. process aggravation
each subcriteria has a “weight” (10% - 30%)
Questions
• Our “better plan” produces 9 products. Suppose that, on the average, adding a product takes machine time equivalent to 10,000 lbs of output per product.
• Does WestPlast want to make more than 9 products?
• Less than 9 products?• How can we find out?
Pgs. 79 - 80
Using Binary Variables to Limit # of Products
• Add binary decision variable for each product (1 = produce, 0 = don’t produce)
• Add binary constraints• Want:
– If binary variable = 0 then amt. produced = 0– If binary variable = 1 then amt. produced ≤ demand
• IF() formulas would make the problem nonlinear• Instead:
– Add constraint amt. produced ≤ (binary variable) demand
Pgs. 85-86
Binary Variables
• Assignment Problems
• Location Problems
• Routing Problems
• Product Selection Problems
Anything with an either yes or no option
WestPlast wants to:
• Maximize Revenue• Maximize PCI = Plant Capability Index• By changing product mix• Subject to:
– Contractual obligations– Don’t produce more than forecast demand
• How can we optimize two criteria at the same time?
How can we optimize two criteria at the same time?
• Short answer: we can’t– The criteria may be in conflict– Maximizing revenue may mean minimizing
PCI
• Long answer: we can’t, but we can find the “efficient frontier”= “Set of Pareto optimal solutions”= “Set of non-dominated solutions”= “Production possibilities curve”
AltaMetal Ltd. (Case 8, pg. 111, and pgs. 87 – 92)
• Another aggregate planning problem– 1,000 products aggregated to 9 groups
AltaMetal Ltd.(Case 8, pg. 111, and pgs. 87 – 92)
0
500
1,000
1,500
2,000
2,500
3,000
3,500
4,000
4,500
5,000
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Tons
Total demand
Capacity
Is it possible to satisfy demand?
If so, how? (production plan by product group)
Excel …
Active Learning
• Pairs, 1 min.
• Formulate AltaMetal’s problem in English
• What to optimize, by changing what, subject to what constraints …
To many change-overs …
• The JIT (“just-in-time”) plan we found may require too many changeovers
• What if we require a minimum lot size of 30 tons?– Daily capacity = 90 tons
At most 3 lots per day
• Changing cells:– Old: # of tons of product X to produce in month Y– New: # of __ of product X to produce in month Y
Excel …
Tired of Waiting for Solver?
• Hit Escape key
Summary (pg. 92)
JIT 30-ton-lots
# of different products per month
Smallest lot
Ton-months of inventory
Formulating Optimization Models (pg. 93)
• Formulate the problem in English– Or French, or Chinese, or Icelandic, …
• Start with data in spreadsheet• Define decision variables – turquoise cells• Express performance measure (profit, or cost, or
something else) as function of the decision variables
• Express constraints on decision variables– Scarce resources– Physical balances– Policy constraints
Solving Optimization Problems
• Try simple values of the decision variables to check for obvious errors
• Guess at a reasonable solution and see if model is ‘credible’ (sniff test)– Look for missing or violated constraints– Is profit (cost) in ballpark?
Optimizing with Solver
• Use Simplex LP method (‘assume linear model’)
whenever possible• Set Options properly
– automatic scaling, assume non-negative
• Watch for diagnostic messages – do not ignore! (infeasible, unbounded)
• Interpret solution in real-world terms and again check for credibility
Things to Remember
• The Simplex LP method always correctly solves linear programs
• Solver is a slightly imperfect implementation of the Simplex method (but you should generally assume that it is correct)
• The biggest source of errors is in the model building process (i.e., the human)