Table of Contents
24.8.1 Major release (December 21, 2016)
Acknowledgments
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Etienne AyotteSauvé, Wolfgang Britz, Göran Bylund, Wietse Dol, Gregory Dourbois, Katja Jensen, Josef Kallrath, Toni Lastusilta, Renger van Nieuwkoop, and Tom Rutherford.
Platforms
 On Linux, the minimal required GLIBC version is now 2.7.
 On MacOS X, for some solvers (ANTIGONE, BARON, CPLEX, COINOR, SOPLEX, SCIP) the minimal required Mac OS X version is now 10.10. We will drop support for older Mac OS X versions for the complete GAMS system with the next major release.
 A generic license (with platform code GEN) is now limited to the platforms Windows, Linux, and Mac OS X. If you have a generic license and need a license for one of the other platforms (e.g. AIX), please contact sales or support to receive an additional license file for that platform free of charge.
GAMS System
GAMS
 The statements
Break
andContinue
were added to allow more control over the execution of control structures (loop/while/repeat/for):Break [n];
: Terminate the n inner most control structures (n is optional, if it is omitted, it is set to 1).Continue;
: Jump to the end of the inner most control structure.
 Extend the report summary of the solution report to print the number of variables and equations where the level was projected to one of the bounds (compare model attribute tolProj), if that number is greater than 0.
 The model attribute tolProj to project levels to bounds is no longer ignored when the GAMS Grid Facility (SolveLink = 3 or 4) is used.
 New command line option
fileStem
: Sets the file stem for output files which use the input file name as stem by default, see fileStem for more details.  New option
MCPRHoldfx
(can be set using the option statement, a command line parameter, or model attribute): Prints list of rows that are perpendicular to variables removed due to the holdfixed setting if set to 1.
 New option
AsyncSolLst
(can be set using the option statement, or a command line parameter): If set to 1, GAMS prints a solution listing to the lst file also when an asynchronous solve (see The Grid and MultiThreading Solve Facility) is used.
 The default value is 0.
 New variant for the SolveLink option and model attribute: 7 (compile time constant %
solveLink.Threads Simulate%
)  The problem is passed to the solver in core without use of temporary files, GAMS waits for the solver to come back but uses same submission process as 6 (see Multithreading Submission Testing)  New function numCores (available at both compile and execution time): Returns the number of logical cores in the system.
 Allow macro expansion in the domain list of a symbol declaration.
 New dollar control splitOption that splits a string representing a option/value pair into option name and option value.
 Fixed a problem with the optional
maxWait
parameter of the function readyCollect.  Fixed potential error in file created by dumpOpt, if there were symbols loaded from GDX.
 Fixed an error which could lead to wrong results when assigning to a symbol while the symbol's alias was used on the right hand side of the assignment.
 Fixed an error which could lead to a crash if a phantom set element was used to control an assignment inside a loop.
 Fixed a problem with unscaling solutions for MCP models that resulted in incorrect dual values for scaled MCPs. For an example, compare the new test library model mcp11 when run with 24.8 and with something previous.
Documentation
 The offline documentation now provides search and keyword indexing functionalities in addition to navigating the documentation.
 The Microsoft Compiled HTML help file
gams.chm
is no longer available.  The table of contents for browsing the GAMS model libraries is now available offline in HTML format.
Solvers
BARON
 New libraries 16.12.7.
CPLEX
 New libraries 12.7.0.0.
 Support for the platfrom MS Windows 32 bit, Solaris i86pc, and Solaris SPARC 64bit has been dropped by IBM for Cplex 12.7. The GAMS system for these platforms contains Cplex 12.6.3.
 Cplex 12.7 implements Benders Algorithm. This is available in CplexD only.
 The IIS option triggers now the conflict refiner. The IIS function in Cplex 12.7 has been replaced by the conflict refiner. The IIS option now also works on infeasible models with model status
Infeasible No Solution
as well as on problems with discrete variables.  New parameters
 BendersFeasCutTol: Tolerance for whether a feasibility cut has been violated in Benders decomposition
 BendersOptCutTol: Tolerance for optimality cuts in Benders decomposition
 BendersStrategy: Benders decomposition algorithm as a strategy
 DataCheck: Data consistency checking and modeling assistance
 RLTCuts: Reformulation Linearization Technique (RLT) cuts
 Modified parameters:
 MipStart: A value of 6 accepts the (partical) MipStart without any checks
CONOPT
 This distribution includes the first official release of the CONOPT4 solver. The chapter in the solver manual has an interesting subsection on when you should use CONOPT4 for all existing CONOPT users.
 The current solver alias
CONOPT
still points to the CONOPT3 solver. This might change in the next, or next but one major release. We invite you to share your experience with this new version of CONOPT via support (support@gams.com) with us.
ConvertD
 Write proper scale and prior information for equations and variables with option Jacobian.
DICOPT
 An implementation of a Feasibility Pump primal heuristic (for convex MINLP) has been added to DICOPT. This heuristic can be run before the actual DICOPT algorithm. Outer approximation cuts from the MIP subproblem of the Feasibility Pump are transferred to initialize the MIP outer approximation of the main DICOPT algorithm. Option feaspump can be used to enable the Feasibility Pump and various other options are available to tune the feasibility pump.
 Option convex has been added to indicate the presence of convex MINLP. If this option is set, the defaults for various other options are modified.
GUROBI
 New libraries 7.0.1.
 Explore alternative solutions via the Solution Pool.
 New parameters
 BestObjStop: Objective value to stop optimization
 BestBdStop: Objective bound to stop optimization
 InfProofCuts: Infeasibility proof cut generation
 StrongCGCuts: StrongCG cut generation
 DegenMoves: Degenerate simplex moves
 TuneCriterion: Tuning criterion
 SolNPool: Activate export of alternative solution
 PoolSolutions, PoolSearchMode, and PoolGap to control generation of alternative solutions
 Gurobi 7 supports general constraints. With the help of the dotoption .GenConstrType the user can classify a constraint to be of type
Max
,Min
,Abs
,And
, andOr
.  Gurobi 7 supports indicator constraints.
 Gurobi 7 supports multi objective hierarchical optimization. Details can be found in the GAMS/Gurobi manual, in subsection Multiple Objectives.
JAMS
 New option ZipDebug=xxx.zip to specify that, in the event of abnormal termination or behavior, a zip file of debugging info be created.
 New reformulation options to handle shared or duplicated equations and variables in equilibrium models.
Knitro
 New libraries 10.2.0.
 Significant speed and robustness improvements when using BFGS (hessopt=2) or LBFGS (hessopt=6) Hessian approximations with the default Knitro interiorpoint method.
 General performance improvement on mixedinteger models.
 Minor bug fixes.
 New mixedinteger SQP (MISQP) algorithm for nonlinear mixedinteger models (mip_method=3). This new algorithm is intended for small, potentially nonconvex models with possibly expensive function evaluations. It can be used even when integer variables are not relaxable (i.e. functions can only be evaluated with integer variables at integer points) by setting mip_relaxable=0, and can be used with parallel multistart.
 New option mip_nodealg to control algorithm used at B&B nodes: overrides the generic algorithm option.
 The Knitro Tuner is now available from the GAMS/Knitro link.
Lindo/LindoGlobal
 New libraries 10.0.131.
 LP Solver Improvements:
 With new enhancements made to the simplex solvers, the average performance on large instances has increased by 35% for the primal simplex and by 20% for the dual simplex compared to the previous version.
 MIP Solver Improvements:
 New heuristic algorithms help to find significantly better solutions for many models with knapsack constraints and block structures.
 New MIP preprocessing level devoted to tightening variable bounds for some nonlinear models.
 Stochastic Solver Improvements:
 Improved cut management for Nested Benders Decomposition Method leading to speed improvements over 60% for large linear multistage SP instances.
 Better handling of multistage SP models which do not have fullrecourse.
 Global Solver Improvements:
 Incorporates bound tightening process to the linearization procedure and improve solvability of linearized model.
 LP Solver Improvements:
LocalSolver
 New libraries 6.5 (20160729).
 For nearlinear (discrete or continuous) problems, new moves have been introduced based on linear programming and mixedinteger linear programming techniques. These moves allow to intensify the search on nearlinear models by exploring optimally larger neighborhoods.
 Added possibility for Hierarchical Optimization of Multiple Objective Functions.
 Removed option
origlog
. GAMS/LocalSolver will now always print the original LocalSolver log.  Fixed level values of aggregated variables in solution.
Mosek
 New libraries 8.0.0.48 (Mosek release notes)
 Presolve performance has been improved.
 The eliminator in the presolve has been reimplemented, is usually faster, and requires much less memory.
 Presolve has been improved on conic quadratic problems.
 The numerical stability of conic optimizer has been improved significantly, particularly for semidefinite optimization problems.
 The scaling routine for the conic optimizer is more aggressive.
 Quadratic and quadratically constrained problems are now internally converted to conic form and are solved using the conic optimizer. Nevertheless full primal and dual information to the original problems is available.
 A dualizer for conic quadratic problems is now available. By default it dualize the problems before optimizing if deemed worthwhile. The dualization is transparent to the user and can be turned off.
 The conic optimizer linear algebra is now parallelized using Cilk Plus and scales better when the number of threads is increased for large problems. Moreover, for smallish problems using too many threads does not hurt performance.
 The computational efficiency graph partitioning based ordering method in the interiorpoint optimizer has been improved.
 It is now possible to force the interiorpoint optimizer to run in the calling thread.
 Only one mixed integer optimizer is available now, which corresponds to the mixed integer conic optimizer that was introduced with version 7.
 The primal network simplex optimizer has been removed. It is suggested to use the dual simplex optimizer instead.
 The primaldual simplex optimizer has been removed. It is suggested to use the dual simplex optimizer instead.
 The concurrent optimizer has been removed. It is suggested to use the interiorpoint optimizer instead.
 The following GAMS/Mosek options have been removed:
 MSK_IPAR_ANA_SOL_BASIS
 MSK_IPAR_ANA_SOL_PRINT_VIOLATED
 MSK_IPAR_CONCURRENT_NUM_OPTIMIZERS
 MSK_IPAR_CONCURRENT_PRIORITY_DUAL_SIMPLEX
 MSK_IPAR_CONCURRENT_PRIORITY_FREE_SIMPLEX
 MSK_IPAR_CONCURRENT_PRIORITY_INTPNT
 MSK_IPAR_CONCURRENT_PRIORITY_PRIMAL_SIMPLEX
 MSK_DPAR_FEASREPAIR_TOL
 MSK_IPAR_FEASREPAIR_OPTIMIZE
 MSK_IPAR_INTPNT_FACTOR_DEBUG_LVL
 MSK_IPAR_INTPNT_FACTOR_METHOD
 MSK_IPAR_LOG_CONCURRENT
 MSK_IPAR_LOG_NONCONVEX
 MSK_IPAR_LOG_PARAM
 MSK_IPAR_LOG_SENSITIVITY
 MSK_IPAR_LOG_SENSITIVITY_OPT
 MSK_IPAR_MAX_NUM_WARNINGS
 MSK_IPAR_MIO_CONT_SOL
 MSK_IPAR_MIO_CUT_CG
 MSK_IPAR_MIO_CUT_LEVEL_ROOT
 MSK_IPAR_MIO_CUT_LEVEL_TREE
 MSK_IPAR_MIO_FEASPUMP_LEVEL
 MSK_DPAR_MIO_HEURISTIC_TIME
 MSK_IPAR_MIO_HOTSTART
 MSK_IPAR_MIO_KEEP_BASIS
 MSK_IPAR_MIO_LOCAL_BRANCH_NUMBER
 MSK_DPAR_MIO_MAX_TIME_APRX_OPT
 MSK_IPAR_MIO_PRESOLVE_AGGREGATE
 MSK_IPAR_MIO_PRESOLVE_PROBING
 MSK_IPAR_MIO_PRESOLVE_USE
 MSK_DPAR_MIO_REL_ADD_CUT_LIMITED
 MSK_IPAR_MIO_STRONG_BRANCH
 MSK_DPAR_MIO_TOL_MAX_CUT_FRAC_RHS
 MSK_DPAR_MIO_TOL_MIN_CUT_FRAC_RHS
 MSK_DPAR_MIO_TOL_REL_RELAX_INT
 MSK_DPAR_MIO_TOL_X
 MSK_IPAR_MIO_USE_MULTITHREADED_OPTIMIZER
 MSK_IPAR_NONCONVEX_MAX_ITERATIONS
 MSK_DPAR_NONCONVEX_TOL_FEAS
 MSK_DPAR_NONCONVEX_TOL_OPT
 MSK_IPAR_PRESOLVE_ELIM_FILL (use MSK_IPAR_PRESOLVE_ELIMINATOR_MAX_FILL instead)
 MSK_IPAR_PRESOLVE_ELIMINATOR_USE
 MSK_IPAR_PRIMAL_REPAIR_OPTIMIZER
 MSK_IPAR_QO_SEPARABLE_REFORMULATION
 MSK_IPAR_WARNING_LEVEL
 MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_CONIC_ITEMS (use MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS instead)
 MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_NL_ITEMS (use MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS instead)
 MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_PSD_ITEMS (use MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS instead)
 The following GAMS/Mosek options have been added:
 MSK_DPAR_DATA_SYM_MAT_TOL: Absolute zero tolerance for elements in in symmetric matrices.
 MSK_DPAR_DATA_SYM_MAT_TOL_HUGE: An element in a symmetric matrix which is larger than this value in absolute size causes an error.
 MSK_DPAR_DATA_SYM_MAT_TOL_LARGE: An element in a symmetric matrix which is larger than this value in absolute size causes a warning message to be printed.
 MSK_DPAR_INTPNT_QO_TOL_DFEAS: Dual feasibility tolerance used when the interiorpoint optimizer is applied to a quadratic optimization problem.
 MSK_DPAR_INTPNT_QO_TOL_INFEAS: Controls when the conic interiorpoint optimizer declares the model primal or dual infeasible.
 MSK_DPAR_INTPNT_QO_TOL_MU_RED: Relative complementarity gap feasibility tolerance used when interiorpoint optimizer is applied to a quadratic optimization problem.
 MSK_DPAR_INTPNT_QO_TOL_NEAR_REL: Termination tolerance multiplier that is used if no accurate solution can be found.
 MSK_DPAR_INTPNT_QO_TOL_PFEAS: Primal feasibility tolerance used when the interiorpoint optimizer is applied to a quadratic optimization problem.
 MSK_DPAR_INTPNT_QO_TOL_REL_GAP: Relative gap termination tolerance used when the interiorpoint optimizer is applied to a quadratic optimization problem.
 MSK_IPAR_INTPNT_MULTI_THREAD: Controls whether the interiorpoint optimizers can employ multiple threads if available.
 MSK_IPAR_MIO_CUT_CLIQUE: Controls whether clique cuts should be generated.
 MSK_IPAR_MIO_CUT_GMI: Controls whether GMI cuts should be generated.
 MSK_IPAR_MIO_CUT_IMPLIED_BOUND: Controls whether implied bound cuts should be generated.
 MSK_IPAR_MIO_CUT_KNAPSACK_COVER: Controls whether knapsack cover cuts should be generated.
 MSK_IPAR_MIO_CUT_SELECTION_LEVEL: Controls how aggressively generated cuts are selected to be included in the relaxation.
 MSK_IPAR_MIO_PERSPECTIVE_REFORMULATE: Enables or disables perspective reformulation in presolve.
 MSK_IPAR_MIO_ROOT_REPEAT_PRESOLVE_LEVEL: Controls whether presolve can be repeated at root node.
 MSK_IPAR_MIO_VB_DETECTION_LEVEL: Controls how much effort is put into detecting variable bounds.
 MSK_IPAR_OPF_WRITE_HEADER: Write a text header with date and MOSEK version in an OPF file.
 MSK_IPAR_OPF_WRITE_HINTS: Write a hint subsection with problem dimensions in the beginning of an OPF file.
 MSK_IPAR_OPF_WRITE_PROBLEM: Write objective, constraints, bounds etc.
 MSK_IPAR_OPF_WRITE_SOL_BAS: Whether to include basic solution in OPF files.
 MSK_IPAR_OPF_WRITE_SOL_ITG: Whether to include integer solution in OPF files.
 MSK_IPAR_OPF_WRITE_SOL_ITR: Whether to include interior solution in OPF files.
 MSK_IPAR_OPF_WRITE_SOLUTIONS: Enable inclusion of solutions in the OPF files.
 MSK_IPAR_PRESOLVE_ELIMINATOR_MAX_FILL: Controls the maximum amount of fillin that can be created by one pivot in the elimination phase of presolve.
 MSK_DPAR_SEMIDEFINITE_TOL_APPROX: Tolerance to define a matrix to be positive semidefinite.
 MSK_IPAR_WRITE_DATA_PARAM: If this option is turned on the parameter settings are written to the data file as parameters.
 MSK_IPAR_WRITE_LP_FULL_OBJ: Write all variables, including the ones with 0coefficients, in the objective.
 MSK_IPAR_WRITE_MPS_FORMAT: Controls in which format the MPS is written.
 MSK_IPAR_WRITE_TASK_INC_SOL: Controls whether the solutions are stored in the task file too.
 MSK_SPAR_WRITE_LP_GEN_VAR_NAME: Sometimes when an LP file is written additional variables must be inserted.
 For the following options, the default value has changed:
 MSK_DPAR_MIO_TOL_FEAS from 1e7 to 1e6
 MSK_IPAR_LOG_MIO_FREQ from 1000 to 10
 MSK_IPAR_WRITE_PRECISION from 8 to 15
 Fixed selection of optimizer for "fixed solve" of a mixedinteger conic problem.
Pyomo
 Fixed compatibility issues with different versions of Pyomo.
SCIP
 New libraries 3.2 (#0d4fc08).
 Changed the default LP solver to SoPlex also for the case where a CPLEX license is available, due to problems when using CPLEX 12.7.0.0 as LP solver in SCIP.
SoPlex
 The GAMS/SoPlex interface has been rewritten and does not use the OsiSpx layer anymore. The solver OSISOPLEX is now an alias for the solver SoPlex.
 SoPlex parameter files can now be used.
 SoPlex can now be warmstarted when only the model instance data changes (e.g., via GUSS).
 New libraries 2.2 (df190de).
Tools
CSV2GDX
 Improved error reporting.
GDXDUMP
 New command line option
CSVAllFields
to get all fields (level, marginal, lower, upper, and scale) when writing a variable or equation symbol in CSV format.
MODEL2TEX
 Increased the page width of the txt file generated by the GAMS command line option
docfile
to 32767 (max. value).  Changed the default encoding to
latin
and added a new command line parameter that allows to change the encoding (e=ENCODING
)  Changed the default format of the symbol tables.
 The JSON style file contains a new property called
columnSetting
that allows to adjust the columns.  Avoid some unnecessary parentheses in sum and product operators.
 Minor change in the equations subsection that removes several warnings.
 Several minor bug fixes.
GDXXRW
 Fixed a problem when writing a symbol with option merge or clear to a range with
CDim=0
orRDim=0
.
GMSZIP/GMSUNZIP
 New versions of InfoZIP's tools zip (version 3.1c02) and unzip (version 6.00). The executable names have been prefixed with "gms" for clear identification.
Object Oriented APIs
 New option GAMSOptions.ErrorLog: Maximal number of error message lines written to the log for each error.
.NET
 New examples that demonstrate the use of the API in a graphical environment: TransportGUI, CutstockGUI, FarmGUI.
 Distribute compiled GUI examples in directory
<GAMSDir>\apifiles\GUIexamples
on Windows. GAMSWorkspace.AddJobFromFile
: Throw an exception if a given file does not exist.
Python
 The option
GamsOptions._errorlog
has been renamed toGamsOptions.errorlog
in order to indicate it as public.
Model Libraries
GAMS API Library
 PInterrupt.gms : Test GamsJob interrupt mechanism in object oriented Python API (54)
 CSInterrupt.gms : Test GamsJob interrupt mechanism in object oriented .Net API (55)
GAMS Model Library
 asyncloop.gms : Transportation Problem with async loop body execution (411)
 trnsindic.gms : Fixed Charge Transportation Problem with Indicator Constraints (412)
 timesteps.gms : Accessing previous (or next) time steps in an equation fast (413)
 Modified models:
 Make use of the new
break
statement to formulate the following models a little nicer: tsp1, tsp4, cutstock, awktsp, sddp, sipres, allbases, qfilter  tgridmix: The of logic of submission and collection has been reworked so that the scenario sets do not have to be one dimensional and ordered (contributed by Tom Rutherford).
 asyncjobs: The logic for putting out the log line in time intervals was flawed and has been corrected.
 Make use of the new
GAMS Test Library
 emp17.gms : Simple test of one optimizing agent (693)
 breakcont1.gms : Test break and continue statements (694)
 lindgl04.gms : Test nonconvex quadartic program with Lindo(Global) (695)
 mcp11.gms : Test marginals for a scaled MCP problem (696)
 csv2gdx1.gms : Test marginals for a scaled MCP problem (697)
 gdxxrw7.gms : Test merge and clear option for special data layout (698)
 scale02.gms : Test that an MCP with scales is rejected when appropriate (699)
 emp18.gms : Test JAMS/EMP on implicit variable handling (700)
 emp19.gms : Test JAMS/EMP on implicit variable handling (701)
 emp20.gms : Test JAMS/EMP on implicit variable handling (702)
 emp21.gms : Test JAMS/EMP on implicit variable handling (703)
 emp22.gms : Test JAMS/EMP on implicit variable handling (704)
 emp23.gms : Test JAMS/EMP on implicit variable handling (705)
 emp24.gms : Test JAMS/EMP on implicit variable handling (706)
 emp25.gms : Test JAMS/EMP on implicit variable handling (707)
 emp26.gms : Test JAMS/EMP on implicit variable handling (708)
 gurobi02.gms : GUROBI test suite  general constraints max,min,abs (709)
 gurobi03.gms : GUROBI test suite  general constraints and,or (710)
 slx01.gms : run tests for different solvelink values (711)
 gurobi04.gms : GUROBI test suite  multi objective (712)
Solver/Platform availability  24.8  

x86 32bit MS Windows 
x86 64bit MS Windows 
x86 64bit Linux 
x86 64bit Mac OS X 
x86 64bit SOLARIS 
Sparc 64bit SOLARIS 
IBM Power 64bit AIX 

ALPHAECP  
ANTIGONE 1.1  
BARON  
BDMLP  
BONMIN 1.8  
CBC 2.9  
CONOPT 3  
CONOPT 4  
COUENNE 0.5  
CPLEX 12.7  12.6  12.6  12.6  
LINDO 10.0  
DECIS  
DICOPT  
GLOMIQO 2.3  
GUROBI 7.0  
GUSS  
IPOPT 3.12  
KESTREL  
KNITRO 10.0  
LGO  
SBB  
LINDOGLOBAL 10.0  
LOCALSOLVER 6.0  
MILES  
MINOS  
MOSEK 8  
MSNLP  
NLPEC  
OQNLP  32bit  
PATH  
SCIP 3.2  
SNOPT  
SOPLEX 2.2  
XA  
XPRESS 28.01 
24.8.2 Maintenance release (January 03, 2017)
Acknowledgments
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Evangelos Panos.
GAMS System
GAMS
 Change for command line parameter MultiPass: If it is set to
2
, als errors from$gdxIn
are ignored now  Fixed a bug which caused wrong results in some assignments which use symbols that were used outoforder in previous assignments.
Solvers
SCIP
 Added a workaround that allows for using CPLEX 12.7.0.0 as LP solver in SCIP again. For the moment, the default is still to use SoPlex.
24.8.3 Minor release (January 28, 2017)
Acknowledgments
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, Mohammad R. Hesamzadeh, and Katja Jensen.
GAMS System
GAMS
 Fixed potentially wrong values for model attribute
etSolver
for cases where the command line optionsolveLink
was set to 1, 2 or 5.
Solvers
BARON
 New libraries 17.1.2.
 More robust links with COINOR solvers and a better link with FICO Xpress.
 Some new RLT cuts are included in relaxations.
DE
 Create a capability error if DE is called to solve a model of type EMP without stochastic information.
DECIS
 Create a capability error if DECIS is called to solve a model of type EMP without stochastic information.
Examiner2
 Fix behavior when the subsolver returns a model status like
19 Infeasible  No Solution
. The model status can be passed unchanged back to GAMS in such a case.
Kestrel
 Adjusted the default URL to https using port 3333.
 Fixed a bug that prevented to specify the protocol in the
neos_server
parameter in an option file. The complete format of the parameter is nowprotocol://host:port
.
LINDO
 Create a capability error if LINDO is called to solve a model of type EMP without stochastic information.
MOSEK
 New libraries 8.0.0.53.
SCIP
 Changed the default LP solver back to CPLEX, if available (see also 24.8.1 and 24.8.2 release notes).
Tools
GDXDUMP
 Fixed wrong output in case of nested quotes in symbol text.
Model Libraries
GAMS Model Library
 linearne: Minor fix to model formulation (contributed by Mohammad R. Hesamzadeh).
24.8.4 Minor release (April 10, 2017)
Acknowledgments
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, Ivan Leung, Tara Rengarajan, and Sajjad Shafiei.
GAMS System
GAMS
 Fixed an issue which caused unnecessary memory consumption if many indexed symbols with explicit labels were used.
Solvers
BARON
 New libraries 17.4.1.
 Bug fixes and an enhanced convexity detector.
CPLEX
 New libraries 12.7.1.0.
 Note that with this update the log generated by Cplex changed in a way that the Cplex options set (either by the user or by GAMS defaults) are displayed. This is intentional and no sign of a problem. So one could see something like this in the log when running GAMS/Cplex:
CPXPARAM_Simplex_Limits_Iterations 2000000000 CPXPARAM_TimeLimit 1000 CPXPARAM_Threads 1
 Note that with this update the log generated by Cplex changed in a way that the Cplex options set (either by the user or by GAMS defaults) are displayed. This is intentional and no sign of a problem. So one could see something like this in the log when running GAMS/Cplex:
DICOPT
 Fixed serious bug in feasibility pump implementation.
Examiner, Examiner2
 The list of checks to perform for solved models was set incorrectly when the trace option was used.
GUROBI
 New libraries Gurobi 7.0.2.
 Added options MultiObjMethod and MultiObjPre.
 Fixed a problem that lead to wrong error messages when setting the ObjNAbsTol and ObjNRelTol parameters.
 Fixed a problem that reported back the wrong alternative solution.
JAMS
 Fix problem with bilevel models having variables owned by the leader but not appearing in the leader objective or constraints.
Lindo/LindoGlobal
 New libraries 10.0.179.
MOSEK
 New libraries 8.0.0.60.
NLPEC
 Fix problem handling empty constraints (e.g.
f.. eps*x =G= 0
) that appear in MPEC models. Note that such models can easily be produced by JAMS/EMP.
Object Oriented APIs
Python
 Added support for Python 3.6.
 Fixed a bug in
GamsJob.run()
that prevented the underlying GAMS model from terminating, if executables spawned by GAMS generate log output that is not captured.
24.8.5 Maintenance release (May 10, 2017)
Acknowledgments
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Ana Carolina, Gary Goldstein, Erwin Kalvelagen, Amit Kanudia, Toni Lastusilta, Antti Lehtila, Bruce McCarl, and Hans Kristian Ringkjob.
Platforms
 The AIX system is now build on AIX 7.1.
GAMS System
GAMS
 Fixed a bug which could cause a crash in particular assignments involving singleton sets or explicit labels. This was introduced with GAMS 24.8.4.
 Fixed problems with the
break
statement: There was a potential crash if break was used in a "sparse loop", e.g.,
loop(j$x(j), ...)
.  If break was used in a loop with more than one index, e.g.,
loop((i,j), ...)
, that loop was treated as multiple loops for thebreak
statement, one for each index. Now it is treated as just one loop as intended.  Fixed a problem where a loop was not correctly recognized as a loop if it runs over just one fixed element, e.g.,
loop(i('i2'), ...)
.
 There was a potential crash if break was used in a "sparse loop", e.g.,
Solvers
BARON
CBC
 New libraries.
 Fixed a bug in presolve that caused problems with fixed discrete variables.
GUROBI
 Suboptimal solutions were not reported back to GAMS. This has been fixed.
Lindo/LindoGlobal
 New libraries 10.0.182.
MOSEK
 New libraries 8.0.0.69.