Buscar

Excel Solver Help_V05

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Excel Solver Help 
Sumário 
Excel Solver Help ........................................................................................................................................................... 1 
Introduction ...................................................................................................................................................................... 4 
OVERVIEW AND EXAMPLE ................................................................................................................................................ 4 
Example of a Solver problem ........................................................................................................................................ 4 
DEFINE AND SOLVE A PROBLEM ....................................................................................................................................... 4 
HOW TO LOAD OR START SOLVER .................................................................................................................................... 5 
ADD, CHANGE OR DELETE A CONSTRAINT ........................................................................................................ 6 
HOW RELATIONAL CONSTRAINTS AFFECT SOLVING......................................................................................................... 7 
Bounds on the variables ................................................................................................................................................ 7 
HOW INTEGER, BINARY AND ALLDIFFERENT CONSTRAINTS AFFECT SOLVING ................................................................ 7 
Options for Solving with Integer Constraints ................................................................................................................ 8 
EXCEL SOLVER - PAUSE OR STOP SOLVER ....................................................................................................... 8 
SHOW SOLVER TRIAL SOLUTIONS ..................................................................................................................................... 8 
CHANGE SOLVER OPTIONS................................................................................................................................................ 9 
CHANGE OPTIONS FOR ALL SOLVING METHODS .......................................................................................................... 9 
Constraint precision .................................................................................................................................................. 9 
Use Automatic Scaling............................................................................................................................................... 9 
Show Iteration Results .............................................................................................................................................. 9 
Solving with Integer Constraints ............................................................................................................................... 9 
Solving Limits .............................................................................................................................................................. 10 
CHANGE OPTIONS FOR GRG NONLINEAR SOLVING METHOD .................................................................................... 10 
Convergence ........................................................................................................................................................... 10 
Derivatives .............................................................................................................................................................. 10 
MultiStart Options for Global Optimization............................................................................................................ 10 
CHANGE OPTIONS FOR EVOLUTIONARY SOLVING METHOD ...................................................................................... 11 
Convergence ........................................................................................................................................................... 11 
Mutation Rate ......................................................................................................................................................... 11 
Population Size ........................................................................................................................................................ 11 
Random Seed .......................................................................................................................................................... 11 
Maximum Time without Improvement................................................................................................................... 11 
Require Bounds on Variables .................................................................................................................................. 12 
REAPPLY THE DEFAULT SOLVER SETTINGS...................................................................................................................... 12 
SAVE OR LOAD A SOLVER MODEL ................................................................................................................................... 12 
UNDERSTANDING SOLVER RESULTS MESSAGES ............................................................................................................. 12 
SOLVER RESULT MESSAGES ........................................................................................................................................ 13 
SOLVER FOUND A SOLUTION. ALL CONSTRAINTS AND OPTIMALITY CONDITIONS ARE SATISFIED (0). ................. 13 
EXCEL SOLVER - SOLVER HAS CONVERGED TO THE CURRENT SOLUTION. ALL CONSTRAINTS ARE SATISFIED (1). 14 
EXCEL SOLVER - SOLVER CANNOT IMPROVE THE CURRENT SOLUTION. ALL CONSTRAINTS ARE SATISFIED (2). ... 14 
EXCEL SOLVER - STOP CHOSEN WHEN THE MAXIMUM ITERATION LIMIT WAS REACHED (3). .............................. 14 
EXCEL SOLVER - THE OBJECTIVE CELL VALUES DO NOT CONVERGE (4). ................................................................ 15 
SOLVER COULD NOT FIND A FEASIBLE SOLUTION (5). ............................................................................................ 15 
SOLVER STOPPED AT USER’S REQUEST (6). ............................................................................................................ 16 
THE LINEARITY CONDITIONS REQUIRED BY THIS LP SOLVER ARE NOT SATISFIED (7). ........................................... 16 
THE PROBLEM IS TOO LARGE FOR SOLVER TO HANDLE (8). ................................................................................... 16 
SOLVER ENCOUNTERED AN ERROR VALUE IN THE OBJECTIVE CELL OR A CONSTRAINT CELL (9). ......................... 16 
STOP CHOSEN WHEN THE MAXIMUM TIME LIMIT WAS REACHED (10). ............................................................... 16 
THERE IS NOT ENOUGH MEMORY AVAILABLE TO SOLVE THE PROBLEM (11). ...................................................... 17 
EXCEL SOLVER -ERROR IN MODEL. PLEASE VERIFY THAT ALL CELLS AND CONSTRAINTS ARE VALID (13). ............ 17 
NEW MESSAGES IN EXCEL 2010 AND EXCEL 2011 ...................................................................................................... 17 
SOLVER FOUND AN INTEGER SOLUTION WITHIN TOLERANCE. ALL CONSTRAINTS ARE SATISFIED (14). ............... 17 
STOP CHOSEN WHEN THE MAXIMUM NUMBER OF [INTEGER OR FEASIBLE] SOLUTIONS WAS REACHED (15). ... 17 
STOP CHOSEN WHEN THE MAXIMUM NUMBER OF [INTEGER] SUBPROBLEMS WAS REACHED (16). ................... 17 
SOLVER CONVERGED IN PROBABILITY TO A GLOBAL SOLUTION (17). ................................................................... 18 
ALL VARIABLES MUST HAVE BOTH UPPER AND LOWER BOUNDS (18). .................................................................18 
VARIABLE BOUNDS CONFLICT IN BINARY OR ALLDIFFERENT CONSTRAINT (19). ................................................... 18 
LOWER AND UPPER BOUNDS ON VARIABLES ALLOW NO FEASIBLE SOLUTION (20). ............................................ 18 
PROBLEMS WITH POORLY SCALED MODELS ............................................................................................................... 18 
Dealing with Poor Scaling ........................................................................................................................................ 19 
INTEGER CONSTRAINTS AND THE INTEGER OPTIMALITY TOLERANCE ....................................................................... 19 
LIMITATIONS ON SMOOTH NONLINEAR OPTIMIZATION ............................................................................................ 19 
Note that, when the GRG Nonlinear Solving method is selected in the dropdown list in the Solver Parameters 
dialog, the Generalized Reduced Gradient algorithm is used to solve the problem – even if it is actually a linear 
model that could be solved by the (faster and more reliable) Simplex LP method. The GRG method will usually find 
the optimal solution to a linear problem, but occasionally you will receive a Solver Result Message indicating some 
uncertainty about the status of the solution – especially if the model is poorly scaled. So you sh .............................. 20 
MULTISTART METHODS FOR GLOBAL OPTIMIZATION ............................................................................................... 20 
GRG NONLINEAR SOLVING METHOD STOPPING CONDITIONS....................................................................................... 20 
Locally Versus Globally Optimal Solutions ...................................................................................................................... 21 
When Solver has Converged to the Current Solution ................................................................................................. 21 
When Solver Cannot Improve the Current Solution ................................................................................................... 21 
LIMITATIONS ON NON-SMOOTH OPTIMIZATION ........................................................................................................... 21 
EVOLUTIONARY SOLVING METHOD STOPPING CONDITIONS ........................................................................................ 22 
“Good” Versus Optimal Solutions ............................................................................................................................... 22 
When Solver Cannot Improve the Current Solution ................................................................................................... 22 
Evaluating a Solution Found by the Evolutionary Solving Method ............................................................................. 22 
CREATE SOLVER REPORTS ............................................................................................................................................... 23 
Reports available when Solver finds a solution .......................................................................................................... 23 
Reports available when Solver encounters a problem ............................................................................................... 23 
INTERPRETING THE ANSWER REPORT ........................................................................................................................ 24 
INTERPRETING THE SENSITIVITY REPORT ................................................................................................................... 24 
Interpreting Dual Values ............................................................................................................................................. 24 
Interpreting Range Information .................................................................................................................................. 25 
INTERPRETING THE LIMITS REPORT ................................................................................................................................ 25 
INTERPRETING THE POPULATION REPORT ..................................................................................................................... 25 
UNDERSTANDING THE FEASIBILITY REPORT ................................................................................................................... 25 
UNDERSTANDING THE LINEARITY REPORT ..................................................................................................................... 26 
SAMPLE WORKSHEETS .................................................................................................................................................... 26 
WHAT SOLVER CAN AND CANNOT DO ............................................................................................................................ 27 
To summarize: ............................................................................................................................................................. 27 
OPTIMIZATION METHODS .............................................................................................................................................. 28 
LINEAR PROGRAMMING ............................................................................................................................................. 28 
NONLINEAR OPTIMIZATION ........................................................................................................................................ 29 
GLOBAL OPTIMIZATION .............................................................................................................................................. 29 
NON-SMOOTH OPTIMIZATION ................................................................................................................................... 29 
Genetic and Evolutionary Algorithms ..................................................................................................................... 30 
INTEGER PROGRAMMING ............................................................................................................................................... 30 
The Branch & Bound Method ..................................................................................................................................... 30 
SOLUTIONS: FEASIBLE, "GOOD" AND OPTIMAL .............................................................................................................. 31 
FUNCTIONS OF THE VARIABLES .................................................................................................................................. 31 
CONVEX FUNCTIONS ................................................................................................................................................... 32 
LINEAR FUNCTIONS ..................................................................................................................................................... 33 
SMOOTH NONLINEAR FUNCTIONS ............................................................................................................................. 34 
Convex, Concave and Non-Convex Smooth Functions ........................................................................................... 34 
DISCONTINUOUS AND NON-SMOOTH FUNCTIONS .................................................................................................... 34 
ALGORITHMS AND METHODS USED ............................................................................................................................... 35 
 
Introduction 
This web eBook1 provides Help for the basic Solver included with Excel 2010, Excel 2013 and Excel 2016 for 
Windows and Excel 2011 for Mac, and for the Solver add-in available for Excel Online inOffice 365, SharePoint 
and Excel on iPad. 
In Excel, Solver is part of a suite of commands sometimes called what-if analysis tools. With Solver, you can 
find an optimal (maximum or minimum) value for a formula in one cell — called the objective cell — subject to 
constraints, or limits, on the values of other formula cells on a worksheet. Solver works with a group of cells — 
called decision variable cells — that participate in computing the formulas in the objective and constraint cells. 
Solver adjusts the values in the decision variable cells to satisfy the limits on constraint cells and produce the 
result you want for the objective cell. 
The objective, constraint and decision variable cells and the formulas interrelating them form a Solver model; 
the final values found by Solver are a solution for this model. Solver uses a variety of methods, from linear 
programming and nonlinear optimization to genetic and evolutionary algorithms, to find solutions. 
OVERVIEW AND EXAMPLE 
Use Solver to determine the maximum or minimum value of one cell by changing other cells. For example, you 
can change the amount of your projected advertising budget and see the effect on your projected profit amount. 
Example of a Solver problem 
In the following example, the level of advertising in each quarter affects the number of units sold, indirectly 
determining the amount of sales revenue, the associated expenses, and the profit. Solver can change the 
quarterly budgets for advertising (cells B11:E11), up to a total budget constraint of $40,000 (cell F11), until the 
value for the total profit reaches the maximum possible amount. The values in the decision variable cells are 
used to calculate the profit for each quarter, so the values are related to the formula in the target cell F15, =SUM 
(B15:E15). 
________________________________________ 
 
Decision variable cells 
Constraint cell 
Objective cell 
________________________________________ 
After Solver runs, the new values are as follows. 
DEFINE AND SOLVE A PROBLEM 
 
1 http://www.solver.com/excel-solver-help 
1. Click the Solver command to display the Solver Parameters dialog. You can resize this dialog by 
selecting its lower right corner and dragging. If you don't see the Solver command (on the Data tab on 
Windows, or the Tools menu on Macintosh), you need to load the Solver Add-in. In the Excel Web App, 
the Solver Parameters dialog should be visible on the worksheet. If you don't see it, you need to insert 
the Solver App. 
2. In the Set Objective box, enter a cell reference or name for the objective cell. The objective cell must 
contain a formula. Do one of the following: 
• If you want the value of the objective cell to be as large as possible, click Max. 
• If you want the value of the objective cell to be as small as possible, click Min. 
• If you want the objective cell to be a certain value, click Value Of, and then type the value in the box. 
You may leave the Set Objective box empty. In this case Solver finds values for the decision variables that 
satisfy the constraints. Using the Value Of option has the same effect as defining a constraint (see below) where 
the objective cell must be equal to the specified value. 
3. In the By Changing Variable Cells box, enter a name or reference for each decision variable cell. 
Separate the nonadjacent references with commas. To have an effect, the variable cells must be related 
directly or indirectly to the objective cell, or to the cell reference in at least one constraint. You can specify 
up to 200 variable cells. 
4. In the Subject to the Constraints box, enter any constraints that you want to apply. Add, change or delete 
a constraint. 
5. Select the Make Unconstrained Variables Non-Negative check box to specify that all decision variable 
cells without explicit lower bounds should be given lower bounds of zero. If you define a >= constraint 
that specifies a lower bound different from zero for certain decision variable cells, it will take precedence 
over this option for those cells. 
6. Click Solve and in the Solver Results dialog box, read the message at the top and the more detailed 
explanation at the bottom of this dialog. After reading these messages, do one of the following: 
• To keep the final values in the decision variable cells, click Keep Solver Solution. 
• To restore the values of the decision variable cells at the time you clicked Solve, click Restore 
Original Values. Select the Return to Solver Parameters Dialog check box if you want to modify the 
Solver model or re-solve as your next step. Click OK or Cancel. 
• If you click OK, Solver re-displays the Solver Parameters dialog if you selected the above check box; 
otherwise it returns to Excel worksheet mode. 
• If you click Cancel, other selections in the Solver Results dialog box (such as Keep Solver Solution 
and any selected reports) are ignored; the original values of the decision variable cells are restored, 
and Solver returns to Excel worksheet mode. Understanding Solver Results messages 
NOTES 
• You can interrupt the solution process by pressing ESC. Microsoft Office Excel recalculates the 
worksheet with the last values that are found for the decision variable cells, and displays the Show 
Trial Solution dialog. 
• To create a report that is based on your solution after Solver finishes, you can click a report type in 
the Reports box and then click OK. The report is created on a new worksheet in your workbook. If 
Solver doesn't find a solution, either certain diagnostic reports or no reports are available. 
• To save your decision variable cell values as a scenario that you can display later, click Save 
Scenario in the Solver Results dialog box, and then type a name for the scenario in the Scenario 
Name box. 
HOW TO LOAD OR START SOLVER 
In Excel for Windows, if you don't see the Solver command or the Analysis group on the Data tab, you need 
to load the Solver add-in. 
http://www.solver.com/basic-solver-how-load-or-start-solver
http://www.solver.com/basic-solver-how-load-or-start-solver
http://www.solver.com/basic-solver-how-load-or-start-solver
http://www.solver.com/content/basic-solver-add-change-or-delete-constraint
http://www.solver.com/content/basic-solver-add-change-or-delete-constraint
http://www.solver.com/content/basic-solver-understanding-solver-results-messages
1. Click the File tab, click Options, and then click the Add-ins category. 
2. In the Manage box, click Excel Add-ins, and then click Go. 
3. In the Add-ins available box, select the Solver Add-in check box. If you don't see this name in the list, 
click the Browse... button and navigate to the folder containing Solver.xlam. Then click OK. 
4. Now on the Data tab, in the Analysis group, you should see the Solver command. 
In Excel for Macintosh, if you don't see the Solver command on the Tools menu, you need to load the Solver 
add-in. 
1. Click the Tools menu, then click the Add-ins command. 
2. In the Add-ins available box, select the Solver.xlam check box. If you don't see this name in the list, 
click the Select... button and navigate to the folder containing Solver.xlam. Then click OK. 
3. Now on the Tools menu, you should see the Solver command. 
In Excel Online for Office 365, Excel Web App for SharePoint, or Excel on iPad, use the Solver add-in. If you 
don't see the Solver Task Pane in your worksheet, you need to insert the Solver add-in: Follow the steps in 
Microsoft Office Support on How to get an Office Add-in for Excel. 
1. Open the workbook where you want to use Solver. Click the Insert tab, then click the My Add-ins button. 
2. If Solver appears in the Recently Used Add-ins dropdown list, select it there, and skip to step 4. 
3. Select See All... from the dropdown menu. In the Office Add-ins dialog, find and select Solver underMy 
Add-ins or My Organization.If this is your first time using the Solver add-in, clickStore, and look in the 
Data Analytics category. Click to see the Solver add-in listing in the Office Store. 
4. The Solver Task Pane should appear. Click File Save As, and save to your Office 365 or SharePoint 
document library, or OneDrive or OneDrive for Business folder. 
5. Now when you open your workbook, the Solver Task Pane should appear automatically. 
NOTE: Although the Solver add-in can be used in Excel 2013 and Excel 2016, because your model is solved 
"in the cloud," this Solver add-in works only with Excel workbooks that are stored online. If you want to solve 
a workbook model that is stored on your local PC, use the Solver included with desktop Excel, or one of 
Frontline's enhanced Solvers for desktop Excel. 
ADD, CHANGE OR DELETE A CONSTRAINT 
1. In the Solver Parameters dialog box, under Subject to the Constraints, click Add. 
2. In the Cell Reference box, enter the cell reference or name of the cell range whose value(s) you want to 
constrain. You can use a single cell or a cell range, but not multiple ranges. 
3. Click the relationship ( <=, =, >=, int, bin, or dif ) that you want between the referenced cell(s) and the 
constraint. 
• If you click int, integer appears in the Constraint box. 
• If you click bin, binary appears in the Constraint box. 
• If you click dif, alldifferent appears in the Constraint box. 
4. In the Constraint box, type a number, a cell reference or name, or a formula. For best performance and 
best results in Solver reports, use a number, or a reference or name of a cell or cells that contain 
numbers. Use only the dropdown list to select integer, binary or alldifferent – do not type these words. A 
constraint such as A1:A3 <= 10 is shorthand for A1 <= 10, A2 <= 10, A3 <= 10. A constraint such as 
A1:A3 <= B1:B3 is shorthand for A1 <= B1, A2 <= B2, A3 <= B3. 
5. Do one of the following: 
• To accept the constraint and add another, click Add. 
• To accept the constraint and return to the Solver Parameters dialog box, click OK. 
6. NOTES 
• You can apply the int, bin or dif relationships only in constraints on decision variable cells. 
http://www.solver.com/solver-app-help-and-support
http://office.microsoft.com/en-us/store/office-store-faq-HA102900784.aspx
http://office.microsoft.com/en-us/excel-help/get-an-app-for-excel-HA102840206.aspx
https://store.office.com/solver-WA104100404.aspx
http://www.solver.com/products-overview
• When the Simplex LP Solving Method is selected, there is no limit on the number of constraints. 
When the GRG Nonlinear or Evolutionary Solving Method is selected, there is a limit of 100 
constraints, in addition to bounds and int, bin or dif restrictions on the variables. 
7. In the Solver Parameters dialog box, under Subject to the Constraints, click the constraint that you want 
to change or delete. 
8. Click Change and then make your changes, or click Delete. 
HOW RELATIONAL CONSTRAINTS AFFECT 
SOLVING 
Relational constraints specify bounds on cells such as A1 >= 0. A constraint is satisfied if the condition it specifies 
is true within a small tolerance (determined by the Constraint Precision option). This is a little different from a 
logical formula such as =A1>=0 evaluating to TRUE or FALSE which you might enter in a cell. In this example, 
if A1 were -0.0000001, the logical formula would evaluate to FALSE, but with the default Solver Constraint 
Precision setting, the constraint would be satisfied. Because of the numerical methods used to find solutions to 
Solver models and the finite precision of computer arithmetic, it would be unrealistic to require that constraints 
like A1 >= 0 be satisfied exactly – such solutions would rarely be found. 
Constraints such as A1 = 0 are called equality constraints or equations; constraints such as A1 <= 0 are called 
inequality constraints or simply inequalities. A problem with only equality constraints (and no objective, or a 
Value Of objective) is sometimes called a system of equations. Solver can be used to find solutions to systems 
of both linear and nonlinear equations. If there are several different solutions (sets of values for the decision 
variables) that satisfy the equations, the GRG Nonlinear Solving method seeks a solution that is close to the 
starting values of the variables. 
Bounds on the variables 
Constraints of the form A1 >= -5 or A1 <= 10 (for example), where A1 is a decision variable, are called bounds 
on the variables and are treated specially by Solver. These constraints affect only one variable, whereas general 
constraints have an indirect effect on several variables that have been used in a formula such as A1+A2. Each 
of the Solving methods takes advantage of this fact to handle bounds on the variables more efficiently than 
general constraints, and speed up the solution process. 
There is no difference in terms of efficiency between a constraint entered (for example) as A1 <= 100 or as A1 
<= B1 where B1 contains 100; Solver recognizes that B1 is equivalent to a constant. The form A1 <= B1 is 
usually better from the standpoint of maintainability of your Solver model. 
In many problems, you will be aware of realistic lower and upper bounds on the variables, but they won’t be of 
any help to Solver unless you include them in the Constraints list box! Bounds on the variables are especially 
important to the performance of the Evolutionary solving method, and Multistart methods for global optimization 
with the GRG Nonlinear solving method. 
HOW INTEGER, BINARY AND 
ALLDIFFERENT CONSTRAINTS AFFECT 
SOLVING 
A constraint such as A1:A5 = integer, where A1:A5 are decision variable cells, requires that the solution values 
for A1 through A5 must be integers or whole numbers, such as -1, 0 or 2, to within a small tolerance (determined 
by the Constraint Precision option). Integer constraints may be used when a fractional solution value, such as 
1.5, wouldn’t make sense in your problem – for example, if the decision variable represents how many people 
to schedule or how many trucks to buy. 
A constraint such as A1 = binary is equivalent to specifying A1 = integer, A1 >= 0 and A1 <= 1. This implies that 
A1 must be either 0 or 1 at the solution; hence A1 can be used to represent a “yes/no” decision, such as whether 
or not to build a new manufacturing plant. 
A constraint such as A1:A5 = alldifferent, where A1:A5 are decision variable cells, requires that these cells must 
be integers in the range 1 to N (N = 5 in this example), with each variable different from all the others at the 
solution. Hence, A1:A5 will contain a permutation of integers, such as 1,2,3,4,5 or 1,3,5,2,4. An alldifferent 
constraint can be used to model problems involving ordering or sequencing of choices, such as the Traveling 
Salesman Problem. 
Integer constraints have many important applications, but the presence of even one such constraint in a Solver 
model makes the problem an integer programming problem, which may be much more difficult to solve than a 
similar problem without the integer constraint. 
Options for Solving with Integer Constraints 
The Solver Options dialog All Methods tab includes a group of options for solving with integer constraints: 
• The Ignore Integer Constraints check box allows you to solve the “relaxation” of an integer 
programming problem, where the integer, binary, and all different constraints are ignored, but all 
other constraints are enforced. 
• The Integer Optimality (%) option, sometimes called the “MIP gap”, allows Solver to stop if it finds an 
integer solution that is within the specified percentage of the best known bound on the optimal 
solution. The default value is 1%; if you want a proven optimal solution (which may take considerable 
extra time), set this option to 0. 
EXCEL SOLVER - PAUSE OR STOP SOLVER 
If you press ESC while Solver is solving, the Show Trial Solution dialog box appears. Do one of the following: 
• Click Stop to stop the solution process. The Solver Results dialog appearswith a message that 
Solver stopped at your request. 
• Click Continue to allow Solver to continue solving until you press ESC again, a Solving Limit is 
reached, or a solution is found. 
If Solver reaches one of the Solving Limits (Max Time, Iterations, Max Subproblems or Max Feasible Solutions) 
while solving a problem, the Show Trial Solution dialog box appears. Do one of the following: 
• Click Stop to stop the solution process. The Solver Results dialog appears with a message that the 
limit was reached. 
• Click Continue to allow Solver to continue solving without the limit mentioned in the dialog box 
message. If another limit is reached, the Show Trial Solution dialog box will re-appear, once for 
each limit. 
NOTES 
To set the Solving Limits, see Change Options for All Solving Methods. 
To make Solver pause on every Trial Solution, see Show Solver trial solutions. 
SHOW SOLVER TRIAL SOLUTIONS 
1. After you define a problem, click Options in the Solver Parameters dialog box. 
2. In the Solver Options dialog box, on the All Methods tab, select the Show Iteration Results check box to 
see the values of each trial solution, and then click OK. 
http://www.solver.com/content/basic-solver-change-options-all-solving-methods
http://www.solver.com/content/basic-solver-show-solver-trial-solutions
3. In the Solver Parameters dialog box, click Solve. 
4. In the Show Trial Solution dialog box, do one of the following: 
• To stop the solution process and display the Solver Results dialog box, click Stop. 
• To continue the solution process and display the next trial solution, click Continue. 
NOTES 
• The Show Trial Solution dialog box also appears (only once, not on each Trial Solution) if you press 
ESC, or if Solver reaches one of the Solving Limits (Max Time, Iterations, Max Subproblems or Max 
Feasible Solutions) while solving a problem. 
CHANGE SOLVER OPTIONS 
To change Solver options that can affect the nature and accuracy of the solution, or the time Solver will spend 
seeking a solution, click Options in the Solver Parameters dialog. To clear all cell selections and reset all Solver 
options to their default values, click Reset All. 
CHANGE OPTIONS FOR ALL SOLVING METHODS 
1. In the Solver Parameters dialog box, click Options. 
2. In the Solver Options dialog box, on the All Methods tab, choose one or more of the following options: 
Constraint precision 
• In the Constraint Precision box, type the degree of precision that you want. For a constraint to be 
considered satisfied, the relationship between the Cell Reference and the Constraint value cannot 
be violated by more than this amount. The smaller the number, the higher the precision 
Use Automatic Scaling 
• Select the Use Automatic Scaling check box to specify that Solver should internally rescale the values 
of variables, constraints and the objective to similar magnitudes, to reduce the impact of extremely 
large or small values on the accuracy of the solution process. This box is selected by default. 
Show Iteration Results 
• Select the Show Iteration Results check box to see the values of each trial solution. See Show Solver 
trial solutions. 
Solving with Integer Constraints 
• Select the Ignore Integer Constraints check box to cause all integer, binary and alldifferent 
constraints to be ignored when you next click Solve. This is called solving the relaxation of the integer 
programming problem. 
• In the Integer Optimality % box, type the maximum percentage difference Solver should accept 
between the objective value of the best integer solution found and the best known bound on the true 
optimal objective value before stopping. 
NOTES 
The Integer Optimality % is sometimes called the (relative) “MIP gap”. The default value is 1%; set this to 0% to 
ensure that a proven optimal solution is found. 
http://www.solver.com/content/basic-solver-show-solver-trial-solutions
http://www.solver.com/content/basic-solver-show-solver-trial-solutions
Solving Limits 
1. In the Max Time (Seconds) box, type the number of seconds that you want to allow Solver to run. 
2. In the Iterations box, type the maximum number of iterations that you want to allow Solver to perform. 
The following limits apply only to problems that include integer restrictions on variables, or problems that use 
the Evolutionary Solving Method: 
1. In the Max Subproblems box, type the maximum number of subproblems that you want to allow. 
2. In the Max Feasible Solutions box, type the maximum number of feasible solutions that you want to allow. 
For problems with integer restrictions, this is the maximum number of integer feasible solutions. 
NOTES 
If the solution process reaches the maximum time, number of iterations, maximum subproblems, or maximum 
feasible solutions before Solver finds an optimal solution, Solver displays the Show Trial Solution dialog box. 
See Show Solver trial solutions. 
1. Click OK. 
2. In the Solver Parameters dialog box, click Solve or Close. 
NOTE You can click the Help button in the dialog box to get more information about other options. 
CHANGE OPTIONS FOR GRG NONLINEAR SOLVING 
METHOD 
1. In the Solver Parameters dialog box, click Options. 
2. In the Solver Options dialog box, on the GRG Nonlinear tab, choose one or more of the following options: 
Convergence 
• In the Convergence box, type the amount of relative change that you want to allow in the last five 
iterations before Solver stops with the message “Solver converged to the current solution.” Smaller 
values here usually mean that Solver will take more time, but will stop at a point closer to the optimal 
solution. 
Derivatives 
• In the Derivatives group box, select Forward to estimate derivatives through forward differencing, or 
select Central to estimate derivatives through central differencing. Forward is the default choice. 
Central differencing yields more accurate derivatives, but requires twice as many calculations of the 
worksheet at each new trial solution. 
MultiStart Options for Global Optimization 
• Select the Use Multistart check box to use the multistart method for global optimization. If this box is 
selected when you click Solve, the GRG Nonlinear method will be run repeatedly, starting from 
different (automatically chosen) starting values for the decision variables. This process may find a 
better solution, but it will take more computing time than a single run of the GRG Nonlinear method. 
• In the Population Size box, type the number of different starting points (values for the decision 
variables) you want the multistart method to consider. The minimum population size is 10; if you 
supply a value less than 10 in this box, or leave it blank, the multistart method uses a population size 
of 10 times the number of decision variables, but no more than 200. 
• In the Random Seed box, type a positive integer number to be used as the (fixed) seed for the 
random number generator used to generate candidate starting points for the GRG Nonlinear method. 
http://www.solver.com/content/basic-solver-show-solver-trial-solutions
If you enter a number here, the multistart method will use the same starting points each time you 
click Solve. If you leave this box blank, the random number generator will use a different seed each 
time you click Solve, which may yield a different (better or worse) final solution. 
• Select the Require Bounds on Variables check box to specify that the multistart method should run 
only if you have defined lower and upper bounds on all decision variables in the Constraints list box. 
The multistart method is far more effective if you define bounds on all variables; the tighter the bounds 
on the variables that you can specify, the better the multistart method is likely to perform. 
NOTE You can click the Help button in the dialog box to get more information about other options. 
CHANGE OPTIONS FOR EVOLUTIONARY SOLVING 
METHOD 
NOTE You can click the Help button in the dialog box to getmore information about other options. 
1. In the Solver Parameters dialog box, click Options. 
2. In the Solver Options dialog box, on the Evolutionary tab, choose one or more of the following 
options: 
Convergence 
• In the Convergence box, type the maximum percentage difference in objective values for the top 
99% of the population that Solver should allow in order to stop with the message “Solver converged 
to the current solution.” Smaller values here normally mean that Solver will take more time, but will 
stop at a point closer to the optimal solution. 
Mutation Rate 
• In the Mutation Rate box, type a number between 0 and 1, the relative frequency with which some 
member of the population will be altered or “mutated” to create a new trial solution, during each 
“generation” or subproblem considered by the Evolutionary method. A higher Mutation Rate 
increases the diversity of the population and the chance that a new, better solution will be found; but 
this may increase total solution time. 
Population Size 
• In the Population Size box, type the number of different points (values for the decision variables) you 
want the Evolutionary method to maintain at any given time in its population of candidate solutions. 
The minimum population size is 10 members; if you supply a value less than 10 in this box, or leave 
it blank, the Evolutionary Solver uses a population size of 10 times the number of decision variables 
in the problem, but no more than 200. 
Random Seed 
• In the Random Seed box, type a positive integer number to be used as the (fixed) seed for the 
random number generator used for a variety of random choices in the Evolutionary method. If you 
enter a number here, the Evolutionary method will use the same choices each time you click Solve. 
If you leave this box blank, the random number generator will use a different seed each time you 
click Solve, which may yield a different (better or worse) final solution. 
Maximum Time without Improvement 
• In the Maximum Time without Improvement box, type the maximum number of seconds you want the 
Evolutionary method to continue without a meaningful improvement in the objective value of the best 
solution in the population, before it stops with the message “Solver cannot improve the current 
solution. 
Require Bounds on Variables 
• Select the Require Bounds on Variables check box to specify that the Evolutionary method should 
run only if you have defined lower and upper bounds on all decision variables in the Constraints list 
box. The Evolutionary method is far more effective if you define bounds on all variables; the tighter 
the bounds on the variables that you can specify, the better the Evolutionary method is likely to 
perform. 
NOTE You can click the Help button in the dialog box to get more information about other options. 
REAPPLY THE DEFAULT SOLVER SETTINGS 
1. In the Solver Parameters dialog box, click Reset All. 
2. In the confirmation dialog, click OK. The By Changing Variable Cells box and the Constraints list box 
are cleared, the Set Objective box is set to the active cell, and all Solver options are reset to their 
default settings. 
SAVE OR LOAD A SOLVER MODEL 
1. In the Solver Parameters dialog box, click Load/Save. 
2. When you save a model, enter the reference for the first cell of a vertical range of empty cells in 
which you want to save the model specifications. When you load a model, enter the reference for the 
entire range of cells that contains the model specifications. 
3. Click Save or Load. 
TIPS 
One set of model specifications — the most recent selections in the Solver Parameters and Solver Options — 
is maintained for each worksheet in your workbook. When you click the File tab and then click Save, the model 
selections for each worksheet where a Solver model was defined are saved automatically with the workbook. 
You can use the Load/Save button to define and save more than one set of Solver model specifications on a 
single worksheet, and load the model specifications you want at any time. 
UNDERSTANDING SOLVER RESULTS 
MESSAGES 
If Solver stops with a solution (set of values for the decision variables) that is different from what you expect, or 
what you believe is correct, please follow the suggestions below. You can usually narrow down the problem to 
one of a few possibilities. 
• Be sure to read the message in the Solver Results dialog, and check the explanation of the message in this 
Help topic. 
• Consider the possibility that the solution found by Solver is correct, and that your expectation is wrong. This 
may mean that what your model actually says is different from what you intended. 
• If you receive the message “Solver could not find a feasible solution,” read the topic Understanding the 
Feasibility Report. 
• If you receive the message “The linearity conditions required by this LP Solver are not satisfied,” read the 
topic Understanding the Linearity Report. 
• If your model includes integer, binary or all different constraints, read the topic Integer Constraints and the 
Integer Optimality Tolerance. 
• Select the check box to Show trial solutions in the Solver Options dialog and re-solve. Solver will pause with 
the message “Solver paused, current solution values displayed on worksheet.” Click Continue to see the 
path towards the solution taken by Solver. 
• Read the topic Problems with Poorly Scaled Models. This is one of the most common causes of unexpected 
error messages, suboptimal solutions. 
• Read the topics on Limitations on Smooth Nonlinear Optimization, affecting the GRG Solving method, and 
Limitations on Non-Smooth Optimization, affecting the Evolutionary Solving method. 
Depending on the message, the solution values in the decision variable cells may be a globally optimal solution, 
a locally optimal solution, only an approximate solution, or no solution (for example if no feasible solution exists). 
SOLVER RESULT MESSAGES 
These messages appear in the Solver Results dialog when the Solver stops running. The best solution 
values for the decision variables are placed in the adjustable (changing) cells, and the worksheet is 
recalculated. 
In the Solver Results dialog, you have the option to keep these solution values, or restore the original values 
of the adjustable cells. (Clicking on Cancel or pressing ESC restores the original values without choosing 
any other options.) 
You can also create a named scenario which captures the values of the adjustable cells, and view it later 
with the Scenario Manager. 
Finally, you can ask the Solver to produce one or more reports as shown in the Reports list box. 
Unlike the other groups of Solver messages, this group is ordered by the result codes which can be 
returned when you invoke the Solver in a macro or custom program in VBA with the SolverSolve function. 
Each numeric result code is shown in parentheses following the message. 
Some of these messages have a slightly different interpretations, depending on whether you have selected 
the Assume Linear Model check box, and whether there are any integer constraints in your model. See the 
detailed explanations of each message, particularly the first one, "Solver found a solution." 
SOLVER FOUND A SOLUTION. ALL CONSTRAINTS AND OPTIMALITY CONDITIONS ARE SATISFIED (0). 
This means that Solver has found the optimal or “best” solution under the circumstances. The exact meaning 
depends on whether you are solving a linear, smooth nonlinear, or integer programming problem, as outlined 
below. This message doesn’t appear for the Evolutionary Solving method. 
If you are solving a linear programming problem, the Simplex LP Solving method has found the globally optimal 
solution: There is no other solution satisfying the constraints that has a better value for the objective. It is possible 
that there are other solutions with the same objective value, but all such solutions are linear combinations of the 
current decision variablevalues. 
If you are solving a smooth nonlinear optimization problem with no integer constraints, the GRG Nonlinear 
Solving method has found a locally optimal solution: There is no other set of values for the decision variables 
close to the current values and satisfying the constraints that yields a better value for the objective. In general, 
there may be other sets of values for the variables, far away from the current values, which yield better values 
for the objective and still satisfy the constraints. 
If you are solving a mixed-integer programming problem (any problem with integer constraints), this message 
means that the Branch & Bound method has found a solution satisfying the constraints (including the integer 
constraints) with the “best possible” objective value. If the problem is linear and the Simplex LP Solving method 
is being used, the true integer optimal solution has been found. If the problem is smooth nonlinear, the Branch 
http://solver.com/suppstdmsgresult2.htm
& Bound process has found the best of the locally optimal solutions found for subproblems by the GRG 
Nonlinear Solving method. 
EXCEL SOLVER - SOLVER HAS CONVERGED TO THE CURRENT SOLUTION. ALL CONSTRAINTS ARE SATISFIED 
(1). 
This means that Solver has found a series of “best” solutions that satisfy the constraints, and that have very 
similar objective function values; however, no single solution strictly satisfies Solver’s test for optimality. The 
exact meaning depends on whether you are solving a smooth nonlinear problem with the GRG Nonlinear 
Solving method, or a non-smooth problem with the Evolutionary method. This message doesn’t appear for the 
Simplex LP Solving method. 
When the GRG method is being used, this message means that the objective function value is changing very 
slowly as Solver progresses from point to point. More precisely, Solver stops if the absolute value of the relative 
change in the objective function, in the last few iterations, is less than the Convergence tolerance in the Solver 
Options dialog. A poorly scaled model is more likely to trigger this stopping condition, even if the Use Automatic 
Scaling check box in the Solver Options dialog is selected. If you are sure that your model is well scaled, you 
should consider why it is that the objective function is changing so slowly. For more information, see the 
discussion of GRG Nonlinear Solving Method Stopping Conditions. 
When the Evolutionary Solving method is being used, this message means that the “fitness” of members of the 
current population of candidate solutions is changing very slowly. More precisely, the Evolutionary Solver stops 
if 99% or more of the members of the population have fitness values whose relative difference is less than the 
Convergence tolerance in the Solver Options dialog. The fitness values incorporate both the objective function 
and a penalty for infeasibility, but since Solver has found some feasible solutions, this test is heavily weighted 
towards the objective function values. If you believe that Solver is stopping prematurely when this test is satisfied, 
you can make the Convergence tolerance smaller, but you may also want to increase the Mutation Rate and/or 
the Population Size, in order to increase the diversity of the population of trial solutions. For more information, 
see the discussion of Evolutionary Solving Method Stopping Conditions. 
EXCEL SOLVER - SOLVER CANNOT IMPROVE THE CURRENT SOLUTION. ALL CONSTRAINTS ARE SATISFIED (2). 
This means that Solver has found solutions that satisfy the constraints, but it has been unable to further improve 
the objective, even though the tests for optimality (“Solver found a solution”) and convergence (“Solver 
converged to the current solution”) have not yet been satisfied. The exact meaning depends on whether you 
are solving a smooth nonlinear problem with the GRG Nonlinear Solving method, or a non-smooth problem with 
the Evolutionary Solving method. 
When the GRG Nonlinear Solving method is being used, this message occurs very rarely. It means that the 
model is degenerate and Solver is probably cycling. One possibility worth checking is that some of your 
constraints are redundant, and should be removed. For more information, see the discussion of GRG Nonlinear 
Solving Method Stopping Conditions. 
When the Evolutionary Solving method is being used, this message is much more common. It means that Solver 
has been unable to find a new, better member of the population whose “fitness” represents a significant relative 
improvement over the current best member’s fitness, in the amount of time specified by the Maximum Time 
without Improvement option in the Solver Options dialog. Since the Evolutionary Solving method has no way of 
testing for optimality, it will normally stop with either “Solver converged to the current solution” or “Solver cannot 
improve the current solution” if you let it run for long enough. If you believe that this message is appearing 
prematurely, you can increase the amount of time allowed by the Maximum Time without Improvement option. 
For more information, see the discussion of Evolutionary Solving Method Stopping Conditions. 
EXCEL SOLVER - STOP CHOSEN WHEN THE MAXIMUM ITERATION LIMIT WAS REACHED (3). 
This message appears when (i) Solver has completed the maximum number of iterations, or trial solutions, 
allowed in the Iterations box in the Solver Options dialog and (ii) you clicked the Stop button when Solver 
displayed the Show Trial Solution dialog. You may increase the value in the Iterations box, or click the Continue 
button instead of the Stop button in the Show Trial Solution dialog. But you should also consider whether re-
scaling your model or adding constraints might reduce the total number of iterations required. 
If you are solving a mixed-integer programming problem (any problem with integer constraints), this message 
is relatively unlikely to appear. Solver uses the Maximum Subproblems and Maximum Feasible Solutions 
options to control the overall solution process; the count of iterations against which the Iteration limit is compared 
is reset on each new subproblem, so this limit usually is not reached. 
EXCEL SOLVER - THE OBJECTIVE CELL VALUES DO NOT CONVERGE (4). 
This message appears when Solver is able to increase (if you are trying to Maximize) or decrease (for Minimize) 
without limit the value in the Objective cell, while still satisfying the constraints. Remember that, if you’ve selected 
Minimize, the objective may take on negative values without limit unless this is prevented by the constraints or 
bounds on the variables. Select the Make Unconstrained Variables Non-Negative check box to ensure that all 
decision variables without explicit lower bounds cannot take on negative values. 
If the objective is a linear function of the decision variables, it can always be increased or decreased without limit 
(picture it as a straight line), so Solver will seek the extreme value that still satisfies the constraints. If the objective 
is a nonlinear function of the variables, it may have a “natural” maximum or minimum (for example, =A1*A1 has 
a minimum at zero), or no such limit (for example, =LOG(A1) increases without limit). 
If you receive this message, you may have forgotten a constraint, or failed to anticipate values for the variables 
that allow the objective to increase or decrease without limit. The final values for the variable cells, the constraint 
left hand sides and the objective should provide a strong clue about what happened. 
The Evolutionary Solving method never displays this message, because it has no way of systematically 
increasing (or decreasing) the objective function, which may be non-smooth. If you have forgotten a constraint, 
the Evolutionary method may find solutions with very large (or small) values for the objective – thereby making 
you aware of the omission – but this is not guaranteed. 
 
See more examples in Solver sample worksheets2.To download more advanced examples, register or login, 
and visit our Examples3 main page. 
You can use Solver to find better ways to allocate scarce resources, maximize profits or minimize costs or risks, 
in a wide range of applications in finance and investment, marketing, manufacturing and production, distribution 
and logistics, purchasing, and human resources, as well as science and engineering. 
SOLVER COULD NOT FIND A FEASIBLE SOLUTION (5). 
This message appears when Solver could not find any combination of values for the decision variables that 
allows all of the constraints to be satisfied simultaneously. If you are using the Simplex LP Solving method, and 
the model is well scaled, Solver has determined for certain that there is no feasible solution. 
If you are using the GRG Nonlinear Solving method, this method (which always starts from the initial values of 
the variables) was unable to find a feasible solution; but there could be a feasible solution far away from these 
initial values, which Solver might find if you run it with different initial values for the variables. 
If you are using the Evolutionary Solving method, the evolutionary algorithm was unable to find a feasible 
solution; it might succeed in finding one if you run it with different initial values for the variables and/or increase 
the Precision value in the Solver Options dialog (which reduces the infeasibility penalty, thereby allowing the 
evolutionary algorithm to explore more “nearly feasible” points). 
 
2 http://www.solver.com/excel-solver-sample-worksheets 
3 http://www.solver.com/examples-optimization-problems 
http://www.solver.com/content/basic-solver-sample-worksheets
http://www.solver.com/examples-optimization-problems
http://www.solver.com/excel-solver-sample-worksheets
http://www.solver.com/examples-optimization-problems
In any case, you should first look for conflicting constraints, i.e. conditions that cannot be satisfied 
simultaneously. Most often this is due to choosing the wrong relation (e.g. <= instead of >=) on an otherwise 
appropriate constraint. The easiest way to do this is to select the Feasibility Report, shown in the Reports list 
box when this message appears. 
SOLVER STOPPED AT USER’S REQUEST (6). 
This message appears only if you press ESC to display the Show Trial Solution dialog, and then click the Stop 
button. When you do this, no reports are available in the Solver Results dialog. 
THE LINEARITY CONDITIONS REQUIRED BY THIS LP SOLVER ARE NOT SATISFIED (7). 
This message appears if you’ve selected the Simplex LP Solving method, but Solver’s numeric tests to ensure 
that the objective and constraints are indeed linear functions of the decision variables were not satisfied. 
If you receive this message, select and examine the Linearity Report to determine which functions or variables 
in your model are not linear, then examine the formulas for the objective and constraints for nonlinear or non-
smooth functions or operators applied to the decision variables. For more information, see Functions of the 
Variables. 
THE PROBLEM IS TOO LARGE FOR SOLVER TO HANDLE (8). 
This message appears when Solver determines that your model is too large for the Solving method you have 
selected. All Solving methods are limited to 200 decision variables; the GRG Nonlinear and Evolutionary Solving 
methods are also limited to 100 constraints in addition to lower and upper bounds on the variables. For more 
information, see Algorithms and methods used by Solver. 
SOLVER ENCOUNTERED AN ERROR VALUE IN THE OBJECTIVE CELL OR A CONSTRAINT CELL (9). 
This message appears when Solver recalculates your worksheet using a new set of values for the decision 
variable cells, and discovers an error value such as #VALUE!, #NUM!, #DIV/0! or #NAME? in the objective cell 
or one of the constraint cells. Inspecting the worksheet for error values like these will usually indicate the source 
of the problem. If you’ve entered formulas for the right-hand sides of certain constraints, the error might have 
occurred in one of these formulas rather than in a cell on the worksheet. For this and other reasons, it’s better 
to use only constant numbers and cells containing constant numbers on the right-hand sides of constraints. 
If you see #VALUE!, #N/A or #NAME?, look for names or cell references to rows or columns that you have 
deleted. If you see #NUM! or #DIV/0!, look for unanticipated values of the decision variables which lead to 
arguments outside the domains of your functions – such as a negative value supplied to SQRT. You can often 
add constraints to avoid such domain errors; if you have trouble with a constraint such as $A$1 >= 0, try a 
constraint such as $A$1 >= 0.0001 instead. 
The Evolutionary Solving method rarely, if ever, displays this message – since it maintains a population of 
candidate solutions and can always generate more candidates, it can simply discard trial solutions that result in 
error values. If you have a model that frequently yields error values for trial solutions generated by the GRG 
Nonlinear method, and you are unable to correct or avoid these error values by altering your formulas or by 
imposing additional constraints, you can still use the Evolutionary Solving method to find (or make progress 
towards) a “good” solution 
STOP CHOSEN WHEN THE MAXIMUM TIME LIMIT WAS REACHED (10). 
This message appears when (i) Solver has run for the maximum time (number of seconds) allowed in the 
Maximum Time box in the Solver Options dialog and (ii) you clicked the Stop button when Solver displayed the 
Show Trial Solution dialog. You may increase the value in the Maximum Time box (or leave it empty, which 
means no limit), or click the Continue button instead of the Stop button in the Show Trial Solution dialog. But 
you should also consider whether re-scaling your model or adding constraints might reduce the total solution 
time required. 
THERE IS NOT ENOUGH MEMORY AVAILABLE TO SOLVE THE PROBLEM (11). 
This message will appear if Solver cannot allocate the memory it needs to solve the problem; it is very unlikely 
to appear on modern PCs. Also, since Microsoft Windows supports a “virtual memory” much larger than your 
available RAM by swapping data to your hard disk, before you see this message you are likely to notice that 
solution times have greatly slowed down. 
EXCEL SOLVER -ERROR IN MODEL. PLEASE VERIFY THAT ALL CELLS AND CONSTRAINTS ARE VALID (13). 
This message means that the internal “model” (information about the variable cells, objective, constraints, Solver 
options, etc.) is not in a valid form. An “empty” or incomplete Solver model, or a corrupted Excel workbook can 
cause this message to appear. You might also receive this message if you are using the wrong version of the 
Solver files, or if you’ve modified the values of certain hidden defined names used by Solver. To guard against 
this last possibility, you should avoid using any defined names beginning with “solver” in your own application. 
NEW MESSAGES IN EXCEL 2010 AND EXCEL 2011 
The following Solver Result messages were added in the improved Solver included in Excel 2010 for 
Windows, and Excel 2011 for Macintosh. These Solver Result messages can also appear in Frontline's 
Premium Solver, Premium Solver Platform, and Risk Solver Platform products. 
SOLVER FOUND AN INTEGER SOLUTION WITHIN TOLERANCE. ALL CONSTRAINTS ARE SATISFIED (14). 
If you are solving a mixed-integer programming problem (any problem with integer constraints) with a non-zero 
value for the Integer Optimality % option in the Solver Options dialog, Solver has found a solution satisfying the 
constraints (including the integer constraints) where the relative difference of this solution’s objective value from 
the true optimal objective value does not exceed the Integer Optimality tolerance. The solution on the worksheet 
may actually be the true integer optimal solution;however, Solver did not take the extra time to search all 
possible remaining subproblems to “prove optimality” for this solution. If all subproblems were explored (which 
can happen even with a non-zero Integer Optimality setting in some models), Solver will produce the message 
“Solver found a solution. All constraints are satisfied.” 
STOP CHOSEN WHEN THE MAXIMUM NUMBER OF [INTEGER OR FEASIBLE] SOLUTIONS WAS REACHED (15). 
If you are using the Evolutionary Solving method, this message appears when (i) Solver has found the number 
of feasible solutions allowed by the Maximum Feasible Solutions option in the Solver Options dialog and (ii) you 
clicked the Stop button when Solver displayed the Show Trial Solution dialog. You may increase the value of 
the Maximum Feasible Solutions option, or click the Continue button to continue the solution process. 
If you are using the Simplex LP or GRG Nonlinear Solving method on a problem with integer constraints, this 
message appears when (i) Solver has found the number of integer feasible solutions allowed by the Maximum 
Feasible Solutions option and (ii) you clicked the Stop button when Solver displayed the Show Trial Solution 
dialog. Again you may increase the value of the Maximum Feasible Solutions option, or click the Continue button 
to continue the solution process. But you should also consider whether the problem is formulated correctly, and 
whether you can add constraints to “tighten” the formulation. 
STOP CHOSEN WHEN THE MAXIMUM NUMBER OF [INTEGER] SUBPROBLEMS WAS REACHED (16). 
If you are using the Evolutionary Solving method, this message appears when (i) Solver has explored the 
number of subproblems allowed by the Maximum Subproblems option in the Solver Options dialog and (ii) you 
clicked the Stop button when Solver displayed the Show Trial Solution dialog. You may increase the value of 
the Maximum Subproblems option, or click the Continue button to continue the solution process. 
If you are using the Simplex LP or GRG Nonlinear Solving method on a problem with integer constraints, this 
message appears when (i) Solver has explored the maximum number of subproblems (each one is a “regular” 
Solver problem with additional bounds on the variables) allowed by the Maximum Subproblems option and (ii) 
you clicked the Stop button when Solver displayed the Show Trial Solution dialog. Again you may increase the 
value of the Maximum Subproblems option, or click the Continue button to continue the solution process. But 
you should also consider whether the problem is formulated correctly, and whether you can add constraints to 
“tighten” the formulation. 
SOLVER CONVERGED IN PROBABILITY TO A GLOBAL SOLUTION (17). 
If you are using the GRG Nonlinear Solving method and you’ve selected the Use Multistart check box in the 
Solver Options dialog, this message appears when the multistart method’s Bayesian test has determined that 
all of the locally optimal solutions have probably been found; the solution displayed on the worksheet is the best 
of these locally optimal solutions, and is probably the globally optimal solution to the problem. For more 
information, see the topic Global Optimization. 
The Bayesian test initially assumes that the number of locally optimal solutions to be found is equally likely to be 
1, 2, 3, … etc. up to infinity, and that the relative sizes of the regions containing each locally optimal solution 
follow a uniform distribution. After each run of the GRG Solving method, an updated estimate of the most 
probable total number of locally optimal solutions is computed, based on the number of subproblems solved 
and the number of locally optimal solutions found so far. When the number of locally optimal solutions actually 
found so far is within one unit of the most probable total number of locally optimal solutions, the multistart method 
stops and displays this message. 
ALL VARIABLES MUST HAVE BOTH UPPER AND LOWER BOUNDS (18). 
If you are using the Evolutionary Solving method or the multistart methods for global optimization, and you have 
checked the Require Bounds on Variables check box in the Solver Options dialog (it is checked by default), this 
message appears if you have not defined lower and upper bounds on all of the decision variables in the problem. 
You should add the missing bounds and try again. Upper bounds must be added as constraints in the Solver 
Parameters dialog. Lower bounds of zero can be applied to all variables by selecting the Make Unconstrained 
Variables Non-Negative check box in the Solver Parameters dialog; non-zero lower bounds must be added as 
constraints, like upper bounds. Bounds on all the variables are not absolutely required (you can uncheck the 
box Require Bounds on Variables), but they are a practical necessity if you want Solver to find good solutions 
in a reasonable amount of time. 
VARIABLE BOUNDS CONFLICT IN BINARY OR ALLDIFFERENT CONSTRAINT (19). 
This message appears if you have both a binary or all different constraint on a decision variable and a <= or >= 
constraint on the same variable (that is inconsistent with the binary or all different specification), or if the same 
decision variable appears in more than one all different constraint. Binary integer variables always have a lower 
bound of 0 and an upper bound of 1; variables in an all different group always have a lower bound of 1 and an 
upper bound of N, where N is the number of variables in the group. You should check that the binary or 
alldifferent constraint is correct, and ensure that all different constraints apply to non-overlapping groups of 
variables. If a <= or >= constraint causes the conflict, remove it if possible and try to solve again. 
LOWER AND UPPER BOUNDS ON VARIABLES ALLOW NO FEASIBLE SOLUTION (20). 
This message appears if you’ve defined lower and upper bounds on a decision variable, where the lower bound 
is greater than the upper bound. This (obviously) means there can be no feasible solution, but (depending on 
the Solving method) Solver will detect this condition before even starting the solution process, and display this 
message instead of “Solver could not find a feasible solution” to help you more quickly identify the source of the 
problem. If you have defined your bounds and other constraints in uniform blocks, the lower and upper bounds 
on a given range of cells will appear consecutively in the Solver Parameters dialog outlined list (where they are 
grouped and sorted), making it easy to spot the inconsistent bounds. 
PROBLEMS WITH POORLY SCALED MODELS 
A poorly scaled model is one that computes values of the objective, constraints, or intermediate results that differ 
by several orders of magnitude. A classic example is a financial model that computes a currency amount in 
millions or billions and a return or risk measure in fractions of a percent. Because of the finite precision of 
computer arithmetic, when these values of very different magnitudes (or others derived from them) are added, 
subtracted, or compared – in the user’s model or in Solver’s own calculations – the result will be accurate to only 
a few significant digits. After many such steps, Solver may detect or suffer from “numerical instability.” 
The effects of poor scaling in a large, complex optimization model can be among the most difficult problems to 
identify and resolve. It can cause Solver to return messages such as “Solver could not find a feasible solution,” 
“Solver could not improve the current solution,” or even “The linearity conditions required by this LP Solver are 
not satisfied,” with results that are suboptimal or otherwise very different from your expectations. The effects 
may not be apparent to you, given the initial values of the variables, but when Solver explores Trial Solutions 
with very large or small values for the variables, the effects will be greatly magnified. 
Dealing with Poor Scaling 
The Solver Options dialog includes a Use Automatic Scaling check box.When this box is selected (it is selected 
by default), Solver rescales the values of the objective and constraint functions internally in order to minimize 
the effects of poor scaling. But this can only help with Solver’s own calculations – it cannot help with poorly 
scaled results that arise in the middle of your Excel formulas. Further, in some poorly scaled models, automatic 
scaling can make things worse rather than better – so you may wish to try clearing this check box and re-solving. 
The best way to avoid scaling problems is to carefully choose the “units” implicitly used in your model so that all 
computed results are within a few orders of magnitude of each other. For example, instead of expressing 
currency amounts in single units, you could express them in units of (say) millions, if appropriate for your model, 
so the actual numbers computed on your worksheet may range from perhaps 1 to 1,000. 
INTEGER CONSTRAINTS AND THE INTEGER OPTIMALITY 
TOLERANCE 
Users who solve problems with integer constraints occasionally report that “Solver claims it found an optimal 
solution, but I manually found an even better solution.” Solver now stops with the message “Solver found an 
integer solution within tolerance” instead of simply “Solver found a solution,” to highlight the fact that it found a 
solution within the range of the true integer optimal solution allowed by the Integer Optimality % tolerance in the 
Solver Options dialog. Since the default setting of the Tolerance option is 1%, Solver will stop when it has found 
a solution satisfying the integer constraints whose objective is within 1% of the true integer optimal solution. 
Therefore, you may know of or be able to discover an integer solution that is better than the one found by Solver. 
The reason that the default Integer Optimality % tolerance option is 1% is that the solution process for integer 
problems – which can take a great deal of time in any case – often finds a near-optimal solution (sometimes the 
optimal solution) relatively quickly, and then spends far more time exhaustively checking other possibilities to 
find (or verify that it has found) the very best integer solution. The Integer Optimality % default setting is a 
compromise value that often saves a great deal of time, and still ensures that a solution found by Solver is within 
1% of the true optimal solution. 
To ensure that Solver finds the true integer optimal solution – possibly at the expense of far more solution time 
– set the Integer Optimality % tolerance to zero. 
LIMITATIONS ON SMOOTH NONLINEAR OPTIMIZATION 
Nonlinear optimization problems are intrinsically more difficult to solve than linear problems, and there are fewer 
guarantees about what kind of solution Solver can find. If your smooth nonlinear problem is convex, Solver will 
normally find the globally optimal solution (subject to issues of poor scaling and the finite precision of computer 
arithmetic). But if your problem is non-convex, Solver will normally find only a locally optimal solution, close to 
the starting values of the decision variables, when you click Solve. 
When dealing with a non-convex problem, it is a good idea to run Solver starting from several different sets of 
initial values for the decision variables. Since Solver follows a path from the starting values (guided by the 
direction and curvature of the objective function and constraints) to the final solution values, it will normally stop 
at a peak or valley closest to the starting values you supply. By starting from more than one point – ideally 
chosen based on your own knowledge of the problem – you can increase the chances that you have found the 
best possible “optimal solution.” 
An easy way to do this is to select the Use MultiStart check box on the GRG Nonlinear tab of the Solver Options 
dialog: See Multistart Methods for Global Optimization for more information. However, this method uses 
randomly chosen starting points, so it doesn’t take advantage of your special knowledge of the problem. 
Nonlinear problems with integer constraints are solved by a Branch and Bound method that runs the GRG 
method on a series of subproblems. If the GRG method stops prematurely due to slow convergence, or fails to 
find a feasible point on a given run, this may prevent the Branch & Bound method from finding the true integer 
optimal solution; though in most cases – given enough time – a good integer solution can be found. 
Note that, when the GRG Nonlinear Solving method is selected in the dropdown list in the Solver 
Parameters dialog, the Generalized Reduced Gradient algorithm is used to solve the problem – even if 
it is actually a linear model that could be solved by the (faster and more reliable) Simplex LP method. 
The GRG method will usually find the optimal solution to a linear problem, but occasionally you will 
receive a Solver Result Message indicating some uncertainty about the status of the solution – 
especially if the model is poorly scaled. So you sh 
MULTISTART METHODS FOR GLOBAL OPTIMIZATION 
Solver’s multistart methods for global optimization can overcome some of the limitations of the GRG Solving 
method alone, but they are not a panacea. The multistart methods will automatically run the GRG method from 
a number of starting points and will display the best of several locally optimal solutions found, as the probable 
globally optimal solution. Because the starting points are selected at random and then “clustered” together, they 
will provide a reasonable degree of “coverage” of the space enclosed by the bounds on the variables. The tighter 
the variable bounds you specify and the longer Solver runs, the better the coverage. 
However, the performance of the multistart methods is generally limited by the performance of the GRG method 
on the subproblems. If the GRG method stops prematurely due to slow convergence, or fails to find a feasible 
point on a given run, the multistart method can improve upon this only by finding another starting point from 
which the GRG method can find a feasible solution, or a better locally optimal solution, by following a different 
path into the same region. 
If the GRG method reaches the same locally optimal solution on many different runs initiated by the multistart 
method, this will tend to decrease a Bayesian estimate of the number of locally optimal solutions in the problem, 
causing the multistart method to stop relatively quickly. In many cases this indicates that the globally optimal 
solution has been found – but you should always inspect and think about the solution, and consider whether 
you should run the GRG method manually from starting points selected based on your knowledge of the 
problem. 
Could always ensure that you have selected the right Solving method for your problem. 
GRG NONLINEAR SOLVING METHOD 
STOPPING CONDITIONS 
It is helpful to understand what the GRG Nonlinear Solving method can and cannot do, and what each of the 
possible Solver Result Messages means for this Solver engine. At best, the GRG Solving method alone – like 
virtually all “classical” nonlinear optimization algorithms – can find a locally optimal solution to a reasonably well-
scaled, non-convex model. At times, Solver will stop before finding a locally optimal solution, when it is making 
very slow progress (the objective function is changing very little from one trial solution to another) or for other 
reasons. 
Locally Versus Globally Optimal Solutions 
When the message “Solver found a solution” appears, it means that the GRG method has found a locally optimal 
solution – there is no other set of values for the decision variables close to the current values that yields a better 
value for the objective function. Figuratively, this means that Solver has found a “peak” (if maximizing) or “valley” 
(if minimizing) – but if the model is non-convex, there may be other taller peaks or deeper valleys far away from 
the current solution. Mathematically,

Continue navegando