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.

◆◆●●at problem modification;at normal termination;from Concert Technology,●●when you call env.endwhen you modify the extracted modelfrom the Callable Library,●when you call a problem modification routine;● when you call CPXfreeprob.If a program terminates abnormally, the files are not removed.Node files could grow very large. Use the parameter TreLim (CPX_PARAM_TRELIM) to limitthe size of the tree so that it does not exceed available disk space, when you chooseNodeFileInd (CPX_PARAM_NODEFILEIND) settings 2 or 3. It is usually better to let<strong>ILOG</strong> <strong>CPLEX</strong> terminate the run gracefully, with whatever current feasible solution has beenfound, than to trigger an error message or even a program abort.When <strong>ILOG</strong> <strong>CPLEX</strong> uses node-file storage, the sequence of nodes processed may differfrom the sequence in which nodes are processed without node-file storage. Nodes innode-file storage are not accessible to user-written callback routines.Change AlgorithmsThe best approach to reduce memory use is to modify the solution process. Here are someways to do so:◆◆Switch the node selection strategy to best estimate, or more drastically to depth-first, asexplained in Table 14.6 on page 268. Depth-first search rarely generates a long,memory-consuming list of unexplored nodes since <strong>ILOG</strong> <strong>CPLEX</strong> dives deeply into thetree instead of jumping around. A narrowly focused search, like depth-first, also oftenresults in faster processing times for individual nodes. However, overall solution time isgenerally much worse than with best-bound node selection because each branch issearched exhaustively to its deepest level before it is fathomed in favor of betterbranches.Another memory-conserving strategy is to use strong branching for variable selection;that is, set the parameter VarSel (CPX_PARAM_VARSEL) to the value 3. Strongbranching requires substantial computational effort at each node to decide the bestbranching variable. As a result, it generates fewer nodes and thus makes less overalldemand on memory. Often, strong branching is faster as well.296 <strong>ILOG</strong> <strong>CPLEX</strong> <strong>11.0</strong> — USER’ S MANUAL

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

Saved successfully!

Ooh no, something went wrong!