• Corpus ID: 60753226

AMPL: A Modeling Language for Mathematical Programming

  title={AMPL: A Modeling Language for Mathematical Programming},
  author={Robert Fourer and Brian W. Kernighan},
Practical large-scale mathematical programming involves more than just the application of an algorithm to minimize or maximize an objective function. Before any optimizing routine can be invoked, considerable effort must be expended to formulate the underlying model and to generate the requisite computational data structures. AMPL is a new language designed to make these steps easier and less error-prone. AMPL closely resembles the symbolic algebraic notation that many modelers use to describe… 
Program analysis and transformation in mathematical programming
A new domain specific language for mathematical programming that allows us to automatically determine the structure of a problem then transform it into a more desirable form and uses these tools to develop a series of transformations that manipulate the mathematical model.
Expressing Special Structures in an Algebraic Modeling Language for Mathematical Programming
Extensions to an algebraic modeling language that encompass piecewise-linear, network and related structures are described that make models faster to translate as well as to solve and permit a “column-wise” formulation of the constraints as an alternative to the “row-wise" formulation most often associated with algebraic languages.
Extending a general-purpose algebraic modeling language to combinatorial optimization: a logic programming approach
General-purpose algebraic modeling languages are a central feature of popular computer systems for large-scale optimization and most phases of language translation remain independent of solver details, so that users can easily switch between many combinations of language and solver.
Extending an Algebraic Modeling Language to Support Constraint Programming
This work describes how several useful combinatorial features have been added to the AMPL modeling language and how AMPL's general-purpose solver interface has been adapted accordingly, and provides an illustration of a solver connection.
A Structure Conveying Parallelizable Modeling Language for Mathematical Programming
This work presents a modeling language that enables the modular formulation of optimization problems and does not scramble the block-structure of the problem but passes this on to the solver if wished, enabling the parallelization of the issue generation process.
Algebraic Modeling Languages for Optimization
Algebraic modeling languages are sophisticated software packages that provide a key link between an analyst’s mathematical conception of an optimization model and the complex algorithmic routines
Numerical Issues and Influences in the Design of Algebraic Modeling Languages for Optimization
Examples are provided in modeling languages for smooth nonlinear optimization, the ability to provide numerically computed, exact first and second derivatives has made modeling languages a valuable tool in solver development, and more.
New constructs for the description of combinatorial optimization problems in algebraic modeling languages
This paper explores a hybrid approach that employs a general-purpose subset enumeration scheme together with problem-specific directives to guide an efficient search for combinatorial optimization problems.
Stochastic Programming from Modeling Languages
The model takes into account the uncertainties characterizing the scenarios through stochastic programming techniques, and is much closer, in spirit, to the way that decision-makers have to deal with uncertain future.


Modeling languages versus matrix generators for linear programming
It is argued that modehng languages should lead to more reliable application of linear programming at lower overall cost.
A generalized model management system for mathematical programming
The database structures required to implement a knowledge-based MMS are discussed and a prototype system for mathematical programming, the Generalized eXperimental Math Programming system (GXMP), is described, including an algebraic language developed for use in GXMP.
Extending Planning Languages to Include Optimization Capabilities
This paper proposes methodology which is useful in designing an optimization capability for planning languages and spreadsheet systems, and has been implemented in a system called IFPS/OPTIMUM, which provides an optimized capability to users of the widely-used planning language IFPS.
C++ Programming Language
Bjarne Stroustrup makes C even more accessible to those new to the language, while adding advanced information and techniques that even expert C programmers will find invaluable.
Oil refinery modeling with the GAMS language
Linear programming models of oil refineries have been used for many years. However, the process of constructing and modifying these models is time consuming, tedious, and difficult to debug. The GAMS
PAM- a practitioner's approach to modeling
This paper describes block-wise model formulation, discusses the relationships of the data to the model, presents an overview of PAM's matrix generation language, and gives some experience with a prototype system.
This paper describes the resulting development of a General Algebraic Modeling System (GAMS), which employs a rigorous algebraic representation of data and equations, coupled with relational database-type facilities, and draws comparisons to other modeling systems designed for large-scale linear programming problems.
The UNIX™ programming environment
The UNIX UNIX is a trademark of Bell Laboratories. operating system provides an especially congenial programming environment, in which it is not only possible, but actually natural, to write programs
The planning of investment programs in the fertilizer industry
Most projections of fertilizer use around the world imply continuing rapid growth in fertilizer demand. To meet such increased levels of demand, substantial investments are being made in new