KNITRO
   HOME

TheInfoList



OR:

Artelys Knitro is a
commercial Commercial may refer to: * (adjective for) commerce, a system of voluntary exchange of products and services ** (adjective for) trade, the trading of something of economic value such as goods, services, information or money * a dose of advertising ...
software package for solving large scale nonlinear
mathematical optimization Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criteria, from some set of available alternatives. It is generally divided into two subfiel ...
problems. KNITRO – (the original solver name) short for "Nonlinear Interior point Trust Region Optimization" (the "K" is silent) – was co-created by Richard Waltz, Jorge Nocedal, Todd Plantenga and Rich Byrd. It was first introduced in 2001, as a derivative of academic research at
Northwestern University Northwestern University (NU) is a Private university, private research university in Evanston, Illinois, United States. Established in 1851 to serve the historic Northwest Territory, it is the oldest University charter, chartered university in ...
. Subsequently, it was developed by Ziena Optimization LLC, which has been bought by Frech Artelys. Optimization problems must be presented to Knitro in mathematical form, and should provide a way of computing function derivatives using
sparse matrices In numerical analysis and scientific computing, a sparse matrix or sparse array is a matrix (mathematics), matrix in which most of the elements are zero. There is no strict definition regarding the proportion of zero-value elements for a matrix ...
(Knitro can compute derivatives approximation but in most cases providing the exact derivatives is beneficial). An often easier approach is to develop the optimization problem in an
algebraic modeling language Algebraic modeling languages (AML) are high-level computer programming languages for describing and solving high complexity problems for large scale mathematical computation (i.e. large scale optimization type problems). One particular advantage of ...
. The modeling environment computes function derivatives, and Knitro is called as a "solver" from within the environment.


Problem classes solved by Artelys Knitro

Knitro is specialized for nonlinear optimization but also solves a wide range of optimization problems: * General nonlinear problems (NLP), including non-convex * Systems of nonlinear equations * Linear problems (LP) * Quadratic problems (QP/QCQP/SOCP), both convex and non-convex * Least squares problems / regression, both linear and nonlinear * Mathematical programs with complementarity constraints (MPCC/ MPEC) * Mixed-integer nonlinear problems (MIP/MINLP) * Derivative-free optimization problems (DFO)


Algorithms

Artelys Knitro contains a wide range of optimization algorithms.


NonLinear Programming (NLP) solver

Knitro offers four different optimization
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s for solving optimization problems. Two algorithms are of the
interior point In mathematics, specifically in topology, the interior of a subset of a topological space is the union of all subsets of that are open in . A point that is in the interior of is an interior point of . The interior of is the complement of t ...
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. * Interior/Direct algorithm * Interior/Conjugate Gradient algorithm * Active Set algorithm * Sequential Quadratic Programming (SQP) algorithm


Mixed-Integer NonLinear Programming (MINLP) solver

Knitro provides tools for solving optimization models (both linear and nonlinear) with binary or integer variables. The Knitro mixed integer programming (MIP) code offers three algorithms for mixed-integer nonlinear programming (MINLP): * Nonlinear
Branch and Bound Branch and bound (BB, B&B, or BnB) is a method for solving optimization problems by breaking them down into smaller sub-problems and using a bounding function to eliminate sub-problems that cannot contain the optimal solution. It is an algorithm ...
* Quesada-Grossmann algorithm * Mixed-Integer Sequential Quadratic Programming (MISQP)


Features

Artelys Knitro supports a variety of programming and modeling languages including. * Object-oriented interfaces for C++, C#, Java and Python * Matrix-oriented interfaces for Julia, C, Fortran, MATLAB, and R * Links to modeling languages:
AIMMS AIMMS (acronym for Advanced Interactive Multidimensional Modeling System) is a prescriptive analytics software company with offices in the Netherlands, United States, and Singapore. It has two main product offerings that provide modeling and optim ...
,
AMPL AMPL (A Mathematical Programming Language) is an algebraic modeling language to describe and solve high-complexity problems for large-scale mathematical computing (e.g. large-scale optimization and scheduling-type problems). It was developed ...
, GAMS, JuMP and MPL * Links to Excel through Frontline Solvers Artelys Knitro also includes a number of key features: * A large set of well-documented user options and automatic tuner * (Parallel) multi-start for global optimization * Derivatives approximation and checker * Internal presolver


Supported platforms

Artelys Knitro is available on the following platforms: * Windows 64-Bit * Linux x86_64 * MacOS 64 *
ARM processors In human anatomy, the arm refers to the upper limb in common usage, although academically the term specifically means the upper arm between the glenohumeral joint (shoulder joint) and the elbow joint. The distal part of the upper limb between t ...
for embedded optimizationArtelys Knitro and ARM processors
/ref>


References


External links


Jorge Nocedal
profile at EECS department of McCormick School of Engineering {{Mathematical optimization software Numerical software Mathematical optimization software