Understanding the prompt emission of GRBs after Fermi Tsvi Piran Hebrew University, Jerusalem
Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.
-
Upload
eugene-kerfoot -
Category
Documents
-
view
228 -
download
1
Transcript of Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.
![Page 1: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/1.jpg)
Approximation Approximation Algorithms for TSPAlgorithms for TSP
Tsvi KopelowitzAriel Rosenfeld
1
![Page 2: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/2.jpg)
HC-Hamiltonian CycleHC-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.
2
![Page 3: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/3.jpg)
TSP – Traveling Salesman ProblemTSP – 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.
3
![Page 4: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/4.jpg)
Hardness of ApproximationHardness 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.
4
![Page 5: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/5.jpg)
ProofProof
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).
5
![Page 6: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/6.jpg)
ExampleExample
6
G=
![Page 7: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/7.jpg)
ExampleExample
11
1
11
1
1
1
1
1
1 1
c*n
c*nc*n
c*n
c*n
c*n
c*n
c*n
7
G=’
![Page 8: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/8.jpg)
ProofProofRun 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.
8
HC
G GfA ( ( )) " "COST A G c n Yes
( ( )) " "COST A G c n No
![Page 9: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/9.jpg)
MetricMetric
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.
9
![Page 10: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/10.jpg)
Triangle InequalityTriangle 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.
),(),(),( vxwxuwvuw
10
![Page 11: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/11.jpg)
2-approximation2-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.
11
![Page 12: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/12.jpg)
12
![Page 13: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/13.jpg)
2-approximation2-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.
13
![Page 14: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/14.jpg)
22--approximationapproximation
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.
14
![Page 15: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/15.jpg)
15
![Page 16: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/16.jpg)
16
![Page 17: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/17.jpg)
2-approximation2-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.
17
![Page 18: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/18.jpg)
2-approximation2-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) .
18
![Page 19: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/19.jpg)
1.5 TSP Approximation 1.5 TSP Approximation AlgorithmAlgorithm
(Known as Christofides Heuristics)(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.
19
![Page 20: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/20.jpg)
1.5 Approximation1.5 Approximation
Algorithm:1. Compute MST graph T.2. Compute a minimum-weightedmatching 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.
20
![Page 21: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/21.jpg)
1.5 Approximation1.5 ApproximationWhat 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)
21
![Page 22: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/22.jpg)
1.5-approximation1.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.
22
![Page 23: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/23.jpg)
1.5-approximation1.5-approximationProof 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.
23
![Page 24: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/24.jpg)
1.5-approximation1.5-approximationProof 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’).
24
![Page 25: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/25.jpg)
1.5-approximation1.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)
TM
25
![Page 26: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/26.jpg)
26
h
c
b
a d
e
gf
MST
h
c
b
d
e
gf
Input(assume Euclidean distances)
a
ExampleExample
![Page 27: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/27.jpg)
27
h
c
b
a d
e
gf
Walk Wa b c b h b a d e f e g e d a
h
c
b
a d
e
gf
Hamiltonian Cycle Ha b c h d e f g a
22--approxapprox..
![Page 28: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/28.jpg)
h
c
b
a d
e
gf
MST T
h
c
b
e
gf
Matching M
1.51.5 approxapprox..
![Page 29: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/29.jpg)
h
c
b
a d
e
gf
G' = MST + Matching
h
c
b
e
gf
Matching M
MatchingMatching
![Page 30: Approximation Algorithms for TSP Tsvi Kopelowitz Ariel Rosenfeld 1.](https://reader036.fdocuments.in/reader036/viewer/2022062407/56649caf5503460f94972932/html5/thumbnails/30.jpg)
h
c
b
e
gf
Matching M
h
c
b
e
gf
Optimal Tour * on Odd Nodes
Separating the optimal tour of B Separating the optimal tour of B into 2 matchingsinto 2 matchings