Presentation is loading. Please wait.

Presentation is loading. Please wait.

Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas Bousquet, Jean Daligault, Stephan Thomasse, Anders Yeo Speaker:

Similar presentations


Presentation on theme: "Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas Bousquet, Jean Daligault, Stephan Thomasse, Anders Yeo Speaker:"— Presentation transcript:

1 Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas Bousquet, Jean Daligault, Stephan Thomasse, Anders Yeo Speaker: Jia-Hao Fan

2 Outline Introduction: Definitions: Reduction rules: Analysis:

3 Problem: Input: A undirected tree T = (V, E) and a set of requests P, an integer k.  A request is a pair of vertices (u, v) Output: k edges, whose removal separates each pair of vertices in P

4 Example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 v 11

5 Caterpillar  A tree is a caterpillar if its internal tree is a path General Tree

6 Example of Caterpillar v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11

7 Outline Introduction: Definitions: Reduction rules: Analysis:

8 Some definitions Bad leaf  A group of leaves is the set of leaves connected to the same internal node  A group request is a request (x,y) where x and y belong to the same group  Bad leaf which is an endpoint of a group request Inner node  An internal node with no leaves attached to it.

9 Bad leaves and inner node v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 Group leaves:{v 4,v 5,v 6 }, Group request: (v 4,v 5 ) Bad leaves: v 4,v 5 Inner node: v 7

10 Some definitions Disjoint request: two request are disjoint if their edge sets are disjoint Common factor: the common factor of two requests is the intersection of their paths.

11 Disjoint Request and common factor v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )}, and k = 3 Disjoint Request (v 1,v 3 ), (v 6, v 8 ) Common factor of (v 6,v 8 ), (v 5,v 10 ) are {(v 3,v 7 ), (v 7,v 8 )}

12 Some definitions for caterpillars The internal tree T’ of caterpillar T, The set I 1 of leaves of T’, The set I 2 of degree two nodes of T’, The set L 1 of leaves rooted at I 1, The set L’ 2 of bad leaves rooted at I 2, The set L 2 of other leaves rooted at I 2.

13 Example of Caterpillar v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 I 1 = {v 2, v 8 }, I 2 = {v 3, v 7 }, L 1 = {v 1, v 9, v 10 }, L’ 2 = {v 4, v 5 }, L 2 = {v 6, v 11 } v 11

14 Some definitions R-neighbors: we say two nodes x, y are R- neighbor if there exists a request (x, y). Quasi-R-neighbors: A leaf x and an internal node y are quasi-R-neighbors if there exists a request (x, y), or a request (x, z) where z is a leaf rooted at y.

15 Example of R-neighbors, and quasi-R- neighbors v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 )} (v 5, v 10 ) are R-neighbors (v 5, v 8 ) are quasi-R- neighbors v 11

16 Some definitions Internal path of a request is the intersection between the path of request and the internal tree R 1 dominates a request R 2 if the internal path of R 1 contains the internal path of R 2.

17 Example of internal path v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 5, v 10 ), (v 2, v 5 ), (v 4, v 11 )} The internal path of request, (v 5, v 10 ) is: (v 5, v 10 ) dominates (v 4, v 11 ) v 11

18 Some definitions Wingspan W of a leaf x is the path between the closest quasi-R-neighbor on the right of x and the closest quasi-R- neighbor on the left of x (if no such neighbor exists, we take the father f(x) of x by convention) The size of Wingspan is the number of L 2 leaves pending from it.

19 The wingspan v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = { (v 6, v 8 ), (v 6, v 11 ), (v 6, v 2 )} v 11 The wingspan of v 6 is (v 2, v 7 )

20 Outline Introduction: Definitions: Reduction rules: Analysis:

21 Reduction Rules Unit Request: a request of length 1 Disjoint Request: more than k+1 disjoint requests Unique Direction:  Leaf:  Inner node:

22 Unique Direction: leaf v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v 11

23 Unique Direction: inner node v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8

24 Reduction Rules Inclusion

25 v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11 Consider two requests (v 5, v 10 ), (v 3, v 8 ),

26 Reduction Rules Common factor:  Let R be a request. If there are k+1 requests R 1, R 2, …, R k+1 different form R but intersecting R such that the common factor of any pair of them is the subset of R, then remove R

27 Common Factor v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 v 11 Given a request R=(v 1, v 10 ), R 1 = (v 4, v 11 ), R 2 = (v 5, v 9 ), and k = 1

28 Dominating Wingspans Dominating wingspans:  If x is an L 2 -leaf with a wingspan dominating at least k+1 endpoint-disjoint requests, then contract e(x).

29 The wingspan v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Two request (v 4, v 1 ), (v 11,v 9 ) If k = 1, then … v 11

30 Time complexity for Reduction Rules Unit Request:  Detecting: O(|R|*|E|)  Processing: O(1) Disjoint Request:  Detecting: Polynomial time  Processing: O(1) Unique Direction:  Detecting: O(|V|*|R|)  Processing: O(1)

31 Time complexity for Reduction Rules Inclusion:  Detecting: O(|R|^2 * |E|^2)  Processing: O(1) Common factor:  Detecting: O(|R|^2 * |E|^2)  Processing: O(1) Dominating Wingspan:  Detecting: O(|R|^2 * |E|^2)  Processing: O(1)

32 Time complexity for Reduction Rules Each operation requires polynomial time Each operation decrease k, |R|, or |E| by 1 Overall time complexity is polynomial

33 Outline Introduction: Definitions: Reduction rules: Analysis:

34 Two lemmas Let G be an graph having m edges, of maximal degree d. Then G has a matching of size:  Floor(m/(2d - 1)).

35 First Lemma The maximal degree is d

36 Two Lemmas Let H be an graph having n vertices, of maximal degree d. Then H has an independent set of size:  Floor(n/(d + 1)).

37 First Lemma The maximal degree is d

38 Number of bad leaves Create an new graph G’ For each bad leaf, v in T, set an vertex v’ in G’. For each group request of (u, v) in T, set an edge (u’, v’) in G’

39 Number of bad leaves: example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Given T = (V, E), A set of Request P = {(v 1, v 3 ), (v 4, v 5 ), (v 6, v 8 ), (v 9, v 10 ), (v 5,v 6 )}, and k = 3 Group leaves:{v 4,v 5,v 6 }, {v 9, v 10 } Group request: (v 4,v 5 ), (v 5, v 6 ), (v 9, v 10 ) Bad leaves: v 4,v 5, v 6, v 9, v 10,

40 Number of bad leaves: example v’ 4 v’ 5 v’ 6 Group of leaves:{v 4,v 5,v 6 }, {v 9, v 10 } Group request: (v 4,v 5 ), (v 5, v 6 ), (v 9, v 10 ) Bad leaves: v 4,v 5, v 6, v 9, v 10, v’ 9 v’ 10

41 Number of bad leaves For bad leaf in G’, the maximal degree is k+1 by Common factor rule, the minimum degree is 1 If there are at least 2(k+1)(2k+1) bad leaves, then there are at least (k+1)(2k+1) edges in G’ There is a matching of size (k+1) by First lemma, floor(m/(2d-1)). The size of bad leaves is at most 2(k+1)(2k+1)

42 The size of wingspan Consider a maximal wingspan W, and the leaves W’ pending from it. Create a new graph G’ For each v in W or W’, set an vertex v’ in G’ For each request (u, v) where u, v in W or W’, set an edge (u’, v’) in G’

43 Maximal wingspan Maximal wingspan, a wingspan, every vertex v in W’ has at least an request (u, v) where u is in W or W’

44 The size of wingspan: Example v1v1 v2v2 v4v4 v5v5 v6v6 v3v3 v7v7 v9v9 v 10 v8v8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Requests, (v 4, v 1 ), (v 11,v 9 ), (v 6, v 9 ), (v 6, v 2 ), (v 4, v 11 ) v 11 W ={v 2, v 3, v 7, v 8 } W’={v 1, v 4, v 5, v 6, v 11, v 9, v 10 }

45 The size of wingspan: Example v’ 1 v’ 2 v’ 4 v’ 5 v’ 6 v’ 3 v’ 7 v’ 9 v’ 10 v’ 8 Supposed that the wingspan of v 6 is (v 2, v 8 ) Requests, (v 4, v 1 ), (v 11,v 9 ), (v 6, v 9 ), (v 6, v 2 ), (v 4, v 11 ) v’ 11 W ={v 2, v 3, v 7, v 8 } W’={v 1, v 4, v 5, v 6, v 11, v 9, v 10 }

46 The size of wingspan For bad leaf in G’, the maximal degree is 2(k+1), the minimum degree is 1 If there are at least 2(k+1)(4k+3) L 2 -leaves pending from W, then there are at least (k+1)(4k+3) edges in G’ There is a matching of size (k+1) by First lemma, floor(m/(2d-1)). The size of a L 2 -leaves pending from W is at most 2(k+1)(4k+3)

47 Number of L 2 -leaves There are less than 2(k+1)(4k+3) L 2 - leaves not pending from W have wingspan intersection with W for each direction.

48 Example …

49 Number of L 2 -leaves Create a new graph G’ For each L 2 leave, v, set an vertex v’ in G’ For any two wingspan of u, v intersect with each other, set an edge (u’, v’) in G’ The maximal degree of G’ is 6(k+1)(4k+3) If the number of vertices is at least (6(k+1)(4k+3)+1)(k+1), then it has at least (k+1) disjoint wingspans.

50 Number of I 2 nodes Each inner node of requests in two directions by Unique direction rule. The union of a set of inner nodes is called as a request path. The length of each request path is at most k.

51 Number of I 2 nodes v2v2 v3v3 v7v7 v8v8 Requests, (v 2, v 3 ), (v 3,v 8 ) v 11

52 Number of I 2 nodes Each end of a request path is a vertex of I 1, L 1, L 2, or L’ 2. The number of vertices of I 1, L 1, L 2, or L’ 2 is at most O(k 3 ) The number of inner nodes of with a neighbor in I 1, L 1, L 2, or L’ 2 is at most O(k 4 ) The number of inner nodes is at most O(k 5 )

53 Questions Thanks


Download ppt "Course Presentation: A Polynomial Kernel for Multicut in Trees, STACS 2009 Authors: Nicolas Bousquet, Jean Daligault, Stephan Thomasse, Anders Yeo Speaker:"

Similar presentations


Ads by Google