solution pool replacement strategy

Designates the strategy for replacing a solution in the solution pool when the solution pool has reached its capacity.

Purpose

Solution pool replacement strategy

API Parameter Name Name prior to V12.6.0
C CPXPARAM_MIP_Pool_Replace CPX_PARAM_SOLNPOOLREPLACE
C++ IloCplex::Param::MIP::Pool::Replace SolnPoolReplace (int)
Java IloCplex.Param.MIP.Pool.Replace SolnPoolReplace (int)
.NET Cplex.Param.MIP.Pool.Replace SolnPoolReplace (int)
OPL solnpoolreplace solnpoolreplace
Python parameters.mip.pool.replace mip.pool.replace
Interactive mip pool replace mip pool replace
Identifier 2104 2104

Description

Designates the strategy for replacing a solution in the solution pool when the solution pool has reached its capacity.

The value 0 (CPX_SOLNPOOL_FIFO ) replaces solutions according to a first-in, first-out policy. The value 1 (CPX_SOLNPOOL_OBJ ) keeps the solutions with the best objective values. The value 2 (CPX_SOLNPOOL_DIV ) replaces solutions in order to build a set of diverse solutions. When the value is 2, CPLEX considers only variables of the type binary or integer (not continuous variables) to calculate diversity in the replacement strategy.

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 MIP optimization or populate. Solutions already in the pool are not affected by the replacement strategy. They will not be replaced, even if they satisfy the criterion of the replacement strategy.

Table 1. Values
Value Symbol Meaning
0 CPX_SOLNPOOL_FIFO Replace the first solution (oldest) by the most recent solution; first in, first out; default
1 CPX_SOLNPOOL_OBJ Replace the solution which has the worst objective
2 CPX_SOLNPOOL_DIV Replace solutions in order to build a set of diverse solutions