Our Customers
- HBOS Plc/ INSIGHT (UK)
- UBS Investment Research (UK)
- Fidelity Investment Ltd. (UK)
- Deutsche Bank (UK)
- APT INC (USA)
- MOD (UK)
- UNILEVER (UK/Netherlands)
- US Coast Guard (USA)
- British Gas (UK)
- Southern Electric (UK)
- DTI (UK)
- Allocare (Switzerland)
- NATO (Belgium)
- Singapore Defence (Singapore)
- Indian Institute of Management, Calcutta (India)
Contact Us
AMPL SHELL Overview
AMPL is a comprehensive, powerful and flexible algebraic modelling language and AMPL Shell is an interactive shell-level modelling environment. AMPL is used to create machine-readable formulation of the linear, non-linear and integer programming problems.

AMPL is based on modern modelling principles and utilizes an advanced architecture providing flexibility that most other modelling systems lack. AMPL has been used in many demanding mathematical programming modelling applications around the world.
AMPL allows modellers to create models with maximum productivity. By using AMPL’s natural algebraic notation, even a very large, complex model can often be stated in a concise, and understandable form. Since AMPL models are easy to understand, debug and modify, AMPL also makes maintaining models easy.
Key Features
Environment features
Interface with a large variety of Solvers:AMPL Shell has interfaces to a large variety of solvers including CONOPT, CPLEX, FortMP, MOPS, KNITRO, LGO, LANCELOT, LOQO, LSGRG, MINOS, OSL, SNOPT, and XA.
Direct Database Connectivity: Importing data from a variety of corporate database systems into optimisation models is frequently an essential requirement for optimisation projects. One of the advanced features of AMPL is the database connection option that directly links AMPL with relational databases and other data sources. This option enables the model developer to gather both indexes and data values from various data sources and import them directly into the model.
After the model has been optimised, the solution output can be exported back into the database. AMPL can import both indexes and data directly from a database. After the model has been solved AMPL can also export the solution back to the database. The databases which are supported include Access, ODBC, Paradox, FoxPro, and Dbase for the Windows version and Oracle for the Motif version.
Powerful Scripting Features: AMPL scripting language can be used to control the flow of execution and solution of the models, and to modify existing model instances. This powerful feature includes looping and conditional statements, commands to modify the model instances i.e. dropping constraints or switching objective functions and has the ability to import and consume user defined function imported from external libraries. It is useful for quick implementation of sensitivity analysis, prototyping decomposition methods, heuristics or other iterative schemes.
Separation of Model and data: Separation of model and data allows the AMPL models to remain concise as sets and data tables grow. Models may make use of diagnostic features of AMPL and include checks for validity of the data.
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 user-defined functions, fast automatic differentiation. Convenient alternative notations including node and arc declarations for network problems, a special syntax for piecewise-linear functions, and column wise specification of linear coefficients.
Supported Platforms
- All Windows versions
- Most variants of Linux and Unix
