Download presentation

Presentation is loading. Please wait.

1
**Approximation Algorithms for TSP**

Tsvi Kopelowitz Ariel Rosenfeld

2
**HC-Hamiltonian Cycle Input: graph G=(V,E)**

Output: a cycle tour in G that visits each vertex exactly once. Problem is known to be NP-Hard.

3
**TSP – Traveling Salesman Problem**

Input: a complete graph G=(V,E) with edges of non-negative cost (c(e)). Output: find a cycle tour of minimum cost that visits each vertex exactly once. The problem is NP-Hard (reduction from HC) . … and hard to approximate.

4
**Hardness of Approximation**

Claim: For every c>1, there is no polynomial time algorithm which can approximate TSP within a factor of c, unless P=NP.

5
**Proof By reduction from Hamiltonian cycle.**

Given a graph G, we want to determine if it has a HC. Construct a complete graph G’ with same vertices as G, where each edge e has weight 1 if it is in G, and weight c*n if it is not (n is the number of vertices).

6
Example G=

7
Example G’= 1 c*n

8
**Proof Run algorithm A for solving TSP within a factor of c.**

If there is a HC, TSP has a solution of weight n, and approximation is at most c*n If there is no HC, then every tour in TSP has at least one edge of weight c*n, so weight of tour is at least c*n +n-1.

9
Metric A (complete) graph with weight function w on the edges is called a metric if: For any two vertices u,v in the graph: w(u,v)=w(v,u) The Triangle Equality holds in the graph.

10
Triangle Inequality Recall: The triangle inequality holds in a (complete) graph with weight function w on the edges if for any three vertices u,v,x in the graph: Metric TSP is still NP-hard, but now we can approximate.

11
**2-approximation Given G, construct an MST T for G**

(since it is a metric graph, it doesn’t matter whether it is directed or not). For each edge in T create a double edge. (This will guarantee that the degrees of all the vertices are even) Find an Euler tour in the doubled T.

13
**2-approximation Given G, construct an MST T for G**

(since it is a metric graph, it doesn’t matter whether it is directed or not). For each edge in T create a double edge. (This will guarantee that the degrees of all the vertices are even) Find an Euler tour in the doubled T. Create shortcuts in the Euler tour, to create a tour.

14
**2-approximation How will we create these “shortcuts”?**

Traverse the Euler tour. Whenever the Euler tour returns to a vertex already visited, “skip” that vertex. The process creates a Hamiltonian cycle.

17
2-approximation Claim: The above algorithm gives a 2- approximation for the TSP problem (in a metric graph with the triangle inequality). Proof: Definitions: OPT is the optimal solution (set of edges) for TSP. A is the set of edges chosen by the algorithm. EC is the set of edges in the Euler cycle.

18
**2-approximation Proof Continued: cost(T) cost(OPT):**

since OPT is a cycle, remove any edge and obtain a spanning tree. cost(EC) = 2cost(T) 2cost(OPT). cost(A) cost(EC) A is created by taking “shortcuts” from EC. (These are indeed shortcuts, because of the triangle inequality.) So cost(A) 2cost(OPT)

19
**1.5 TSP Approximation Algorithm (Known as Christofides Heuristics)**

Professor Nicos Christofides extended the 2.0 TSP and published that the worst-case ratio of the extended algorithm was 3/2.

20
**1.5 Approximation Algorithm: 1. Compute MST graph T.**

2. Compute a minimum-weighted matching graph M between all Odd- degree vertices. 3. Combine T and M as edge set and Compute an Euler Cycle. 4. Traverse each vertex taking shortcuts to avoid visited nodes.

21
**1.5 Approximation What is a Minimum-weighted Matching?**

It creates a MWM on a set of the nodes having an odd degree. Why odd degree? Property of Euler Cycle (if all edges all of even-degree, EC exists) Why 1.5 TSP? MST < Euler Cycle <= MWM+MST <= 1.5 TSP (need to show MWM <= ½ MST)

22
1.5-approximation Claim: The above algorithm gives a 1.5- approximation for the TSP problem (in a metric graph with the triangle inequality). Proof: Denote: OPT, A, and EC as before. M is the set of edges in the minimum matching.

23
**1.5-approximation Proof Continued: cost(M) cost(OPT)/2**

The minimum tour on any subset B of vertices has a cost of at most cost(OPT) A Hamiltonian cycle in B can be extracted from OPT by “skipping” vertices not in B, resulting in a tour lighter than OPT, due to the triangle inequality. If B is of even size then divide the minimum tour on B into two disjoint matchings of B. The lighter matching of the two (denote by M’) has weight at most cost(OPT)/2.

24
**1.5-approximation Proof Continued: cost(M) cost(M’) cost(OPT)/2.**

The number of odd vertices in a graph is even. (Always, but Why?) Choose B to be the set of odd vertices in T. M’ is not necessarily the minimum matching of B, but cost(M) cost(M’).

25
**1.5-approximation Proof Continued: EC is an Euler Cycle in .**

cost(EC) = cost(T)+cost(M) 1.5cost(OPT). cost(A) cost(EC) 1.5cost(OPT)

26
**Input (assume Euclidean distances)**

Example a d a d e e b f g b f g c c h h Input (assume Euclidean distances) MST

27
**2-approx. Walk W a b c b h b a d e f e g e d a**

Hamiltonian Cycle H a b c h d e f g a

28
1.5 approx. a d e e b f g b f g c c h h MST T Matching M

29
Matching a d e e b f g b f g c c h h G' = MST + Matching Matching M

30
**Optimal Tour * on Odd Nodes**

Separating the optimal tour of B into 2 matchings e e b f g b f g c c h h Optimal Tour * on Odd Nodes Matching M

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google