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

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

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

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

Course Presentation:

A Polynomial Kernel for Multicut in Trees, STACS 2009

Authors: Nicolas Bousquet, Jean Daligault,

Stephan Thomasse, Anders Yeo

Speaker: Jia-Hao Fan

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

Outline

Introduction:Definitions:Reduction rules:Analysis:

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

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

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

Example

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3

v11

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

Caterpillar A tree is a caterpillar if its internal tree is a path

General Tree

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

Example of Caterpillar

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

v11

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

Outline

Introduction:Definitions:Reduction rules:Analysis:

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

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.

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

Bad leaves and inner node

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3Group leaves:{v4,v5,v6},Group request: (v4,v5)Bad leaves: v4,v5

Inner node: v7

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

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.

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

Disjoint Request and common factor

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}, and k = 3

Disjoint Request (v1,v3), (v6, v8)Common factor of (v6,v8), (v5,v10) are {(v3,v7), (v7,v8)}

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

Some definitions for caterpillars

The internal tree T’ of caterpillar T,The set I1 of leaves of T’,

The set I2 of degree two nodes of T’,

The set L1 of leaves rooted at I1,

The set L’2 of bad leaves rooted at I2,

The set L2 of other leaves rooted at I2.

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

Example of Caterpillar

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

I1 = {v2, v8},I2 = {v3, v7},L1 = {v1, v9 , v10},L’2 = {v4, v5},L2 = {v6 , v11}

v11

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

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.

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

Example of R-neighbors, and quasi-R-neighbors

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10)}(v5, v10) are R-neighbors(v5, v8) are quasi-R-neighbors

v11

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

Some definitions

Internal path of a request is the intersection between the path of request and the internal tree

R1 dominates a request R2 if the internal path of R1 contains the internal path of R2.

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

Example of internal path

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v5, v10) , (v2, v5) , (v4, v11)}The internal path of request, (v5, v10) is:(v5, v10) dominates (v4, v11)

v11

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

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 L2 leaves pending from it.

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

The wingspan

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = { (v6, v8), (v6, v11) , (v6, v2)}

v11

The wingspan of v6 is (v2, v7)

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

Outline

Introduction:Definitions:Reduction rules:Analysis:

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

Reduction Rules

Unit Request: a request of length 1Disjoint Request: more than k+1 disjoint

requestsUnique Direction:

Leaf: Inner node:

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

Unique Direction: leaf

v2

v4v5 v6

v3

v7

v11

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

Unique Direction: inner node

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

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

Reduction Rules

Inclusion

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

Inclusion

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

v11

Consider two requests(v5, v10), (v3, v8),

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

Reduction Rules

Common factor: Let R be a request. If there are k+1 requests R1,

R2, …, Rk+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

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

Common Factor

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

v11

Given a requestR=(v1, v10), R1 = (v4, v11), R2 = (v5, v9), and k = 1

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

Dominating Wingspans

Dominating wingspans: If x is an L2-leaf with a wingspan dominating at

least k+1 endpoint-disjoint requests, then contract e(x).

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

The wingspan

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Supposed that the wingspan of v6 is (v2, v8)Two request (v4, v1),(v11,v9)If k = 1, then …

v11

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

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)

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

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)

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

Time complexity for Reduction Rules

Each operation requires polynomial timeEach operation decrease k, |R|, or |E| by 1Overall time complexity is polynomial

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

Outline

Introduction:Definitions:Reduction rules:Analysis:

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

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)).

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

First Lemma

The maximal degree is d

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

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)).

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

First Lemma

The maximal degree is d

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

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’

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

Number of bad leaves: example

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Given T = (V, E), A set of Request P = {(v1, v3), (v4, v5), (v6, v8), (v9, v10), (v5,v6)}, and k = 3

Group leaves:{v4,v5,v6}, {v9, v10} Group request: (v4,v5), (v5, v6), (v9, v10)Bad leaves: v4,v5, v6, v9, v10,

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

Number of bad leaves: example

v’4

v’5v’6

Group of leaves:{v4,v5,v6}, {v9, v10} Group request: (v4,v5), (v5, v6), (v9, v10)Bad leaves: v4,v5, v6, v9, v10,

v’9 v’10

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

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)

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

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’

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

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’

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

The size of wingspan: Example

v1

v2

v4v5 v6

v3

v7

v9 v10

v8

Supposed that the wingspan of v6 is (v2, v8)Requests, (v4, v1), (v11,v9), (v6, v9), (v6, v2), (v4, v11)

v11

W ={v2, v3, v7, v8}W’={v1, v4, v5, v6, v11, v9, v10}

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

The size of wingspan: Example

v’1

v’2

v’4v’5 v’6

v’3

v’7

v’9 v’10

v’8

Supposed that the wingspan of v6 is (v2, v8)Requests, (v4, v1), (v11,v9), (v6, v9), (v6, v2), (v4, v11)

v’11

W ={v2, v3, v7, v8}W’={v1, v4, v5, v6, v11, v9, v10}

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

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) L2-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 L2-leaves pending from W is at most 2(k+1)(4k+3)

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

Number of L2-leaves

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

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

Example

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

Number of L2-leaves

Create a new graph G’For each L2 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.

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

Number of I2 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.

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

Number of I2 nodes

v2

v3

v7

v8

Requests, (v2, v3), (v3,v8)

v11

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

Number of I2 nodes

Each end of a request path is a vertex of I1, L1, L2, or L’2.

The number of vertices of I1, L1, L2, or L’2 is at most O(k3)

The number of inner nodes of with a neighbor in I1, L1, L2, or L’2 is at most O(k4)

The number of inner nodes is at most O(k5)

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

Questions

Thanks