This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Asymmetric Traveling Salesman Path and
Directed Latency Problems111A preliminary version of this paper appeared in the Proceedings of 21st Annual ACM-SIAM Symposium on Discrete Algorithms

Zachary Friggstad      Mohammad R. Salavatipour      Zoya Svitkina

Department of Computing Science
University of Alberta
Edmonton, Alberta T6G 2E8, Canada
Supported by NSERC and iCORE scholarshipsSupported by NSERC and an Alberta Ingenuity New Faculty awardSupported by Alberta Ingenuity
(June 1, 2010)
Abstract

We study integrality gaps and approximability of two closely related problems on directed graphs. Given a set VV of nn nodes in an underlying asymmetric metric and two specified nodes ss and tt, both problems ask to find an ss-tt path visiting all other nodes. In the asymmetric traveling salesman path problem (ATSPP), the objective is to minimize the total cost of this path. In the directed latency problem, the objective is to minimize the sum of distances on this path from ss to each node. Both of these problems are NP-hard. The best known approximation algorithms for ATSPP had ratio O(logn)O(\log n) [7, 9] until the very recent result that improves it to O(logn/loglogn)O(\log n/\log\log n) [3, 9]. However, only a bound of O(n)O(\sqrt{n}) for the integrality gap of its linear programming relaxation has been known. For directed latency, the best previously known approximation algorithm has a guarantee of O(n1/2+ϵ)O(n^{1/2+\epsilon}), for any constant ϵ>0\epsilon>0 [25].

We present a new algorithm for the ATSPP problem that has an approximation ratio of O(logn)O(\log n), but whose analysis also bounds the integrality gap of the standard LP relaxation of ATSPP by the same factor. This solves an open problem posed in [7]. We then pursue a deeper study of this linear program and its variations, which leads to an algorithm for the kk-person ATSPP (where kk ss-tt paths of minimum total length are sought) and an O(logn)O(\log n)-approximation for the directed latency problem.

1 Introduction

Let G=(V,E)G=(V,E) be a complete directed graph on a set of nn nodes and let d:E+d:E\rightarrow\mathbb{R}^{+} be a cost function satisfying the directed triangle inequality duwduv+dvwd_{uw}\leq d_{uv}+d_{vw} for all u,v,wVu,v,w\in V. However, dd is not necessarily symmetric: it may be that duvdvud_{uv}\neq d_{vu} for some nodes u,vVu,v\in V. In the metric Asymmetric Traveling Salesman Path Problem (ATSPP), we are also given two distinct nodes s,tVs,t\in V. The goal is to find a path s=v1,v2,,vn=t{s=v_{1}},v_{2},\ldots,{v_{n}=t} that visits all the nodes in VV while minimizing the sum j=1n1dvjvj+1\sum_{j=1}^{n-1}d_{v_{j}v_{j+1}}. ATSPP can be used to model scenarios such as minimizing the total cost of travel for a person trying to visit a set of cities on the way from a starting point to a destination. This is a variant of the classical Asymmetric Traveling Salesman Problem (ATSP), where the goal is to find a minimum-cost cycle visiting all nodes. In the kk-person ATSPP, given an integer k1k\geq 1, the goal is to find kk paths from ss to tt such that every node is contained in at least one path and the sum of path lengths is minimized.

Related to ATSPP is the directed latency problem. On the same input, the goal is to find a path s=v1,v2,,vn=t{s=v_{1}},v_{2},\ldots,{v_{n}=t} that minimizes the sum of latencies of the nodes. Here, the latency of node viv_{i} in the path is defined as j=1i1dvjvj+1\sum_{j=1}^{i-1}d_{v_{j}v_{j+1}}. The objective can be thought of as minimizing the total waiting time of clients or the average response time. There are possible variations in the problem definition, such as asking for a cycle instead of a path, or specifying only ss but not tt, but they easily reduce to the version that we consider. Other names used in the literature for this problem are the deliveryman problem [23] and the traveling repairman problem [1].

1.1 Related work

Both ATSPP and the directed latency problem are closely related to the classical Traveling Salesman Problem (TSP), which asks to find the cheapest Hamiltonian cycle in a complete undirected graph with edge costs [21, 15]. In general weighted graphs, TSP is not approximable. However, in most practical settings it can be assumed that edge costs satisfy the triangle inequality (i.e. duwduv+dvwd_{uw}\leq d_{uv}+d_{vw}). Though metric TSP is still NP-hard, the well-known algorithm of Christofides [8] has an approximation ratio of 3/2\nicefrac{{3}}{{2}}. Later the analysis in [27, 29] showed that this approximation algorithm actually bounds the integrality gap of a linear programming relaxation for TSP known as the Held-Karp LP. This integrality gap is also known to be at least 4/3\nicefrac{{4}}{{3}}. Furthermore, for all ϵ>0\epsilon>0, approximating TSP within a factor of 220/219ϵ\nicefrac{{220}}{{219}}-\epsilon is NP-hard [26]. Christofides’ heuristic was adapted to the problem of finding the cheapest Hamiltonian path in a metric graph with an approximation guarantee of 3/2\nicefrac{{3}}{{2}} if at most one endpoint is specified or 5/3\nicefrac{{5}}{{3}} if both endpoints are given [16].

In contrast to TSP, no constant-factor approximation for its asymmetric version is known. The current best approximation for ATSP is the very recent result of Asadpour et al. [3], which gives an O(logn/loglogn)O(\log n/\log\log n)-approximation algorithm. It also upper-bounds the integrality gap of the asymmetric Held-Karp LP relaxation by the same factor. Previous algorithms guarantee a solution of cost within O(logn)O(\log n) factor of optimum [11, 19, 18, 9]. The algorithm of Frieze et al. [11] is shown to upper-bound the Held-Karp integrality gap by log2n\log_{2}n in [28], and a different proof that bounds the integrality gap of a slightly weaker LP is obtained in [24]. The best known lower bound on the Held-Karp integrality gap is essentially 2 [5], and tightening these bounds remains an important open problem. ATSP is NP-hard to approximate within 117/116ϵ\nicefrac{{117}}{{116}}-\epsilon [26].

The path version of the problem, ATSPP, has been studied much less than ATSP, but there are some recent results concerning its approximability. An O(n)O(\sqrt{n}) approximation algorithm for it was given by Lam and Newman [20], which was subsequently improved to O(logn)O(\log n) by Chekuri and Pal [7]. Feige and Singh [9] improved upon this guarantee by a constant factor and also showed that the approximability of ATSP and ATSPP are within a constant factor of each other, i.e. an α\alpha-approximation for one implies an O(α)O(\alpha)-approximation for the other. Combined with the result of [3], this implies an O(logn/loglogn)O(\log n/\log\log n) approximation for ATSPP. However, none of these algorithms bound the integrality gap of the LP relaxation for ATSPP. This integrality gap was considered by Nagarajan and Ravi [25], who showed that it is at most O(n)O(\sqrt{n}). To the best of our knowledge, the asymmetric path version of the kk-person problem has not been studied previously. However, some work has been done on its symmetric version, where the goal is to find kk rooted cycles of minimum total cost (e.g., [12]).

The metric minimum latency problem is NP-hard for both the undirected and directed versions since an exact algorithm for either of these could be used to efficiently solve the Hamiltonian Path problem. The first constant-factor approximation for minimum latency on undirected graphs was developed by Blum et al. [4]. This was subsequently improved in a series of papers from 144 to 21.55 [13], then to 7.18 [2] and ultimately to 3.59 [6]. Blum et al. [4] also observed that there is some constant cc such that there is no cc-approximation for minimum latency unless P = NP. For directed graphs, Nagarajan and Ravi [25] gave an O((ρ+logn)nϵϵ3)O((\rho+\log n)\,n^{\epsilon}\,\epsilon^{-3}) approximation algorithm that runs in time nO(1/ϵ)n^{O(1/\epsilon)}, where ρ\rho is the integrality gap of an LP relaxation for ATSPP. Using their O(n)O(\sqrt{n}) upper bound on ρ\rho, they obtained a guarantee of O(n1/2+ϵ)O(n^{1/2+\epsilon}), which is the best approximation ratio known for this problem before our present results.

1.2 Our results

In this paper we study both the ATSPP and the directed latency problem.

min eEdexe\displaystyle\sum_{e\in E}d_{e}x_{e} (1)
s.t. x(δ+(u))=x(δ(u))uV{s,t}\displaystyle x(\delta^{+}(u))=x(\delta^{-}(u))\hskip 25.60747pt\forall u\in V\setminus\{s,t\} (2)
x(δ+(s))=x(δ(t))=1\displaystyle x(\delta^{+}(s))=x(\delta^{-}(t))=1 (3)
x(δ(s))=x(δ+(t))=0\displaystyle x(\delta^{-}(s))=x(\delta^{+}(t))=0 (4)
x(δ(S))αSV,S,sS\displaystyle x(\delta^{-}(S))\geq\alpha\hskip 56.9055pt\forall S\subset V,S\neq\emptyset,s\notin S (5)
xe0eE\displaystyle x_{e}\geq 0\hskip 91.04881pt\forall e\in E

The natural LP relaxation for ATSPP is (1) with α=1\alpha=1, where δ+()\delta^{+}(\cdot) denotes the set of outgoing edges from a vertex or a set of vertices, and δ()\delta^{-}(\cdot) denotes the set of incoming edges. A variable xex_{e} indicates that edge ee is included in a solution. Let us refer to this linear program as LP(α\alpha), as we study it for different values of α\alpha in constraints (5). We begin in Section 2 by proving that the integrality gap of LP(α=1\alpha=1) is O(logn)O(\log n).

Theorem 1.1

If LL is the cost of a feasible solution to LP (1) with α=1\alpha=1, then one can find, in polynomial time, a Hamiltonian path from ss to tt with cost at most (2logn+1)L(2\log n+1)\cdot L.222All logarithms in this paper are base 2.

We note that, despite bounding the integrality gap, our algorithm is actually combinatorial and does not require solving the LP. We strengthen the result of Theorem 1.1 by extending it to any α\alpha with 12<α1\frac{1}{2}<\alpha\leq 1. This captures the LP of [25], which has α=23\alpha=\frac{2}{3}, and is also used in our algorithm for the directed latency problem. We prove the following theorem in Section 3.

Theorem 1.2

If LL is the cost of a feasible solution to LP (1) with 12<α1\frac{1}{2}<\alpha\leq 1, then one can find, in polynomial time, a Hamiltonian path from ss to tt with cost at most 6logn+32α1L\frac{6\log n+3}{2\alpha-1}\cdot L.

It is worth observing that this theorem, together with the results of [25], imply a polylogarithmic approximation algorithm for the directed latency problem which runs in quasi-polynomial time, as well as a polynomial-time O(nϵ)O(n^{\epsilon})-approximation. However, that approach relies on guessing a large number of intermediate vertices of the path, and thus does not yield an algorithm that has both a polynomial running time and a polylogarithmic approximation guarantee. So, to obtain a polynomial-time approximation, we use a different approach. For that we consider LP(α\alpha) for values of α\alpha that include α12\alpha\leq\frac{1}{2}. If we allow α12\alpha\leq\frac{1}{2} then LP(α\alpha), as a relaxation of ATSPP, can be shown to have an unbounded integrality gap. However, we prove the following theorem in Section 4.

Theorem 1.3

If LL is the cost of a feasible solution to LP (1) with α=1k\alpha=\frac{1}{k}, for integer kk, then one can find, in polynomial time, a collection of at most klognk\cdot\log n paths from ss to tt, such that each vertex of GG appears on at least one path, and the total cost of all these paths is at most kLlognkL\log n.

Next, we study another generalization of the ATSPP, namely the kk-person asymmetric traveling salesman path problem. In Section 5 we prove the following theorem:

Theorem 1.4

There is an O(k2logn)O(k^{2}\log n) approximation algorithm for the kk-person ATSPP. Moreover, the integrality gap of its LP relaxation is bounded by the same factor.

Given these results concerning LP(α\alpha), we study a particular LP relaxation for the directed latency problem in Section 6. We improve upon the O(n1/2+ϵ)O(n^{1/2+\epsilon})-approximation of [25] substantially by proving the following:

Theorem 1.5

A solution to the directed latency problem can be found in polynomial time that has cost no more than O(logn)LO(\log n)\cdot L, where LL is the value of LP relaxation (8), which is also a lower bound on the integer optimum.

We note that this seems to be the first time that a bound is placed on the integrality gap of any LP relaxation for the minimum latency problem, even in the undirected case.

2 Integrality gap of ATSPP

We show that LP relaxation (1) of ATSPP with α=1\alpha=1 has integrality gap of O(logn)O(\log n). Let xx^{*} be its optimal fractional solution, and let LL be its cost. We define a path-cycle cover on a subset of vertices WVW\subseteq V containing ss and tt to be the union of one ss-tt path and zero or more cycles, such that each vWv\in W occurs in exactly one of these subgraphs. The cost of a path-cycle cover is the sum of costs of its edges.

Our approach is an extension of the algorithm by Frieze et al. [11], analyzed by Williamson [28] to bound the integrality gap for ATSP. That algorithm finds a minimum-cost cycle cover on the current set of vertices, chooses an arbitrary representative vertex for each cycle, deletes other vertices of the cycles, and repeats, at the end combining all the cycle covers into a Hamiltonian cycle. As this is repeated at most logn\log n times, and the cost of each cycle cover is at most the cost of the LP solution, the upper bound of logn\log n on the integrality gap is obtained. In our algorithm for ATSPP, the analogue of a cycle cover is a path-cycle cover (also used in [20]), whose cost is at most the cost of the LP solution (Lemma 2.2). At the end we combine the edges of O(logn)O(\log n) path-cycle covers to produce a Hamiltonian path. However, the whole procedure is more involved than in the case of ATSP cycle. For example, we don’t choose arbitrary representative vertices, but use an amortized analysis to ensure that each vertex only serves as a representative a bounded number of times.

We note that a path-cycle cover of minimum cost can be found by a combinatorial algorithm, using a reduction to minimum-cost perfect matching, as explained in [20]. In the proof of Lemma 2.2 below, we make use of the following splitting-off theorem, as also done in [24], where splitting off edges yvyv and vxvx refers to replacing these edges with the edge yxyx (unless y=xy=x, in which case the two edges are just deleted).

Theorem 2.1 (Frank [10] and Jackson [17])

Let G=(V,E)G=(V,E) be a Eulerian directed graph and vxEvx\in E. There exists an edge yvEyv\in E such that splitting off yvyv and vxvx does not reduce the directed connectivity from uu to ww for any u,wV{v}u,w\in V\setminus\{v\}.

This theorem also applies to weighted Eulerian graphs, i.e. ones in which the weighted out-degree of every vertex is equal to its weighted in-degree, since weighted edges can be replaced by multiple parallel edges, producing an unweighted Eulerian multigraph.

Lemma 2.2

For any subset WVW\subseteq V that includes ss and tt, there is a path-cycle cover of WW of cost at most LL.

Proof. Consider the graph GG^{\prime} obtained from GG by assigning capacities xex^{*}_{e} to edges eEe\in E and adding a dummy edge from tt to ss with unit capacity. From constraints (2)-(4) of LP(α=1\alpha=1) it follows that this is a weighted Eulerian graph. Constraints (5) and the max-flow min-cut theorem imply that for any vVv\in V, the directed connectivity from ss to vv in GG^{\prime} is at least α=1\alpha=1.

We apply the splitting-off operation on GG^{\prime}, as guaranteed by Theorem 2.1, to vertices in VWV\setminus W until all of them are disconnected from the rest of the graph. Let G′′G^{\prime\prime} be the resulting graph on WW and let xx^{\prime} be its edge capacities except for the dummy edge tsts (which was unaffected by the splitting-off process). By Theorem 2.1, the directed connectivity from ss to any vWv\in W does not decrease from the splitting-off operations, which means that in G′′G^{\prime\prime} it is still at least α\alpha. This ensures that xx^{\prime} satisfies constraints (5) for all sets SWS\subset W with SS\neq\emptyset and sSs\notin S, and is a feasible solution to LP(α\alpha) on the subset WW of vertices. Furthermore, the triangle inequality implies that the cost of xx^{\prime} is no more than that of xx^{*}, namely LL.

Now we make the observation that if we remove from LP(α=1\alpha=1) constraints (5) for all but singleton sets, the resulting LP is equivalent to a circulation problem, and thus has an integer optimal solution. Since there is a feasible solution to LP(α=1\alpha=1) on the set WW of cost at most LL (namely xx^{\prime}), and removing a constraint can only decrease the optimal objective value, it means that there is an integer solution to the following program that costs no more than LL:

min eEdexe\displaystyle\sum_{e\in E}d_{e}x_{e} (6)
s.t. x(δ+(u))=x(δ(u))1\displaystyle x(\delta^{+}(u))=x(\delta^{-}(u))\geq 1 uW{s,t}\displaystyle\forall u\in W\setminus\{s,t\}
x(δ+(s))=x(δ(t))=1\displaystyle x(\delta^{+}(s))=x(\delta^{-}(t))=1 (7)
x(δ(s))=x(δ+(t))=0\displaystyle x(\delta^{-}(s))=x(\delta^{+}(t))=0
xe0\displaystyle x_{e}\geq 0 eE\displaystyle\forall e\in E

In principle, this integer solution can have x(δ+(u))>1x(\delta^{+}(u))>1 for some nodes uu. In this case, we find a Euler tour of each component of the resulting graph (with dummy edge tsts added in) and shortcut it over any repeated vertices. This ensures that x(δ+(u))=1x(\delta^{+}(u))=1 for all uu without increasing the cost. But such a solution is precisely a path-cycle cover of WW. \Box

Algorithm 1  Asymmetric Traveling Salesman Path
1:Let a set WVW\leftarrow V; integer labels lv0l_{v}\leftarrow 0 for all vVv\in V; flow FF\leftarrow\emptyset and circulation HH\leftarrow\emptyset
2:for 2log2n+12\log_{2}n+1 iterations do
3:  Find the minimum-cost ss-tt path-cycle cover FF^{\prime} on WW
4:  FF+FF\leftarrow F+F^{\prime} \triangleright FF is acyclic before this operation
5:  Find a path-cycle decomposition of FF, with cycles C1CkC_{1}...C_{k} and paths P1PhP_{1}...P_{h}, such that iPi\bigcup_{i}P_{i} is acyclic
6:  for each connected component AA of jCj\bigcup_{j}C_{j} do \triangleright AA is a circulation
7:   For each vertex uAu\in A, let dud_{u} be the in-degree of uu in AA
8:   Find a “representative” node vAv\in A minimizing lv+dvl_{v}+d_{v}
9:   FFAF\leftarrow F-A \triangleright subtract flows
10:   for each wAw\in A, wvw\neq v, and for each path PiP_{i}
11:        if wPiw\in P_{i} then modify FF by shortcutting PiP_{i} over ww
12:   Remove all nodes in AA, except vv, from WW \triangleright Note: they don’t participate in FF anymore
13:   HH+AH\leftarrow H+A \triangleright add circulations
14:   lvlv+dvl_{v}\leftarrow l_{v}+d_{v}
15:  end for
16:end for
17:Let PP be an ss-tt path consisting of nodes in WW in the order found by topologically sorting FF
\triangleright FF is an acyclic flow on the nodes WW
18:for every connected component XX of HH of size |X|>1|X|>1 do
19:  Find a Euler tour of XX, shortcut over nodes that appear more than once
20:  Incorporate the resulting cycle into PP using a shared node
21:end for
22:return PP \triangleright PP is a Hamiltonian ss-tt path

We consider Algorithm 1. Roughly speaking, the idea is to find a path-cycle cover, select a representative node for each cycle, delete the other cycle nodes, and repeat. Actually, a representative is selected for a component more general than a simple cycle, namely a union of one or more cycles. We ensure that each vertex is selected as a representative at most logn\log n times, which means that after 2logn+12\log n+1 iterations, each surviving vertex has participated in the acyclic part of the path-cycle covers at least logn+1\log n+1 times. This allows us at the end to find an ss-tt path which spans all the surviving vertices, WW, and consists entirely of edges in the acyclic part, FF, of the union of all the path-cycle covers, using a technique of [25]. Then we insert into it the subpaths obtained from the cyclic part, HH, of the union of path-cycle covers, connected through their representative vertices. We occasionally treat subgraphs satisfying appropriate degree constraints as flows or circulations.

Lemma 2.3

During the course of the algorithm, no label lvl_{v} exceeds the value logn\log n.

The idea of the proof is, as the algorithm proceeds, to maintain a forest on the set of nodes VV, such that the number of leaves in a subtree rooted at any node vVv\in V is at least 2lv2^{l_{v}}. The lemma then follows because the total number of leaves is at most nn. We first prove an auxiliary claim.

Claim 2.4

In each component AA found by Algorithm 1 on line 6, there are two distinct nodes xx and yy such that dx=dy=1d_{x}=d_{y}=1.

Proof. Let F¯\bar{F} be the value of FF at the start of the current iteration of the outside loop, i.e. before FF^{\prime} is added to it on line 4. F¯\bar{F} is acyclic, because during the course of the loop, all cycles of FF are subtracted from it. So AA is a union of cycles, formed from the sum of an acyclic flow F¯\bar{F} and a path-cycle cover FF^{\prime}, which sends exactly one unit of flow through each vertex.

Consider a topological ordering of nodes based on the flow F¯\bar{F}, and let xx and yy be the first and last nodes of AA, respectively, in this ordering. As AA always contains at least two nodes, xx and yy are distinct. Since xx and yy participate in some cycle(s) in AA, their in-degrees are at least 1. We now claim that the in-degree of xx in AA is at most 1. Indeed, since all other nodes of AA are later than xx in the topological ordering, it cannot have any flow coming from them in F¯\bar{F}. So the only incoming flow to xx can be in FF^{\prime}. But since FF^{\prime} sends a flow of exactly one unit through each vertex, the in-degree of xx in AA is at most one. A symmetrical argument can be made for yy, showing that its out-degree in AA is at most one. But since AA is a union of cycles, every node’s in-degree is equal to its out-degree, and the in-degree of yy is also at most 1. \Box

Proof of Lemma 2.3. As the algorithm proceeds, let us construct a forest on the set of nodes VV. Initially, each node is the root of its own tree. We maintain the invariant that WW is the set of tree roots in this forest. For each component AA that the algorithm considers, and the node vv found on line 8, we attach the nodes of AA, except vv, as children of vv. Note that the invariant is maintained, as these nodes are removed from WW on line 12. The set of nodes of each component AA found on line 6 is always a subset of WW, and thus our construction indeed produces a forest.

We show by induction on the steps of the algorithm that if a node has label ll, then its subtree contains at least 2l2^{l} leaves. Thus, since there are nn nodes total, no label can exceed log2n\log_{2}n. At the beginning of the algorithm, all labels are 0, and all trees have one leaf each, so the base case holds. Now consider some iteration in which the label of vertex vAv\in A is increased from lvl_{v} to lv+dvl_{v}+d_{v}. By Claim 2.4, there are nodes x,yAx,y\in A (possibly one of them equal to vv) with dx=dy=1d_{x}=d_{y}=1. Since vv minimizes lu+dul_{u}+d_{u} among all vertices uAu\in A, we have that lx+dxlv+dvl_{x}+d_{x}\geq l_{v}+d_{v} and ly+dylv+dvl_{y}+d_{y}\geq l_{v}+d_{v}, and thus lxlv+dv1l_{x}\geq l_{v}+d_{v}-1 and lylv+dv1l_{y}\geq l_{v}+d_{v}-1. Thus, by the induction hypothesis, the trees rooted at xx and yy each have at least 2lv+dv12^{l_{v}+d_{v}-1} leaves. Because we update the forest in such a way that vv’s new tree contains all the leaves of trees previously rooted at xx and yy, this tree now has at least 22lv+dv1=2lv+dv2\cdot 2^{l_{v}+d_{v}-1}=2^{l_{v}+d_{v}} leaves. \Box

Lemma 2.5

At the end of the algorithm’s main loop, the flow in FF passing through any node vWv\in W is equal to 2logn+1lv2\log n+1-l_{v}, and thus (by Lemma 2.3) is at least logn+1\log n+1.

Proof. There are 2logn+12\log n+1 iterations, each of which adds one unit of flow through each vertex vWv\in W. We now claim that for a vertex vWv\in W, the amount of flow removed from it is equal to its label, lvl_{v}. Flow is removed from vv only if vv becomes part of some component AA. Now, if it is ever part of AA, but not chosen as a representative on line 8, then it is removed from WW. Thus, we are only concerned about vertices that are chosen as representatives every time that they are part of AA. Such a vertex has flow dvd_{v} going through it in AA, which is the amount subtracted from FF. But since this is also the amount by which its label increases, the lemma follows. \Box

We now show that Algorithm 1 returns a Hamiltonian ss-tt path of cost at most (2log2n+1)L(2\log_{2}n+1)\cdot L.

Proof of Theorem 1.1. At the end of the main loop, all nodes of VV are part of either WW or HH or both. So when all components of HH are incorporated into the path PP, all nodes of VV become part of the path. We bound the cost of all the edges used in the final path by the total cost of all the path-cycle covers found on line 3 of the algorithm. We note that at the end of the algorithm, the cost of the flow F+HF+H is no more than this total.

We claim that when the ss-tt path PP is found on line 17, FF contains flow on every edge between consecutive nodes of PP. This is similar to an argument used in [25]. First, since FF is acyclic, it has a topological ordering. Suppose we find a flow decomposition of FF into paths. There are at most 2logn+12\log n+1 such paths, and, by Lemma 2.5, each vertex of WW participates in at least logn+1\log n+1, or more than half, of them. This means that any two vertices u,vWu,v\in W must share a path, say PP^{\prime}, in this decomposition. In particular, suppose that vv immediately follows uu in the path PP. This means that vv appears later than uu in the topological order, so on PP^{\prime} vv comes after uu. Moreover, we claim that on PP^{\prime}, vv will be the immediate successor of uu. If not, suppose that there is a node ww that appears between uu and vv in PP^{\prime}. But this means that in the topological ordering (and thus in PP), ww will appear after uu and before vv, which contradicts the fact that they are consecutive in PP. So we conclude that there is an edge with flow in FF between any two consecutive nodes of PP, and thus the path PP costs no more than the flow FF.

Regarding HH, we note that it is a sum of cycles, and thus Eulerian. So it is possible to find a Euler tour of each of its components, using only edges with flow in HH. The subsequent shortcutting can only decrease the cost. Thus, the total cost of cycles found on line 19 is no more than the cost of the flow HH. To describe how these cycles are incorporated into the path PP, we show that each of them (or, equivalently, each connected component of HH) shares exactly one node with WW (and thus with PP). Note that every component AA added to HH contains only nodes that are in WW at that time. Moreover, when this is done, all but one nodes of AA are expelled from WW. So when several components of HH are connected by the addition of AA, the invariant is maintained that there is one node per component that is shared with WW. Now, suppose that vv is the vertex shared by the cycle obtained from component XX and the path PP. On line 20, we incorporate the cycle into the path by following the path up to vv, then following the cycle up to the predecessor of vv, then connecting it to the successor of vv on the path. By triangle inequality, the resulting longer path costs no more than the sum of costs of the old path and the cycle. \Box

3 Integrality gap for relaxed ATSPP LP

Consider LP(α\alpha) with 12<α1\frac{1}{2}<\alpha\leq 1, and say that it has cost LL. We bound its integrality gap for ATSPP. As in the proof of Lemma 2.2, we can apply splitting-off to obtain a feasible solution to LP(α\alpha), of cost at most LL, on a graph induced by a subset of vertices WVW\subseteq V. Let xx be such a solution. Lemma 3.1 below shows how to use xx to find a feasible fractional solution to LP (6) on WW, of cost within a constant factor of LL, namely 32α1L\frac{3}{2\alpha-1}L. Since LP (6) has integer optimum, there is an integer solution to LP (6) on WW, and thus a path-cycle cover, of cost at most 32α1L\frac{3}{2\alpha-1}L. Then we can proceed as in Section 2, applying Algorithm 1 to bound the cost of the resulting ATSPP solution by 2logn+12\log n+1 times the path-cycle cover cost. This shows that LP(α\alpha) has integrality gap at most 6logn+32α1\frac{6\log n+3}{2\alpha-1}, proving Theorem 1.2.

Lemma 3.1

Given a solution xx to LP(α\alpha), with α>1/2\alpha>1/2, on a subset WVW\subseteq V, with cost at most LL, a feasible solution to LP (6) on WW of cost at most 32α1L\frac{3}{2\alpha-1}L can be found.

Proof. Multiply xx by 1/α1/\alpha. Now it constitutes a flow FF of 1/α1/\alpha units from ss to tt. Constraints (5), restricted to sets of size 1, imply that each node uu now has at least one unit of flow going through it. Find a flow decomposition of FF into paths and cycles, so that the union of the paths is acyclic. Let F=Fp+FcF=F_{p}+F_{c}, where FpF_{p} is the sum of flows on the paths in our decomposition, and FcF_{c} is the sum of flows on the cycles.

Choose some γ\gamma such that 12α<γ<1\frac{1}{2\alpha}<\gamma<1. For any node uu such that the amount of FpF_{p} flow going through uu is less than γ\gamma, shortcut any flow decomposition paths that contain uu, so that there is no more FpF_{p} flow going through uu. Let UWU\subseteq W be the set of vertices still participating in the FpF_{p} flow. Then each vertex in UU has at least γ\gamma units of FpF_{p} flow going through it, and each vertex in WUW\setminus U has at least 1γ1-\gamma units of FcF_{c} flow going through it.

We find a topological ordering of vertices in UU according to FpF_{p} (which is acyclic), and let PP be an ss-tt path that visits the nodes of UU in this topological order. We claim that the cost of PP is within a constant factor of the cost of FpF_{p}. The argument for this is similar to one in the proof of Theorem 1.1. Out of 1/α1/\alpha units of flow going from ss to tt in FpF_{p}, each vertex uUu\in U carries γ\gamma units, which is more than half of the total amount (as γ>1/2α\gamma>1/2\alpha). So for any two such vertices uu and vv, there must be shared flow paths that carry flow of at least 2γ1/α2\gamma-1/\alpha units. In particular, for every two consecutive nodes u,vPu,v\in P, FpF_{p} must contain such shared paths in which vv immediately follows uu. So the cost of PP is at most 12γ1/α\frac{1}{2\gamma-1/\alpha} times the cost of FpF_{p}.

We now define x~\tilde{x} as a flow equal to one unit of ss-tt flow on the path PP plus 11γ\frac{1}{1-\gamma} times the flow FcF_{c}. We claim that x~\tilde{x} is a feasible solution to LP (6): there is exactly one unit of flow from ss to tt (as FcF_{c} consists of cycles not containing ss or tt); there is flow conservation at all nodes except ss and tt; each vertex in UU (and thus in PP) has at least one unit of flow going through it; and each vertex in WUW\setminus U has at least one unit of flow going through it (as it had at least 1γ1-\gamma units of FcF_{c} flow). The cost of this solution is at most

12γ1/αcost(Fp)+11γcost(Fc)\displaystyle\frac{1}{2\gamma-1/\alpha}\cdot cost(F_{p})+\frac{1}{1-\gamma}\cdot cost(F_{c}) \displaystyle\leq max(12γ1/α,11γ)1αL.\displaystyle\max\left(\frac{1}{2\gamma-1/\alpha},\frac{1}{1-\gamma}\right)\cdot\frac{1}{\alpha}\,L.

If we set γ=13+13α\gamma=\frac{1}{3}+\frac{1}{3\alpha}, which satisfies 12α<γ<1\frac{1}{2\alpha}<\gamma<1, we see that the cost of x~\tilde{x} is at most 32α1L\frac{3}{2\alpha-1}\cdot L. \Box

4 Relaxed ATSPP LP with α1/2\alpha\leq 1/2

Consider LP (1) with α=1k12\alpha=\frac{1}{k}\leq\frac{1}{2} for some integer k2k\geq 2. It can be shown that, as a relaxation for the ATSPP problem, this LP has unbounded integrality gap. For example, let DD be an arbitrarily large value and consider the shortest path metric obtained from the graph in Figure 1. One can verify that the following assignment of xx-values to the arcs is feasible for LP (1) with α=1/2\alpha=\nicefrac{{1}}{{2}}. Assign a value of 1/2\nicefrac{{1}}{{2}} to arcs (1,2)(1,2), (3,2)(3,2), (3,6)(3,6), (1,4)(1,4), (5,4)(5,4), and (5,6)(5,6) and a value of 1 to arcs (2,3)(2,3) and (4,5)(4,5). Every other arc is assigned a value of 0. This assignment is feasible for the linear program and has objective function value 5. On the other hand, any Hamiltonian path from 1 to 6 has cost at least DD.

Refer to caption
Figure 1: Bad gap example for LP (1) with α=1/2\alpha=\nicefrac{{1}}{{2}}. Here, DD is an arbitrarily large integer.

Let LL be the cost of the optimal solution to LP(α=1k\alpha=\frac{1}{k}). We show how to find klognk\cdot\log n paths from ss to tt, such that each node of GG appears on at least one path, and the total cost of all these paths is at most klognLk\log n\cdot L. Let us define a kk-path-cycle cover to be a set of kk disjoint paths from ss to tt and zero or more cycles, which together cover all nodes. Like a path-cycle cover, the minimum-cost kk-path-cycle cover can be found by a combinatorial algorithm by creating kk copies of both ss and tt and using the matching algorithm described in [20].

Lemma 4.1

For any subset WVW\subseteq V that includes ss and tt, there is a kk-path-cycle cover of WW with total cost at most kLkL.

Proof. As in the proof of Lemma 2.2, we apply splitting-off to a solution of LP(α\alpha) to get a solution to LP(α\alpha) on a subset WVW\subseteq V of vertices, of no greater cost. Now, if we multiply this solution by kk, we get a feasible solution to LP (6) with constraints (7) replaced with

x(δ+(s))=x(δ(t))=k.x(\delta^{+}(s))=x(\delta^{-}(t))=k.

The cost of this solution is no more than kLkL. But this LP has an integer optimum, which, possibly after shortcutting, is exactly a kk-path-cycle cover. \Box

Proof of Theorem 1.3. We start with W=VW=V and repeat the following until W={s,t}W=\{s,t\}:

  1. 1.

    Find a kk-path-cycle cover FF of WW of cost at most kLkL, as guaranteed by Lemma 4.1.

  2. 2.

    Remove from WW all nodes (except ss and tt) that participate in paths of FF.

  3. 3.

    For each cycle CC of FF, choose a representative node vCv\in C, and remove from WW all nodes of CC except vv.

Let us say that the procedure terminates after TT iterations. As the size of WW halves in each iteration, TT is at most logn\log n. In the last iteration, all elements of WW must have participated in the paths, as otherwise there would be a node vv that remains in WW after this iteration. This implies that the graph F\bigcup F is connected. It also has total cost at most kLlognkL\log n, and, if we add kTkT edges from tt to ss, becomes Eulerian. This means that we can construct kTklognkT\leq k\log n paths from ss to tt, covering all nodes of VV, out of edges of F\bigcup F. \Box

5 Algorithm for kk-person ATSPP

In this section we consider the kk-person asymmetric traveling salesman path problem. The LP relaxation for this problem is similar to LP (1), but with x(δ+(s))=x(δ(t))=kx(\delta^{+}(s))=x(\delta^{-}(t))=k for constraint (3) and x(δ(S))1x(\delta^{-}(S))\geq 1 for constraint (5). Arguments similar to those in Section 2 show that a kk-path-cycle cover on any subset WW is a lower bound on the value of the LP relaxation for the kk-person ATSPP. Our algorithm constructs a solution that uses each edge of O(klogn)O(k\log n) kk-path-cycle covers at most kk times, proving a bound of O(k2logn)O(k^{2}\log n) on the approximation ratio and the integrality gap.

Our algorithm starts by running lines 1-16 of Algorithm 1, except with T=(k+1)logn+1T=(k+1)\log n+1 iterations of the loop and finding minimum-cost kk-path-cycle covers instead of the path-cycle covers on line 3. Then it finds kk ss-tt paths in the resulting acyclic graph FF, satisfying conditions of Lemma 5.1 below. The algorithm concludes by incorporating each component of the circulation HH into one of the obtained paths, similarly to lines 18-21 of Algorithm 1.

Lemma 5.1

After lines 1-16 of Algorithm 1 are executed with TT iterations of the loop on line 2 and finding minimum-cost kk-path-cycle covers on line 3, there exist kk ss-tt paths in the resulting acyclic graph FF, such that each edge of FF is used at most kk times, and every node of FF is contained in at least one path. Moreover, these paths can be found in polynomial time.

Proof. We prove the existence result first. We note that the graph FF can support kTkT units of flow from ss to tt. This is because in each of the TT iterations, kk ss-tt paths were added to the graph, whereas the removal of cycles does not decrease the amount of flow supported. So FF can be decomposed into kTkT edge-disjoint paths from ss to tt. Moreover, each node of FF participates in at least TlognT-\log n of these paths by Lemma 2.5.

Let KK be the comparability graph obtained from FF. Namely, KK has the same set of nodes as FF, and there is an undirected edge between nodes uu and vv in KK if FF contains a directed path either from uu to vv or from vv to uu. We claim that the nodes of KK can be partitioned into at most kk cliques. As comparability graphs are perfect graphs [14], the minimum number of cliques that KK can be partitioned into is equal to the size of the maximum independent set in KK. So suppose, for the sake of contradiction, that KK contains an independent set II of size k+1k+1. Then no nodes in II must share any of the paths in our decomposition of FF. Since each appears on at least TlognT-\log n paths, there must be at least (k+1)(Tlogn)(k+1)\cdot(T-\log n) paths total in the decomposition. However, this is a contradiction, since (k+1)(Tlogn)=(k+1)klogn+k+1>(k+1)klogn+k=kT(k+1)\cdot(T-\log n)=(k+1)k\log n+k+1>(k+1)k\log n+k=kT.

Given the set of kk cliques in KK, we can convert each of them into an ss-tt path in FF. For each such clique CC, order the nodes of CC in a way consistent with a topological ordering of FF. Then FF contains a path from each node uu of CC to the next node vv: the existence of a uvuv edge in KK shows that there is a path between these nodes in FF, and the topological ordering guarantees that this path goes in the correct direction. There must also be paths from ss to the first node of CC as well as from the last node of CC to tt, since ss is the only source and tt is the only sink of FF. Furthermore, the acyclicity of FF shows that each edge of FF is used at most once for connecting nodes in CC. As there are kk cliques, each edge is used at most kk times in total. If the number of cliques is smaller than kk, then we can add arbitrary paths from FF to our collection to obtain exactly kk paths.

To find the required paths algorithmically, we construct the following bipartite graph BB from FF with bipartitions XX and YY. For each vF{s,t}v\in F\setminus\{s,t\}, add nodes xvx_{v} to XX and yvy_{v} to YY (note that |X|=|Y||X|=|Y|). Now, for each ordered pair of nodes (u,v)(u,v) such that there is a directed path from uu to vv in FF, add an edge from xux_{u} to yvy_{v}. Let KK^{\prime} be the directed graph obtained from K{s,t}K-\{s,t\} by orienting each edge uvuv according to flow FF. It is easy to see that any collection of qq disjoint cliques covering K{s,t}K-\{s,t\} corresponds to a covering of KK^{\prime} by qq vertex-disjoint paths and vice-versa. We claim that there is a covering of KK^{\prime} by qq disjoint paths if and only if there is a matching in BB that leaves only qq nodes in XX and qq nodes in YY unmatched.

Consider a covering of KK^{\prime} by qq vertex-disjoint paths PP. Form a matching M={xuyv:uvusedbyP}M=\{x_{u}y_{v}:uv\rm{~used~by~}P\}. Since PP is a collection of vertex-disjoint paths, each node has indegree and outdegree at most one in PP, so MM is a valid matching. Furthermore, since PP covers the nodes of KK^{\prime} with qq paths, then exactly qq nodes have indegree 0 and exactly qq nodes have outdegree 0. Thus, in MM exactly qq nodes of XX and qq nodes of YY are unmatched. Conversely, let MM be a matching of BB that leaves exactly qq nodes of XX unmatched. For each unmatched node yuYy_{u}\in Y, form a directed path in KK^{\prime} starting at uu by the following process. If xux_{u} is matched to, say, yvy_{v}, then add arc uvuv to the path. Continue this process from yvy_{v} until the corresponding node in XX is not matched. This will form qq vertex-disjoint paths in KK^{\prime} that cover all nodes.

As noted earlier, we know that KK can be covered by at most kk disjoint cliques. Therefore, there is a matching in BB that leaves at most kk nodes in XX and kk nodes in YY unmatched. Compute such a matching and map it to the corresponding paths in KK^{\prime}. Finally, extend these at most kk paths to sts-t paths by adding an arc from ss to the start of each path and an arc from the end of each path to tt. Again, since the only source in FF is ss and the only sink in FF is tt, these arcs correspond to edges in KK. \Box

Proof of Theorem 1.4. Let LL be the cost of a linear programming relaxation for the problem. The edges of FF as well as the edges used to connect the eulerian components of HH to the paths come from the union of TT kk-path-cycle covers on subsets of VV, and thus cost at most TL=O(klogn)LT\cdot L=O(k\log n)\cdot L. However, the algorithm may use each edge of FF up to kk times in the paths of Lemma 5.1, which makes the total cost of the produced solution at most O(k2logn)LO(k^{2}\log n)\cdot L. \Box

6 Approximation algorithm for Directed Latency

We introduce LP relaxation (8) for the directed latency problem. The use of xuwx_{uw} and fuwvf^{v}_{uw} variables in an integer programming formulation for directed latency was proposed by Mendez-Diaz et al. [22], who do a computational evaluation of the strength of its LP relaxation. However, our LP formulation uses a different set of constraints than the one in [22].

In LP (8), a variable xuwx_{uw} indicates that node uu appears before node ww on the path. Similarly, xuvwx_{uvw} for three distinct nodes uu, vv, ww indicates that they appear in this order on the path. For every node vsv\neq s, we send one unit of flow from ss to vv, and we call it the vv-flow. Then fuwvf^{v}_{uw} is the amount of vv-flow going through edge (u,w)(u,w), and (v)\ell(v) is the latency of node vv. To show that this LP is a relaxation of the directed latency problem, given a solution path PP, we can set fuwv=1f^{v}_{uw}=1 whenever the edge (u,w)(u,w) is in PP and vv occurs later than uu in PP, and fuwv=0f^{v}_{uw}=0 otherwise. So fvf^{v} is one unit of flow from ss to vv along the path PP. Also setting the ordering variables xuwx_{uw} and xuvwx_{uvw} to 0 or 1 appropriately and setting (v)\ell(v) to the latency of vv in PP, we get a feasible solution to LP (8) of the same cost as the total latency of PP.

min vs(v)\displaystyle\sum_{v\neq s}\ell(v) (8)
s.t. (v)uwduwfuwvv\displaystyle\ell(v)\geq\sum_{uw}d_{uw}f^{v}_{uw}\hskip 93.89409pt\forall v
(v)[dsu+duw+dwv]xuwvu,w,v:|{u,w,v}|=3\displaystyle\ell(v)\geq[d_{su}+d_{uw}+d_{wv}]\,x_{uwv}\hskip 39.83385pt\forall u,w,v:|\{u,w,v\}|=3 (9)
(t)(v)v\displaystyle\ell(t)\geq\ell(v)\hskip 128.0374pt\forall v
xuw=xvuw+xuvw+xuwvu,w,v:|{u,w,v}|=3\displaystyle x_{uw}=x_{vuw}+x_{uvw}+x_{uwv}\hskip 48.36967pt\forall u,w,v:|\{u,w,v\}|=3 (10)
xuw+xwu=1u,w:uw\displaystyle x_{uw}+x_{wu}=1\hskip 108.12047pt\forall u,w:u\neq w (11)
xsu=xut=1u{s,t}\displaystyle x_{su}=x_{ut}=1\hskip 113.81102pt\forall u\notin\{s,t\}
wfwuv=wfuwvv,u{s,v}\displaystyle\sum_{w}f^{v}_{wu}=\sum_{w}f^{v}_{uw}\hskip 93.89409pt\forall v,\forall u\notin\{s,v\} (12)
wfswv=wfwvv=1v\displaystyle\sum_{w}f^{v}_{sw}=\sum_{w}f^{v}_{wv}=1\hskip 76.82243pt\forall v
fusv=fvuv=0u,v\displaystyle f^{v}_{us}=f^{v}_{vu}=0\hskip 113.81102pt\forall u,v (13)
wfuwv=xuvv,uv\displaystyle\sum_{w}f^{v}_{uw}=x_{uv}\hskip 110.96574pt\forall v,u\neq v (14)
fuwvfuwtu,w,v\displaystyle f^{v}_{uw}\leq f^{t}_{uw}\hskip 128.0374pt\forall u,w,v (15)
uS,wSfuwvxyvSV{s},yS\displaystyle\sum_{u\notin S,w\in S}f^{v}_{uw}\geq x_{yv}\hskip 93.89409pt\forall S\subset V\setminus\{s\},y\in S (16)
xuw,xuwv,fuwv0u,w,v\displaystyle x_{uw},x_{uwv},f^{v}_{uw}\geq 0\hskip 92.47145pt\forall u,w,v

Constraints (12) are the flow conservation constraints for vv-flow at node uu. Constraints (13) ensure that no vv-flow enters ss or leaves vv. Constraints (14) say that vv-flow passes through uu if and only if uu occurs before vv. Since the tt-flow goes through every vertex, when all the variables are in {0,1}\{0,1\}, it defines an ss-tt path. We can think of the tt-flow as the universal flow and Constraints (15) ensure that every vv-flow follows an edge which has a universal flow on it. Constraints (16), in an integer solution, ensure that if a set SS contains some node yy that comes before vv (i.e. xyv=1x_{yv}=1), then at least one unit of vv-flow enters SS.

We note that a min-cut subroutine can be used to detect violated constraints of type (16), allowing us to solve LP (8) using the ellipsoid method. Our analysis does not actually use Constraints (15), so we can drop them from the LP. Although without these constraints the corresponding integer program may not be an exact formulation for the directed latency problem, we can still find a solution whose cost is within factor O(logn)O(\log n) of this relaxed LP.

Lemma 6.1

Given a feasible solution to LP (8) with objective value LL, we can find another solution of value at most (1+1n)L(1+\frac{1}{n})L in which the ratio of the largest to smallest latency ()\ell(\,) is at most n2n^{2}.

Proof. Let (x,,f)({x},{\ell},{f}) be a feasible solution with value LL, with (t)\ell(t) the largest latency value in this solution. Note that L(t)L\geq\ell(t). Define a new feasible solution (x,,f)({x},{\ell^{\prime}},{f}) by (v)=max{(v),(t)/n2}{\ell^{\prime}}(v)=\max\{\ell(v),\ell(t)/n^{2}\}. The total increase in the objective function is at most n(t)n2L/nn\cdot\frac{\ell(t)}{n^{2}}\leq L/n as there are nn nodes in total. Thus, the objective value of this new solution is at most (1+1/n)L(1+1/n)L. \Box

Using Lemma 6.1 and scaling the edge lengths (if needed), we can assume that we have a solution (x,,f)({x},{\ell},{f}) satisfying the following:

Corollary 6.2

There is a feasible solution (x,,f)({x},{\ell},{f}) in which the smallest latency is 1 and the largest latency is at most n2n^{2} and whose cost is at most (1+1n)(1+\frac{1}{n}) times the optimum LP solution.

Let LL^{*} be the value (i.e. total latency) of this solution.

The idea of our algorithm is to construct ss-vv paths for several nodes vv, such that together they cover all vertices of VV, and then to “stitch” these paths together to obtain one Hamiltonian path. We use our results for ATSPP to construct these paths. For this, we observe that parts of a solution to the latency LP (8) can be transformed to obtain feasible solutions to different instances of LP(α\alpha). For example, we can construct a Hamiltonian ss-tt path of total length O(logn)(t)O(\log n)\cdot\ell(t) as follows. From a solution to LP (8), take the tt-flow defined by the variables fuwtf^{t}_{uw}, and notice that it constitutes a feasible solution to LP(α=1\alpha=1). In particular, since xyt=1x_{yt}=1 for all yy, constraints (16) of LP (8) for v=tv=t imply that the set constraints (5) of LP (1) are satisfied. The objective function value for LP (1) of this solution is at most (t)\ell(t). Thus, by Theorem 1.1, we can find the desired path. Of course, this path is not yet a good solution for the latency problem, as even nodes vv with (v)(t)\ell(v)\ll\ell(t) can have latency in this path close to O(logn)(t)O(\log n)\cdot\ell(t). Our algorithm constructs several paths of different lengths, incorporating most nodes vv into paths of length O(logn)(v)O(\log n)\cdot\ell(v), and then combines these paths to obtain the final solution.

Algorithm 2  Directed Latency
1:Let (x,,f)({x},{\ell},{f}) be a solution to LP (8). Let SS be the path {s}\{s\}.
2:Partition the nodes into g=log(t)+1g=\lfloor\log\ell(t)+1\rfloor sets V1,,VgV_{1},\ldots,V_{g} with vViv\in V_{i} if 2i1(v)<2i2^{i-1}\leq\ell(v)<2^{i}.
3:for i=1i=1 to g1g-1 do
4:  for j=1j=1 to 22 do
5:   if ViV_{i}\neq\emptyset then
6:     Let vij=argmaxvVi|{uVi:xuv12}|v_{i}^{j}={\rm argmax}_{v\in V_{i}}|\{u\in V_{i}:x_{uv}\geq\frac{1}{2}\}| \triangleright this maximizes the size of BijB_{i}^{j} below
7:     Let Aij={uV:xuvij23+2i2+j24logn}A_{i}^{j}=\{u\in V:x_{uv_{i}^{j}}\geq\frac{2}{3}+\frac{2i-2+j}{24\log n}\}
8:     Let Bij={uVi:xuvij12}B_{i}^{j}=\{u\in V_{i}:x_{uv_{i}^{j}}\geq\frac{1}{2}\} \triangleright |Bij|(|Vi|1)/2|B_{i}^{j}|\geq(|V_{i}|-1)/2
9:     Find an ss-vijv^{j}_{i} path PijP^{j}_{i}, containing AijA_{i}^{j}, of cost δ1logn2i\delta_{1}\log n\cdot 2^{i}; append PijP^{j}_{i} to SS.
10:     Find 2logn2\log n ss-vijv^{j}_{i} paths 𝒫ij{\cal P}^{j}_{i}, containing BijB_{i}^{j}, of total cost at most 2logn2i2\log n\cdot 2^{i}; append 𝒫ij{\cal P}^{j}_{i} to SS.
11:     Vi=Vi(AijBij{vij})V_{i}=V_{i}\setminus(A_{i}^{j}\cup B_{i}^{j}\cup\{v_{i}^{j}\}) \triangleright size of ViV_{i} is at least halved
12:   end if
13:  end for
14:  Let Vi+1=Vi+1ViV_{i+1}=V_{i+1}\cup V_{i} \triangleright remaining nodes are carried over to the next set
15:end for
16:Construct an ss-tt path PgP_{g}, containing VgV_{g}, of cost at most (2logn+1)(t)(2\log n+1)\cdot\ell(t). Append PgP_{g} to SS.
17:Shortcut SS over the later copies of repeated nodes. Output SS.

6.1 Constructing the paths

Algorithm 2 finds an approximate solution to the directed latency problem, and we now explain how some of its steps are performed. The algorithm maintains a path SS, initially containing only the source, and gradually adds new parts to it. This is done through operation append on lines 9, 10, and 16. To append a path PP to SS means to extend SS by connecting its last node to the first node of PP that does not already appear in SS, and then following until the end of PP. For example, if S=sabcS=sabc and P=sbdceP=sbdce, the result is S=sabcdceS=sabcdce. Step 10 appends a set of paths to SS. This just means sequentially appending all paths in the set, in arbitrary order, to SS.

Next we describe how to build paths PijP^{j}_{i} and 𝒫ij{\cal P}^{j}_{i} in Steps 9 and 10. We described above how to use Theorem 1.1 to build a Hamiltonian ss-tt path PP of length (2logn+1)(t)(2\log n+1)\cdot\ell(t), which is used on line 16 of the algorithm. The idea behind building paths PijP^{j}_{i} and 𝒫ij{\cal P}^{j}_{i} with their corresponding length guarantees is similar.

To construct PijP^{j}_{i}, we do the following. Since each node uAiju\in A^{j}_{i} has xuvij2/3x_{uv^{j}_{i}}\geq 2/3, the amount of vij{v^{j}_{i}}-flow that goes through uu is at least 2/32/3. We apply splitting-off on this flow to nodes outside of AijA^{j}_{i}, and obtain a total of one unit of ss-vijv^{j}_{i} flow over the nodes in AijA^{j}_{i}, of cost no larger than (vij)2i\ell(v^{j}_{i})\leq 2^{i}. This flow satisfies all the constraints of LP(α=2/3\alpha=2/3), including the set constraints (5), which are implied by the set constraints (16) of the latency LP (8), as xuvij2/3x_{uv^{j}_{i}}\geq 2/3 for uAiju\in A^{j}_{i}. Thus, using Theorem 1.2, we can find a path from ss to vijv^{j}_{i}, spanning all the nodes of AijA^{j}_{i}, whose cost is at most δ1logn2i\delta_{1}\log n\cdot 2^{i} for some constant δ1\delta_{1}.

To obtain the set of paths 𝒫ij{\cal P}^{j}_{i}, we look at the vijv^{j}_{i}-flow going through each node of BijB^{j}_{i}, whose amount is at least 12\frac{1}{2}. After splitting-off all nodes outside of BijB^{j}_{i}, we get a feasible solution of cost at most (vij)2i\ell(v^{j}_{i})\leq 2^{i} to LP(α=1/2\alpha=1/2). By Theorem 1.3, we can find 2logn2\log n paths, each going from ss to vijv^{j}_{i}, which together cover all the nodes of BijB^{j}_{i}, and whose total cost is at most 2logn2i2\log n\cdot 2^{i}.

6.2 Connecting the paths

We now bound the lengths of edges introduced by the append operation in the different cases. For a path PP, let app(P)app(P) be the length of the edge used for appending PP to the path SS in the algorithm.

Lemma 6.3

For any ii, jj, and path P𝒫ijP\in{\cal P}^{j}_{i}, app(P)62iapp(P)\leq 6\cdot 2^{i}. Also, app(Pg)62gapp(P_{g})\leq 6\cdot 2^{g}.

Proof. Let uu be the last node of the path SS before the append operation, vijv^{j}_{i} be the last node of PP, and ww be the first node of PP that does not appear in SS. We need to bound duwd_{uw}, the distance from uu to ww.

We observe that xwu5/6x_{wu}\leq 5/6. If u=su=s, this is trivial. Otherwise, u=viju=v^{j^{\prime}}_{i^{\prime}} is the endpoint of some path constructed in an earlier iteration. Note that j2j^{\prime}\leq 2 and ig1log(t)2logni^{\prime}\leq g-1\leq\log\ell(t)\leq 2\log n by our assumption that (t)n2\ell(t)\leq n^{2}, which means that 5623+2i2+j24logn\frac{5}{6}\geq\frac{2}{3}+\frac{2i^{\prime}-2+j^{\prime}}{24\log n}. So, if we had xwu>5/6x_{wu}>5/6, then ww would be included in the set AijA^{j^{\prime}}_{i^{\prime}} and in the path PijP^{j^{\prime}}_{i^{\prime}}, and thus be already contained in SS, which is a contradiction.

Consequently, xuw=1xwu1/6x_{uw}=1-x_{wu}\geq 1/6. This means that the amount of ww-flow that goes through uu is at least 1/61/6. Since this flow has to reach ww after visiting uu, it has to cover a distance of at least duwd_{uw}, thus adding at least 16duw\frac{1}{6}\cdot d_{uw} to (w)\ell(w), the latency of ww. Thus, (w)16duw\ell(w)\geq\frac{1}{6}d_{uw}, and duw6(w)d_{uw}\leq 6\ell(w). Now, if w𝒫ijw\in{\cal P}^{j}_{i}, it must be in BijB^{j}_{i}, which, by definition, means that wViw\in V_{i}, and therefore (w)2i\ell(w)\leq 2^{i}. So app(P)=duw62iapp(P)=d_{uw}\leq 6\cdot 2^{i}. If wPgw\in P_{g}, then app(Pg)6(w)6(t)62gapp(P_{g})\leq 6\ell(w)\leq 6\ell(t)\leq 6\cdot 2^{g}. \Box

To bound the cost of appending a path PijP^{j}_{i} to SS, we need an auxiliary lemma.

Lemma 6.4

For any ϵ>0\epsilon>0, if xuw+xwv1+ϵx_{uw}+x_{wv}\geq 1+\epsilon, then (v)ϵduw\ell(v)\geq\epsilon\cdot d_{uw}.

Proof. Using Constraint (10) we have:

1+ϵ\displaystyle 1+\epsilon \displaystyle\leq xuw+xwv\displaystyle x_{uw}+x_{wv}
=\displaystyle= (xvuw+xuvw+xuwv)+(xuwv+xwuv+xwvu)\displaystyle(x_{vuw}+x_{uvw}+x_{uwv})+(x_{uwv}+x_{wuv}+x_{wvu})
=\displaystyle= 2xuwv+(xvuw+xuvw)+(xwuv+xwvu).\displaystyle 2x_{uwv}+(x_{vuw}+x_{uvw})+(x_{wuv}+x_{wvu}).

On the other hand, (xvuw+xuvw)+(xwuv+xwvu)xvw+xwu=2(xuw+xwv)1ϵ(x_{vuw}+x_{uvw})+(x_{wuv}+x_{wvu})\leq x_{vw}+x_{wu}=2-(x_{uw}+x_{wv})\leq 1-\epsilon, using again Constraint (10), then Constraint (11), and the assumption of the lemma. Therefore, 2xuwv(1+ϵ)(1ϵ)=2ϵ2x_{uwv}\geq(1+\epsilon)-(1-\epsilon)=2\epsilon, i.e. xuwvϵx_{uwv}\geq\epsilon. Then the claim follows using Constraint (9). \Box

Lemma 6.5

For any ii and jj, app(Pij)24logn2iapp(P^{j}_{i})\leq 24\log n\cdot 2^{i}.

Proof. Let uu, vijv^{j}_{i}, and ww be as in the proof of Lemma 6.3. To bound duwd_{uw}, we consider two cases.

Case 1: If wViw\in V_{i}, we apply the same proof as for Lemma 6.3 and conclude that app(Pij)62iapp(P^{j}_{i})\leq 6\cdot 2^{i}.

Case 2: If wViw\not\in V_{i}, let (i,j)(i^{\prime},j^{\prime}) be an earlier iteration of the algorithm in which node u=viju=v^{j^{\prime}}_{i^{\prime}} was added to SS. Since wSw\notin S, it must be that wAijw\notin A^{j^{\prime}}_{i^{\prime}}, and thus xwu<23+2i2+j24lognx_{wu}<\frac{2}{3}+\frac{2i^{\prime}-2+j^{\prime}}{24\log n}. On the other hand, since wAijw\in A^{j}_{i}, it must be that xwvij23+2i2+j24lognx_{wv^{j}_{i}}\geq\frac{2}{3}+\frac{2i-2+j}{24\log n}. Because 2i+j2i+j12i^{\prime}+j^{\prime}\leq 2i+j-1, we have

xuw+xwvij\displaystyle x_{uw}+x_{wv^{j}_{i}} =\displaystyle= (1xwu)+xwvij\displaystyle(1-x_{wu})+x_{wv^{j}_{i}}
\displaystyle\geq 12i2+j24logn+2i2+j24logn\displaystyle 1-\frac{2i^{\prime}-2+j^{\prime}}{24\log n}+\frac{2i-2+j}{24\log n}
\displaystyle\geq 1+124logn.\displaystyle 1+\frac{1}{24\log n}.

Using Lemma 6.4, we get that app(Pij)=duw24logn(vij)24logn2iapp(P^{j}_{i})=d_{uw}\leq 24\log n\cdot\ell(v^{j}_{i})\leq 24\log n\cdot 2^{i}. \Box

Lemma 6.6

Suppose that a node vv is first added to path SS in iteration kk of the outer loop of the algorithm. Then the latency of vv in SS is at most δ2logn2k\delta_{2}\log n\cdot 2^{k}, for some constant δ2>0\delta_{2}>0.

Proof. Let len(P)len(P) denote the length of a path PP. The latency of node vv on SS is at most:

i=1kj=12[len(Pij)+P𝒫ijlen(P)+app(Pij)+P𝒫ijapp(P)]\displaystyle\sum_{i=1}^{k}\sum_{j=1}^{2}\left[len(P^{j}_{i})+\sum_{P\in{\cal P}^{j}_{i}}len(P)+app(P^{j}_{i})+\sum_{P\in{\cal P}^{j}_{i}}app(P)\right]
\displaystyle\leq i=1kj=12[δ1logn2i+2logn2i+24logn2i+2logn62i]\displaystyle\sum_{i=1}^{k}\sum_{j=1}^{2}\left[\delta_{1}\log n\cdot 2^{i}+2\log n\cdot 2^{i}+24\log n\cdot 2^{i}+2\log n\cdot 6\cdot 2^{i}\right]
\displaystyle\leq δ2logn2k\displaystyle\delta_{2}\log n\cdot 2^{k}

\Box

Suppose that nin_{i} is the number of nodes that are originally placed into the set ViV_{i}. Since a node vv is originally placed in ViV_{i} if (v)2i1\ell(v)\geq 2^{i-1}, the value of the LP solution LL^{*} can be bounded by:

L=v(v)i=1gni 2i1.L^{*}~=~\sum_{v}\ell(v)~\geq~\sum_{i=1}^{g}n_{i}\,2^{i-1}. (17)

Let nin^{\prime}_{i} denote the size of ViV_{i} at the beginning of iteration ii of the outer loop. Note that nin^{\prime}_{i} may be larger than nin_{i} since some nodes may have been moved to ViV_{i} in Step 14 of the previous iteration.

Claim 6.7

For any ii, the size of the set ViV_{i} at the end of iteration ii is at most ni/4n^{\prime}_{i}/4.

Proof. Consider the iteration (i,j=1)(i,j=1). Note that the vertex vijv^{j}_{i} is chosen precisely to maximize the number of nodes uu in ViV_{i} with xuvij1/2x_{uv^{j}_{i}}\geq 1/2, which is the size of the set BijB^{j}_{i}. If we imagine a directed graph HH on the set of vertices ViV_{i}, in which an edge (u,w)(u,w) exists whenever xuw1/2x_{uw}\geq 1/2, then vijv^{j}_{i} is the vertex with highest in-degree in this graph. Now, from Constraint (11), it’s not hard to see that some vertex in HH will have in-degree at least (n1)/2(n^{\prime}-1)/2. So the number of nodes removed from ViV_{i} in step 11 of the algorithm is at least |Bij{vij}|n/2|B^{j}_{i}\cup\{v^{j}_{i}\}|\geq n^{\prime}/2, and size of ViV_{i} decreases at least by a factor of two. Similarly, at least half of the remaining nodes of ViV_{i} are removed in the iteration j=2j=2, so overall the size of ViV_{i} decreases at least by a factor of four. \Box

We now show that the total latency of the final solution SS is at most O(logn)LO(\log n)\cdot L^{*}.

Proof of Theorem 1.5. From Claim 6.7, it follows that at most a 1/41/4 fraction of the nin^{\prime}_{i} nodes that are in ViV_{i} at the beginning of iteration ii are moved to the set Vi+1V_{i+1} at the end of this iteration. Thus, for any 1<ig1<i\leq gnini+ni1/4n^{\prime}_{i}\leq n_{i}+{n^{\prime}_{i-1}}/{4}. This implies that nih=1inh/4ihn^{\prime}_{i}\leq\sum_{h=1}^{i}n_{h}/4^{i-h}.

Now we claim that the total latency of the solution SS is at most i=1gniδ2logn2i\sum_{i=1}^{g}n^{\prime}_{i}\cdot\delta_{2}\log n\cdot 2^{i}. This is because at most nin^{\prime}_{i} nodes are added to SS in iteration ii, and each such node has latency at most δ2logn2i\delta_{2}\log n\cdot 2^{i} (using Lemma 6.6). Therefore, the total latency of the solution is at most:

i=1gniδ2logn2i\displaystyle\sum_{i=1}^{g}n^{\prime}_{i}\cdot\delta_{2}\log n\cdot 2^{i} \displaystyle\leq i=1gδ2logn2ih=1inh4ih\displaystyle\sum_{i=1}^{g}\delta_{2}\log n\cdot 2^{i}\cdot\sum_{h=1}^{i}\frac{n_{h}}{4^{i-h}}
=\displaystyle= δ2logni=1gh=1i2hi2hnh\displaystyle\delta_{2}\log n\sum_{i=1}^{g}\sum_{h=1}^{i}2^{h-i}\cdot 2^{h}\,n_{h}
\displaystyle\leq δ2lognh=1g2hnhi=012i\displaystyle\delta_{2}\log n\sum_{h=1}^{g}2^{h}\,n_{h}\sum_{i=0}^{\infty}\frac{1}{2^{i}}
\displaystyle\leq O(logn)L,\displaystyle O(\log n)\cdot L^{*},

using the bound on nin^{\prime}_{i}, re-ordering the summation, and using inequality (17). Combined with Corollary 6.2, this proves the theorem. \Box

6.3 Extensions

The above algorithm can be easily extended to the more general setting in which every node of the graph comes with a weight c(v)c(v) and the goal is to find a Hamiltonian ss-tt path to minimize the total weighted latency, where the weighted latency of a node viv_{i} is equal to c(v)j=1i1dvjvj+1c(v)\cdot\sum_{j=1}^{i-1}d_{v_{j}v_{j+1}}. This requires changing the objective function of LP (8) to vsc(v)(v)\sum_{v\neq s}c(v)\ell(v) and changing the definition of vijv_{i}^{j} on line 6 of Algorithm 2 to maximize the total weight, instead of the number, of vertices in BijB_{i}^{j}.

We also note that our approximation guarantee for directed latency is of the form O(γ+logn)O(\gamma+\log n), where γ\gamma is the integrality gap of ATSPP. So an improvement of the bound on γ\gamma would not immediately lead to an improvement for directed latency.

Acknowledgements

This work was partly done while the second author was visiting Microsoft Research New England; he thanks MSR for hosting him. We also thank the anonymous referees for helpful comments.

References

  • [1] F. N. Afrati, S. S. Cosmadakis, C. H. Papadimitriou, G. Papageorgiou, and N. Papakostantinou. The complexity of the travelling repairman problem. Informatique Theorique et Applications, 20(1):79–87, 1986.
  • [2] A. Archer, A. Levin, and D. P. Williamson. A faster, better approximation algorithm for the minimum latency problem. SIAM J. Comput., 37(5):1472–1498, 2008.
  • [3] A. Asadpour, M. X. Goemans, A. Madry, S. Oveis Gharan, and A. Saberi. An O(logn/loglogn){O(\log n/\log\log n)}-approximation algorithm for the asymmetric traveling salesman problem. In Proc. 21st ACM Symp. on Discrete Algorithms, 2010.
  • [4] A. Blum, P. Chalasani, D. Coppersmith, B. Pulleyblank, P. Raghavan, and M. Sudan. The minimum latency problem. In Proc. 26th ACM Symp. on Theory of Computing, 1994.
  • [5] M. Charikar, M. X. Goemans, and H. Karloff. On the integrality ratio for asymmetric TSP. In Proc. 45th IEEE Symp. on Foundations of Computer Science, 2004.
  • [6] K. Chaudhuri, B. Godfrey, S. Rao, and K. Talwar. Paths, trees, and minimum latency tours. In Proc. 44th IEEE Symp. on Foundations of Computer Science, 2003.
  • [7] C. Chekuri and M. Pal. An O(logn)O(\log n) approximation ratio for the asymmetric traveling salesman path problem. Theory of Computing, 3(1):197–209, 2007.
  • [8] N. Christofides. Worst-case analysis of a new heuristic for the traveling salesman problem. Technical report, Graduate School of Industrial Administration, Carnegie-Mellon University, Pittsburgh, PA, 1976.
  • [9] U. Feige and M. Singh. Improved approximation ratios for traveling salesperson tours and paths in directed graphs. In Proc. 10th APPROX, 2007.
  • [10] A. Frank. On connectivity properties of Eulerian digraphs. Ann. Discrete Math., 41:179–194, 1989.
  • [11] A. Frieze, G. Galbiati, and F. Maffioli. On the worst-case performance of some algorithms for the asymmetric traveling salesman problem. Networks, 12:23–39, 1982.
  • [12] A. M. Frieze. An extension of Christofides heuristic to the k-person travelling salesman problem. Discrete Applied Mathematics, 6(1):79–83, 1983.
  • [13] M. Goemans and J. Kleinberg. An improved approximation ratio for the minimum latency problem. Math. Program., 82:111–124, 1998.
  • [14] M. C. Golumbic. Algorithmic Graph Theory and Perfect Graphs (Annals of Discrete Mathematics, Vol 57). North-Holland Publishing Co., Amsterdam, The Netherlands, second edition, 2004.
  • [15] G. Gutin and A. P. Punnen, editors. Traveling Salesman Problem and Its Variations. Springer, Berlin, 2002.
  • [16] J. A. Hoogeveen. Some paths are more difficult than cycles. Oper. Res. Lett., 10:291–295, 1991.
  • [17] B. Jackson. Some remarks on arc-connectivity, vertex splitting, and orientation in digraphs. Journal of Graph Theory, 12(3):429–436, 1988.
  • [18] H. Kaplan, M. Lewenstein, N. Shafrir, and M. Sviridenko. Approximation algorithms for asymmetric TSP by decomposing directed regular multigraphs. J. ACM, 52(4):602–626, 2005.
  • [19] J. Kleinberg and D. P. Williamson. Unpublished note, 1998.
  • [20] F. Lam and A. Newman. Traveling salesman path problems. Math. Program., 113(1):39–59, 2008.
  • [21] E. Lawler, J. K. Lenstra, A. H. G. Rinnooy Kan, and D. Shmoys, editors. The Traveling Salesman Problem: A guided tour of combinatorial optimization. John Wiley & Sons Ltd., 1985.
  • [22] I. Mendez-Diaz, P. Zabala, and A. Lucena. A new formulation for the traveling deliveryman problem. Discrete Applied Mathematics, 156(17):3223–3237, 2008.
  • [23] E. Minieka. The deliveryman problem on a tree network. Ann. Oper. Res., 18:261–266, 1989.
  • [24] V. Nagarajan and R. Ravi. Poly-logarithmic approximation algorithms for directed vehicle routing problems. In Proc. 10th APPROX, pages 257–270, 2007.
  • [25] V. Nagarajan and R. Ravi. The directed minimum latency problem. In Proc. 11th APPROX, pages 193–206, 2008.
  • [26] C. H. Papadimitriou and S. Vempala. On the approximability of the traveling salesman problem. Combinatorica, 26(1):101–120, 2006.
  • [27] D. Shmoys and D. P. Williamson. Analyzing the Held-Karp TSP bound: a monotonicity property with application. Inf. Process. Lett., 35(6):281–285, 1990.
  • [28] D. P. Williamson. Analysis of the Held-Karp heuristic for the traveling salesman problem. M.S. Thesis, MIT, 1990.
  • [29] L. A. Wolsey. Heuristic analysis, linear programming and branch and bound. Mathematical Programming Study, 13:121–134, 1980.