百度文库里面有个地址,讲的比较详细。
http://wenku.baidu.com/link?url=gPXhYCduLNgZaOkKIltNDAgPGwuMTpRX7a0utvVFuqDAP9o1jvxRNdDuGb4Td1fH8t3gvR9lipxoVp_rUk7FNowxwWDav6PAMktg03RIZiG
新浪博客看到的,感谢原作者http://blog.sina.com.cn/s/blog_60a0e97e0101bfj9.html
1. 在优化理论中,最大流最小割定理指:在一个网络流中,能够从源点到达汇点的最大流量,等于,如果从网络中移除就能够导致网络流中断的边的集合的最小容量和。
2. 定义:
假设N=(V,E)是一个有向图,其中结点s和t分别是N的源点和汇点。
边(u,v)的容量c(u,v)定义为:能够通过该边的最大流量。
通过每条边的流f(u,v)的需要满足如下约束:
(1)f(u,v) <= c(u,v),即容量约束。
(2)对于任意v不属于{s,t},有sum{ f(u,v) } = sum{ f(v,u) },即流入某个中间结点的流量等于从这个结点流出的流量。
网络流定义f定义为|f| = sum{ f(s,v) },代表从源点流入汇点的流量。
最大流问题,是求得|f|的最大值。
s-t割定义为对V的一个二划分,其中s和t属于不同的两个集合S和T。割集就是{ (u,v)| u属于S, v属于T }。显然,如果割集中的所有边被移除,那么|f| = 0。
割的容量定义为c(S, T) = sum{ c(u,v), 其中u属于S,v属于T }。
最小割问题,是求得这样一个s-t割C(S, T),使得S-T割的容量最小。
3. 最大流最小割定理
一个s-t流的最大值,等于其s-t割的最小容量。
4. 应用: 项目权衡问题
4.1 问题
假设有n个项目和m种设备。项目pi能够产生效益r_pi,设备qj需要耗费c_qj。每个项目需要多种设备,每种设备可以被多种项目使用。问题是,决定实施哪几个项目,以及购买哪几种设备,使得效益最高。
4.2 对应到最小割问题
构建一个这样的网络:假设源点和汇点s和t,s与每个项目pi之间有一个边,其容量为r_pi;每个设备与t之间有一条边,其容量为c_qj。如果pi需要设备qj,那么pi与qi之间有一条边,其容量为无穷大。
求出该网络流的最小割,即是项目选择的最大效益。