Bruce McCarl's GAMS Newsletter Number 22
Expanded GAMS User's Guide by McCarl et al
The McCarl Guide was renamed and other authors were added to
- fully reflect GAMS staff involvement with its construction (earlier
they did not want this) and
- indicate it is an expansion over the older User's Guide which is very
incomplete.
The Guide was recently updated to be compatible with version 22.5 of
GAMS. This document will be distributed with GAMS systems 22.6 and
newer. For the time being a pdf copy is available.
All of the new GAMS and IDE features below are discussed in this
document.
New language commands
GAMS as documented in the updated Expanded GAMS Users Guide now
includes
- New functions and features that identify the version number of the
gams release system.gamsrelease and gamsrelease this gives 22.5 or
22.6 etc.
- New $ conditions $Eval, $EvalGlobal, $Evallocal and $Ife that allow
evaluation and comparison of numerical control variable expressions
- The function poly(x,a0,a1,a2,a3..) that evaluates a polynomial of
the form sum(i=0 to n, ai*x^i)
- A command line parameter Appendout (ao)=2 that will redirect the
listing file to standard outout (tyically the screen). This feature
is not available when running under the IDE.
- A syntax set.setname that allows one to reference all elements of
the set named setname in a set or parameter definition, i.e. set k
/set.i,set.j/ would put all elements of sets i and j in the set
k. $offmulti may be needed if set elements are in common. Parameter
kk(k) /set.i 10/ would define all elements in k associated with set
elements in i with a value of 10.
- A set of rules where local, global and scoped control variables can
have common names and a priority order (first local, then scoped then
global) in accessing these as discussed under the control variables
definition section of the Expanded User's Guide.
The GAMS IDE now
- When asked to Open several selected files in a new window will
create a single new window with multiple tabs.
- Contains a spelling check option under the Edit menu.
- An option when a GDX file is opened that can write a single symbol
or all symbols to an Excel file that is activated through a right
mouse click.
Some new library models are also included
Solvers
A couple of new solvers are present
- AlphaECP: A solver for mixed integer non-linear problems that is an
implementation of the Extended Cutting Plane method by Tapio
Westerlund and Toni Lastusilta from Abo Akademi University,
Finland. It requires the presence of a licensed MIP solver.
- COINBONMIN: A Basic Open-source Nonlinear Mixed INteger programming
solver that provides an implementation of an NLP-based
branch-and-bound algorithm, an outer-approximation decomposition
algorithm, an implementation of Quesada and Grossmann's branch-and-cut
algorithm, and a hybrid outer-approximation based branch-and-cut
algorithm.
- LINDOGLOBAL: A Global Optimization Solver from Lindo Systems,
Inc. that finds proven optimal solutions to non-convex mixed integer
non-linear problems. Use requires a license for GAMS/CONOPT. The size
of a model solved is limited to 2,000 equations and 3,000 variables.
Some new options were added to CONVERT:
- NLP2MCP that reformulates a non-integer program as a mixed
complementarity problem (MCP)
- AmplNLC that converts a model into C code for evaluating objectives,
constraints, and their derivatives.
- Jacobian that creates a GDX file containing the basic model data
(matrix, initial point, evaluation of constraints at initial point
and bounds)
- LindoMPI that creates an MPI file which is readable by Lindo.
Linear Interpolation code
Tom Rutherford recently wrote up a GAMS code illustrating how to do
linear interpolation of input data.
Tom also has other utilities
available.
Shademap
Uwe Schneider just released what he calls
GAMS - SHADEMAP which is a
GAMS callable tool for shading or coloring regions of simple maps
during a GAMS run using GAMS generated results. The interface links
to SHADEMAP which was created by Mark Horridge.
Uwe's interface is a
modification of the interface developed by Tom Rutherford.
GTREE: An IDE replacement
Gtree (by LEI) is a tool to show the structure of the GAMS code in a tree and
do some other functions. Gtree is a replacement of the GAMS/IDE and is
freeware. I have not used it so cannot comment further.
Courses offered
I teach
Basic GAMS June 10-13, 2008 in the Colorado mountains at Frisco
(near Breckenridge). The course is designed for those without GAMS
usage experience but has also proved useful for those with up to a
year of experience.
Advanced GAMS August 5-8, 2008 in the Colorado
mountains at Frisco (near Breckenridge). The course covers such
diverse topics as links to other programs like spreadsheets, speeding
up GAMS, scaling, debugging, improving output and advanced basis use
along with many other topics.
Further information and other courses are listed on http://www.gams.com/courses.htm.
Unsubscribe to future issues of this newsletter
To remove your name, please send an email to
mccarl-news-request@gams.com
containing unsubscribe on the subject line (as described on the
web page http://www.gams.com/maillist/newsletter.htm.
This newsletter is not a product of GAMS Corporation although it is
distributed with their cooperation.
October 31, 2007