Multicommodity network flows with non convex arc costs

Abstract


Introduction
Multicommodity flow network optimization problems have been widely studied and surveyed, mostly in the linear case (see [1] among others) and to some extent in the nonlinear convex case (see [76]).Most applications are still very challenging in the Network Design domain for many practitioners in different fields like Transportation, Communications or xxxx (see [7]).
We will focus here on the non convex nature of the cost function for general continuous multicommodity flows and this will include purely combinatorial problems like the pure concave cost network loading problem known to be NP-hard.To be more precise, we will consider the following model defined on a digraph G = (V, E) with a set K of commodities sending a fixed quantity of flow b k between pairs of origins and destinations (o k , d k ), k ∈ K : min e∈E f e (x e ) (MCF) x e − k x k e = 0, ∀e ∈ E (1) where F k is the set of feasible k-flows : 1 the matrix A defining the arc-node incidence matrix of graph G. Observe that the objective function is a separable arc cost function of the total flow x e = k x k e using arc e ∈ E. In some cases, additional arc costs depending separately on each commodity must be introduced, but we will not give any special insight to them as they do not induce any notable additional difficulties in the numerical treatment of these models.
We point out that that model includes the capacitated case as the capacity constraints can be embedded in the arc cost functions f e which are supposed to be only piecewise smooth with values in the extended real line IR ∪ {+∞}.Then it can also tackle the case of discrete decisions at the condition that these are defined arcwise.In particular, we will study multicommodity flow network problems with piecewise convex arc costs which appear in the modeling of the Capacity and Flow Assignment (CFA) problems for Network Design of general data networks.On the other hand, we will not survey (unless some algorithmic tool discussed later will need to refer to it) topological constraints on the graph like path constraints or connectivity constraints.
As a basic case, the fixed cost loading problem will be modelled by the step function f e (x e ) = 0 if x e = 0 F e if x e > 0 Fixed-cost as well as general concave-cost network flow problems have been largely studied since the early results of Tuy [88].Most of these contributions, well reported in Pardalos and Rosen's survey [78], focussed on Branch-and-Bound like approaches applied to single-commodity or transshipment models.Further enhancements have improved these techniques (see [15]) and adhoc software have been produced to solve large classes of Global Optimization problems (see [50] or [57]).These algorithmic schemes can apply too to a large class of integer network design problems that we will not survey here (see [11]).
The concave-cost multicommodity flow problem is much less studied in the literature even if constructive surveys have been published in the nineties ( [71,7]).Most original approaches have faced the necessity to decompose w.r.t.commodities which led to Lagrangian relaxation and Branch-and-Price strategies.We will present in section 3 the basic references that established the most noticeable results and algorithmic recent contributions on the Fixed-charge and concave-cost Network Design problem.From uncapacitated to multiple facilities models, we will observe the importance of both polyhedral study and Benders decomposition in the literature.
The situation which will be focussed in the last section is the network design problem where routes and capacities have to be simultaneously assigned to meet a given multi commodity demand of traffic.Routing corresponds in general to convex arc costs (average delay, congestion measure, QoS ...) and is usually modeled with continuous flow variables associated with each commodity unless additional constraints are present like unsplittable routing for example (refs...).On the other hand, capacity assignment has been modeled by integer decision variables as the choice is in practice modular with a finite number of available capacities for each arc.So the joint Capacity and Flow Assignment problem (CFA) is in general modeled by large-scale Mixed-Integer Nonlinear Programs which are very challenging to be solved exactly.Moreover, the combination of both objectives means a trade-off between structural costs (capacity installation) and congestion costs (routing decisions) as the former tends to induce a low-cost sparse network and the latter, a less congested dense and multi-path network (see [18]).
After recalling negative-cycle optimality conditions for single and multi commodity flow networks in section 2, we present a survey of fixed cost network design problems which are currently modeled as mixed-integer multicommodity flow problems.We consider different levels of complexity, from the pure fixed cost case to general non convex design cost functions, but do limit the study to flow and capacity constraints without additional topological constraints.We will consider in section 4 a continuous but piecewise convex model for capacity expansion in a network and propose some exact local and global schemes to solve it.Decomposition among commodities is the main directive idea of many algorithms which will be compared on medium and large-scale instances of the non convex multicommodity flow continuous models.Besides the guarantees given by local optimality conditions on feasible cycles, these approaches take profit of the existence of performant algorithms for convex cost multicommodity network flow problems, able to produce sharp lower bounds and nice starting solutions for further local improvements.

Negative cycle optimality conditions
We will analyze in the next section the optimality conditions for general cost multicommodity flow problems, focussing on the difficulty to extend the classical results for single commodity flows.

Convex cost single-commodity flows
We consider first the so-called Negative-cycle optimality conditions, well-known for singlecommodity flow and examine to what extent they may be generalized to the multi-commodity case.In their simpler form, these first-order optimality conditions state that a feasible flow is optimal if and only if there do not exist augmenting cycles with negative cost.Here, an augmenting cycle is a cycle of the graph such that any arc in the cycle possess a positive residual capacity (i.e., the total flow is strictly lower than the capacity on any forward arc and strictly positive on any backward arc of the cycle, see [1] for instance).Several authors have considered early the extension to separable convex cost functions, see [16], [55], [90], [81], [70] and [51].
To be more precise, let us recall the optimality conditions for single commodity flow problems with convex arc costs (a complete proof can be found in [16]).
Notation : for a given cycle Θ of G and an arbitrary sense of circulation which defines a partition of Θ in two subsets of arcs, Θ + for the direct arcs and Θ − for the reverse arcs, we will use the incidence vector of the cycle θ ∈ IR m with components θ e equal to 1, -1 for the arcs in Θ + , Θ − respectively and 0 for the others.For a given feasible flow x, we consider augmenting cycles as the ones which have a strictly positive residual capacity; i.e. a cycle Θ of G is augmenting if and only if there exists a positive ᾱ such that x + αθ is feasible for any α ∈ [0, ᾱ].Given a feasible cycle Θ we define its cost by : where )) is the right (resp.left) partial derivative of the arc cost function f e with respect to x e .
GH theorem : Optimality conditions for the single-commodity case : A feasible solution is optimal if and only if there does not exist any augmenting cycle with negative cost.
The first interest in extending this result to MCF is the possibility to design easy-toimplement cycle-canceling algorithms working on each commodity separately like a decomposition method.The second idea is to further study general continuous and piecewise smooth arc cost functions, giving some insight towards the non convex case.
It is already well-known that GH theorem cannot be extended so straightforward to the multicommodity case, even in the apparently simplest situation like linear-cost capacitated MCF.Indeed, the decomposition among the K commodities is not possible.This of course does not mean that we are not able to produce optimality conditions from the primal and dual pairs of LP associated with MCF.
To illustrate the goals we aim at, we first illustrate the main difficulty on a simple example : Let us consider the two-commodity flow network of Figure 1-a where both demands are equal to 1 and all arc capacities are equal to 1.The arc cost coefficients are simply 0 for the vertical arcs and +1 for the horizontal arcs, so that the optimal solution uses the vertical arcs to send one unit of flow from each origin to each destination.But, one can verify easily that the feasible solution represented by the dotted paths shown on Figure 1-b does not present any augmenting cycle even if it is not optimal.
Figure 1: The linear case does not work However, it is still possible to write equivalent negative cycle conditions in the uncapacitated case with smooth convex arc cost functions.Obviously, we must add some hypotheses to ensure that an optimal solution indeed exists, like using strongly convex cost functions or coercivity assumptions.In [75], Ouorou and Mahey have shown that it is possible to extend the negative cycle optimality condition to capacitated multicommodity flow problems using arc cost functions satisfying the following property : A : Properties of congestion functions Let consider functions Φ : C × IR → IR {+∞} such that : 1. Φ(c, •) is strictly convex, monotone increasing on (0, c) Observe that the cost function acts as a barrier and, assuming that a strictly feasible solution exists, we can skip the capacity constraints.A well known example of such congestion function in data networks is Kleinrock's function Φ(c, x) = x c−x which expresses the average delay of a traffic x on an arc with capacity c assuming Poissonian hypotheses for M/M/1 queues (see [?] for example).
Let x = k x k be a feasible solution of (MCF) such that f (x) = e Φ(c e , x e ) has a finite value.We will call a cycle Θ k-augmenting if it presents a strictly positive residual for commodity k, i.e. if we can augment the commodity flow value x k e on the direct arcs of Θ and reduce these values on the reverse arcs.In our model, a k-augmenting cycle is such that all reverse arcs carry a positive value of commodity k.The set of arcs which carry some positive k-flow will be denoted hereafter by E k .

Theorem 1 Assuming the congestion functions possess the Property (A), a feasible solution
x * is a global minimum of (MCF) if and only if, for all commodities k = 1, . . ., K, there does not exist any k-augmenting cycle with negative cost.
Proof : See [75] Ouorou and Mahey observed too that the result is no more valid if smoothness is not assumed.We will analyze deeper the non smooth case in the next sections, and, in particular, we will discuss the local optimality conditions for the model (MCF) when the arc cost functions f e are piecewise convex.

Local optimality conditions for MCF
We will analyze here the special case where the arc cost function is piecewise convex such that f e (x e ) = min{Φ el (x e ), l = 1, . . ., L} where each function Φ el is smooth and convex, defined on [0, +∞) (we can thus assume that each Φ el is a congestion function as in Theorem 1) .A motivating example of such functions is the Capacity Expansion problem which will be described in section 4.
Thanks to the simple separable structure of the cost function, it is possible to put down first-order local optimality conditions for problem (MCF) even in the presence of breakpoints where the cost function is not differentiable.Indeed, left and right partial derivatives do exist with respect to all variables.This implies that directional derivatives exist in all directions, allowing to use the first-order conditions for a local minimum : if x * is a local minimum of the function f , then the directional derivative f ′ (x * ; d) is non negative in all feasible directions d.We will show below that the convexity of the Φ el functions that build the objective function f on each arc not only allows us to characterize that condition using left and right derivatives but also turns the condition necessary and sufficient.
For any such local optimum, let define : and let g = |G|.There are 2 g different partitions of the set G in two disjoint subsets of arcs , so that we can define 2 g subregions of the feasible set, denoted by C i : These subregions have disjoint interior points and cover the feasible set of solutions of (CCE) in a neighborhood of x * .They are defined such that x * ∈ C i , ∀i = 1, . . ., 2 g .Moreover, the objective function f is convex when restricted to any region C i and we can write optimality conditions separately in each one of these regions.Indeed, we can associate with each arc in the partition its 'active' congestion functions, i.e.Φ(c 0e , x e ) for e ∈ E 0 G 0i and Φ(c 1e , x e ) for e ∈ E 1 G 1i , so that f (x) is simply the sum of the active functions for x ∈ C i .

Kuhn-Tucker conditions on set C i
There exist multipliers u i e and v i k satisfying : and, for all commodity k : Recall that these conditions imply that the active paths have minimal lengths with respect to first derivatives of the active functions associated with C i .The objective function being convex on that region, the conditions are necessary and sufficient.Thus, at a local minimum, these conditions must be satisfied for all subregions.A crucial question is then to identify situations where the solution is blocked at some breakpoint which cannot be optimal.Indeed, it can be shown that, when an arc flow is set to the breakpoint value at an optimal solution, that arc must belong to all active paths for all commodities using it.Thus, breakpoints correspond to bottleneck arcs where the total traffic is exactly equal to the breakpoint value, i.e. k∈Ke t k = γ e c 0e .Thus, any perturbation of one of the demands flowing through arc e will shift the arc flow value by the same quantity and consequently get out of the breakpoint.That observation tends to induce the fact that the number g of breakpoints at a local minimum will remain quite low.

Negative cycle optimality conditions
Let x be a feasible solution of (CCE).We will call a cycle Θ k-augmenting if it presents a strictly positive residual for commodity k, i.e. if we can augment the commodity flow value x k e on the direct arcs of Θ and reduce these values on the reverse arcs.In our model, a k-augmenting cycle is such that all reverse arcs carry a positive value of commodity k.The set of arcs which carry some positive k-flow will be denoted hereafter by E k .
Theorem 2 A feasible solution x * is a local minimum of (CCE) if and only if, for all commodities k = 1, . . ., K, there does not exist any k-augmenting cycle with negative cost.
Observe that the key fact which leads to the proof of the sufficient condition in the second part of the proof of the precedent theorem are the inequalities expressed in (??) and (??) to bound the reduced costs of the cycle.It works because, at the breakpoints, ) and the result could not have been extended to a convex non smooth congestion function as already observed in [75].As an illustration, let us come back to the two-commodity flow example described in section 2.1.We will compare two uncapacitated situations with different piecewise linear functions on the vertical arcs (the first one convex and the second one concave as shown on Figure 2) and the same linear cost f e (x e ) = x e on the horizontal arcs so that the optimal solution is still to route both commodities on the vertical arcs.In a first case, the arc cost functions are given by • f e (x e ) = x e for the horizontal arcs • f e (x e ) = max{1, 2x e − 1} for the vertical arcs Thus f is a convex function but non smooth at x e = 1.Again, let us take the feasible but non optimal solution of Figure 1-[b].However, there are no negative k-augmenting cycles for both commodities 1 .We can check in particular that the cost of cycle Θ 1 for commodity 1 is equal to 0.  Each arc-cost function is now concave piecewise linear and, considering the same solution as before, we can now find a negative cost cycle, for instance, for the first commodity, the cycle Θ 1 has cost -4 (Fig. 2-[b]).The relation between left and right derivatives at the breakpoint is crucial to determine whether we can use the negative-cycle optimality condition or not.

3
From fixed-charge to multiple choice network design Our basic separable arc-cost model includes many well-studied situations like concave-cost or fixed-cost network design that we will briefly survey here before extending to more complex functions like piecewise non linear or step increasing discontinuous cost functions.As many interesting surveys already exist on different subjects, we will not try to be exhaustive but mainly focus on strategies which aim at decomposing among commodities.Most of the contributions, well reported in Pardalos and Rosen's survey [78], focus on Branch-and-Bound like approaches applied to single-commodity or transshipment models, extending too to location problems and Steiner trees.General concave-cost network flow problems have been largely studied since the early results by Tuy [88] and Zangwill [93] .Minimizing a concave function on a polyhedron is known to be a NP-hard problem in the general case (see [89] for some polynomial algorithms with series-parallel networks, see too [79]) and early algorithms have relied on Branch-and-Bound associated with linearization techniques ( Yaged [92], [45]) or greedy heuristics (cite Minoux [69] or Balakrishnan and Graves [6]).Applications to packet-switched communications networks have been early studied by Gerla and Kleinrock [43] where they separated the design and routing costs and observed that a global minimum can be reached when the concave cost function follows a power law f e (x e ) = a e x α e + b e .See too [2] for mixed-integer formulations of the piecewise linear and nonlinear concave functions and use of Lagrangian Relaxation.Lagrangian heuristics have too been tested with relative success [73].A comprehensive survey can be found in [13].
We now discuss the fixed-charge uncapacitated network loading problem (FCUNL) which is too a basic brick in the modelling of challenging network design problems.By the way, the piecewise linear concave cost network flow problem can be modelled as a FCUNL as shown in [54], at the cost of increasing the number of arc decision variables.On the other hand, any FCUNL model can be viewed as a step or piecewise affine cost network flow problem.The cost function is generally represented by the following discontinuous function : F e + c e x e for x e > 0 0 for x e = 0 It is then generally approximated by a concave piecewise affine function for a small value ǫ e > 0 as shown in Figure 3.
An efficient procedure based on a dual-ascent method to solve FCUNL has been proposed by Balakrishnan et al [5].The problem turns to be much more complex when capacities bound the flow on each arc.The main reason is that the continuous relaxation of the capacitated model is quite weak as discussed below while the uncapacitated polytope is very close to be integral (see [47]).
Fixed-charge capacitated multicommodity network flow problems have been mostly studied in the eighties and nineties decades.We send back the reader to the relatively recent survey by Gendron et al [42] and the references therein.Modelling the problem as a mixedinteger program substitutes the difficulty of handling piecewise linear approximations and concave cost functions by the introduction of integer variables.The arc cost function is thus f (x, y) = k e c ek x k e + e F e y e with y e ∈ {0, 1} and we add the following coupling inequalities : where u e is the capacity of arc e.

Figure 3: Piecewise affine concave approximation
Lagrangian Relaxation has been applied by different authors to exploit the underlying structure of the model, mainly in two directions : relaxing the coupling capacity constraints to decompose by commodity and obtain shortest-path subproblems or relaxing the flow conservation constraints for all commodities to decompose by arcs and obtain knapsack subproblems.It is well-known (see [42] for a complete analysis) that the Lagrangian lower bound is equal to the continuous relaxation bound which can be quite poor and a much better bound is obtained with reduced additional costs by forcing the so-called strong inequalities x k e ≤ b ek y e , ∀e, k where b ek is the maximum flow allowed on arc e for commodity k (i.e. the demand d k if no individual capacities are imposed on arc e for commodity k).
Solving the Lagrangian dual problem can be a hard task when the number of dual multipliers increases and this has motivated the use of sophisticated subgradient algorithms like bundle methods [36] or the volume algorithm [8].Crainic et al [29] have reported extensive computational results with the bundle method on a large set of instances with up to 30 nodes, 700 arcs and 400 commodities.A rather surprising fact is that the 'knapsack relaxation' performs better, probably because the min-cost flow subproblems in the 'capacity relaxation' are highly degenerate.As usual, the gap can be reduced by adding valid inequalities if their separation procedure is not too costly.Further reduction of the gap to compute exact solutions of (MCF) needs branching and the construction of Branch-and-Cut algorithms.The polyhedral structure of the multicommodity flow solution set has been studied by various authors (see [62,86,9]).Bienstock and Günlük [19] have analyzed linear capacitated network design problems and they gave in [20] a set of valid inequalities for the MCF-polytope, results which led to a Branch-and-Cut algorithm (see too [21]).
Heuristic approaches have been too applied to network design problems, including capacitated MCF, to obtain very reduced gaps on large instances ( [17,28,52,48]).Lagrangian heuristics are able to produce nice feasible solutions on these instances by branching from the fractional nearly feasible solution given by the bundle or the volume algorithms ( [49,56]).
Telecommunications network design problems, dealing with packet-switched traffic on large multicommodity networks, have motivated the study of designing multiple facilities on the candidate arcs, turning the complexity of these models even harder.General capacitated network loading with two type of capacities has been modelled by Magnanti et al [63].
In the general case of linear transportation costs combined with discrete prices for each facility, we obtain an equivalent piecewise affine increasing but discontinuous function (see Figure ?? for a typical profile with economies of scale).Specific valid inequalities can be devised for these cases like the residual capacity inequalities (see [3,37]).That general model includes the well-studied case of step increasing cost functions.Croxton et al [30] have proved equivalence of different model structures for the piecewise linear cost case and shown their direct link with the lower convex envelope of the discontinuous function (i.e. the function which epigraph is the convex hull of the epigraph of the nonconvex original cost function).Different algorithmic approaches have been used in practice, see in particular [31], [41] and [58], the latter authors exploring a dc (difference of convex functions) model of the piecewise linear function (see too [40,67]).
Another direction of active research to solve capacitated network design problems has been the use of Benders decomposition to derive dual subproblems and new family of valid cuts (see [42] for a general presentation and [25] for a survey on the uncapacitated and capacitated fixed-charge design problems) and various enhancements of that classical approach have been motivated by the network design models ( [61,63,82,33]).Generalized Benders decomposition can be too an interesting solution procedure to exactly solve difficult capacity and flow assignment problems with convex flow costs [64], as the subproblems reduce to convex multicommodity network flow problems for which efficient algorithms have been proposed (see [76] for a survey).We will get back to these nonlinear models studying the capacity expansion problem in the next section.
Finally, we observe that MCF is a special case of general MINLP (Mixed-Integer Nonlinear Programming) for which recent developments are promising (see [46] and [23] for a survey).Many potential applications of these new algorithms have a potential multicommodity structure like water networks [22], gas networks [68,4], energy networks [74,32] or transportation networks [39], and naturally communications networks remain a very rich field for challenging network design problems (see for example [72] and [24]).
We will now consider specific contributions to the special situation where we want to expand (and buy) capacities on some arcs of a formerly dimensioned network to support additional demand across the network.

A continuous model for capacity expansion 4.1 Continuous Vs discrete models in network design
Back to model (MCF), we will use in parallel the implicit arc-path model which is designed in the following classical way.
Given a commodity k, we consider a given set of directed paths P k joining the corresponding origin and destination.This set may be the set of all simple directed paths or a restricted set of feasible paths, for instance with a limited number of hops.Let ξ kp be the amount of flow of commodity k through the path p ∈ P k and a kp its arc-path incidence vector defined by

We assume now a
Feasibility assumption : There exists x ∈ M(G, T ) such that x e < c 0e , ∀e ∈ E.
This means that the initially installed capacities c 0 are strictly sufficient to flow the traffic.We assume now that each arc in the topology is expandable to a capacity c 1e ≥ c 0e at a given fixed cost π e .Let δ e = c 1e − c 0e be the increment of capacity.The capacity expansion model will minimize the total congestion cost plus the expansion fixed costs.Using the previously defined arc congestion cost functions Φ(c e , x e ), we can define first a mixed-integer non linear model for the capacity expansion problem : (DCE)

Minimize
e [Φ(c 0e + δ e y e , x e ) + π e y e ] subject to x ∈ M(G, T ) x e ≤ c 0e + δ e y e , ∀e ∈ E y e ∈ {0, 1}, ∀e ∈ E We will now study the relationship between (DCE) and a continuous model which gets rid of any boolean decision variables y : x e ≤ c 1e , ∀e ∈ E Remarks : 1.As shown on Figure 2 where the non convex resulting arc cost function of (CCE) is represented, we denote by γ e c 0e with 0 < γ e < 1, the breakpoint at which expansion occurs.γ e can thus be interpreted as the relative congestion of an arc beyong which the network manager is willing to pay for expansion.Thus π e = Φ(c 0e , γ e c 0e )−Φ(c 1e , γ e c 0e ) is the expansion price converted in congestion cost units.
2. The arc cost function in (CCE) is continuous but non convex and non smooth at the breakpoint γ e c 0e .It is shown in [59] how one can easily compute a lower bound on the optimal value of (CCE) by convexifying each arc cost function and summing up the resulting gaps.
Trivially, if (x, y) is feasible for (DCE), x is feasible for (CCE).The following lemma is a direct consequence of the cost structure of (DCE).
Lemma 1 Let (x * , y * ) be an optimal solution of (DCE); then, we have the correspondences : x * e < γ e c 0e =⇒ y * e = 0 Moreover, if there exists an arc e with x * e = γ e c 0e , then y * e can be either 0 or 1, so the optimal solution is not unique.
Proof The two cases where x * e is not a breakpoint are straightforward.If x * e = γ e c 0e , we have : Φ(c 0e , γ e c 0e ) = Φ(c 1e , γ e c 0e ) + π e which shows that the value of the arc cost function does not change whenever y * e is 0 or 1. ✷ The correspondence between optimal solutions of (DCE) and (CCE) follows immediately : ) is an optimal solution of (DCE), then x * is optimal for (CCE) and the cost values are equal.
ii) If x * is an optimal solution of (CCE), then (x * , y * ) is optimal for (DCE) with : Observe that these results apply to optimal solution.We have analyzed before local optimal solutions of (CCE).The concept of a local optimal solution of (DCE) is not clearly defined because of the discrete nature of variables y.But using the correspondence defined above in theorem 1 part ii), we can define such a local optimum for (DCE).
Finally, we would like to point out that the tight relationship between the optimal solutions of both models does not mean that they are equivalent.The continuous model is in general not able to take in consideration additional constraints on the topology which, in the contrary, can be generally done by the y-variables.Nevertheless, we will mention a few common situations where it is possible to convert such constraints from (DCE) to (CCE) : a.Many models of network design require symmetry of the link capacities.This is easily modelled in (DCE) by the constraint y ij = y ji for some arc e = (i, j).To obtain the same effect, we must add the following constraint in (CCE) : Cutset constraints : Let A be a subset of nodes of V and C A the corresponding cutset.Forcing the subset A to be connected to the other nodes by at least one arc can be modelled in (DCE) by e∈C A y e ≥ 1, which is equivalent in (CCE) to : Observe that both constraints derived in a. and b. define polyhedral non convex regions of IR m .

Local minimization by cycle-canceling algorithm
Based on the local optimality conditions described above, a cycle-canceling algorithm has been derived in [?] with two main characteristics : • Successive cycle canceling steps are performed by moving the flow of one commodity at a time, so that the algorithm is a decomposition method.
• Nonlinear and non smooth arc cost functions are allowed, as long as right derivatives are not greater than left derivatives at the breakpoints.
The algorithm makes use of the concept of k-feasible negative cycles where it is allowed to increase strictly the k-th flow and thus strictly decrease the cost function.Referred to as (CCA) in the following tables, it includes an adaptation of Barahona-Tardos [10] technique to select the most negative family of node-disjoint cycles.
The algorithm is resumed below : Algorithm NOME • Find a feasible initial solution x 0 ; t = 0 • If there exists no k-feasible cycle with negative cost, then stop : x t is a local minimum for (CCE) • For some k, let Θ t be a k-feasible cycle such that λ(x t , Θ t ) = |Θ t |λ k (x t ) and, for each arc e ∈ Θ t , compute the greatest step α e such that : • t := t + 1 where θ t in the update formula (5) denotes the incidence vector of the cycle Θ t .The complexity of that computation is only apparent, as we can observe that, in many cases, a larger step can be performed when one reaches the breakpoint value.Indeed, suppose that x t e < γc 0e and that the flow augments until x t e + α e = γc 0e with f ′ e − (x t e + α e ) < f ′ j + (x t e ) − c(x t , Θ t ).Then, as f ′ e − (x t e + α e ) > f ′ e + (x t e + α e ), we can still augment the flow in the interval [γc 0e , c 1e ) corresponding to the adjacent subregion.That remark justifies the fact that the one-dimensional search on the negative cycle can be directly performed on the whole interval [0, c 1e ), even if the function is non convex and non smooth.The situation where one arc is set to its kink value is however possible, even if numerically unlikely as it can be seen as a generalization of the trivial case of one arc supporting one commodity which demand is exactly equal to γc 0 .Convergence to a local minimum is guaranteed by the following central lemmas : Lemma 2 After each cycle canceling step of algorithm (NOME), the objective function strictly decreases.

The proof may be found in [?]
The second lemma, first proved in [?] for minimum convex-cost flow problems, produces a lower bound on the minimum-mean cycle length at each iteration.
Lemma 3 (Karzanov and Mac Cormick) For any feasible multicommodity flowxandf oreachcommo is a lower bound of λ k (x) if and only if there exist node potentials π ki and the corresponding tensions t ke = π kj − π ki for each arc e = (i, j) such that xxxx Theorem 4 Suppose there exists a strictly feasible multicommodity solution to the problem with capacities c 1j for all j ∈ A, then the sequence generated by algorithm CCA with feasible step sizes converges to a point which satisfies the local optimality conditions of (CCE).
Proof The objective function is currently continuously differentiable on the whole intervals.Then, as the direction is sufficiently decreasing by lemma 2 and the Armijo's condition is always satisfied when the step is not limited to the interval bounds, it is a well-known result (see for instance [35]) that the method will converge and each limit point is such that the gradient of f is zero or, equivalently, there are no negative cost k-feasible cycles for all commodities.✷ Observe that, in the original paper by Weintraub [90], many assignment subproblems are solved at each step to approximate the most helpful cycle, in the sense of minimizing the decrease of the objective function after the flow update.This choice was exploited later by Barahona and Tardos [10] to obtain a polynomial algorithm in the linear case.Our choice is different as it relies on the idea of an approximation of the steepest-descent direction.

Towards global optimization of (CCE)
Encouraged by the quality of local optimal solutions, further enhancements have been proposed in [84] and [34] towards global optimization of the capacity expansion model.
In the first reference [84], tabu search is implemented to improve locally the local minimum.The authors reported significant improvements in a majority of instances, mainly when the initial local optimum presented more arcs at the breakpoints values.
In [34], the authors proposed an implicit enumeration scheme which was tested on a large set of non convex instances of (CCE).These tests include comparisons with global solvers like BARON [?] and LINDO Global [?].We present below some illustration of the most advanced numerical comparisons issued from the references cited before.
We first compare the algorithm (NOME) proposed above with the classical Capacity Assignment -Flow Assignment (CA-FA) approach for the (CFA) problem.The CA-FA algorithm (see [38], [43]) alternates between a capacity assignment phase with fixed routing and a flow assignment phase with fixed arc capacities until no further improvements are possible.In order to apply the CA-FA algorithm to the (CCE) model, we must decide which one of the two capacities c 0e and c 1e (consequently wich one of the two 'active' congestion functions Φ(c 0e , x e ) and Φ(c 1e , x e )) assign whenever an arc e is at the breakpoint, i.e. x e = γc 0e .Suppose that a feasible routing is given in which an arc e is at the breakpoint and let C 1 and C 2 be the two subregions associated with the two intervals [0, γc 0e ] and [γc 0e , c 1e ).At the capacity assignment phase let us assign, without loss of generality, c 0e to such an arc.Let us assume that the routing does not change in the flow assignment phase and the algorithm stops.Note that CA-FA does not necessarily stops at a local minima of (CCE).
The convex approximation proposed by Luna and Mahey [59] is used to generate lower bounds of the global minima and initial solutions for both algorithms.The procedure explores the separability of the objective function convexifying each arc cost function.It allows the use of efficient algorithms for convex multicommodity flow problems.In particular, the Proximal Decomposition method described in Mahey et al. [65] can be used to solve the convex multicommodity flow problems found in the initial convex approximation and in the routing phases of the CA-FA algorithm.Larger networks with different topologies were already used by Resende and Ribeiro [80] in the context of private virtual circuit routing.In these problems, a frame relay service offers virtual private networks to customers by provisioning a set of permanent (long-term) private virtual circuits between endpoints on a large backbone network.Table 1  We solved to local optimality the (CCE) model on the topologies shown in Table 1 fixing the ratio c 1e /c 0e = 4 and the parameter γ = 50% (as these had been the most difficult scenarios in our preliminary experiments).Table 2 displays the results obtained when first performing CA-FA and then NOME.We report, for the initialization phase, the relative deviation, and, the iterations and the computational time in seconds to solve the convex approximation with the Proximal Decomposition algorithm proposed by Mahey et al [65].Then, we report, the relative deviation and the number of arcs indicated for expansion at the local optima obtained.In the three last columns, we report: the total number of iterations needed by the Proximal Decomposition algorithm and, in parenthesis, the number of convex routing problems solved by the CA-FA; the iterations needed by the NOME; and, the total time in seconds to obtain the local optima given the initial solution.Our main interest in conducting these experiments is to verify that we can significantly improve feasible solutions obtained by convex approximation applying a local optimization procedure.For these larger networks, the average and the maximum deviation reductions are 16% and 28.1% respectively.It is worth to note that in 2 out of 7 cases the solution obtained by CA-FA was not a local minimum since NOME was executed for some iterations.Further improvements that lead to a global optimization method can be found in [34].

Figure 2 :
Figure 2: Convex and concave arc costs component x e of the vector x denotes the total flow on arc e.Then x e = k p∈P k a e kp ξ kp .The set of multicommodity flow vectors, denoted by M(G, T ) can be described, either by the implicit arc-path formulation, i.e. , for each commodity k flowing between nodes o k and d k , the active paths must satisfy p ξ kp = b k .

Table 1 :
summarizes the characteristics of the networks considered.Network characteristics.