Tuning Performance of the Network Optimizer

The default values of parameters controlling the network optimizer are generally the best choices for effective performance. However, the following sections indicate parameters that you may want to experiment with in your particular problem.

Controlling Tolerance

You control the feasibility tolerance for the network optimizer through the feasibility tolerance parameter. In the Interactive Optimizer, use the command set network tolerances feasibility.

Likewise, you control the optimality tolerance for the network optimizer through the optimality tolerance parameter. Table 6.1 and Table 6.2 summarize the default value, range, and parameter name.

Table 6.1 Network Tolerance Parameter: Optimality


 
Optimality tolerance 
Default Value 
1e-6 
Range 
0.1 - 1e-11 
Callable Parameter 
Interactive Option 

Table 6.2 Network Tolerance Parameter: Feasibility


 
Feasibility tolerance 
Default Value 
1e-6 
Range 
0.1 - 1e-11 
Callable Parameter 
Interactive Option 

Selecting a Pricing Algorithm for the Network Optimizer

On the rare occasions when the network optimizer seems to take too long to find a solution, you may want to change the pricing algorithm to try to speed up computation. In the Interactive Optimizer, use the command set network pricing i, substituting a value for i to indicate which pricing algorithm to use. All the choices use variations of partial reduced-cost pricing.

Limiting Iterations in the Network Optimizer

Use the command set network iterations i, substituting a value for i, if you want to limit the number of iterations that the network optimizer performs.

Changing Sense: from Min to Max

To change a minimization problem to a maximization problem in the Interactive Optimizer, use the command change sense max and optimize again. For example, here is a transcript of a session in the Interactive Optimizer where we have already entered nexample.net and optimized it, and we now change its sense and optimize again:

CPLEX> change sense max

Problem is a minimization problem.

Problem is now a maximization problem.

CPLEX> netopt

Iteration log . . . Iteration: 0 Objective = 269.000000

Network - Optimal: Objective = 5.0400000000e+02

Solution time = 0.00 sec. Iterations = 5 (0)

Because we had already solved this example once as a minimization problem, the maximization started from a feasible solution. You control whether or not the network optimizer starts from an existing solution: use the command set advance 1 to indicate in the Interactive Optimizer that you want to start from an advanced basis. This setting is the default.


Previous Page: Understanding the Network Log File  Return to Top Next Page: Example: Using the Network Optimizer with the Callable Library