网络最大流问题.docx
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
给定一个有向图D=(V,A),在V中指定一点称为发点(记为 ),该点只有出发去的弧,指定另一点称为收点(记为,),该点只有指向它的弧,其余的点叫做中间点。对于A中的
每一条弧W f,对应一个数*亠20(简记片),称之为弧的容量。通常我们把这样的D叫做网络,记为D=(V,A,C)。
(2)网络流:在弧集A上定义一个非负函数y_ (Z(Pl JV P)是通过弧
的实际流量,简记匚,称扌是网络上的流函数,简称网络流或流,称计Q为网络流的流量。
■ ⅛~ "
»丄 / √ 第七章
F⅛wearch ι
§ 4网络最大流问题
网络最大流冋题是网络的另一个基本冋题。
许多系统包含了流量问题。例如交通系统有车流量,金融系统有现金流,控制系统有信
息流等。许多流问题主要是确定这类系统网络所能承受的最大流量以及如何达到这个最大流量。
4.1基本概念与定理
1. 1.网络与流
定义14 (1)网络:
例1如图7-20是连结某产品产地二和销地一的交通图。弧∣∕Λ√<.;表示从二到的运输线,弧旁的数字表示这条运输线的最大通过能力IL ,括号内的数字表示该弧上的实际
流一]。现要求制定一个运输方案,使从-r运到甘t的产品数量最多。
可行流与最大流
4⑴
5(3)
IO (I )
输网络的实际问题中,我们可以看出,对于流有两个基本要求
:
一是每条弧上的流量必须是非负的且不能超过该弧的最大通过能力(即该弧的容量)
二是起点发出的流的总和(称为流量),必须等于终点接收的流的总和,且各中间点流 入的流量之和必须等于从该点流出的流量之和, 即流入的流量之和与流出的流量之和的差为 零,也就是说各中间点只起转运作用,它既不产出新的物资,也不得截留过境的物资。
因此有下面所谓的可行流的定义。
定义14对于给定的网络 D= ( V,A,C )和给定的流 ."H ■..., 若一.满足下列
条件:
(1) 容量限制条件:对每一条弧
工宀L ,有
(7.9)
(2)平衡条件: 对于中间点:
流出量=流入量,即对于每一个
i (i ≠ s,t ),有
(7.10)
对于出发带点二,有
∑Λ ■
J l )
对于收点■■-,有
⑺12)
则称」
_';丨为一个可行流,’.丄 称为这个可行流的 流量。
注意,我们这里所说的出发点 I 是指只有从二发出去的弧,而没有指向「的弧;收
点二是指只有弧指向V.,而没有从它的发出去的弧。
在运
(7.11)
可行流总是存在的。例如令所有弧上的流J1. ,就得到一个可行流,(称为零流), 其流量.I : 一。
如图7-20中,每条弧上括号内的数字给出的就是一个可行流/ = UJ ,它显然满足定义中的条件(1)和(2)。其流量v(7)= 5+3 = 8 O
所谓网络最大流问题就是求一个流」;_•: .,使得总流量达到最大,并且满足定
义15中的条件(1)和(2),即
⑺13)
网络最大流问题是一个特殊的线性规划问题。我们将会看到利用图的特点,解决这个问题的方法较直线性规划的一般方法要简便和直观的多。
例2写出图7-20所表示的网络最大流问题的线性规划模型。
解设< I,则其线性规划模型为
max1 l.
Z3-Λ⅛-/M-Λ⅞ 二0 仏+fy -儿-九-几=0
Λ⅛ + Λ6-∕⅛ = 0
Λ+‰ ÷∕⅛ = V(Z)
j ≠ ff,t f(7 14)
牙人~~ 丁JE二* ⅛
在网络D=(V,A,C)中,若给定一个可行流J ;...,我们把网络中使的弧称为饱和弧,使θ≤Λ<⅛ 的弧称为非饱和弧。把九•二O的弧称为零流弧,把O <√⅛∙≤c if.的称为非零流弧。
如图7-20中的弧都是非饱和弧,而弧A八J为零流弧。
若"是网络中联结发点和收点匕的一条链,我定义链的方向是从I r到一则链上
S
的弧被分为两:
一类是:弧的方向与链的方向一致,我们称此类和为前向弧,所有前向弧的集合记
为.J。
另一类是:弧的方向与链的方向一致,我们称此类弧为后向弧,所有后向弧的集合
记为,。
如图7-20中,设
/■'. "√,.. J ''j∖ - \ - : Il L 1.〕是一条从儿到V 的链,
则
J 'j> 3 1:■ :' :1 . , ■- ^r-∙v√-'
定义15设匚A-是网络D=(V ,A,C)上的一个可行流,门是从二到匕的一条链,若门满足下列条件:
(1)在弧\ - J - . J (V i,V j) ∈μ+上,即.」J中的每一条弧都是非饱和弧;
⑵在弧■丄上,即」中的每一条弧都是非零流弧。
则称尸是关于J的一条增广链。
如前面所说的链就是一条增广链。因为其中μ+上的弧均非饱和,如(V s,V2) ∈μ
+ ,f s2=5
4.截集与截量
定义16给定网络D=(V ,A,C),若点集V被分割成两个非空集合V1和V2,使得
V=V 1+V2,V1 ∩ V2=φ(空集),且V s ∈V1,v t∈V2,则把始点在V1,终点在V 2的弧的集合称为分离V S和V t的一个截集,记为(V 1,V2)o
如图9.26 中,设V1= {V s,v2,v5}, V 2= {v3,v4,V6,vJ 则截集为
"?- V 1 '. —I ,