Professional Documents
Culture Documents
Chapter 14: Solving and Analyzing Optimization Models: © 2007 Pearson Education
Chapter 14: Solving and Analyzing Optimization Models: © 2007 Pearson Education
Excel Solver
Standard Solver (packaged with Excel) Premium Solver (available on CD-ROM) Can toggle between both versions
Premium Solver
Solution procedures
Standard
Premium
Possible Outcomes
Unique optimal solution Alternate optimal solution Unbounded problem Infeasible problem
Slack is the difference between the left- and righthand sides of a constraint when the optimal solution is substituted for the variables. A constraint is binding if the slack is zero. Example: Amount of Component Used Amount Available Amount of Component Used + Amount of Component Unused = Amount Available Slack = Amount of Component Unused = Amount Available - Amount of Component Used
Answer Report
Sensitivity Report
Reduced cost how much the objective coefficient needs to change for a variable to become positive in the optimal solution Allowable Increase/Decrease how much an individual objective coefficient can change before the optimal values of the decision variables will change Shadow price how much the value of the objective function will change as the righthand-side of a constraint is increased by 1.
Shows the lower limit and upper limit that each variable can assume while satisfying all constraints and holding all of the other variables constant.
How you design your spreadsheet model will affect on how Solver creates the names used in the output reports. Poor spreadsheet design can make it difficult or confusing to interpret the Answer and Sensitivity reports. Solver assigns names to target cells, changing cells, and constraint function cells by concatenating the text in the first cell containing text to the left of the cell with the first cell containing text above it.
Example
Bounded variables are listed in the Adjustable Cells section. Reduced costs may be interpreted as shadow prices.
Example
Add constraint: G 400
Modeling Trick
Using reduced costs as shadow prices can be a bit confusing. In your spreadsheet model,
define a new set of cells for any decision variables that have upper or lower bound constraints by referencing (not copying) the original changing cells.
In the Solver model, use this auxiliary variable cell to define the bound constraint; that is, B18 B8.
A poorly scaled modelone in which the parameters of the objective and constraint functions differ by several orders of magnitude may cause round-off errors in internal computations or error messages such as The conditions for Assume Linear Model are not satisfied. The values of the coefficients in the objective function and constraints, as well as the right hand sides, should not differ from each other by a factor of more than 1,000 or 10,000. Remedies Keep the solution that Solver found and run Solver again starting from that solution. Solver also has a checkbox for Use Automatic Scaling that can be used, especially if solver gives an error message that linearity is not satisfied.
Define decision variables as either int or bin in the Add Constraint dialog
Select Standard GRG Nonlinear in Premium Solver as the solution procedure Sensitivity report is different for nonlinear models Reduced gradient is analogous to reduced cost, but more difficult to interpret Lagrange multipliers are similar to shadow prices, but give only approximate rates of change
Metaheuristics
Used for difficult nonlinear problems Premium Solver Standard Evolutionary solution procedure Evolutionary Solver produces an Answer Report a Population Report, which provides statistics on the solutions encountered during the search process, showing the best value, mean, standard deviation, maximum, and minimum values for each variable and constraint function (excluding upper and lower bounds).
post-optimality risk analysis to understand the impact of uncertainty of optimization model parameters.
OptQuest searches for optimal solutions within Crystal Ball simulation model
spreadsheets. OptQuest is also designed to find solutions that satisfy a wide variety of constraints or a set of goals that you may define.
OptQuest Procedure
1. 2. 3.
4. 5. 6. 7. 8. 9.
10.
11.
Create a Crystal Ball model of the decision problem. Define the decision variables within Crystal Ball. Invoke OptQuest from the Crystal Ball toolbar or the corresponding menu. Create a new optimization file. Select decision variables. Specify constraints. Select the forecast. Modify OptQuest options. Solve the optimization problem. Save the optimization files. Exit OptQuest.