Algorithms for hard problems Parameterized complexity Bounded tree width approaches Juris Viksna, 2015.

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science for Some.
Advertisements

Bart Jansen 1.  Problem definition  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least k leaves?
Minimum Vertex Cover in Rectangle Graphs
WSPD Applications.
Divide and Conquer. Subject Series-Parallel Digraphs Planarity testing.
Bayesian Networks, Winter Yoav Haimovitch & Ariel Raviv 1.
Recursive Definitions and Structural Induction
Graph Isomorphism Algorithms and networks. Graph Isomorphism 2 Today Graph isomorphism: definition Complexity: isomorphism completeness The refinement.
Presented by Yuval Shimron Course
CompSci 102 Discrete Math for Computer Science April 19, 2012 Prof. Rodger Lecture adapted from Bruce Maggs/Lecture developed at Carnegie Mellon, primarily.
Rooted Routing Using Structural Decompositions Jiao Tong University Shanghai, China June 17, 2013.
1 Steiner Tree on graphs of small treewidth Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
3.3 Spanning Trees Tucker, Applied Combinatorics, Section 3.3, by Patti Bodkin and Tamsen Hunter.
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
FPT algorithmic techniques: Treewidth (1)
R. Bar-Yehuda © 1 קומבינטוריקה למדעי - המחשב – הרצאה #17 Chapter 2: TREES מבוסס על הספר : S. Even, "Graph Algorithms",
Lists A list is a finite, ordered sequence of data items. Two Implementations –Arrays –Linked Lists.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
CS5371 Theory of Computation Lecture 1: Mathematics Review I (Basic Terminology)
1 Separator Theorems for Planar Graphs Presented by Shira Zucker.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Module #1 - Logic 1 Based on Rosen, Discrete Mathematics & Its Applications. Prepared by (c) , Michael P. Frank and Modified By Mingwu Chen Trees.
Data reduction lower bounds: Problems without polynomial kernels Hans L. Bodlaender Joint work with Downey, Fellows, Hermelin, Thomasse, Yeo.
The Art Gallery Problem
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
Graph Algorithms Using Depth First Search Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Analysis of Algorithms.
Introduction to Graph Theory
Fixed Parameter Complexity Algorithms and Networks.
Kernel Bounds for Structural Parameterizations of Pathwidth Bart M. P. Jansen Joint work with Hans L. Bodlaender & Stefan Kratsch July 6th 2012, SWAT 2012,
Modular Decomposition and Interval Graphs recognition Speaker: Asaf Shapira.
1 Treewidth, partial k-tree and chordal graphs Delpensum INF 334 Institutt fo informatikk Pinar Heggernes Speaker:
Multiway Trees. Trees with possibly more than two branches at each node are know as Multiway trees. 1. Orchards, Trees, and Binary Trees 2. Lexicographic.
1 Orthogonal Drawing (continued)  Sections 8.3 – 8.5 from the book  Bert Spaan.
Discrete Structures Lecture 12: Trees Ji Yanyan United International College Thanks to Professor Michael Hvidsten.
Fall 2005Costas Busch - RPI1 Mathematical Preliminaries.
Prof. Busch - LSU1 Mathematical Preliminaries. Prof. Busch - LSU2 Mathematical Preliminaries Sets Functions Relations Graphs Proof Techniques.
The Dominating Set and its Parametric Dual  the Dominated Set  Lan Lin prepared for theory group meeting on June 11, 2003.
Connectivity and Paths 報告人:林清池. Connectivity A separating set of a graph G is a set such that G-S has more than one component. The connectivity of G,
Computing Branchwidth via Efficient Triangulations and Blocks Authors: F.V. Fomin, F. Mazoit, I. Todinca Presented by: Elif Kolotoglu, ISE, Texas A&M University.
1 Use graphs and not pure logic Variables represented by nodes and dependencies by edges. Common in our language: “threads of thoughts”, “lines of reasoning”,
1 Mathematical Preliminaries. 2 Sets Functions Relations Graphs Proof Techniques.
Algorithms for hard problems WQO theory and applications to parameterized complexity Juris Viksna, 2015.
CompSci 102 Discrete Math for Computer Science March 13, 2012 Prof. Rodger Slides modified from Rosen.
Great Theoretical Ideas in Computer Science for Some.
COMPSCI 102 Introduction to Discrete Mathematics.
Algorithms for hard problems Parse trees for graphs Juris Viksna, 2015.
Chapter 5 With Question/Answer Animations 1. Chapter Summary Mathematical Induction - Sec 5.1 Strong Induction and Well-Ordering - Sec 5.2 Lecture 18.
1 Schnyder’s Method. 2 Motivation Given a planar graph, we want to embed it in a grid We want the grid to be relatively small And we want an efficient.
Section Recursion 2  Recursion – defining an object (or function, algorithm, etc.) in terms of itself.  Recursion can be used to define sequences.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Graphs and Algorithms (2MMD30)
Proof technique (pigeonhole principle)
Hans Bodlaender, Marek Cygan and Stefan Kratsch
Computing Connected Components on Parallel Computers
Parameterized complexity Bounded tree width approaches
Lecture 12 Algorithm Analysis
Algorithms and Complexity
Graph Algorithms Using Depth First Search
Structural graph parameters Part 2: A hierarchy of parameters
Planarity Testing.
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Boi Faltings and Martin Charles Golumbic
Boi Faltings and Martin Charles Golumbic
Discrete Mathematics for Computer Science
Lecture 12 Algorithm Analysis
Biconnectivity SEA PVD ORD FCO SNA MIA 5/23/ :21 PM
Treewidth meets Planarity
Presentation transcript:

Algorithms for hard problems Parameterized complexity Bounded tree width approaches Juris Viksna, 2015

Tree decomposition of graph The purpose of the “−1” in the definition of the width of a decomposition is to let trees have tree width 1 [Adapted from R.Downey and M.Fellows]

Tree decomposition of graph [Adapted from J.Flum and M.Grohe] This is slightly differently phrased definition of tree decomposition from J.Flum and M.Grohe. However note that also somewhat different notation is used here. This is equivalent with requirement that for all x,z  T, if y belongs to path between x an z then T x  T z  T y.

Tree decomposition - example [Adapted from J.Flum and M.Grohe] Tree decompositions are undirected trees. However sometimes in proofs or applications it may be convenient to regard them as rooted trees; the choice of root in such cases can be arbitrary.

Tree decomposition - some terminology Some other extra bits of notation used by J.Flum and M.Grohe. [Adapted from J.Flum and M.Grohe]

Tree decompositions of subgraphs and minors [Adapted from J.Flum and M.Grohe] If H is a minor of G then we also have tw(H) ≤tw(G). Why?

Treewidth and k-trees [Adapted from R.Downey and M.Fellows]

k-trees - examples [Adapted from R.Downey and M.Fellows]

k-trees - examples [Adapted from R.Downey and M.Fellows] Example of Tree Decomposition of Width 2

Treewidth – some notes on terminology In slides we have mainly adapted terminology used by R.Downey and M.Fellows: Treewidth tw(G) of graph G is defined as the smallest k such that G is a partial k-tree. The width of tree decomposition k of graph G is maximal size of bag assigned to some vertex of G tree decomposition T minus one: k = max{|T x |  1| x  T }. Then we proceed to show that tw(G) = k, where k is minimal width of all the possible G tree decompositions. Note that some inconsistencies might be present regarding this terminology both in slides and textbooks

Treewidth - equivalence of definitions [Adapted from R.Downey and M.Fellows]

Treewidth - equivalence of definitions [Adapted from R.Downey and M.Fellows]

Treewidth - equivalence of definitions [Adapted from R.Downey and M.Fellows]

Treewidth - equivalence of definitions - assume we have is a partial k-tree G’ - G’ is a subgraph of k-tree G - we are building a tree T describing construction of G - the root of T represents an initial (k+1)-clique K and is labeled with K vertices - each step of “cloning” some (k+1)-clique K’ to (k+1)-clique K’’ is represented by edge from T node labeled with vertices of K’ to a new tree node labeled with vertices from K’’ - T is a tree decomposition of G with treewidth k - there is a subtree T’ of T with treewidth  k that is a tree decomposition of G’

Treewidth - equivalence of definitions By induction of size of T for trees with fixed treewidth k - if T has single node of width k, the underlying graph G is a subgraph of (k+1)-clique, thus G is a partial k-tree - assume T x is a leave of T attached under node T y and the underlying graph G‘ of T  T x is a partial k-tree - if T x  T y, we can just ignore (remove) it - otherwise T x = T’ x  T’’ x, where T’ x = T x  T y - T’ x is a part of (k+1)-clique K (by induction hypothesis) - we need to add each z  T’’ x to a (k+1)-clique and to guarantee that z is connected by edges to all vertices of T’ x - we start by cloning of K, then in each step remove from K a vertex not from T’ x and replace it with the vertex z generated in previous step T’ x T’ x T’’ x remaining T

Computing of treewidth – Bodlaender’s theorem [Adapted from R.Downey and M.Fellows]

Computing of treewidth – Bodlaender’s theorem [Adapted from R.Downey and M.Fellows] Sounds almost too good, however running time is (roughly) O(n2 32k 3 ) 

[Adapted from J.Flum and M.Grohe] Computing of treewidth – Bodlaender’s theorem

[Adapted from J.Flum and M.Grohe] p(k) = 32k 3 :) Although the algorithm is simple and constructive, it is still non-practical. Note that a simple non-constructive proof follows from the fact that graphs with treewidth bounded by k forms an ideal with respect to minor ordering. Computing of treewidth – Bodlaender’s theorem

Small tree decompositions [Adapted from J.Flum and M.Grohe]

Small tree decompositions [Adapted from J.Flum and M.Grohe]

Separability Lemma [Adapted from J.Flum and M.Grohe]

In principle a useful result, unfortunately with a bit confusing statement. So, what does it actually mean? G – a graph. T – a tree decomposition of G. x,y – adjacent vertices of T, removal of edge {x,y} splits T into T 1 and T 2. u – a vertex of some bag from T 1, v – a vertex of some bag from T 2. Then every path in G connecting u and v (possibly with exception of the edge {u,v} itself) intersects with set T x  T y. Separability Lemma [Adapted from J.Flum and M.Grohe]

Treewidth examples – trees and cycles [Adapted from J.Flum and M.Grohe]

Treewidth examples - cliques [Adapted from J.Flum and M.Grohe]

Treewidth examples – k-connected graphs [Adapted from J.Flum and M.Grohe]

Treewidth examples - grids [Adapted from J.Flum and M.Grohe]

Balanced seperators [Adapted from J.Flum and M.Grohe]

Treewidth examples - grids [Adapted from J.Flum and M.Grohe] Thus, planar graphs do not have bounded treewidth...

Treewidth examples - grids [Adapted from J.Flum and M.Grohe] This is intended as a simple proof, unfortunately the induction step does not seem to work unless the leftmost column (or, equivalently, rightmost column, bottom row or to row) of grid intersects S 

‘Slightly improved proof’ for the existence of C If the leftmost column of k  k grid intersects S, delete it and an empty row and apply induction hypothesis from k  1  k  1 grid. Otherwise one can assume that the set A consisting of the leftmost column and top bottom rows does not intersect S. |A| = 3k  2. Consider k  2  k  2 grid obtained by removing A. and an extra column intersecting S. It can be partitioned into pairs of columns (and, if k is even then, an additional column nonintersecting S) such that: Either both of the contain at most a single element of S (then 2k  3 vertices from them are connect to A) At least one of them does not intersect S (then k  2 vertices from them are connect to A) We get connected set C with at least (k  2)  (k  2)/2+3k  2 = k 2 /2+k elements. Treewidth examples - grids

Treewidth for some types of graphs [Adapted from R.Downey and M.Fellows]

Treewidth for some types of graphs [Adapted from H.Bodlaender]

Treewidth - yet another property [Adapted from J.Flum and M.Grohe]

Algorithms on structures of bounded tree width [Adapted from J.Flum and M.Grohe]

Algorithms on structures of bounded tree width [Adapted from J.Flum and M.Grohe] Independent set – a set of pairwise non-adjacent vertices. When parameterized by the size of independent set k the problem is known to be in W[1] – so very unlikely to be FPT. However the problem is FPT when parameterized by tw(G).

tw-INDEPENDENT SET G – graph with treewidth k. Find maximal independent set of G in time poly(n)  f(k).

tw-INDEPENDENT SET [Adapted from R.Downey and M.Fellows]

tw-INDEPENDENT SET Dynamic programming of tree decomposition for tw-IDEPENDENT SET problem: G – graph with treewidth k. 1)Chose an arbitrary rooted tree decomposition T of G with width k and with branching factor 2 or less. 2)For each x  T and each subset S  T x assign label l(S)=|S| if vertices of S form and independent set and l(S)=  1 otherwise. (Number of such subsets S is 2 k or less, for each subset the labeling can be done in time k 2 or less).

tw-INDEPENDENT SET 3)Starting from leaves of T recursively for each parent vertex x, child vertices y and z of x, and for each set S  T x with l(S)  1 find two subsets S 1  T y and S 2  T y such that: l(S 1 )  1 and l(S 2 )  1; S, S 1 and S 2 are mutually disjoint and there are no edges between them; L= l(S)+l(S 1 )+l(S 2 ) is maximal; and reassign l(S)=L. (This can be done in time 2 3k or less.) 4)Output the largest label l(S) in root of T as a size of maximal independent set. Note. If x has only a single child y, assume S 2 =  and l(S 2 )=0. If no sets S 1 and S 2 with required properties can be found then leave l(S) its initial value. Running time: O(n  2 3k ).

3-COLOURABILITY [Adapted from J.Flum and M.Grohe]

3-COLOURABILITY [Adapted from J.Flum and M.Grohe]

tw-HAMILTONICITY [Adapted from J.Flum and M.Grohe]

Some treewidth related notions - cutdwidth [Adapted from H.Bodlaender]

Some treewidth related notions - bandwidth [Adapted from H.Bodlaender and J.Bottcher]