10.07.2015 Views

CPLEX 11

CPLEX 11

CPLEX 11

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

<strong>CPLEX</strong> <strong>11</strong> 4• You can collect all solutions or all optimal solutions to model. To do so, set the solution pool intensityparameter SolnPoolIntensity to its highest value.Filling the Solution PoolThere are two ways to fill the solution pool associated with a model: You can accumulate successive incumbentsor generate alternative solutions by populating the solution pool. The method is selected with the parameterSolnPoolPop:• The regular optimization procedure automatically adds incumbents to the solution pool as they are discovered(SolnPoolPop=1).• Cplex also provides a procedure specifically to generate multiple solutions. You can invoke this procedure bysetting option SolnPoolPop=2. You can also invoke this procedure many times in a row in order to explorethe solution space differently. In particular, you may invoke this procedure multiple times to find additionalsolutions, especially if the first solutions found are not satisfactory. This is done by specifying a GAMSprogram (option SolnPoolPopRepeat) that inspects the solutions. In case this GAMS program terminatesnormally, i.e. no execution or compilation error, the exploration for alternative solutions proceeds.The option SolnPoolReplace designates the strategy for replacing a solution in the solution pool when thesolution pool has reached its capacity. The value 0 replaces solutions according to a first-in, first-out policy. Thevalue 1 keeps the solutions with the best objective values. The value 2 replaces solutions in order to build a setof diverse solutions.If the solutions you obtain are too similar to each other, try setting SolnPoolReplace to 2.The replacement strategy applies only to the subset of solutions created in the current call of populate. Solutionsalready in the pool are not affected by the replacement strategy. They will not be replaced, even if they satisfythe criterion of the replacement strategy. So with every repeated call of the populate procedure the solutionpool will be extended by the newly found solution. After the GAMS program specified in SolnPoolPopRepeatdetermined to continue the search for alternative solutions, the file specified by option SolnPoolPopDel optionis read in. The solution numbers present in this file will be delete from the solution pool before the populateroutine is called again. The file is automatically deleted by the GAMS/Cplex link after processing.Details can be found in the model solnpool in the GAMS model library.Enumerating All SolutionsWith the solution pool, you can collect all solutions to a model. To do so, set the solution pool intensity parameterSolnPoolIntensity to its highest value, 4 and set SolnPoolPop=2.You can also enumerate all solutions that are valid for a specific criterion. For example, if you want to enumerateall alternative optimal solutions, do the following:• Set the pool absolute gap parameter SolnPoolAGap=0.0.• Set the pool intensity parameter SolnPoolIntensity=4.• Set the populate limit parameter PopulateLim to a value sufficiently large for your model; for example,2100000000.• Set the pool population parameter SolnPoolPop=2.Beware, however, that, even for small models, the number of possible solutions is likely to be huge. Consequently,enumerating all of them will take time and consume a large quantity of memory.There may be an infinite number of possible values for a continuous variable, and it is not practical to enumerateall of them on a finite-precision computer. Therefore, populate gives only one solution for each set of binary

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

Saved successfully!

Ooh no, something went wrong!