Parameterized complexity Bounded tree width approaches

Slides:



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

Connectivity - Menger’s Theorem Graphs & Algorithms Lecture 3.
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
Bayesian Networks, Winter Yoav Haimovitch & Ariel Raviv 1.
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.
1 Steiner Tree on graphs of small treewidth Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij.
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
Data Structures, Spring 2004 © L. Joskowicz 1 Data Structures – LECTURE 14 Strongly connected components Definition and motivation Algorithm Chapter 22.5.
Graph Triangulation by Dmitry Pidan Based on the paper “A sufficiently fast algorithm for finding close to optimal junction tree” by Ann Becker and Dan.
Traveling with a Pez Dispenser (Or, Routing Issues in MPLS) Anupam Gupta Amit Kumar FOCS 2001 Rajeev Rastogi Iris Reinbacher COMP670P
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
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.
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
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:
Discrete Structures Lecture 12: Trees Ji Yanyan United International College Thanks to Professor Michael Hvidsten.
The Dominating Set and its Parametric Dual  the Dominated Set  Lan Lin prepared for theory group meeting on June 11, 2003.
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.
Great Theoretical Ideas in Computer Science for Some.
Algorithms for hard problems Parameterized complexity Bounded tree width approaches Juris Viksna, 2015.
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.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
The NP class. NP-completeness
Great Theoretical Ideas In Computer Science
Graphs and Algorithms (2MMD30)
An introduction to chordal graphs and clique trees
Algorithms and Networks
Proof technique (pigeonhole principle)
Hans Bodlaender, Marek Cygan and Stefan Kratsch
Computing Connected Components on Parallel Computers
The countable character of uncountable graphs François Laviolette Barbados 2003.
Algorithms for hard problems
Algorithms and networks
Lecture 12 Algorithm Analysis
Algorithms and Complexity
Graph Algorithms Using Depth First Search
Computability and Complexity
Structural graph parameters Part 2: A hierarchy of parameters
Taibah University College of Computer Science & Engineering Course Title: Discrete Mathematics Code: CS 103 Chapter 10 Trees Slides are adopted from “Discrete.
Planarity Testing.
The Art Gallery Problem
Parameterised Complexity
The Art Gallery Problem
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Bart Jansen Polynomial Kernels for Hard Problems on Disk Graphs
3.5 Minimum Cuts in Undirected Graphs
REDUCESEARCH Polynomial Kernels for Hitting Forbidden Minors under Structural Parameterizations Bart M. P. Jansen Astrid Pieterse ESA 2018 August.
Boi Faltings and Martin Charles Golumbic
On the effect of randomness on planted 3-coloring models
Introduction Wireless Ad-Hoc Network
CSCI-2400 Models of Computation.
Boi Faltings and Martin Charles Golumbic
Mathematical Preliminaries
Discrete Mathematics for Computer Science
Lecture 12 Algorithm Analysis
Treewidth meets Planarity
Prims’ spanning tree algorithm
Minimum Spanning Trees
Presentation transcript:

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

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 This is equivalent with requirement that for all x,zT, if y belongs to path between x an z then TxTzTy. 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. [Adapted from J.Flum and M.Grohe]

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 If H is a minor of G then we also have tw(H) ≤tw(G). Why? [Adapted from J.Flum and M.Grohe]

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

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

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

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{|Tx|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 Tx is a leave of T attached under node Ty and the underlying graph G‘ of TTx is a partial k-tree if Tx Ty, we can just ignore (remove) it otherwise Tx = T’x  T’’x, where T’x = Tx  Ty - 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 Sounds almost too good, however running time is (roughly) O(n232k3)  [Adapted from R.Downey and M.Fellows]

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

Computing of treewidth – Bodlaender’s theorem p(k) = 32k3 :) 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. [Adapted from J.Flum and M.Grohe]

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]

Separability Lemma 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 T1 and T2. u – a vertex of some bag from T1, v – a vertex of some bag from T2. Then every path in G connecting u and v (possibly with exception of the edge {u,v} itself) intersects with set TxTy. [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 Thus, planar graphs do not have bounded treewidth... [Adapted from J.Flum and M.Grohe]

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

Treewidth of planar graphs [Adapted from R.Niedermeier]

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 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). [Adapted from J.Flum and M.Grohe]

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. Chose an arbitrary rooted tree decomposition T of G with width k and with branching factor 2 or less. For each xT and each subset STx assign label l(S)=|S| if vertices of S form and independent set and l(S)=1 otherwise. (Number of such subsets S is 2k or less, for each subset the labeling can be done in time k2 or less).

tw-INDEPENDENT SET Starting from leaves of T recursively for each parent vertex x, child vertices y and z of x, and for each set STx with l(S)1 find two subsets S1Ty and S2Ty such that: l(S1)1 and l(S2)1; S, S1 and S2 are mutually disjoint and there are no edges between them; L= l(S)+l(S1)+l(S2) is maximal; and reassign l(S)=L. (This can be done in time 23k or less.) 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 S2= and l(S2)=0. If no sets S1 and S2 with required properties can be found then leave l(S) its initial value. Running time: O(n23k).

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]

Three ‘similarly sounding’ graph problems [Adapted from R.Downey and M.Fellows]

Three ‘similarly sounding’ graph problems [Adapted from R.Niedermeier]

VERTEX COVER parameterized by treewidth [Adapted from R.Niedermeier]

VERTEX COVER parameterized by treewidth [Adapted from R.Niedermeier]

VERTEX COVER parameterized by treewidth [Adapted from R.Niedermeier]

VERTEX COVER parameterized by treewidth [Adapted from R.Niedermeier]

VERTEX COVER parameterized by treewidth [Adapted from R.Niedermeier]

DOMINATING SET parameterized by tw [Adapted from R.Niedermeier]

DOMINATING SET parameterized by tw [Adapted from R.Niedermeier]

Colour coding [Adapted from R.Niedermeier]

Colour coding [Adapted from R.Niedermeier]

Colour coding [Adapted from R.Niedermeier]

Colour coding [Adapted from R.Niedermeier]

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

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