a polynomial time algorithm for bounded directed pathwidth

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


  1. A polynomial time algorithm for bounded directed pathwidth Hisao Tamaki Meiji University

  2. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  3. Undirected 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval some 𝑗 *𝑣, 𝑀+ 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such ---------- 𝑣, 𝑀 ∈ π‘Œ 𝑗 that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  4. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  5. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  6. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  7. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  8. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  9. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  10. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  11. 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 a d 1. for each 𝑀 ∈ π‘Š(𝐻) , 𝐽 𝑀 = 𝑗 𝑀 ∈ π‘Œ 𝑗 + is a single non- empty interval 2. for each directed edge (𝑣, 𝑀) there is a pair 𝑗 ≀ π‘˜ such that 𝑣 ∈ π‘Œ 𝑗 and 𝑀 ∈ π‘Œ π‘˜

  12. 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 a d 𝐞πͺ𝐱(𝐻) = 1 width = 1 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 π‘₯ .

  13. Observation 1 The problem of deciding the directed-pathwidth is a generalization of that of deciding the pathwidth. 𝐻 : 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 𝐻′

  14. Observation 2 A directed path decomposition represents a linear system of dicuts. π‘Œ 𝑗 π‘Œ 𝑗 +1 π‘Œ

  15. Observation 2 A directed path-decomposition represents a linear system of dicuts of size at most the width. π‘Œ ≀𝑗 π‘Œ >𝑗 π‘Œ 𝑗 π‘Œ 𝑗 +1 𝑣 𝑀 π‘Œ

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

  17. Complexity Input: positive integer k and graph (digraph) G Q uestion : 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.

  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 )

  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 )

  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.

  21. Search tree for k -feasible sequences 𝐻 {} 0 𝑙 = 2 b d {a} 2 {b} 1 {c} 2 {d} 2 {e} 2 c a {d,e} 2 {a,b} 2 {a,c} 4 {a,d} 3 {a,e} 3 e {a,b,c} 3 {a,b,c} 3 {a,b,d} 3 {a,b,e} 3 {c,d,e} 1 {b,c,d,e} 0 Vertex sets in the search tree are feasible. {a,b,c,d,e} 0 Those leading to a solution are strongly feasible.

  22. Commitment: a special case 𝑉 𝑒 Adding 𝑀 does not increase the indegree. 𝑉 βˆͺ 𝑀 ≀𝑒 Is it safe to commit to this child? In other words, is it true that if 𝑉 is strongly feasible then 𝑉 βˆͺ 𝑀 is?

  23. Commitment: a special case 𝑉 𝑒 Adding 𝑀 does not increase the in-degree. 𝑉 βˆͺ 𝑀 ≀𝑒 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

  24. Commitment in general form 𝑉 𝑒 π‘Šβ€² >𝑒 First decsendant with the same or smaller π‘Š ≀𝑒 in-degree. 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.

  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 .

  26. Proof of the commitment lemma Fact: – is submodular : The in-degree function 𝑒 for every pair of subsets π‘Œ, 𝑍 βŠ† π‘Š (𝐻 ), – π‘Œ + 𝑒 – 𝑍 β‰₯ 𝑒 – (π‘Œ ∩ 𝑍 ) + 𝑒 – (π‘Œ βˆͺ 𝑍 ) 𝑒

  27. Proof of the commitment lemma Step 1 : – π‘Š ≀ 𝑒 – (π‘Œ) Let 𝑉 and π‘Š as in the lemma. Then , 𝑒 holds for every π‘Œ such that 𝑉  π‘Œ  π‘Š . (Even if π‘Œ is not feasible.) Step 2 : Using the condition established in Step 1, derive the strong feasibility of π‘Š from that of 𝑉 .

Recommend


More recommend