Finding disjoint paths with different path-costs: Complexity and algorithms

  • Published on

  • View

  • Download

Embed Size (px)


  • Finding Disjoint Paths with Different Path-Costs: Complexity and Algorithms* Chung-Lun Lit John M. Olin School of Business Washington University St. Louis, Missouri 63130

    S. Thomas McCormick Faculty of Commerce and Business Administration University of British Columbia Vancouver, B.C. V6T 1 Y8, Canada

    David Simchi-Levi Department of Industrial Engineering and Operations Research Columbia University New York, New York 10027

    Consider a network C = ( V , E ) with distinguished vertices s and t , and with k different costs on every edge. We consider the problem of finding k disjoint paths from s to t such that the total cost of the paths is minimized, where thejth edge-cost is associated with thejth path. The problem has several variants: The paths may be vertex-disjoint or arc- disjoint and the network may be directed or undirected. We show that all four versions of the problem are strongly NP-complete even for k = 2 . We describe polynomial time heuristics for the problem and a polynomial time algorithm for the acyclic directed case. Q 1992 John Wiley & Sons, Inc.


    The reliability of telecommunications networks can be greatly improved through fundamental advances in routing of different kinds of traffic such as voice and data. We call these different media commodities. One issue in im- proving the reliability is finding two (or more) disjoint routes from a given

    *The work of all three authors was supported by the Center for Telecommunications Research under NSF Grant CDR 84-21402. tWork done in part in the IE/OR Department at Columbia University.

    NETWORKS, VOI. 22, (1992) 653-667 0 1992 by John Wiley & Sons, Inc. CCC 0028-3045/92/070653-15


    source to a given destination. The problem has several variants: The paths may be vertex-disjoint or arc-disjoint, and the network may be directed or undi- rected.

    Most of the research on disjoint paths problems has focused on whether or not a given graph has a collection of disjoint paths between specific terminals. In this problem, we are given a graph G and k pairs of vertices: si and ti for i = 1, . . . , k. We would like to find k disjoint paths, one for every pair s;, ti. Fortune et al. [4] proved that the directed version of this problem is NP- complete for k 2 2 (see Garey and Johnson [5] for a background on NP- completeness). Perl and Shiloach [ 101 presented efficient algorithms for some special cases of this problem, and Shiloach [ 131 presented a polynomial time algorithm for the undirected version of the problem when k = 2. Peleg and Upfal[9] discussed the complexity of constructing disjoint paths between given pairs of vertices on expander interconnection graphs. Robertson and Seymour [I l l showed how the Graph Minor Theorem provides an algorithm for the undirected disjoint path problem with complexity O(lV13) for fixed values of k. For a survey of the Graph Minor Theorem and its relation to the disjoint path problem, see Bienstock and Langston [2]. A variation of this is the problem of k-linked graphs: Here, for graphs on at least 2k vertices, we want to know if there are k pairwise disjoint paths between every set of k sources and sinks. This problem has been studied by Thomassen [161, who completely character- ized 2-linked graphs.

    A related problem is to find a maximum number of undirected vertex-disjoint paths between two distinct vertices, such that the length of every path is bounded by a given constant. Itai et al. [7] showed that for a length greater than four, this problem is NP-complete. A polynomial heuristic was given by Ronen and Perl [12], and they proved that this heuristic solves the problem to optimal- ity when the length is less than or equal to four. Computational results show that their heuristic performs very well in general.

    The optimization version of the problem is to find disjoint paths that mini- mize a specific objective function. This includes minimizing the sum of the costs of the routes (called the rnin-sum problem) or the cost of the most expen- sive of the selected routes (called the min-max problem). Previous research has considered the case of a uniform cost structure for the two commodities (uni- form means that both paths see the same costs on the arcs). Suurballe [14] developed a polynomial time algorithm for the min-sum version of the problem, and a more efficient algorithm for this problem was given by Suurballe and Tarjan [15]. The min-max version of the problem is much more difficult. Li et al. 181 showed that the min-max problem is strongly NP-complete even when k = 2 for its four possible variants, i.e., when the routes are either arc-disjoint or vertex-disjoint and the network is either undirected or directed. They also developed a simple and efficient heuristic that has a worst-case relative error equal to 100% and proved that there is no better heuristic for the directed version of this problem from a worst-case point of view (unless P = NP).

    In this paper, we analyze the disjoint path problem with min-sum objective function when the cost structure is not uniform, i.e., when the cost associated


    with one commodity (voice) is different from the cost associated with a differ- ent commodity (data). In practice, different communications links have differ- ent characteristics for different media; thus, nonuniform costs are a more real- istic assumption than uniform costs.

    In the next section, we introduce our notation and describe the model. In Section 2, we prove that all four versions of the problem are strongly NP- complete, even for k = 2. In Section 3, we describe two polynomial-time heuristics and discuss their worst-case bounds. Our bounds are data- dependent, but we also show that no better bounds are attainable unless P = NP. Finally, Section 4 presents a polynomial time algorithm for the acyclic- directed case when k is fixed.


    Let G = ( V , E ) be a network with source s and sink t , and k different non- negative integral costs c:,!), cl/", . . . , c:;) on each edge i - j E E . The cost of the jth path PJ is defined as

    C( ' ) (PJ> = 2 c)/,). u - u on Pi

    The paths are said to be edge-disjoint if they have no edges in common; they are said to be vertex-disjoint if they have no vertices in common except at the terminals.

    Our problem is to find k disjoint paths from s to t such that the total cost 2"=1 c(J)(PJ) is minimized. The problem has four versions depending on whether G is a directed or undirected graph and whether the paths are required to be vertex-disjoint or edge-disjoint .


    In this section, we use the 3-Satisfiability Problem (3SAT) to show that all the four versions of the problem are NP-complete, even when the number of com- modities is fixed at two. An instance of 3SAT has variables.xl ,x2, . . . , x,, with each variable xi giving rise to literals x, and X,. It also has clauses CI , C 2 , . . . , C,,, each a 3-subset of literals. A truth assignment is a function T : { x , } +- {true,false}. We say that C, is satisfied under T if CJ contains a literal x, with T ( x , ) = true, or literal X, with ~ ( x , ) = false. The instance asks if there is a truth assignment that simultaneously satisfies all rn clauses. 3SAT is known to be NP-complete (see [5] ) .

    Theorem 1 . The problem of finding two minimum-cost vertex-disjoint/arc- disjoint s +- t paths with nonuniform costs in a directedhndirected network is strongly NP-complete.

    Proof. Obviously, this problem belongs to the class NP. We first prove the directed arc-disjoint version of the problem by reducing 3SAT to the decision


    version of our problem: Given a directed network with nonnegative integral arc-lengths and a positive integer M , does it contain two arc-disjoint s + t paths with total cost at most M ?

    Given an instance of 3SAT, we define M = 0 and construct a directed net- work G. For each variable xi, let pi be the number of occurrences of variable xi in the clauses and construct a lobe as shown in Figure 1. The label (c!!J,c!:) on arc u + v represents the costs of that arc. The lobes are connected to one another in series with w I = s and w , , + ~ = t .

    For each clause Cj , we add two vertices y j ,z j ( j = 1, . . . , m) together with a rc s s+yI , z j+y j+I ( j= 1 , . . . , m - I),andz,,+t,whichhavecosts(l,O),as shown in Figure 2. Finally, to connect clauses to variables, we add the follow- ing arcs with costs (1 ,O):

    y j + u; and ui + z j , if the kth occurrence of variable xi is the literal xi that is

    y j +. ii; and 6; +. z j , if the kth occurrence of variable xi is the literal X i that is a literal in clause Cj;

    a literal in clause Cj .

    For example, network G corresponding to instance

    is depicted in Figure 3. It is easy to see that G can be constructed in polynomial time and all the arc-

    lengths are either 0 or 1. Therefore, it suffices to show that there exists a truth assignment that simultaneously satisfies all m clauses if and only if G has two edge-disjoint s - t paths with total cost 0.

    If there exists a truth assignment 7 that simultaneously satisfies all m clauses, then we select the path that passes through the upper portion of lobe i if 7 ( x i ) = false and passes through the lower portion if ~ ( x ; ) = true as the first s +. r path P I , with cost 0. Each satisfied clause Cj contains either a literal xi such that 7(xi ) = true or a literal X i such that ~ ( x ; ) = false, which implies that there exists a subpath y j + u: + v i + zj or y j + U : + 6; + z j , which is disjoint with P I . Hence, there exist at least m such subpaths, which, together with arcs s + y l

    FIG. 1.


    FIG. 2 .

    and z,,, - I , form an s + t path P2 with cost d2) (P2) = 0, which is arc-disjoint with PI.

    Conversely, suppose there exist two arc-disjoint s + t paths with total cost 0. Then, path P2 must contain arcs s + yI and zm += t and must pass through vertices y j and zj in order of increasingj. On the other hand, path PI must pass through all the lobes. For i = 1, . . . , n, we set T ( X J = true if PI passes through the lower portion of the ith lobe and T ( X J = false otherwise. According to this truth assignment, clause Cj is satisfied since there is an edge in the lobe between y j and zj in P 2 . Therefore, all rn clauses are satisfied.

    It is easy to see that the above arguments are also valid for the vertex-disjoint version. Furthermore, we can prove that the undirected case (for both edge- disjoint and vertex-disjoint versions) are strongly NP-complete by modifying the above proof by replacing all directed arcs in G by undirected edges. Hence, all arc-disjoint/vertex-disjoint and directedhndirected cases of the problem are strongly NP-complete.

    FIG. 3.


    The reduction in this proof is an elaboration of constructions in Even et al. [3], who coined the term lobe. Note that Theorem 1 also shows that all four versions of the disjoint path problem are strongly NP-complete for any fixed k 1 2.

    Corollary 2. If P # NP, then any pseudopolynomial time heuristic for finding k 2 2 vertex-disjoint/arc-disjoint s - t paths in a directedhndirected network with different path-costs has no fixed worst-case bound, even if all cIj) > 0.

    Proof. Suppose there exists a pseudopolynomial time heuristic H for this problem with a fixed worst-case bound B 2 1. Then, given any instance of 3SAT, we can construct graph G a s given in the proof of Theorem 1 except that we replace each unit cost in G with a cost of B * IEl + 1 units and each zero cost with a unit cost and apply the heuristic H on G. Since the optimal solution value of this problem is no more than IE( and any nonoptimal solution has value at least B * IEl + 1, heuristic H will give us a solution with a value no more than B * /El if and only if the answer to 3SAT is yes. Hence, heuristic H can be used to solve 3SAT in polynomial time, contradicting the assumption that P f NP.


    Given a directed network G with k different costs c!:, . . . , .I,, on every arc u + u, we define

    U,, = max {c::;)} and L,,, = min {c::)}. j .i

    A natural heuristic is to define some functionfof the k costs on each arc that averages the costs and then solve a Minimum Cost Network Flow (MCNF) problem using the averaged costs. More formally, consider the following heu- ristic:

    Heuristic I: Step I : For every arc u - u , compute Step 2: Solve the MCNF problem on G with cost d,, and capacity 1 for every

    arc u -+ u , supply k at s, and demand k at t . Assign the resulting k paths to the k commodities arbitrarily.

    In Heuristic I, if the given network is undirected, after Step 1 we can trans- form it into a directed network by replacing every edge u - u by a pair of arcs u - u and u -+ u , where d,, = d,,, and then go to Step 2.

    For the vertex-disjoint case, we can transform the problem into an arc- disjoint path problem as follows: Replace each vertex u in G by two vertices u


    and u and a dummy arc u + u with costs c?:,, = 0 ( p = 1, . . . , k ) . All arcs into u become incoming arcs of u and all arcs out of u become outgoing arcs of u. After this transformation, we can use Heuristic I to solve the problem on the new network.

    Note that an integral solution to the MCNF problem can be obtained in polynomial time. Furthermore, in the undirected case, after replacing every edge u - u by arcs u + u and u + u , there is an optimal solution in which at most one of these two arcs has positive flow in the optimal MCNF solution. Hence, Heuristic I can be applied to all four versions of the problem and give us k disjoint paths. (For algorithms on the MCNF problem and its polynomial time solvability, see, e.g., [I]).

    We n e e d f t o be well behaved in order to get a bound on Heuristic I. We consider only functions that are positive when L,, is positive. It turns out that the property that we need to make our analysis work is

    (P) For every set of positive costs {c:,)}, there is a single arc u + u, which attains both the max in

    and the max in

    Two families of functions satisfying (P) are cxU,,, + (1 - cr)L,,, and UeL,Lf,;a, where cx is any number satisfying 0 5 a 5 1. Property (P) fairly tightly con- strainsfas is shown in the following lemma:

    Lemma 3. on L,,, and U,,,, i.e., it is independent of the intermediate cl/s.

    If functionfsatisfies (P), then the value offon 14 + u depends only

    Proof. Suppose, to the contrary, that the value off on u + u does depend on some intermediate cl/b)s. Then, there exist (u( ) , . . . , dL)) and (h), . . , , W ) ) such that

    min{a(I), . . . , dk)} = min{b(Ij, . . . , W } = L ,


    Now arbitrarily select an arc u + u and give it costs d j ) , and give all other ar...


View more >