The b -branching problem in digraphs Naonori Kakimura Keio Univ, - - PowerPoint PPT Presentation

the b branching problem in digraphs
SMART_READER_LITE
LIVE PREVIEW

The b -branching problem in digraphs Naonori Kakimura Keio Univ, - - PowerPoint PPT Presentation

The b -branching problem in digraphs Naonori Kakimura Keio Univ, JPN Naoyuki Kamiyama Kyushu Univ & JST PRESTO, JPN Kenjiro Takazawa Hosei Univ, JPN 3 2 2 MFCS 2018 @ Liverpool, UK Aug. 27-31, 2018 2 2 Overview 2 Branching b


slide-1
SLIDE 1

The b-branching problem in digraphs

Naonori Kakimura

Keio Univ, JPN

Naoyuki Kamiyama

Kyushu Univ & JST PRESTO, JPN

Kenjiro Takazawa

Hosei Univ, JPN MFCS 2018 @ Liverpool, UK

  • Aug. 27-31, 2018

2 1 3 2 2 2

slide-2
SLIDE 2

2

Matching

➢ Min-max theorem [Tutte 47]

[Berge 58]

➢ Algorithm [Edmonds 65]

b-matching

➢ Min-max theorem [Tutte 54] ➢ Algorithm [Marsh 79]

Overview

2 b(v2)=1 b(v1)=3 2 2 2

b-branching [This talk]

➢ Algorithm ➢ Packing theorem 2 1 3 2 2 2

Branching

➢ Algorithm [Chu & Liu 65, etc.] ➢ Packing theorem [Edmonds 73]

slide-3
SLIDE 3

3

Contents

⚫ Introduction: Branching ⚫ Our result: b-branching

◼ Partition matroid ∩ Sparsity matroid ➢ Algorithm ➢ Theorem for packing disjoint b-branchings ◼ Partition matroid ∩ Graphic matroid ➢ Algorithm ➢ Theorem for packing disjoint branchings

2 1 3 2 2 2

slide-4
SLIDE 4

4

Branching

◆Digraph (V, A) Definition ⚫ B⊆A is a branching ⇔ (i) indeg(u) ≤ 1 (u∈V) (ii) No undirected cycle ➢ (i): Partition matroid

✓ A = δin(u1)∪δin(u2)∪∙∙∙∪δin(un) ✓ |B∩δin(ui)| ≤ 1 (i=1,2,....,n)

➢ (ii): Graphic matroid

✓ |B[X]| ≤ |X| - 1 (∅≠X⊆V)

Fact Special case of Matroid intersection

(☞Next slide)

u δ(u) X

slide-5
SLIDE 5

5

Matroid intersection

◆Matroids M1=(A, I1), M2=(A, I2) Weighted matroid intersection problem ⚫ Find B ∊I1∩I2 maximizing w(B)=∑a∊B w(a) ⚫ Example1: Bipartite matching ⚫ Example2: Branching ✓ M1: Partition matroid ✓ M2: Graphic matroid ✓ M1: Partition matroid ✓ M2: Partition matroid ➢ Solved in polynomial time ✓ Augmenting-path algorithm [Edmonds 70] ◆Weight w∈RA

9 8 10 9 1 1 1 9 8 9 1 2 3 5 4 4 1 2 1 4 6

slide-6
SLIDE 6

6

Branching as Special Matroid Intersection

◆Properties (A),(B): Not true for general matroid intersection Property (B) Theorem for packing disjoint branchings [Edmonds 73]

➢ NOT true for bipartite matching (!) ➢ Also holds for

  • Bipartite matching (Kőnig’s edge-coloring theorem)
  • Strongly base orderable matroid intersection [Davies, McDiarmid 76]
  • Matroids without (k + 1)-spanned elements [Kotlar, Ziv 05]

[T ., Yokoi 18]

Property (A) Greedy-type algorithm for max weight branching

[Chu-Liu 65, Edmonds 67, Bock 71, Fulkerson 74]

slide-7
SLIDE 7

7

(A) Greedy-type Algorithm

[Chu-Liu 65, Edmonds 67, Bock 71, Fulkerson 74]

9 7 6 7 4 10 10 6 9 9 7 6 7 4 10 10 6 9 2 1 3 10 6 6 2 1 3

2 = 7 + 4 – 9 3 = 9 + 4 – 10 1 = 7 + 4 – 10

2 6 1 10 6 3 9 7 6 7 4 10 10 6 9

slide-8
SLIDE 8

8

(B) Packing Disjoint Branchings

Disjoint Arborescences Theorem [Edmonds 73] Digraph D has k arc-disjoint r-arborescence ⇔ |δin(X)| ≥ k (∅ ≠ X ⊆ V∖{r}) Digraph D has one r-arborescence ⇔ |δin(X)| ≥ 1 (∅ ≠ X ⊆ V∖{r}) Theorem [Edmonds 67, Bock 71, Fulkerson 74]

X r

slide-9
SLIDE 9

9

Contents

⚫ Introduction: Branching ⚫ Our result: b-branching

◼ Partition matroid ∩ Sparsity matroid ➢ Algorithm ➢ Theorem for packing disjoint b-branchings ◼ Partition matroid ∩ Graphic matroid ➢ Algorithm ➢ Theorem for packing disjoint branchings

2 1 3 2 2 2

slide-10
SLIDE 10

10

2 1 3

b-branching

◆Digraph (V, A) ◆Positive integer vector b∈ZV on V Definition ⚫ B⊆A is a b-branching ⇔ (i) indegB(u) ≤ b(u) (u∈V) (ii) |B[X]| ≤ b(X) – 1 (∅≠X⊆V) ➢ (i): Direct sum of uniform matroids ➢ (ii): Sparsity matroid

  • Branching: b(u)=1

2 2 2 Sparsity matroid [cf. Frank 11]

X

2 3 2 2 2 1

X

Graph G=(V,E), Vector b∈ZV, Integer k ≥0 ➢ {B⊆E : |B[X]| ≤ b(X) - k} is an independent set family of a matroid ✓ k disjoint branchings: indeg(u) ≤ k (u∈V) |B[X]| ≤ k|X| – k (∅≠U⊆V) ✓ |B[X]|=7, b(X)-1=8 × |B(X)|=6, b(X)-1=5

slide-11
SLIDE 11

11

Our Results: Properties of b-branching

x(δ(u)) ≤ b(u) (u∈V) x(A[X]) ≤ b(X) – 1 (∅≠X⊆V) x(a) ≥ 0 (a∈A) b-branching polytope

1 2 2 2 2

r X

➢ |δ(u)| ≥ k∙b(u) (u ∈ V∖{r}) ➢ |δ(X)| ≥ k (∅ ≠ X ⊆ V∖{r})

Property (A) [Our result] Greedy-type algorithm for max weight b-branching

➢ More tractable than bipartite matching

Property (B) [Our result] Theorem for packing disjoint b-branchings + Integer decomposition property of the polytope

slide-12
SLIDE 12

12

(A) Greedy-type Algorithm

8 9 8 12 7 2 10 4 11 5 11 5

b(u)=2 (∀u∈V)

8 9 8 12 7 2 10 4 11 5 11 5 2 4

  • 1

3 2 = 8 + 5 – 11 4 = 4 + 5 – 5 3 = 5 + 5 – 7

  • 1= 2 + 5 – 8

8 9 8 12 7 2 10 4 11 5 11 5

X |B[X]|=b(X) b(vX) := 1 vX

slide-13
SLIDE 13

13

(B) Packing Disjoint b-branchings

Theorem

X

1 1 3 2 2 2

r

Theorem k disjoint b-branchings with indeg(u)=b(u) (u∈V∖{r}) ⇔ ➢ |δin(u)| ≥ k∙b(u) (u ∈ V∖{r}) ➢ |δin(X)| ≥ k (∅ ≠ X ⊆ V∖{r}) 1 2 2 2 2

r X

b-branching with indeg(u)=b(u) (u∈V∖{r}) ⇔ ➢ |δin(u)| ≥ b(u) (u ∈ V∖{r}) ➢ |δin(X)| ≥ 1 (∅ ≠ X ⊆ V∖{r})

  • Th. [Edmonds 73]

k disjoint r-arborescence ⇔ |δin(X)| ≥ k (∅≠X⊆V∖{r}) r-arborescence ⇔ |δin(X)| ≥ 1 (∅≠X⊆ V∖{r})

  • Th. [Edmonds 67, Bock 71, Fulkerson 74]
slide-14
SLIDE 14

14

Algorithm for Packing b-branchings

Theorem [Recap] k disjoint b-branchings with indeg(u)=b(u) (u∈V∖{r}) exist ⇔ ➢ |δ(u)| ≥ k∙b(u) (u ∈ V∖{r}) ➢ |δ(X)| ≥ k (∅ ≠ X ⊆ V∖{r})

① Min-cut algorithm ② Min-cut algorithm k∙b(V)∙|A| (≤ |A|2) times ③ Submodular-flow algorithm Theorem Packing b-branchings in strongly polynomial time: ① Existence ② Find a packing ③ Find a minimum-cost packing

slide-15
SLIDE 15

15

Integer Decomposition Property

The b-branching polytope: ➢ x(δu) ≤ b(u) (v∈V) ➢ x(A[X]) ≤ b(X) – 1 (∅≠X⊆V) ➢ 0 ≤ x(a) ≤ 1 (a∈A) has the integer decomposition property Theorem 2P x x2 x1 Theorem [Recap] k disjoint b-branchings with indeg(u)=b(u) (u∈V∖{r}) ⇔ ➢ |δ(u)| ≥ k∙b(u) (u ∈ V∖{r}) ➢ |δ(X)| ≥ k (∅ ≠ X ⊆ V∖{r})

∀k∊Z++, ∀x∊kP∩ZA, x = x1+…+xk (x1,...,xk∊ P∩ZA)

Integer decomposition property of a polytope P

slide-16
SLIDE 16

16

Further Generalizations

⚫ Packing b-branchings with different indegrees ⚫ Matroid-restricted b-branching

b1,b2,...,bk∈ZV (with bi ≤ b) Theorem Disjoint b-branchings B1,B2,...,Bk with indegBi(u)=bi(u) (u∈V, i=1,2,...,k) ⇔ ➢ |δ(v)| ≥ σ𝑗=1

𝑙

𝑐𝑗(𝑤) (v∈V) ➢ |δ(X)| ≥ |{i∈[k] : bi(X)=b(X)≠0}| (∅≠X⊆V) Each u∈V associated with a matroid Mu=(δ(u), Iu) Definition ⚫ B⊆A is a matroid-restricted b-branching ⇔ (i) B∩δ(u) ∈ Iu (u∈V) (ii) |B[X]| ≤ b(X) – 1 (∅≠X⊆V) ➢ Greedy-type algorithm can be extended 2,2

X

b(u)≡2 2,0 2,1 1,2 2,1 0,1 b1(u),b2(u)

➔ |δ(X)| ≥ 1 u

1 1 3 2 2 2

slide-17
SLIDE 17

17

Contents

⚫ Introduction: Branching ⚫ Our result: b-branching

◼ Partition matroid ∩ Sparsity matroid ➢ Algorithm ➢ Theorem for packing disjoint b-branchings ◼ Partition matroid ∩ Graphic matroid ➢ Algorithm ➢ Theorem for packing disjoint branchings

2 1 3 2 2 2

slide-18
SLIDE 18

18

Summary

Summary & Future Work

⚫ b-branchings in digraphs ➢ indeg(u) ≤ b(u)

✓ Matching ➔ b-matching ✓ Branching ➔ b-branching

➢ Other matroid=Sparsity matroid ➢ Heritage from branchings:

✓ Greedy-type algorithm ✓ Packing theorem ✓ Integer decomposition property

⚫ Other class of matroid intersection admitting greedy-type algorithm? ⚫ Extending other results on branchings? Future work

2 1 3 2 2 2

slide-19
SLIDE 19

19

END of Slides