网络最大流问题ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(5) 最大流的判别条件
可行f是 流最大流的充D中 要不 条存 件在 是 f的 关
可增广链。
-
7.4.2 确定网络最大流的标号法
最大流最小截的标号法步骤
• 第一步:标号过程,找一条增广链
– 1、给源点 s 标号[s+,q(s)=],表示从 s 点有无限流出潜力
– 2、找出与已标号节点 i 相邻的所有未标号节点 j,若 – (1) (i, j)是前向弧且饱和,则节点 j 不标号;
v( f ) i s
• 平衡条件:
fij
f
ji
0
i s,t
v jA(vi )
v jB(vi )
v( f ) i t
• 满足上述条件的网络流称为可行流,总存在最大可行流
(1弧 ) 按流量未 饱 分饱 和 为和 弧fij 弧 : ficjij: cij 零流弧f-ij: 0
如:在前面例举的网络流问题中,若已给定一个可行流 (如括号中后一个数字所示),请指出相应的弧的类型。
第四节 网络最大流问题
问题 已知网络D=(V,A,C),其中V为顶点
集,A为弧集,C={cij}为容量集, cij 为弧(vi,vj ) 上的容量。现D上要通过一个流f={fij},其中fij 为弧 (vi,vj )上的流量。问应如何安排流量fij可使D上 通过的总流量v最大?
v2
4
例如:
3
vs
1
1
1、对增广链中的前向弧,令 f=f+q(t),q(t) 为节点 t 的
标记值
2、对增广链中的后向弧,令 f=fq(t)
3、非增广链上的所有支路流量保持不变 第三步:抹除图上所有标号,回到第一步
-
例1 用标号法求下面网络的最大流。
[1,v ]
[1,v ]
1
2
(3,3) v2• (4,3) v•4 (5,3)
(14,14)
11
(s+,) s (15,12)
(16,15)
(s+,3)(3,1)
(13,12) 6
-
3、重复步骤 2,可能出现两种情况: (1) 节点 t 尚未标号,但无法继续标记,说明网路中已不存在 增广链,当前流 v(f) 就是最大流;所有获标号的节点在 V 中, 未获标号节点在 V 中,V 与 V 间的弧即为最小截集;算法结 束 (2)节点 t 获得标号,找到一条增广链,由节点 t 标号回溯可 找出该增广链;到第二步 第二步:增广过程
– (2) (i, j)是前向弧且未饱和,则节点 j 标号为[i+,q(j)], 表示从节点 i 正向流出,可增广 q(j)=min[q(i),cijfij] ;
– (3) (j, i)是后向弧,若 fji=0,则节点 j 不标号;
– (4) (j, i)是后向弧,若 fji>0,则节点 j 标号为[i,q(j)], 表示从节点j 流向i,可增广 q(j)=min[q(i),fji] ;
v2 (4,3) v4
(3,3)
(5,3)
vs
(1,1)(1,1)(3,0) vt
(5,1)
(2,1)
(2v)1 可增(值2,链2()增广v3链)
D中vs由 至 vt的, 链 记 : : 中 中的 的反 正 , 向 向 若 中 中 弧 弧 弧 弧 集 集 , 皆 皆则 非 未 为 D称 中 零 饱关于 f的
截量:截集上所有弧的容量和,记C(V, 。V)
1
1
例4 对于下图,若V1={vs,v1},请指出相应的截集与截量。
v2 (4,3) v4
(3,3)
(5,3)
vs
(1,1) (1,1)
(3,0)
vt
(5,1)
(2,1)
解:
v1 (2,2) v3
( V ,V ) ( v,v)v, ,v) , (
11
图,最大流量v=5,同时得最小截
( V ,V ) ( v,v)v , ,v) 。 (
11
s2
13
-
例2 最大流最小截集的标号法举例
(s+,)
(14,14) 11 ss (15,9)
(16,15)
(3,1)
(s+,6)
22 (12,10)
(13,12) 66
5
(6,3)
(5,5)
(6,6)
(9,9)
[,v s ]vs•
(1,1)(1,10)(3,0)
• vt [1,v ] 3
[,v ] s
(5,1) 2
v1•
0 (2,2)
v• 3
(2,1) 2
[4,v ] s
[3,v ] s
[1,v ] 2
解:第一次标号及所得可增值链如图,调量q =1,调后进
行第二次标号如图。第二次标号未进行到底,得最大流如
(19,11)
(4,4) -
44
(5,2)
(4+,2)
最大流最小截集的标号法举例
(9,9)
(14,14) 11
(15,10) s
33Fra Baidu bibliotek
(6,5)
(16,15)
(3,1)
(13,12) 66
2 (12,10) 55
(6,3)
(5,5)
44
(4,4)
(7,5)
(22,22)
t
(4+,2)
(19,11)
最小截集
s2
13
C ( V ,V ) 3 2 5 11
(4) 流量与截量的关系
v(f) C(V1,V1)
v2 (4,3) v4
(3,3)
(5,3)
vs
(1,1)(1,1)(3,0)
vt
(5,1)
(2,1)
v1 (2,2) v3
最大流最小割定理: M( a f) x M v( iV n ,V ) C 11
v4 5
3
vt
5
2
v1
-
2 v3
7.4.1 网络的最大流的概念 • 网络流一般在有向图上讨论
B(vi)
vi
A(vi)
• 定义网络上弧的容量为其最大通过能力,记为 cij ,弧 上的实际流量记为 fij
• 图中规定一个发点s,一个收点t
• 节点没有容量限制,流在节点不会存储
• 容量限制条件:0 fij cij
33
(2,6)
(4,3)
44
(3+,1)
(7,5)
(22,22)
tt
(19,10)
(4+,1)
(9,9)
(14,14) 11
(s+,) s (15,10)
3
(6,5)
(16,15)
(3,1)
(s+,5)
2 (12,10)
(13,12) 66 55
(22,22)
tt
(7,5)
(5,5() 2+,2)
(6,3)
一条可增值v链。 (4,3) v
(3,3) 2
4 (5,3)
vs
(1,1)(1,1)(3,0)
vt
(5,1)
v
-
(2,2) v
(2,1)
(3) 截集与截量
截集(割集 V分) 为: 二将 非空 V1与V 互 1,补 使 vs 集 V1,vt V1。
称弧 (v集 i,vj) viV1,vjV1为D的一个截集V1, ,V1)记 。为