Improved Approximation
Algorithms for the Spanning Star
Forest Problem
Prasad Raghavendra
Ning Chen
C. Thach Nguyen
Atri Rudra
Gyanit Singh
University of Washington
Roee Engelberg
Technion University
Star Forest
Center
A Star is a tree of
diameter 2.
A Star Forest is a
forest consisting of
only Stars
Leaves (a bunch of vertex
disjoint stars )
Unweighted Star Forest Problem
Input :
Undirected graph G
3
7
2
1
Find a Star Forest
with the maximum
number of edges
6
5
4
Number of Edges = 5
4
Equivalently, Maximize
the number of leaves.
Star Forest Problem
Applications :
• Problem of aligning multiple genomic
sequences. [Nguyen .et. al, SODA2007]
• Comparison of Phylogenic Trees.
[Berry-Guillemot-Nicholas et. al 2005]
• Diversity Problem in Automobile Industry.
[Agra-Cardoso-Cerferia et. al 2005]
Closely Related to the Dominating Set
Problem
Dominating Set
A set of vertices S, such
that
3
7
2
1
6
5
4
“Every vertex not in S is
adjacent to a vertex in
set S”
Relation to Dominating Set
3
L = Set of Leaves
7
L = Set of NOT Leaves
1
Every vertex in L is adjacent to a
vertex in L.
6
5
L is a Dominating Set
4
Maximum Star Forest = n – (Minimum Dominating Set)
Our Results
We give a 0.71 approximation algorithm for
Unweighted star forest problem.
– Improves the 0.6 factor in [Nguyen .et. al, SODA2007]
New rounding scheme for Dominating Set that
yields
- approximation.
Better than ln n when
OPT is larger
– Meets the best known algorithm
by analysis of greedy algorithm [P. Slavik, Journal
of Algorithms 1997]
Our Results
0.64 approximation for the Node-weighted version.
– Nodes have weights , Maximize the total weight
of the leaves in the forest.
Hardness of approximation results for the weighted
versions of the problem.
– 31/32 hardness for the node weighted version.
– 0.95 hardness for the edge weighted version.
Dominating Set - A Linear Program
Variables : (x1, x2 ,… xn)
xi = 1 if vertex i is in
dominating set
= 0 otherwise
Constraints : For every
vertex, at least one vertex
in its neighbourhood
belongs to the dominating
set
2
Example :
1
3
4
x1 + x2 + x3 +x4 ≥ 1
Let the
LP-OPT = a∙n
Add vertex i in to the
dominating set
independently with
probability :
Rounding
Scheme
3
7
Add any vertices still
uncovered, to the
dominating set.
2
1
6
5
4
Even if xi = 1, probability that it is included is < 1
Analysis
STEP 1 :
Add vertex i in to the dominating set
independently with probability :
Analysis
STEP 2:
Add any vertices still
uncovered, to the
dominating set.
LP Constraint
E[Number of Vertices added in STEP 2]
≤ ne-t
Analysis
Linear Programming OPT
= a∙n
Expected Size of Dominating Set = n(1–e-at) + ne-t
Choosing the best value of t,
We get a
dominating set.
- approximation for
Not Enough
Factor =
LP OPT = a∙n
Gives good
approximation for
Star Forest if OPT is
closer to n
If OPT is smaller,
then gives poorer
approximation.
However if OPT is smaller, then there are simple
algorithms that give good approximation.
Simple Tree
Algorithm
3
7
2
1
• Pick a spanning tree.
• Root the tree at an
arbitrary node.
• Divide nodes in to
levels based on
distance from root.
• Either the odd or the
even levels have at
least n/2 nodes.
6
5
4
Make these nodes leaves
and other centers.
A 0.64-Approximation
Tree Algorithm:
Finds a Star Forest of
size at least n/2
So if LP OPT = a∙n
A 1/2a approximation
LP Algorithm:
A
approximation
Best of the two
algorithms , gives an
approximation = 0.64
Getting to 0.7
We design a Combinatorial Algorithm for
Unweighted Star Forest that gives
-approximation.
3
5
a
Using this along with LP algorithm gives :
Conclusion
Non linear LP rounding with probability :
1-e-tx
Similar algorithms for Weighted Dominating Set,
more generally Weighted Set Cover.
Intuition? Any other applications?
Thank You