Example: Using Populate after MIP Optimization |
INDEX PREVIOUS NEXT |
After invoking MIP Optimization, you can generate additional solutions with populate. You can use this possibility to get a few additional solutions quickly if the solutions obtained during MIP Optimization are not satisfactory. However, as explained in Advanced Use: Interaction of MIP Optimization and Populate, the sequence MIP Optimization followed by populate is especially useful to control the parameters and the stopping criteria of each phase of populate.
Consider again the model in Example: Simple Facility Location Problem. Suppose that the transportations costs are subject to fluctuations, and consequently it does not make sense to spend time optimizing the model exactly to optimality. You can set the MIP gap tolerance (EpAGap
, CPX_PARAM_EPAGAP
and EpGap
, CPX_PARAM_EPGAP
) to a value higher than the default (in this example: 5%) so that the MIP optimization, which constitutes the first phase of populate, stops earlier. Then, populate will go immediately into the second phase, so it can start producing solutions sooner.
The commands to reproduce this situation looks like this in the Interactive Optimizer:
read location.lp set mip pool intensity 2 set mip tolerances mipgap 0.05 mipopt populate |
MIP optimization (as executed by mipopt
in the Interactive Optimizer) shows these results:
Populate (following mipopt
in the Interactive Optimizer) shows results like these:
In this example, the pool intensity parameter (SolnPoolIntensity
, CPX_PARAM_SOLNPOOLINTENSITY
) is set to 2 because the default automatic value of this parameter for the sequence MIP optimization followed by populate is not the fastest possible setting for generating a large number of solutions. If you use this sequence of commands to control precisely the behavior of the optimizer in the first and second phase of populate, it is a good idea to reset the pool intensity parameter yourself, rather than relying on its default value.
Copyright © 1987-2007 ILOG S.A. All rights reserved. Legal terms. | PREVIOUS NEXT |