250 likes | 672 Views
Tree Decomposition. Benoit Vanalderweireldt Phan Quoc Trung Tram Minh Tri Vu Thi Phuong. Summary. Introduction Definition Requirement Data structure Graph generators Algorithm Example Benchmark and tests Interpretation Conclusion. Definition. Tree decomposition. Definition.
E N D
Tree Decomposition Benoit Vanalderweireldt PhanQuocTrung Tram Minh Tri Vu Thi Phuong
Summary • Introduction • Definition • Requirement • Data structure • Graph generators • Algorithm • Example • Benchmark and tests • Interpretation • Conclusion
Definition Tree decomposition
Definition Tree width The width of a bag is the cardinality of the bag. The width of a tree decomposition is the size of the largest bag minus one The treewidth of a graph Gis the minimum width among all possible tree decompositions of G minus 1, denoted as tw(G). Note that trees and forests are precisely the structures with treewidth of 1.
Introduction Graph reachability answering using tree decomposition ? Is it profitable to decompose a graph In order to test reachability ?
Requirement Understand notion of tree decomposition Develop a data structure for graphs Develop different graph generators Implement the 4 parts of the algorithms Make benchmark Analyze result Make conclusion Write report Present our work
Data structure • Vertex • Tree • Node
Graph generators In order to test the algorithm, we generated various kind of graphs : Inclusive square graph Friendship graph Random graph Friendship graph
Algorithm Algorithm 1 start with reduction of an undirected graph before construction the tree
Algorithm Explanation in following examples
Example Random graph
Example Random graph 7 6
Example 1 5 2 4 3 5 5 2 4 3 4 3 Complete graph 2 1 3
Example 1 2 2 6 7 3 6 7 3 5 4 5 4 6 7 3 6 7 5 4 5 4 6 7 5 Wheel Graph 1 2 5 3 4
Example 1 2 3 6 5 4 2 3 6 5 4 6 5 4 3 6 5 4 Bipartite Graph 3 1 2 4
Example Cycle graph
Benchmark • The main goal of benchmark is to reveal in what condition it is gainful to reduced graph in order to check reachability. • We run multiple series of benchmark : • Various number of vertices and neighbors • ….. What else ? Every test series have been past at least 2 times (to operating system accident) We compare effective results with expected results Our series (around 20 measures) vary (increase or decrease) numbers of edges or vertices
Benchmark In order to have workable measure, we have to establish a protocol to collect data. We quickly realize that to have meaningful results, we need to apply the algorithm of really large graph (over hundred of vertices). Put some capture of result like in report
Interpretation From these tests we found that the execution time of this algorithm is influenced by number of edges not really by number of vertices. If the density of edges increases then the computing time for the graph reduction increase. In order to use this algorithm in a good responding time, the density of edges must be well know.
Advantage & Disadvantage • Advantage of Tree Decomposition: • Solving shortest path query answering over undirected large graphs. • Many intractable problems (Independent Set, the Hamiltonian Circuits) can be solved in polynomial time or even in linear time • Disadvantage of Tree Decomposition: • Calculating the tree width of a graph is hard. (NP-complete) • It’s impossible to guarantee that good performance will be obtained even though the tree width can be determined. • To solve really hard problems efficiently by using the tree decomposition based approaches, we have to require that the underlying graphs have bounded tree width (less than 10)
Conclusion • In this project, we implemented the algorithm of tree decomposition as the index structure for a large graphs to answer reachability queries efficiently. • This approach used to solve intractable problems (NP-complete) • One of the limitation of tree decomposition based approach is the underlying graphs have bounded treewidth, but in this algorithm the treewidth is adapted to be related to degree-l reduction, instead of the treewidth.
Acknowledgements • This project was supported by a grant from the professor Bruno Courcelle and Anne Dicky • Reference • Efficient Graph Reachability Query Answering using Tree Decomposition, by Fang Wei (Computer Science Department, University of Freiburg, Germany). • Discrete Math for Bioinformatics, by A. Bockmayr/K • A partial k-arboretum of graph with bounded treewidth, by Hans Bodlaender