starcover

advertisement
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
Download