||This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. (September 2016) (Learn how and when to remove this template message)|
|Designed by||Richard Waltz
10.2.0 / December 21, 2016
Artelys Knitro is a commercial software package for solving large scale mathematical optimization problems. Knitro is specialized for nonlinear optimization, but also solves linear programming problems, quadratic programming problems, systems of nonlinear equations, and problems with equilibrium constraints (complementarities). The unknowns in these problems must be continuous variables in continuous functions; however, functions can be convex or nonconvex. Knitro computes a numerical solution to the problem—it does not find a symbolic mathematical solution.
Knitro can also solve mixed integer linear, quadratic or nonlinear programming problems, i.e. problems with variables that take integer values.
Optimization problems must be presented to Knitro in mathematical form, and should provide a way of computing function derivatives using sparse matrices. Problems may be written in C, C++, C#, Fortran, Java, or Python, in which case Knitro is called as a software routine to solve the problem. An often easier approach is to develop the optimization problem in an algebraic modeling language (AML) like AIMMS, AMPL, GAMS, Mathematica, MATLAB, R, Mosel (through the Xpress-NonLinear module), etc. The modeling environment computes function derivatives, and Knitro is called as a "solver" from within the environment.
Knitro offers four different optimization algorithms for solving optimization problems. Two algorithms are of the interior point type, and two are of the active set type. These algorithms are known to have fundamentally different characteristics; for example, interior point methods follow a path through the interior of the feasible region while active set methods tend to stay at the boundaries. Knitro provides both types of algorithm for greater flexibility in solving problems, and allows crossover during the solution process from one algorithm to another. The code also provides a multistart option for promoting the computation of the global minimum.
KNITRO (original solver name), short for "Nonlinear Interior point Trust Region Optimization" (the "K" is silent) was created primarily by Richard Waltz, Jorge Nocedal, Todd Plantenga and Richard Byrd. It is produced by Artelys. KNITRO was introduced in 2001 as a derivative of academic research at Northwestern University (through Ziena Optimization LLC), and has undergone continual improvement since.
- Nocedal, Jorge; Wright, Stephen J. (2006). Numerical Optimization, 2nd Edition. Springer. ISBN 0-387-30303-0.
- R.H. Byrd; J. Nocedal; R.A. Waltz (2006). "KNITRO: An Integrated Package for Nonlinear Optimization" (PDF).