Title: Chapter 6. Relaxation
1Chapter 6. Relaxation
Ding-Zhu Du
2Whats relaxation?
x
Min f(x)
x in O
xA
f(x) lt opt min f(x) lt f(xA)
x in O
3Whats relaxation?
x
max f(x)
x in O
xA
f(x) lt opt max f(x) lt f(xA)
x in O
4Traveling Salesman Problem
(Given a distance table for a complete graph)
relaxed
tour ? spanning graph ?
minimum spanning graph
minimum spanning tree ? tour
add 0.5 opt
So, the p.r. 1.5
5Directed TSP with triangular inequality
(Given a distance table for a complete digraph
without loop)
relaxed
Directed tour ? 1-factor (assignment)
? minimum assignment
? directed tour
a directed tour connecting all cycles in 1-factor
6TSP in Digraph
7Superstring
Given n strings s1, , sn, find a shortest string
s containing every si as a substring.
ov(s1,s2) maximum overlapping of s1 and s2
s1 suf(s1,s2) ov(s1,s2)
s1
ov(s1,s2)
suf(s1,s2)
s2
8Superstring
Directed TSP
vertices s1, , sn, sn1 e
distance d(s1,s2) suf(si,sj)
Minimum assignment
r1
r2
rtsn1e
ct
c1
c2
d(ci) total distance of cycle ci.
9cycle (r1,r2, , rt)
d(cycle (r1,r2, , rt)) d(r1,r2)
d(rt-2,rt-1) d(rt-1,rt) d(rt,r1)
suf(r1,r2) suf(rt-2,rt-1) rt-1
superstring ltr1,r2,,rt-1gt
S ri - ov(r1,r2) - - ov(rt-2,rt-1)
10ltr1,r2, , rt-1gt
r1
ov(r1,r2)
r2
rt-1
11assume ltr1,r2, , r(t-1)gt is opt superstring
ltr1,r2, , rt-1gt is obtained by Greedy
Algorithm on overlapping
ov(r1,r2) ov(r(t-2),r(t-1))
lt 2(ov(r1,r2) ov(rt-2,rt-1))
ltr1,r2, , rt-1gt
0.5(ov(r1,r2) ov(r(t-2),r(t-1)))
lt opt
12Greedy Algorithm
S ? s1, , sn,
while S gt 1 do
choose s and s from S to maximize ov(s,s) and
set S ? (S s,s) U suf(s,s)s,
output unique string in S.
13 ltr1,r2, , rt-1gt
S ri - ov(r1,r2) - - ov(rt-2,rt-1)
lt S ri - 0.5(ov(r1,r2)
ov(r(t-2),r(t-1)))
lt ltr1,r2, , r(t-1)gt
0.5(ov(r1,r2) ov(r(t-2),r(t-1)))
lt opt
(opt superstring for s1, , sn)
0.5(ov(r1,r2) ov(r(t-2),r(t-1)))
14Lemma. ov(ri,rj) lt d(ci) d(cj)
If it is true, then
ov(r1,r2) ov(r(t-2),r(t-1)) lt 2 S
d(ci) lt 2 opt
Therefore, we obtain a 3-approximation
153-approximation
Step 1. Compute a minimum assignment c1, , ct.
Step 2. Choose a vertex ri from ci. But, ct
sn1e
Step 3. Find an ordering (r1, , rt-1) by greedy
algorithm on overlapping.
Step 4. Merging c1, , ct into a Hamiltonian
cycle based on the ordering (r1,
, rt-1, rt).
16Lemma. ov(ri,rj) lt d(ci) d(cj)
ov(ri,rj) gt d(ci) d(cj).
Proof
Assume
We want to show ?(ci) ?(cj)
where ?(c) is a root of c.
17Root
For a nonempty string x, ?(x) is the shortest
string y such that
m
x y
for some integer m gt 0.
For a set c of strings, ?(c) is a string y such
that every string in c is a substring of y
for some m.
m
18Property of nonempty string root
?(u) ?(v)
uv vu
Proof. (by induction on uv)
Case 1. u v. We have u v.
Case 2. u gt v.
Then u vw.
So, vwv vvw. Hence, wv vw.
Since v ? e, wv lt uv.
By induction hypothesis, ?(w)?(v). Hence, ?(u)
?(vw) ?(v).
191st Property of ?(c) for string set c
There exists a cycle c connecting all strings in
c Such that d(c) ?(c).
?(c)
?(c)
s1
d(s1,s2)
s2
d(s2,s3)
s3
s1
d(s3,s1)
202nd Property of ?(c) for string set c
For any permutation (s1, , sk) of strings in c,
suf(s1, s2) suf(s2, s3) suf(sk-1, sk)suf(sk,
s1)
is a ?(c).
s1
s2
s3
s1
213rd Property of ?(c) for string set c
Any substring of ?(c)?(c) with length ?(c) is a
root of c.
?(c)
?(c)
?(c)
22Lemma. ov(ri,rj) lt d(ci) d(cj)
ov(ri,rj) gt d(ci) d(cj).
Proof
Assume
We want to show ?(ci) ?(cj)
If this is true, then cycles ci and cj can be
merged Into one c with ?(c) ?(ci) ?(cj),
Contradicting the minimum of assignment.
23Lemma. ov(ri,rj) lt d(ci) d(cj)
ov(ri,rj) gt d(ci) d(cj).
Proof
Assume
We want to show ?(ci) ?(cj)
ri
u
v
d(cj)
d(ci)
v
u
rj
d(cj)
d(ci)
uv vu !
24Thanks, End