|
| 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 225? 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.