The GAMS System

Introduction

The General Algebraic Modeling System (GAMS) is specifically designed for modeling linear, nonlinear and mixed integer optimization problems. The system is especially useful with large, complex problems. GAMS is available for use on personal computers, workstations, mainframes and supercomputers.

GAMS allows the user to concentrate on the modeling problem by making the setup simple. The system takes care of the time-consuming details of the specific machine and system software implementation.

GAMS is especially useful for handling large, complex, one-of-a-kind problems which may require many revisions to establish an accurate model. The system models problems in a highly compact and natural way. The user can change the formulation quickly and easily, can change from one solver to another, and can even convert from linear to nonlinear with little trouble.

System Features

GAMS lets the user concentrate on modeling. By eliminating the need to think about purely technical machine-specific problems such as address calculations, storage assignments, subroutine linkage, and input-output and flow control, GAMS increases the time available for conceptualizing and running the model, and analyzing the results. GAMS structures good modeling habits itself by requiring concise and exact specification of entities and relationships. The GAMS language is formally similar to commonly used programming languages. It is therefore familiar to anyone with programming experience.

Using GAMS, data are entered only once in familiar list and table form. Models are described in concise algebraic statements which are easy for both humans and machines to read. Whole sets of closely related constraints are entered in one statement. GAMS automatically generates each constraint equation, and lets the user make exceptions in cases where generality is not desired. Statements in models can be reused without having to change the algebra when other instances of the same or related problems arise. The location and type of errors are pinpointed before a solution is attempted. GAMS handles dynamic models involving time sequences, lags and leads and treatment of temporal endpoints.

GAMS is flexible and powerful. Models are fully portable from one computer platform to another when GAMS is loaded to each platform. GAMS facilitates sensitivity analysis. The user can easily program a model to solve for different values of an element and then generate an output report listing the solution characteristics for each case. Models can be developed and documented simultaneously because GAMS allows the user to include explanatory text as part of the definition of any symbol or equation.

Release 2.50

GAMS is being enhanced and expanded on a continuing basis. Release 2.25 contains language extensions such as SOLVE statements within a loop, INCLUDE statement, IF-ELSE statement, and report writing capabilities using the PUT statement. Other enhancements included added system integration features, performance improvements, new subsystems, and support of additional computer platforms.

The current release 2.50 includes a Windows basedIntegrated Developers Environment (IDE) for Intel Windows platforms (95/98/ME and NT/2K/XP). New distributions of GAMS 2.50 with new language features and new/updated solvers are published at least four times a year.

Supported model types

GAMS model types include LP, MIP and different forms of NLPs.

Model Types

GAMS is able to formulate models in many different types of problem classes. That means switching from one model type to another can be done with a minimum of effort. You can even use the same data, variables, and equations in different types of models at the same time.

GAMS supports the following basic model types:

LP / Linear Programming
NLP / Non-Linear Programming
DNLP / Non-Linear Programming with Discontinuous Derivatives
MIP / Mixed-Integer Programming
MINLP / Mixed-Integer Non-Linear Programming
MCP / Mixed Complementarity Problems
CNS / Constrained Nonlinear Systems
MPEC / Mathematical Programs with Equilibrium Constraints

GAMS Solvers

A large number of solvers for mathematical programming models has been hooked up to GAMS. Below we give a brief description of each solver.

BARON / Branch-And-Reduce Optimization Navigator for proven global solutions from The Optimization Firm
BDMLP / LP solver that comes with any GAMS system
CONOPT / Large scale NLP solver from ARKI Consulting and Development
CPLEX / High-performance LP/MIP solver from Ilog
DECIS / Large scale stochastic programming solver from StanfordUniversity
DICOPT / Framework for solving MINLP models. From CarnegieMellonUniversity
EXAMINER / A tool for examining solution points and assessing their merit
GAMSBAS / A Program for Saving an Advanced Basis for GAMS
GAMSCHK / A System for Examining the Structure and Solution Properties of Linear Programming Problems Solved using GAMS
LGO / Lipschitz global optimizer from Pinter Consulting Services
MILES / MCP solver from University of Colorado at Boulder that comes with any GAMS system
MINOS / NLP solver from StanfordUniversity
MOSEK / Large scale LP/MIP plus conic and convex non-linear programming system from EKA Consulting
MPSGE / Modeling Environment for CGE models from University of Colorado at Boulder
MPSWRITE / MPS file generator that comes with any GAMS System
OQNLP / Multi-start method for global optimization from Optimal Methods Inc.
OSL / High performance LP/MIP solver from IBM
OSLSE / OSL Stochastic Extension for solving stochastic models
PATH / Large scale MCP solver from University of Wisconsin at Madison
SBB / Branch-and-Bound algorithm from ARKI for solving MINLP models
SCENRED / A tool for the reduction of scenarios modeling the random data processes
SNOPT / Large scale SQP based NLP solver from StanfordUniversity
XA / Large scale LP/MIP system from Sunset Software
XPRESS / High performance LP/MIP solver from Dash

The Solver/Model type Matrix shows which solver is capable of which model type:

Solver/Model type availability
CNS / DNLP / LP / MCP / MINLP / MIP / MPEC / NLP / Stoch. / Global
BARON / / / / / /
BDMLP / /
CONOPT / / / /
CPLEX / /
DECIS /
DICOPT /
LGO / / /
MILES /
MINOS / / /
MOSEK / / / /
OQNLP / / / / / /
OSL / /
OSLSE /
PATH / /
SBB /
SNOPT / / /
XA / /
XPRESS / /
Beta solvers
CONVERT / / / / / / / /
NLPEC / /
PATHNLP / / /

Supported Platforms

Solver/Platform availability
Intel / Sun Sparc / HP 9000 / DEC Alpha / IBM RS-6000 / SGI
Windows
95/98/Me/NT/2000/XP / Linux / Solaris / HP-UX 10 / Digital
Unix 4.0 / AIX 4.3 / IRIX
BARON 5.0 / / /
BDMLP / / / / / / /
CONOPT / / / / / / /
CPLEX 8.1 / / / / / / /
DECIS / / / / /
DICOPT / / / / / / /
LGO / /
MILES / / / / / / /
MINOS / / / / / / /
MOSEK 2.5 / / /
MPSGE / / / / / / /
OQNLP /
OSL V3 / / / / V2 / /
PATH / / / / / / /
SBB / / / / / / /
SNOPT / / / / / / /
XA / / / / / /
XPRESS 2003 / / /
Beta solvers
CONVERT / / / / / / /
NLPEC / / / / / / /
PATHNLP / / / / / / /
Contributed Plug&Play solvers
AMPLwrap / / / / / / /
DEA / / / / / / /
Kestrel / / /
QPwrap / / / / / / /

GAMS Development Corporation

1217 Potomac Street, N.W., Washington, DC20007, USA

Tel: (202)342-0180 Fax: (202)342-0181