Leave No Stone Unturned: Improved Approximation Algorithm
for Degree-Bounded MSTs
Raja Jothi
University of Texas at Dallas
Joint work with Balaji Raghavachari
Degree-Bounded MSTs
Problem Definition
Given n points in the Euclidean plane, the degree-δ MST asks
for a minimum weight spanning tree in which the degree of each
vertex is at most δ.
Complexity δ=5: Polynomial time solvable [Monma & Suri ’92] NP-hard for δ=3 [Papadimitriou & Vazirani ’84] NP-hard for δ=4?
Previous Results
Degree-2 MST PTASs [Arora ’96 & Mitchell ‘97]
Degree-3 MST 1.5-approximation [Khuller, Raghavachari & Young ‘96] 1.402-approximation [Chan ‘03]
Degree-4 MST 1.25-approximation [Khuller, Raghavachari & Young ‘96] 1.143-approximation [Chan ‘03]
Previous Results…(continued)
Degree-3 MST in Rd, d > 2 5/3-approximation [Khuller, Raghavachari & Young ‘96] 1.633-approximation [Chan ‘03]
Degree-δ MST in Rd
QPTAS – (nO(log n)) [Arora & Chang ‘03]
Our Result
For any arbitrary collections of points in the plane,
there always exists a degree-4 MST of weight at most
(√2 + 2 )/3 < 1.1381 times the weight of an MST.
Preliminaries
Input: Degree-5 MST T Root T at an arbitrary vertex Every vertex, but root, has at most 4 children
Ingredients
Strengthened triangle inequality
If |AB| ≤ |BC|, then |AC| ≤ F(θ)|AB| + |BC|
Where F(θ) = sqrt(2(1-cosθ)) – 1
AB
C
B’
θ
Ingredients…(continued)
Bounds on edge weights of an MST
Let AB and BC be two edges that intersect
at point B in an MST. Let θ = ABC ≤ 90o.
Then
2|BC|cosθ ≤ |AB| ≤ |BC| 2cosθ
CB
A
θ
Ingredients…(continued)
Charging Scheme
Let |av| ≤ |bv|. Then, cost of the new
tree formed by replacing bv by ab is
at most
(|av| + |bv| + |cv| + |dv|) * F(θ) / k
p
v a
bc
dθ
Ingredients…(continued)
Charging Scheme
Let |av| ≤ |bv|. Then, cost of the new
tree formed by replacing bv by ab is
at most
(|av| + |bv| + |cv| + |dv|) * F(θ) / k
p
v a
bc
dθ
Snippets of our recipe
v vertex under consideration
v1-v4 v’s biological children
v’ v’s foster child
Obj. Reduce the degree of v to 3
Note max{θ1,θ2,θ3,θ4+θ5} ≥ 120o
Solve it by case-by-case analysis.
v1 v
v2 v3
v4
v’
θ1
θ2
θ3
θ4θ5
Secrets behind our recipe’s success
Let θ5 ≤ 60o.
Then |vv’| ≥ |vv1|.
Otherwise |v1v’| ≥ |vv1|, which contradicts
the fact that vv1was chosen over v1v’
to be the MST edge. Removal of vv’ and adding v1v’ results
in savings, which is used for future extra
charge accounting. Smarter charging scheme.
v1 v
v2 v3
v’
θ1
θ2
θ3
θ4θ5
v4
A stone we turned
Case θ2 ≥ 120o, θ4 ≥ 60o, θ5 ≤ 60o , θ3 > 90o
v
v2 v3
v4
v’
θ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
v1
> 90o
A stone we turned
Case θ2 ≥ 120o, θ4 ≥ 60o, θ5 ≤ 60o , θ3 > 90o
For simplicity,
let |vv1| = x1; … ; |vv4| = x4 and |vv’| = x5
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
x1
x2 x3
x4
x5
> 90o
A stone we turned
Case θ2 ≥ 120o, θ4 ≥ 60o, θ5 ≤ 60o , θ3 > 90o
For simplicity,
let |vv1| = x1; … ; |vv4| = x4 and |vv’| = x5
Subcase x3 or x4 is the 2nd smallest among
{x1, x2, x3, x4} AND x1 ≤ x2, x3, x4
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
> 90o
x1
x2 x3
x4
x5
A stone we turned
Case θ2 ≥ 120o, θ4 ≥ 60o, θ5 ≤ 60o , θ3 > 90o
For simplicity,
let |vv1| = x1; … ; |vv4| = x4 and |vv’| = x5
Subcase x3 or x4 is the 2nd smallest among
{x1, x2, x3, x4} AND x1 ≤ x2, x3, x4
Savings = 2(sin(90-θ5)-1) x1
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
> 90o
x1
x2 x3
x4
x5
A stone we turned
Case θ2 ≥ 120o, θ4 ≥ 60o, θ5 ≤ 60o , θ3 > 90o
For simplicity,
let |vv1| = x1; … ; |vv4| = x4 and |vv’| = x5
Subcase x3 or x4 is the 2nd smallest among
{x1, x2, x3, x4} AND x1 ≤ x2, x3, x4
Savings = 2(sin(90-θ5)-1) x1
It is as if we have at least an additional
2(sin(90-θ5)-1) x1/0.1381 to charge.
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
> 90o
x1
x2 x3
x4
x5
A stone we turned
W.l.o.g., let x3 ≤ x4
Savings = 2(sin(90-θ5)-1) x1/0.1381)
Additional cost due to transformations is
≤ F(θ3) * (x1 + x2 + x3 + x4 + Savings )
3 + 2cos(120o–θ5/2) * (1+Savings)
which is bounded by 0.0709(x1 + x2 + x3 + x4 + Savings )
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
x1
x2 x3
x4
x5
> 90o
A stone we turned
W.l.o.g., let x3 ≤ x4
Savings = 2(sin(90-θ5)-1) x1/0.1381)
Additional cost due to transformations is
≤ F(θ3) * (x1 + x2 + x3 + x4 + Savings )
3 + 2cos(120o–θ5/2) * (1+Savings)
which is bounded by 0.0709(x1 + x2 + x3 + x4 + Savings )
vθ1
≥ 120o
θ4θ5
θ3
θ2
≤ 60o≥ 60o
x1
x2 x3
x4
x5
> 90o
A stone we turned
There are cases where the ratio is bounded by
(√2 – 1 )/3 < 0.1381 That makes the approximation ratio of our algorithm
to be (√2 + 2 )/3 < 1.1381.
Dessert
Our ratio of (√2 + 2 )/3 < 1.1381 CANNOT be improved by using just local changes.
Improvement of the ratio requires a global approach. There exists a degree-4 tree whose weight is
(2sin36o + 4)/5 < 1.0352 times the weight of MST.
Future Problems
Points in the plane Is degree-4 MST problem NP-hard? Improve the 1.1381 ratio for degree-4 trees. Improve the 1.402 ratio for degree-3 trees. Is there a PTAS for degree-δ MST problem?Points in higher dimensions Improve the 1.633 ratio for degree-3 trees. Approximation of degree-δ trees in general metric spaces
(no triangle inequality), within ratios better than 2.