A polynomial time algorithm for bounded directed pathwidth Hisao - - PowerPoint PPT Presentation

โ–ถ
a polynomial time algorithm for bounded directed pathwidth
SMART_READER_LITE
LIVE PREVIEW

A polynomial time algorithm for bounded directed pathwidth Hisao - - PowerPoint PPT Presentation

A polynomial time algorithm for bounded directed pathwidth Hisao Tamaki Meiji University Directed pathwidth/decomposition A directed path-decomposition of 1 2 3 4 5 f b f c d a e e c g g g g g b


slide-1
SLIDE 1

Hisao Tamaki Meiji University

A polynomial time algorithm for bounded directed pathwidth

slide-2
SLIDE 2

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-3
SLIDE 3

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

Undirected *๐‘ฃ, ๐‘ค+

  • some ๐‘—

๐‘ฃ, ๐‘ค โˆˆ ๐‘Œ๐‘—

slide-4
SLIDE 4

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-5
SLIDE 5

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-6
SLIDE 6

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-7
SLIDE 7

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-8
SLIDE 8

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-9
SLIDE 9

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-10
SLIDE 10

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-11
SLIDE 11

Directed pathwidth/decomposition

  • 1. for each ๐‘ค โˆˆ ๐‘Š(๐ป) , ๐ฝ๐‘ค = ๐‘— ๐‘ค โˆˆ ๐‘Œ๐‘—+ is a single non-

empty interval

  • 2. for each directed edge (๐‘ฃ, ๐‘ค) there is a pair ๐‘— โ‰ค ๐‘˜ such

that ๐‘ฃ โˆˆ ๐‘Œ๐‘— and ๐‘ค โˆˆ ๐‘Œ

๐‘˜

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

slide-12
SLIDE 12

Directed pathwidth/decomposition

The width of a directed path-decomposition is ๐‘›๐‘๐‘ฆ๐‘— |๐‘Œ๐‘—| - 1. The directed pathwidth of ๐ป is the minimum ๐‘ฅ such that there is a directed path-decomposition of ๐ป of width ๐‘ฅ.

b e a d c

๐ป

a c b f g e g d

A directed path-decomposition of ๐ป

๐‘Œ1 ๐‘Œ2 ๐‘Œ3 ๐‘Œ4 ๐‘Œ5

f g g g

width = 1 ๐ž๐ช๐ฑ(๐ป) = 1

slide-13
SLIDE 13

๐ป: undirected graph ๐ปโ€™: digraph with a pair of anti-parallel edges for each edge of ๐ป The condition for a path-decomposition of ๐ป = the condition for a directed path-decomposition of ๐ปโ€ฒ

Observation 1 ๐ป ๐ปโ€™

๐‘Œ๐‘— ๐‘Œ

๐‘˜

๐‘ฃ ๐‘ค

๐‘˜ โ‰ค ๐‘— ๐‘— โ‰ค ๐‘˜ The problem of deciding the directed-pathwidth is a generalization of that of deciding the pathwidth.

slide-14
SLIDE 14

Observation 2

๐‘Œ๐‘—

A directed path decomposition represents a linear system

  • f dicuts.

๐‘Œ๐‘—+1 ๐‘Œ

slide-15
SLIDE 15

Observation 2

๐‘Œโ‰ค๐‘—

A directed path-decomposition represents a linear system

  • f dicuts of size at most the width.

๐‘Œ๐‘—+1 ๐‘Œ ๐‘Œ>๐‘— ๐‘Œ๐‘— ๐‘ฃ ๐‘ค

slide-16
SLIDE 16

Some facts on directed pathwidth

Introduced by Reed, Seymour, and Thomas in mid 90โ€™s. Relates to directed treewidth [Johnson, Robertson, Seymour and Thomas 01], D-width [Safari 05], Dag-width [ Berwanger, Dawar, Hunter & Kreutzer 05, Obdrzalek 06], and Kelly-width[Hunter & Kreutzer 07] as pathwidth relates to treewidth. For digraphs of directed pathwidth ๐‘ฅ, some problems including directed Hamiltonian cycle can be solved in ๐‘œ๐‘ƒ(๐‘ฅ) time [JRST01] . Used in a heuristic algorithm for enumerating attractors of boolean networks [Tamaki 10].

slide-17
SLIDE 17

Complexity

Input: positive integer k and graph (digraph) G Question: Is the (directed) pathwidth of G at most k ?

NP-complete for the undirected case [Kashiwabara & Fujisawa 79] and hence for the directed case.

Undirected pathwidth is fixed parameter tractable:

๐‘” ๐‘™ ๐‘œ๐‘ƒ(1) time: graph minor theorem 2๐‘ƒ ๐‘™3 ๐‘œ time: [Bodlaender 96, Bodlaender & Kloks 96]

Directed pathwidth is open for FPT

Even for k = 2, no polynomial time was previously known.

slide-18
SLIDE 18

Result

An ๐‘ƒ ๐‘›๐‘œ๐‘™+1 time algorithm for deciding if the directed pathwidth is โ‰ค ๐‘™ (and constructing the associated decomposition) for a digraph of ๐‘œ vertices and ๐‘› edges. Note This algorithm is extremely simple, easy to implement, and useful even for undirected pathwidth/-decomposition (the linear time algorithm of Bodlaender depends exponentially on k 3)

slide-19
SLIDE 19

Notation

๐ป : digraph, fixed ๐‘œ = ๐‘Š ๐ป ๐‘› = ๐น ๐ป ๐‘‚

โ€“ ๐‘Œ = ๐‘ฃ โˆˆ ๐‘Œ ๐‘ฃ, ๐‘ค โˆˆ ๐น ๐ป , ๐‘ค โˆˆ ๐‘Œ +

: set of in-neighbors of ๐‘Œ ๏ƒ๐‘Š(๐ป) ๐‘’

โ€“ (๐‘Œ) = |๐‘‚ โ€“ (๐‘Œ)| : in-degree of ๐‘Œ ๏ƒ๐‘Š(๐ป)

ฮฃ(๐ป ): the set of all non-duplicating sequences of vertices of ๐ป ๐‘Š (ฯƒ) : the set of vertices appearing in ฯƒ ๏ƒŽS(G )

slide-20
SLIDE 20

Directed vertex separation number

A vertex sequence ๐œ โˆˆ ฮฃ ๐ป is ๐‘™-feasible if ๐‘’โˆ’ ๐‘Š ฯ„ โ‰ค ๐‘™ for every prefix ฯ„ of ฯƒ. The directed vertex separation number of G : dvsn(G ) = min ๐‘™ ๐œ โˆˆ ฮฃ ๐ป : ๐‘Š ๐œ = ๐‘Š(๐ป)and ฯƒ is ๐‘™-feasible+ Fact: dvsn(G ) = dpw(G )

The conversion from a vertex separation sequence to a directed path-decomposition is straightforward.

slide-21
SLIDE 21

Search tree for k-feasible sequences Vertex sets in the search tree are feasible. Those leading to a solution are strongly feasible.

b e a d c

๐ป ๐‘™ = 2 {a} 2 {} 0 {b} 1 {c} 2 {e} 2 {d} 2 {a,b} 2 {a,c} 4 {a,d} 3 {a,e} 3 {a,b,c} 3 {a,b,c} 3 {a,b,d} 3 {a,b,e} 3 {d,e} 2 {c,d,e} 1 {b,c,d,e} 0 {a,b,c,d,e} 0

slide-22
SLIDE 22

Commitment: a special case Is it safe to commit to this child? In other words, is it true that if ๐‘‰ is strongly feasible then ๐‘‰ โˆช ๐‘ค is? ๐‘‰ ๐‘’ ๐‘‰ โˆช ๐‘ค โ‰ค๐‘’

Adding ๐‘ค does not increase the indegree.

slide-23
SLIDE 23

Commitment: a special case Is it safe to commit to this child? In other words, is it true that if ๐‘‰ is strongly feasible then ๐‘‰ โˆช ๐‘ค is? YES, in a more genral form ๐‘‰ ๐‘’ ๐‘‰ โˆช ๐‘ค โ‰ค๐‘’

Adding ๐‘ค does not increase the in-degree.

slide-24
SLIDE 24

Commitment in general form Commitment lemma Let ๐‘‰ โŠ‚ ๐‘Š both feasible and suppose:

  • 1. ๐‘’โˆ’ ๐‘Š โ‰ค ๐‘’โˆ’ ๐‘‰ ,
  • 2. ๐‘’โˆ’ ๐‘Šโ€ฒ > ๐‘’โˆ’ ๐‘‰ for every feasible proper

superset ๐‘Šโ€ฒ of ๐‘‰ strictly smaller than ๐‘Š, and

  • 3. ๐‘‰ is strongly feasible.

Then ๐‘Š is strongly feasible. ๐‘‰ ๐‘’ ๐‘Š โ‰ค๐‘’ ๐‘Šโ€ฒ >๐‘’

First decsendant with the same or smaller in-degree.

slide-25
SLIDE 25

Search tree pruning based on commitment

When a node has a descendant to which it can commit, all other descendants are removed from the tree. Effectively, branching occurs only when the in-degree increases. The pruned tree behaves like a depth ๐‘™ tree in a fuzzy sense. Can show, with some technicality, that the size of the pruned tree is at most ๐‘œ๐‘™+1 .

slide-26
SLIDE 26

Proof of the commitment lemma

Fact:

The in-degree function ๐‘’

โ€“ is submodular:

for every pair of subsets ๐‘Œ, ๐‘ โІ ๐‘Š (๐ป ),

๐‘’

โ€“ ๐‘Œ + ๐‘’ โ€“ ๐‘ โ‰ฅ ๐‘’ โ€“ (๐‘Œ โˆฉ ๐‘ ) + ๐‘’ โ€“ (๐‘Œ โˆช ๐‘ )

slide-27
SLIDE 27

Proof of the commitment lemma

Step 2:

Using the condition established in Step 1, derive the strong feasibility of ๐‘Š from that of ๐‘‰.

Step 1:

Let ๐‘‰ and ๐‘Š as in the lemma. Then, ๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ)

holds for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š. (Even if ๐‘Œ is not feasible.)

slide-28
SLIDE 28

Step 2 of the proof

Assumptions:

๐‘‰ โŠ‚ ๐‘Š, ๐‘‰ is strongly feasible, ๐‘Š is feasible, and

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐‘Š is also strongly feasible

๐‘‰ ๐‘Š

slide-29
SLIDE 29

Step 2 of the proof

Assumptions:

๐‘‰ is strongly feasible, ๐‘Š is feasible, and

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐‘Š is also strongly feasible

๐‘‰ ๐‘Š

๐œ : ๐‘™-feasible

slide-30
SLIDE 30

Step 2 of the proof

Assumptions:

๐‘Š is feasible, and

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐›ฝ is ๐‘™-feasible

๐‘‰ ๐‘Š

๐œ : ๐‘™-feasible ๐›ฝ

slide-31
SLIDE 31

Step 2 of the proof

Assumptions:

๐‘Š is feasible, and

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐›ฝ is ๐‘™-feasible

๐‘‰ ๐‘Š

๐œ : ๐‘™-feasible ๐›ฝ ๐‘™-feasible

slide-32
SLIDE 32

Step 2 of the proof

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal:๐‘’

โ€“ ๐ต โ‰ค ๐‘™ for each superset ๐ต of ๐‘Š that is the vertex

set of some prefix of ๐›ฝ

๐‘‰ ๐‘Š

๐œ : ๐‘™-feasible ๐›ฝ

๐ต

slide-33
SLIDE 33

Step 2 of the proof

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐‘’

โ€“ ๐ต โ‰ค ๐‘™

๐œ : ๐‘™-feasible ๐›ฝ

๐ต

๐ถ: the vertex set of the minimal prefix of๐œ such that

๐ถ โˆ– ๐‘Š = ๐ต โˆ– ๐‘Š

๐ถ

slide-34
SLIDE 34

Step 2 of the proof

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐‘’

โ€“ ๐ต โ‰ค ๐‘™

๐œ : ๐‘™-feasible ๐›ฝ

๐ต

By submodularity: ๐‘’

โ€“ ๐‘Š + ๐‘’ โ€“ ๐ถ โ‰ฅ ๐‘’ โ€“ (๐‘Š โˆฉ ๐ถ) + ๐‘’ โ€“ (๐‘Š โˆช ๐ถ)

๐ถ ๐ต ๐‘Œ

slide-35
SLIDE 35

Step 2 of the proof

๐‘’

โ€“ ๐‘Š โ‰ค ๐‘’ โ€“ (๐‘Œ) for every ๐‘Œ such that ๐‘‰ ๏ƒ ๐‘Œ ๏ƒ ๐‘Š.

Goal: ๐‘’

โ€“ ๐ต โ‰ค ๐‘™

๐œ : ๐‘™-feasible ๐›ฝ

๐ต

By submodularity: ๐‘’

โ€“ ๐‘Š + ๐‘’ โ€“ ๐ถ โ‰ฅ ๐‘’ โ€“ (๐‘Š โˆฉ ๐ถ) + ๐‘’ โ€“ (๐‘Š โˆช ๐ถ)

๐ถ ๐ต ๐‘Œ

โ‰ค ๐‘™ โ‰ฅ ๐‘’

โ€“ ๐‘Š

slide-36
SLIDE 36

Step 2 of the proof

Goal: ๐‘’

โ€“ ๐ต โ‰ค ๐‘™ : established

โ‡’ ๐›ฝ is ๐‘™-feasible โ‡’ ๐‘Š is strongly feasible

๐œ : ๐‘™-feasible ๐›ฝ

๐ต

By submodularity: ๐‘’

โ€“ ๐‘Š + ๐‘’ โ€“ ๐ถ โ‰ฅ ๐‘’ โ€“ (๐‘Š โˆฉ ๐ถ) + ๐‘’ โ€“ (๐‘Š โˆช ๐ถ)

๐ถ ๐ต ๐‘Œ

โ‰ค ๐‘™ โ‰ฅ ๐‘’

โ€“ ๐‘Š

slide-37
SLIDE 37

Open problems

Is directed-pathwidth FPT, i.e., has an ๐‘” ๐‘™ ๐‘œ๐‘ƒ(1) time algorithm? Are directed-treewidth, D-width, Dag-width, and Kelly-width in XP, i.e., has an ๐‘œ๐‘ƒ ๐‘™ time algorithm? More applications?