Algorithms 2011, 4(1), 75-86; doi:10.3390/a4010075

Article
Approximating the Minimum Tour Cover of a Digraph
Viet Hung Nguyen
LIP6, Université Pierre et Marie Curie Paris 6, 4 place Jussieu, Paris, France; E-Mail: hung.nguyen@lip6.fr
Received: 2 March 2011; in revised form: 24 March 2011 / Accepted: 2 April 2011 /
Published: 20 April 2011

Abstract

: Given a directed graph G with non-negative cost on the arcs, a directed tour cover T of G is a cycle (not necessarily simple) in G such that either head or tail (or both of them) of every arc in G is touched by T. The minimum directed tour cover problem (DToCP), which is to find a directed tour cover of minimum cost, is NP-hard. It is thus interesting to design approximation algorithms with performance guarantee to solve this problem. Although its undirected counterpart (ToCP) has been studied in recent years, in our knowledge, the DToCP remains widely open. In this paper, we give a 2 log2(n)-approximation algorithm for the DToCP.
Keywords:
approximation algorithm; graph algorithm; packing and covering; tour cover; tree cover

1. Introduction

Let G = (V, A) be a directed graph with a (non-negative) cost function c : A ⇒ ℚ+ defined on the arcs. A directed tour cover T is a subgraph T = (U, F) such that

  • For every eA, F contains an arc f intersecting e, i.e., f and e have at least one end-node in common.

  • T is a closed directed walk (or branching in the case of tree cover).

We consider in this paper the minimum directed tour cover (DToCP) problem which is to find a directed tour cover of minimum cost. As in the previous works [1,2] on the undirected tour cover, we allow the directed tour cover to be a closed directed walk, i.e., it may visit a node more than once, to avoid restricting the cost function c to be a metric. However, if the cost function c satisfies the triangle inequality, this directed walk can be short-cut into a simple directed cycle which covers every arc in A without increasing the cost. The undirected version of DToCP is the minimum tour cover (ToCP) problem which has been studied in recent years. The ToCP was introduced in a paper by Arkin et al. [1]. The authors proved that ToCP is NP-hard and gave a purely combinatorial 5.5-approximation algorithm. Later, Konemann et al. [2] proposed an integer formulation for ToCP and used it to improve the approximation ratio to 3. In this paper, the DToCP was listed as an open problem.

We can prove that DToCP is NP-hard by a reduction from the metric Asymmetric Traveling Salesman Problem (ATSP). The proof is very similar to the one for ToCP described in [1]. Given any instance G = (V, A) of ATSP, for every node vV, we create a new node v′ and an arc (v, v′) of cost +∞ to obtain a new graph G′. Let us consider the DToCP on G′, we can see that any directed tour cover on G′ must cover V. As the costs are metric, given any directed tour cover, we can find a traveling salesman tour on G of no greater cost. Hence, there is an one-to-one correspondence between the optimal solutions of DToCP on G′ and the optimal traveling salesman tours on G. Moreover, this reduction is approximation-preserving, i.e., if we have an α-approximation algorithm for DToCP then we can approximate the metric ATSP with the same ratio α. In our knowledge, the best approximation ratio for ATSP is so far 0.824log2(n) achieved by Kaplan et al. [3]. Therefore, it is rather difficult to design an algorithm of a constant approximation ratio for DToCP. In this paper, we will present a 2log2(n)-approximation algorithm for the DToCP. This ratio is more than 2 times the ratio for ATSP, since our algorithm is inspired from the algorithm given by Konemann et al. [2] for the undirected case which is based on the bound of the Held-Karp relaxation for metric TSP It is proved that the metric TSP costs no more than 3 2 the Held-Karp bound for the undirected case and the metric ATSP costs no more than log2(n) the Held-Karp bound for the directed case [4,5]. Hence, our ratio 2 log2(n) for DToCP follows logically the best ratio 3 for ToCP. Our work for DToCP is motivated by the asymmetric versions of the applications enumerated by Arkin et al. for the undirected case, especially a special case of the Symmetric Traveling Purchaser Problem [1]. We give here a concrete example of applications of DToCP, which is the following simplified version of the waste collection problem. A company is in charge of waste collection in an urban area. The area is supposed to be small enough so that one truck is sufficient to collect all of its daily wastes. The gather is done by the truck in early morning of each day. For each street in the area, waste should be regrouped at one of the end-points of the street in the night of the day before. When the truck goes along a street, this induces some cost to the company. Hence, the aim of the company is to find a cheapest tour from its depot for the truck such that the waste collection is accomplished for every street of the area. Note that streets could be one-way or sloping, making the costs asymmetric. This problem suggests that the depot should belong to the tour. We shall see that our algorithm for DToCP will also work for the case when the tour should contain a fixed vertex.

The paper is organized as follows: In Section 2, we present an integer formulation for DToCP. We discuss in Section 3 about the parsimonious property of Eulerian directed graphs, in particular in Section 3.1. We prove the equivalent directed version of Goemans and Bertsimas's theorem on splitting operations. In Section 3.2, we derive an equivalent linear program to the Held-Karp relaxation for metric ATSP. This linear program will be useful in the analysis of our algorithm's performance guarantee in Section 5. Before that, we state our approximation algorithm for DToCP in Section 4.

Let us introduce the notations that will be used in the paper. Let G = (V, A) be a digraph with vertex set V and arc set A. If x ∈ ℚ|A| is a vector indexed by the arc set A and FA is a subset of arcs, we use x(F) to denote the sum of values of x on the arcs in F, x(F) = ΣeF xe. Similarly, for a vector y ∈ ℚ|V| indexed by the vertices and SV is a subset of vertices, y(S) denotes the sum of values of y on the vertices in the set S. For a subset of vertices SV, let A(S) denote the set of the arcs having both end-nodes in S. Let δ+(S) and δ(S) denote the set of the arcs having only the tail and head in S, respectively. Let δ(S) = δ+(S) ∪ δ(S). We will call δ+(S) the outgoing cut associated to S, δ(S) the ingoing cut associated to S and δ(S) simply the cut associated to S. For each vertex vV, let d+(v) be the outgoing degree of v which is equal to the number of arcs in G having v as tail and let d(v) be the ingoing degree of v which is equal to the number of arcs in G having v as head. For two subset U, WV such that UW = Ø, let (U : W) be the set of the arcs having the tail in U and the head in W. For uV, we specify v as an outneighbor of u if (u, v) ∈ A and as an inneighbor of u if (v, u) ∈ A. For any u, vV, let p(u, v) be the number of arc-disjoint paths from u to v. For the sake of simplicity, in clear contexts, the singleton {u} will be denoted simply by u. When we work on more than one graph, we specify the graph in the index of the notation, e.g., δ G + ( S ) will denote δ+(S) in the graph G.

2. Integer Formulation

Let

= { S V A ( S ) , A ( V \ S ) }

Given any tour cover TC of G, by definition, for any S ∈ ℱ we have TCδ+(S) ≥ 1 and TCδ(S) ≥ 1. Note that the condition TCδ(S) ≥ 1 is equivalent to TCδ+(V \ S) ≥ 1, and by definition of ℱ, a vertex subset S belongs to ℱ if and only if V \ S belongs to ℱ. This observation motivates our integer formulation for DToCP. For any eA, let xe indicate the number of copies of e included in the tour cover. We minimize the total weight of arcs included, under the condition that every outgoing cut associated to some S ∈ ℱ should be crossed at least one. In order to ensure that our solution is a tour we also need to specify that for any node vV, the number of arcs entering v is equal to the number of arcs leaving v in the tour. This integer formulation can be stated as follows:

min e A c e x e e δ + ( v ) x e = e δ - ( v ) x e for all v V e δ + ( S ) x e 1 for all S x e integer for all e A

If one specific vertex u should belong to the optimal tour, we just need to set e δ + ( u ) x e = e δ - ( u ) x e 1 in the formulation. Replacing the integrality constraints by

x e 0 for all e A
we obtain the linear programming relaxation. We use DToC(G) to denote the convex hull of all vectors x satisfying the above constraints (those of the linear programming relaxation). Clearly minimizing the linear cost function ΣeA cexe over DToC(G) can be done in polynomial time since the separation problem of the cut constraint can be solved in polynomial time. Indeed, given a candidate solution x and for every eA, let us consider xe as the capacity on arc e. For each pair of arcs e1, e2E, we compute the minimum capacity cuts δ+(U) separating them.

3. Parsimonious Property for Directed Eulerian Graphs

3.1. Connectivity and the Splitting Operation

Given a positive integer k, suppose that we want to find a minimum cost strongly k-connected Eulerian directed subgraph of G, i.e., there are at least k arcs-disjoint paths between every pair of vertices. Moreover, each vertex in the subgraph should have the outgoing and ingoing degree both equal to k. The metric ATSP is a special case of this problem when k = 1. An integer formulation for the problem can be stated as follows.

min e A c e x e
subject to
x(δ+(u)) = kfor all uV
x(δ(u)) = kfor all uV
x(δ+(S)) ≥ kfor all SV such that |S| ≥ 2
xe ≥ 0 and integerfor all eA

Let us consider the linear programming relaxation of (1).

min e A c e x e
subject to
x(δ+(u)) = kfor all uV
x(δ(u)) = kfor all uV
x(δ+(S)) ≥ kfor all SV such that |S| ≥ 2
xe ≥ 0for all eA

The parsimonious property for Eulerian directed graphs says that if the costs are metric, in (2), we do not need to impose that the degree of each vertex should be exactly k but only at least k. This means that the following linear program

min e A c e x e

subject to
x(δ+(u)) ≥ kfor all uV
x(δ+(u)) = x(δ(u))for all uV
x(δ+(S)) ≥ kfor all SV such that |S| ≥ 2
xe ≥ 0for all eA

is equivalent to (2).

Theorem 1

If the costs c satisfy the triangle inequality then the optimum of (3) is equal to the optimum of the linear programming relaxation (2).

The parsimonious property can be also formulated for undirected Eulerian graphs. We simply replace the outgoing and ingoing cuts in (3) and (2) by the corresponding cut to obtain the two linear programs for the undirected case.

The undirected version of Theorem 1 (in a little more general form) has been proved by Goemans and Bertsimas [6]. Their proof consists mainly in showing the following lemma.

Lemma 1

[6] Let G = (V, E) be an Eulerian multigraph. Let cG(i, j) (i, jV) denote the maximum number of edge-disjoint paths between i and j. Let s be any vertex of G and let u be any neighbor of s. Then there exists another neighbor of s, say v, such that, by splitting su and sv, i.e., removing the edges su and sv and adding the edge uv, we obtain a multigraph G′ satisfying the following conditions:

  • cG′(i, j) = cG(i, j) for all i, jV \ {s} and

  • cG′(s, j) = min(cG(s, j), dG(s) − 2) for all jV \ {s}, where dG(s) represents the degree of the vertex s in G.

Condition 1 of Lemma 1 is a result due to Lovasz [7] on the connectivity properties of Eulerian multigraphs. Condition 2, added by Goemans and Bertsimas, states that splitting operation can be performed while maintaining most connectivity requirements involving vertex s. For the connectivity of Eulerian multi-digraphs, Jackson [8] shows a similar result as Lovasz's one (i.e., Condition 1) for Eulerian multigraphs. This result can be stated in the following lemma.

Lemma 2

[8] Given an Eulerian graph G. Let s be any node of G and let u be any outneighbor of s. Then there exists another inneighbor of s, say v, such that, by splitting (s, u) and (v, s), i.e., removing the arcs (s, u) and (v, s) and adding the arc (v, u), we obtain a multigraph G′ satisfying

  • pG′(i, j) = pG(i, j) for all i, jV \ {s}.

Like the work of Goemans and Bertsimas for the undirected case, we will subsequently prove that we can add a similar condition as Condition 2 of Lemma 1 to Lemma 2 which express the connectivities involving s. We obtain the following lemma.

Lemma 3

Let s be any node of G and let u be any outneighbor of s. Then there exists another inneighbor of s, say v, such that, by splitting (s, u) and (v, s), i.e., removing the arcs (s, u) and (v, s) and adding the arc (v, u), we obtain a multigraph G′ satisfying the following conditions:

  • pG′(i, j) = pG(i, j) for all i, jV \ {s} and

  • p G ( s , j ) = min ( p G ( s , j ) , d G + ( s ) - 1 ).

Proof

Our proof for Lemma 3 is very similar to the Goemans and Bertsimas' proof for Lemma 1. This latter is also in major part inspired from the one of Lovasz for Lemma 1 (Condition 1) which proceeds along the following lines.

  • There exists at most one set S satisfying:

    (a1) sS, uS,

    (b1) |δg(S)| = cG(i, j) for some i, jV, iS, jS and is and

    (c1) S is minimal with respect to the above two conditions.

  • If there is no such S, then any neighbor v of s can be used for the splitting operation.

  • If such a S exists then there exists at least one neighbor of s in S. Moreover, any neighbor of s in S can be used for the splitting operation.

We will show that this proof procedure can be used for the directed case. Let us remove the orientation on the arcs of G, then G becomes an undirected Eulerian multigraph. The following remark expresses the relation between cG(i, j), which is the number of edge-disjoint paths between i and j in undirected G, and pG(i, j), which is the number of arc-disjoint paths from i to j (or pG(j, i) for the number of arc-disjoint paths from j to i) in the original directed graph G.

Remark 1

Let δG(S) be the cut associated to S in the undirected G. We have

  • | δ G ( S ) | = 2 | δ G + ( S ) | = 2 | δ G - ( S ) | for all SV.

  • cG(i, j) = 2pG(i, j) = 2pG(j, i).

Proof

We have δ G ( S ) = δ G + ( S ) δ G - ( S ) and as δ G + ( S ) δ G - ( S ) = , | δ G ( S ) | = | δ G + ( S ) | + | δ G - ( S ) |. Since G is Eulerian, we have | δ G + ( S ) | = | δ G - ( S ) | for all S ⊂ V. Hence, | δ G ( S ) | = 2 | δ G + ( S ) | = 2 | δ G - ( S ) |. For all pair i, j in V with ij, as pG(j, i) = min{|δ+(T)| : iT and jV \ T}, pG(j, i) = min{|δ(T)| : iT and jV \ T} and | δ G + ( S ) | = | δ G - ( S ) | for all TV, we have pG(i, j) = pG(j, i) and cG(i, j) = 2pG(i, j) = 2pG(j, i).

Hence, given any sV, applying the Lovasz's procedure for undirected G, we have

  • either there exists exactly a S satisfying (a1), (b1) and (c1). Reconsider S in the original directed G, we prove that S satisfies

    (a2) sS, uS,

    (b2) | δ G + ( S ) | = p G ( i , j ) for some i, jV, iS, jS and is and

    (c2) S is minimal with respect to the above two conditions.

    Indeed, by Remark 1, if

    δ G ( S ) = c G ( i , j ) = min { | δ ( T ) | : i T and j V \ T }
    then
    δ G + ( S ) = p G ( i , j ) = min { | δ + ( T ) | : i T and j V \ T } .

    The conditions (a1) and (a2) (or (c1) and (c2), respectively) are the same, independent from the fact that G is directed or not.

  • otherwise, i.e., no S satisfying (a1), (b1) and (c1) exists. Then for all SV such that sS and uS, we have |δG(S)| > cG(i, j) for all i, jV, iS, jS and i ≠ s. By | δ G ( S ) | = 2 | δ G + ( S ) | + 2 | δ G - ( S ) |, we have also in the original directed graph G, | δ G + ( S ) | > p G ( i , j ) for all i, jV, iS, jS and i ≠ s. Hence, we can select any inneighbor v of s and split (s, u) and (v, s) without changing the value of pG(i, j) for all i, jV \ {s}.

Hence we can summarize below the directed version of Lovasz's proof procedure.

  • There exists at most one set S satisfying (a2), (b2) and (c2).

  • If there is no such S, then any inneighbor v of s can be used for the splitting operation.

  • If such a S exists, then there exists at least one inneighbor of s in S. Moreover, any inneighbor of s in S can be used for the splitting operation.

To show Lemma 3, we add a new node ŝ to G and d G + ( s ) - 1 arcs from ŝ to s and d G - ( s ) - 1 arcs from s to ŝ. Let Ĝ be this new graph. Clearly, Ĝ is Eulerian. Moreover,

p G ^ ( i , j ) = p G ( i , j ) for all i , j V \ { s } , p G ^ ( s ^ , j ) = min ( p G ^ ( s , j ) , d G + ( s ) - 1 ) for all j V \ { s } .

Now applying the proof procedure to Ĝ, we can see that there are two possible cases:

  • There is no SV ∪ {ŝ} that satisfies (a2), (b2) and (c2) expressed for Ĝ. Then we can select any inneighbor vŝ of s and do the splitting operation on the arcs (v, s) and (s, u). Let G′ be the resulted graph after this splitting operation. Since the splitting operation does not affect the connectivity of all the nodes in V ∪ {ŝ} \ {s}, we have pG′(ŝ, j) = pĜ(ŝ, j) for all jV \ {s}. But as d G + ( s ) = d G + ( s ) - 1,

    p G ^ ( s ^ , j ) = min ( p G ( s , j ) , d G + ( s ) - 1 ) for all j V \ { s } and p G ( s ^ , j ) = min ( p G ( s , j ) , d G + ( s ) ) for all j V \ { s } .

    As pĜ(ŝ, j) = pG′(ŝ, j) then pG′(s, j) can not be strictly smaller than min ( p G ( s , j ) , d G + ( s ) - 1 ) and as pG′(s, j) ≤ pg(s, j), by construction, pG′(s, j) can not be strictly greater than min ( p G ( s , j ) , d G + ( s ) - 1 ). Hence p G ( s , j ) = min ( p G ( s , j ) , d G + ( s ) - 1 ).

  • Otherwise, i.e., there exists exactly one set SV ∪ {ŝ} satisfying (a2), (b2) and (c2). Note that the condition (b2) expressed for Ĝ is | δ G ^ + ( S ) | = p G ^ ( i , j ) for some i, jV ∩ {ŝ}, iS, jS and is.

    Proposition 1 If such a S exists then ŝS.

    Proof. Indeed if ŝS then | δ G ^ + ( S ) | d G + ( s ) since both u and ŝS and Ĝ is Eulerian. Moreover | δ G ^ + ( S ) | would be equal to pĜ(i, ŝ) for some iS \ {s}. This follows by (b2) and the fact that | δ + ( S { s ^ } ) G ^ | < | δ G ^ + ( S ) | (since sS) which implies that there is no i and j in V \ {s} with iS and jS such that | δ G ^ + ( S ) | = p G ^ ( i , j ). This leads to a contradiction since d G + ( s ) | δ G ^ + ( S ) | = p G ^ ( i , s ^ ) d G ^ ( s ^ ) < d G - ( s ) = d G + ( s ).

    Proposition 2 If a S satisfying (a2)-(c2) exists, there must exist some vS with vŝ such that v is an inneighbor of s.

    Proof. Indeed, if S does not contain any inneighbor of s other than ŝ, then | δ G ^ - ( S ) = d G - ( s ). Hence

    | δ G ^ + ( S ) | = | δ G ^ - ( S ) | d G - ( s ) > d G - ( s ) - 1 = d G ^ + ( s ^ ) p G ^ ( s ^ , j )

    Hence, there would exist some iS, siŝ and jS such that δ G ^ + ( S ) = p G ^ ( i , j ). This leads to a contradiction to the fact that S is minimal since S \ {s, ŝ} would separate i from j and as

    | δ + ( S \ { s , s ^ } ) G ^ | = | δ G ^ + ( S ) | + | ( S : { s } ) G ^ | - | ( { s } : V \ S ) G ^ |
    and |(S : {s})Ĝ| = 0 as sS and |({s} : V \ S)Ĝ| > 0, We have
    | δ + ( S \ { s , s ^ } ) G ^ | < | δ G ^ + ( S ) |

    Therefore, there exists some v = ŝ such that by splitting (s, u) and (v, s) we obtain a graph Ĝ′ with pĜ(i, j) = pĜ′(i, j) for all i, jV ∪ {ŝ} \ {s}. After removing ŝ, we obtain a graph G′ which can be also obtained from G by splitting off (s, u) and (s, v). G′ satisfies

    p G ( i , j ) = p G ^ ( i , j ) , = p G ^ ( i , j ) = p G ( i , j ) for all i , j V \ { s }
    and
    p G ( s , j ) = p G ^ ( s , j ) , p G ^ ( s ^ , j ) = p G ^ ( s ^ , j ) = min ( p G ( s , j ) , d G + ( s ) - 1 ) for all j V \ { s } .

    Moreover, due to splitting operation pG′(s, j) ≤ pG(s, j) and p G ( s , j ) d G + ( s ) - 1.

We finish here the proof of Lemma 3.

Proof of Theorem 1

Let C be the optimal value of (3) and C′ be the optimal value of (2). As (3) is a relaxation of (2), we have CC′. To show CC′ let x be an optimal solution of (3), i.e., C = ΣeA cexe. We can assume without loss of generality that x is integer since there exists some integer p such that px is integer and we can replace k by p.k in (3) and (2). Let G = (V, A) be the multigraph which has xe copies of each arc e such that xe > 0. Applying repeatedly the splitting operation described in Lemma 3 with s chosen among the nodes of V such that x(δ+(s)) > k until d G + ( i ) = k for all iV, we will obtain a multigraph G′ such that

  • pG′(i, j) ≥ k for all i, jV

  • d G + ( i ) = k for all iV.

Let x′ be the point such that for each eA, x e is equal to the number of copies of e in G′. We can see that x′ is a solution of (2). Since the costs satisfy the triangle inequality, each time we perform a splitting operation the cost of the solution does not increase, which implies that C = e A c e x e e A c e x e C .

3.2. Held-Karp Relaxation for ATSP and the Parsimonious Property

Let us consider the Asymmetric Traveling Salesman Problem (ATSP) on G. The Held-Karp bound for this problem can be computed by solving the following linear program:

min e A c e x e

subject to
x(δ+(S)) ≥ 1for all SV such that |S| ≥ 2
x(δ+(v)) = 1for all vV
x(δ(v)) = 1for all vV
0 ≤ xe ≤ 1for all eA

This linear program is called Held-Karp relaxation for ATSP. In fact the upper bound constraint xe ≤ 1 for all eA is redundant due to the degree constraints x(δ+(v)) = 1 and x(δ(v)) = 1 for all vV. Thus, we can rewrite the Held-Karp relaxation as follows:

min e A c e x e

subject to
x(δ+(S)) ≥ 1for all SV such that |S| ≥ 2
x(δ+(v)) = 1for all vV
x(δ(v)) = 1for all vV
xe ≥ 0for all eA

The following theorem is a direct application of Theorem 1.

Theorem 2

If the costs c satisfy the triangle inequality then the optimum of (4) is equal to the optimum of:

min e A c e x e

subject to
x(δ+(S)) ≥ 1for all Ø ≠ SV (included S singleton)
x(δ+(v)) = x(δ(v))for all vV
xe ≥ 0for all eA

4. Algorithm

We are now ready to state our algorithm for directed tour cover which is heavily inspired from the one for ToCP in [2].

  • Let x* be the vector minimizing cx over DToC(G);

  • Let U { v V x ( δ + ( { v } ) ) 1 2 };

  • Let GU = (VU, AU) be a graph with vertex set VU = U and the arc set AU is built as follows: for each pair of nodes i, jU, if there exists a path from i to j in G, create an arc (i, j) in GU with the cost c i j U being equal to the cost of the shortest path from i to j in G;

  • Run the Frieze, Galbiati and Maffioli heuristic [4] to find an approximate minimum traveling salesman directed tour on GU. Note that the linear program in step (1) can be solved in polynomial time by using the ellipsoid method with a minimum cut computation as separation oracle. The algorithm outputs a directed tour which spans U. We can see that U is vertex cover of G. Since for any arc e = (u, v) ∈ A, x*(δ+({u, v})) ≥ 1 and x ( δ + ( { u , v } ) ) = x ( δ + ( u ) ) + x ( δ + ( v ) ) - 2 x e , at least x*(δ+(u)) or x*(δ+(v)) is greater or equal to 1 2, i.e., at least u or v should belong to U. Therefore, the algorithm outputs a directed tour cover of G.

5. Performance Guarantee

Let x* be the vector minimizing ΣeA cexe over DToC(G) and U = { v V x ( δ + ( { v } ) ) 1 2 }. Let y* = 2x*, and let k be the minimum integer such that ky* is integer. Let = (V, Ã) be the multi-graph that has ky e copies of arc e for each e. Note that is Eulerian. For any ijV, let p(i, j) be number of disjoint paths from i to j in .

Remark 2

p(u, j) ≥ k for all uU and jV \ {u}.

Proof

To prove the remark, we will show that for any SV such that uS and jV \ S, we have | δ G - ( S ) | k. Indeed, if A(S) ≠ Ø then by construction, x ( δ G + ( S ) ) 1 2 which implies y ( δ G + ( S ) ) 1 and consequently | δ G + ( S ) | k. Otherwise, if A(S) = Ø then x ( δ G + ( S ) ) x ( δ + ( u ) ) 1 2. Equivalently, y ( δ G + ( S ) ) y ( δ + ( u ) ) 1. Hence, we also have | δ G + ( S ) | k.

In , for each iV \ U, repeat the splitting operation on i until d G + ( i ) = d G - ( i ) = 0. Consequently, after these operations, all the arcs in having the end-nodes in U. Let U = (U, ÃU) be the subgraph of induced by U of .

Remark 3

After these splitting operations, pU(u, v) ≥ k for all uU and vU \ {u}.

Consider the graph GU = (U, AU) that is defined in Step (2) of the algorithm. Note that all the arcs in U (with eventually multiple copies) are in AU but there may exist arcs in AU that are not in U. Let xU be the vector in ℝ|AU| such that for each eAU, x e U = p e k, where pe is the number of copies of e in U (pe = 0 if eU).

Lemma 4

We have 2cx* = cy* ≥ cUxU.

Proof

We have seen that kxU is obtained from ky* by repeated splitting operations on the vertices in V \ U. By definition of cU which takes the shortest path cost, we have cU(kxU) ≤ c(ky*) which implies cUxUcy* = 2cx*.

Let z* be an optimal solution of Held-Karp relaxation over GU.

Lemma 5

cUxUcUz*.

Proof

We can see that xU satisfies the following linear inequalities

x ( δ G U + ( u ) ) = x ( δ G U - ( u ) ) x ( δ G U + ( S ) ) 1 for all S U
which are the inequalities of (5) applied to GU. By Theorem 2, z* minimizes the cost function cU x over (5). Hence we have cUxUcUz*.

We are ready now to state the main theorem

Theorem 3

The algorithm outputs a directed tour cover of cost no more than 2 log2(n) times the cost of the minimum directed tour cover.

Proof

The algorithm return, as a solution of DToCP, the traveling salesman directed tour output T by Frieze et al.'s heuristic applied on GU. Let xT be its incidence vector. The cost of T is then equal to cUxT. Williamson [5] proved that the cost of T is not more than log2(n) times the cost of the optimal solution of Held-Karp relaxation over GU, i.e., cUxT ≤ log2(n)cUz*. By Lemmas 5 and 4, we have cUxT ≤ 2 log2(n)cx*.

6. Conclusions

In a recent paper [9], Asadpour et al. showed that one can find an asymmetric traveling salesman tour of cost at most O(log n/log log n) times the cost of the optimal solution of the Held-Karp. Hence we can use their algorithm in Step 4 of our algorithm in place of the Frieze et al. heuristic to obtain a ratio of O(log n/log log n) for DToCP. In fact, Asadpour et al. gave a (2 + 8 log n/log log n)-approximate solution for ATSP. This ratio is asymptotically better but worse for realistic value of n (n ≤ 1020) than log2(n), which is the ratio achieved by the Frieze et al. heuristic. An obvious extension is to design a combinatorial approximation algorithm for DToCP. In [1], the authors built combinatorially an undirected tour cover by duplicating some trees over a vertex cover. Since duplicating a branching does not give a directed tour, this idea can not be applied for the directed case. Thus a combinatorial approximation algorithm for DToCP remains wide open. Another possible extension is to use the parsimonious property for Eulerian digraphs in Section 3 to design approximation algorithms for other problems which involve a tour in directed graphs. In another paper [10], we have successfully applied this idea to design an approximation algorithm for the prize collecting asymmetric traveling salesman problem.

References

  1. Arkin, E.M.; Halldórsson, M.M.; Hassin, R. Approximating the tree and tour covers of a graph. Inf. Pro. Lett. 1993, 47, 275–282, doi:10.1016/0020-0190(93)90072-H.
  2. Könemann, J.; Konjevod, G.; Parekh, O.; Sinha, A. Improved Approximations for Tour and Tree Covers. Algorithmica 2003, 38, 441–449.
  3. Kaplan, H.; Lewenstein, M.; Shafrir, N.; Sviridenko, M. Approximation algorithms for asymmetric TSP by decomposing directed regular multigraphs. J. ACM 2005, 52, 602–626, doi:10.1145/1082036.1082041.
  4. Frieze, A.M.; Galbiati, G.; Maffioli, F. On the worst case performance of some algorithms for the asymmetric traveling salesman problem. Networks 1982, 12, 23–39, doi:10.1002/net.3230120103.
  5. Williamson, D.P. Analysis of the Held-Karp heuristic for the traveling salesman problem. M.D. Thesis, Massachusettes Institute of Technology, Cambridge, MA, USA, 1990.
  6. Goemans, M.X.; Bertsimas, D.J. On the parsimonious property of connectivity problems. Proceeding of the First Annual ACM-SIAM Symposimum on Discrete Algorithm; Society for Industrial and Applied Mathematics: Philadelphia, PA, USA, 1990; pp. 388–396.
  7. Lovasz, L. On some connectivity properties of Eulerian graphs. Acta Mathematica Hungarica 1976, 28, 129–138, doi:10.1007/BF01902503.
  8. Jackson, B. Some remarks on arc-connectivity, vertex splitting, and orientation in graphs and digraphs. J. Graph Theory 1988, 12, 429–436, doi:10.1002/jgt.3190120314.
  9. Asadpour, A.; Goemans, M.X.; Madry, A.; Oveis Gharan, S.; Saberi, A. An O(log n/log log n)–approximation algorithm for the asymmetric traveling salesman problem. Procceding of 21st ACM-SIAM Symposium on Discrete Algorithms; 2010.
  10. Nguyen, V.H.; Nguyen, T.T.T. Approximating the asymmetric profitable tour. Electron. Notes Discrete Math. 2010, 36, 907–914, doi:10.1016/j.endm.2010.05.115.
Algorithms EISSN 1999-4893 Published by MDPI AG, Basel, Switzerland RSS E-Mail Table of Contents Alert