Balanced Cut
2020-1νκΈ°, λνμμ βμκ³ λ¦¬μ¦β μμ μ λ£κ³ 곡λΆν λ°λ₯Ό μ 리ν κΈμ λλ€. μ§μ μ μΈμ λ νμμ λλ€ :) μ 체 ν¬μ€νΈλ Algorithm ν¬μ€νΈμμ νμΈνμ€ μ μμ΅λλ€.
Definition. Cut
A set of edges whose removal leaves a graph disconnected.
ν¬μ€νΈλ₯Ό μμμλΆν° μ²μ²ν λ°λΌμλ€λ©΄, Network Flow μ±ν°μμ Network Flow λ¬Έμ κ° Minimum Cut Problemκ³Ό dual problem κ΄κ³μμ 곡λΆνμ κ²μ΄λ€.
Problem. Minimum Cut Problem
Given a graph and a budget $b$, find a cut with at most $b$ edges.
* search problemμ ννλ‘ κΈ°μ λμλ€.
μ΄ λ¬Έμ λ Network Flow μκ³ λ¦¬μ¦μΌλ‘ μ λ§ μ½κ² ν μ μλ€.
- κ° edgeμ 1μ capacityλ₯Ό ν λΉ
- source λ Έλ $s$λ₯Ό μ νλ€.
- λλ¨Έμ§ $n-1$κ° λ Έλμ λν΄ κ·Έλ€μ sink λ Έλ $t$λ‘ μ€μ ν΄ $n-1$λ² Network Flow μκ³ λ¦¬μ¦μ λλ¦°λ€.
- κ·Έ μ€ κ°μ₯ μ μ λΉμ©μ cutμ minimum cutμΌλ‘ μΌλλ€.
κ·Έλ¬λ μ΄λ κ² μ¬μ΄ ννλΌλ©΄ NPμ λ±μ₯ν μ μλ€. Balanced Cut λ¬Έμ λ λΆν νλ λ κ·Έλνμ κ· νμ΄ λ§μμΌ νλ€.
Problem. Balanced Cut Problem
Given a graph with $n$ vertices and a budget $b$, find a cut $(A, B)$ such that $\left| A \right|, \left| B \right| \ge n/3$ and at most $b$ edges in the cut.
* search problemμ ννλ‘ κΈ°μ λμλ€.
μ¦, λΉμ© $b$λ₯Ό λ§μΆλ©΄μ λΆν λ κ·Έλν $A$, $B$μ ν¬κΈ°κ° λΉμ·ν΄μΌ νλ κ²μ΄λ€! Balanced Cut Problemμ Minimum Cut Problemκ³Ό λ¬λ¦¬ poly-time algorithmμ΄ μ‘΄μ¬νμ§ μλλ€.