The Pricing Strategies box on the Linear Solver tab:
is used to control the pricing strategy used by LINGO’s simplex solvers. Pricing determines the relative attractiveness of the variables during the simplex algorithm.
For the Primal Solver, you have the following choices:
• | Solver Decides — LINGO selects the pricing method it believes is the most appropriate. |
• | Partial — LINGO prices out a small subset of variables at each iteration and intermittently prices out all the variables to determine a new subset of interesting variables. |
• | Devex — Devex prices out all columns at each iteration using a steepest-edge approximation (see below.) |
Partial pricing tends to yield faster iterations. Devex, while slower, results in fewer overall iterations and can be helpful when models are degenerate. Thus, it is difficult to determine which method is superior beforehand.
For the Dual Solver, you have these options:
• | Solver Decides — LINGO selects the pricing method it believes is the most appropriate. |
• | Dantzig — The dual simplex solver will tend to select variables that offer the highest absolute rate of improvement to the objective regardless of how far other variables may have to move per unit of movement in the newly introduced variable. |
• | Steepest-Edge — The dual solver spends a little more time selecting variables by looking at the total improvement in the objective when adjusting a particular variable. |
• | Devex — Devex prices out all columns at each iteration using a steepest-edge approximation. |
• | Approximate Devex — An simplified implementation of true Devex pricing. |
Dantzig pricing generally yields faster iterations, however, the other variables in the model may quickly hit a bound resulting in little gain to the objective. With the steepest-edge option, each iteration will tend to lead to larger gains in the objective resulting in fewer overall iterations, however, each iteration will tend to take more compute time due to increased time spent in pricing. The Devex options approximate true steepest-edge pricing.
LINGO defaults to Solver Decides for both the primal and dual solvers.