[Study] Karger-Stein Minimum Cut
Min Cut
Min Cut ๋ฌธ์ ๋, ์ด๋ค ๊ทธ๋ํ $G = (V, E)$ ๊ฐ ์ฃผ์ด์ก์ ๋, $V$์ ์ ์ ๋ค์ ๋ ์งํฉ $S, T$ ๋ก ๋๋์ด์, \(\Setcond{(u, v) \in E}{u \in S, v \in T}\) ์ฆ, ํ์ชฝ ๋์ด $S$์, ๋ค๋ฅธ์ชฝ ๋์ด $T$์ ๋ค์ด๊ฐ๋ ๊ฐ์ ๋ค์ ๊ฐ์๋ฅผ ์ต์ํํ๋ ๋ฌธ์ ์ ๋๋ค. Weighted graph์์๋ ๊ฐ์ ์ ๊ฐ์๊ฐ ์๋๋ผ weight์ ํฉ์ ์ต์ํํ๋ ๋ฌธ์ ๋ก ๋ฐ๊พธ์ด ์๊ฐํ๋ฉด ๋ฉ๋๋ค.
์ฐ๋ฆฌ๋ ๋ ผ์๋ฅผ ์ํด, ํธ์์ ๊ทธ๋ํ๋ฅผ unweighted connected์ ๊ฒฝ์ฐ๋ก๋ง ํ์ ํ๊ฒ ์ต๋๋ค. Directed / Undirected๋ (๊ทธ๋ฆผ์ undirected๋ก ๊ทธ๋ฆฌ๋๋ผ๋) ์ฌ์ค ๋ฌธ์ ์์ฒด๊ฐ ๋๊ฐ์ต๋๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์ธก๋ฉด์์๋ ์กฐ๊ธ ์ฐจ์ด๊ฐ ์์ผ๋ฏ๋ก, ์ข๋ ์ผ๋ฐ์ ์ธ directed graph์ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํ๊ฒ ์ต๋๋ค.
์๋ฅผ ๋ค์ด ์ด ๊ทธ๋ฆผ์์ ๋นจ๊ฐ์ cut์ ๊ฐ์ 3๊ฐ์ง๋ฆฌ cut์ด์ง๋ง, ์ด๋ก์ cut์ ๊ฐ์ 1๊ฐ์ง๋ฆฌ์ ๋๋ค.
s-t min cut
Min cut ๋ฌธ์ ์ variation ์ค ํ๋๋, s-t min cut ์ด๋ผ๋ ๋ฌธ์ ์ ๋๋ค. ์ด ๋ฌธ์ ๋ $s, t$ ๋ผ๋ ๋ ์ ์ ์ด ๊ฐ๊ฐ $S, T$์ ์ํด์ผ ํ๋ค๋ ์ถ๊ฐ ์ ์ฝ์กฐ๊ฑด์ด ๊ฑธ๋ฆฐ min cut ๋ฌธ์ ์ ๋๋ค.
- ๋งค์ฐ ์ ๋ช ํ Max-Flow-Min-Cut Theorem์ ์ํ๋ฉด, s-t min cut ๋ฌธ์ ๋ s-t max flow๋ก ๊ณ์ฐํ ์ ์์ต๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, $s$ ์์ $t$๋ก ๊ฐ๋ max flow์ $s-t$ min cut์ ํฌ๊ธฐ๊ฐ ๊ฐ๋ค๋ ์ ๋ฆฌ์ ๋๋ค.
- ์ด ์ ๋ฆฌ์ ํต์ฌ ์์ด๋์ด๋ ๋ ๋ฌธ์ ๋ฅผ ๊ฐ๊ฐ LP (Linear Programming) ๋ฌธ์ ๋ก ๋ฐ๊พผ ํ, ๋ LP๋ฅผ ๋น๊ตํ๋ ๊ฒ์ ๋๋ค. ๋ LP๋ ์๋ก primal-dual ๊ด๊ณ์ ์์์ ์ ์ ์๋๋ฐ, Dual Linear Program์ Strong duality theorem์ ์ํ๋ฉด, LP์ ๊ฒฝ์ฐ strong duality๋ฅผ ๊ฐ๊ธฐ ๋๋ฌธ์ ๋ ๋ฌธ์ ์ ์ต์ ๊ฐ, ์ฆ max-flow์ min-cut์ ๊ฒฐ๊ณผ๊ฐ์ด ๊ฐ์ต๋๋ค.
- Primal-Dual LP๋ Strong duality์ ๋ํ ์ฆ๋ช ์ ์ด ํฌ์คํ ์ ๋ฒ์๋ฅผ ๋์ด๊ฐ๋ ์ด์ผ๊ธฐ์ด๊ธฐ ๋๋ฌธ์ ์๋ตํฉ๋๋ค. ๊ถ๊ธํ๋ค๋ฉด 1 ์ ์ฐธ๊ณ . Farkas Lemma ๋ฑ ์์์ผ ํ ๋ด์ฉ์ด ์๋นํ ๋ง์ต๋๋ค.
- Dinic์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก max flow๋ฅผ $O(V^2 E)$ ์ ํด๊ฒฐํ ์ ์๊ณ , $E$ ๋ฅผ $V^2$ ๊น์ง ๊ฐ ์ ์์์ ๊ฐ์ํ๋ฉด2 ํ์ฌ ์ค์ง์ ์ผ๋ก ๊ฐ์ฅ ๋น ๋ฅธ flow๋ $O(V^3)$ ์๊ฐ์ ๋๋ ์๊ณ ๋ฆฌ์ฆ๋ค์ด ์์ต๋๋ค. (Push-Relabel with FIFO)
์ด์ , ์ผ๋ฐ์ ์ธ min cut์ ํ๊ณ ์ ํ๋ค๊ณ ์๊ฐํด ๋ด ์๋ค. ๋น์ฐํ, ๋ชจ๋ ์ ์ ํ์ด๋ฅผ $s, t$๋ก ์ก๊ณ s-t min cut์ ํด๋ณด๋ ๋ฐฉ๋ฒ์ ์๊ฐํ ์ ์์ผ๋ฏ๋ก, ์ฐ๋ฆฌ๋ ์ ์ด๋ $O(V^5)$ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด๋ณด๋ค ๋์ ๋ฐฉ๋ฒ์ ์๊ฐํด ๋ด ์๋ค. ์ดํ, ์๊ฐ ๋ณต์ก๋๋ฅผ ์ธ ๋ ์ ์ ์ด $n$ ๊ฐ, ๊ฐ์ ์ด $m$๊ฐ๋ผ๊ณ ์๊ฐํ๊ฒ ์ต๋๋ค. ์ฆ $\abs{V} = n, \abs{E} = m$.
Kargerโs Algorithm
์ง๊ธ์ MIT์ ๊ต์๋ก ๊ณ์ Prof. David R Karger๊ฐ ์ ์ํ Kargerโs Algorithm์ Edge contraction์ด๋ผ๋ ์ฐ์ฐ์ ๊ธฐ๋ฐํ๋, ๋งค์ฐ ๊ฐ๋จํ๊ณ elegantํ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค.
Edge contraction
Edge contraction์ด๋, ๋ง ๊ทธ๋๋ก edge ์์ชฝ ๋์ ์ ํฉํ๋ ์ฐ์ฐ์ ๋๋ค. Edge $e = (u, v)$๋ฅผ contractํ ๊ทธ๋ํ $G / e$ ๋ ๋ค์๊ณผ ๊ฐ์ ๊ณผ์ ์ ํตํด ๋ง๋ค์ด์ง๋๋ค.
- $(u, v)$ ์ ์์ชฝ vertex $u$ ๊ณผ $v$๋ฅผ ํฉ์ณ ํ๋์ vertex $w$๋ฅผ ๋ง๋ญ๋๋ค.
- $(u, x)$ ๋ $(v, x)$ ๊ฐ ์์ผ๋ฉด ์ด๊ฑธ ๋ชจ๋ $(w, x)$ ๋ก ๋ง๋ญ๋๋ค. ์ด๋, parallel edge๋ ํ์ฉ๋์ด์ผ ํฉ๋๋ค. 3
- ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก $(x, u), (x, v)$ ์ ๋ํด์๋ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์นฉ๋๋ค.
- ๋จ, $(u, v)$ ๊ฐ์ ์ ์ญ์ ํฉ๋๋ค. self loop์ ํ์ฉํ์ง ์๊ณ , $(w, w)$๋ ์์ ๋ฒ๋ฆฝ๋๋ค.
์๋ฅผ ๋ค์ด ์ด๋ฐ ์์ ๋๋ค. ๊ทธ๋ฆผ์ ๋ณด๋ฉด ๊ฑฐ์ ๋ฐ๋ก ์ดํด๊ฐ ๊ฐ๋ฏ ํฉ๋๋ค.
Algorithm
Kargerโs Algorithm์ ์ ๋ง ์ด์ด๊ฐ ์์ ์ ๋๋ก ๊ฐ๋จํฉ๋๋ค.
- Edge Contraction์ ๊ณ์ ์งํํด์, ๋ ธ๋ ๋๊ฐ์ ๊ทธ ๋ ธ๋ ๋๊ฐ ์ฌ์ด์ ๊ฐ์ $k$ ๊ฐ๊ฐ ๋จ์๋ค๊ณ ํฉ์๋ค.
- ์ฌ๋ฏธ์๋ ์ฌ์ค์, ์ฐ๋ฆฌ์ Edge contraction์ ์ฌ์ค ์ด ๋ ์ ์ ์ ๊ฐ์ ์งํฉ์ ์๋ค ๋ผ๊ณ ์ฒ๋ฆฌํ๋ ๊ฒ๊ณผ ๋์น์ ๋๋ค.
- ๋ฐ๋ผ์, ๋จ์ ๋๊ฐ์ ์ ์ $a, b$์ ๋ํด a๋ก ํฉ์ณ์ง ์ ์ ์ ์งํฉ ๊ณผ b๋ก ํฉ์ณ์ง ์ ์ ์ ์งํฉ ์ $S, T$๋ก ์ผ์ผ๋ฉด, ๋ง์ง๋ง ์๊ฐ์ $a, b$๋ฅผ ์๋ $k$๊ฐ์ ๊ฐ์ ์ด cut edge๊ฐ ๋ฉ๋๋ค.
- ๊ทธ๋ฌ๋ฏ๋ก, ์ ์ ์ ๋ฌด์์ ๋๋คํ๊ฒ ์ค์ฌ๋๊ฐ๋ค๊ฐ 2๊ฐ๊ฐ ๋จ์ผ๋ฉด (min cut์ ์๋๊ฒ ์ง๋ง) cut์ ํ๋ ์ป์ต๋๋ค.
- ์ฐ๋ฆฌ๋, ์ด๊ฑธ ์ถฉ๋ถํ ๋ง์ด ๋ฐ๋ณตํ๋ฉด min cut์ ์ป์ ํ๋ฅ ์ด ์ถฉ๋ถํ ๋์์ ๋ ผ์ฆํ๊ณ ์ ํฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์ด๋ ๊ฒ cut์ ํ๋ ์ป๋ ๊ณผ์ ๊น์ง๋ฅผ $q$ ๋ฒ ๋ฐ๋ณตํ์ฌ, ๊ทธ๋์ ์ป์ cut๋ค ์ค ๊ฐ์ฅ ์์ (๊ฐ์ ์ด ์ ์) cut์ ์ทจํ๋ ๊ฒ์ ์๊ฐํ๊ฒ ์ต๋๋ค.
Proof
min cut์ ํฌ๊ธฐ๋ฅผ ํธ์์ $K$ ๋ผ๊ณ ํ๊ณ , ์ค์ cut edge์ ์งํฉ์ $C$๋ผ๊ณ ํ๊ฒ ์ต๋๋ค. ์ด์ , ์ ์๊ณ ๋ฆฌ์ฆ์ด C๋ฅผ ๋ฐํํ , ์ฆ ์ฌ๋ฐ๋ฅธ ๋ต์ ์ ๊ณตํ ํ๋ฅ ์ $K$๊ฐ์ Edge๊ฐ $n-2$๋ฒ์ contraction์ ๋ชจ๋ ์ด์๋จ์์ผ ํฉ๋๋ค. ๊ฐ contraction์์๋ ๋จ์ edge๋ค ์ค ํ๋๋ฅผ ์์๋ก contractionํด๋ฒ๋ฆฌ๋ฏ๋ก, ๋งค ์คํ ์ ๋ชจ๋ ์ด์๋จ์ ํ๋ฅ ์ \(\prod_{i = 0}^{n-3} \left(1 - \frac{K}{E - i}\right)\) ์ด๋ ๊ฒ ๊ณ์ฐ๋ฉ๋๋ค. ๊ทธ๋ฐ๋ฐ, $\frac{K}{E - i}$ ๋ ์ ์๊ฐํด๋ณด๋ฉด ์ข์ ๋ฐ์ด๋๋ฅผ ์ก์ ์ ์์ต๋๋ค.
Contraction์ ์งํํ๋ ๊ณผ์ ์ค ํ ๋ฒ์ด๋ผ๋ ๋ง์ฝ ์ด๋ค ์ ์ $u$ ๊ฐ $d_u < K$ ๋ฅผ ๋ง์กฑํ๋ค๋ฉด, $u$ ์ ๋๋จธ์ง๋ฅผ ์๋ฅด๋ cut์ ํฌ๊ธฐ๊ฐ $d_u$ ๊ฐ ๋๊ธฐ ๋๋ฌธ์, ์ ์๋ก๋ถํฐ ๋ชจ๋ ์ ์ ์ degree๋ $K$๋ณด๋ค ์ธ์ ๋ ํฌ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ $i$๋ฒ์งธ contraction ์ด์ ๋จ์ ์ ์ ์ด $n - i$๊ฐ์ด๋ฏ๋ก ์ ์ฒด edge์ ๊ฐ์๋ $\frac{K(n-i)}{2}$ ๊ฐ๋ณด๋ค ํฌ๊ณ , ์ ํ๋ฅ ๊ณ์ฐ์ \(p_{success} \geq \prod_{i = 0}^{n-3} \left(1 - \frac{2}{n - i}\right) = \frac{1}{\binom{n}{2}}\) ์ด๋ ๊ฒ ๊ณ์ฐ๋๊ฒ ๋ฉ๋๋ค.
ํธํ๊ฒ, ๋์ถฉ ์ฑ๊ณต ํ๋ฅ ์ด $1 / n^2$ ์ค์ผ์ผ์ด ๋๋ค๊ณ ํ๊ฒ ์ต๋๋ค (์ด๊ฑฐ๋ณด๋ค 2๋ฐฐ ์ข ๋๋๊ฒ ๋์ต๋๋ค). ๋ง์ฝ ์ฐ๋ฆฌ๊ฐ ์ด ์๊ณ ๋ฆฌ์ฆ์ $n^2 \log n$ ๋ฒ ์๋ํ๋ค๋ฉด, ๊ฐ๋ณ์ ์ธ ์ฑ๊ณตํ๋ฅ ์ด $1 / n^2$ ์ธ ๋ฒ ๋ฅด๋์ด ์ํ์ $n^2 \log n$ ๋ฒ ํ๋ ๊ฒ์ด๋ฏ๋ก, ๋ชจ๋ ์คํจํ ํ๋ฅ ์ $\left(1 - \frac{1}{n^2}\right)^{n^2 \log n}$ ์ด๊ณ , ์ด ๊ฐ์ $1/n$ ๋ฏธ๋ง์ ๋๋ค. 4
์ด์ ๋ ์คํจํ๋ฅ ์ด๋ผ๋ฉด ์ถฉ๋ถํ ํฐ $n$์ ๋ํด์ ๋ฐ์๋ค์ผ๋ง ํฉ๋๋ค. ๋ฐ๋ผ์, ์ฐ๋ฆฌ๋ ์ด ์๊ณ ๋ฆฌ์ฆ์ $n^2 \log n$ ๋ฒ ์ ๋ ์คํํ๋ฉด ๋๋ค๊ณ ์๊ฐํ ์ ์์ต๋๋ค.
Time Complexity
๊ทธ๋ํ ์๊ณ ๋ฆฌ์ฆ์ด ๋๊ฐ ๊ทธ๋ ๋ฏ ํ๋ฒ๋น ๋๋ ์๊ฐ์ ๊ตฌํํ๊ธฐ ๋๋ฆ์ ๋๋ค. Adjacency matrix๊ฐ ์๋ค๋ฉด $O(n^2)$ ์ผ๋ก ๊ตฌํํ๋ฉด ๋๊ณ , Adj list๊ฐ ์๋ค๋ฉด $O(m)$ ๋น์ทํ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋๊ฒ ๊ทธ๋ด๋ฏํด ๋ณด์ ๋๋ค. ๊ฐ์ฅ ์ฝ๊ฒ ์ง๋ ๋ฐฉ๋ฒ์ Kruskal ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ ๋์ฒ๋ผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ด๊ณ , ์ด ๋ฐฉ๋ฒ์ ๊ตฌํ์ฒด๋ (์ธ์ ๊ฐ ์ ๊ฐ ๊ตฌํํ๋ฉด ๊ตฌํ์ฒด ๋งํฌ๋ฅผ ์ฌ๋ฆด ์์ ์ ๋๋ค) $O(m \log m)$ ์ ๋์ ๋๊ฒ ํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ์ง๋ฉด $m \approx n^2$ ์ผ ๋ ์ต๋ $O(n^2 \log n)$ ์ด ๋๋ฏ๋ก, ์ ์ฒด ๋ณต์ก๋๋ $O(n^4 \log^2 n)$ ์ด ๋๊ฒ ์ต๋๋ค.
๊ตฌํ์ ์ ํ๋ฉด ํ๋ฒ iteration์ $O(m)$ ์ ๋๊ฒ ํด์, $O(n^4 \log n)$ ์ ๊ตฌ๊ฒจ ๋ฃ์ ์ ์์ต๋๋ค๋ง, ์ด๊ฑด ๊ทธ๋ํ ๊ตฌํ์ ์ ํ๋์ง์ ๋ฌธ์ ์ด๋ฏ๋ก ์ฐ๋ฆฌ๋ ๋ค๋ฃจ์ง ์๊ฒ ์ต๋๋ค. ๋ค๋ง, ์๊ณ ๋ฆฌ์ฆ์ ๋ถ์์๋ ์ค์ํ๋ฏ๋ก, Karger ์๊ณ ๋ฆฌ์ฆ์ ์ ๊ตฌํํ์ ๋์ ๋ณต์ก๋๋ ํ๋ฒ Iteration์ $O(n^2)$, $n^2 \log n$ ๋ฒ ๋ฐ๋ณตํ ๊ฒ์ด๋ฏ๋ก $O(n^4 \log n)$ ์ด๋ค ๋ผ๊ณ ์ฐ๊ฒ ์ต๋๋ค.
Karger-Stein Algorithm
Karger-Stein์ ์ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ฑฐ์ ๋๊ฐ์ง๋ง, Clever idea๊ฐ ์ด์ง ์ถ๊ฐ๋์ด ํจ์ฌ ๋นจ๋ผ์ง๋๋ค. ๋ค์ ์์์ ํ๋ฅ ๊ณ์ฐ์ผ๋ก ๋์๊ฐ๊ฒ ์ต๋๋ค. \(p_{success} \geq \prod_{i = 0}^{n-3} \left(1 - \frac{2}{n - i}\right)\) ์ด์ , ์ฌ๊ธฐ์ ๊ด์ฐฐํ๊ณ ์ถ์ ์ฌ์ค์, ์ด๋ฐ๋ณด๋ค ํ๋ฐ์ ์ฑ๊ณตํ๋ฅ ์ด ๋น ๋ฅด๊ฒ ๋ฎ์์ง๋ค๋ ์ ์ ๋๋ค. ์ฆ ์ด๋ฐ์๋ ๋ง๊ตฌ ๋ฝ์๋ ๋์ถฉ ๋ง์๊ฒ์ด๋ผ๊ณ ๊ธฐ๋ํ ์ ์์ง๋ง, ํ๋ฐ์๋ ์ ์ ๋ถ์ํด์ง๊ธฐ ์์ํ๋ค๋ ๊ฒ์ด์ฃ . ๋ฐ๋ผ์, ์ด๋ฐ์๋ ๋์ถฉ ๋ฝ์์ ๋ฏฟ์์ ๊ฐ์ง๊ณ ๋๋ฆฌ๋ค๊ฐ, ํ๋ฐ์๋ ์ข ๋นก์ธ๊ฒ ๋ณด๋ฉด ์ข์ง ์์๊น์?
์ด์ ์ ์ฐฉ์ํ Karger-Stein์ ๋ ธ๋ ๊ฐ์๊ฐ ๋์ถฉ $V / \sqrt{2}$๊ฐ๊ฐ ๋ ๋๊น์ง๋ ๊ทธ๋ฅ ๋ ธ๋๋ฅผ Karger์ฒ๋ผ ์ค์ด๋ค๊ฐ, ๋ ธ๋๊ฐ ์ ๋งํผ ๋จ์ผ๋ฉด ๋๋ฐฐ๋ก ๋ง์ด ๊ฒํ ํฉ๋๋ค. ์ด ์์น๋ฅผ ์ฐ๋ ์ด์ ๋, ๊ณ์ฐํด ๋ณด๋ฉด $V / \sqrt{2}$๊ฐ์ ๋ ธ๋๊ฐ ๋จ์ ๋๊น์ง Contraction์ ํ๋ฉด ์ด๋์ min cut์ด ์ด์๋จ์ ํ๋ฅ ์ด $1/2$ ๊ฐ ์ด์ง ๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฆ, ์๋ Karger ์๊ณ ๋ฆฌ์ฆ์ $n$๊ฐ๋ถํฐ $2$๊ฐ๊น์ง ์ค์ฌ๋ณด๋๊ฑธ ํ ์คํ ์ด๋ผ๊ณ ์ ์ํ์ง๋ง, $n$ ๊ฐ๋ถํฐ $n / \sqrt{2}$ ๊ฐ๊น์ง๋ ๊ทธ๋ฅ ๋ง ์ค์ด๊ณ , $n / \sqrt{2}$ ๋ถํฐ $n / 2$ ๊ฐ๊ฐ ๋ ๋๊น์ง ์ค์ฌ๋ณด๋ ํ๋์ ๋๋ฒ ํด์ ๋์๊ฑธ ๊ณ ๋ฅด๊ณ โฆ ์ด๋ฐ ์์ ๋๋ค. ๋จ, ์ฌ๊ท์ ์ผ๋ก ์๋ํ๋ค๋ ์ ์ ์ฃผ์ํด์ผ ํฉ๋๋ค. Pseudocode๋ฅผ ์ฐ๋ฉด,
์ฌ๊ธฐ์ contract(G, t)
ํจ์๋ $G$์ edge๊ฐ $t$๊ฐ ๋ ๋๊น์ง ๋๋คํ๊ฒ contractionํด์ ์ค์ด๋ ํจ์์
๋๋ค. 6์ ๋ณ ์๋ฏธ๊ฐ ์๋ ์์๋ ์๋๊ณ , ๊ทธ๋ฅ base case๋ฅผ ์ค ๊ฒ์ผ๋ก ์๊ฐํ์๋ฉด ๋ฉ๋๋ค.
์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฑ๊ณต ํ๋ฅ ๊ณผ ์คํ ์๊ฐ์ ๋ํด ์ดํดํด ๋ณด๊ฒ ์ต๋๋ค. ๋จ, ์ํคํผ๋์๋ ์ฌ๋ฌ ์๋ฃ์๋ ceil ๋ฑ์ผ๋ก ์ข ์ ํํ๊ฒ ์จ์์ง๋ง ์ฐ๋ฆฌ๋ ์ด์ฐจํผ big-O notation์ ceil์ ํ๋๋ง๋๋ ์ํฅ๋ ์๊ณ โฆ ๋์ถฉ ๋ชจ๋ ์๋ฅผ ์ ์๋ผ๊ณ ์๊ฐํ๊ณ ๋๊ธฐ๊ฒ ์ต๋๋ค. $n / \sqrt{2}$ ๊ฐ์๊ฑธ ๋์ถฉ ์ฐ๊ธฐ๋ก ํฉ์๋ค. (์ฌ์ค ๋ถ์์๋ ์๋ฌด ๋ฌธ์ ์์ต๋๋ค!)
Time Complexity of iteration
ํธํ๊ฒ, Ceiling ๊ฐ์๊ฑฐ ๋ค ๋ ๋ฆฌ๊ณ ์ ํ์์ ์จ ๋ณด๊ฒ ์ต๋๋ค. ์ Pseudocode์ fastmincut(G)
๊ฐ ์ ์ $n$๊ฐ์ ๊ทธ๋ํ์ผ ๋, Contract ํ๋ฒ์ด ์ ์ ๊ฐ์๋งํผ์ ์๊ฐ์ ์๋ชจํจ์ ๊ณ ๋ คํ๋ฉด5 , $\sum_{i = n / \sqrt{2}}^{n} i$ ๋ $O(n^2)$ ์ด๋ฏ๋ก (๋์ถฉ $n^2 / 4$ ์ ๋ ๋๋ค๋๊ฑธ ๋ณด์ด๊ธฐ ๋ณ๋ก ์ด๋ ต์ง ์์ต๋๋ค),
\(T(n) = 2 T(n / \sqrt{2}) + O(n^2)\)
์ด๋ฐ ์ ํ์์ ์ป์ต๋๋ค. ์ฐ๋ฆฌ ๋ชจ๋ ์๊ณ ๋ฆฌ์ฆ ์๊ฐ์ ์ด๋ฏธ ๋ฐฐ์ด ๋ง์คํฐ ์ ๋ฆฌ๋ฅผ ์ฐ๋ฉด, $\log_{\sqrt{2}} 2 = 2$ ์ด๋ฏ๋ก, $T(n) = O(n^2 \log n)$ ์ ์ป์ต๋๋ค. ์ฆ, ํ๋ฒ ์ฐ์ฐ์๋ $n^2 \log n$ ์๊ฐ์ด ๊ฑธ๋ฆฐ๋ค๋ ๊ฒ์
๋๋ค. ์์์ Karger๊ณผ ๋น๊ตํ๋ฉด, ๋๋ฐฐ๋ก ์ฐ์ฐ์ ๋๋ฆฌ๋ ๊ณผ์ ์์ $\log n$ ๋งํผ์ ์๊ฐ์ ์ถ๊ฐ๋ก ์ง๋ถํ๋ค๋๊ฒ์ ์ ์ ์์ต๋๋ค.
Probability of Success
์ด์ ํ๋ฒ ์๋์ ์ฑ๊ณต ํ๋ฅ ์ ๋ํด ์์์ผ ํฉ๋๋ค. $P(n)$ ์ $n$๊ฐ ์ ์ ์ ๋ํด fastmincut
์ ๊ฒฐ๊ณผ๊ฐ ์ฌ๋ฐ๋ฅผ ํ๋ฅ ์ด๋ผ๊ณ ํ๋ฉด, ์ด ํจ์๊ฐ ์คํจํ๊ธฐ ์ํด์๋ ๋ ๊ฐ์ fastmincut(n / sqrt(2))
๊ฐ ๋ชจ๋ ์คํจํด์ผ ํฉ๋๋ค. ๋ฐ๋ผ์, ๋ค์ ์ ํ์์ ์ธ ์ ์์ต๋๋ค.
\(P(n) = 1 - \left(1 - \frac{1}{2} P\left(\frac{n}{\sqrt{2}}\right)\right)^2\)
- ๋จผ์ , ๋งจ ์์ชฝ์ ๋ถ๋ 1/2 ๋, $n$๊ฐ์์ $n / \sqrt{2}$ ๋ก ์ค์ผ ๋ ๋ง๊ฒ ์ค์์ ํ๋ฅ ์ด 1/2 ๋ฐ์ ๋์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฌ์ค ์ด ํ๋ฅ ์ด 1/2๋ณด๋ค ์ด์ง ํฌ๋ค๋ ๊ฒ์ ์ฆ๋ช ํ ์ ์๊ธฐ ๋๋ฌธ์ $P(n) \geq$ ๋ก ์์ํ๋ ๋ถ๋ฑ์์ผ๋ก ์ฐ๋ ๊ฒ์ด ๋ง์ต๋๋ค.
- ๊ทธ๋ค์์ ๋น์ฐํ, $P(n / \sqrt{2})$ ๋ก, ์ด ์๊ณ ๋ฆฌ์ฆ์ด ์ฌ๊ท์ ์ผ๋ก ๋ง์ ํ๋ฅ ์ ์จ ์ค๋๋ค.
- ์ฐ๋ฆฌ๋
1 - (๋ ๋ค ์คํจํ ํ๋ฅ )
์ ๊ตฌํ๋ฏ๋ก, ์ด๋ ๋ค์1 - (ํ๋๊ฐ ์คํจํ ํ๋ฅ )^2
๊ฐ ๋ฉ๋๋ค. ํ๋๊ฐ ์คํจํ ํ๋ฅ ์1 - (ํ๋๊ฐ ์ฑ๊ณตํ ํ๋ฅ )
์ด๋ฏ๋ก, ์์ ๊ฐ์ด ๊ตฌํ๋ ๊ฒ์ด ์ ๋นํฉ๋๋ค.
์ด์ , ์ด ์์ ํธ๋ ๋ฐฉ๋ฒ์ Induction์ ๋๋ค.
์ ์์ ์ ์ ๊ฐํ๋ฉด, $P(n) = P(n / \sqrt{2}) - \frac{1}{4} P(n / \sqrt{2})^2$ ์์ ์ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ๋ ์ด์ $P(n) \geq \frac{1}{\log{n}}$ ์ ์ฃผ์ฅํฉ๋๋ค. (๋จ, ๋ก๊ทธ๋ ๋ก๊ทธ2) By induction, ๋ค์์ ์ค๋ฅธ์ชฝ ๋ถ๋ฑํธ๋ฅผ ์ฆ๋ช ํ๋ฉด ์ฆ๋ช ์ด ๋๋ฉ๋๋ค. \(P(n) \geq \frac{1}{\log(n/\sqrt{2})} - \frac{1}{4\log^2(n/\sqrt{2})} \geq \frac{1}{\log n}\) ์ด ๋ถ๋ฑ์์ ์ง์ ํ๊ธฐ๋ ์กฐ๊ธ ๊ท์ฐฎ์ง๋ง, ๋ณ๋ก ์ด๋ ต์ง๋ ์์ต๋๋ค.
๋ฐ์ด 2์ธ ๋ก๊ทธ๋ฅผ ์ฐ๊ณ ์์ผ๋ฏ๋ก, ์ ์์ \(\frac{1}{\log n - 1/2} - \frac{1}{4(\log n - 1/2)}\) ์ด๊ณ , ์ด๋ฅผ ํตํด ๋ค์๊ณผ ๊ฐ์ ์์ ์ป์ต๋๋ค. \(\frac{4 \log n - 3}{4\log^2 n - 4\log n + 1} = \frac{1}{\log n} + \frac{1 - 1 / \log{n}}{4\log^2 n - 4\log n + 1} \geq \frac{1}{\log n}\)
์ด๋ ๊ฒ ์ป์ต๋๋ค. ๋ถ๋ฑ์์ ๋ ์ด์ฌํ ๋ง์ถ๋ฉด $2 / \log n$ ์ธ๊ฐ? ํ๋ ๋ฐ์ด๋๋ ์ก์ ์ ์์ํ ๋ฐ, ๋ณ๋ก ์ค์ํ ๋ ผ์๋ ์๋๋๋ค.
์ด์จ๋ , ์ฐ๋ฆฌ๋ ํ๋ฒ ์ฑ๊ณตํ๋ฅ ์ด $1 / \log n$ ์์ค์์ ์์์ต๋๋ค.
Total time complexity
๋ช๋ฒ ์ํํ ๊ฒ์ธ์ง๋ง ์ ํ๋ฉด ๋์ ๋๋ค. ์์ Karger ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋ ์ฆ๋ช ์์ ํ๋ ๊ฒ๊ณผ ๋๊ฐ์ ์ฐ์ฐ์ ํด ๋ณด๋ฉด, ์ฑ๊ณตํ๋ฅ ์ด $p(n)$ ์ธ ๋ฒ ๋ฅด๋์ด ์ํ์ ๋ฐ๋ณตํด์ $1/n$ ์ดํ์ ์คํจํ๋ฅ ์ ๊ฐ๊ฒ ํ๋ ค๋ฉด, $q(n)$ ๋ฒ ์คํํ๋ค๊ณ ํ ๋ \(\left(1 - p(n)\right)^{q(n)} \leq 1 / n\) ์ด ์์ ๋ชฉํ๋ก ํ๋ ๊ฒ์ธ๋ฐ, $(1 - x)^{1/x}$ ์ ๊ฐ์ด $1/e$ ์ดํ์์ ๋ค์ ์ด์ฉ ($p(n) \leq 1$์ด๋ฏ๋ก!), $q(n)$ ์ $\frac{\log n}{p(n)}$ ๋ฒ์ผ๋ก ์ก์์ฃผ๋ฉด ๋๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค. ๋ฐ๋ผ์, $q(n) = \log^2 n$ ์ผ๋ก ์ก์์ฃผ๋ฉด ๋ฉ๋๋ค.
์ฐ๋ฆฌ๋ ๊ฐ๋ณ ์๊ฐ์ด $O(n^2 \log n)$ ์ธ ์ํ์ $\log^2 n$๋ฒ ์ํํ๊ธฐ๋ก ๊ฒฐ์ ํ์ผ๋ฏ๋ก, ์ ์ฒด ์๊ฐ๋ณต์ก๋๋ $O(n^2 \log^3 n)$์ ๋๋ค. ๊ฐ๋จํ ์์ด๋์ด๋ก ์ถฉ๊ฒฉ์ ์ธ ํฅ์์ ์ด๋ฃจ์์์ ๋ณผ ์ ์์ต๋๋ค.
ํนํ $n^2$ ๋น์ทํ ์๊ฐ์ด ๋์๋ค๋๊ฒ ์ค์ํ๋ฐ, ๊ฐ์ ์ด $n^2$ ๊ฐ์ผ ๋ ์ ์ด๋ ์ด ๊ฐ์ ๋ค์ ๊ฒํ ๋ ํด๋ด์ผ ํ๋ฏ๋ก ์ด ๋ฌธ์ ๋ ์ด๋ก ์ $O(n^2)$ ๋ณด๋ค ๋น ๋ฅผ ๋ฐฉ๋ฒ์ด ์์ ์์ต๋๋ค. ์ด๋ ต์ง ์์ ์์ด๋์ด๋ฅผ ์ ์ด์ฉํด์ ์ด์ ๋๊น์ง ๋ณต์ก๋๋ฅผ ๋ด๋ ธ๋ค๋ ์ ์์, Randomized algorithm์ ํ์ ์ ๋ณด์ฌ์ฃผ๋ ์์๊ฐ ์๋๊ฐ ์ถ์ต๋๋ค.
Extension
์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฌ๋ฐ๋ extension์ $k$-cut์ ๋๋ค. $k$-cut์ด๋, ๋ ธ๋๋ฅผ $k$๊ฐ์ connected component๋ก ์ชผ๊ฐ๊ธฐ ์ํ min cut์ ๊ตฌํ๋ ๋ฌธ์ ์ ๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ง๊ธ๊น์ง ๊ณต๋ถํ ๋ฌธ์ ๋ $k = 2$ ์ธ ๊ฒฝ์ฐ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๊ฒ ์ต๋๋ค.
์ด ๋ฌธ์ ๊ฐ ์ฌ๋ฏธ์๋ ์ด์ ๋, ์กฐ๊ธ๋ง extensionํ์ ๋ฟ์ธ๋ฐ ๋ฏธ์น๋ฏ์ด ์ด๋ ต๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด ๋ฌธ์ ๋ $k$๋ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ๊ฒฝ์ฐ, NP-completeํจ์ด ์ ์๋ ค์ ธ ์์ต๋๋ค. ๊ฐ๋จํ ์๊ฐํด๋ณด๋ฉด, 2-cut์ ์ ์ด๋ s-t min cut ๋ฌธ์ ๋ก ํ์ํ๋ค์ ๊ทธ๊ฑธ ๋๋์ผ๋ก ํธ๋ ๋ฐฉ๋ฒ์ด ์์๋๋ฐ, ์ด ๋ฌธ์ ๋ ํ๋ก์ฐ ๋ชจ๋ธ๋ง์ด ์์ ์ ๋ฉ๋๋ค.
๋ค์ํ ์ํฉ์์ approximation์ ํ๋ค๋๊ฐ ํ๋ ์์ด๋์ด๋ค์ด ์ฐ๊ตฌ๋๊ณ ์์ง๋ง, ์ฝ์ง ์์ต๋๋ค. Gomory-Hu tree๋ฅผ ์ด๋ค๋๊ฐ ๋ฑ๋ฑโฆ
Karger-Stein algorithm์ $k$-cut์ ๋ํด ๊ต์ฅํ ์ ๋์ํฉ๋๋ค. ๋จ์ํ, ์ต์ข ์ ์ผ๋ก ๋จ๊ธฐ๋ vertex๋ฅผ 2๊ฐ๊ฐ ์๋ $k$๊ฐ๋ก ๋จ๊ธฐ๋ฉด ๋ฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ด ์ฑ๊ณตํ ํ๋ฅ ์ด ๊ทธ๋์ ์ผ๋ง์ธ์ง, ๋ณต์ก๋๊ฐ ์ผ๋ง์ธ์ง ๋ฑ์ ๊ต์ฅํ ์ด๋ ค์ด ๋ฌธ์ ์ ๋๋ค.
Interestingly, Karger-Stein ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ง ์ ๋ถ์ํ๋ฉด $k$-cut์ ๋ํด ์ด ์๊ณ ๋ฆฌ์ฆ์ด optimalํ๋ค๋ ๊ฒ์ ๋ณด์ผ ์ ์๋ค๊ณ ํฉ๋๋ค. ์ด ๊ธ์ ์ ๊ฐ ์ฐ๊ฒ ๋ ์ด์ ๋ ์๊ทธ์ ์ด ์ฃผ์ (Karger-Stein is optimal on $k$-cut) ๋ฅผ ๋ค๋ฃจ๋ ์ธ๋ฏธ๋๊ฐ ์์๊ธฐ ๋๋ฌธ์ ๊ณต๋ถํ๋ ๋ด์ฉ์ ๋ฆฌ๋ทฐํ ๊ฒธ ํด์ ์ฐ๊ฒ ๋ ๊ฒ์ธ๋ฐ์. ์ธ์ ๊ฐ ์ ๋ ผ๋ฌธ์ ์ ๋ถ ์ฝ์ ์ ์์์ง๋ ์ฌ์ค ์์ ์ด ์์ต๋๋ค. ๊ต์ฅํ ์ฌ๋ฐ์ด ๋ณด์ด์ง๋ง ์ฆ๋ช ์ด Martingale์ ์ฐ๋ ๋ฑ ์๋นํ ๋ฐฐ๊ฒฝ ์ง์์ ์๊ตฌํ๋ ๊ฒ ๊ฐ์ ๋ณด์์ต๋๋ค. ๊ด์ฌ์ด ์์ผ์ ๋ถ๋ค์ 2019๋ ๋ ผ๋ฌธ ๋งํฌ ๊ฐ ์์ต๋๋ค.
๋ณ๋ก ์ผ๋ก, ์ธ๋ฏธ๋์์๋ Karger ์๊ณ ๋ฆฌ์ฆ์ ๋๋คํ๊ฒ edge๋ค์ ์์๋๋ก ๊ณ ๋ฅด๋ ๋์ , ๊ฐ edge๋ค์ exponential clock์ด๋ผ๊ณ ํด์, essentially ๊ฐ edge์๊ฒ ํน์ ์๊ฐ์ ์ด๋ฒคํธ๊ฐ ์ผ์ด๋ ํ๋ฅ ์ ๋ถ์ฌํ๊ณ ๊ทธ ์ด๋ฒคํธ๊ฐ ํฐ์ง๋ฉด contractionํด ๋ฒ๋ฆฌ๋ ์์ผ๋ก ์๊ณ ๋ฆฌ์ฆ์ ์ด์ง ๋ค๋ฅด๊ฒ ๋ถ์ํ์ต๋๋ค. ์ด method๊ฐ ์๋ค๋ ๊ฒ์ ๋ค๋ฅธ ๊ณณ์์ ๋ค์์๋๋ฐ, ์ฒ์ ๋ค์์ ๋๋ ์ ๊ทธ๋ ๊ตฌ๋ ๋ผ๊ณ ๋ง ์๊ฐํ๋๋ฐ ์ด๋ฐ์์ผ๋ก ๊ทธ๋ํ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ๋ฉด ๋ฌธ์ ๋ฅผ ์ฐ์์ ์ธ ๊ณต๊ฐ์ผ๋ก ๋๊ณ ์์ ํด์์ ์ธ ๊ธฐ๋ฒ๋ค์ ์ด์ฉํ ๋ถ์์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์๋ก ๋ฐฐ์ ์ต๋๋ค.
-
Stephen Boyd, Lieven Vandenberghe, Convex Optimization, Chapter 4ย โฉ
-
Sparse graph์ ๋ํด์๋ Orlin ๋ฑ ๋ ๋น ๋ฅธ ์๊ณ ๋ฆฌ์ฆ๋ค์ด ์์ง๋ง, ์ฐ์ ์โฆย โฉ
-
Edge contraction์ ์ ์ํ ๋ edge๊ฐ ๊ฒน์น๋ฉด ํ๋๋ง ๋จ๊ธฐ๋ ์ ์๋ค์ด ์๋๋ฐ, ์ ํฌ๋ ๊ทธ๋ฌ์ง ์๊ฒ ์ต๋๋ค.ย โฉ
-
$\left( 1 - \frac{1}{x}\right)^x \leq e^{-x}$ ๊ฐ $1/e$ ๋ณด๋ค ์์์ ์ด์ฉํฉ๋๋ค.ย โฉ
-
์ Karger ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋ ๋ถ์์์ ๋งํ ๋ฐ์ ๊ฐ์ด Kruskal์ฒ๋ผ ๊ตฌํํ๋ฉด ์ฌ๊ธฐ์ ๋ก๊ทธ๊ฐ ํ๋ ๋ ๋ถ์ต๋๋ค๋ง, ์ฐ๋ฆฌ๋ ์ผ๋จ ๊ตฌํ์ ์ํด์ $O(n)$ ์ ํ contraction์ ์ฒ๋ฆฌํ ์ ์๋ค๊ณ ํ๊ฒ ์ต๋๋ค!ย โฉ