nl is a
file format
A file format is a Computer standard, standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary format, pr ...
for presenting and archiving
mathematical programming
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. Initially, this format has been invented for connecting solvers to
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 ...
. It has also been adopted by other systems such as
COIN-OR (as one of the input formats),
FortSP (for interacting with external solvers), and
Coopr (as one of its output formats).
The nl format supports a wide range of problem types, among them:
*
Linear programming
Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements and objective are represented by linear function#As a polynomia ...
*
Quadratic programming
*
Nonlinear programming
*
Mixed-integer programming
* Mixed-integer quadratic programming with or without
convex
Convex or convexity may refer to:
Science and technology
* Convex lens, in optics
Mathematics
* Convex set, containing the whole line segment that joins points
** Convex polygon, a polygon which encloses a convex set of points
** Convex polytop ...
quadratic constraints
* Mixed-integer nonlinear programming
*
Second-order cone programming
*
Global optimization
Global optimization is a branch of operations research, applied mathematics, and numerical analysis that attempts to find the global minimum or maximum of a function or a set of functions on a given set. It is usually described as a minimization ...
*
Semidefinite programming problems with
bilinear matrix inequalities
*
Complementarity problems (MPECs) in discrete or continuous variables
*
Constraint programming
Constraint programming (CP) is a paradigm for solving combinatorial problems that draws on a wide range of techniques from artificial intelligence, computer science, and operations research. In constraint programming, users declaratively state t ...
[
]
The nl format is low-level and is designed for compactness, not for readability. It has both binary and textual representation.
Most commercial and academic solvers accept this format either directly or through special driver programs.
The open-source AMPL Solver Library distributed via
Netlib and AMPL/MP library
provide nl
parsers that are used in many solvers.
AMPL/MP library
contains an NL writer and SOL reader.
See also
*
sol (format) - a file format for presenting solutions of mathematical programming problems
References
{{Mathematical optimization software
Mathematical optimization software
Computer file formats