AMPL (an abbreviation of the English. A Mathematical Programming Language?» ??“ ?«Language for Mathematical Programming) ??“ high level programming language developed at Bell Laboratories, in order to describe and solve complex problems of optimization and scheduling theory. AMPL does not solve the problem directly, and calls appropriate external solvers (like CPLEX, MINOS, IPOPT, SNOPT, etc.), to obtain solutions. AMPL works with linear and nonlinear optimization problems with discrete or continuous variables. One advantage of AMPL ??“ like its syntax mathematical record of optimization problems that allows us to give very short and easy to read the definition of mathematical programming. Many modern solvers available on the server NEOS, take input models for AMPL. AMPL was created English. Robert Fourer, Eng. David Gay and Brian Kerniganom.
AMPL is a comprehensive and powerful algebraic modeling language for linear and nonlinear optimization problems, in discrete or continuous variables.
Developed at Bell Laboratories, AMPL lets you use common notation and familiar concepts to formulate optimization models and examine solutions, while the computer manages communication with an appropriate solver.
AMPL??™s flexibility and convenience render it ideal for rapid prototyping and model development, while its speed and control options make it an especially efficient choice for repeated production runs.
Key modeling language features
Broad support for sets and set operators. AMPL models can use sets of pairs, triples, and longer tuples; collections of sets indexed over sets; unordered, ordered, and circular sets of objects; and sets of numbers.
General and natural syntax for arithmetic, logical, and conditional expressions; familiar conventions for summations and other iterated operators.
Nonlinear programming features such as initial primal and dual values, user-defined functions, fast automatic differentiation, and automatic elimination of definedvariables.
Convenient alternative notations including node and arc declarations for network problems, a special syntax for piecewise-linear functions, and columnwise specification of linear coefficients.
Key modeling environment features
Interactive command environment with batch processing options. Powerful display commands let you view any model component or expression, browsing on-screen or writing to a file, using automatic formatting or your own preferences.
New looping and if-then-else commands. Simple programs in the AMPL command language can now be written to solve sequences of related problems, for sensitivity analysis and for decomposition or other iterative schemes.
Separation of model and data. AMPL models remain concise even as sets and data tables grow. Models may incorporate many kinds of conditions for validity of the data.
Interfaces to popular and sophisticated solvers including CONOPT, CPLEX, LAMPS, LANCELOT, LOQO, LSGRG, MINOS, OSL, SNOPT, and XA.