网络流重制版:最大流最小割定理的讲解,以及增广路求最大流的证明

@

前言

初一的证明简直就是SB,错漏百出。。。

术语介绍

前向弧:\(E\)中的边。
可行流:上文介绍的是最大流,可行流即为满足\(f,c\)约束的一个流,最大流是没有增广路径的可行流,对于一个流\(f\)\(|f|\)就是其流量。

割是啥子东西?

割是针对只有前向弧的有向图的,需要注意的。

一个割就是把点集\(V\)分成\(S,T\)集,我们记为\((S,T)\),其中\(st∈S,ed∈T\)

而一个割的容量是\(\sum\limits_{u∈S,v∈T,(u,v)∈E}c(u,v)\),流量是\(\sum\limits_{u∈S,v∈T,(u,v)∈E}f(u,v)-\sum\limits_{v∈S,u∈T,(u,v)∈E}f(u,v)\)
定理1: 一个割的流量绝对≤割的容量。
定理2:对于任意一个可行流\(f\),割的流量等于\(|f|\)
证明:
这个时候,割等于\(S\)\(T\)的所有出边和\(T\)\(S\)的所有入边。
推导:
对于一个点\(u∈V-\left \{ st,ed \right \}\),满足下面这条
\(\sum\limits_{u∈V}f(u,v)-\sum\limits_{u∈V}f(v,u)=0\)
我们把\(|f|\)表示出来:
\(|f|=\sum\limits_{v∈V}f(st,v)+\sum\limits_{u∈S-\left \{ st \right \}}\sum\limits_{v∈V}f(u,v)-\sum\limits_{u∈V}\sum\limits_{v∈S-\left \{ st \right \}}f(u,v)=\sum\limits_{u∈S}\sum\limits_{v∈V}f(u,v)-\sum\limits_{u∈V}\sum\limits_{v∈S}f(u,v)\)

\(V=S∪T,S∩T=0\)

所以

\(|f|=\sum\limits_{u∈S}\sum\limits_{v∈T}f(u,v)+\sum\limits_{u∈S}\sum\limits_{v∈S}f(u,v)-\sum\limits_{u∈T}\sum\limits_{v∈S}f(u,v)-\sum\limits_{u∈S}\sum\limits_{v∈S}f(u,v)=\sum\limits_{u∈S}\sum\limits_{v∈T}f(u,v)-\sum\limits_{u∈T}\sum\limits_{v∈S}f(u,v)\)

证毕。

定理三:\(|f|=f(S,T)≤c(S,T)\)

因此,最大流≤最小割的容量。

最大流最小割定理证明

终于到这个地方了。。。

\(f\)为流网络\(G=(V,E)\)中的一个流,那么下面的条件是等价的:

  1. \(f\)\(G\)的一个最大流。
  2. 残余网络\(G_{f}\)不包括任何增广路径。
  3. \(|f|=c(S,T)\)\(c(S,T)\)是某个切割,很明显这个切割是最小割。

\((1)->(2)\),存在增广路怎么可能是最大流。
\((2)->(3)\),假设\(G_{f}\)中不存在增广路径,那么我们定义\(u\)能走到\(v\),仅当\((u,v)∈E,f(u,v)<c(u,v)\)或者\((v,u)∈E,f(v,u)>0\),很明显,\(st\)\(ed\)的每条路径都不是增广路,所以路径上一定有\((u,v)∈E,f(u,v)=c(u,v)\)或者\((v,u)∈E,f(v,u)=0\),这个时候定义\(st\)能走到的点集为\(S\)\(ed\)能走到的点集为\(T\)即可。

此时\(u∈T,v∈S,f(u,v)=0\)(不是的话,一定可以到\(v\)),所以\(|f|=\sum\limits_{u∈S}\sum\limits_{v∈V}f(u,v)=\sum\limits_{u∈S}\sum\limits_{v∈V}c(u,v)=c(S,T)\)

满足条件。

\((3)->(1)\),因为\(|f|≤c(S,T)\),所以当\(|f|=c(S,T)\)时,\(|f|\)最大,所以\(f\)为最大流。

\((2)->(3)->(1)\)证毕。

所以,最小割就是最大流,不存在增广路就是最大流。

参考资料

EK时间复杂度的分析

一篇写得不错得最大流博客,术语很齐全

论如何卡掉Dinic(我没看懂)
咕咕讨论,Zadeh Construction是个什么东西

二分图匹配Dinic重拳出击

各种算法的时间复杂度以及HLPP的讲解

Dinic之神

最大流的正确性

各种算法的时间复杂度

算法导论爷Orz

posted @ 2020-11-23 20:00  敌敌畏58  阅读(582)  评论(0编辑  收藏  举报