Major releases contain substantial changes to the GAMS system. The License Check date is set to the release date of the major release.
Minor releases are mainly issued to provide bug fixes, performance improvements, and maintenance releases of solver libraries. Additionally, they can provide a few new features that do not change existing behavior. The License Check Date remains the same as for the prior major release. This means that any license file that worked with the prior major release will also work with this minor release.
Maintenance releases do not provide any new features. They are issued to provide bug fixes, performance improvements, and maintenance releases of solver libraries. The License Check Date remains the same as for the prior major release. This means that any license file that worked with the prior major release will also work with this maintenance release.
GAMS Distribution 24.5
|24.5.6||(Maintenance release)||November 27, 2015|
|24.5.5||(Maintenance release)||November 25, 2015|
|24.5.4||(Maintenance release)||October 15, 2015|
|24.5.3||(Maintenance release)||October 01, 2015|
|24.5.2||(Maintenance release)||September 29, 2015|
|24.5.1||(Major release)||September 23, 2015|
GAMS Maintenance Release 24.5.6 - November 27, 2015
GAMS Maintenance Release 24.5.5 - November 25, 2015
Table of Contents
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Wolfgang Albrecht, Stefan Kemnitz, Martha Loewe, Thomas Maindl, Bruce McCarl, and Andres Ramos.
- GAMS now always reports the upper bound that is sent to the solver in the column listing and solution report. Hence, with IntVarUp=1 GAMS prints the value of 100 for integer and semiint variables that are at default bound value +INF.
- Fixed a bug which could cause a crash when referencing attributes of equations (e.g. marginals) after a model was solved with a non-default solveLink setting and there was no solution returned.
- Fixed a bug which caused wrong sample sizes if the sample keyword was used more than once and with different sample sizes.
- New libraries.
- Fixed a problem with the computeserver option. The value for the computeserver option is limited to 255 characters. In order to specify a longer list of workers, one can now use multiple lines with the computeserver option.
- New libraries.
- New libraries 5.5 (20151028).
- New libraries 18.104.22.168.
- New libraries 3.2 (#e9a5ca7).
- Removed options
- Removed options
- New libraries 2.2 (#f17b9e7).
- Fixed a problem with
GAMS Maintenance Release 24.5.4 - October 15, 2015
Table of Contents
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Per Ivar Helgesen and Jan Imhof.
- Fixed a bug which caused wrong results in some cases of out-of-order assignments, in particular it had to be an assignment using the same controlling set more than once in one symbol, e.g.
- Fixed a bug when handling suffixes (e.g. .val) of Singleton Sets in Equations.
- Fixed a bug with the property
GAMS Maintenance Release 24.5.3 - October 01, 2015
GAMS Maintenance Release 24.5.2 - September 29, 2015
Table of Contents
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Kevin Doran and Renger van Nieuwkoop.
- Fixed a bug which caused a crash for certain assignments, in particular it had to be an assignment to a symbol that was also referenced on the RHS, with permuted indices and we actually set some of the records to zero which were non-zero before.
- Fixed a bug that lead to a crash on Linux when the GAMS system directory is a symbolic link. (This is for Mono only.)
- Fixed a bug that lead to a crash on Linux when the GAMS system directory is a symbolic link. The property
GamsWorkspace.system_directorynow always returns the canonical path with all symbolic links resolved.
idxperm3 (686): Check correct behavior when permuting indices of symbol used on LHS and RHS.
GAMS Major Release 24.5.1 - September 23, 2015
Table of Contents
- GAMS System
- Object Oriented APIs
- Model Libraries
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Wolfgang Britz, Guillaume Erbs, Michael Ferris, Mahbube Habibian, Josef Kallrath, Jean Mercenier, Stan Peter, Ingmar Schlecht, and Mark Thissen.
- Support for Windows XP has been dropped completely with this release (as announced).
- New model attributes
maxInfes: Maximum of infeasibilities
meanInfes: Arithmetic mean of infeasibilities
- New option solver. This simplifies the selection of the (default) solver for multiple model types.
- The command line option
solver=abcinitializes the default solver for the model types solver
abcis capable of to
abc. This initialization is done before the default solvers of individual model types are set via command line options. So a command line with
lp=conopt solver=bdmlpwill first set BDMLP as the default solver for model types LP, RMIP, and MIP (these are the model types BDMLP can handle) and then reset Conopt as the default solver for LP. The order of these parameters on the command line has no impact (i.e.
lp=conopt solver=bdmlpbehaves identically to
solver=bdmlp lp=conopt). If multiple occurrences of option
solverappear, the last one sets the option as it is with other options, including
- The solver for multiple model types can be set via the
Option solver=abc;in the GAMS model source code. This sets the solver for model types
abccan handle to
abc. With the
option solver=abc;the order among other solver setting options is significant. For example,
option lp=conopt, solver=bdmlp;will first set the solver for LP to Conopt and in the next step to BDMLP because BDMLP is capable of handling model type LP. Setting
solvertwice can also make sense:
option solver=conopt, solver=cbc;will result into setting the solver for model types CNS, DNLP, NLP, QCP, RMIQCP, and RMINLP to Conopt and the solver for model types LP, RMIP, and MIP to CBC.
- The command line option
- When using $LOADDC the reporting of domain errors has been improved.
- This release features several improvements of the execution system. The following lists some (extreme) examples:
- Improved performance when indices of accessed symbol are in "wrong" order, e.g.:
- Improved performance when assigning to non-empty symbols when the assignment is driven by their domain, e.g.:
- Improved performance when executing certain combinations of mappings, e.g.:
- Improved performance when "searching" a lot in a large symbol, e.g.:
- The complete GAMS technical documentation (release and installation notes, user's guides, solver and tools manuals, API reference manuals) is now available in HTML format with a unified table of contents. The documentation is available in the following forms:
- The online GAMS documentation provides search and keyword indexing functionalities in addition to navigating the GAMS documentation.
- The offline documentation allows access without a network connection:
- The main navigation page can be found at
[GAMS system directory]/docs/index.html(not linked from the GAMS IDE).
- For Windows, additionally a Microsoft Compiled HTML Help file is available at
[GAMS system directory]/docs/gams.chmand linked from the GAMS IDE Menu:
Help -> GAMS Documentation.
- The main navigation page can be found at
- The following documents are still available in PDF format: GAMS User's guide, McCarl Expanded GAMS User's guide, all solver manuals, and GAMS GDX API.
- New way to install GAMS on Mac OS X using a DMG file, see the installation notes.
- Added option conopt_optfile to set name of options file to be used for CONOPT calls in ANTIGONE.
- Now also available for Mac OS X.
- New libraries 15.9.22.
- New NLP solver for local search: FilterSD.
- New option Threads: Number of cores used for solution of MIP subproblems.
- New option IISOrder: Order in which constraints are considered in the search for an IIS.
IntTolremoved. Tolerances are now set by AbsConFeasTol, RelConFeasTol, AbsIntFeasTol, and RelIntFeasTol.
RLTRel: Algorithmic features that have been parameterized are now handle in an automatic way.
- The time limit is enforced based on CPU time for single-threaded jobs and based on wall-clock time for multi-threaded jobs.
- Simplified the screen output (eliminated some details and simplified time to a real number in seconds).
- Updated CBC to 2.9.5.
- Updated Ipopt to 3.12.3.
- New libraries 2.9.
- Introduced specialized branching methods for dealing with "big Ms".
- Introduction of conflict cuts (off by default, enable with option conflictcuts).
- Introduced new methods for dealing with symmetry.
- New libraries 3.17A.
- Corrected problem with options Ls2ndi and Lmusdf.
- Systems errors related to very tight memory (984) and the inversion routine (2027) have been removed.
- Three new options have been added to allow the modeler to see the order of the pre-triangular and post-triangular part of the model and the definitional equations:
- New libraries 0.5 (major update).
- Better handling of function
signpower(x,k)for positive integer k≤10.
- The default values for the following options have changed:
- New option FreeGamsModel. This option preserves memory by dumping the GAMS model instance representation temporarily to disk. This option is available in CplexD only.
- New libraries 6.0.5 (technical release).
- New option FreeGamsModel. This option preserves memory by dumping the GAMS model instance representation temporarily to disk.
- The set of GUSS model attributes (
Set ma "GUSS Model Attributes" / System.GUSSModelAttributes /;) has changed:
- The attribute
NumNOpthas been removed.
- The attributes
MeanInfeshave been added.
- The attribute
- New libraries 3.12 (minor changes).
- SubSolver option fixed: it was sometimes ignored.
- The option file can be omitted. In this case, the Kestrel call is done with default settings.
- Dropped Lindo/LindoGlobal libraries for Intel Solaris as announced previously.
- New libraries 9.0.225.
- New libraries 5.5.
- Improved accuracy and performance on numerical or mixed-variable optimization problems.
- Adjusted default upper bound on the superbasics limit from 500 to 5000 and consider the number of nonlinear constraint variables, not just the nonlinear objective variables, when computing the superbasics limit: memory is plentiful and cheap.
- Fixed case of memory corruption that resulted when using an initial point containing very many superbasic variables. If the initial point contains more than 5000 superbasics, limit the Hessian dimension to 5000 even though the superbasic limit is larger.
- New libraries 22.214.171.124.
- The GAMS option iterlim now sets the iteration limit for both simplex and interior point algorithms.
- More MOSEK options are now available in GAMS/Mosek:
- MSK_IPAR_MIO_CUT_CG: Controls whether CG (Chvatal-Gomory) cuts should be generated.
- MSK_IPAR_MIO_CUT_CMIR: Controls whether mixed integer rounding cuts should be generated.
- MSK_IPAR_MIO_PROBING_LEVEL: Controls the amount of probing employed by the mixed-integer optimizer in presolve.
- MSK_IPAR_MIO_RINS_MAX_NODES: Controls the maximum number of nodes allowed in each call to the RINS heuristic.
- MSK_DPAR_MIO_TOL_MAX_CUT_FRAC_RHS: Maximum value of fractional part of right hand side to generate CMIR and CG cuts for.
- MSK_DPAR_MIO_TOL_MIN_CUT_FRAC_RHS: Minimum value of fractional part of right hand side to generate CMIR and CG cuts for.
- MSK_DPAR_MIO_TOL_REL_DUAL_BOUND_IMPROVEMENT: If the relative improvement of the dual bound is smaller than this value, the solver will terminate the root cut generation.
- Now a hidden solver. Will be dropped from the distribution at some time (without further notice).
- New libraries 4.07.03.
- Adjusted to use wall-clock time on all platforms.
- Time limit checked more frequently, e.g. at each pivot.
- The presolve has been extended to find more reductions.
- Minor bug fixes.
- New libraries 3.2 #c9c4375 (major update):
- New presolvers "tworowbnd", "dualagg", "implfree", "redvub", and "stuffing", and improved presolve for ranged- and equality-type linear constraints.
- Presolving levels FAST, MEDIUM, and EXHAUSTIVE are now used to better coordinate the various presolvers.
- Generalized upgrade from (SOC-representable) quadratic constraints to SOC constraints.
- New primal heuristics "distribution diving", "indicator", and "bound", improved clique and variable bound heuristics, and adjusted diving heuristics to solve fewer LPs.
- New branching rules "distribution", "multaggr", and a new rule for SOS1 constraints.
- New reliability notions and improved treatment of nonlinearities in hybrid reliability pseudo cost branching.
- New separator "eccuts" for generating edge-concave cuts for quadratic constraints and improved separation for convex quadratic constraints.
- Decreased total memory usage by using more buffer data structures.
- Improved propagation and separation for SOS of type 1 by using information from a conflict graph.
- See also the full release notes, the change log, and the technical report.
- The following options were removed or replaced:
- For the following options, the default value changed:
- constraints/SOS1/sepafreq from 0 to 10.
- heuristics/clique/minfixingrate from 0.5 to 0.25.
- heuristics/vbounds/minfixingrate from 0.5 to 0.25.
- heuristics/actconsdiving/maxdiveavgquotnosol from 0 to 1.
- heuristics/actconsdiving/maxdiveubquotnosol from 0.1 to 1.
- heuristics/dins/nwaitingnodes from 0 to 200.
- lp/rowrepswitch from -1 to 1.2.
- presolving/abortfac from 0.0001 to 0.001.
- presolving/restartfac from 0.05 to 0.025.
- presolving/immrestartfac from 0.2 to 0.1.
- presolving/dualinfer/priority from 20010000 to -200.
- propagating/obbt/itlimitfactor from 5 to 10.
- New libraries 2.2.0 (major update).
- New libraries 4.3.892.
- Several bug fixes in both the MIP solver and the LP solver.
- Improved numeric stability, degeneracy handling, and perturbation scheme in LP optimizer.
- Added a new combined pricing scheme to the dual simplex optimizer.
- Improved presolve and restart in MIP optimizer.
- New libraries for XPRESS v7.9: Optimizer 28.01.05.
- Significantly improved linear algebra routines for the simplex solvers improving efficiency of a wide range of problems.
- Improvement heuristics called more often.
- The MIP log now provides information which heuristic finds a solution.
- Improved linear dependency checker for large problems.
- Improved scaling, including scaling of big-M type rows and of the Curtis-Reid scaling option.
- Improved inference-learning from infeasible subproblem during the MIP search.
- Improved presolver for quadratic instances.
- Improved handling of Special Ordered Sets.
- Improved propagation of conflict cuts.
- In the model library browser the IDE may provide hints about the content of the column when hovering over the headers.
- Option to specify file extensions for files that will be reloaded without a confirmation dialog.
- When renaming the temporary file to
gdxdiff.gdxfails, issue a ViewClose command in case the file is open in the GAMSIDE and try to rename again.
- If no difference was found, issue a message in the log indicating this.
- Add a set with two elements with explanatory text of the two files compared.
- When a filename cannot be used as a UEL, use a generated name instead.
- New options
IgnoreColumnsto ignore a set of rows or columns for a symbol. Rows can be specified as
- The beta version of this tool allows the automatic generation of LaTeX code that documents a given GAMS model.
- The documentation of MPSGE has moved again. It can now be found in the User's Guide.
- New examples
- New functions to retrieve models from the GAMS API Library and the Nonlinear Optimization Applications Library:
- Added support for Python 3.4 (Windows and Linux only). The examples have been changed to be compatible with all supported Python versions.
- This new library by Neculai Andrei has been added to the GAMS system. This is a collection of the models based on the book Nonlinear Optimization Applications Using the GAMS Technology by Neculai Andrei. The library contains a wide spectrum of nonlinear optimization applications expressed in GAMS. The book and library emphasize the local solutions of the large-scale, complex, continuous nonlinear optimization applications, and the abundant examples in GAMS are highlighted by those involving ODEs, PDEs, and optimal control. The collection of these examples will be useful for software developers and testers.
- You can retrieve the individual models through the IDE model library browser or via the command line utility
CSSpecialValues (47): Test handling of Special Values in object oriented C# API.
PSpecialValues (48): Test handling of Special Values in object oriented Python API.
JSpecialValues (49): Test handling of Special Values in object oriented Java API.
CSNUnit (50): Compiles and runs NUnit tests for object oriented C# API.
CSClad (51): Test changing solver options while running using the interrupt method.
PClad (52): Test changing solver options while running using the interrupt method.
JClad (53): Test changing solver options while running using the interrupt method.
invert1 (89): Pass
gams.sysdir%to R script to make linkage between GAMS and R explicit.
gdxmrw_tr3 (105): Canonical form LP created in Matlab and solved via
gdxmrw_tr4 (106): Better example of
gdxmrw_tr5 (107): Better example of
transecs (14): Fix formulation as embedded complementarity system and provide equivalent alternative as single-agent equilibrium system.
farmnbd (100): The Farmer's Problem - Stochastic with NBD.
- In the IDE the GAMS Model Library browser has now a
Liccolumn indicating the license requirement of a model. The letters D and G indicate that the model does not require a license. Models with G can even be solved by a global solver without a license (the demo limit for global solvers is 10 variables and 10 equations). A letter L indicates that a license is required.
tgridmix (391): Fix the logic for sleeping. Only do that if no more jobs to be scheduled or all cores are busy.
asynntrp (585): Make this model work under Unix that have the
call6 (674): Call GAMS in a directory which name contains a
cmexrc01 (675): Trigger unexpected cmexRC error.
rs02 (676): Solving Three-dimensional Noughts and Crosses using Cplex and Gurobi distributed MIP.
single04 (677): Check handling of singleton sets assigned and referenced in a loop.
model2tex1 (678): Test that model2tex produces a tex file.
exmcp6 (679): External Equation - Example MCP 6.
scensol6 (680): Test
idxperm1 (684): Check correct behavior when permuting indices in model generation
idxperm2 (685): Check correct behavior when permuting indices in loop etc
|Solver/Platform availability - 24.5|
Mac OS X
|IBM Power 64bit