Jump to content

KNITRO

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 88.177.250.40 (talk) at 21:09, 15 January 2015. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

KNITRO
Designed byRichard Waltz
Jorge Nocedal
Todd Plantenga
Richard Byrd
DeveloperZiena Optimization LLC
First appeared2001
Stable release
9.1.0 / December 18, 2014
OSCross-platform
LicenseProprietary
WebsiteZiena home page

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++, 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, 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, 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 Ziena Optimization, LLC. KNITRO was introduced in 2001 as a derivative of academic research at Northwestern University, and has undergone continual improvement since.

References

  • Nocedal, Jorge; Wright, Stephen J. (2006). Numerical Optimization, 2nd Edition. Springer. ISBN 0-387-30303-0.