nl (format)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Nl (format)
Filename extension .nl
Developed by Robert Fourer
David Gay
Brian Kernighan
Bell Labs
Type of format mathematical programming

nl is a file format for presenting and archiving mathematical programming problems.[1] It supports linear and nonlinear optimization problems, complementarity problems (MPECs), in discrete or continuous variables, constraint programming and other types of problems. Initially this format has been invented for connecting solvers to AMPL.[2] 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 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.

The AMPL Solver Library (ASL) which allows to read the nl files and provides the automatic differentiation functionality is open-source. It is used in many solvers to implement AMPL connection.

See also[edit]

  • sol (format) - a file format for presenting solutions of mathematical programming problems


  1. ^ David Gay (2005). Writing .nl Files (Technical report). Albuquerque, NM: Sandia National Laboratories. CiteSeerX: 
  2. ^ David Gay (1993). Hooking Your Solver to AMPL (Technical report). Murray Hill, NJ: Bell Laboratories. 97-4-06.