![Page 1: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/1.jpg)
Approximation Algorithms for Maximum Leaf Spanning Trees
(MLSTs)
Dean L. Zeller
Kent State University
November 29th, 2005
![Page 2: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/2.jpg)
Maximum Leaf Spanning Trees Slide 2 of 40
Definitions
• Leaf– 1) a vertex in a tree with degree 1– 2) a vertex incident with only one edge
• MLST– A spanning tree of graph G maximizing the
number of leaves.
![Page 3: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/3.jpg)
Maximum Leaf Spanning Trees Slide 3 of 40
Two MLST Problems
• Problem 1– Given a graph G and an integer B, find a
spanning tree T with B or more leaves.– Shown to be NP-Complete
• Problem 2– Given a graph G, find a spanning tree T with
the maximum number of leaves.– Shown to be MAX SNP-hard.– There exists some constant > 0 such that there
is no (1+)-approximation (unless NP=P).
![Page 4: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/4.jpg)
Maximum Leaf Spanning Trees Slide 4 of 40
History
• 5-approximation in O(n4) time. [LR92]
• 3-approximation in O(n7) time. [LR92]
• 3-approximation in near linear time. [LR98]• 2-approximation in linear time. [S98]
• 7/4-approximation for cubic graphs in linear time [LZ02]
![Page 5: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/5.jpg)
Maximum Leaf Spanning Trees Slide 5 of 40
The Leafy Forest Algorithm
• 3-Approximation algorithm created by H. Lu and R. Ravi in 1998.
• Introduce notion of “Leafy Tree”
• By putting a minor restriction on the inner structure of a tree topology, one can derive a stronger mathematical definition of the number of leaves within the tree.
![Page 6: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/6.jpg)
Maximum Leaf Spanning Trees Slide 6 of 40
Vertex Degree Sets
Given a graph G…
• Let denote the set of vertices of degree i.
• Let ij
ji GVGV
)()(
)()( GVGVi
verticesbranchingGV
verticesconnectingGV
leavesGV
)(
)(
)(
3
2
1
![Page 7: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/7.jpg)
Maximum Leaf Spanning Trees Slide 7 of 40
Tree properties
Let T be a tree within G
• The leaves of T are the vertices in V1(T)
• (7.8)
•
• Goal: to set a lower bound of number of leaves in a tree.
• Want better results by enforcing requirements on a tree.
2)()( 13 TVTV
2)()( 31 TVTV
![Page 8: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/8.jpg)
Maximum Leaf Spanning Trees Slide 8 of 40
Leafy Trees
Definition 7.1
• A tree T is leafy if– (at least one branching vertex)
– Each vertex in V2(T) is adgacent to two vertices in (connecting vertices, if any, connect to two branching vertices)
)(3 TV
)(3 TV
![Page 9: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/9.jpg)
Maximum Leaf Spanning Trees Slide 9 of 40
Leafy Tree, example
},,,{
},{
},,,,,,{
3
2
1
kgecv
jfv
mlihdbav
32 twoneighbors VuVv
a
c
d
b
e
f
i
g h
j k
l m
![Page 10: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/10.jpg)
Maximum Leaf Spanning Trees Slide 10 of 40
Leafy Tree, examples
V2 = Ø
V1 V2 V3
![Page 11: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/11.jpg)
Maximum Leaf Spanning Trees Slide 11 of 40
Leafy Tree, non-examples V1
V2 V3
![Page 12: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/12.jpg)
Maximum Leaf Spanning Trees Slide 12 of 40
Leafy Tree PropertiesLemma 7.6: Let T be a leafy tree. Then
Proof:
• Each vertex in V2(T) is adjacent to two branching vertices. Thus
• By equation (7.8) we have
1)()( 32 TVTV
5)(3
1)(2)(
1)()()(
)()()()(
1
31
221
321
TV
TVTV
TVTVTV
TVTVTVTV
5)(3)( 1 TVTV
![Page 13: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/13.jpg)
Maximum Leaf Spanning Trees Slide 13 of 40
Leafy Spanning Tree
• If G has a leafy spanning tree T, it is a 3-approximation of the MLST of G.
• Unfortunately, a graph may have no leafy spanning trees.
![Page 14: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/14.jpg)
Maximum Leaf Spanning Trees Slide 14 of 40
Leafy Forest
Definition 7.2:
• A forest F of a graph G is a leafy forest if all its components are leafy trees.
• A leafy forest is maximal it is not contained in any other leafy forest.
It is not necessary that a leafy forest spans all vertices of a graph.
![Page 15: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/15.jpg)
Maximum Leaf Spanning Trees Slide 15 of 40
Maximal Leafy Forest Example
V(T1) = {x1, x2, x3, x4} V(T2) = {y1, y2, y3, y4, y5, y6, y7}
Singletons: {z1, z2, z3, z4, z5, z6, z7}
x1
x2
x4 x3 z1
z2 z3
z4 z5 z6 z7
y1
y2
y3
y4 y5
y6
y7
T1 T2
![Page 16: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/16.jpg)
Maximum Leaf Spanning Trees Slide 16 of 40
Maximal Leafy Forest, Facts
• Let F be a maximal leafy forest consisting of leafy trees T1, T2, …Tk.
• Fact 7.4: If for any , we have .
• Fact 7.5: Let v be a vertex in Ti and both u1 and u2 be vertices adjacent to v in G. If u1 is not in F, u2 must be in Ti.
• Fact 7.6: If vertex v has two neighbors not in F, the degree of v within G is two.
)(2 iTVv )( iTVu )(),( GEvu
![Page 17: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/17.jpg)
Maximum Leaf Spanning Trees Slide 17 of 40
Leafy-Forest Algorithm
• Part 1 Construct a maximal leafy forest. Some vertices may not be in forest, called “singletons.”
• Part 2The leafy trees and singletons are combined into a spanning tree by adding edges across the trees.
![Page 18: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/18.jpg)
Maximum Leaf Spanning Trees Slide 18 of 40
Leafy-Forest AlgorithmInput: A graph G = (V,E,w)
Output: A maximal leafy forest F
1: Make each vertex v a singleton, and deg(v)0.
2: for each vertex v do
3: Find the set S of trees containing a vertex u adjacent to v
4: if deg(v) + |S| 3 then
5: Union the trees in S and the tree containing v
6: Update the degrees of v and the adjacent vertices in S
7: Let F be the union of the nonsingleton trees
8: Output F as a maximal leafy forest.
![Page 19: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/19.jpg)
Maximum Leaf Spanning Trees Slide 19 of 40
Leafy-Forest Algorithm
• Initially, each vertex is a singleton. (Step 1)• For each vertex v, find the trees which can
be merged together via adding an edge incident with v. (Steps 2, 3)
• If the degree of v after the merge is at least 3, merge the trees and update the degrees of the involved vertices. Otherwise ignore it. (Steps 4, 5, 6)
• Connect all leafy trees to form a spanning tree. (Step 7)
![Page 20: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/20.jpg)
Maximum Leaf Spanning Trees Slide 20 of 40
Leafy-Forest Algorithm, example
![Page 21: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/21.jpg)
Maximum Leaf Spanning Trees Slide 21 of 40
Performance Ratio
• Theorem 7.6– Let F be a maximal leafy forest– Let Y be a spanning tree containing F– Then, for any spanning tree T of G,
• Establish a bound on the number of leaves of any spanning tree containing a maximal leafy forest.
5)(3)( 1 TVTV
![Page 22: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/22.jpg)
Maximum Leaf Spanning Trees Slide 22 of 40
Performance Ratio, con’t
Setup for lemmas
• G = (V,E)
• F: a maximal leafy forest consisting of k leafy trees Ti for 1 i k
• Y: a spanning tree containing F
• T: any spanning tree of G
![Page 23: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/23.jpg)
Maximum Leaf Spanning Trees Slide 23 of 40
Performance Ratio, lemmas
Lemma 7.8 |V1(T)| |V(F)| – k + 1
• The number of leaves in any spanning tree is bounded by |V(F)| – k + 1
Lemma 7.9 |V1(Y)| |V1(F)| – 2(k-1)
• Any spanning tree Y containing a leafy forest F has at least |V1(F)| – 2(k-1) leaves.
![Page 24: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/24.jpg)
Maximum Leaf Spanning Trees Slide 24 of 40
Performance Ratio, theorem
Theorem 7.7
• Given a graph G=(V,E) a 3-approximation of an MLST can be found in O((n,m)(n+m)) time, in which (n,m) is the inverse Ackermann’s function.
![Page 25: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/25.jpg)
Maximum Leaf Spanning Trees Slide 25 of 40
7/4-Approximation for Cubic Graphs
• Created by Loryś and Zwoźniak in 2002• Cubic Graphs
– All vertices are degree = 3– v V3 for all vertices– One of the simplest classes of graphs– All vertices share similar properties– Appear in a great number of applications
• Optimal solution remains NP-hard for any fixed degree 3
• Studying the problem restricted to cubic graphs helps to understand deeper the unrestricted case.
![Page 26: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/26.jpg)
Maximum Leaf Spanning Trees Slide 26 of 40
Cubic Graph Examples n = 4
n = 6
n = 6
n = 4
n = 12
n = 10
n = 8
![Page 27: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/27.jpg)
Maximum Leaf Spanning Trees Slide 27 of 40
Cubic Graphs vs. Binary Trees
• Properties of Binary Trees– Approximately half of the vertices are leaves– Vertices have at most degree 3
![Page 28: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/28.jpg)
Maximum Leaf Spanning Trees Slide 28 of 40
Preliminaries
• Let G = (V,E,w) be a connected undirected graph.
• Neighbors:– For a vertex v, let NG={w: (v,w) E(G)}
• Leaves:– L(G) is the set of vertices of degree 1.
• Degrees– Deg(v) is the degree of vertex v, the number of
edges incident to v in G.
![Page 29: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/29.jpg)
Maximum Leaf Spanning Trees Slide 29 of 40
Algorithm Steps
• Step 1: – Build a forest F for G using three rules.
• Step 2:– Add edges to connect trees together.
![Page 30: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/30.jpg)
Maximum Leaf Spanning Trees Slide 30 of 40
The Rules
• Rule 1:– Add two vertices adjacent to a leaf
with edges.
– Leaf: v Ti
– Vertices: u, w V(F)– Edges: (v,u) (v,w)– Adds two leaves to the tree, while
removing only one.
v
Ti
u w
![Page 31: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/31.jpg)
Maximum Leaf Spanning Trees Slide 31 of 40
v
Ti
u
w2 w1
The Rules
• Rule 2:– Put to the tree a vertex adjacent to a
leaf together with two vertices adjacent to u.
– Leaf: v Ti
– Vertex: u V(F)– Two vertices: w1,w2 V(F)– Edges: (v,u) (u, w1) (u, w2)– Adds two leaves to the tree, while
removing only one.
![Page 32: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/32.jpg)
Maximum Leaf Spanning Trees Slide 32 of 40
v
Ti
u
z2 z1
w
The Rules
• Rule 3:– Initiate new tree, Tj.– If (v V(Ti), w NG(v)
NG(u) = {w,z1,z2}, and w,u, z1,z2 V(F))Then build tree Tj rooted at w.
add u, z1,z2 to V(Tj)
add (w,u) (w, z1) (w, z2) to E(Tj)
Ti is the “father” of Tj
![Page 33: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/33.jpg)
Maximum Leaf Spanning Trees Slide 33 of 40
The Algorithm
Step 1: Construct the forest Fa) F b) V(T0) {r0, v1, v2, v3}
where r0 V(G) and v1, v2, v3 NG(r0) E(T0) {(r0, v1), (r0 ,v2), (r0 ,v3)} Let r0 be a root of T0
i 0
v3
r0
v2 v1
![Page 34: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/34.jpg)
Maximum Leaf Spanning Trees Slide 34 of 40
The Algorithm
Step 1: continuedc) If it is possible
• Find the leftmost leaf in Ti that can be expanded by Rule 1 and expand it.
• Goto Step 1c
else• Goto step 1d
v
Ti
u w
![Page 35: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/35.jpg)
Maximum Leaf Spanning Trees Slide 35 of 40
The Algorithm
Step 1: continuedd) If it is possible
• Find the leftmost leaf in Ti that can be expanded by Rule 2 and expand it.
• Goto Step 1c
else• F F Ti
• Goto step 1e
v
Ti
u
w2 w1
![Page 36: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/36.jpg)
Maximum Leaf Spanning Trees Slide 36 of 40
The Algorithm
Step 1: continuede) If it is possible
• Find the leftmost leaf in Ti that Rule 3 can be applied to v and apply this rule.
• i i + 1
• Let Ti be the new tree created in this step
• Goto Step 1c with Ti
else• Goto step 1e with the father of Ti.
v
Ti
u
z2 z1
w
![Page 37: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/37.jpg)
Maximum Leaf Spanning Trees Slide 37 of 40
The Algorithm• Step 2: Add edges to F to make it a
spanning tree for G.– Connect each vertex which does not belong to
F with one of its neighbors in L(F) and each root of the tree in F (except the root of the first tree) with a leaf of another tree.
– Note: instructions seem to contradict rule 2.
![Page 38: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/38.jpg)
Maximum Leaf Spanning Trees Slide 38 of 40
T2
Possible Algorithm Output
T0
T1
T3
![Page 39: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/39.jpg)
Maximum Leaf Spanning Trees Slide 39 of 40
Performance Analysis
• 7/4 performance ratio
• For proof (8 pages), read the full article [LZ2002]
• Further research– Improvements can be made on algorithm clarity
and efficiency– How well does this algorithm work on other
graph types?– Proof of linearity and efficiency unclear.
![Page 40: Approximation Algorithms for Maximum Leaf Spanning Trees (MLSTs) Dean L. Zeller Kent State University November 29 th, 2005](https://reader036.vdocuments.mx/reader036/viewer/2022062722/56649f295503460f94c41c7c/html5/thumbnails/40.jpg)
Maximum Leaf Spanning Trees Slide 40 of 40
Bibliography• G. Galbiati, F. Maffioli, A. Morzenti A short note on the appriximability of
the maximum leaves spanning tree problem, Information Processing Letters 52, 1994. [GMM94]
• K. Loryś, G. Zwoźniak Approximation algorithm for the maximum leaf spanning tree problem for cubic graphs, Proceedings on the 10th Annual European Symposium on Algorithms, 2002. [LZ2002]
• H. Lu, R. Ravi The power of local optimization: approximation algorithms for maximum-leaf spanning tree, Proceedings of the Thirtieth Annual Allerton Conference on Communication, Control, and Computing, 1992. [LR92]
• H. Lu, R. Ravi A near-linear time approximation algorithm for maximum leaf spanning tree, Journal of Algorithms, Vol 29, No. 1, 1998. [LR98]
• R. Solis-Oba 2-approximation algorithm for finding a spanning tree with maximum number of leaves, Proceedings on the 6th Annual European Symposium on Algorithms, 1998. [S98]
• Wu, B.Y. & K.M. Chao. Spanning Trees and Optimization Problems. Chapman & Hall/CRC, 2004. [WC2004]