“Karger 随机收缩通过随机保留某条最小割,给出单侧 Monte Carlo 解法;其收缩轨迹、存活概率与重复放大在算法专页展开。Stoer–Wagner 算法则以确定性 phase 生成…”
形式陈述 ​
输入、输出与 phase ​
Stoer–Wagner 求解无向非负实权全局最小割。当前状态允许超级顶点与平行边;平行边按容量求和,自环不影响任何割值。算法返回非平凡原顶点集
使其在全部无序划分中最小。算法是确定性的:它反复执行一个 phase,记住该阶段产生的割,再合并最后两个加入的顶点;所有阶段割中权重最小者就是答案。
Maximum adjacency search ​
一个 phase 从任意超级顶点开始,维护已加入集合
每一步按贪心规则选择 key 最大的顶点加入
阶段定理与合并归纳 ​
阶段定理断言:本 phase 的阶段割是当前图中的最小
阶段定理只保证当前
合并不变量 ​
超级顶点代表一组原顶点。合并
因为原图中从两个集合跨向
直觉
Maximum adjacency search 每次把“目前与已选集合连接最紧”的顶点拉进来。最后留下的
收缩后的平行边不是输入模型含糊,而是多个原顶点集合之间全部连接的汇总记录。容量求和保持每个原割的权重;这与 Karger 按 multiplicity 随机抽边的理由相似,但 Stoer–Wagner 的选择和证明完全由确定性 key 不变量驱动。
例子与边界
一轮完整轨迹 ​
取顶点
从
合并
复杂度与模型边界 ​
邻接矩阵配线性扫描可在每个 phase 用
算法只针对无向、非负权图。有向全局割没有同一个阶段定理;负权会破坏累计 key 的连接容量解释。零权和不连通图允许答案为
推论与应用
Karger 随机收缩随机选择当前边,并用固定最小割的存活概率证明成功;Stoer–Wagner 的收缩对由 maximum adjacency phase 确定,安全性来自阶段
Stoer–Wagner 直接输出一个全局最小割。若任务需要所有点对最小割、层次化割表示或动态更新,还要转向 Gomory–Hu 树、割树或动态图算法;单次 phase 的合并序列本身不自动提供这些更强输出。
参考资料
- Mechthild Stoer and Frank Wagner, A Simple Min-Cut Algorithm, Journal of the ACM, 1997.
- Hiroshi Nagamochi and Toshihide Ibaraki, Computing Edge-Connectivity in Multigraphs and Capacitated Graphs, SIAM Journal on Discrete Mathematics, 1992.
- Alexander Schrijver, Combinatorial Optimization: Polyhedra and Efficiency, Springer, 2003.