Table of Contents
- 42.1.0 Major release (February 01, 2023)
- 42.2.0 Minor release (February 16, 2023)
- 42.3.0 Minor release (March 02, 2023)
- 42.4.0 Minor release (March 16, 2023)
- 42.5.0 Minor release (March 30, 2023)
42.1.0 Major release (February 01, 2023)
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 and Brian Sergi.
Platforms
- As announced, dropped support for macOS 10.15 (Catalina).
- As announced, dropped support for Windows 8.
- Added support for macOS 13 (Ventura).
GAMS System
- The End User License Agreement (
eula.pdf
in the GAMS system directory) has been updated to version 01/2023.
GAMS
- Change for the profile option: Entry
Solve Alg
was renamed toSolver
. The value reported with it matches now the value from model attribute etSolver. In previous versions,Solve Alg
was reported to be zero when running with solveLink=0. This has been fixed. - Improved speed in GAMS and GDX for models with many labels.
- In case the overall GAMS program uses some extrinsic functions but the particular model instance does not, then the extrinsic functions are not loaded any longer into the solver link.
- Added dollar control option $save[.keepCode] to create a work file during compilation.
Connect
- Added new Filter agent to reduce symbol data by applying filters on labels and numerical values.
- The PandasExcelReader now enforces sufficient ranges. A range must cover the complete dimension of a symbol including its value (parameter) or text (set). Reading set element text is mandatory and can no longer be skipped. Dropping unwanted text can be achieved using the Projection agent.
- The PandasExcelWriter supports
.xlsx
and.xlsm
files..xls
files are not supported. For other file formats, such as.ods
files, it might be required to install additional Python packages. - The PandasExcelReader supports
.xlsx
and.xlsm
files. For other file formats, such as.xls
or.ods
files, it might be required to install additional Python packages. - Improved exception messages for various Connect agents.
- Fixed bug where writer agents would fail if a symbol was read empty by one of the reader agents.
- Fixed a bug in the PythonCode agent that prevented local variables to be accessible in a subsequent enclosing namespace.
Embedded GAMS Code Facility
- Added GAMS to the family of supported embedded code languages.
Embedded Python Code Facility
- Fixed a crash when using
gams.printLog()
with LogOption being set to0
(no log output).
GMSPython
- The Python version of GMSPython has been updated to
3.8.16
.
Solvers
BARON
- New libraries 23.1.5.
- Significant improvements for quadratic programs, tree management strategies, and integer presolve.
CBC
- The time reported back to GAMS (e.g., resUsd attribute) is now measured by the clock that is specified by the clocktype option.
- We plan to drop the CBC alias
COINCBC
with the next major release.
CONOPT
- We plan to drop the CONOPT3 alias
CONOPTD
with the next major release.
CONVERT
- Added concurrent mode (value 3) to option qextractalg.
- We plan to drop the CONVERT alias
CONVERTD
with the next major release.
COPT
- New libraries 6.0.4.
- COPT can now solve convex MIQCPs and MISOCPs. Enabled GAMS model type MIQCP for COPT.
- A parameter tuning tool has been added. New options Tuning, TuneParams, TuneMethod, TuneMode, TuneMeasure, TunePermutes, TuneOutputLevel, TuneTargetRelGap, TuneTargetTime, TuneTimeLimit.
- Option Crossover is now an integer option with possible values -1, 0, and 1.
- Added possible value 5 for option LpMethod: automatic choice of LP method
- Changed type of option iis from boolean to integer. Added value 2 to request an IIS computation without a previous solve.
CPLEX
- New libraries 22.1.1.0.
- Added option cardls: decides how often to apply the cardinality local search heuristic (CLSH).
- Added concurrent mode (value 3) to option qextractalg.
- Changed default of rerun to
nono
. With this change the solver may not be able to distinguish between unbounded and infeasible models anymore and may just report the model to be infeasible. In order to check for unbounded models, set rerun toyes
to rerun the optimization with presolve turned off. - We plan to drop the CPLEX alias
CPLEXD
with the next major release.
DE
- Added option empInfoFile to DE.
DECIS
- We plan to drop the EMP-SP solver DECIS with the next major release. This does not effect the stochastic LP solvers DECISC and DECISM. They will remain in the system.
GUROBI
- New libraries 10.0.0.
- Added option softmemlimit: Soft memory limit.
- Added option obbt: Controls aggressiveness of optimality-based bound tightening.
- Added option networkalg: Network simplex algorithm.
- Added support of nonlinear constraint
r =e= sigmoid(x)
(orr =e= 1 / (1 + exp(-x))
), see Gurobi: Nonlinear Programming.
- Added concurrent mode (value 3) to option qextractalg.
- Changed default of rerun to -1 (no). With this change the solver may not be able to distinguish between unbounded and infeasible models anymore and may just report the model to be infeasible. In order to check for unbounded models, set rerun to 1 to rerun the optimization with presolve turned off.
- Fixed multimipstart: Initial guess could have been sent to Gurobi in a wrong order and thus be rejected by Gurobi, e.g., as infeasible.
- Removed requirement of being a MIP to use mipstart, multimipstart, or varhint because Gurobi may switch to "MIP mode" (branch-and-bound) during solve (e.g. for nonconvex QCPs).
HiGHS
- New libraries 1.4.1.
- Added option mipstart: Initial level values can be passed as starting point to a MIP (if no semicontinuous or semiinteger variables are present). If infeasible, then HiGHS attempts to find a feasible assignment of the continuous variables by solving an LP.
- Improved reliability of interior-point solver if cross-over is not always run.
- Option run_crossover changed from boolean to string. New possible value "choose", to run crossover only if the result without crossover is imprecise.
- Added options to enable and adjust "iCrash": icrash, icrash_approx_iter, icrash_breakpoints, icrash_dualize, icrash_exact, icrash_iterations, icrash_starting_weight, icrash_strategy.
- Option write_solution_style: New value -1 now specifies "oldraw" format (was value 2 before); value 2 and new value 3 now allow to print solution in GMPL format.
- New options presolve_rule_logging and presolve_rule_off.
IPOPT
- We plan to drop the IPOPT alias
COINIPOPT
with the next major release.
KNITRO
- New libraries 13.2.0.
- New option presolveop_redundant: Determine whether or not to enable the Knitro presolve operation to detect and remove redundant constraints.
- New option mip_gomory: Specifies rules for adding Gomory mixed-integer cuts.
- New value for option presolveop_tighten: 2 and 3.
- New value for option mip_clique: -1 (new default). Removed value 3.
- New value for option mip_knapsack: -1 (new default). Removed value 3.
- New value for option mip_zerohalf: -1 (new default). Removed value 3.
- New value for option mip_liftproject: -1 (new default). Changed option type to integer.
- Changed default value of option mip_cutting_plane: 1.
- Added concurrent mode (value 3) to option qextractalg.
LINDO/LINDOGLOBAL
- New libraries 14.0.204.
- Added option empInfoFile to LINDO.
MILES
- We plan to drop the MILES alias
MILESE
with the next major release.
MINOS
- We plan to drop the MINOS aliases
MINOS5
andMINOS55
with the next major release.
MOSEK
- Made parameters MSK_IPAR_PTF_WRITE_PARAMETERS and MSK_IPAR_PTF_WRITE_SOLUTIONS available.
- Added concurrent mode (value 3) to option QEXTRACTALG.
OCTERACT
- New libraries 4.6.0.
- Removed the possibility to use Gurobi or Xpress as MIP solver. Removed GUROBI and XPRESS from possible values for options
MILP_SOLVER
andMIP_SOLVER
.
- Removed the possibility to use Gurobi or Xpress as MIP solver. Removed GUROBI and XPRESS from possible values for options
ODHCPLEX
- Added concurrent mode (value 3) to option qextractalg.
- Changed default of rerun to
nono
. With this change the solver may not be able to distinguish between unbounded and infeasible models anymore and may just report the model to be infeasible. In order to check for unbounded models, set rerun toyes
to rerun the optimization with presolve turned off.
SCIP
- We plan to drop the SCIP alias
COINSCIP
with the next major release.
SELKIE
- We plan to drop the research solver
SELKIE
with the next major release.
SHOT
- Added concurrent mode (value 3) to option ModelingSystem.GAMS.QExtractAlg.
SOPLEX
- We plan to drop the SOPLEX alias
OSISOPLEX
with the next major release.
XPRESS
- New libraries 41.01.01.
- Dynamic adjustment of the reliability threshold for pseudo cost updates.
- Improved branching strategies on MIP models with highly degenerate objective function.
- Extended the effect of numericalEmphasis to some bound tightening reductions. This can help to avoid wrong answers in case of numerically challenging problems.
- New option globalBoundingBox: If a nonlinear problem cannot be solved due to appearing unbounded, it can automatically be regularized by the application of a bounding box on the variables.
- New option timeLimit: Maximum time in seconds that the Optimizer will run before it terminates, including the problem setup time and solution time.
- New option solTimeLimit: Maximum time in seconds that the Optimizer will run a MIP solve before it terminates, given that a solution has been found.
- New option preConfiguration: Determines whether binary rows with only few repeating coefficients should be reformulated.
- New option primalOps: Allows fine tuning the variable selection in the primal simplex solver.
- New options cutSelect_gomory and treeCutSelect_gomory: Strong Chvatal-Gomory cuts.
- New options cutSelect_farkas and treeCutSelect_farkas: Farkas cuts.
- New option feasibilityJump: Decides if the Feasibility Jump heuristic should be run.
- New bits in cutSelect, treeCutSelect and barRegularize.
- New option value (2) for xslp_solver: Use Xpress-Optimizer if possible (convex quadratic problems only).
- New default for option xslp_iterLimit: 1000.
- New default for option xslp_mipDefaultAlgorithm: 3.
- Option xslp_postsolve has been changed from boolean to integer with new default -1: Postsolve if the problem could be solved to optimality/infeasibility.
- Options maxStallTime and maxCutTime have been changed from integer to double options.
- Deprecated options
maxTime
(use timeLimit or solTimeLimit instead),cacheSize
,l1Cache
andsleepOnThreadWait
. - Removed options
extraPresolve
andlpThreads
.
- Added concurrent mode (value 3) to option qextractalg.
- New bit options barPresolveOps_standard, barPresolveOps_extra, barPresolveOps_full.
Tools
$LibInclude gdxservice
- Added tool GDXEncoding to convert labels in a GDX file from one encoding to another one.
CHK4UPD
- We plan to drop the command line tool
CHK4UPD
with the next major release. The functionality of that tool will still be available through GAMS Studio.
CSDP
- We will remove the tool/solver
csdp
in a future GAMS release. GAMS/MOSEK should be used instead.
GAMS Studio
- New version 1.13.1.
- New feature: GAMS Connect editor.
- Project handling / Project Explorer improvements:
- Projects get now saved to separate files automatically (
GSP
- GAMS Studio Project).- Each project is stored in a separate file, the
Project Settings
show a representation of that. - File menu and context menu now provide
Open Project
,New project
,Move Project File
, andCopy Project
. Import project
andExport project
have been removed.- A project name is tied to the name of the project file.
- Projects in different paths with the same name get a number added. This number is assigned in the "name and path" order, so changing the path of a project may change the assigned number.
- Each project is stored in a separate file, the
- Fixed that projects were not always saved properly.
- Projects get now saved to separate files automatically (
- GDX Viewer improvements:
- Improved numerical formatting of the GDX Viewer when using
g-format
withFull
precision. - State of GDX files is now persistent even after restarting Studio.
- Added symbol filter to GDX state and persist it.
- Added support for label and value filters in GDX Viewer export functionality.
- Improved numerical formatting of the GDX Viewer when using
- Improved Check for Update dialog, including HTML output and text updates.
- Studio checks now online for a new available GAMS version when started (can be changed in the settings).
- Stability improvements, bug fixes, and minor enhancements, e.g.:
- Improved request behavior of GAMS Engine server communication.
- Adjusted
Replace All
to show search term in clear text instead of internal representation.
GDXCOPY
- Fixed a problem with missing relaxed domain information in the copied GDX file.
GDXTROLL
- We will remove the tool
gdxtroll
in a future GAMS release.
GDX2XLS
- We will remove the tool gdx2xls in a future GAMS release. GAMS Connect agent PandasExcelWriter should be used instead.
MPS2GMS
- New libraries HiGHS 1.4.1 for LP/MPS reading.
XLS2GMS
- We will remove the tool xls2gms in a future GAMS release. GAMS Connect agent PandasExcelReader should be used instead.
XLSDUMP
- We will remove the tool xlsdump in a future GAMS release. GAMS Connect agent RawExcelReader should be used instead.
APIs
.Net
- Changed the
TargetFramework
of the GAMS .Net API from 4.0 to 4.5. - Added method
RunEngine
toGAMSJob
class to run jobs on GAMS Engine, rather than locally.
Matlab
- Added option SuffixAlgebraVars.
- Added option values RoundedFloatingDec (3) and ForEFloatingDec (4) to option PutNR.
GAMS Transfer Matlab
- Improved performance of
Container.hasSymbols
. Among others, this has a significant effect when adding many symbols. - Added support of partial write.
- Added parameter
symbols
toContainer.write
,Container.getDomainViolations
,Container.resolveDomainViolations
andContainer.isValid
. - Added parameter
allow_merge
toContainer.renameUELs
andSymbol.renameUELs
in order support merging UELs while renaming (renaming a UEL to an already existing UEL).
GAMS Transfer Python
- New
generateRecords
method to automatically generate records from domain information. - New
pivot
convenience method to pivot symbol records into various shapes. - Removed possible
dict
type forrtol
andatol
inequals
method.
GAMS Transfer R
removeSymbols
removes symbol links in other symbols.- Added
symbols
argument to Container methodsrenameUELs
andremoveUELs
. findDuplicateRecords
now returns a data frame instead of row indices.- Breaking:
Container
data
field is now an ordered dictionary fromcollections
package instead of named list. Instead ofm$data$<symbolname>
, usem[<symbolname>]
. - Performance improvement to
Container
methodhasSymbols
. This results in significant speed-ups when adding multiple symbols to the container. - Added
symbols
argument toContainer
methodsgetDomainViolations
,hasDomainViolations
,countDomainViolations
,dropDomainViolations
,hasDuplicateRecords
,countDuplicateRecords
,dropDuplicateRecords
,isValid
, andwrite
for partial operation. Container
methodgetSymbols
now always returns a list.- Added
equals
method toSymbols
to check if symbols are equal. - Bugfix in
SpecialValues$isNA
. - Bugfix in
getUELs
for scalar symbols. - Bugfix in
Symbol
methodisValid
for symbols containing onlyNA
. - Bugfix in
Variable
andEquation
set records for numeric inputs. - Added
equals
method forContainer
andConstContainer
.
Jupyter Notebooks
- Removed methods
gams.pivot
andgams.pivot2d
. This functionality is now available from GAMS Transfer Python via the pivot method. - As announced, the package
gams_magic_legacy
has been removed, usegams.magic
instead.
Python
- The GAMS Python API structure has been revised. Detailed information about the new structure can be found in the Python API documentation:
- Attention
- Due to the changed structure of the API,
import
statements in existing code might not work anymore - please refer to Migrate import statements for details on how to migrate.
- Replaced the use of
distutils
bysetuptools
. Installation/uninstallation of the Python API is now done usingpip
. - All examples have been moved to
<sysdir>/api/python/examples
and are organized by sub packages. - Documentation has been restructured and contains information on the
GAMS numpy API
(previouslygams2numpy
) now.
Model Libraries
GAMS Model Library
- Added binpacking.gms : Bin packing problem with different ways to estimate number of bins.
- maxcut.gms : Goemans/Williamson Randomized Approximation Algorithm for MaxCut : SDP is now solved with Mosek if called with
--SDPSOLVER=MOSEK
. - tablelayout.gms : Configuring text layout in table cells to minimize table height : Uses now embedded code GAMS.
GAMS Test Library
- Added scensol10.gms : MCP GUSS Test.
- Added cafilter.gms : Test Connect agent Filter.
- Added gdxencoding1.gms : Simple gdxencoding test.
- Added save3.gms : Test DCO save.
- Added embgms01.gms : Test for embedded code facility.
- Added embgms02.gms : Test for embedded code facility.
- Added embgms03.gms : Test projection operator when loading data from embedded code.
- Added embgms04.gms : Test continuation of embedded code blocks.
- Added embgms05.gms : Test merge/replace when loading data from embedded code.
- Added embgms06.gms : Test domain check/filtered when loading data from embedded code.
- Added embgms08.gms : Test filtered load from Embedded Code.
- Added embgms09.gms : Test Embedded Code after restart.
- Added gdxcopy6.gms : Test gdxcopy with relaxed domain information.
API Library
- Added gdxperf.gms : Test various GDX APIs and report run times.
- Added generate.gms : Generate some random but structured GDX files.
Solver/Platform availability matrix
x86 64bit MS Windows | x86 64bit Linux | x86 64bit macOS | |
---|---|---|---|
ALPHAECP 2.11 | ✔ | ✔ | ✔ |
ANTIGONE 1.1 | ✔ | ✔ | ✔ |
BARON | ✔ | ✔ | ✔ |
CBC 2.10 | ✔ | ✔ | ✔ |
CONOPT 3 | ✔ | ✔ | ✔ |
CONOPT 4 | ✔ | ✔ | ✔ |
COPT 6.0 | ✔ | ✔ | ✔ |
CPLEX 22.1 | ✔ | ✔ | ✔ |
DECIS | ✔ | ✔ | ✔ |
DICOPT 2 | ✔ | ✔ | ✔ |
GUROBI 10.0 | ✔ | ✔ | ✔ |
GUSS | ✔ | ✔ | ✔ |
IPOPT 3.14 | ✔ | ✔ | ✔ |
HiGHS 1.4 | ✔ | ✔ | ✔ |
KESTREL | ✔ | ✔ | ✔ |
KNITRO 13.2 | ✔ | ✔ | ✔ |
LINDO 14.0 | ✔ | ✔ | ✔ |
LINDOGLOBAL 14.0 | ✔ | ✔ | ✔ |
MILES | ✔ | ✔ | ✔ |
MINOS 5.6 | ✔ | ✔ | ✔ |
MOSEK 10 | ✔ | ✔ | ✔ |
NLPEC | ✔ | ✔ | ✔ |
OCTERACT 4 | ✔ | ✔ | |
ODHCPLEX 6 | ✔ | ✔ | |
PATH | ✔ | ✔ | ✔ |
QUADMINOS 5.6 | ✔ | ✔ | ✔ |
SBB | ✔ | ✔ | ✔ |
SCIP 8.0 | ✔ | ✔ | ✔ |
SHOT 1.1 | ✔ | ✔ | ✔ |
SNOPT 7.7 | ✔ | ✔ | ✔ |
SOPLEX 6.0 | ✔ | ✔ | ✔ |
XPRESS 41.01 | ✔ | ✔ | ✔ |
42.2.0 Minor release (February 16, 2023)
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 Lorena Reyes-Rubiano.
GAMS System
GAMS
- Fixed a potential problem that did not allow to execute an embedded code block as first statement in a repeat loop.
- Improved the way, the Grid Facility is executed to resolve a problem when running a GAMS model with solveLink=3 under GAMS MIRO.
Solvers
CONOPT
- New libraries 4.30.
- Fixes an error (stop without termination message) for models with dummy objective function.
Tools
MPS2GMS
- Fixed that parameter
COLUMNINTVARSAREBINARY
could not be set. - Fixed that objective function was lost if MPS reading falled back to the reader for the fixed MPS format.
APIs
GAMS Transfer R
- Significant performance improvement when reading from a GDX file.
- Partial domain forwarding is now allowed by passing a logical vector as the
domainForwarding
argument. - Added
generateRecords
method forSymbols
to automatically generate records.
42.3.0 Minor release (March 02, 2023)
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 Yuzar Aryadi, Wolfgang Britz, Geoffroy Duparc-Portier, Scott McDonald, and Tom Rutherford.
GAMS System
GAMS
- Fixed a bug which could have caused a crash when option clear/kill was used inside a loop on symbol attributes.
- Fixed a bug which caused a potentially wrong dump file when Singleton Sets are loaded.
- Fixed a bug that could have caused an unwanted error in rare cases when relaxed punctuation was used to declare a list of symbols without separating them by comma.
GAMS Connect
- Fixed a problem with labels containing non-printable characters as well as wrong sheet size calculations in RawExcelReader.
- Fixed a problem in RawExcelReader with workbooks that did not have any cells with numerical data.
- Fixed bug in the CSVReader agent where
indexSubstitutions
in a stacked dimension would lead toNaN
. - Fixed bug in the CSVReader agent where
indexSubstitutions
would also substitute in the value column of parameters. - Fixed bug in the CSVReader agent where index and text columns were read as numeric.
- Fixed bug where the CSVWriter agent converts the text column of a set to numeric.
- Fixed bug where the Concatenate agent converts GAMS
NA
into GAMSUNDF
for a symbol that solely has GAMSNA
undUNDF
records.
Solvers
CPLEX
- Fix for the case that solvefinal failed: GAMS/CPLEX will now return the solution from the preceeding full solve.
MOSEK
- Added workaround for crash when GAMS/Mosek link terminates after running Mosek with multiple threads.
Tools
GAMS Studio
- New version 1.13.3 with some bug fixes and minor enhancements, for example:
- Added a special group
-GAMS-System-
on project level to bundle files likeChangelog
andgamsconfig.yaml
. - Added support for macro symbol in Reference File Viewer.
- Enabled controls for empty symbols in GDX Viewer as well.
- Fixed crash when reloading an empty GDX symbol in table view mode.
- Fixed several memory leaks.
- Added a special group
42.4.0 Minor release (March 16, 2023)
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 Erwin Kalvelagen and Pedro Andres Sanchez-Perez.
GAMS System
GAMS
- Fixed duplicate prints of some lines in the output file when $onDollar is set.
GAMS Connect
- Fixed bug where the Projection agent unintentionally alters source symbols in the Connect database.
Solvers
BARON
- New libraries 23.3.11.
- Fixed that a wrong dual bound was reported for a maximization problem when interrupted by the user (
SIGINT
).
- Fixed that a wrong dual bound was reported for a maximization problem when interrupted by the user (
CONOPT
- Worked around some library symbol mix-ups when using both CONOPT 3 and CONOPT 4 in the same GAMS process with solvelink 5 or higher on Linux.
COPT
- New libraries 6.0.5.
CPLEX
- Fixed hanging program after fulfilled or ignored mipstopexpr.
HiGHS
- New libraries 1.5.1.
- New value 4 for option write_solution_style.
- Changed default for option presolve_rule_logging from 1 to 0.
MOSEK
- New libraries 10.0.38.
SCIP Optimization Suite
- New libraries SCIP 8.0 (1870b6ada8).
- New libraries PaPILO 2.1 (cf0c6277).
SHOT
- New libraries 1.1 (3ba57397).
Tools
GAMS Studio
- New version 1.13.4 with some bug fixes and minor enhancements, for example:
- Added support for Connect filter agent to Studio connect editor.
- Fixed crash on creating an
.opt
file via context menu in the Project Explorer. - Fixed wrong
.opt
file extension which prevented saving. - Fixed value edit in GAMS Configuration Editor and allowed to delete
minVersion
andmaxVersion
values. - Fixed GdxDiffDialog crash after opening an input file on macOS.
APIs
GAMS Transfer Python
- Fixed a bug associated with long symbol descriptions
Python
- Fixed a bug where GamsWorkspace.add_job_from_file did not raise an exception in case of a non-existing file.
- Fixed a bug where GamsModelInstance.copy_modelinstance did fail if the source instance was instantiated with GamsModifiers for parameters.
- Fixed the
==
operator of _GamsSymbol and its subclasses that resulted inTrue
even for different symbols. - Fixed GamsWorkspace.add_database_from_gdx not raising an exception in case of argument
gdx_file_name
beingNone
or the empty string. - Changed return type of the
==
operator of _GamsSymbolRecord and its subclasses fromint
tobool
.
42.5.0 Minor release (March 30, 2023)
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 Jason Hayes and Scott McDonald.
GAMS System
GAMS Connect
- Fixed the Projection agent failing on empty symbols.
Installer
- Fixed a problem of the Windows installer that prevented successful installation with a system account (e.g. when using SCCM).
Solvers
PATH and PATHNLP
- New libraries 5.0.07.
CONVERT
- Fixed writing
eps
instead of 0 for linear coefficients in GAMS format.
Tools
subsubsection g4250_STUDIO GAMS Studio
- New version 1.13.5 with some bug fixes and minor enhancements, for example:
- Added automatic opening of project editor after creating a new project.
- Fixed duplicated tab in reference file viewer when reloading a reference file.
- Fixed crash on macOS when a GAMS related file is opened via double-click in Finder.
- Fixed broken compilation error link to
.gms
file in.lst
file.
APIs
GAMS Transfer R
- Significant performance improvements when writing a GDX file from a Container.
- Fixed bug in Container read when reading a
Symbol
with unused UELs. - Fixed bug in
todense
method forSymbol
. - Fixed bug in writing empty container.
- Added
Symbol
methodcopy
to copy symbol from oneContainer
orConstContainer
to anotherContainer
. - Added
Container
andConstContainer
methodcopy
to copy symbols to another Container. - Fixed bug in using ConstContainer Alias methods when the aliased parent set is absent.