Simpler Approximation of the Maximum Asymmetric Traveling Salesman Problem

Similar documents
arxiv: v1 [cs.ds] 15 Jan 2014

Improved approximation ratios for traveling salesperson tours and paths in directed graphs

Two Approximation Algorithms for 3-Cycle Covers

New Approximation Algorithms for (1,2)-TSP

Advanced Methods in Algorithms HW 5

Introduction to Approximation Algorithms

Introduction III. Graphs. Motivations I. Introduction IV

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19:

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017

Reducing Directed Max Flow to Undirected Max Flow and Bipartite Matching

Lecture 8: The Traveling Salesman Problem

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

1 The Traveling Salesperson Problem (TSP)

Counting the Number of Eulerian Orientations

A constant-factor approximation algorithm for the asymmetric travelling salesman problem

Theorem 2.9: nearest addition algorithm

val(y, I) α (9.0.2) α (9.0.3)

1 Variations of the Traveling Salesman Problem

An O(log n/ log log n)-approximation Algorithm for the Asymmetric Traveling Salesman Problem

5.5 The Travelling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

A near-optimal approximation algorithm for Asymmetric TSP on embedded graphs

Approximation Algorithms

An O(log n) Approximation Ratio for the Asymmetric Traveling Salesman Path Problem

Improved Approximations for Graph-TSP in Regular Graphs

Fast and Simple Algorithms for Weighted Perfect Matching

COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)

Graphic TSP in cubic graphs

arxiv:cs/ v1 [cs.ds] 20 Feb 2003

CSE 548: Analysis of Algorithms. Lecture 13 ( Approximation Algorithms )

On Approximating Minimum Vertex Cover for Graphs with Perfect Matching

A Constant-Factor Approximation Algorithm for the Asymmetric Traveling Salesman Problem

6.889 Lecture 15: Traveling Salesman (TSP)

Notes 4 : Approximating Maximum Parsimony

Hardness of Subgraph and Supergraph Problems in c-tournaments

Strongly Connected Spanning Subgraph for Almost Symmetric Networks

1 Better Approximation of the Traveling Salesman

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

Graphs. Pseudograph: multiple edges and loops allowed

Vertex Cover Approximations

Module 6 NP-Complete Problems and Heuristics

New Inapproximability Bounds for TSP

6. Lecture notes on matroid intersection

FOUR EDGE-INDEPENDENT SPANNING TREES 1

MITOCW watch?v=zm5mw5nkzjg

Hardness of Approximation for the TSP. Michael Lampis LAMSADE Université Paris Dauphine

On Exploring Temporal Graphs of Small Pathwidth

Assignment 5: Solutions

Steiner Trees and Forests

Improved algorithms for constructing fault-tolerant spanners

Approximation Algorithms

Module 6 P, NP, NP-Complete Problems and Approximation Algorithms

arxiv: v1 [cs.ds] 7 Apr 2018

Modules. 6 Hamilton Graphs (4-8 lectures) Introduction Necessary conditions and sufficient conditions Exercises...

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

A Note on Polyhedral Relaxations for the Maximum Cut Problem

Lecture 1. 2 Motivation: Fast. Reliable. Cheap. Choose two.

Tying up the loose ends in fully LZW-compressed pattern matching

Varying Applications (examples)

Acyclic Edge Colorings of Graphs

Module 6 NP-Complete Problems and Heuristics

On the Maximum Quadratic Assignment Problem

Module 6 NP-Complete Problems and Heuristics

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri

Improved Approximation Ratios for Traveling Salesperson Tours and Paths in Directed Graphs

Notes for Recitation 9

Matchings in Graphs. Definition 1 Let G = (V, E) be a graph. M E is called as a matching of G if v V we have {e M : v is incident on e E} 1.

Algorithm Design and Analysis

2. CONNECTIVITY Connectivity

Polynomial time approximation algorithms

Long Tours and Short Superstrings

COMPUTING MINIMUM SPANNING TREES WITH UNCERTAINTY

An Efficient Approximation for the Generalized Assignment Problem

Traveling Salesperson Problem (TSP)

Notes for Lecture 24

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

A Constant-Factor Approximation Algorithm for the Asymmetric Traveling Salesman Problem

Chordal Graphs: Theory and Algorithms

CSC Linear Programming and Combinatorial Optimization Lecture 12: Semidefinite Programming(SDP) Relaxation

HAMILTON CYCLES IN RANDOM LIFTS OF COMPLETE GRAPHS

Restricted Delivery Problems on a Network. December 17, Abstract

Minimum Spanning Tree Verification under Uncertainty

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Finding Strongly Connected Components

Stanford University CS261: Optimization Handout 1 Luca Trevisan January 4, 2011

Monotone Paths in Geometric Triangulations

Approximating the Maximum Quadratic Assignment Problem 1

Fixed-Parameter Evolutionary Algorithms and the Vertex Cover Problem

Characterization of Networks Supporting Multi-dimensional Linear Interval Routing Scheme

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. An Introduction to Graph Theory

Approximation Algorithms

Improved Approximations for Graph-TSP in Regular Graphs

Constructing arbitrarily large graphs with a specified number of Hamiltonian cycles

On Minimum Weight Pseudo-Triangulations

Better approximations for max TSP

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Distributed minimum spanning tree problem

Transcription:

Simpler Approximation of the Maximum Asymmetric Traveling Salesman Problem Katarzyna Paluch 1, Khaled Elbassioni 2, and Anke van Zuylen 2 1 Institute of Computer Science, University of Wroclaw ul. Joliot-Curie 15, room 304, 50-383 Wroclaw, Poland abraka@cs.uni.wroc.pl 2 Max Planck Institute for Informatics Campus E 13, Saarbrücken, Germany {elbassio,anke}@mpi-inf.mpg.de Abstract We give a very simple approximation algorithm for the maximum asymmetric traveling salesman problem. The approximation guarantee of our algorithm is 2/3, which matches the best known approximation guarantee by Kaplan, Lewenstein, Shafrir and Sviridenko. Our algorithm is simple to analyze, and contrary to previous approaches, which need an optimal solution to a linear program, our algorithm is combinatorial and only uses maximum weight perfect matching algorithm. 1998 ACM Subject Classification I.1.2 Algorithms Keywords and phrases approximation algorithm, maximum asymmetric traveling salesman problem Digital Object Identifier 10.4230/LIPIcs.STACS.2012.501 1 Introduction In this paper, we study the maximum asymmetric traveling salesman problem (MAX ATSP). The input to the MAX ATSP is a directed complete graph G = (V, A) with edge weights w(e) 0 for all e = (i, j) A. The objective is to find a tour of maximum weight. This problem is known to be APX-hard [11], and research has focused on finding good approximation algorithms for this problem. Good approximation algorithms are of particular interest because they imply good approximations for a number of related problems. For example, it was shown by Breslauer, Jiang and Jiang [3] that an α-approximation algorithm for MAX ATSP implies a ( 7 2 3 2α)-approximation algorithm for the shortest superstring problem; a problem that arises in DNA sequencing and data compression. Any α-approximation algorithm for MAX ATSP implies an algorithm with the same guarantee for the maximal compression problem defined by Tarhio and Ukkonen [12]. The current best approximation algorithm for MAX ATSP is due to Kaplan, Lewenstein, Shafrir and Sviridenko [5] and achieves an approximation guarantee of 2 3. Their algorithm needs the optimal solution of an LP relaxation of the max ATSP, which is scaled up to an integral solution by multiplying it by the least common denominator of all variables. From the scaled up solution, a pair of cycle covers is extracted that have a combined weight of at least twice the weight of the optimum solution. Finally the obtained pair of cycle covers Supported by MNiSW grant number N N206 368839, 2010-2013. Katarzyna Paluch, Khaled Elbassioni, and Anke van Zuylen; licensed under Creative Commons License NC-ND 29th Symposium on Theoretical Aspects of Computer Science (STACS 12). Editors: Christoph Dürr, Thomas Wilke; pp. 501 506 Leibniz International Proceedings in Informatics Schloss Dagstuhl Leibniz-Zentrum für Informatik, Dagstuhl Publishing, Germany

502 Simpler Approximation of MAX ATSP is processed using a rather complicated coloring lemma. Previous results on MAX ATSP appeared among others in [4], [6] [1], [9]. In this paper, we give a very simple approximation algorithm that achieves the same guarantee as the algorithm by Kaplan et al. Our algorithm is combinatorial in nature: it constructs a certain matching instance and computes a maximum weight matching. We then give a simple procedure that uses this matching to form three tours, and we show that the average weight of these tours is at least 2 3 times the optimum. Other variants of the maximum traveling salesman problem that have been considered are among others: the maximum symmetric traveling salesman problem (MAX TSP), in which the underlying graph is undirected - currently the best known approximation ratio is 7 9 [10], the maximum metric symmetric traveling salesman problem, in which the edge weights satisfy the triangle inequality - the best approximation factor is 7 8 [7], the maximum asymmetric traveling salesman problem with triangle inequality - the best approximation ratio is 35 44 [8]. The key idea in our approach to MAX ATSP is the following. A natural first idea that has been very fruitful when designing an approximation algorithm for maximum traveling salesman problems is to start with a cycle cover of maximum weight, i.e., a maximum weight collection of edges such that each node is incident to exactly two edges (in the undirected case) or exactly one incoming and one outgoing edge (in the directed case). Such a cycle cover can be found in polynomial time by a reduction to maximum weight matching. Since the optimal tour is a cycle cover, the weight of the maximum weight cycle cover is at least the weight of the optimal tour. By removing the lightest edge from each cycle, we obtain a collection of node disjoint paths, which can be arbitrarily connected to form a tour. For the asymmetric case, this approach will give a 1 2-approximation algorithm, since the cycle cover may contain cycles of length two (2-cycles). If we could find a maximum weight cycle cover without 2-cycles, then we would achieve a 2 3-approximation, but, unfortunately, finding a maximum weight cycle cover without 2-cycles is APX-hard [2]. Our key observation is the fact that we can exclude 2-cycles from the cycle cover, if we allow the cycle cover to contain half edges : We split each edge (i, j) into two half edges; the head of (i, j) (which is incident to j but not to i) and the tail of (i, j) (which is incident to i, but not to j). A half edge has weight equal to half the weight of the original edge. Now, for a pair of edges (i, j), (j, i), we ensure that the solution does not contain both edges, but we do allow the solution to contain the heads of both (i, j) and (j, i) or the tails of both (i, j) and (j, i). We show that such a cycle cover with half edges can be computed by an appropriate reduction to a maximum weight perfect matching problem. Finally, we show how to use the cycle cover with half edges to extract three tours with total weight at least twice the weight of the cycle cover. 2 Cycle Covers without 2-Cycles but with Half-Edges We begin by introducing the maximum weight cycle cover problem without 2-cycles, but with half-edges, and showing it can be computed in polynomial time. Given a complete directed graph G = (V, E) and weights w(e) 0 for each e E, a cycle cover is a subset C of the edges, so that each i V has exactly one outgoing and one incoming edge in C. In the maximum weight cycle cover problem with half-edges, we allow the solution C to contain only the head or only the tail of an edge (i, j). Such a half-edge has weight 1 2w(i, j) and is thought to be incident to only one endpoint of the edge (i, j). We introduce these half-edges so that we can ensure that our cycle cover does not have 2-cycles. This gives rise to the following problem:

K. Paluch, K. Elbassioni, and A. van Zuylen 503 Definition 1. Given a directed graph G = (V, E) with edge weights w(i, j) 0 for every (i, j) E, let G = (Ṽ, Ẽ) be the graph obtained from G by replacing each (i, j) E by a node v (i,j) and two edges (i, v (i,j) ) and (v (i,j), j), each with weight 1 2w(i, j). A cycle cover without 2-cycles but with half-edges is a subset C Ẽ such that (i) each node in V has exactly one outgoing and one incoming edge in C; (ii) for each (i, j) E, C contains either zero edges from {(i, v(i,j) ), (v (i,j), j), (j, v (j,i) ), (v (j,i), i)}, or it contains exactly one edge incident to i and one edge incident to j. Lemma 2. We can find a maximum weight cycle cover without 2-cycles but with half-edges in polynomial time. Proof. We reduce the problem of finding C of maximum weight to a maximum weight perfect matching problem in the following undirected graph G : For each node i V, we create two nodes, in i and out i. For an edge e = (i, j) E, we create two nodes head (i,j) and tail (i,j), and we have three undirected edges {out i, tail (i,j) }, {tail (i,j), head (i,j) } and {head (i,j), in j }. The weight of the first and third edge is 1 2w(i, j), and the weight of the second edge is 0. Note that a perfect matching in this graph corresponds to a cycle cover of G of the same weight and vice versa: for each edge (i, j) of G, a perfect matching of G either contains edge {tail (i,j), head (i,j) } or edges {out i, tail (i,j) }, {head (i,j), in j }. Of course, if we are only interested in computing a cycle cover of G, then it suffices to split each node i into two: in i and out i and connect in j and out i via an edge whenever (i, j) G and compute a perfect matching in the thus obtained bipartite undirected graph. We will now show how to modify G so that a perfect matching in G corresponds to a maximum weight cycle cover without 2-cycles but with half-edges. A perfect matching in G defines a set of half-edges C Ẽ of the same weight that satisfies property (i) in Definition 1, but C may contain four half-edges that correspond to a 2-cycle in G. To enforce that C also satisfies property (ii), we add two additional nodes, i {i,j} and j {i,j} for each pair of edges (i, j), (j, i). We add an edge from i {i,j} to tail (i,j) and head (j,i), and we add an edge from j {i,j} to head (i,j) and tail (j,i). These edges all have weight 0. The fact that the additional nodes need to be matched ensures that C does not contain all four half-edges corresponding to (i, j) and (j, i). For a pair of edges (i, j), (j, i) in G, the matching instance G thus has a gadget containing 10 edges. See Figure 1. We now verify that a perfect matching in G corresponds to a cycle tail (i,j) head (i,j) out i in j i {i,j} j {i,j} in i out j head (j,i) tail (j,i) Figure 1 A gadget corresponding to a 2-cycle on vertices i and j. S TAC S 1 2

504 Simpler Approximation of MAX ATSP (a) (b) Figure 2 Possible ways of matching vertices i {i,j}, j {i,j}, head (i,j), tail (i,j), head (j,i), tail (j,i). cover without 2-cycles but with half-edges C of the same weight. If a perfect matching M of G matches nodes i {i,j} and j {i,j} as shown in Figure 2(a), then for one of the edges (i, j), (j, i), both of the corresponding half-edges are excluded from C and for the other edge, either both of the corresponding half-edges, or neither of the corresponding half-edges will be in C. If nodes i {i,j} and j {i,j} are matched as in Figure 2(b), M must contain appropriately either {out i, tail (i,j) }, {out j, tail (j,i) } or {in i, head (j,i) }, (in j, head (i,j) ), i.e., C contains either (i, v (i,j) ) and (j, v (j,i) ) or (v (j,i), i) and (v (i,j), j). So indeed, condition (ii) of Definition 1 is satisfied. Lemma 3. Given a graph G, let C be a cycle cover without 2-cycles but with half-edges. Then, we can construct three sets of node disjoint paths P 1, P 2, P 3 in G, with total weight at least twice the weight of C. Proof. We use C to construct a set F of directed and undirected edges with endpoints in V, and we then decompose F into three paths. For a pair of vertices i, j, if both (i, v (i,j) ) and (v (i,j), j) are in C, then we replace it by the edge (i, j). If both (i, v (i,j) ) and (j, v (j,i) ), or (v (i,j), j) and (v (j,i), i) are in C, then we add undirected edge {i, j}. We think of an undirected edge as having two tails (and no heads) in the first case, and two heads (and no tails) in the second case. Note that it is then the case that each node is the head of one edge and the tail of one edge in F, by property (i) of Definition 1. We will show how to find three sets of node-disjoint paths, such that each edge (i, j) F is in exactly two of the paths, and for an undirected edge {i, j} F, there is one path that contains (i, j) and one path that contains (j, i). Note that the sum of the weights of these three sets of paths is exactly equal to twice the weight of C. We consider a weakly connected component in (V, F ). Note that a component has at least three nodes by property (ii) of Definition 1. If the component has no undirected edges, then it is a directed cycle, since each node is the head of one edge and the tail of another edge. Let F be the edges in the component. We take two adjacent edges e 1, e 2 and make this the first path, the second path is F \{e 1 } and the third path is F \{e 2 }. Otherwise, if F does contain undirected edges, note that (V, F ) is a cycle if we ignore the direction of all edges. Moreover, it is the case that the number of undirected edges in the cycle is even and an undirected edge having two heads (resp. two tails) is followed on the cycle by an undirected edge having two tails (resp. two heads). To see this, recall that each

K. Paluch, K. Elbassioni, and A. van Zuylen 505 E1 A1 B1 E2 C1 D1 A2 B2 E3 E4 C2 D2 A3 B3 E5 C3 D3 E6 Figure 3 E 1, E 2,..., E 6 represent directed paths. To P 1 we add edges on paths E 1, E 3, E 5 as well as edges A 1, D 1, B 2, D 2, B 3, D 3. To P 2 we add edges on paths E 2, E 4, E 6 as well as edges B 1, C 1, A 2, C 2, A 3, C 3. To P 3 we add edges on paths E 1, E 2,..., E 6. node is the head and the tail of one edge, and that undirected edges have either two heads or two tails. The paths to be added to P 1, P 2 and P 3 are now constructed as follows: to P 1 we add the directed edges that point in clockwise direction and we add the undirected edges, which we make directed by directing them in clockwise direction. To P 2 we add the directed edges that point in anticlockwise direction, and we add the undirected edges and direct them in anticlockwise direction. Finally, we also add all directed edges from F to P 3. An example of this procedure is shown in Figure 3. There is one exception to the above construction. If the directed edges in F form one path (possibly an empty path), then at least one of the two sets P 1, P 2 contains a cycle. In this case, we take one undirected edge in F and reverse its direction in both P 1 and P 2. Clearly, the paths are node disjoint, each directed edge is contained in two of the three sets P 1, P 2, P 3, and for each undirected edge {i, j}, there is one set of paths that contains (i, j) and one set of paths that contains (j, i). Corollary 4. There exists a 2 3-approximation algorithm for max ATSP. Proof. The optimal tour gives a set C that is a cycle cover without 2-cycles but with half-edges, if for each edge (i, j) in the optimal tour, we include (i, v (i,j) ) and (v (i,j), j) in C. Hence the maximum weight set C has weight at least OP T, and it can be computed in polynomial time using Lemma 2. Using Lemma 3, we can thus find three sets of node disjoint paths, P 1, P 2, P 3, of total weight 2OP T. We can arbitrarily connect the paths in P i into a tour without decreasing the weight, for i = 1, 2, 3 and hence, one of these tours has weight at least 2 3 OP T. Acknowledgements The authors thank Marcin Mucha for useful comments on an earlier version of this paper. S TAC S 1 2

506 Simpler Approximation of MAX ATSP References 1 Markus Bläser. An 8/13-approximation algorithm for the asymmetric maximum TSP. J. Algorithms, 50(1):23 48, 2004. 2 Markus Bläser and Bodo Manthey. Two approximation algorithms for 3-cycle covers. In Proceedings of the 5th International Workshop on Approximation Algorithms for Combinatorial Optimization, volume 2462 of Lecture Notes in Computer Science, pages 40 50. Springer, 2002. 3 Dany Breslauer, Tao Jiang, and Zhigen Jiang. Rotations of periodic strings and short superstrings. J. Algorithms, 24(2):340 353, 1997. 4 M. L. Fisher, G. L. Nemhauser, and L. A. Wolsey. An analysis of approximations for finding a maximum weight Hamiltonian circuit. Oper. Res., 27(4):799 809, 1979. 5 Haim Kaplan, Moshe Lewenstein, Nira Shafrir, and Maxim Sviridenko. Approximation algorithms for asymmetric tsp by decomposing directed regular multigraphs. J. ACM, 52(4):602 626, 2005. Preliminary version appeared in FOCS 03. 6 S. Rao Kosaraju, James K. Park, and Clifford Stein. Long tours and short superstrings (preliminary version). In Proceedings of the 35th Annual Symposium on Foundations of Computer Science, pages 166 177, 1994. 7 Lukasz Kowalik and Marcin Mucha. Deterministic 7/8-approximation for the metric maximum tsp. Theor. Comput. Sci., 410(47-49):5000 5009, 2009. 8 Lukasz Kowalik and Marcin Mucha. 35/44-approximation for asymmetric maximum tsp with triangle inequality. Algorithmica, 59(2):240 255, 2011. 9 Moshe Lewenstein and Maxim Sviridenko. A 5/8 approximation algorithm for the maximum asymmetric tsp. SIAM J. Discrete Math., 17(2):237 248, 2003. 10 Katarzyna E. Paluch, Marcin Mucha, and Aleksander Madry. A 7/9 - approximation algorithm for the maximum traveling salesman problem. In APPROX-RANDOM, pages 298 311, 2009. 11 Christos H. Papadimitriou and Mihalis Yannakakis. The traveling salesman problem with distances one and two. Mathematics of Operations Research, 18:1 11, 1993. 12 Jorma Tarhio and Esko Ukkonen. A greedy approximation algorithm for constructing shortest common superstrings. Theor. Comput. Sci., 57:131 145, 1988.