Presentation is loading. Please wait.

Presentation is loading. Please wait.

Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more.

Similar presentations


Presentation on theme: "Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more."— Presentation transcript:

1 Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more than one spanning tree. The figure below give an example. People are interested in finding spanning trees, because we want all the nodes to be connected and at the same time the number of edges to connect the nodes to be as few as possible. The fewest number of edges we need to connect a n node graph is a tree which contains n-1 edges.

2 Algorithms for Constructing Spanning trees
There are two well-known algorithms for constructing spanning tree. Breadth-First-Search(BFS) and Depth-First-Search(DFS). The figure below give an example. (a) is a graph and ordering (b) is a BFS tree (c ) is a DFS tree These trees are not good, because the difference of the distances between two vertices in the spanning tree and the graph can be huge. We want to find a spanning tree such that this difference for any two vertices is small.

3 Stretch Factor of Spanning Trees
Given a graph G=(V, E) and any two vertices x, y of G. The distance between x, y is the shortest path between x and y. Let’s use dG(x, y) to denote it. Given a graph G, a spanning tree T of G and a positive integer t, we say T is a multiplicative tree-t spanner of G if and only if for any two vertices x and y we have We say T is an additive tree-t spanner of G, if we have We define t as the stretch factor of the spanning tree T of graph G . Given an arbitrary graph G, we want to construct a spanning tree such that the stretch factor to be as small as possible. In most applications, the quality of the spanning tree is measured by this stretch factor t. This distance approximation property makes spanners quite useful in areas such as communication networks, distributed systems, motion planning, network design and parallel machine architecture.

4 Stretch Factor of Spanning Trees (cont.)
The figure given below shows two spanning trees.(a) is an unweighted and undirected graph G (b) is a multiplicative tree-5 spanner and additive tree-4 spanner.( c) is a multiplicative tree-3 spanner and additive tree-2 spanner Now, the problem is: Given a graph G and a positive number t, does G has a tree-t spanner? It is showed by Cai and Corneil in Tree Spanners that when t is greater or equal to 4, this is an NP-Complete problem. When t=3 is still an open problem (it is conjectured to be an NP-hard problem). When t is less than 3, this can be determined in polynomial time. We can also show, that given any positive number t, I can construct a graph G which do not have multiplicative tree-t or additive tree-(t-1) spanner.

5 Tree-t Spanner Let G1 be a triangle, and G2 be the graph obtained from G1 by adding three vertices, each one adjacent to distinct two vertices of G1. For and positive integer k which is greater or equal to 2, the graph Gk is obtained from Gk-1 and Gk-2 by adding for every edge in E(Gk1) \ E(Gk-2) one new vertex, adjacent to the two vertices of the edge. Proposition 7.2 No (k-1)-additive tree spanner and no k-multiplicative tree spanner is possible in Gk. Proof: Let T be an arbitrary spanning tree of Gk. First, construct a dual graph G*k of Gk. Each triangle of Gk corresponds to a vertex of G*k. We add an extra vertex called F0 which is adjacent to all the vertices in G*k which correspond to the outer face of Gk. An example in the next slide shows how to construct G*k. Then the dual tree T* contains all edges of G*k which cross edges of Gk that do not belong to T. Let B be one of the largest connected components of the forest T*-F0. Note that B contains at least k vertices. Let F1 be the neighbor of F0 in B. The edge F0F1 crosses an edge xy on the outer cycle in Gk. Since F0F1 is an edge in T*, x and y are not adjacent in T. Since all vertices except F0 have degree 3 in G*k. Then we have

6 Tree-t Spanner (cont.) Figure 1 shows G1 and G2. In figure 2, (a) shows G2 and a spanning tree of G2 (b) is its dual graph and dual tree(shown in pink edges). (c ) is one of the largest connected component of T*-F0 Now, we know finding a good spanning tree for an arbitrary graph is not easy. But, for some graph classes we can construct good tree spanners. Kratsch has showed in Additive Tree Spanners that good tree spanners can be constructed for distance-hereditary graphs, block graphs, interval graphs and AT-free graphs.,


Download ppt "Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more."

Similar presentations


Ads by Google