12.07.2015 Views

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

generate solutions of both improving and degrading objective value, and it will stop onlywhen it cannot generate any additional solutions or because other stopping criteria intervene.In order to decide which procedure is better for your application, you should first try theMIP optimizer. If the solutions produced are sufficient for your application, then the MIPoptimizer is the appropriate choice. If not, then you should try populate to generate moresolutions and to have more control over the properties of the generated solutions.Advanced Use: Interaction of MIP Optimization and PopulateShould you call MIP optimization and then populate, or should you call populate alone?You can call populate after you call the MIP optimizer, or you can call populate on its ownafter you read or create a model. In order to decide which to do, you need to know moreabout the two procedures.Recall that the algorithm underlying populate works in two phases. If you call the MIPoptimizer after the model is read, it will gather and store information about the search as itsolves the model. In practice, its activity constitutes the first phase of the populate algorithm.In the general case, if you then call populate, populate will re-use the information stored bythe MIP optimizer and carry out only the second phase.In contrast, if you call populate immediately after the model is read, populate will performboth the first phase and the second phase.If you specify a nondefault setting of the pool intensity parameter, then calling the MIPoptimizer and afterwards calling populate will give the same results in terms of performanceand solutions generated as calling populate alone. (The exception to this generalizationoccurs when the pool intensity parameter is set at its default value, 0 (zero) that is,automatic. For details about that case, see the documentation of the solution pool intensityparameter.)Calling populate alone is simpler than calling populate after MIP optimization. However, ifyou want more control over the details of the two phases (for example, if you want to specifydifferent stopping criteria for each phase), then you need to call MIP optimization followedby populate, instead of calling populate alone. The risk associated with this approach is thatpopulate might not be able to reuse the information about the tree from the previous MIPoptimization; in that case, populate will start from scratch; that is, it again performs the firstphase, followed by the second phase. In particular, this repetition of the first phase willhappen if you increase the pool intensity parameter between the call to MIP optimizationand the call to populate.More information about this topic can be found the documentation about the parameterSolnPoolIntensity (CPX_PARAM_SOLNPOOLINTENSITY) in the <strong>ILOG</strong> <strong>CPLEX</strong>Parameter Reference <strong>Manual</strong>.In short, if you want the simplicity of a black box, call populate alone; if you need morecontrol, call MIP optimization, then populate.<strong>ILOG</strong> <strong>CPLEX</strong> <strong>11.0</strong> — USER’ S MANUAL 311

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

Saved successfully!

Ooh no, something went wrong!