|Developed by||Robert Fourer
|Type of format||mathematical programming|
nl is a file format for presenting and archiving mathematical programming problems. Initially this format has been invented for connecting solvers to AMPL. 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
- Quadratic programming
- Nonlinear programming
- Mixed-integer programming
- Mixed-integer quadratic programming with or without convex quadratic constraints
- Mixed-integer nonlinear programming
- Second-order cone programming
- Global optimization
- Semidefinite programming problems with bilinear matrix inequalities
- Complementarity problems (MPECs) in discrete or continuous variables
- Constraint programming
The nl format is low-level and is designed for compactness, not for readability. It has both binary and textual representation. Many solvers such as CPLEX, Gurobi and MOSEK accept this format either directly or through special driver programs.
- sol (format) - a file format for presenting solutions of mathematical programming problems
- David Gay (2005). Writing .nl Files (PDF) (Technical report). Albuquerque, NM: Sandia National Laboratories. CiteSeerX .
- David Gay (1993). Hooking Your Solver to AMPL (PDF) (Technical report). Murray Hill, NJ: Bell Laboratories. 97-4-06.
- Robert Fourer; David M. Gay (2002). "Extending an Algebraic Modeling Language to Support Constraint Programming". INFORMS Journal on Computing. 14: 322–344. doi:10.1287/ijoc.14.4.322.2825.