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์˜ ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

picture 2

์˜ˆ๋ฅผ ๋“ค์–ด ์ด ๊ทธ๋ฆผ์—์„œ ๋นจ๊ฐ„์ƒ‰ 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)$๋Š” ์—†์•  ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋Ÿฐ ์‹์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆผ์„ ๋ณด๋ฉด ๊ฑฐ์˜ ๋ฐ”๋กœ ์ดํ•ด๊ฐ€ ๊ฐˆ๋“ฏ ํ•ฉ๋‹ˆ๋‹ค. picture 1

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๋ฅผ ์“ฐ๋ฉด,

picture 1

์—ฌ๊ธฐ์„œ 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๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋“ค์—ˆ์—ˆ๋Š”๋ฐ, ์ฒ˜์Œ ๋“ค์—ˆ์„ ๋•Œ๋Š” ์•„ ๊ทธ๋ ‡๊ตฌ๋‚˜ ๋ผ๊ณ ๋งŒ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ์ด๋Ÿฐ์‹์œผ๋กœ ๊ทธ๋ž˜ํ”„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์ ์šฉํ•˜๋ฉด ๋ฌธ์ œ๋ฅผ ์—ฐ์†์ ์ธ ๊ณต๊ฐ„์œผ๋กœ ๋Œ๊ณ ์™€์„œ ํ•ด์„์ ์ธ ๊ธฐ๋ฒ•๋“ค์„ ์ด์šฉํ•œ ๋ถ„์„์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์ƒˆ๋กœ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.


  1. Stephen Boyd, Lieven Vandenberghe, Convex Optimization, Chapter 4ย โ†ฉ

  2. Sparse graph์— ๋Œ€ํ•ด์„œ๋Š” Orlin ๋“ฑ ๋” ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜๋“ค์ด ์žˆ์ง€๋งŒ, ์šฐ์„ ์€โ€ฆย โ†ฉ

  3. Edge contraction์„ ์ •์˜ํ• ๋•Œ edge๊ฐ€ ๊ฒน์น˜๋ฉด ํ•˜๋‚˜๋งŒ ๋‚จ๊ธฐ๋Š” ์ €์ž๋“ค์ด ์žˆ๋Š”๋ฐ, ์ €ํฌ๋Š” ๊ทธ๋Ÿฌ์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค.ย โ†ฉ

  4. $\left( 1 - \frac{1}{x}\right)^x \leq e^{-x}$ ๊ฐ€ $1/e$ ๋ณด๋‹ค ์ž‘์Œ์„ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.ย โ†ฉ

  5. ์œ„ Karger ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„ ๋ถ„์„์—์„œ ๋งํ•œ ๋ฐ”์™€ ๊ฐ™์ด Kruskal์ฒ˜๋Ÿผ ๊ตฌํ˜„ํ•˜๋ฉด ์—ฌ๊ธฐ์— ๋กœ๊ทธ๊ฐ€ ํ•˜๋‚˜ ๋” ๋ถ™์Šต๋‹ˆ๋‹ค๋งŒ, ์šฐ๋ฆฌ๋Š” ์ผ๋‹จ ๊ตฌํ˜„์„ ์ž˜ํ•ด์„œ $O(n)$ ์— ํ•œ contraction์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!ย โ†ฉ