Algorithm
- Type
Selection
- Range
The settings listed below
- Default
Automatic
This option indicates which algorithm Knitro should use to solve the problem. At the default setting Knitro will automatically try to choose the best algorithm based on the problem characteristics. Possible values are:
Automatic
Interior-Direct
Interior-CG
Active-Set
SQP
Multi-algorithm
Using the Interior-Direct optimizer may result in substantial improvements over Interior-CG when the problem is ill-conditioned (as evidenced by Interior-CG taking a large number of Conjugate Gradient iterations). We encourage the user to try both options as it is difficult to predict in advance which one will be more effective on a given problem.
The setting ‘Active-Set’ refers to the active-set Sequential Linear-Quadratic Programing (SLQP) optimizer. This optimizer is particularly advantageous when “warm starting” (i.e., when the user can provide a good initial solution estimate, for example, when solving a sequence of closely related problems). This algorithm is also best at rapid detection of infeasible problems. The Active-Set algorithm is efficient and robust for small and medium-scale problems, but is typically less efficient than both the Interior-Direct and Interior-CG algorithms on large-scale problems (problems with many thousands of variables and constraints).
The setting ‘SQP’ refers to the Sequential Quadratic Programming (SQP) algorithm for continuous problems. This algorithm is primarily designed for small problems, where the computational cost is dominated by function and derivative evaluations. It will often be the most efficient algorithm for such problems. Like the Active-Set algorithm, this algorithm can converge quickly when a good initial solution estimate is provided.
The setting ‘Multi-algorithm’ runs all four algorithms above either sequentially or in parallel. The option Number of Threads can be used to let the multi-algorithm run in parallel. The option Multi Algorithm Termination controls how to terminate the multi-algorithm procedure.
Note
We strongly encourage you to experiment with all algorithm settings as it is difficult to predict which one will work best on any particular problem.
All algorithms can be used for solving problems with complementarity constraints.
Knitro offers a crossover feature in which the interior point method switches to the active-set method near the solution, to try to get a more exact solution and provide more exact sensitivity and active-set information. The crossover procedure is controlled by the option Crossover Iterations Limit .
Learn more about