@MISC{_cs6505:, author = {}, title = {CS 6505: Computability and Algorithms Spring 2014 Traveling Salesman Problem}, year = {} }

Share

OpenURL

Abstract

• G = (V,E) is a complete undirected graph • Non-negative integer cost c(u, v) with each edge (u, v) ∈ E. • TSP: Find a Hamiltonian cycle of G with minimum cost. • TSP with triangle inequality: The cost function c satisfies the triangle inequality if for all vertices u, v, w ∈ V: c(u,w) ≤ c(u, v) + c(v, w). • TSP with triangle inequality is NP-Complete: also known as metric TSP or constrained TSP. [Proved in HW] • The TSP has several applications in planning, logistics, VLSI design, DNA sequencing etc. • Probably the most well-studied problem in combinatorial optimization. 2 Inapproximability of TSP Claim: If P 6 = NP, then for any polynomial time computable function ρ(n), there is no polynomial time ρ(n)-approximation algorithm. for the general TSP. • Suppose that there is a polynomial time ρ approximation algorithm, say A for TSP. • We will show that we can use A to decide the Hamiltonian Cycle problem is which is NP-complete thus showing that P = NP. – Let G = (V,E) be an undirected graph. – Construct a complete graph G ′ = (V,E′) from V. – For each u, v ∈ E′, assign an integer cost: ∗ c(u, v) = 1 if (u, v) ∈ E and ∗ c(u, v) = ρ × |V | + 1 if (u, v) 6 ∈ E. – Run A on G ′ with this cost function on the edges. – Suppose G has a Hamiltonian cycle. ∗ The cost of this cycle in G ′ is |V |. ∗ A returns a tour whose cost is at most ρ × |V |. – Suppose G has no Hamiltonian cycle. ∗ The cost of any Hamiltonian cycle in G ′ is> ρ × |V |: · Any Hamiltonian cycle in G ′ must include an edge not in E. · Any Hamiltonian cycle has cost at least (ρ × |V | + 1) + (|V | − 1) which is> ρ × |V |. 1 3 A 2- approximation algorithm for metric TSP 1. Construct a minimum spanning tree (MST) T. 2. Double every edge of T to get an Eulerian graph. 3. Find an Eulerian tour W on this graph. We can take a preorder traversal of T. 4. Let L be the list of vertices obtained by deleting all duplicates in W by keeping, for all vertices u, only the first visit to the vertex u. 5. Let H be the cycle corresponding to this traversal. 4