8 Optimization of OSPF Routing in IP Networks 221
consisting of six nodes and 28 links with capacities ranging from 24 to 76, and all
possible 30 demands. We considered solving the integrated MIP problem of routing
and link weights optimization with a B&C method using the CPLEX 10.1 solver.
The optimal value of the objective function (the objective was to maximize the min-
imal residual link capacity) was equal to 6, while the upper bound resulting from
the linear relaxation of the problem was equal to 13. The results of the experiments
are summarized in Table 8.1. We applied a number of strategies that are defined in
column Strategy: CPLEX is relying only on standard cuts generated by the solver;
CC is generating combinatorial inequalities described in Section 8.4.1; MIP(X) is
generating cuts by solving problem X as MIP; LR(X) is generating cuts by solv-
ing problem X as LP. Symbols / and mean that the two methods given as the
arguments are run, respectively, in sequence and in parallel. The table provides the
information about the total time of the computation, the total number of visited B&C
nodes, and the total number of generated user-defined cuts. The asterisk in columns
Nodes or Time means that the computation was aborted due to, respectively, running
out of memory or reaching a time limit.
On the one hand, it is evident that there is a need to combine the MIP-based
methods of generating general inequalities with the method of generating combina-
torial cuts; that is because of the high computational cost of solving problems H(u)
and G(u) as MIPs, and of the insufficient quality of cuts resulting from solving the
linear relaxation of problem G(u). The results also suggest that the separation pro-
cedure based on solving problems H(u) or G(u), and as a result the overall B&C
approach, do not scale well with the network size, because the integer linear models
very quickly become large and hard to solve. On the other hand, however, the qual-
ity of cuts that are generated using MIP-based methods is likely to be high. This can
be examined by providing the cuts resulting from a particular scenario (cf. scenario
10) as a set of initial user-defined cuts (this fact is indicated in column After) and
solving the problem again with the CPLEX solver’s regular B&C procedure; the
quality of generated cuts can be seen from scenarios 11 through 13. Thus, constitut-
ing the only exact approach that allows separating fractional solutions, the presented
methods seem to be worth investing even more research effort into.
8.5 Heuristic Methods
As already pointed out, shortest path routing problems are NP-hard. Direct formula-
tions are extremely hard to solve, and integer programming approaches can typically
resolve only small- to medium-size problems. Moreover, in an operational setting,
additional constraints can appear that are difficult to integrate in a mixed-integer
programming formulation. Therefore, for large network instances, heuristics can be
necessary to find good feasible solutions in limited computing time. Another impor-
tant application of heuristic methods is that they provide good upper bounds for the
branch-and-cut integer programming approach of the form presented in Section 8.3.