Approximate Solution of Length-Bounded Maximum Multicommodity Flow with Unit Edge-LengthsThis research is supported by the Russian Science Foundation grant 15-11-10009.

Approximate Solution of Length-Bounded Maximum Multicommodity Flow with Unit Edge-Lengthsthanks: This research is supported by the Russian Science Foundation grant 15-11-10009.

Pavel Borisovsky, Anton Eremeev, Sergei Hrushev,
Vadim Teplyakov, Mikhail Vorozhtsov

An improved fully polynomial-time approximation scheme and a greedy heuristic for the fractional length-bounded maximum multicommodity flow problem with unit edge-lengths are proposed. Computational experiments are carried out on benchmark graphs and on graphs that model software defined satellite networks to compare the proposed algorithms and an exact linear programming solver. The results of experiments demonstrate a trade-off between the computing time and the precision of algorithms under consideration.

Keywords: Fully Polynomial-Time Approximation Scheme, Quality of Service, Software Defined Satellite Network

Sobolev Institute of Mathematics, Siberian Branch of Russian Academy of Sciences, 4 Koptyug Ave., 630090 Novosibirsk, Russia

Yaliny Research and Development Center, Paveletskaya naberezhnaya 2 block 2, Moscow, 115114, Russia

1 Introduction

Research issues in telecommunications often involve requirements to quality of service such as bandwidth, delay, number of hops, etc. [14, 18]. These research issues may be interpreted as combinatorial optimization problems of finding a multicommodity flow through the network that satisfies some quality of service constraints.

Multicommodity flow (MCF) problems are defined on a directed graph with edge capacities and origin-to-destination pairs . These problems ask for a family of flows from to , so that some optimization criterion is maximized under the node flow conservation constraints and the requirement that the sum of flows on any edge does not exceed the capacity of the edge.

In particular, the maximum multicommodity flow problem (maximum MCF for short) is an MCF problem where the total flow needs to be maximized. Some authors assume that the maximum MCF also includes an assumption that the value of each flow  is limited by a finite demand  (see e.g. [18]).

A more general problem, called fractional length-bounded maximum multicommodity flow (fractional length-bounded maximum MCF for short), asks for computing the maximum MCF routed along a set of paths whose length does not exceed a specific bound. This problem was studied in [2, 3] assuming unbounded demands and in [5], assuming that finite demands are given. In particular, it was shown in [2] that the fractional length-bounded maximum MCF is NP-complete, while its special case where all edges have unit length is polynomially solvable.

A modification of the fractional length-bounded maximum MCF with an additional constraint that the flow on all edges must be integer-valued is called integral length-bounded maximum MCF. The results from [9] show that even when there is no length constraint at all, the edge capacities are equal to 1, and the graph is outerplanar, this problem does not admit approximation algorithms with constant approximation ratios, unless P=NP. A result from [10] implies that the integral length-bounded maximum MCF can not be approximated with a performance ratio for any in the special case where all edges have equal length and all edge capacities are equal to 1, assuming PNP. Complexity and non-approximability of this problem was also studied in [2, 4].

Fully polynomial time approximation schemes (FPTAS) for fractional length-bounded maximum MCF were proposed in [2, 5]. In [18], an FPTAS was shown to exist for a more general quality of service-aware MCF problem (QoS-aware max-flow). The present paper is aimed at fast approximate solution of a special case of fractional length-bounded maximum MCF where all edges have the length equal to one.

In Section 2, we give a formal statement of fractional length-bounded maximum MCF and describe some basic properties of this problem. In Section 3, using the approach from [7] and the improvement of [6] we develop an FPTAS for a special case of the problem where all edges have unit length. This FPTAS has a smaller time complexity compared to the FPTAS from [18] which was developed for arbitrary edge lengths. In Section 4, we propose a simple greedy heuristic applicable to fractional length-bounded maximum MCF as well as integral length-bounded maximum MCF (assuming unit edge lengths in both cases). In Section 5, we compare these algorithms to each other and to IBM CPLEX solver in computational experiments. The last section contains conclusions.

2 Problem Formulations and Basic Properties

A flow in a digraph  from origin vertex  to destination vertex  is a nonnegative function  such that for each node holds


is the amount of flow sent from  to  in . If are paths from  to , then a sum of path-flows along gives a network flow from  to  again. Given that , we will say that  is routed along the set of paths .

We will assume that flow  of commodity  has an origin  and a destination . If are flows of commodities, then is called a multicommodity flow in .

An input instance of the maximum MCF consists of a directed network , where , an edge capacity function and a specification  of commodity  for . The objective is to maximize so that the sum of flows on any edge  does not exceed  and .

The fractional length-bounded maximum MCF has the same input, extended by an upper bound  and the edge lengths  and asks for a maximum MCF where the sum of flows on any  does not exceed , and the flow of each commodity is routed along a set of paths, where each path has a length at most . A special case of this problem where all edges have a unit length requires that the flow of each commodity is routed along a set of paths at most  edges long. In what follows, we will denote fractional length-bounded maximum MCF problem by LBMCF and its special case where all edges have unit length will be denoted by LBMCF1. Obviously, the maximum MCF may be considered a special case of LBMCF1, assuming . W.l.o.g. we will assume that all pairs  are unique, since otherwise the demands with identical pairs  may be summed together in one demand.

LBMCF1 is polynomially equivalent to its special case with unbounded demands. Indeed, given an LBMCF1 instance , , and , consider a new instance of this problem with unbounded demands on a network , obtained from  as described below. Let be the set of all vertices where at least one commodity originating in  is consumed, i.e. . For each vertex  with :

  • New vertices are created and connected by arcs leading into vertex .

  • The new vertices are assigned to commodities with destinations in by a one-to-one mapping. So we can denote the new vertices connected to  as where  is such that .

  • The capacities of edges leading from vertices  to are set to .

In the new problem the demands are  and the new upper bound is 

There is a bijection between the sets of feasible solutions of the original instance and the new instance and the objective function values of the corresponding solutions are equal. Now since the special case of LBMCF1 with unbounded demands is solvable by LP methods in weakly polynomial time [2], the above reduction implies that LBMCF1 with finite demands is also solvable in weakly polynomial time (the same follows from the LP formulation of this problem (1)–(4) presented below). The question of solvability of LBMCF1 in strongly polynomial time remains open. In the special case of maximum MCF, a strongly polynomial algorithm is known [17]. Nevertheless, even in this special case existence of exact algorithms using the same combinatorial techniques as the Ford-Fulkerson method for the single-commodity flow is unlikely (see e.g. [15], § 70.13).

In the special case of maximum MCF there is a well-known formulation the problem in terms of the LP using edge flows (see e.g. [11], § 11) with constraints and variables. Assuming that variables give the amount of flow of commodity  over edge  the LP model is as follows.


An LP formulation of LBMCF1, involving  constraints and variables, may be constructed using a multicommodity flow in a supplementary time-expanded network [12]. The node set  contains a copy  of the node set  of graph  for every discrete time step . For every directed edge  there is an edge in  from vertex  in time layer  to vertex . Besides that,  contains edges for all A multicommodity flow is sought in this time-expanded network under additional constraints which require that for each the sum of all flows traversing the edges is at most  For all  the origin of commodity  is placed in the copy  of vertex  at level 1 and the destination is placed in the copy  of vertex  at level . The resulting LP formulation is as follows


where variables give the amount of flow of commodity  over edge .

The practice shows that large MCF problems require a long time and a great amount of memory to solve using the exact LP methods either in path flow-based or edge flow-based formulations. (see e.g. [15], § 70.13). For this reason, it is important to develop faster algorithms to solve MCF problems approximately and LBMCF1 among them.

A feasible solution  to a maximization problem is called a -approximate if it satisfies the inequality where and is the optimal objective function value. An algorithm is called a -approximation algorithm if in a polynomially bounded time it outputs a -approximate solution given a solvable problem instance. A family of -approximation algorithms parameterized by , such that the time complexity of these algorithms is polynomially bounded in and in the problem instance length is called a fully polynomial-time approximation scheme (FPTAS).

3 Fully Polynomial Time Approximation Scheme

3.1 The Case of Unbounded Demands

This subsection presents an FPTAS for LBMCF1 with unbounded demands, which is developed analogously to the FPTAS for maximum MCF with unbounded demands [6].

Let denote the set of all paths from  to  in  and let denote the subset of  which consists of paths at most  edges long. Besides that, put The main difference from the preceding algorithms [7, 6] is that instead of  here we use  and search for the shortest paths in  by means of a truncated version of Ford-Bellman algorithm.

LBMCF1 in the case of unbounded demands may be formulated as an LP problem (denoted by P) with an exponential number of path flow variables


The dual problem with a polynomial number of variables is


We first describe the general ideas of the -approximation algorithm for problem P according to the framework of Garg and Könemann [7] and after that a faster version will be described in detail.

The algorithm proceeds by iterative improvements of primal solutions to problem P simultaneously computing a sequence of dual feasible solutions. The latter ones allow to estimate the precision of the current primal solution and to find directions for further improvement. It is convenient to compute a set of parameters , called edge lengths instead of the current dual-feasible solution . The dual feasible  may be reconstructed by scaling where the factor  is the length of a shortest path in .

The algorithm starts with length function  for all using some , and with a primal solution . While there is a path in  of length less than 1, the algorithm selects such a path and updates the primal and the dual variables as follows. For the primal solution , the algorithm increases the flow along path  by the minimum edge capacity in the path. Let us denote this bottleneck capacity by . The updated primal solution may be infeasible, so in order to return  to feasible region, all of its components are scaled down by an appropriate scalar. Now the dual variables are updated so that the higher the congestion of an edge the greater multiplier is given to its length:

In particular, the length of the bottleneck edge always increases by a factor of . The lengths of edges not on  remain unchanged.

In order to find out if there is a path  of length  according to the current length function, it suffices to compute a shortest path for each commodity, e.g. by executing  iterations of Bellman-Ford algorithm, which would take a total of  time (see e.g. Theorem 2.3 in [13]). Let denote the current shortest path length and let  be a lower bound on , which will be evaluated implicitly at each iteration of the algorithm as described below.

Instead of looking through all origin-destination pairs of commodities, seeking for a shortest path in , we implement the improvement of L. Fleischer [6] which consists in using a path of length at most  and spending less time to find such a path. To this end, we cycle through all commodities, staying with one commodity until the shortest origin-to-destination path for that commodity is above . The initial lower bound is set to . As long as there is some path  of length , we augment the flow along such . When such a path does not exist, it means that either and it is time to terminate the algorithm or and . In the latter case one can update the lower bound by setting . With such updates, the lower bound will belong to the set . Upon the termination of the algorithm, . Since each time  is increased by a factor of , the number of times that this happens is , where denotes the rounding down. This implies that the final value of  is . Assuming that every new value of the lower bound  defines a new phase  of the algorithm, we obtain an FPTAS represented by Algorithm 1 with the main loop over phases  as described below.

If there is a vertex  such that no path from  leads from  to , then the corresponding demand can not be served at all. All such pairs of vertices may be identified at the preprocessing stage and the corresponding flows should be set to zero. W.l.o.g. we will assume that such pairs of vertices do not exist.

The detailed outline of the algorithm follows the -approximation algorithm for maximum MCF [6] with minor modifications.

In what follows we assume that denotes the sum of lengths of all edges comprising a path  and . By a shortest path we mean a path from  with minimal length .

Algorithm 1

-approximation algorithm for LBMCF1 with unbounded demands

Choose and assign .
Assign for all .

The main loop
For all do
   For all do
      Find shortest paths  from  to all
      Choose . Let .
      While do
            Let .
            For all assign .
            Augment the path-flow .
            Find shortest paths in  from  to all
            Choose Let .
      End while
   End for-loop over
End for-loop over .

In the above algorithm, the length-bounded shortest paths from  are found by performing only  iterations of Bellman-Ford algorithm. Correctness of Algorithm 1 and its time complexity are established analogously to those of -approximation algorithm for maximum MCF [6], therefore the following Theorem 1 is given without a proof here. (The proof may be found in Appendix.)

Theorem 1

(i) Algorithm 1 completes after augmentations.

(ii) Given the feasible solution to LBMCF1 with unbounded demands found by Algorithm 1 has a total flow value 

Suppose a value is given. Then choosing and , by Theorem 1, part (ii) we conclude that the obtained flow has a value at least .

The length-bounded shortest paths from vertex  are computed once in the beginning of each iteration in the loop over , additionally it is computed after each augmentation. In total there are at most  applications of the truncated Bellman-Ford algorithm in Algorithm 1 that do not lead to augmentations. Besides that, Theorem 1, part (i) implies that the truncated Bellman-Ford algorithm is applied at most  times with augmentations. Thus the total runtime of Algorithm 1 is  and we have the following

Corollary 1

Given  Algorithm 1 with and computes a -approximate solution to LBMCF1 with unbounded demands in time.

The idea of adapting the approach from [6] to the length-bounded MCF has already been discussed by Baier [2] for the case with general edge lengths. It was already noted in [2] that the resource-constrained shortest path problem, which arises as a subproblem in the general case, is NP-hard and can only be solved approximately. In the present paper, we exploit the fact that in the unit edge length case, the subproblem becomes efficiently solvable.

3.2 The Case of Finite Demands

The reduction described in Section 2 allows to obtain -approximate solutions to LBMCF1 by applying Algorithm 1 to the transformed instance which consists of network  with vertices and edges, the specification of commodities  and the length bound . We can save some time by using the structure of  where one can find the shortest paths from all new vertices  attached to a vertex  by a single execution of truncated Bellman-Ford algorithm, starting with vertex . Then in total there are at most  calls of the Bellman-Ford algorithm that do not lead to an augmentation and there are at most  of calls to the Bellman-Ford algorithm following the augmentations and we have

Corollary 2

A -approximate solution to LBMCF1 may be computed in time.

This corollary gives a lower time complexity bound compared to the time bound of the FPTAS developed in [18]. However the FPTAS from [18] is applicable to LBMCF where the length function has a more general form.

4 Greedy Heuristic

As an alternative to the guaranteed approximation algorithm from Subsection 3.2, we propose a simple Greedy heuristic, based on augmenting paths, for LBMCF1. In what follows, by shortest path we mean a path with the minimal number of edges in .

The main idea of Greedy heuristic consists in iterative assignment of augmenting path-flows to the most distant origin-destination pairs (but not more than  edges apart). In each iteration of Greedy, the shortest paths are found for all origin-destination pais and a maximum possible flow is routed along the path of maximal length among the paths with at most  edges. After that we decrease the edge capacities along the path by the value of its flow, delete all edges where the remaining capacity has turned to 0 and proceed to the next iteration. The algorithm terminates when a set  of shortest paths from , connecting the unsatisfied origin-destination pairs in the current network, becomes empty. Here we assume that  is the set of paths at most  edges long in the current network.

Algorithm 2

Greedy Heuristic for LBMCF1

Initialization of set
Compute a shortest path from  to 
for all , for which such paths exist.
Denote the set of computed paths by .
The main loop:
While do
   Choose a longest path in , put .
   Let and be the first and the last vertices in path .
   , .
   For all  do
   If there are edges , such that then
       Delete all edges , such that , from .
       Build a new set by computing shortest paths
       from  to  for all , for which such paths exist.
   End if.
End while.

Clearly, the collection of path-flows with  found by Greedy constitutes a feasible solution. Besides that, since the set  of length-bounded shortest paths is computed at most  times, the time complexity of Greedy heuristic is  if the Dijkstra algorithm with heaps is used. If the truncated Bellman-Ford algorithm is used, then the time complexity of Greedy is .

Greedy can easily be converted to compute approximate solutions for fractional length-bounded maximum MCF if instead of the number of edges in a path one takes the path length in terms of edge lengths . Note that Greedy outputs a feasible solution with an integer-valued flow on all edges if an instance is feasible and all demands and edge capacities are integer-valued.

5 Computational Experiments

This section describes the computational experiments in solving LBMCF1 by -approximation algorithm from Subsection 3.2, by Greedy heuristic from Section 4 and by the LP-solver CPLEX 11 in dual simplex mode, using the LP formulation based on the time-expanded networks. For the large instances, where this formulation required too much time and memory we used the LP formulation of Maximum MCF from [11] to find an upper bound for the optimum. All experiments were carried out on Xeon X5675, 3.07 GHz, 96 Gb RAM, 12 cores.

5.1 Implementation Details

The -approximation algorithm for LBMCF1 was implemented with a minor improvement [6] which allows to terminate the algorithm when the best-found primal solution and the best-found dual solution are within the required approximation ratio. Whenever the amount of some commodity , routed by the current iteration, achieved the corresponding demand , this commodity was excluded from consideration in subsequent iterations.

It is easy to see that the most time-consuming part of the Greedy algorithm is the procedure building the shortest paths tree. We found that this part of Greedy is so compute-intensive that CPU cache misses percent may slow down the execution significantly, so we reduced the memory footprint of the all-pairs shortest paths procedure by implementing compact data structures both for the input graph and for the temporary data. Also we used a specially designed version of the Dijkstra’s algorithm that may be called in parallel for each root vertex . With these optimizations, we reduced the final time-footprint of the Greedy up to a factor 0.1 of its first naïve implementation.

5.2 Problem Instances

The networks for testing instances were obtained using a modification of generator RMFGEN [8], besides that 7 instances with real-life structure were constructed. RMFGEN produces a given number of two-dimensional grids with arcs connecting a random permutation of nodes in adjacent planar grids of size . Arcs of the grids have capacities 3600, while the capacities of arcs connecting the grids are chosen uniformly at random from 1 to 100. Origins and destinations are randomly chosen.

The demands were assigned in two alternative modes. In mode I, the demands were scaled as in [8] so that there is a feasible flow with the maximum arc congestion , where is set to 0.6 or 1. In mode II, each randomly chosen origin-destination pair  was assigned a random factor  from 1 to 100 and the total multicommodity flow was maximized under constraint that the origin-destination flows  are proportional to factors . Finally we assign the demand values  to test the algorithms in situation where the demands exceed the network capacities.

The instances with real-life structure model prospective Software Defined Satellite Networks (SDSN) (see e.g. [16]) that provide world-wide telecommunication services. We suppose that the network consists of 135 satellites on low Earth orbit (LEO), 40 ground stations (gates to Internet) and a Network Operations Control Center (NOCC). The packet routes for each origin-to-destination pair  are computed at NOCC in real time and each node (satellite or ground station) regularly receives the updated routs for all packets that originate in this node. Each packet sent from to contains some content data and a path of the packet route from to An upper bound  on the number of edges in packet paths is imposed due to a natural technical limitation on the number of bits reserved for encoding a packet route. Short packet paths also tend to have low transmission delay. For simplicity we assume that each problem instance describes the system in a single time-frame and all demands for the time-frame are known in advance.

The graphs modelling the SDSN were constructed with different trade-off between the model accuracy and the size of . Networks of these instances contain vertices of low degree (from 2 to 7), corresponding to satellites and dummy nodes, and vertices with high degree (near to ), corresponding to Internet gates at ground stations. The demands for commodities were generated so as to model the global telecommunication flows. We assumed that the number of active users in each square unit of the Earth surface is proportional to population on the unit. The origin and the destination of each call is chosen at random among active users. All active users are assigned to the nearest satellite or ground station.

Instance 1 2 3 4 5 6 7
543 272 272 197 197 135 318
19474 1292 1292 992 992 750 4652
12373 12373 12373 12373 12373 743 245481
Table 1: Parameters of Instances With Real-Life Structure

5.3 Experimental Results

The values of relative errors of solutions found by FPTAS and by Greedy heuristic were estimated a-posteriori in terms of upper bound , where  is the value of objective function found by the algorithm and  is the optimum in the LP model based on the time-expanded network (on grid graphs) or an upper bound on the optimum in maximum MCF LP formulation (on the instances with real-life structure).

Grid Graphs.

The attained approximations  and CPU times (in seconds) for the grid graphs with  and are given in Table 2. Here demands are generated in mode I. One can see that the FPTAS occupies the position between Greedy heuristic and CPLEX solver both in terms of the precision and the running time, except for the two smallest instances where Greedy was able to find optimal solutions. The parallel version of Greedy using 12 cores is clearly the fastest one, achieving speed-ups of about 4.5 times compared to the serial version. On small instances this speed-up vanishes due to communication cost.

The growth of CPU times with further increase of  is displayed in Fig 1. Here we use the largest grid graph with , . The demands are generated in mode II. Both approximate algorithms have run-time upper bounds independent of  (see Sections 3 and 4), which agrees with Fig 1 where the corresponding curves are nearly horizontal. The size of LP formulation based on the time-expanded network depends significantly on  and this is supported by Fig 1.

CPU time CPU time CPU time
1 12 1 1
core cores core core
2 276 0.01 0.01 0 0.07 0.01 0.15
4 588 0.05 0.02 0 0.23 0.01 0.25
6 900 0.09 0.02 0.07 0.53 0.02 0.64
8 1212 0.14 0.03 0.29 0.74 0.02 1.06
2 276 0.01 0.01 0.04 0.08 0.04 0.15
4 588 0.06 0.02 0.1 0.3 0.05 0.61
6 900 0.14 0.04 0.07 0.57 0.01 0.44
8 1212 0.18 0.04 0.27 0.79 0.02 0.59
Table 2: A posteriori estimated approximation  and CPU times on grid graphs. Here .
Figure 1: CPU time as function of  on grid graph, , . Demands generated in mode II.

Instances With Real-Life Structure.

Instances 1-7 have a greater range of graph sizes and a much greater number of commodities compared to the instances with grid graphs (see Tables 1 and 2).

The LP model based on the time-expanded network required prohibitive amount of time and memory. Therefore in the case of Instances 1-7 we could compute only an upper bound  using the LP CPLEX solver. Still, in the case of Instance 1, CPLEX was unable to find an upper bound due to lack of memory and was set to the total value of demands.

Table 3 shows the a posteriori pessimistic estimates of approximations  attained by the algorithms and the corresponding CPU times (in seconds). Here FPTAS always has a greater precision than Greedy and the latter one is up to  times faster even in the sequential version. Note that

Inst- Greedy FPTAS CPLEX
ance heuristic computing
CPU time CPU time CPU time
1 core 12 cores
1 1.63 0.4 0.108 1689.6 0.004
2 0.51 0.16 0.072 157.6 0.008 7 971
3 0.28 0.1 0.094 160.4 0.01 6 947
4 0.15 0.09 0.081 80.6 0.012 1 852
5 0.11 0.06 0.094 83.6 0.012 1 872
6 0.28 0.1 0.117 3.8 0.12 345
7 0.26 0.11 0.109 389.5 0.006 144 456
Table 3: A posteriori estimated approximation  and CPU times on instances with real-life structure. Here .

In order to evaluate the algorithms on a variety of different real-life instances with similar structure we generated 300 versions of graph  that model SDSN analogously to Instance 7 but in different time-frames. Different satellite positions in these time-frames lead to different links between satellites and between satellites and ground stations. The bandwidth of the links varies as well. The specification of demands remained unchanged. Application of FPTAS and Greedy to these instances in the single-core version and the same parameters as in Table 3 gave the results shown in Tables 4 and 5. The average and maximum CPU times and estimates are close to those reported in Table 3 for Instance 7, which implies that both algorithms have a stable behavior on the input data that we considered.

Greedy FPTAS
Average 0.3 164.8 402.0 857.6
Maximum 0.38 177.6 444.1 888.7
Table 4: CPU times (sec.) on 300 instances with real-life structure,
Greedy FPTAS
Average 0.061 0.006 0.004 0.003
Maximum 0.148 0.01 0.006 0.004
Table 5: A posteriori estimated approximation  on 300 instances with real-life structure,


The proposed FPTAS has a lower time complexity bound compared to the previously known algorithms designed for a problem with the length functions of more general form.

The FPTAS and Greedy heuristic proposed in this paper are significantly faster than the CPLEX LP solver, especially on the instances with large networks and great numbers of demands. The FPTAS is more accurate but requires more CPU time than Greedy which may be a decisive factor in practical applications. Implementation of the FPTAS (hopefully) may be improved using line search for updating the current primal and dual solutions as proposed in [1] and by the means of parallel computations.

The exact LP-model discussed in Section 2 is based on a Kirchoff-type formulation in an extended graph. The alternative column generation approach has no polynomial time-bound but is often more efficient in practice. Further research might include a comparison of the algorithms presented here to the column generation method, assuming that columns are the length-bounded paths.


Correctness of Algorithm 1 and its time complexity are established analogously to those of -approximation algorithm for maximum MCF [6]. Before the proof of Theorem 1 we formulate and prove two lemmas. The reason why these proofs were omited in the paper is because they almost literally repeat the corresponding proofs in [6].

Lemma 1

Algorithm 1 terminates after augmentations.

Proof. At start, for all edges . The last time the length of an edge is updated, it is on a path of length less than one, and it is increased by at most a factor of . Thus the final length of any edge is at most . Since every augmentation increases the length of some edge by a factor of at least , the number of possible augmentations is at most .

Lemma 2

The flow obtained by Algorithm 1 satisfies the constraints for all .

Proof. Every time the total flow on an edge  increases by a fraction of , its length is multiplied by . Since for all we have , when for all . Thus, every time the flow on an edge increases by its capacity divided by , the length of the edge increases by a factor of at least . Initially and at the end , so the total flow on edge  cannot exceed .

Theorem 1

(i) Algorithm 1 completes after augmentations.

(ii) Given the feasible solution to LBMCF1 problem with unbounded demands found by Algorithm 1 has a total flow value 

Proof. Part (i) follows from Lemma 1.

Now consider part (ii). Let denote the length function after -th augmentation in Algorithm 1 and let denote the length of a shortest path in  w.r.t. a length function . Given a length function , define and let Then is the dual objective function value corresponding to  and is the optimal dual objective value. Let be the primal objective function value after -th augmentation and let be the augmenting path. Denote . Then for each ,

which implies that


Consider the length function . Note that . For any path used by the algorithm, the length of the path using  versus differs by at most . Since this holds for the shortest path using length function , we have Hence

Using the bound on from equation (16), we obtain

Observe that, for fixed , this right hand side is a non-decreasing function on So, for any sequence of upper bounds on we have

where the last inequality uses the fact that for . We can use a valid upper bound , which implies

By the stopping condition, after the last augmentation (let it be the augmentation number ) we have

and hence

Recalling that we obtain


  • [1] Albrecht, Ch.: Global routing by new approximation algorithms for multicommodity flow. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. 20(5) 622 – 632 (2001)
  • [2] Baier, G.: Flows with Path Restrictions. Ph.D. Dissertation, TU Berlin, Berlin (2003)
  • [3] Ben-Ameur, W.: Constrained-length connectivity and survivable networks, Networks 36(1) 170–33 (2000)
  • [4] Baier, G., Erlebach, T., Hall, A., Köhler, E. Kolman, P., Pangrác, O., Schilling, H. and Skutella, M.: Length-bounded cuts and flows. ACM Trans. Algorithms, 7(1), 4:1–4:27 (2010)
  • [5] Chaudhuri, K., Papadimitriou, C., Rao, S.: Optimum routing with quality of service constraints. Unpublished manuscript (2004).
  • [6] Fleischer L.K.: Approximating fractional multicommodity flow independent of the number of commodities, SIAM J.Disc.Math., 13, 505 – 520 (2000)
  • [7] Garg, N., Könemann, J.: Faster and simpler algorithms for multicommodity flow and other fractional packing problems. In: Proc. 39th IEEE Symposium on Foundations of Computer Science, FOCS’98, pp. 300–309. IEEE CS Press (1998)
  • [8] Goldberg, A.V., Oldham, A.D., Plotkin, S., Stein, C.: An implementation of an approximation algorithm for minimum-cost multicommodity flows. In: Proc. of 6-th Integer Programming and Combinatorial Optimization, LNCS vol. 1412, pp. 338-352, Berlin, Springer (1998)
  • [9] Garg N., Vazirani V., Yannakakis M. Primal-dual approximation algorithms for integral flow and multicut in trees, Algorithmica, 18, 3–20 (1997)
  • [10] Guruswami, V., Khanna, S., Rajaraman, R., Shepherd, B., and Yannakakis, M.: Near-optimal hardness results and approximation algorithms for edge-disjoint paths and related problems. In Proceedings of the 31st Annual ACM Symposium on Theory of Computing, pages 19–28 (1999)
  • [11] Hu, T.C.: Integer Programming and Network Flows. Reading, MA, Addison-Wesley Publishing Company (1970)
  • [12] Kolman, P., Scheideler, C.: Improved bounds for the unsplittable flow problem. J. Algor., 61 (1), 20–44 (2006)
  • [13] Nemhauser, G.L. and Wolsey, L.A.: Integer and Combinatorial Optimization. Wiley-Interscience. New York, NY (1988)
  • [14] Van Mieghem, P., Kuipers, F.A., Korkmaz, T., Krunz, M., Curado, M., Monteiro, E., Masip-Bruin, X., Sole-Pareta, J., Sanchez-Lopez, S.: Quality of service routing. In: Quality of Future Internet Services. Lecture Notes in Computer Science, vol. 2856, pp. 80–117. Springer, Berlin (2003)
  • [15] Schrijver, A. Combinatorial Optimization. Polyhedra and Efficiency. Vol. C. Springer, 2003.
  • [16] Tang, Z., Zhao, B., Yu, W., Feng, Z and Wu, C. Software defined satellite networks: Benefits and challenges. In: Proc. of Computing, Communications and IT Applications Conference (ComComAp), pp. 127-132. IEEE (2014)
  • [17] Tardos, E.: A strongly polynomial algorithm to solve combinatorial linear programs. Operations Research, 34 (2), 250-256 (1986)
  • [18] Tsaggouris, G. and Zaroliagis, C.: Multiobjective optimization: Improved FPTAS for shortest paths and non-linear objectives with applications. Theory of Computing Systems, 45 (1) 162–186 (2009)
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description