87. SUBOUT
The SUBOUT option is used to control the degree to which fixed variables are substituted out of the ultimate math program passed to the solver engines.
For example, consider the model:
MAX= 20*X + 30*Y + 12*Z;
X = 2*Y;
X + Y + Z <= 110;
Y = 30;
If we run the GEN.command, we see that LINGO is able to reduce this model down to the equivalent, but smaller model:
MAX= 12 * Z + 2100;
Z <= 20;
From the third constraint of the original model it is obvious that Y is fixed at the value 30. Plugging this value for Y into the first constraint, we can conclude that X has a value of 60. Substituting these two fixed variables out of the original formulation yields the reduced formulation above.
In most cases, substituting out fixed variables yields a smaller, more manageable model. In some cases, however, you may wish to avoid this substitution. An instance in which you might want to avoid substitution would be when equations have more than one root. When m multiple roots are present, reduction may select a suboptimal root for a particular equation. On the other hand, the global and multistart solvers are adept at handling equations containing multiple roots. Thus, when using these solvers one may wish to forgo fixed variable reduction.
The available options are:
SUBOUT Setting |
Reduction Degree |
0 |
None |
1 |
Always |
2 |
No with global and multistart |
3 |
Linear only |
Selecting None disables all fixed variable reduction. Selecting Always enables reduction. When Not with global and multistart is selected, LINGO disables reduction whenever either the global or multistart solvers are selected, otherwise reduction is performed. With the Linear Only option, LINGO will not substitute a variable out unless it is a linear variable.
Note: | You should be careful when turning off fixed variable reduction. If the model generator is unable to substitute out fixed variables, you may end up turning a linear model into a more difficult nonlinear model. |
LINGO defaults to the Linear Only setting for fixed variable reduction.