Subproblem Optimization

In some problems, you can improve performance by evaluating how the LP or QP subproblems are solved at the nodes in the branch & cut tree, and then possibly modifying the choice of algorithm to solve them. You can control which algorithm ILOG CPLEX applies to the initial relaxation of your problem separately from your control of which algorithm ILOG CPLEX applies to other subproblems. The following sections explain those parameters more fully.

RootAlg Parameter

The RootAlg algorithm parameter indicates the algorithm for ILOG CPLEX to use on the initial subproblem. In a typical MIP, that initial subproblem is usually the linear relaxation of the original MIP. By default, ILOG CPLEX starts the initial subproblem with the dual simplex optimizer. You may have information about your problem that indicates another optimizer could be more efficient. Table 8.13 summarizes the values available for the RootAlg parameter.

To set this parameter:

Table 8.13 Values of RootAlg and NodeAlg Parameters

Concert TechnologyLibrary Enumeration 
Callable LibrarySymbolic Constant 
Value 
Calls this Optimizer 
Auto 
CPX_ALG_AUTO 
automatic 
primal simplex 
dual simplex (default) 
network simplex 
barrier with crossover 
Sifting 
sifting 

NodeAlg Parameter

The NodeAlg parameter indicates the algorithm for ILOG CPLEX to use on node relaxations other than the root node. By default, ILOG CPLEX applies the dual simplex optimizer to subproblems, and unlike the RootAlg parameter it is extremely unusual for this to not be the most desirable choice, but again, you may have information about your problem that tells you another optimizer could be more efficient. The values and symbolic constants are the same for the NodeAlg parameter as for the RootAlg parameter in Table 8.13.

To set the NodeAlg parameter:


Previous Page: Difficulty Solving Subproblems  Return to Top Next Page: Example: Optimizing a Basic MIP Problem