16.01.2015 Views

GAMS — The Solver Manuals - Available Software

GAMS — The Solver Manuals - Available Software

GAMS — The Solver Manuals - Available Software

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

166 CPLEX 11<br />

individual GDX solution file. <strong>The</strong> name is constructed using the prefix soln (which can be specified differently<br />

by option SolnPoolPrefix), the name of the model and a sequence number. For example soln loc p1.gdx.<br />

<strong>GAMS</strong>/Cplex will overwrite existing GDX files without warning. <strong>The</strong> set Index allows us to conveniently walk<br />

through the different solutions in the solution pool:<br />

...<br />

solve mymodel min z using mip;<br />

set soln<br />

possible solutions in the solution pool /file1*file1000/<br />

solnpool(soln) actual solutions;<br />

file fsol;<br />

execute_load ’solnpool.gdx’, solnpool=Index;<br />

loop(solnpool(soln),<br />

put_utility fsol ’gdxin’ / solnpool.te(soln):0:0;<br />

execute_loadpoint;<br />

display z.l;<br />

);<br />

4 <strong>GAMS</strong> Options<br />

<strong>The</strong> following <strong>GAMS</strong> options are used by <strong>GAMS</strong>/Cplex:<br />

Option Bratio = x;<br />

Determines whether or not to use an advanced basis. A value of 1.0 causes <strong>GAMS</strong> to instruct Cplex not<br />

to use an advanced basis. A value of 0.0 causes <strong>GAMS</strong> to construct a basis from whatever information is<br />

available. <strong>The</strong> default value of 0.25 will nearly always cause <strong>GAMS</strong> to pass along an advanced basis if a<br />

solve statement has previously been executed.<br />

Option IterLim = n;<br />

Sets the simplex iteration limit. Simplex algorithms will terminate and pass on the current solution to<br />

<strong>GAMS</strong>. In case a pre-solve is done, the post-solve routine will be invoked before reporting the solution.<br />

Cplex handles the iteration limit for MIP problems differently than some other <strong>GAMS</strong> solvers. <strong>The</strong> iteration<br />

limit is applied per node instead of as a total over all nodes. For MIP problems, controlling the length of<br />

the solution run by limiting the execution time (ResLim) is preferable.<br />

Simlarly, when using the sifting algorithm, the iteration limit is applied per sifting iteration (ie per LP).<br />

<strong>The</strong> number of sifting iterations (LPs) can be limited by setting Cplex parameter siftitlim. It is the number<br />

of sifting iterations that is reported back to <strong>GAMS</strong> as iterations used.<br />

Option ResLim = x;<br />

Sets the time limit in seconds. <strong>The</strong> algorithm will terminate and pass on the current solution to <strong>GAMS</strong>. In<br />

case a pre-solve is done, the post-solve routine will be invoked before reporting the solution.<br />

Option SysOut = On;<br />

Will echo Cplex messages to the <strong>GAMS</strong> listing file. This option may be useful in case of a solver failure.<br />

ModelName.Cheat = x;<br />

Cheat value: each new integer solution must be at least x better than the previous one. Can speed up the<br />

search, but you may miss the optimal solution. <strong>The</strong> cheat parameter is specified in absolute terms (like the<br />

OptCA option). <strong>The</strong> Cplex option objdif overrides the <strong>GAMS</strong> cheat parameter.<br />

ModelName.Cutoff = x;<br />

Cutoff value. When the branch and bound search starts, the parts of the tree with an objective worse than<br />

x are deleted. This can sometimes speed up the initial phase of the branch and bound algorithm.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!