网络最大流问题PPT格式课件下载.ppt
- 文档编号:13937566
- 上传时间:2022-10-15
- 格式:PPT
- 页数:66
- 大小:6.58MB
网络最大流问题PPT格式课件下载.ppt
《网络最大流问题PPT格式课件下载.ppt》由会员分享,可在线阅读,更多相关《网络最大流问题PPT格式课件下载.ppt(66页珍藏版)》请在冰豆网上搜索。
,问题:
这个运输网络中,从v1到v6的最大输送量是多少?
1、网络与流设一个赋权有向图D=(V,A),在V中指定一个发点vs和一个收点vt,其它的点叫做中间点。
对于D中的每一个弧(vi,vj)A,都有一个非负数cij,叫做弧的容量。
我们把这样的图D叫做一个容量网络,简称网络,记做D=(V,A,C)。
弧的容量:
是对网络上的每条弧(vi,vj)都给出一个最大的通过能力,记为c(vi,vj)或简写为cij。
二、基本概念,对有多个发点和多个收点的网络,可以另外虚设一个总发点和一个总收点,并将其分别与各发点、收点连起来(见图),就可以转换为只含一个发点和一个收点的网络。
所以一般只研究具有一个发点和一个收点的网络,流:
加在网络各条弧上的一组负载量f(vi,vj):
加在弧(vi,vj)上的负载量简记为fij,为非负数网络上的流:
是指定义在弧集合上的一个函数f=f(vi,vj),其中f(vi,vj)称为弧(vi,vj)上的流量,流也可看作一个双下标变量,弧的流量f(vi,vj):
表示弧(vi,vj)上每单位时间内的实际通过能力弧的容量c(vi,vj):
表示弧(vi,vj)上每单位时间内的最大通过能力零流:
网络上所有的fij=0,图1表示的就是这个网络上的一个流(运输方案),每一个弧上的流量fij就是运输量。
例如:
f12=1,f13=2,f24=3等等。
对于实际的网络系统上的流,有几个显著的特点:
(1)发点的净流出量和收点的净流入量必相等。
(2)每一个中间点的流入量与流出量的代数和等于零。
(3)每一个弧上的流量不能超过它的最大通过能力(即容量),称满足下列条件的流为可行流:
(1)容量限制条件:
对于每一个弧(vi,vj)A有0f(vi,vj)c(vi,vj)(简记为0fijcij),2、可行流与最大流,
(2)平衡条件:
对于发点vs,有,对于收点vt,有,式子中V(f)称为可行流f的流量,即发点的净输出量(或收点的净输入量)。
对于中间点:
流入量=流出量。
即对每个i(is,t)有f(vi,vj)-f(vj,vi)=0(is,t)(简记为fij-fji=0(is,t),即总流量=发点的净输出量=收点的净输入量容量网络的可行流总是存在的,如当所有弧的流均取零,即对所有的i,j,有f(vi,vj)=0就是一个可行流,可行流中fijcij的弧叫做饱和弧,fijcij的弧叫做非饱和弧。
fij0的弧为非零流弧,fij0的弧叫做零流弧。
图中为零流弧,都是非饱和弧。
就是要求一个流fij,使其流量v(f)达到最大,并且满足0fijcij,网络的最大流:
求网络的最大流,即是指满足容量限制条件和平衡条件的条件下,使v(f)值达到最大.,容量网络D,若为网络中从vs到vt的一条链,给定向为从vs到vt,上的弧分为两类:
凡与方向相同的称为前向弧,凡与方向相反的称为后向弧,其集合分别用+和-表示。
链的方向:
若是联结vs和vt的一条链,定义链的方向是从vs到vt。
3、增广链,增广链:
f是一个可行流,如果满足:
即中的每一条弧都是非饱和弧,即中的每一条弧都是非零流弧,则称为从vs到vt的关于f的一条增广链。
=(v1,v2,v3,v4,v5,v6),+=(v1,v2),(v2,v3),(v3,v4),(v5,v6),-=(v5,v4),是一个增广链,显然图中增广链不止一条,4、截集与截量,容量网络D=(V,A,C),vs为始点,vt为终点。
如果把V分成两个非空集合使,则所有始点属于V1,而终点属于的弧的集合称为是分离vs和vt的截集(或割),1=(v4,v5,v6),1=(v4,v5,v6),截集为黄色弧集:
截集中所有弧的容量之和,称为这个截集的容量,记为,,也称截量,则有:
截量为24,设,,则截集为,截量为20,截集与可行流无关,而只与网络本身有关最小截量是个定值,对应的截量也不相同,其中截量最小的截集称为最小截集。
设f为网络D=(V,A,C)的任一可行流,流量为v(f),,为任一截集,则有,结论1:
即任何一个可行流的流量都不会超过任一截集的容量,若对割和割用表示割中所有方向的弧的流量的总和,表示割中所有方向的弧的流量的总和,则,割的流量有,满足条件,那么f*一定是D上的最大流,而,如果网络上的一个可行流f*,和网络中的一个截集,一定是D的最小截集。
结论2:
当f有增广链存在时,找出,证明:
定理1:
可行流f是D的最大流的充分必要条件是不存在从vs到vt的关于f的一条增广链。
先证f是D的最大流时,则D中一定没有增广链,用反证法,非增广链上的弧,显然f仍是一个可行流,(因满足容量限制条件和平衡条件)但和原来的可行流f比较,这时网络中从st的流量增大了一个值(0).因此:
当f有增广链时,f不是最大流,即f是最大流时,f就一定没有增广链,下面证明当f没有增广链时,f一定是最大流,证明:
若网络中没有增广链,则对它构造一个点的集合V*,定义
(1)sV*
(2)若iV*和f(i,j)0,则jV*(3)若iV*和f(i,j)=c(i,j),则jV*若iV*和f(j,i)=0,则jV*显然,否则将存在st的增广链,与假设矛盾.,由此为该网络的一个割,该割的容量为,由上面定义,通过这个割的流有:
由结论2,f一定是最大流。
在网络中st的最大流量等于它的最小割集的容量,即,最大流最小截量定理:
由上面证明可得,最小截集的容量,最大流的流量,网络中可行流的流量,网络,割所含弧的流量和,割所含弧的容量和,弧的流量,f(vi,vj),弧的容量,c(vi,vj),弧(vi,vj),满足条件,那么f*一定是D上的最大流,而,如果网络上的一个可行流f*,和网络中的一个截集,一定是D的最小截集。
结论1:
即任何一个可行流的流量都不会超过任一截集的容量,总结:
对最大流问题有下列结论和定理:
定理1可行流f*fij*是最大流,当且仅当D中不存在关于f*的增广链。
定理2(最大流最小截定理)任一网络中,从st的最大流的流量等于它的最小截集的截量。
定理1为我们提供了一个寻求网络系统最大流的方法。
亦即,如果网络D中有一个可行流f,只要判断网络是否存在关于可行流f的增广链。
如果没有增广链,那么f一定是最大流。
如有增广链,那么可以按照定理1中必要性,不断改进和增大可行流f的流量,最终可以得到网络中的一个最大流。
这种算法由Ford和Fulkerson于1956年提出,故又称FordFulkerson标号法;
实质:
判断是否存在增广链,并设法把增广链找出来,并予以调整,最终使图中无增广链.,二寻求最大流的标号法,此算法从网络中的一个可行流f出发(如果D中没有f,可以令f是零流),运用标号法,经过标号过程和调整过程,最终可以得到网络中的一个最大流。
下面用给顶点标号的方法来定义定理1中的V1*.在标号过程中,有标号的顶点是V1*中的点,没有标号的点不是V1*中的点。
如果vt有了标号,表示存在一条关于f的增广链。
如果标号过程无法进行下去,并且vt未被标号,则表示不存在关于f的增广链。
此时,就得到了网络中的一个最大流和最小截集。
在标号过程中,网络中的点分为两种:
已标号的点(分为已检查和未检查)和未标号的点。
每个标号点的标号包含两部分:
第一个标号表示这个标号是从哪一点得到的,以便找出增广链。
第二个标号是从上一个标号点到这个标号点的流量的最大允许调整值,是为了用来确定增广链上的调整量。
标号过程开始,先给vs标号(0,+)。
这时,vs是标号未检查的点,其它都是未标号点。
1标号过程,例1求下图的网络最大流,弧旁的权数表示(cij,fij)。
解:
1.标号过程。
1)首先给vs标号(0,+)2)看vs:
在弧(vs,v2)上,fs2=cs3=3,不具备标号条件。
在弧(vs,v1)上,fs1=1cs1=5,故给v1标号(vs,l(v1),其中l(v1)=minl(vs),(cs1fs1)=min+,51=4.v1标号为:
(vs,4),此时vs为已检查的标号点。
(vs,4),(0,+),。
(3)看v1:
在弧(v1,v3)上,f13=c13=2,不具备标号条件.在弧(v2,v1)上,f21=10,故给v2标号(-v1,l(v2)),其中l(v2)=minl(v1),f21=min4,1=1.v2标号(-v1,1),此时v1为已检查的标号点,(vs,4),(0,+),(v1,1),(0,+),(vs,4),(v1,1),(v2,1),(-v2,1),(v3,1),(4)看v2:
在弧(v2,v4)上,f24=30,故给v3标号(-v2,l(v3),其中l(l(v3)=minl(v2),f32=min1,1=1。
(5)在v3,v4中任意选一个,比如v3,在弧(v3,vt)上,f3t=1c3t=2,故给vt标号(v3,l(vt),其中l(vt)=minl(v3),(c3t-f3t)=min1,1=1.因为vt被标上号,根据标号法,转入调整过程。
(1)如果在前向弧(vi,vj)上,有fij0,那么给vj标号(-vi,l(vj)).其中l(vj)=minl(vi),fji.这时,vj成为标号未检查点。
于是vi成为标号已检查的点。
重复以上步骤,如果所有的标号都已经检查过,而标号过程无法进行下去,则标号法结束。
这时的可行流就是最大流。
但是,如果vt被标上号,表示得到一条增广链,转入下一步调整过程。
总结标号过程,2.调整过程利用反向追踪找增广链,调整增广链的流量,去掉旧的标号,对新的可行流重新进行标号。
具体做法如下:
(1)按照vt和其它已检查的标号点的第一个标号,反向追踪,找出增广链,确定调整量。
(2),得新的可行流。
(3)再去掉所有的标号,对新的可行流f=fij,重新进行标号过程,直到找到网络D的最大流为止。
非增广链上的弧,(5,2),(1,0),(1,0),(2,2),(cij,fij),增广链的调整量为1,则有:
调整后的可行流f*如图,再对这个可行流从新进行标号过程,寻找增广链。
一直到标号过程无法进行下去,不存在从vS到vt的增广链,算法结束。
(0,+),(vs,3),最大流的流量v(f*)=fs1+fs2=5.最小截集它的容量也为5.,得到的截集为最小截集(V1,),其中V1是标号的集合,是未标号的集合。
此时,网络中的可行流f*即是最大流,,(0,),(s,2),(-v2,2),(v1,2),(-v3,1),(v4,1),例:
用标号法求下图中st的最大流量,并找出该网络的最小割.,(v2)=min(s),(cs2-fs2)=2(v1)=min(v2),f12=min2,4=2(v3)=min(v1),(c13-f13)=min2,5=2(v4)=min(v3),f43=min2,1=1(t)=min(v4),(c4t-f4t)=min1,2=1,V*(f)=,s,v2,v4,v3,v1,t,7(6),8(8),9(5),5(3),2(0),9(9),6(0),10(9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 最大 问题