|
| GAMS Distribution 24.1 |
|---|
To use this distribution, the maintenance expiration date for your license must be later than May 30, 2013.
| 24.1.2 (Maintenance Release), | Release Date June 16, 2013 |
| 24.1.1 (Major Release), | Release Date May 30, 2013 |
| GAMS Maintenance Release 24.1.2 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Sergio Corvalan, George Mavrotas, Renger van Nieuwkoop, and Andres Ramos.
PreLPDo (0) and PDo (-2) which lets BARON decide about probingLiftProjCuts and CalcQCPDuals| GAMS Major Release 24.1.1 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Étienne Ayotte-Sauvé, Stephen Frank, Youngdae Kim, Andres Ramos, Steffen Rebennack, and Francisco Trespalacios.
solnpoolmerge to write all solutions into a single GDX fileComputeServer.
New experimental keywords making use of the extrinsic function library lsadclib to sample random variables with parametric distributions, any feedback will be appreciated:
sample <rv1> [rv2 ... rvn] <sampleSize> [varRedGroup]sample: keywordrv?: name of random variablesampleSize: size of samplevarRed: variance reduction group, mapped to variance reduction method using solver option filesample d 5 group1SVR_LS_ANTITHETIC=group1setSeed <seed>sampleComputeServer and options starting with CSTuning and options starting with TuneConcurrentMIP: This new feature launches multiple, independent solves on the same MIP model, using different settings for each. The solve returns when the first one finishes. This approach allows you to exploit multiple cores to explore a diverse set of search strategiesNumericFocus: This new parameter allows you to indicate that a model is likely to experience numerical trouble, which then causes our internal algorithms to favor numerical robustness over speednum_threads defines the number of threads to be used, it is initialized by the GAMS option threadsmultithread_mode defines the threading mode (auto, concurrent or parallel)objwgt in chance constraints (CC): now it gets multiplied by the violation ratio of the CC before it was added to the objective, in previous versons it was multiplied by (1 - the violation ratio)find_block: graph partitioning method to find block structuresgop_linearz: flag indicating if GOP exploits linearizable modelsolnpoolmerge to write all solutions into a single GDX fileNew features were added to the object oriented GAMS APIs including e.g. the capability to specify the domains of symbols, check for domain violations, copying ModelInstances, or setting the debug level using a environment variable. More details about new and modified functions can be found in the following sections about the different languages.
GAMS.net4.Tutorial.chm) to <Path/To/GAMS>/docs/API. From the GAMSIDE this document can be accessed at Help → Docs → API.SpawnGAMSExcel(84): Spawn an arbitrary model from Excelcsv2gdx1(85): testing CSV file conversionscpack (387): Packing identical size circles in the unit circletrigx (388): Another Trigonometric Examplestablem (389): Stable Marriage Problemsrtree (390): Simple Scenario Tree Construction Exampletgridmix (391): Grid Transportation Problem with Single Submit and Collect Loopprisoner (392): Prisoners dilemma as EMP and MCPcesam2 (393): Cross Entropy SAM Estimationsolmpool (394): Cplex Solution Pool for a Simple Facility Location Problem with Merged GDX Solution Filenlcode7 (586): Test for NL code bug from Dist 24.0.1n3707 (587): MIP model used by CTRLC testmod011 (588): MIP model used by CTRLC testfuzzy(589): MINLP model used by CTRLC testnuclear49b (590): MINLP model used by CTRLC testenpro56 (591): MINLP model used by CTRLC testpopdynmMCP25 (592): MCP model used by CTRLC testpopdynmMCP250 (593): MCP model used by CTRLC testpopdynmMCP1000 (594): MCP model used by CTRLC testgft (595): MPSGE model used by CTRLC testpf4mip (596): Test unbounded integer variables (MIP)pf4minlp (597): Test unbounded integer variables (MINLP)emp12 (598): Test of EMP equilibrium models and fixed varsemp13 (599): Test of EMP equilibrium models and fixed varsemp14 (600): Test of EMP equilibrium model with vi funcemp15 (601): Test of EMP equilibrium model with vi funcemp16 (602): Test of NLP -> MCP via JAMSmiqcp03 (603): Test modsolstat & solution correctness - multiple QCons & binariesmcp10 (604): MCP model with negative equ.varconvert8 (605): Test that eps in nonlinear code is kept by convertgurobi01 (606): GUROBI test suite - tuning testlp15 (607): LP with many zeros at solutionconvert9 (608): CONVERT test suite - handling of fixed vars for nlp2mcplsalib01 (609): Test extrinsic functions in lsadclibmrw01 (610): Test MessageReceiverWindow.exers01 (611): Solving a Transportation Problem using Cplex and Gurobi remote serverxpress06 (612): Solution enumerator example with solnPoolMerge
Solver/Platform availability - 24.1 May 30, 2013
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ANTIGONE 1.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
BARON 12.3 |
![]() ![]() ![]() ![]() |
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GLOMIQO 2.2 |
![]() ![]() ![]() ![]() |
|
|
|
|
GUROBI 5.5 |
![]() ![]() 5.0 |
![]() |
|
|
![]() ![]() KNITRO 8.1 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() LINDO 8.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() LINDOGLOBAL 8.0 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 7 |
![]() ![]() ![]() ![]() |
|
|
|
![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP 3.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SOPLEX 1.7 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() SULUM 2.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
XA |
![]() ![]() ![]() ![]() |
|
|
|
|
XPRESS 24.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|---|
| GAMS Distribution 24.0 |
|---|
To use this distribution, the maintenance expiration date for your license must be later than December 24, 2012.
| 24.0.2 (Maintenance Release), | Release Date February 14, 2013 |
| 24.0.1 (Major Release), | Release Date December 18, 2012 |
| GAMS Maintenance Release 24.0.2 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Arne Drud, Michael Ferris, Erwin Kalvelagen, Aida Khajavirad, Ignacio Perez, Nick Sahinidis, and Dimitri Tomanos.
ImproveStartNodes: A new option for transitioning from tree exploration to solution improvement in MIPSeed: Modifies the random number seed. This acts as a minor perturbation to the solver, which typically leads to a different solution path. This can be useful for experimentation (e.g., for testing the robustness of a particular set of parameter changes)| GAMS Major Release 24.0.1 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release.
Moved existing documentation about the APIs to <Path/To/GAMS>/docs/API. Also added new documentation there. In the GAMSIDE this documentation can be accessed at Help → Docs → API.
Add function Interrupt to GAMSJob: Sends interrupt signal to running GAMSJob
This release contains a beta version of the object-oriented Java API that can be used to control GAMS from a Java program. It allows the seamless integration of GAMS into Java by providing appropriate classes for the interaction with GAMS. GAMS Java API objects allow a convenient way to exchange input data and model results with in-memory representation of data (GAMSDatabase), and to create and run GAMS models (GAMSJob) that can be customized by GAMS options (GAMSOptions). Furthermore, they introduce a way to solve a sequence of closely related model instances in the more efficient way (GAMSModelInstance).
GAMSJavaAPI.jar with a namespace com.gams.api, located under the <Path/To/GAMS>/apifiles/Java/api/ directory. com.gams.examples, located under the <Path/To/GAMS>/apifiles/Java/ directory.
<Path/To/GAMS>/apifiles/readme.txt and <Path/To/GAMS>/docs/API/GAMS_java.pdf.GAMSJavaAPI.jar can be found under the <Path/To/GAMS>/apifiles/java/api/javadoc directory.
optGetStrStr has changed from: value = optGetStrStr(optHandle, "GDX", dummyString) to value = optGetStrStr(optHandle, "GDX")Installing the API and the required low level APIs:
cd <Path/To/GAMS>/apifiles/Python/api && python setup.py install && cd ..
Using the API without installing:
export PYTHONPATH=<Path/To/GAMS>/apifiles/Python/api (Unix)
set PYTHONPATH=<Path\To\GAMS>\apifiles\Python\api (Windows)
Running transport1.py example:
export LD_LIBRARY_PATH=<Path/To/GAMS>:$LD_LIBRARY_PATH (DYLD_LIBRARY_PATH on OS X, not required on Windows) python transport1.py
Documentation about this API can be found in <Path/To/GAMS>/docs/API/GAMS_python.pdf.
Added a list of examples to the GAMS Test Library.
--- Executing SOLVER (Solvelink=i): elapsed 0:00:00.000IBM ILOG CPLEX Jul 14, 2011 23.7.3 WIN 27723.27726 VS8 x86/MS Windows. The date in this line used to be the license check date, which does not change with maintenance releases (23.9.X). Starting with 24.0.1 the date displayed in the audit line is the build date of the system and changes with every release including maintenance releases. Terminate batch job (Y/N)? and the user had to interact. Now the message is still printed, but GAMS does not wait for a user action anymore. This has a rare side effect that solver keyboard interactions (e.g. in GAMS/Cplex with option Interactive and GAMS/SCIP with option GAMS/Interactive) will not work unless the new GAMS option InteractiveSolver is set to 1.$include, the $ had to be in column 1. Leading blanks are now allowed for such commands, but require an additonal $: $$include. The $$ can only be used for the first dollar command in a line. For example, $set a 'aa' $$set b 'bb' does not work.put_utility feature WinMsg allows to send a Windows message to a window: put_utility fx 'WinMsg' / 'WindowTitle' / 'Message';
$CALL.ASYNCNC, Execute.AsyncNC and Put_Utility keywords Exec.AsyncNC and Shell.AsyncNC have been added. NC and non NC calls behave identical on non-Windows platforms.proximitysearch 1 in a GAMS/Cbc options file.localsolver to convert GAMS models into LocalSolver language. This is still an experimental feature, i.e., it may not always be possible to process the created .lsp files with LocalSolver. A major limitation is the restriction to binary and bounded integer variables in LocalSolver. To allow for continuous variables that can be defined via other variables, ConvertD can read information about defined variables from a ConvertD options file. In such an option file, a line defvar x1 e1 denotes that the continuous variable x1 is defined via equation e1. Equation e1 then needs to be an equality constraint which contains x1 in a linear expression. Analogously, a statement defvar y(n,i,j) e(n,i,j) indicates that variable y(n,i,j) is defined via equation e(n,i,j) for all (n,i,j).THREADS to 0, result in setting the threads to the number of cores.ProbeDetTime: Limits the amount of time (expressed in deterministic ticks) spent probingPolishAfterDetTime: Sets the amount of time expressed in deterministic ticks to spend during a normal mixed integer optimization after which CPLEX starts to polish a feasible solutionTuningDetTiLim: Sets a time limit in deterministic ticks per model and per test set (that is, suite of models) applicable in tuningRandomSeed: Sets the random seed differently for diversity of solutions.gams/miptrace options have been renamed to gams/solvetrace.gams/printstatistics option has been renamed to display/statistics.gams/interactive option is now a string option that takes commands for the SCIP shell as arguments. If the commands do not end with a 'quit' command, the SCIP shell still open for user interaction. Note, that in order to be able to input commands interactively on Windows, you have to set the GAMS option interactivesolver to 1 (see above).lp/solver option. Supported values are "cplex", "soplex", and "clp". The default LP solver is now CPLEX, if a CPLEX license is available, and SoPlex otherwise.powerset (381): PowerSetLeft and PowerSetRight exampleslinearne (382): Linearization techniques for extremal-Nash equilibriasaras (383): South African Regionalized Farm-level Resource Use & Output Supply Response (SARAS) modelepscmmip (384): Improved version of eps-Constraint Method for Multiobjective Optimizationbidpwl (385): Bid Evaluation with Piecewise Linear Functionstrnspwlx (386): A Transportation Problem with Piecewise Linear Functionstestexeq (562): Test external equationsex1 (563): External Function - Example 1ex1x (564): External Function - Example 1xex2 (565): External Function - Example 2ex3 (566): External Function - Example 3ex4 (567): External Function - Example 4ex4x (568): External Function - Example 4xex5 (569): External Function - Example 5er1 (570): External Function - Error Example 1er2 (571): External Function - Error Example 2er3 (572): External Function - Error Example 3exmcp1 (573): External Function - Example MCP 1exmcp2 (574): External Function - Example MCP 2exmcp3 (575): External Function - Example MCP 3exmcp4 (576): Hansen/Koopmans: External Function - Example MCP 4exmcp5 (577): Intermixed External Rows: External Function - Example MCP 5complink (578): Compile and link external equation librarieslindgl02 (579): Check that Lindo(Global) works with SOS variablesqcp10 (580): Test for QCP correctnessempdisj6 (581): Test disjunctions with negated equality equationsgdx9 (582): Test unloading and loading a GDX file with variable attributesempdisj7 (583): Test disjunctions with negated variablestraceuc (584): Test if we can get the user and computer name in a trace fileasynntrp (585): Start GAMS job asynchronously and send interrupt signal to it
Solver/Platform availability - 24.0 December 24, 2012
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() BARON 11.8 |
![]() ![]() ![]() ![]() |
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GLOMIQO 2.1 |
![]() ![]() ![]() ![]() |
|
|
|
|
GUROBI 5.1 |
![]() ![]() 5.0 |
![]() |
|
|
![]() ![]() KNITRO 8.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() LINDO 7.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() LINDOGLOBAL 7.0 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP 3.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SOPLEX 1.7 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() SULUM 1.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
XA |
![]() ![]() ![]() ![]() |
|
|
|
|
XPRESS 23.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|---|
| GAMS Distribution 23.9 |
|---|
| 23.9.5 (Maintenance Release), | Released: November 09, 2012 |
| 23.9.4 (Maintenance Release), | Released: October 20, 2012 |
| 23.9.3 (Maintenance Release), | Released: September 26, 2012 |
| 23.9.2 (Maintenance Release), | Released: August 29, 2012 |
| 23.9.1 (Major Release), | Released: July 08, 2012 |
| GAMS Maintenance Release 23.9.5 |
|---|
| GAMS Maintenance Release 23.9.4 |
|---|
| GAMS Maintenance Release 23.9.3 |
|---|
| GAMS Maintenance Release 23.9.2 |
|---|
Changed default for GAMS parameter MaxProcDir from 26 to 700 which allow to have up to 700 scratch directories (225a, 225b, ...) in the project/current directory
Double-click to open a file in the IDE works again (also fixes a single click in the McCarl guide)
| GAMS Major Release 23.9.1 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Steve Gabriel, Oyvind Hoveid and Renger van Nieuwkoop.
gams23.9_linux_x86_32_sfx for the Linux 32bit installer). Previous versions unpacked the GAMS distribution into the current directory.
This release contains a beta version of the object-oriented GAMS .NET API that can be used to control GAMS from within C# and other programming languages of the .NET framework 4. It allows the seamless integration of GAMS into the .NET environment by providing appropriate classes for the interaction with GAMS. The GAMSDatabase class for in-memory representation of data can be used for convenient exchange of input data and model results. Models written in GAMS can be run with the GAMSJob class and by using the GAMSModelInstance class a sequence of closely related model instances can be solved in the most efficient way.
To use this API one has to reference GAMS.net.dll which can be found in the GAMS system directory. Documentation about this API can be found in <GAMSDir>\apifiles\GAMS.net4.chm.
Lag and lead operations require the reference set to be ordered and constant. In some special cases one would want to use lags and leads on dynamic
and/or unordered sets. A dollar control option on/offOrder has been added to locally relax the default requirements. The use of this option comes at a price: the system will not be able to diagnose odd and incorrect formulations and data sets. A small example in Test Library lagd1 illustrates the use of on/offOrder.
gamsbatch) has been removed from Unix distributions. This script was a source of confusion when multiple GAMS systems were installed. A GAMS job can be run in the background easily without this script. See for example: objest. In previous versions of GAMS this model attribute was not set if no solution was found. This has been fixed with this release.
The new extrinsic function library lsadclib was added to the system. It allows to use sampling routines from Lindo inside GAMS. A license for GAMS/Lindo is required to use this library. Without a license only a demo version is available which is restricted to the Normal and the Uniform distribution with not more than 10 sample points. Further information can be found in the GAMS User's Guide, Appendix J.
BarQCPConvTol: Convergence tolerance for the barrier algorithm when solving a QCP.PreQLinearize: Controls linearization of Q matrices in the quadratic constraints or a quadratic objective.QCPDual: Determines whether dual variable values are computed for QCP models. Gurobi has this off by default. In GAMS/Gurobi this is on by default.MIQCPMethod: Determines whether outer approximation is used to solve an MIQCP model.FeasOpt for details. UseBasis for details.BarHomogeneous option to select this.Kappa if you want a quick estimate, or KappaExact if you want to spend the sometimes substantial time required to compute the exact condition number. NoHotStart to suppress hot starts with hot start capable solver.TrnsxcllStarter (83): Trnsxcll: Excel Spreadsheet in Charge of GAMSUpdated:
qp7 (271) and emfl (273): Both models use second order cone constraints. The constraints are written with the =c= syntax if MOSEK is the selected solver and as general quadratic constraints if CplexD or Gurobi are the selected solversfeasopt1 (314): This model has been modified so it can be used by Cplex and Gurobi. Both solvers support the FeasOpt option to find minimal relaxations for infeasible modelsNew:
ps5_s_mn (377): Parts Supply Problem w/ 5 Types w/ Random p(i)iobalance (378): Updating and Projecting Coefficients: The RAS Approachfdesign (379): Linear Phase Lowpass Filter Designpmeanvar (380): Mean-Variance models with variable upper and lower boundsUpdated:
circlen (551): Added an SOCP formulation to the smallest circle problemNew:
mpsge12 (558): MPSGE test - inter-mixed MPSGE and MCP rows in modelgdxcomp2 (559): GDX - compressed and MT operationlagd1 (560): Lag and Lead operations on Dynamic Setsmiqcp02 (561): Test of correctness of solvestat
Solver/Platform availability - 23.9 July 4, 2012
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() BARON 11.1 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.4 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GLOMIQO 2.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
GUROBI 5.0 |
![]() ![]() ![]() ![]() |
|
|
![]() |
![]() KNITRO 8.0 |
![]() ![]() ![]() ![]() |
|
![]() |
|
![]() LINDO 7.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() LINDOGLOBAL 7.0 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() ![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SOPLEX |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() XA |
![]() ![]() ![]() ![]() |
|
|
|
|
|
XPRESS 23.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|---|
| GAMS Distribution 23.8 March 17, 2012 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Alessandro Brozzi, Jan Philipp Dietrich, Michael Ferris, Christophe Gouel, Josef Kallrath, Cheng Khor, Brage Knudsen, Jeff Larson, Yanchao Liu, Alexander Mitos, Renger van Nieuwkoop, Stefan Vigerske.
$eolcom !
equation e1,e2,e3,e4,e5; variable x1,x2;
e5.. x1 =l= 0;
e4.. x1 =l= 0;
model m1 / e1,e2 /
m2 / e3,e4 /
m3 / m2,m1,e5 / ! e3,e4,e1,e2,e5
m4 / all-m1+e1+e1 / ! e3,e4,e5,e1
m5 / all + e5.x1 + e4.x2 -e1/ ! e2,e3,e5.x1,e4.x2
m6 / m5 -e5, e5.x2 / ! e2,e3,e4.x2,e5.x2
m7 / m5 + e5.x2 / ! same as m6
Note that the equation list is ordered left to right. If we have a '+' separator adding an equation already in the list, the equation (possibly modified) will move to the end of the list.
edist and poly and extrinsic function libraries.In this release we made a first cut at supporting stochastic programming in GAMS. With a few changes uncertainty can be added to an existing deterministic model. For this, the EMP framework is used to replace parameters in the model by random variables. This way (stagewise-independent) multi-stage recourse problems and chance constraint models can be formulated. Three solvers can be selected to solve those problems: DE, DECIS and LINDO.
Further information can be found in the document empsp.pdf
In addition, you can check examples of type SP from the GAMS EMP Library.
ScriptExit has to be set explicitly to the script that should be called after GAMS terminates. An empty template of an exit script can be found in the GAMS system directory (gmsxitnt.cmd (Windows) or gmsxitus.run (Unix)).lpsol = 8)nlpsol = 9)miptracedettilim: option to limit 'ticks'GAMS/DE accepts EMP models that have been annotated with information about uncertainty. The DE 'solver' reformulates the stochastic model into the extensive form equivalent with implicit non-anticipativity constraints. The reformulated model is solved with any of the regular GAMS solvers. All optimization model types (LP, MIP, QCP, MIQCP, NLP, DNLP, and MINLP) are accepted.GAMS/DECIS accepts 2 stage EMP stochastic models. The stochastic information is processed and is passed to the well known GAMS/DECISC or GAMS/DECISM solver. The need to provide the stochastic information based on the matrix elements is now unnecessary. DECIS, as GAMS/DECISC and GAMS/DECISM, accepts linear recourse models only (although the stochastic effects might be more complex).The new Global Mixed-Integer Quadratic Optimizer, GloMIQO (GLO-me-ko), solves Quadratically Constrained Programs (QCP) and Mixed-Integer Quadratically Constrained Programs (MIQCP) to epsilon-global optimality.
Sifting parameter to a value greater than 0.ZeroObjNodes parameter to control this new heuristic.PreSparsify parameter to enable this algorithm. NoMatchLimit (default 0) that controls the maximum number of accepted unmatched scenario records before terminating the solve.New solver Lindo, similar to LindoGlobal, but
GAMS/LINDO accepts stochastic EMP models and solves either the extensive form equivalent or uses Benders' decomposition to solve the stochastic model. In addition to discrete random variables, Lindo features also continuous distribution functions and various sampling techniques. All optimization model types (LP, MIP, QCP, MIQCP, NLP, DNLP, and MINLP) are accepted.miptracegams/indicatorfilegams/dumpsolutions to write all solutions found into gdx solution poolisGoodEnough=X implemented in the link. If set, the global search will stop once an integer feasible point is found with an objective at least this good. Surprisingly, none of the MIP solver vendors implement such an option directly in their libraries.Amongst others, the following topics were revised in both, the GAMS Users Guide and the Bruce McCarl's Expanded GAMS Guide
gdxmrwplotting01 (81): Placeholder for the GDXMRW examples that deal with plotting in Matlabmakeql (82): Create Querry Library routines for extrinsic functionstwo3emp (68): EMP Formulation of Simple 2 x 2 x 2 General Equilibrium Model airsp3 (69): Aircraft allocation - stochastic optimization apl1psp (70): Stochastic Electric Power Expansion Planning Problem apl1pcasp (71): Stochastic Electric Power Expansion Planning Problem clearlaksp (72): Scenario Reduction: ClearLake exercise farmsp (73): The Farmer's Problem - Stochastic kilosafarm (74): Kilosa farm problem landssp (75): Optimal Investment nbContIndep (76): Newsboy problem, continuous and independent distributionnbContJoint (77): Newsboy problem, continuous and joint distributionnbDiscIndep (78): Newsboy problem, discrete and independent distributionnbDiscJoint (79): Newsboy problem, discrete and joint distributionportfolio (80): Stochastic portfolio modelprodsp3 (81): Stochastic Programming ExamplesimpleChance (82): Simple chance constraint modelsp3x2 (83): Simple stochastic modeltr20 (84): Extended transport model with stochastic demand and costsnbsimple (85): Simple newsboy problem, discreteairlift (86): Airlift operations schedulestocfor3 (87): Long Range Forest Planningcirclesp (88): Circle Enclosing Points - Stochastic Examplebatchsp (89): Design of batch chemical plants with stochastic demand and pricecargonet (90): Cargo network scheduling with stochastic transportation demandgen2s (91): Two stage stochastic program in the generic formsku1sp (92): Multi-product assemble model with discrete and Poisson demand distributioncubesoln (371): Three-dimensional Noughts and Crosses Multiple Solutionssipres (372): Global optimization of semi-infinite programs via restriction of the right-hand sidecclinpts (373): Finding Optimal Breakpoints when linearizing a power utility functionptsp (374): Traveling Salesman Problem Instance solved with explicit Permutation Enumeration pmelody (375): Choose notes for melodic lines and chords with permutationsflowshop (376): Flow shop schedulingnlcode6 (534): Test for NL code bug from Dist 23.6scensol3 (535): NoMatchLimit GUSS Testgzip01 (536): Test gzipped input filessl4qcp01 (537): Test of correctness for levels & marginals of QCP, with solvelink=1,2,4,5sl4qcp02 (538): Test modsolstat & solution correctness - multiple QCons, with solvelink=1,2,4,5sl4qcp03 (539): Test case for cancellation in quadratic terms, with solvelink=1,2,4,5miqcp01 (540): Test of correctness for levels & marginals of MIQCPindic01 (541): Test of =g= indicator constraintsindic02 (542): Test of =e= indicator constraintskestrel1 (543): Kestrel test for lp solverskestrel2 (544): Kestrel test for mcp solverskestrel3 (545): Kestrel test for nlp solverskestrel4 (546): Kestrel test for minlp solversindic03 (547): Test of =e= indicator constraintsxpress03 (548): XPRESS test suite - solution pool examplemip05 (549): Maximum queens chess problemxpress04 (550): XPRESS test suite - solution enumerator examplecirclen (551): Circle Enclosing Points n dimensionaltrilib04 (552): Demonstrates problems with a stateful function librarymip06 (553): Cuts and solution enumerationxpress05 (554): XPRESS test suite - solution enumerator exampleqcp09 (555): Simplest test for QCP correctnessperm1 (556): Test for various permutationsctrlcmip (557): Test interrupt handling
Solver/Platform availability - 23.8 March 17, 2012
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() BARON 10.1 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.4 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GLOMIQO |
![]() ![]() ![]() ![]() |
|
|
|
|
|
GUROBI 4.6 |
![]() ![]() ![]() ![]() |
|
|
![]() |
![]() KNITRO 8.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() LINDO 7.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() LINDOGLOBAL 7.0 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() ![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SOPLEX |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() XA |
![]() ![]() ![]() ![]() |
|
|
|
|
|
XPRESS 22.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
|---|
| GAMS Distribution 23.7 July 14, 2011 |
|---|
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, Michael Ferris, Josef Kallrath, Andreas Lundell, Renger van Nieuwkoop, Sabine Ritter, Stefan Vigerske, and Kent Zhao.
For a long time GAMS supports calling executables via the $call and Execute in a synchronous way. The new release also supports asynchronous job handling. This means you can start a job without waiting for the result. You can continue in your model and collect the return code of the job later. There are three ways to start a job asynchronously:
$Call.ASync ... (compile time)Execute.ASync '...'; (execution time)put_utility fx 'Exec.ASync' / '...'; / put_utility fx 'Shell.ASync' / '...'; (execution time)
After each of those the function JobHandle can be used to get the Process ID (pid) of the last job started. With JobStatus(pid) one could check for the status of a job. Possible return values are:
With JobTerminate(pid) a interrupt signal can be sent to a running job. If this was successful the return value is one, otherwise it is zero.
With JobKill(pid) a kill signal can be sent to a running job. If this was successful the return value is one, otherwise it is zero.
The model asynexec from the GAMS Test Library demonstrates the use of this new feature.
The new GAMS Function Library Facility allows users to import functions from an external library into a GAMS model. Apart from the import syntax, the imported functions can be used in the same way as intrinsic functions. In particular, they can be used in equation definitions. Some function libraries are included with the standard GAMS software distribution but GAMS users can also create their own libraries using an open programming interface. Simple examples in the programming languages C, Delphi and Fortran come with every GAMS system.
Function libraries are made available to a model using the compiler directive:
$FuncLibIn <InternalLibName> <ExternalLibName>
Similar to sets, parameters, variables, and equations, functions must be declared before they can be used:
Function <InternalFuncName> /<InternalLibName>.<FuncName>/;
There are a few libraries which come ready to use with the GAMS system:
Detailed information can be found in the GAMS User's Guide in chapter 6.3.
In addition, the following examples from the GAMS Test Library can be referred to:
stolib01: Uses the stochastic library which comes with the GAMS systemtrilib01: Uses trigonometric function from a library written in C, comes with C source codetrilib02: Uses trigonometric function from a library written in Delphi, comes with Delphi source codetrilib03: Uses trigonometric function from a library written in Fortran, comes with Fortran source codepwplib01: Uses a library for piecewise polynomial functions which comes with the GAMS systemfitlib01: Uses FITPACK from P. Dierckx which was packaged in a way that it works with this facility and comes with the GAMS systemIf you need detailed instructions for connecting your library to GAMS please contact support@gams.com.
We found and corrected a bug related to the internal organization of non-linear code. This bug was introduced with version 23.6 but fortunately only occurs in rare cases.
CUTdelcrit Improved heuristic to reselect cuts.CUTnrcuts Option that the algorithm decides was added.ECPdumpsol Write encountered solutions in GDX files.MIPsolstrat Strategy for multiple MIP solutionsNLPcall Option that the algorithm decides was added.solvelink Determines the way the NLP and MIP solvers are called. By default AlphaEXP now calls the NLP and MIP solver in memory.CUTautogrowth, CUTcheckgrowth, CUTgrowth, CUTgrowtheq, CUTgrowthnr, CUTmincutsECPcheckviolNLPepsilon, NLPlimepsilon SolutionTarget), lets you specify to Cplex whether you will accept a solution that satisfies first-order optimality conditions (in contrast to accepting only globally optimal solutions), and Cplex computes and searches accordingly.solvelink=5)solvelink Determines the way the NLP and MIP solvers are called. By default Dicopt now calls the NLP and MIP solver in memory.logic equationsAND,OR,XOR,NOT,IMP(→),EQV(⇔)) foodemp (59) disjunction b e says that constraint e has to hold if b is truedisjunction b e else not e says that constraint e can only hold if and only if b is truecheckrange: Calculates the feasible range for every variable in each equation while all other variables are fixed to their level. If set, the value of this option defines the name of the GDX file where the results are written to.lmbigm and lmchull are combined in the new solver solver logmip.solvelink=5)solvelink determines the way the NLP and MIP solvers are calledsolvelink=5)solvelink determines the way the NLP solver is called. By default SBB now calls the NLP solver in memory.solvelink=5)datatest (80): Driver for datalib tests of all sortsfoodemp (59): Food Manufacturing Problem - Blending of oilssimenlp (60): Simple example of ENLPnlp2mcp (61): nlp2mcp: Form the KKT conditions of an NLP as an MCPsimplevi3 (62): Another simple VI examplesimpequil2 (63): Simple Equilibrium with external constrainthark-monop (64): SPE model from Harker - monopolist and competetive versionshark-oligop(65): SPE model from Harker - oligopoly versionhark-oligop-ind (66): SPE model from Harker - oligopoly versionhark-stack (67): SPE model from Harker - Stackelberg versionkqkpsdp (355): SDP Convexifications of the Cardinality Constraint Quadratic Knapsack Problemprodplan (356): A Production Planning Examplesddp (357): Multi-stage Stochastic Water Reservoir Model solved with SDDPps2_f_s (358): Parts Supply Problem w/ 2 Types w/o & w/ Asymmetric Informationps2_f (359): Parts Supply Problem w/ 2 Types w/o Asymmetric Informationps2_f_eff (360): Parts Supply Problem w/ Efficient Type w/o Asymmetric Informationps2_f_inf (361): Parts Supply Problem w/ Inefficient Type w/o Asymmetric Informationps2_s (362): Parts Supply Problem w/ 2 Types w/ Asymmetric Informationps3_f (363): Parts Supply Problem w/ 3 Types w/o Asymmetric Information ps3_s (364): Parts Supply Problem w/ 3 Types w/ Asymmetric Informationps3_s_gic (365): Parts Supply Problem w/ 3 Types w/ Global Incentive Comp. Const.ps3_s_mn (366): Parts Supply Problem w/ 3 Types w/ Monotonicity Constraintps3_s_scp (367): Parts Supply Problem w/ 3 Types w/o & w/ SCPps10_s (368): Parts Supply Problem w/ 10 Types & w/ Asymmetric Informationps10_s_mn (369): Parts Supply Problem w/ 10 Types w/ Random p(i)ccoil (370): Oil Pipeline Design Problem using concurrent MIP solvesinterval (506): Test for interval evaluationempdisj3 (507): Test Disjunctions using not (equivalence)emplog1 (508): Test disjunctions and logical conditionsmaxima (509): Test several maxima of Cmexemplog2 (510): Test simple logical conditionsqcp07 (511): Test correctness for QCP with poly functionqcp08 (512): Test correctness for QCP with power(*,2) functionempdisj4 (513): Test disjunctions with negative bounds on variablesfuncback (514): Test function backward compatibilityasynexec (515): Test asynchronous execution at compile and execution timescen01 (516): Compile time test for the scenario facilityempdisj5 (517): Test disjunctions using not on binary variable and constraintscen02 (518): Execution time test for the scenario facilityscen03 (519): Multi-dimensional scenario solver teststolib01 (520): Test extrinsic functions in stodclibtrilib01 (521): Test extrinsic functions in tricclibtrilib02 (522): Test extrinsic functions in tridclibtrilib03 (523): Test extrinsic functions in trifcliblindorg2 (524): Test for LindoGlobals CheckRange Optionmip04 (525): Exercise new XPRESS return code for unbounded MIPload5 (526): Tests UNDF with $loadpwplib01 (527): Test piecewise polynomials in pwpcclibfitlib01 (528): Test the use of FITPACK inside GAMSload6 (529): Tests dynamic error messages during $loaddcfnspowx (530): Test correctness of signpower intrinsicfnspown (531): Test correctness of signpower intrinsicnlcode5 (532): Test for NL code bug from Dist 23.6scensol2 (533): Test handling of unsorted scenario UELs in GUSS
Solver/Platform availability - 23.7 July 14, 2011
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() BARON 9.3 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 4.5 |
![]() ![]() ![]() ![]() |
|
|
![]() |
![]() KNITRO 7.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() LINDOGLOBAL 6.1 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() ![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() |
|
|
|
|
|
XPRESS 22.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
|---|
| GAMS Distribution 23.6 December 13, 2010 |
|---|
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, Nico Keyaerts, Leon Lasdon, Xiang Li, Timo Lohmann, Sebastian Ritter, Yannick Rombauts, Tom Rutherford, Uwe Schneider, Stefan Vigerske, Achim Wechsung, and Gyeongbeom Yi.
RandBinomial(n,p) which generates random numbers from the Binomial distribution where n is the number of trials and p the probability of success for each trial.jdate, jtime, gyear, gmonth, gday, gdow, gleap, ghour, gminute, gsecond, gmillisec, jstart, jnow, gamsversion, gamsrelease.IMP (→), EQV (⇔), OR and XOR. These operator used to have the same precedence binding, so with the usual left to right evaluation an expression like a → b OR c used to be equivalent to (a → b) OR c. IMP and EQV have now a lower precedence binding, so the expression a → b OR c is now equivalent to a → (b OR c). default for command line parameters gdx and rf: default is interpreted as the input file name, this means for example, that gams trnsport gdx=default will write the file trnsport.gdx. Along the same lines, gams trnsport rf=default will write the reference file trnsport.ref.Threads: Controls the number of threads to be used by a solver. It can also be set as GAMS option or model attribute. The model attribute has the highest priority, the command line parameter the lowest. Non-positive values are interpreted as the number of cores to leave free so setting threads to 0 uses all available cores while setting threads to -1 leaves one core free for other tasks.The new tool chk4upd checks if there is a newer version of GAMS available than the one you are running. It checks for the most recent version available as well as for the newest version you can run with your license in case your maintenance and support is expired. By default it reads gamslice.txt located next to it. Alternatively, you can specify another license on the command line. In addition to the command line tool you will find an integration in the GAMS IDE at Help → Check for GAMS Update.
The function to test if two values are different when Eps/RelEps has been specified was changed. The documentation describes the new implementation.
GDXMRW is a collection of utilities that make it easier and more reliable to share data between GAMS and Matlab and that allow the Matlab user to call GAMS using something similar to a subroutine interface. Formerly contributed software, these utilities were integrated into GAMS Distribution 23.4 and have been updated and improved since then.
This new program will write all worksheets of an Excel workbook to a gdx file. Unlike GDXXRW, the program does not require that Excel is installed. Windows platforms only.
ExtNLPSolver conopt.1)solvelink=5)-) was introduced, see model flipper (50)LPMethod and RootMethodMethod: Controls the algorithm used to solve continuous linear and quadratic models. This parameter also selects the algorithm used to solve the root node of a MIP model.NodeMethod: Chooses the algorithm used to solve node relaxations in a MIP model.ModKCuts: Controls the generation of mod-k cuts.ImproveStartGap: Allows you to specify the optimality gap at which the MIP solver resets a few MIP heuristics parameters in order to shift the attention of the MIP solver to finding the best possible feasible solution.ImproveStartTime: Allows you to specify the elapsed time at which the MIP solver resets a few MIP heuristics parameters in order to shift the attention of the MIP solver to finding the best possible feasible solution.PreMIQPMethod: Chooses the presolve transformation performed on MIQP models.PSDTol: Sets a limit on the amount of diagonal perturbation that the optimizer is allowed to do on the Q matrix for a quadratic model. If a larger perturbation is required, the optimizer will terminate with a message that Q is not positive semi-definite.solvelink=5)solvelink=5)solvelink=5)GDXXRWExample15 (76): Write spreadsheet using a filterGDXXRWExample16 (77): Write spreadsheet using text and hyperlinkstompivot (78): Little GAMS Program from Tom Rutherford that Illustrates Report Generation with Excelreaddata (79): Read Data from .inc, .xls, .mdb and .csv fileflipper (50): Test of flipping equationsscarfemp-dem (51): Scarf's Activity Analysis Examplescarfemp-altdem (52): Scarf's Activity Analysis Example - non-closed form demand functionscarfemp-primal (53): Scarf's Activity Analysis Examplescarfemp-dual (54): Scarf's Activity Analysis Examplescarfexpend (55): Scarf's Activity Analysis Examplepies (56): PIES Energy Equilibriumexc2x2emp (57): pure exchange model (ie no production)exc2x2emp-dem (58): pure exchange model (ie no production)relief (353): Relief Missionspatequ (354): Spatial Equilibriumemp09 (492): Test initial levels for equilibrium EMP modelsxerr1 (493): External Function Errors: RHS wrongxerr2 (494): External Function Errors: Aij wrongcerr1 (495): Cone Equation Errorsmerr1 (496): Matrix Errorsmip02 (497): Check on MIP solution valuemip03 (498): Test for zero gap when optcr and optca set to zeroemp10 (499): Test of EMP equilibrium models and flip operatoremp11 (500): Test EMP formulations of scarfmcpempdisj2 (501): Test disjunctions involving the objectivegdxxrw6 (502): Test for dset reading problemqcp06 (503): Nonlinear model cannot be solved as QCPgdxdump1 (504): Use GdxDump NoData on Transportation Problemlindorng (505): Test for LindoGlobal's CheckRange Option
Solver/Platform availability - 23.6 December 13, 2010
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() BARON 9.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.2 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 4.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
![]() KNITRO 7.0 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() LINDOGLOBAL 6.1 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() ![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() |
|
|
|
|
|
XPRESS 21.01 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
|---|
| GAMS Distribution 23.5 July 4, 2010 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Farhad Farnam and Alexander Gocht.
package com.gams.example1;
import com.gams.api.*;
public class example1 {
... mipkappastats for details.MIPInterval) now accepts either a positive or negative integer value, making it easier for you to adjust the amount of information logged for your problem.ClockType parameter has changed from 0=automatic (let Cplex choose) to 2 (wallclock time).Threads). Running concurrent optimizers simultaneously on multiple threads may consume more memory. If the memory reduction parameter (MemoryEmphasis) is turned on, then you have instructed CPLEX to conserve memory. In that case, Cplex does not run concurrent, deterministic optimization unless parameter LPMethod is explicitly set to 6.AuxRootThreads: Partitions the number of threads for Cplex to use for auxiliary tasks while it solves the root node of a problem. On a system that offers N processors or N global threads, if you set this parameter to n, where N > n > 0 then Cplex uses at most n threads for auxiliary tasks and at most N-n threads to solve the root node.gen_r1 (483) : Generate GDX file for test of GDXMRWgen_r2 (484) : Generate GDX file for test of GDXMRW gen_rbig (485) : Generate GDX file for test of GDXMRWgdxmrw03 (486) : test the Matlab utility rgdx gdxmrw04 (487) : test the Matlab utility wgdxtestinst (488) : test the Matlab mex-file gamsgversion (489) : test the Matlab mex-file gamsgdxmrw05 (490) : test the Matlab mex-file gamsonmulti7 (491) : Test merge with $onmulti and empty data statement
Solver/Platform availability - 23.5 July 4, 2010
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 Mac PowerPC |
Darwin4 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() BARON 9.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() |
|
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.2 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 10.0 |
9.1 |
8.1 |
|
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
![]() ![]() ![]() |
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
GUROBI 3.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
![]() |
|
|
|
KNITRO 6.0 |
![]() ![]() ![]() ![]() 5.2 |
32bit |
|
|
![]() |
|
|
|
|
LINDOGLOBAL 6.1 |
![]() ![]() ![]() ![]() 6.0 |
6.0 |
![]() |
![]() ![]() |
|
|
![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() 5.0 |
5.0 |
![]() |
![]() ![]() 3.2 |
|
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() |
|
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() |
|
|
|
SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
|
|
|
![]() |
![]() ![]() XPRESS 20.00 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
16.10 |
|
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | 4)GAMS distribution for Mac PowerPC is 23.3. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 23.4 May 24, 2010 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Phil Bishop, Stefan Boeters, Pavel Borisovski, Wolfgang Britz, Michael Ferris, David Grace, Sascha Herrmann, Alexander Mitsos, Sebastian Ritter, and Tom Rutherford. We also thank Marcel Roelofs for helpful and insightful comments and discussions on Hessian computations.
The GAMS parameter gridscript allows to point to a customized grid submission script.
GAMS checks a model for non-linearities at compile time and requires the user to specify using nlp in the solve statement. At run time these non-linearities might disappear (cancelation, multiplication of non-linear terms with 0, ...), but the using nlp prevented the use of a pure LP solver. The new model attribute <model>.TryLinear = 1 checks at run time whether a nonlinear model has any non-linearities and then calls the default/chosen solver for the resulting model type.
Depending on the original model type the resulting model type is:
An example was added to the Test Library: trylin01 (482)
A compile time equivalent of the sameas function was added. E.g.
$eval a sameas(xyz,xYz) $eval b sameas ( 'xyz' , "xyz" ) $eval c sameas (12-3,12-3) $eval d sameas (12-3,13-4) $log %a% %b% %c% %d%
will yield:
1 1 1 0
For various GAMS options compile time constants were added in order to ease the reading code if used.
E.g. the statments following are the same
modelname.solvelink=3; modelname.solprint=0;modelname.solvelink=%solvelink.AsyncGrid%; modelname.solprint=%solprint.Summary%; The GAMS model libraries were adjusted and now make use of these constants.
New entry points:
gdxOpenAppend To add symbols to an existing GDX containergdxDataReadRawFast To read data in raw mode using a callback functiongdx2access now supports saving the text associated with set entries in the database.gdxxrw now supports writing an Excel file with filters. Filtering can be switched on/off for the symbols that follow the filter option: execute 'gdxxrw.exe test.gdx par=A rdim=3 cdim=0 rng=sheet1!a1 filter=1 par=B rdim=3 cdim=0 rng=sheet2!a1';mdb2gms now supports writing of the text associated with set entries.sql2gms now supports writing of the text associated with set entries.EMP was added in order to provide the flexibility required for the extended mathematical programming framework.multmpec (25)transeql (45)put_toexcel and put_tohtml were added to inclib subdirectory of the GAMS system directory and therefore can be used using $libinclude. These tools allow greater control when writing multi dimensional symbols to Excel or HTML files. More information can be found hereExtNLPsolver allows to call any GAMS NLP Solver availablemilp_solvertsvngdx (75): Support GDX Files with TortoiseSVN diffjointc1 (22): Educational bilevel modeljointc2 (23): Educational bilevel modelferris43 (24): Educational embedded complementarity system modelmultmpec (25): Educational bilevel model with VI followerstransbp (26): Transportation model with variable demand function using bilevel programmingflds911 (27): Princeton Bilevel Optimization Example 9.1.1flds912 (28): Princeton Bilevel Optimization Example 9.1.2flds913 (29): Princeton Bilevel Optimization Example 9.1.3flds914 (30): Princeton Bilevel Optimization Example 9.1.4flds915 (31): Princeton Bilevel Optimization Example 9.1.5flds916 (32): Princeton Bilevel Optimization Example 9.1.6flds917 (33): Princeton Bilevel Optimization Example 9.1.7flds918 (34): Princeton Bilevel Optimization Example 9.1.8flds919 (35): Princeton Bilevel Optimization Example 9.1.9flds921 (36): Princeton Bilevel Optimization Example 9.2.1flds922 (37): Princeton Bilevel Optimization Example 9.2.2flds923 (38): Princeton Bilevel Optimization Example 9.2.3flds924 (39): Princeton Bilevel Optimization Example 9.2.4flds925 (40): Princeton Bilevel Optimization Example 9.2.5flds926 (41): Princeton Bilevel Optimization Example 9.2.6flds927 (42): Princeton Bilevel Optimization Example 9.2.7flds928 (43): Princeton Bilevel Optimization Example 9.2.8flds929 (44): Princeton Bilevel Optimization Example 9.2.9transeql (45): Transportation model as equilibrium problemsimplevi (46): Simple Variational Inequalitysimplevi2 (47): Simple Nonlinear Variational Inequalityaffinevi (48): Affine Variational Inequalitysimpequil (49): Simple Equilibriumtrnspwl (351) : A Transportation Problem with discretized economies of scalefood (352) : Food Manufacturing Problem - Blending of oilsexamin04 (464) : EXAMINER test suite - test returnGamsPoint option and QCPempbp04 (465) : Bilevel model with and without explicitly defined objective equationempbp05 (466) : Bilevel model with MIN follower vs. VI followereval05 (467) : constant expression test for ceil,floor,trunc,fraceval06 (468) : matching operators in a column specemp06 (469) : Test of EMP based on trnsport modelemp07 (470) : Test of EMP based on trnsport modelemp08 (471) : Test of EMP based on trnsport modelpgams01 (472) : Test procdir deletion in pgamspgams02 (473) : Test procdir deletion in pgamstabsubst (474) : Tab and string substitution for long lineeval07 (475) : Test evaluation of real constants - string2Double conversiondumpsol (476) : Gurobi Alternate Solutions for a Simple Facility Location Problemifthen5 (477) : $ifthen false without samelineifthen6 (478) : $ifthen/elseif false without samelineutils02 (479) : test MPS2GMS - it had range problemsutils03 (480) : test MPS2GMS for reading the second range entry on a linempsge11 (481) : MPSGE test - multiple fixed income levelstrylin01 (482) : Test model attribute tryLinear
Solver/Platform availability - 23.4 May 24, 2010
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 5.3 Mac Intel32 |
Darwin Mac x86_64 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 Mac PowerPC |
Darwin4 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() BARON 9.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN-OR |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() |
|
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.1 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 10.0 |
9.1 |
8.1 |
|
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
|
|
![]() ![]() ![]() |
DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
GUROBI 3.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
KNITRO 6.0 |
![]() ![]() ![]() ![]() 5.2 |
32bit |
|
|
![]() |
|
|
|
|
LINDOGLOBAL 6.0 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|
|
|
![]() LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() 5.0 |
5.0 |
![]() |
![]() ![]() 3.2 |
|
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() |
|
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
V2 |
V2 |
|
|
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SCIP |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() |
|
|
|
SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
|
|
|
![]() |
![]() ![]() XPRESS 20.00 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
16.10 |
|
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | 4)GAMS distribution for Mac PowerPC is 23.3. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 23.3 November 1, 2009 |
|---|
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, Wietse Dol, Daniel T. Fokum, Nuri Gokhan, Iiro Harjunkoski, Josef Kallrath, Lloyd R. Kelly, Kristina Konold, and Uwe Schneider.
Set years /bc2000*bc1,0*2009/; Set years /"-20"*"-1"/;
ProcDir and MaxProcDir can be used to control the generation of process directories. ProcDir=abc will use abc instead of the 225. The user is responsible to create and remove the directories. %gams.procdir% will now be defined and give you the actual process directory in use. MaxProcDir=100 will extend the usual 225a to 225z, 225aa, 225ab, etc. The defaults will be 26 for MaxProcDir and 225? for ProcDir to make everything work as before.RunDir was removed.$hiddencall does the same as $call but makes sure that the statement is neither shown on the log nor the listing file. This is also true in case $ondollar or dp=2 is used. $hiddencall is especially useful in case of an encrypted model that e.g. reads/writes from an password-protected Excel file using gdxxrw password option.password allows to pass down a password to a protect Excel fileMINOS5 (old version of MINOS) was dropped. MINOS5 now is an alias to MINOS (Version 5.51) in order to protect users that hard-coded the use of MINOS5.
threads option allows specification of cores left free for non-XPRESS work.transxls (74): Solve classical transportation problem in Excel, using vba API (gamsx, opt and gdx) negishi (21): Pure exchange model solved with EMP, SJM, and CGEbchtsp (348): Traveling Salesman Problem Instance with BCH bchstock (349): Cutting Stock - A Column Generation Approach with BCHtanksize (350): Tank Size Design Problemset10 (449) : first entry in set/param data has wrong dimensionset11 (450) : test for order when using set.id or set#id or #idgdxcopy5 (451) : Test GDX environment variables with trailing blanksifthen2 (452) : Test nested $ifthen and $endififthen3 (453) : Test $ifthen $elseif/else $endififthen4 (454) : Tests $ifthen from old release noteseval01 (455) : constant evaluation with non-stop arithmeticeval02 (456) : $eval/ife/... sameas functionforceerr (457) : ForceError and ForceErrorCnt Examplegdxxrw5 (458) : Test for password handling of gdxxrw and $hiddencalllolp (459) : LP Test for logoptionlonlp (460) : NLP Test for logoptionlomcp (461) : MCP Test for logoptioneval03 (462) : test constant compile time evaluation functionseval04 (463) : test constant compile time evaluation operators
Solver/Platform availability - 23.3 November 1, 2009
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 4.34 Mac PowerPC |
Darwin Mac Intel32 |
Darwin Mac x86_64 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() BARON 9.0 |
![]() 32bit |
![]() 32bit |
|
|
|
8.1 |
|
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() ![]() |
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.1 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 11.2 |
|
![]() ![]() 10.0 |
9.1 |
8.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() ![]() ![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 2.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
KNITRO 6.0 |
![]() ![]() ![]() ![]() 5.2 |
32bit |
|
|
5.1 |
![]() |
|
|
|
LINDOGLOBAL 6.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() |
|
|
|
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 6 |
![]() ![]() ![]() ![]() 5.0 |
5.0 |
![]() |
5.0 |
![]() ![]() 3.2 |
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() ![]() |
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
V2 |
V2 |
|
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() |
![]() XPRESS 20.00 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 18.00 |
|
|
|
16.10 |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | 4)GAMS distribution for IBM RS-6000 AIX 4.3 is 23.1. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 23.2 August 14, 2009 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Shiro Takeda.
Solver/Platform availability - 23.2 August 14, 2009
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 4.3 Mac PowerPC |
Darwin Mac Intel32 |
Darwin Mac x86_64 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]() BARON 8.1 |
![]() 32bit |
![]() 32bit |
|
|
|
![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() ![]() |
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 12.1 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() 10.0 |
9.1 |
8.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() ![]() ![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 1.1 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
KNITRO 6.0 |
![]() ![]() ![]() ![]() 5.2 |
32bit |
|
|
5.1 |
![]() |
|
|
|
LINDOGLOBAL 6.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() |
|
|
|
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
3.2 |
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() ![]() |
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
V2 |
V2 |
|
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() |
![]() XPRESS 19.00 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
18.00 |
|
|
|
16.10 |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 23.1 July 13, 2009 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Anibal Blanco, Wietse Dol, Arne Drud, Josef Kallrath, Erwin Kalvelagen, Niclas Mattsson, Bruce McCarl, Dominique van der Mensbrugghe, Renger van Nieuwkoop, Stefan Vigerske, and Tongxin Zheng.
(64-Bit) Intel Mac
The default upper bound on integer variables has changed from 100 to +INF. Since some solve steps in a GAMS applications may inadvertently depend on the previous default value of 100, a the compatibility option, the GAMS parameter PF4=n, has been introduced to control what values will be passed to the solver. If the GAMS parameter PF4 is not used (a value of PF4=1 is assumed) the solve steps will work as in previous releases.
Pf4=0: The new default upper bound of +INF will be passed to the solver.Pf4=1: The value of 100 instead of +INF will be passed to the solver. The solvers will operate as with older GAMS versions. In addition messages will be written to the log and listing to report on the number of integer or semi-integer variables which had the new default bound of +INF reset to 100.PF4=2: The new default values of +INF will be used as with PF4=0. When a solution is returned to GAMS and the level value of an integer variable exceeds the old bound value of 100, a message will be written to the log and listing.PF4=3: The same as PF4=2 with an additional execution error issued if the solution reports a level value greater than 100 for any integer variable with a default bound of +INF.
Setting PF4 values to 2 and 3 is a convenient way to test if the application relies on the previous default bounds of 100. Future releases may use PF4=0 as the default.
An historic note: when GAMS was first introduced, some MIP solvers could only handle binary variable and GAMS applied transformations to simulate integers by using a power expansions. In addition, MIP solvers with integer variables imposed different restrictions on the largest upper bound value. Finally, solvers like DICOPT introduced integer cuts during the solution process, needing some finite upper bound on integer variables. What was once a good choice, turned over time into a source of confusion or resulted in unexpected model behavior.
The default iteration limit (IterLim) has been increased from 10000 to 2e9. Setting IterLim to INF will not work since it is treated as an integer by GAMS and many solvers. Some solver, e.g. GAMS/Gurobi, recognize 2e9 and set the solver iteration limit to infinity.
In addition to PROFILE=n and PROFILETOL=r, a new GAMS parameter PROFILEFILE=file has been introduced to write profiling information to a text file with some fixed format which can easily be imported into a spreadsheet for further analysis.
1 -1 0.000 ExecInit
139 15 0.000 Assignment cnf
139 13 0.000 Assignment cnf
. . . .
. . . .
. . . .
3549 432 0.000 Equation nbal
3621 39489 0.032 Solve Fini wsisn
3621 -1 0.062 GAMS Fini
1 -1 0.000 ExecInit
3621 -1 0.047 Solve Read wsisn
3621 -1 0.000 GAMS Fini
A summary report of the ten slowest execution steps will be written to the log and listing.
--- Profile Summary (184 records processed)
0.062 3621 GAMS Fini
0.047 3621 Solve Read wsisn
0.046 3529 Equation divcnlsea (86)
0.032 3621 Solve Fini wsisn (39489)
0.016 3274 Assignment wnr (2502)
0.016 3447 Equation cost (15)
0.016 3475 Equation laborc (180)
0.016 3519 Equation waterbaln (180)
0.016 3546 Equation subirrc (84)
0.015 3030 Assignment gwtsa (273)
The timing on slow data definitions and gdx loads during compilation will be profiled as well.
Added a line continuation character (\) for macro definitions. See test model macro02.
srpchase.Disjunctive programs can be solved via the following alternative automated reformulations without changes to the model
Examples
sequence (20): Sequencing on a single machinebilinear (346): Convexification of bilinear term binary times xNew libraries 1.1
New libraries 6.0
New libraries 5.0 rev 127
Where a traditional link already exists, the newer in-core link version has a "D" appended to the name (D for DLL). These in-core links are very similar to their traditional predecessors. They may lack some functionality but offer in-core communication between GAMS and the solver, making potentially large model scratch files unnecessary. This can save time if you solve many models in your GAMS program.
Portfolio (68): Determines an efficient frontier in Excel, using the GDX DLL (vba API) and the GAMS executableSudoku (69): Solve a Sudoku in Excel, using the GDX DLL (vba API) and the GAMS executableSamurai (70): Solve a Samurai Sudoku in Excel, using the GDX DLL (vba API) and the GAMS executableSamurai2 (71): Solve a Samurai Sudoku in Excel, using the GDX and GAMSX DLL (vba API)CHP (72): Optimize combined heat and power generation in Excel, using vba API (gamsx and opt) and GDXXRWCHP2 (73): Optimize combined heat and power generation in Excel, using vba API (gamsx, opt and gdx)zerofunc (18): Match unmatched vars with zero functions in VItraffic2 (19): Traffic Assignment Modelsequence (20): Sequencing on a single machinesecure (343): Secure Work Files - Example 2srpchase (344): Scenario Tree Construction Exampletsp5 (345): Traveling Salesman Problem - Fivebilinear (346): Convexification of bilinear term binary times xsolveopt (347): option solveopt explainedminos01 (433) : MINOS test suite - anti-cycling via expand frequencyscnred02 (434) : Scenred2 test - tree reduction and zero valuesempvi05 (435) : Test for EMP's treatment of an odd variablenlcode3 (436) : Wrong NL code generation for odd caseset8 (437) : Test the set.id set#id #id data macrosnlcode4 (438) : More NL testing when code is deletedcompile7 (439) : Test and document some system.XXX macrosmcp09 (440) : Test inequalities with infinite boundsempadj01 (441) : Test for EMPs AdjustEqu/NYslp optionemp05 (442) : Test for handling of constant equationsexamin03 (443) : EXAMINER test suite - test returnInitPoint optioncompile8 (444) : Test for a mapping errorsl4mip01 (445) : Test for known XPRESS bug, with solvelink=1,2,4,5macro02 (446) : Multi-line macro testput10 (447) : $on/offput inserted outside the loopset9 (448) : fast shifting of set elements
Solver/Platform availability - 23.1 July 13, 2009
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 4.3 Mac PowerPC |
Darwin Mac Intel32 |
Darwin Mac x86_64 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]() BARON 8.1 |
![]() 32bit |
![]() 32bit |
|
|
|
![]() |
|
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() ![]() |
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 11.2 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
10.0 |
9.1 |
8.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() ![]() ![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 1.1 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
|
KNITRO 6.0 |
![]() ![]() ![]() ![]() 5.2 |
32bit |
|
|
5.1 |
![]() |
|
|
|
LINDOGLOBAL 5.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() |
|
|
|
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
3.2 |
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() ![]() |
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
V2 |
V2 |
|
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() |
|
|
![]() |
![]() XPRESS 19.00 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
18.00 |
|
|
|
16.10 |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 23.0 February 14, 2009 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Surendu Korgaokar, Tom Rutherford, Stefan Vigerske and Rich Roberts.
As announced earlier we dropped the following systems as of this GAMS Distribution.
poutil (342): Portfolio Optimization for Electric Utilities privat01 (432) : Test private workfile behavioremp04 (431) : Compare results of EMP runs using different options for nlp problemlocal01 (430) : Test .local in different context $on/offlocalempdisj1 (429) : Test EMP Disjunction - Minimize the makespanempecs02 (428) : Test for EMP-Embedded Complemenarity Systemempecs01 (427) : Test for EMP-Embedded Complemenarity Systemempvi04 (426) : Test for EMP Variational Inequalitiesempvi03 (425) : Compares alternative EMP-VI modelsempvi02 (424) : Compares manual and EMP-VI modelsempvi01 (423) : Simple test for variational inequalities through EMPempbp03 (422) : Simple bilevel model, both inner and outer problems have constraintsempbp02 (421) : Simple bilevel model, outer problem consist of objective onlyempbp01 (420) : Simple bilevel model, inner problem consist of objective onlyconvert7 (419): CONVERT test suite - test hessian info correctnesslp14 (418) : Simple test on one equation AFTER reformulationcard01 (417) : Test extended card and ord functionssuffix01 (416): Test suffix options on controlling setsnlp01 (415) : Test of correctness for levels & marginals of NLPAs announced in the 22.9 release notes we dropped the following solvers as of this GAMS Distribution.
Due to user requests, and despite our earlier announcement, we did not drop the following components:
New libraries 11.2.1
The new Gurobi solver provides state-of-the-art simplex-based linear programming (LP) and mixed-integer programming (MIP) capability.
The Gurobi MIP solver includes shared memory parallelism, capable of simultaneously exploiting any number of processors and cores per processor. The implementation will be deterministic: two separate runs on the same model will produce identical solution paths.
The Gurobi solver is available for the 32-bit and 64-bit versions of Windows and Linux. Please contact us for an evaluation license.
New libraries 5.2.0
New libraries 5.0.1.345
New libraries 5.0 rev 112
New libraries 19.00.04
Where a traditional link already exists, the newer in-core link version has a "D" appended to the name (D for DLL). These in-core links are very similar to their traditional predecessors. They may lack some functionality but offer in-core communication between GAMS and the solver, making potentially large model scratch files unecessary. This can save time if you solve many models in your GAMS program.
Solver/Platform availability - 23.0 February 14, 2009
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS IBM RS-6000 |
AIX 4.3 Mac PowerPC |
Darwin Mac Intel32 |
Darwin HP 9000 |
HP-UX 111 SGI |
IRIX2 DEC Alpha |
Digital Unix 4.03 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() BARON 8.1 |
![]() 32bit |
![]() 32bit |
|
|
|
![]() |
|
|
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
![]() ![]() |
|
|
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 11.2 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() 10.0 |
9.1 |
8.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
![]() ![]() ![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() GUROBI 1.0 |
![]() ![]() ![]() ![]() |
|
|
|
|
|
|
|
|
KNITRO 5.2 |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() |
|
|
LINDOGLOBAL 5.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
![]() ![]() |
|
|
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() 3.2 |
|
|
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
|
![]() ![]() ![]() |
|
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
V2 |
V2 |
|
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
![]() |
|
|
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() |
|
![]() |
![]() XPRESS 19.00 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
18.00 |
|
|
16.10 |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 22.9 December 1, 2008 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Stefan Boeters, Wolfgang Britz, Alexander Gocht, Josef Kallrath, Erwin Kalvelagen, Todd Munson, Yiqi Zhu.
We are planning to drop the following systems from our next GAMS Distribution 23.0. If you object please submit an email to support@gams.com!
225? directories is .dat. The scratch extension is a parameter that can be changed with the GAMS option ScrExt, e.g gams trnsport scrext=tmp. Within GAMS code you get the scratch extension using %gams.scrext%.ETlim. The job elapsed time is checked before the execution of a $call, execute or solve statement. The system will terminate with a compilation or execution error if the limit (default INF) is reached.option solveopt=xxx. The related model attribute <model>.solveopt=n has been adjusted to match the new option values. If the model attribute is set to NA (default), the setting of the corresponding option statement will be used to determine the way solutions values are loaded back into the GAMS data space. The possible values are (the numeric value for the model attribute are given in parenthesis):replace (0) all equations appearing in the model list will be completely replaced by the new model results. Variables are only replaced if they appear in the final model.merge (1) the new model results are merged into the existing structures. This is the default.clear (2) similar to the replace option; in addition, variables appearing in the symbolic equations but squeezed out in the final model, are removed. option solprint=xxx. The related model attribute <model>.solprint=n and the GAMS parameter solprint=n have been adjusted to match the new option values. If the model attribute is set to NA (default), the setting of the corresponding option statement will be used to control the printing of model generation and solution information. Note that the GAMS parameter initializes the corresponding option statement values. The possible values are (the numeric value for the model attribute are given in parenthesis):off (0) detailed solution output is suppressed.on (1) the most detailed solution output. This is the default.silent (2) all solve related output is suppressed. ETsolve total elapsed time to execute a solve statementETsolver elapsed time that can be attributed to the solver only ETalg elapsed time that can be attributed to the core algorithm.noerror with the $abort statement, the error count will NOT be increased. When a save file is written, all remaining unexecuted code will be flushed. This allows effective reuse of the save file. The GAMS macro facility has been inspired by the GAMS-F preprocessor for function definition developed by Ferris, Rutherford and Starkweather, 1998, 2005. The GAMS macro facility incorporates the major features of the GAMS-F preprocessor into the standard GAMS release. The GAMS macros acts like a standard macro when defined, however, its recognition for expansion is GAMS syntax driven.
Macros are widely used in computer science to define and automate structured text replacements. The GAMS macro processors functions similar to the popular C/C++ macro preprocessor. The definition takes the form
$macro name macro body $macro name(arg1,arg3,arg2,..) macro body with tokens arg1,..
The name of the macro has to be unique, similar to other GAMS data types like sets and parameters. A ( following immediately the macro name starts the list of replacement arguments. The macro body is not further analyzed after removing leading and trailing spaces.
The recognition and following expansion is directed by GAMS syntax. The tokens in the macro body to be replaced by the actual macro arguments follow the standard GAMS identifier conventions. For example:
$macro diff(y) system.cosh(y) - cosh(y) $macro cosh(x) (exp(x) + exp(-x))/2 scalar z; z = diff(2/3); display z;
will expand into:
scalar z; z = system.cosh(2/3) - (exp(2/3) + exp(-2/3))/2; display z;
This expansion takes place in two steps, first GAMS recognizes diff as a macro and changes the input text to:
scalar z; z = system.cosh(2/3) - cosh(2/3); display z;
Gams will continue to process the modified input text. The first occurrence of cosh is not recognized by gams as a macro, only the second reference to cosh(2/3) will result in a second and final expansion.
The recognition of macros and expansion of arguments can further be controlled by the use of ampersands (&) in the macro body. A single ampersand (&) is used as a concatenation or separation symbol to recognize tokens to be replaced. Two ampersands (&&) immediately preceding a token will drop the most outer matching single or double quotes of the replacement argument. For example:
$macro f(i) sum(j, x(i,j)) $macro equ(q) equation equ_&q; equ_&q.. q =e= 0; equ(f(i))
will expand into:
equation equ_f(i); equ_f(i).. sum(j, x(i,j)) =e= 0;
The first step of the above expansion is shown below. GAMS will then only recognize the third occurrence of f(i) as a macro which will be expanded to give the above result.:
equation equ_f(i); equ_f(i).. f(i) =e= 0;
The actual calling arguments of macros can contain complex expressions and other macro calls. Multiple arguments are separated by commas. Pairs of parenthesis and quotes can be used freely to protect the separating comma.
$macro many(a,b) scalar x; x=a/&&b); display x; many((3/5),'(mod(3,2)')
Note that the second argument has unbalanced parenthesis and therefor needs to be enclosed in quotes to give the result below.
scalar x; x=(3/5)/(mod(3,2)); display x;
Some macro use can result in an expansion of infinite length. For example:
$macro a b,a display a;
will expand into:
display b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,...
GAMS will eventually refuse to do more substitutions and issue a compilation error.
The use of deeply nested macros may require the use of aliased sets in indexed operations like sum and prod. A minor syntax extension allows the implicit use of aliases. The suffix .local on a controlling set will use an implicit alias within the scope of the indexed operation. For example:
$macro qq(i) sum(i.local, b(i)) c(q) = qq(q);
will expand into:
c(q) = sum(q.local, b(q));
The use of the .local modifier is not limited to macros and can be used in any context.
Another feature motivated by the use of macros is the implicit use of the .l suffix in data manipulation statements. This allows using the same algebra in model definitions and assignment statements. The following code snippet illustrates this feature:
$macro D(s,h) INCOME(h)*alpha[s,h]*sum{s.local, alpha[s,h]*P[s]*
. . .
cmkt(s).. Y(s) =g= sum(h, D(s,h));
. . .
$onDotL
dl(s,h) = d(s,h); display dl;
where INCOME is another macro which calls a number of other nested macros. D(s,h) is now used to define the equation cmky and is also used in an assignment after the model has been solved. The $ondotl enables the implicit .l suffix for variables. This feature was introduced to make macros more useful and is not limited to be used in macro bodies. Since this a new feature it has to be enabled. The matching $offdotl will disable this feature.
Three more switches are relevant to macros. The $show will list any GAMS macros defined. The $onmacro/$offmacro will enable or disable the expansion of macros; the default is $onmacro. Finally, the $on/offexpand will change the processing of macros appearing in the arguments of a macro call. The default operation is not to expand macros in the arguments. The switch $onexpand enables the recognition and expansion of macros in the macro argument list. $offexpand will restore the default behavior.
Macro definitions are preserved in a save/restart file and are available again when performing a continued compilation.
The GAMS-F preprocessor combines aspects of traditional macros with that of functions and objects. The example 7 from the GAMS-F documentation using macros can be found in the GAMS model library under the name two3mac. Some of the main differences between GAMS macros and the GAMS-F preprocessor are:
<id> == <body>; to recognize a macro, we use $macro <id> <body> with the $ in position 1.$onmacro/offmacro. .local feature has been added to ensure local use and eliminates the need for new alias definitions..L when using in assignment statements. This is not a macro expansion feature, but a new GAMS feature that needs to be activated by $onDotL/$offDotLScenred2 is an updated and expanded version of the scenred utility for scenario reduction. Scenred2 is intended to be a replacement for the existing scenred, but we have made the newer version available as scenred2 due to some differences in the options used to control scenred's behavior. Having both available also facilitates comparisons between the two.
New features in scenred2 include:
two3mac (341): Simple 2 x 2 x 2 General Equilibrium Model Using Macros trnssdp (340): Solving the Transportation LP Problem using SDPgqapsdp (339): SDP Convexifications of the Generalized Quadratic Assignment Problemmaxcut (338): Goemans/Williamson Randomized Approximation Algorithm for MaxCutload4 (414): Tests various file opening options for GDX fileseigvec02 (413): Test Eigenvector/Eigenvalue utilitiescholes02 (412): Test 2 Cholesky utility choles01 (411): Test 1 Cholesky utility eigvec01 (410): Test Eigenvector utilityeigval01 (409): Test Eigenvalue utilityscnred01 (408): Basic Scenred2 test - tree construction scensol1 (407): Basic Scenario Solver Testgdxmerg2 (406): Bad acronym merge in gdxmerge gdx8 (405): Bad acronym mappinggdx7 (404): Bad acronym loadingmacro01 (403): Several macro testsassign2 (402): Test for bad assignment with .fxmcp08 (401): Test MCP that turfs up PATH preprocessing errorconvert6 (400): CONVERT test suite - hessian.gdxNew libraries 11.2
CPLEX 11.2 offers finer control for solution polishing. In previous
versions, the only stopping criterion for solution polishing was set
by the parameter PolishTime to limit time spent polishing a
solution. General stopping criteria, such as the time limit, absolute
MIP gap, relative MIP gap, MIP node limit or MIP integer solution
limit did not apply to solution polishing.
Now, however, CPLEX 11.2 allows the user to control more finely when
solution polishing terminates. In other words, the usual tolerances
(EpAGap and EpGapinitalized with GAMS parameters OptCA and OptCr)
and limits (IntSolLim, NodeLim and TiLim initialized with GAMS
paramter NodLim and ResLim) now apply to solution polishing.
In addition to those existing parameters that now control the termination of solution polishing, there are also new parameters specific to the starting conditions for solution polishing.
With these new parameters, a user can tell CPLEX when to switch from branch & cut to solution polishing. CPLEX is able to switch after it has found a feasible solution and put into place the MIP structures needed for solution polishing. When these two conditions are met (feasible solution and structures in place), CPLEX stops branch & cut and switches to solution polishing whenever the first of these starting conditions is met:
PolishAfterEpAGap)PolishAfterEpGap)PolishAfterIntSol)PolishAfterNode)PolishAfterTime)The new parameters are incompatible with the deprecated option PolishTime. If you use them together in an option file you will see an error like this:
Reading parameter(s) from "C:\tmp\cplex.opt" >> polishtime 5 *** Warning line 1: deprecated option "polishtime"; Use option polishafter... for finer solution polishing control. >> polishafterintsol 1 Finished reading from "cplex.opt" CPLEX Error 1807: Incompatible parameters. polishafterintsol: current = 2100000000, default = 2100000000, minimum = 1, maximum = 2100000000
A few examples with the corresponding GAMS/CPLEX option file:
TiLim 300 PolishAfterTime 100
PolishAfterIntSol 1
PolishAfterEpGap 0.1 EpGap 0.02
New libraries 5.0.1.292 now also for Sun Sparc Solaris
New libraries 4.7.01 fix preprocessing bug for both MCP and NLP front ends
Enhancements and bug fixes for the three experimental in-core communication solver links BDMLPD, CPLEXD and CONOPTD.
Solver/Platform availability - 22.9 December 1, 2008
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS HP 9000 |
HP-UX 111 DEC Alpha |
Digital Unix 4.03 IBM RS-6000 |
AIX 4.3 Mac PowerPC |
Darwin Mac Intel32 |
Darwin SGI |
IRIX2 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() |
BARON 8.1 |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
![]() |
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
|
|
![]() ![]() |
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 11.2 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 10.0 |
8.1 |
![]() |
![]() 9.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() ![]() ![]() |
|
![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() KNITRO 5.1 |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
|
|
|
![]() ![]() |
LINDOGLOBAL 5.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
|
|
![]() ![]() |
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 3.2 |
|
|
![]() ![]() |
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
![]() ![]() |
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
V2 |
|
![]() |
|
V2 |
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
|
|
![]() |
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() ![]() ![]() |
|
|
XPRESS 18.00 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
16.10 |
|
![]() |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 22.8 August 1, 2008 |
|---|
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, Andrea Consiglio, Anton Eremeev, Mustafa Esen,Josef Kallrath, Erwin Kalvelagen, Todd Munson, Rich Roberts, and Andres Ramos.
.scr to .dat. For distribution 22.8 it is still .scr. The scratch extension now is a parameter that can be changed with the GAMS option ScrExt, e.g gams trnsport scrext=tmp. Within GAMS code you get the scratch extension using %gams.scrext%.$LOAD directive can read the universe from a gdx file by specifying $LOAD id=*.gdxcompress and gdxconvert gdxconvert = <value> and gdxcompress = <value> or via GAMS command line parameters: gdxconvert = <value> and gdxcompress = <value>.gdxcompress0 (or empty): no compression 1: compression turned ongdxconvert:V7: version 7 V6: version 6 V5: version 5gams <model_name> gdxconvert=v6 gdxcompress=1 gdx=<gdx_file>.gdx2xls: Converts an entire gdx data container to a Microsoft Excel spread sheet. invert: Calculates the inverse of a matrix provided as a gdx file (for more information see gdxutils documentation). msappavail: Checks which Microsoft Office programs are installed.xlstalk: Allows some interaction with Excel to open/close/save Excel files.gdxcopy: New option to replace existing gdx files.gdxdiff New id option to compare specified ids only.gdxmerge New optional output parameter to specify the name of the output file.gdxviewer: Fixed problem with cube view.Fixed problem when moving a column to the plane in the gdx data viewer.
New models, including tests for
invert utilityls solvergdxconvert and gdxcompress parametersGAMS introduces the new model library 'GAMS Data Utilities' containing models that demonstrate the various utilities to interface GAMS with other applications.
The models of the forthcoming book PRACTICAL FINANCIAL OPTIMIZATION - A Library of GAMS Models by Andrea Coniglio, Soren Nielsen, and Stavros A. Zenios have been included in the GAMS distribution. It is a companion volume to the book Practical Financial Optimization by Stavros A. Zenios.
New libraries 8.1.5 for Windows, Linux, and AIX
GAMS 22.8 introduces a third experimental solver BDMLPD besides
CONOPTD and CPLEXD. They are very similar compared to their
professional brothers BDMLP, CONOPT and CPLEX. They lack some
functionality (e.g. CPLEXD does not solve QCP models) but offer in-core
communication between GAMS and the solver. No large model scratch files
need to be written to disk which can save time if you solve many models
in your GAMS program. This in-core execution is activated by setting <modelname>.solvelink=5; before the solve statement.
New option hessian to dump the Hessian matrix into a GDX file. Similar to the option jacobian.
New libraries 11.1.1
New libraries 5.0.1.292. Sun Sparc Solaris 5.0.1.274.
New libraries 5 Rev 90
New libraries for Windows
Solver/Platform availability - 22.8 August 1, 2008
| |
x86 |
MS Windows x86_64 |
MS Windows x86 |
Linux x86_64 |
Linux Sun Sparc |
SOLARIS Sun Sparc64 |
SOLARIS Sun Intel |
SOLARIS HP 9000 |
HP-UX 111 DEC Alpha |
Digital Unix 4.03 IBM RS-6000 |
AIX 4.3 Mac PowerPC |
Darwin Mac Intel32 |
Darwin SGI |
IRIX2 ALPHAECP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() |
BARON 8.1 |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
![]() |
|
|
BDMLP |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() COIN |
![]() ![]() ![]() ![]() |
|
![]() |
|
|
![]() ![]() |
CONOPT 3 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() CPLEX 11.1 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 10.0 |
8.1 |
![]() |
![]() 9.1 |
DECIS |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() ![]() ![]() |
|
![]() DICOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() KNITRO 5.1 |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
|
|
|
![]() ![]() |
LINDOGLOBAL 5.0 |
![]() ![]() ![]() ![]() ![]() ![]() |
|
|
|
![]() ![]() |
LGO |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() MILES |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MINOS |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MOSEK 5 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 3.2 |
|
|
![]() ![]() |
MPSGE |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() MSNLP |
![]() ![]() ![]() ![]() ![]() 32bit |
|
![]() |
|
![]() ![]() |
NLPEC |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() OQNLP |
![]() 32bit |
![]() 32bit |
|
|
|
|
|
|
|
|
|
OSL V3 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
V2 |
|
![]() |
|
V2 |
OSLSE |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
|
|
![]() |
|
|
PATH |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SBB |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() SNOPT |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() XA |
![]() 32bit |
![]() ![]() ![]() 32bit |
|
![]() ![]() ![]() |
|
|
XPRESS 18.00 |
![]() 32bit |
![]() 32bit |
![]() 32bit |
|
16.10 |
|
![]() |
|
|
1)GAMS distribution for HP 9000/HP-UX is 22.1. | 2)GAMS distribution for SGI IRIX is 22.3. | 3)GAMS distribution for DEC Alpha is 22.7. | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GAMS Distribution 22.7 May 1, 2008 |
|---|
We would like to thank all of our users who have reported problems and made suggestions for improving this release. In particular, we thank Jens Baudach, Michael Ferris, Josef Kallrath, Aldo Vecchietti and Stefan Vigerske.
The data statements have been enhanced to allow initial values for equations and variables in addition to set and parameter data. Those new data statements follow the syntax for list and table data statement for parameters by adding an additional dimension to specify the specific data attribute. The variable and equation suffixes can be used in this additional dimension. For example, the solution values for the transport example could be written as:
variable x(i,j) / (seattle.(new-york 50, chicago 300)
san-diego.(new-york,topeka) 275 ).l
seattle.topeka.m 0.36
san-diego.chicago.m 0.009 /
variable z / l 153.6750 /
equation demand(j) / (new-york 0.2250
chicago 0.1530
topeka 0.1260).m /;
Only the non default values need to be specified. The following attributes can be used according to the variable type:
.l level .m marginal .lo lower bound .up upper bound .scale scale value .prior priority for discrete variables .fx shorthand for setting .l,.lo and .up to the same value
With table style input all index positions have to appear in the row definition. For example we could write the above list oriented statement in table form as:
variable table x(i,j) initial values
l m
seattle. new-york 50
seattle. chicago 300
seattle. topeka 0.36
san-diego.new-york 275
san-diego.topeka 275
san-diego.chicago 0.009
As with other data statements, $onmulti, $ondelim
and $onempty can be used as well.
Mappings between n-tuples can be clumsy to enter via data
statements and are often difficult to compute. Similar to the product
operator (.) we introduced a match operator (:).
For example, the two set data statements give the same result:
Set I / t1*t6:s3*s5 /
Set j / t1.s3,t2.s4,t3.s5 /
In another example we may want to count "tuples" in some fashion:
sets h /h1*h24/, d /d1*d365/, dh(d,h) /#d.#h/
sets t /t1*t8760/, tdh(t,d,h) /#t:#dh/
The resulting set tdh will then have the values:
t1.d1.h1, t2.d1.h2, t3.d1.h3 ..
Currently there is no general matching operator for assignment statement. To facilitate some otherwise very clumsy and expensive calculations, one can use the following option statement:
Set ijk(I,j,k), x(I,j,k,l) ..
Option ijk(i:j,k), x(ijk:l);
This statement will first clear the set ijk,
then apply the matching operators to i and j
and finally apply a product operation to the matched (i,j)
with k which results in:
i1.j1.k1, i1.j1.k2, ..
i2.j2.k1, i2.j2.k2, ..
And x will match ijk
with the set l resulting in:
i1.j1.k1.l1, i1.j1.k2.l2, ..
In some applications it may be desirable to limit the amount of memory a GAMS job can use. HeapLimit (MB) is a new GAMS parameter and function/property that limits memory used to store dynamic data. If the dynamic data storage exceeds this limit, the job will be terminate with return code 10, out of memory. These features are especially useful in a server environment.
HeapLimit
sets the limit of memory use at compile and execution time for a GAMS
job HeapLimit
can be used to interrogate the current limit and allows it to be rest HeapLimit
option which ensures that the solver will not use more dynamic memory.range is defined as x.range=x.up−x.lo.
This provides a convenient way to see if a variable is fixed$eval and $ife
statement can now reference scalar parameters and the function card(id)$ondelim,
we can drop the dummy element in the column definition$load
setid=parameteridNew libraries (version 8.1.4)
New libraries (version 11.0.1)
option
mip=coinscip; (Experimental) Framework for automated mathematical programming reformulations as
Thereby new upcoming model types are reformulated into established math programming classes in order to use mature solver technology. EMP comes free of charge with any licensed GAMS system but needs a subsolver to solve the generated models.
LogMIP 1.0 is a program for solving linear and nonlinear disjunctive programming problems involving binary variables and disjunction definitions for modeling discrete choices. While the modeling and solution of these disjunctive optimization problems has not yet reached the stage of maturity and reliability as LP, MIP and NLP modeling, these problems have a rich area of applications. LogMIP 1.0 has been developed by A. Vecchietti, J.J. Gil and L. Catania at INGAR (Santa Fe-Argentina) and Ignacio E. Grossmann at Carnegie Mellon University (Pittsburgh-USA) and is composed of:
LogMIP comes free of charge with any licensed Windows GAMS system but needs a subsolver to solve the generated MIP/MINLP models. For more information see
New libraries (version 5.0.0.79)
GAMS 22.7 introduces two experimental solvers: CPLEXD and
CONOPTD. They are very similar compared to their professional brothers
CPLEX and CONOPT. They lack some functionality (e.g. CPLEXD does not
solve QCP models) but offer in-core communication between GAMS and the
solver. No large model scratch files need to be written to disk which
can save time if you solve many models in your GAMS program. This
in-core execution is activated by setting
modelname.solvelink=5; before the solve statement.
| Solver/Platform availability - 22.7: May 1, 2008 | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| x86 MS Windows |
x86_64 MS Windows |
x86 Linux |
x86_64 Linux |
Sun Sparc SOLARIS |
Sun Sparc64 SOLARIS |
Sun Intel SOLARIS |
HP 9000 HP-UX 111 |
DEC Alpha Digital Unix 4.0 |
IBM RS-6000 AIX 4.3 |
Mac PowerPC Darwin |
Mac Intel32 Darwin |
SGI IRIX2 |
||
| ALPHAECP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||
| BARON 8.1 | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||||||
| BDMLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| COIN | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||||
| CONOPT 3 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| CPLEX 11.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
10.0 | 8.1 | ![]() |
![]() |
9.1 | ||
| DECIS | ![]() |
![]() |
![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
|||
| DICOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| KNITRO 5.1 | ![]() |
32bit | ![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
||||||
| LINDOGLOBAL 5.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||
| LGO | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
| MILES | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MINOS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MOSEK 5 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
3.2 | ![]() |
![]() |
||||
| MPSGE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MSNLP | ![]() |
![]() |
![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
|||||
| NLPEC | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| OQNLP | ![]() |
32bit | ![]() |
32bit | ||||||||||
| OSL V3 | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | V2 | ![]() |
V2 | |||||
| OSLSE | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||||
| PATH | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| SBB | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| SNOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| XA | ![]() |
32bit | ![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
|||||
| XPRESS 18.00 | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | 16.10 | ![]() |
||||||
| 1)GAMS distribution for HP 9000/HP-UX is 22.1. | ||||||||||||||
| 2)GAMS distribution for SGI
IRIX is 22.3. |
||||||||||||||
| GAMS Distribution 22.6 December 24, 2007 |
|---|
| Solver/Platform availability - 22.6 December 24, 2007 | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| x86 MS Windows |
x86_64 MS Windows |
x86 Linux |
x86_64 Linux |
Sun Sparc SOLARIS |
Sun Sparc64 SOLARIS |
Sun Intel SOLARIS |
HP 9000 HP-UX 111 |
DEC Alpha Digital Unix 4.0 |
IBM RS-6000 AIX 4.3 |
Mac PowerPC Darwin |
Mac Intel32 Darwin |
SGI IRIX2 |
||
| ALPHAECP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||
| BARON 8.1 | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||||||
| BDMLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| COIN | ![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
|||||||
| CONOPT 3 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| CPLEX 11.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
10.0 | 8.1 | ![]() |
![]() |
9.1 | ||
| DECIS | ![]() |
![]() |
![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
|||
| DICOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| KNITRO 5.1 | ![]() |
32bit | ![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
||||||
| LINDOGLOBAL 5.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||
| LGO | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
| MILES | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MINOS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MOSEK 5 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
3.2 | ![]() |
![]() |
||||
| MPSGE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MSNLP | ![]() |
![]() |
![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
|||||
| NLPEC | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| OQNLP | ![]() |
32bit | ![]() |
32bit | ||||||||||
| OSL V3 | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | V2 | ![]() |
V2 | |||||
| OSLSE | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||||
| PATH | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| SBB | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| SNOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| XA | ![]() |
32bit | ![]() |
![]() |
![]() |
32bit | ![]() |
![]() |
![]() |
|||||
| XPRESS 18.00 | ![]() |
32bit | ![]() |
32bit | ![]() |
32bit | 16.10 | ![]() |
||||||
| 1)GAMS distribution for HP 9000/HP-UX is 22.1. | ||||||||||||||
| 2)GAMS distribution for SGI IRIX is 22.3. | ||||||||||||||
| GAMS Distribution 22.5 June 1, 2007 |
|---|
| Solver/Platform availability - 22.5 June 1, 2007 | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| x86 MS Windows |
x86_64 MS Windows |
x86 Linux |
x86_64 Linux |
Sun Sparc SOLARIS |
Sun Intel SOLARIS |
HP 9000 HP-UX 111 |
DEC Alpha Digital Unix 4.0 |
IBM RS-6000 AIX 4.3 |
Mac PowerPC Darwin |
|||||
| ALPHAECP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||
| BARON 7.8 | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||||||
| BDMLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| COIN | ![]() |
32bit | ![]() |
![]() |
![]() |
|||||||||
| CONOPT 3 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| CPLEX 10.2 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
10.0 | 8.1 | ![]() |
|||||
| DECIS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||
| DICOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| KNITRO 5.1 | ![]() |
32bit | ![]() |
![]() |
![]() |
|||||||||
| LINDOGLOBAL 4.1 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||||
| LGO | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||
| MILES | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| MINOS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| MOSEK 4 | ![]() |
![]() |
![]() |
![]() |
![]() |
3.2 | ![]() |
|||||||
| MPSGE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| MSNLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||
| NLPEC | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| OQNLP | ![]() |
32bit | ![]() |
32bit | ||||||||||
| OSL V3 | ![]() |
32bit | ![]() |
32bit | ![]() |
![]() |
V2 | ![]() |
||||||
| OSLSE | ![]() |
32bit | ![]() |
32bit | ![]() |
![]() |
||||||||
| PATH | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| SBB | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| SNOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
| XA | ![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||
| XPRESS 17.10 | ![]() |
32bit | ![]() |
32bit | ![]() |
16.10 | ![]() |
|||||||
| 1)GAMS distribution for HP 9000/HP-UX is 22.1. | ||||||||||||||
| 2)GAMS distribution for SGI IRIX is 22.3. | ||||||||||||||
| GAMS Distribution 22.4 Feb 14, 2007 |
|---|
| GAMS Distribution 22.3 November 27, 2006 |
|---|
| Solver/Platform availability - 22.3 November 27, 2006 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| x86 MS Windows |
x86_64 MS Windows |
x86 Linux |
x86_64 Linux |
Sun Sparc SOLARIS |
HP 90001 HP-UX 11 |
DEC Alpha Digital Unix 4.0 |
IBM RS-6000 AIX 4.3 |
SGI IRIX |
Mac PowerPC Darwin |
|
| BARON 7.7 | ![]() |
32bit | ![]() |
32bit | ![]() |
|||||
| BDMLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| COIN | ![]() |
![]() |
![]() |
![]() |
![]() |
|||||
| CONOPT 3 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| CPLEX 10.1 | ![]() |
![]() |
![]() |
![]() |
![]() |
10.0 | 8.1 | ![]() |
9.1 | |
| DECIS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| DICOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| KNITRO 5.0 | ![]() |
32bit | ![]() |
![]() |
![]() |
|||||
| LGO | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MILES | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MINOS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MOSEK 4 | ![]() |
![]() |
![]() |
![]() |
![]() |
3.2 | ![]() |
|||
| MPSGE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MSNLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
| NLPEC | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| OQNLP | ![]() |
32bit | ![]() |
32bit | ||||||
| OSL V3 | ![]() |
32bit | ![]() |
32bit | ![]() |
V2 | ![]() |
V2 | ||
| OSLSE | ![]() |
32bit | ![]() |
32bit | ![]() |
![]() |
||||
| PATH | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| SBB | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| SNOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| XA | ![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
| XPRESS 17.10 | ![]() |
32bit | ![]() |
32bit | ![]() |
16.10 | ![]() |
|||
| Distribution 22.2 Apr 21, 2006 |
|---|
Distribution 22.2 is a maintenance release to correct some performance issues in the GAMS system and include newly available solver libraries.
| Distribution 22.1 Mar 15, 2006 |
|---|
The priority attribute of a discrete variable can be used to relax a specific variable instance. The priority attribute .prior establishes in what order variables are to be fixed to integral values while searching for a solution. Variables with a specific .prior value will remain relaxed until all variables with a lower .prior values have been fixed. Setting the .prior value to +inf will relax this variable permanently. This relaxation is done independent of the model attribute .prioropt.
This feature is useful in solving difficult discrete models. The Model Library model "Linear Recursive Sequence Optimization Model" (lrs.gms) illustrates the use of this feature that specifies that only the first n variables of k are binary, whereas the remaining ones are fractional. This is simply expressed as follows:
SET t time horizon /1*350/, f(t) first N steps /1*48/;
Binary Variable k(t);
...
k.prior(t) = inf; k.prior(f) = 1;
Calculations involving slacks and infeasibilities have been simplified with four new derived attributes. These attributes are defined on equations and variables as follows:
x.slacklo = max(x.l-x.lo,0);Note that the slacks or infeasibilities will always be zero or positive.
x.slackup = max(x.up-x.l,0);
x.slack = min(x.slacklo,x.slackup);
x.infeas = - min(x.l-x.lo,x.lu-x.l,0);
The entries of a model list can now contain previously defined models. For example:
Model one / e1,e2,e3 /The model two will now contain equations e1,e2,e3,e4. The model three will contain all of model two plus equation e5.
two / one, e4 /
three / two, e5 /;
$IF DEXIST directory command
$IFI DEXIST directory command
| GAMS Distribution 22.0 August 1, 2005 |
|---|
| Distribution 21.7 April 1, 2005 |
|---|
| Solver/Platform availability - 21.7 | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Intel MS Windows |
x86_64 Linux |
Intel Linux |
Sun Sparc SOLARIS |
HP 9000 HP-UX 11 |
DEC Alpha Digital Unix 4.0 |
IBM RS-6000 AIX 4.3 |
SGI IRIX |
Mac PowerPC Darwin |
|
| BARON 7.2 | ![]() |
32bit | ![]() |
![]() |
|||||
| BDMLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| COIN | ![]() |
![]() |
![]() |
![]() |
|||||
| CONOPT 3 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| CPLEX 9.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
8.1 | ![]() |
![]() |
|
| DECIS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| DICOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| KNITRO 4.0 | ![]() |
32bit | ![]() |
||||||
| LGO | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
| MILES | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MINOS | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MOSEK 3.2 | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||
| MPSGE | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| MSNLP | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
| OQNLP | ![]() |
32bit | ![]() |
||||||
| OSL V3 | ![]() |
32bit | ![]() |
![]() |
V2 | ![]() |
V2 | ||
| OSLSE | ![]() |
32bit | ![]() |
![]() |
![]() |
||||
| PATH | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| SBB | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| SNOPT | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| XA | ![]() |
32bit | ![]() |
![]() |
![]() |
![]() |
![]() |
||
| XPRESS 15.25 | ![]() |
32bit | ![]() |
![]() |
15.20 | 15.20 | |||
| Distribution 21.6 January 26, 2005 |
|---|
Distribution 21.6 is a maintenance release to include newly available solver libraries.
$SetEnv name value
$DropEnv name
$PrefixPath value
%SysEnv.name%
$if SetEnv name
> gamslib trnsport
> echo coinfml > convert.opt
> gams trnsport optfile=1 lp=convert
> fml2gms coinfml.xml
> gams fml2gms.gms
| Distribution 21.5 November 11, 2004 |
|---|
Distribution 21.5 is a maintenance release to include newly available solver libraries and minor enhancements in the GAMS system, as well as introduce the interior-point NLP solver KNITRO from Ziena Optimization.
The $on/offVerbatim commands are only recognized for DUMPOPT >= 10 and apply only to lines in the file the commands appeared.
The use of $goto and $on/offVerbatim are incompatible and may produce unexpected results.
put 'text A with a double quote "' "text A with a single quote '" /
put 'text B with a double quote "' "text B with a single quote '" /
put 'text C with a double quote "' "text C with a single quote '" /
This may be cumbersome. The use of $on/offPut will result in the same text written to the put file without having to specify the 'put' explicitly for each line and allows you to specify mixed quotes in a single statement. Consider the following example:
file fx;
put fx 'text with " and ' "' required a split of the text" /
$onput
With the new on/off put we can freely
mix and match ' and " characters.
$offput
;
It also works outside of the put statement:
$onput
It even works outisde the put statement,
as long as a put file is assigned.
$offput
$if NOT set one $set one default value
display '%two%';
$setddlist three four
The following GAMS invocation will cause an error since --five is not a valid 'double dash' option.
> gams ein.gms --two=twovalue --five=20
1 Display 'twovalue'
**** --five=20
3 $setddlist three four $620
>
alias(*,u);
loop(SortedUels(u,i),
put / i.tl i.te(i) );
| Distribution 21.4 September 6, 2004 |
|---|
The definitions and notation for incomplete and regularized gamma and beta functions are not consistent, For example, note the differences with the definitions used in Mathematica:
GAMS Mathematica
Gamma(a) Gamma[a]
LogGamma(a) LogGamma[a]
GammaReg(x,a) GammaRegularized[a,0,x]
Beta(a,b) Beta[a,b]
LogBeta(a,b) Log[Beta[a,b]]
BetaReg(x,a,b) BetaRegularized[x,a,b]
A comparison of the execution times in seconds:
Sets i / i1*i700 /
j / j1*j700 /
k / k1*k500 /
ik(i,k);
Parameters aij(i,j) bji(j,i), cjk(j,k), dij(i,j);
ik(i,k)$(uniform(0,1) < 0.01) = yes;
aij(i,j) = uniform(0,1);
bji(j,i) = aij(i,j);
cjk(j,k) = sum(ik(i,k), aij(i,j));
dij(i,j) $(aij(i,'j700') > 0.5) = bji(j, 'i700')
Assignment sys11=1 sys11=0
Bji 2.7 0.36
Cjk 25.0 2.38
Dij 4.7 0.39
Set i /i1*i2000/,A comparison of execution times in seconds:
j /j1*j20000/;
Parameter Ai(i),Bj(j);
Ai(i - 1) = Ord(i);
Bj(j - 1) = Ord(j);
Assignment previous current
Ai 0.02 0.0
Bj 3.2 0.0
Set i(k,l) / a.a 'aaaa cccc dddd', b.a 'bbbb cccc dddd' /For parameters, the final value will be the product of the embedded values. If no value is specified, a value of 1 is assumed. For example, the values for x and y will be the same:
$onembedded
Set j(k,l) / (a aaaa, b bbbb).(a cccc) dddd /
Parameter x(k,l) / a.a 24, b.a 12, c.a 4, c.b 4, d.a 6, d.b 6 /
$onembedded
Parameter y(k,l) / (a 2, b).(a 3) 4, (c 2,d 3).((a,b) 2) /
h = EDist.hess(2:4:1,2,3,4,5);If the needed element position index is one, we can drop the argument as shown below:
g = exp.grad(1:5) or g = exp.grad(5);
h = log.hess(1:1:3) or h = log.hess(3);
hess(i,j) = betareg.hess(ord(i):ord(j):expr1,expr2,expr3);
| Distribution 21.3 January 19, 2004 |
|---|
This new option directs GAMS to write solutions to GDX files for later use in the same or other programs. This may be helpful in cases when we want to provide good starting points or process large number of solutions at a later stage. The new option values are:
Option left < right, left <= right,..;Where left and right are gams identifiers with conforming domain declarations. The dimensionality of the left symbol has to be equal or less than the dimensionality of the right side. If the left dimensionality is less than the right one, the operation performed is an aggregation or projection depending on the data type of the left side. In all cases, indices are permuted according to the domain definitions. If a symbol has identical domain definitions they are permuted right to left (<) or left to right (<=). For example, assume we have
Set i, fromto(i,i), tofrom(i,i); alias(i,ii); parameter in(i),out(i);is equivalent to
option tofrom < fromto, in < fromto, out <= fromto;
tofrom(i,ii) = fromto(ii,i);
in(i) = sum(fromto(ii,i),1);
out(i) = sum(fromto(i,ii), 1);
> testlib mpsge01
> gams mpsge01
| Distribution 21.2 September 3, 2003 |
|---|
Distribution 21.2 is a maintenance release.
| Distribution 21.1 June 2, 2003 |
|---|
Distribution 21.1 is a maintenance release.
| Distribution 21.0 May 15, 2003 |
|---|
CONOPT3 is an enhancement of CONOPT2. An additional solver component based on sequential quadratic programming (SQP) principles has been added and it uses the new 2nd order facilities in GAMS. In addition, an improved automatic scaling routines is now used as default.
CONOPT3 is a true multi-method solver that combines its many solver components (SQP, SLP or sequential linear programming, Quasi-Newton, and Steepest Descend) with dynamic selection of the best component based on performance statistics.
CONOPT2 is, apart from minor bug fixes, identical to CONOPT2 from the previous release. CONOPT1 has not been changed and it will not be updated any more. We encourage all CONOPT1 user to move on to CONOPT3 or CONOPT2.
| Distribution 20.7 June 14, 2002 |
|---|
Distribution 20.7 is a maintenance release.
| Distribution 20.6 May 25, 2002 |
|---|
| Distribution 20.5 January 28, 2002 |
|---|
Distribution 20.5 is a maintenance release.
| Distribution 20.4 January 21, 2002 |
|---|
Distribution 20.4 is a maintenance release.
| Distribution 20.3 December 24, 2001 |
|---|
Performance enhancements for very large models with millions of rows and columns.
Minor language enhancements:
$on/offecho copies a block of lines to a file. The text is subject to
string macro processing as well as inline and eol comment removal.
For example:
$onecho > myfileTo append to a file use ">>".
...
$offecho
For the following solvers the naming convention has changed:
| New Name (20.3-) | Old Name (-20.2) |
|---|---|
| CONOPT or CONOPT2 | CONOPT2 |
| CONOPT3 | CONOPT3 |
| CONOPT1 | CONOPT |
| OSL or OSL2 | OSL2 |
| OSL3 | OSL3 |
| OSL1 | OSL |
| MINOS or MINOS55 | MINOS |
| MINOS5 | MINOS5 |
| PATH or PATHC | PATHC |
| PATHOLD | PATH |
| MILES or MILESE | MILESE |
| MILESOLD | MILES |
| Distribution 20.2 November 22, 2001 |
|---|
Distribution 20.2 is mostly a maintenance release.
| Distribution 20.1 October 31, 2001 |
|---|
A new licensed Privacy and Security feature which allows to purge, hide or protect model data and model components from unauthorized use. Models and data that are saved with the privacy feature enabled are locked to a specific license and protected. For more details consult the corresponding appendix of the GAMS Users Guide..
A new GAMS parameter EXECMODE can be used to reconfigure certain features when operating in an application service environment. $call/execute, $echo/put and $includes can be disabled or restricted to operate only on certain sub trees of the file system.
Model options can be initialized from the command line or the GAMS parameter window in the IDE (bratio, iterlim, domlim, reslim, optcr, optca, sysout, solprint, optfile and all solvers for model types). For example:
>gams myfile LP=BDMLP RESLIM=10will override the default solver to be BDMLP and force an interrupted after 10 seconds.
Other minor language enhancements are:
A number of restrictions have been relaxed:
GAMS environment variables can now be initialized or reset from the command line or parameter window. The prefix -- signals an environment variable. For example:
>gams myfile --mypath="d:a b"is equivalent to inserting '$set mypath d:a b' in the GAMS input file. The GAMS parameter SETTYPE (ST) values of 0 (default), 1 and 2 change the implied $set command to $set/setlocal/setglobal respectively.
The evaluation of nonlinear expressions inside solvers of
the form
Derivatives for 0**0 are not defined and may cause problems during the solution process. Warnings are issued when this case arises.
We added a couple of MINLP models:
The COPS models have been added:
This solver is also available as an e-mail based service from the GAMS World.
The demo size for this solver is reduced to 10 variables and 10 equations. The beta version of BARON is available on Windows, Linux and AIX.