Selecting nodes

Describes options of the parameter to control selection of strategies applied at nodes and their effect on the search.

When CPLEX backtracks, there usually remain large numbers of unexplored nodes from which to begin a new dive. The node selection parameter sets this choice. (For documentation of the node selection parameter, see MIP node selection strategy in the CPLEX Parameters Reference Manual.)

Table 1. Node selection parameter settings for node search type
Value of the parameter Symbolic Value Node Search Type
1 (Default) CPX_NODESEL_BESTBOUND Best Bound search, which means that the node with the best objective function will be selected, generally near the top of the tree.
2 CPX_NODESEL_BESTEST Best Estimate search, whereby CPLEX will use an estimate of a given node's progress toward integer feasibility relative to its degradation of the objective function. This setting can be useful in cases where there is difficulty in finding feasible solutions or in cases where a proof of optimality is not crucial.
3 CPX_NODESEL_BESTEST_ALT A variation on the Best Estimate search.
0 CPX_NODESEL_DFS Depth First search will be conducted. In many cases this amounts to a brute force strategy for solving the combinatorial problem, gaining a small amount of tactical efficiency due to a variety of reasons, and it is rare that it offers any advantage over other settings.

In instances where Best Estimate node selection (NodeSel = 2 or 3) is in effect, the parameter known as MIP strategy best bound interval (BBinterval or CPX_PARAM_BBINTERVAL) sets the frequency at which CPLEX uses Best Bound upon backtracking. The default value of 7 works well, but you can set it to 0 (zero) to make sure that Best Estimate is used every time backtracking occurs.