CS 573: Algorithms, Fall 2009
Final — 7-10 PM, SC 1109, Tuesday, December 15, 2009
1.
Asymmetric TSP.
[20 Points]
You are given the complete directed graph
G
= (
V,E
) over
n
vertices. There is an associated
weight function
w
:
E
→
IR
+
on the edges, that complies with the directed version of the
triangle inequality. That is
w
±
x
→
y
²
+
w
±
y
→
z
²
≥
w
±
x
→
z
²
, for any
x,y,z
∈
V
. Notice,
however, it is quite possible that for some
x,y
∈
V
we have that
w
±
x
→
y
²
6
=
w
±
y
→
x
²
(i.e., the weight function is asymmetric).
Providing an approximation to the TSP in this case is quite harder than the undirected case,
and we will tackle it in this question.
(A)
[5 Points]
Show how to compute in polynomial time a set of vertex disjoint cycles of
total minimum cost that covers all the vertices in the graph. (This is easy, but you want
to be careful here.) Note, that every cycle would have at least two edges.
(B)
[5 Points]
Let
X
⊆
V
be a subset of the vertices of
G
. Prove that there exists a cycle
that visits only the vertices of
X
of cost at most Cost
opt
, where Cost
opt
is the cost of
the optimal TSP visiting all the vertices of
G
.
(C)
[5 Points]
Consider the algorithm that computes, using (A) a “cheap” cover by cycles
of the vertices of the graph, it then selects a vertex from each cycle, and let
Z
be this
set of vertices. Next, the algorithm recursively compute a cheap TSP for the vertices of
Z
, and it somehow generates a TSP tour for the whole graph.
Describe precisely how the algorithm computes the TSP.
(D)
[5 Points]
What is the bound on the quality of approximation provided by the TSP
computed by the above algorithm? Prove your answer.
2.