from fvs to f-deletion

90
From to F-deletion FVS

Upload: neeldhara-misra

Post on 29-Nov-2014

1.079 views

Category:

Education


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: From FVS to F-Deletion

From to F-deletionFVS

Page 2: From FVS to F-Deletion

From to F-deletiona simple constant-factor randomized

approximation algorithm

FVS

Page 3: From FVS to F-Deletion

From to F-deletiona simple constant-factor randomized

approximation algorithm

VC

Page 4: From FVS to F-Deletion
Page 5: From FVS to F-Deletion

A Generic Algorithm

Page 6: From FVS to F-Deletion

A Generic Algorithm

Special Cases

Page 7: From FVS to F-Deletion
Page 8: From FVS to F-Deletion

THE BLUEPRINT

Page 9: From FVS to F-Deletion
Page 10: From FVS to F-Deletion
Page 11: From FVS to F-Deletion
Page 12: From FVS to F-Deletion
Page 13: From FVS to F-Deletion
Page 14: From FVS to F-Deletion
Page 15: From FVS to F-Deletion
Page 16: From FVS to F-Deletion
Page 17: From FVS to F-Deletion

Every

intersects

at at least one endpoint.

Vertex Cover

every edge

Page 18: From FVS to F-Deletion

Every

intersects

at at least one endpoint.

every edge

Solution

Page 19: From FVS to F-Deletion

Every

intersects

at at least one endpoint.

Solution

some subset of edges?

Page 20: From FVS to F-Deletion

Every

intersects

at at least one endpoint.

Solution

a good fraction of edges

Page 21: From FVS to F-Deletion

Every

intersects

at at least one endpoint.

Solution

a good fraction of edges

Page 22: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Page 23: From FVS to F-Deletion

Pick an endpoint of e, uniformly at random.

Page 24: From FVS to F-Deletion

Repeat until a solution is obtained.

Page 25: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Repeat until a solution is obtained.

Pick an endpoint of e, uniformly at random.

Page 26: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Repeat until a solution is obtained.

Pick an endpoint of e, uniformly at random.

Pick a good edge with probability (1/c)

Page 27: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Repeat until a solution is obtained.

Pick an endpoint of e, uniformly at random.

Pick a good edge with probability (1/c)

Pick a good endpoint with probability (1/2)

Page 28: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Repeat until a solution is obtained.

Pick an endpoint of e, uniformly at random.

Pick a good edge with probability (1/c)

Pick a good endpoint with probability (1/2)

The expected solution size: 2c(OPT)

Page 29: From FVS to F-Deletion

Pick an edge e, uniformly at random.

Repeat until a solution is obtained.

Pick an endpoint of e, uniformly at random.

Pick a good edge with probability (1/c)

Pick a good endpoint with probability (1/2)

The expected solution size: 2c(OPT)

Page 30: From FVS to F-Deletion

S

G \ S

Page 31: From FVS to F-Deletion

S

G \ S

Page 32: From FVS to F-Deletion

#cross edges + #edges within S � (1/c) ·m

S

G \ S

Page 33: From FVS to F-Deletion

#cross edges + #edges within S � (1/c) ·m

Pv2S d(v)

2

S

G \ S

Page 34: From FVS to F-Deletion

� (1/c) ·mP

v2S d(v)

2

S

G \ S

Page 35: From FVS to F-Deletion

� (1/c) ·mX

v2S

d(v) ·2

S

G \ S

Page 36: From FVS to F-Deletion

� (1/c) ·mX

v2S

d(v) ·2

S

G \ S

Page 37: From FVS to F-Deletion

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

� (1/c) ·mX

v2S

d(v) ·2

S

G \ S

Page 38: From FVS to F-Deletion

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

S

G \ S

Page 39: From FVS to F-Deletion
Page 40: From FVS to F-Deletion

SPECIAL CASES

Page 41: From FVS to F-Deletion

G\S is an independent set.

Page 42: From FVS to F-Deletion

G\S is a matching

Page 43: From FVS to F-Deletion

S

G \ S

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

Preprocess: Delete isolated edges.

Page 44: From FVS to F-Deletion

S

G \ S

Preprocess: Delete isolated edges.

X

v2S

d(v) � (1/4) ·X

v2G

d(v)

Page 45: From FVS to F-Deletion
Page 46: From FVS to F-Deletion

G\S is an acyclic graph

(forest)

Page 47: From FVS to F-Deletion

G\S is an acyclic graph

(forest)

cÉÉÇÄ~Åâ=sÉêíÉñ=pÉí

Page 48: From FVS to F-Deletion

S

G \ S

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

Preprocess: ???

Page 49: From FVS to F-Deletion

S

When can we say that every leaf “contributes” a cross-edge?

Page 50: From FVS to F-Deletion

S

Preprocess: Delete pendant vertices.

Page 51: From FVS to F-Deletion

#of cross edges #of leaves�

Page 52: From FVS to F-Deletion

#of edges in the tree #of leaves + #internal nodes

#of cross edges #of leaves�

= - 1

Page 53: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves + #internal nodes

#of cross edges #of leaves�

= - 1

Page 54: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves +

#of cross edges #of leaves�

� - 1#of leaves

Page 55: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves +

#of cross edges #of leaves�

� - 1#of leaves

#of edges in the tree 2(#of leaves) -1�

Page 56: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves +

#of cross edges #of leaves�

� - 1#of leaves

#of edges in the tree 2(#of leaves) -1�

#of edges in the tree 2(#of cross edges) -1�

Page 57: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

Page 58: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

Page 59: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

X

v2G

d(v) = 2(#of edges in the tree) + 2(#of cross edges)

Page 60: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

X

v2G

d(v) = 2(#of edges in the tree) + 2(#of cross edges)

2(2#cross edges - 1) + 2(#of cross edges)�

Page 61: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

X

v2G

d(v) = 2(#of edges in the tree) + 2(#of cross edges)

2(2#cross edges - 1) + 2(#of cross edges)�

�6(#cross edges)

Page 62: From FVS to F-Deletion

#of edges in the tree 2(#of cross edges) -1�

X

v2S

d(v) � (1/c) ·X

v2G

d(v)

X

v2G

d(v) = 2(#of edges in the tree) + 2(#of cross edges)

2(2#cross edges - 1) + 2(#of cross edges)�

�6(#cross edges)

�6 X

v2S

d(v)

!

Page 63: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

Page 64: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

Page 65: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

More preprocessing!

Page 66: From FVS to F-Deletion
Page 67: From FVS to F-Deletion
Page 68: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves +

#of cross edges 2(#of leaves)�

= - 1#of leaves

#of edges in the tree 2(#of leaves) -1�

#of edges in the tree 2(#of cross edges) -1�

Page 69: From FVS to F-Deletion

#of leaves #internal nodes�

(minimum degree at least three)

#of edges in the tree #of leaves +

#of cross edges 2(#of leaves)�

= - 1#of leaves

#of edges in the tree 2(#of leaves) -1�

#of edges in the tree 2(#of cross edges) -1�#of edges in the tree #of cross edges -1 �

Page 70: From FVS to F-Deletion
Page 71: From FVS to F-Deletion

G\S is acyclic

G\S is independent

G\S is a matching

Page 72: From FVS to F-Deletion

G\S is acyclic

G\S is independent

G\S is a matching

Factor 2, for free.

Page 73: From FVS to F-Deletion

G\S is acyclic

G\S is independent

G\S is a matching

Factor 2, for free.

Factor 4, after removingisolated edges

Page 74: From FVS to F-Deletion

G\S is acyclic

G\S is independent

G\S is a matching

Factor 2, for free.

Factor 4, after removingisolated edges

Factor 4, after deleting degree 1and short-circuiting degree 2

vertices.

Page 75: From FVS to F-Deletion
Page 76: From FVS to F-Deletion

WHAT’S NEXT?

Page 77: From FVS to F-Deletion

What is the most general problem forwhich the algorithm

“just works”?

Page 78: From FVS to F-Deletion

Beyond problem-specific reduction rules...

Is there a one-size-fits-all?

Page 79: From FVS to F-Deletion

Answer: mä~å~ê=cJÇÉäÉíáçå

Page 80: From FVS to F-Deletion

Remove at most k vertices such that theremaining graph has no minor models of graphs from F.

Page 81: From FVS to F-Deletion

qÜÉ=cJaÉäÉíáçå=mêçÄäÉãRemove at most k vertices such that the

remaining graph has no minor models of graphs from F.

Page 82: From FVS to F-Deletion

qÜÉ=cJaÉäÉíáçå=mêçÄäÉãRemove at most k vertices such that the

remaining graph has no minor models of graphs from F.

mä~å~ê

(Where F contains a planar graph.)

Page 83: From FVS to F-Deletion

Independent = no edges

Forbid an edge as a minor

Page 84: From FVS to F-Deletion

Acyclic = no cycles

Forbid a triangle as a minor

Page 85: From FVS to F-Deletion

Pathwidth-one graphs

Forbid T2, K3 as a minor

Page 86: From FVS to F-Deletion

Turns out that when you want to killminor models of planar graphs,

G\S must have bounded treewidth.

Page 87: From FVS to F-Deletion

This can be exploited to framesome very general reduction rules.

Page 88: From FVS to F-Deletion

This can be exploited to framesome very general reduction rules.

http://arxiv.org/abs/1204.4230

Page 89: From FVS to F-Deletion

Thank You!http://neeldhara.com/planar-f-deletion-1/

A brief summary of this discussion

Page 90: From FVS to F-Deletion

Thank You!

http://neeldhara.com/planar-f-deletion-1/

A brief summary of this discussion