More Related Content
PDF
PDF
PDF
PDF
PPTX
PPTX
PDF
PDF
What's hot
PPTX
PDF
PDF
PDF
読書会 「トピックモデルによる統計的潜在意味解析」 第2回 3.2節 サンプリング近似法 PDF
PPT
PDF
PDF
PPTX
PPT
PDF
「五次方程式が代数的に解けないわけ」第3回プログラマのための数学勉強会 #maths4pg PDF
第5章 時系列データのモデリング, 補助情報を考慮したモデリング PDF
PDF
PDF
PDF
PPTX
KEY
PDF
読書会 「トピックモデルによる統計的潜在意味解析」 第6回 4.3節 潜在意味空間における分類問題 PDF
Similar to Multi terminal networkflows
PDF
KEY
PDF
KMC 競技プログラミング練習会 Advanced 第3回 ふろー PPTX
PDF
PDF
PDF
PDF
PDF
プログラミングコンテストでのデータ構造 2 ~動的木編~ PPTX
PDF
JOI春季ステップアップセミナー 2021 講義スライド PDF
NIPS2013読み会: Scalable kernels for graphs with continuous attributes PPT
Introduction to Algorithms#24 Shortest-Paths Problem PPTX
Graph convolution (スペクトルアプローチ) PDF
PDF
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー) PDF
PPT
PDF
PDF
Recently uploaded
PDF
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti... PDF
How We Operated Ticket-Driven Development in JIRA.pdf PDF
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理 PDF
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM... PDF
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ PDF
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M... PDF
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献! Multi terminal networkflows
- 1.
- 2.
フローとは
グラフ 𝐺(𝑉, 𝐸)の各枝 𝑒 ∈ 𝐸に対して, 非負実数の容量 𝑐(𝑒) が定義されている。
また, グラフの 2 点 𝑠, 𝑡 ∈ 𝑉を指定する。
s
2
1 3
t
10
2
6
6 3
8
5
2
- 3.
フローとは
このグラフ 𝐺 において,関数 𝑓: 𝐸 → ℝ+ が以下を満たすとき, 𝑓 をフローネットワークと呼ぶ。
容量制限: 0 ≤ 𝑓 𝑒 ≤ 𝑐 𝑒
フロー保存則: ∀𝑣 ∈ 𝑉 − 𝑠, 𝑡 : 𝑣,𝑤 ∈𝐸 𝑓 𝑣, 𝑤 − 𝑤,𝑣 ∈𝐸 𝑓 𝑤, 𝑣 = 0
10 6
4
1
5
6
s
2
1 3
t
10
2
6
6 3
8
5
3
フロー量は 11
- 4.
カットとは
グラフ G(V, E)の頂点 V の 2 分割 (S, T)のことをカットと言う。
カットに関して, 始点 𝑠 ∈ 𝑆, 𝑡 ∈ 𝑇のとき, ある辺 𝑢, 𝑣 ∈ 𝐸が𝑢 ∈ 𝑆, 𝑣 ∈ 𝑇を満たすとき, 𝑢, 𝑣 を
カットエッジと呼び, カットエッジのコストの総和をカットのサイズと言う。
カットサイズは 11
s
2
1 3
t
10
2
6
6 3
8
5
4
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
定理1
各頂点間(𝑁𝑖, 𝑁𝑗)について, この頂点間の最大フローを𝐹𝑖,𝑗にしたいという要望があったとする。
グラフをうまく作って, 各頂点間の最大フローをぴったり𝐹𝑖,𝑗にしたい。
𝑁0 𝑁1 𝑁2 𝑁3
𝑁0 0 10 15 15
𝑁1 10 0 10 10
𝑁2 15 10 0 20
𝑁3 15 10 20 0
0
1
215
要望𝐹
3
10
20
10
- 11.
- 12.
定理1
(必要性)
背理法で示す。
𝐹𝑖,𝑘 < min(𝐹𝑖,𝑗,𝐹𝑗,𝑘)
が成り立つとすると, 頂点 𝑁𝑖, 𝑁𝑘 にあるカット 𝐴 が存在して, そのカットサイズは 𝐹𝑖,𝑘 になる。
𝑁𝑗 ∈ 𝐴 であるとすると, (𝑁𝑗, 𝑁𝑘)は 𝐴 でカットすればカットサイズが 𝐹𝑗,𝑘より小さくなるので, 最小
性に矛盾。
𝑁𝑗 ∈ 𝑉 − 𝐴の場合も 𝐹𝑖,𝑗について同様のことが言える。
12
- 13.
定理1
(十分性)
∀𝑖, 𝑗, 𝑘:𝐹𝑖,𝑘 ≥ min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘)
が成り立っているという条件の下で, 要望 𝐹 を満たすグラフを構成する。
これは,要望 𝐹 に関する最大全域木を作れば良い。
13
- 14.
- 15.
定理1
任意の頂点 𝑁𝑖, 𝑁𝑝について,木の上での𝑁𝑖 から 𝑁𝑝 へのパスは一意に定まり,
𝐹𝑖,𝑝 ≤ min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘, … , 𝐹𝑜,𝑝)
𝑁0 𝑁1 𝑁2 𝑁3
𝑁0 0 10 15 15
𝑁1 10 0 10 10
𝑁2 15 10 0 20
𝑁3 15 10 20 0
要望𝐹
0
1
215 3
10
20
15
- 16.
定理1
また, 仮定 ∀𝑖,𝑗, 𝑘: 𝐹𝑖,𝑘 ≥ min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘)より, 任意のパスについて
𝐹𝑖,𝑝 ≥ min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘, … , 𝐹𝑜,𝑝)
∴ 𝐹𝑖,𝑝 = min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘, … , 𝐹𝑜,𝑝)
𝑁0 𝑁1 𝑁2 𝑁3
𝑁0 0 10 15 15
𝑁1 10 0 10 10
𝑁2 15 10 0 20
𝑁3 15 10 20 0
要望𝐹
0
1
215 3
10
20
16
- 17.
アルゴリズム1
要望 𝐹 が与えられたときに,その要望を満たすグラフを構成するアルゴリズム
1. 𝐹 から最大全域木を作る(プリム法などが知られている)
2. 定理 1 で与えた不等式を満たすか確かめる
3. 確かめて不等式を満たすなら 構成した木を返す
𝑂 𝑁2 (𝑁は頂点数)で計算できる
17
- 18.
定理2
ネットワークグラフ(𝑉, 𝐸, 𝑏)が与えられるので, 各頂点間の最大フロー (𝐹𝑖,𝑗)の行列𝐹を構成する, とい
う問題を考える
18
𝑁0 𝑁1 𝑁2 𝑁3
𝑁0 0 10 15 15
𝑁1 10 0 10 10
𝑁2 15 10 0 20
𝑁3 15 10 20 0
𝐹
0
1
215 3
10
20
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
アルゴリズム2 の具体例
頂点3, 5を選択
最小カットは (3 | 1, 2, 4, 5, 6)で,
サイズは15
すべてのノードがひとつの頂点集合になったので終了
2 5
17
1
18
6
13
4
14
15
3
30
- 31.
- 32.
補題2の証明
𝐹𝑖𝑗 ≤ min(𝑣1,𝑣2, … , 𝑣𝑟)
は成り立つ
∵それぞれの edge は, その edge で分割される 2 つの集合間のカットになっている。
𝐹𝑖𝑗は𝑁𝑖, 𝑁𝑗の最小カットのサイズを表しているので, これらの集合によるカット以下である。
あとは
𝐹𝑖𝑗 ≥ min(𝑣1, 𝑣2, … , 𝑣𝑟)
を示せば良い
32
- 33.
- 34.
補題2の証明
これが証明できると, 定理 1から出来た木の中で
𝐹𝑖𝑗 ≥ min(𝑣1, 𝑣2, … , 𝑣𝑟)
が成り立つ
定理1:
要望 𝐹 が実現可能であるための必要十分条件は,
∀𝑖, 𝑗, 𝑘: 𝐹𝑖,𝑘 ≥ min(𝐹𝑖,𝑗, 𝐹𝑗,𝑘)
が成り立つことである。
34
- 35.
- 36.
- 37.
- 38.
補題2の証明
𝑁𝑖 ∈ 𝐴𝑖𝑞
のとき
定理1 から
𝐹𝑗𝑝 ≥ min(𝐹𝑗𝑖, 𝐹𝑖𝑞, 𝐹𝑞𝑝)
𝑁𝑗, 𝑁𝑝間のフローを考えるとき集合 𝐴𝑖 𝑞
を一点とみなせ
る(補題2)から
𝐹𝑗𝑝 ≥ min 𝐹𝑗𝑖, 𝐹𝑞𝑝
= min(𝑣, 𝑣′)
38
- 39.
補題2の証明
辺 𝑣′は頂点 𝑁𝑖,𝑁𝑗をカットする辺なので,
𝑣′ ≥ 𝐹𝑖𝑗 = 𝑣
よって
𝐹𝑗𝑝 ≥ 𝑣
辺 𝑣は頂点 𝑁𝑗, 𝑁𝑝をカットする辺なので,
𝐹𝑗𝑝 ≤ 𝑣
∴ 𝐹𝑗𝑝 = 𝑣
よって𝐴𝑖 𝑝
, 𝐴𝑗間は頂点𝑁𝑗, 𝑁𝑝が最大フローを𝑣にする
39
- 40.
- 41.
- 42.
- 43.
Satisfactory Network について考察
𝑅𝑖,𝑗に関して 最大全域木をつくる
この木に関して,
𝑅𝑖,𝑝 ≤ min(𝑅𝑖,𝑗, 𝑅𝑗,𝑘, … , 𝑅 𝑜𝑝)
が成り立つので,
𝐹𝑖,𝑝 ≥ min 𝐹𝑖,𝑗, 𝐹𝑗,𝑘, … , 𝐹𝑜,𝑝
≥ min 𝑅𝑖,𝑗, 𝑅𝑗,𝑘, … , 𝑅 𝑜,𝑝
≥ 𝑅𝑖,𝑝
つまり, 最大全域木について 𝑅 の条件を満たせば良い(この最大全域木のことを dominant tree
と言う)。
43
- 44.
Satisfactory Network について考察
頂点𝑁𝑖, 𝑁𝑗間の辺の容量を 𝐵𝑖,𝑗とすると, 全体で使う容量(total branch capacity) は,
1
2
𝑖 ≠𝑗
𝐵𝑖,𝑗
ここで, 𝑢𝑖 = max 𝑅𝑖,𝑗 とすると,
1
2
𝑖 ≠𝑗
𝐵𝑖,𝑗 ≥
1
2
𝑖
𝑢𝑖 ≝ 𝐶𝐿
(𝐶𝐿は total branch capacity の下限)
44
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
アルゴリズム3
3. Step2 で出来たtree はすべて uniform tree になっている。各コストを𝛽とすると, 各辺のコス
トが 𝛽/2 となるように連結成分でループを作る
4. 上記のループをすべて足しこんだものが答え
50
- 51.
- 52.
- 53.
アルゴリズム3 の例
Step 2:いくつかの木に分かれているので, それぞれの木で
コスト最小の辺を選ぶ(𝑚𝑖𝑛𝑅とする)
木の各辺を 𝑟𝑖,𝑗 = 𝑟𝑖 ,𝑗 − 𝑚𝑖𝑛𝑅として更新する
53
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
- 61.