1 / 24

8.2  网络最大流

8.2  网络最大流. 运输网络问题是很大一类网络问题,通过介绍有些运输网络问题,可以使我们建立起一些处理网络问题的基本概念和方法。 这里涉及的运输网络问题只是考虑简单情况。. 一、运输网络 1. 运输网络的定义 定义 8.7 :一个带权有向图 G=(V,E) 若满足如下条件: (1) G 是连通无自环的; (2) 每条弧 ( i,j) 的权 cij 为非负整数,称为弧的容量, cij 全体所构成的集合记为 C ; (3) 存在 2 个不同的顶点 s 和 t 。

thad
Download Presentation

8.2  网络最大流

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 8.2 网络最大流 • 运输网络问题是很大一类网络问题,通过介绍有些运输网络问题,可以使我们建立起一些处理网络问题的基本概念和方法。 • 这里涉及的运输网络问题只是考虑简单情况。

  2. 一、运输网络 • 1.运输网络的定义 • 定义 8.7:一个带权有向图G=(V,E)若满足如下条件: • (1)G是连通无自环的; • (2)每条弧(i,j)的权cij为非负整数,称为弧的容量,cij全体所构成的集合记为C; • (3)存在2个不同的顶点s和t。 • 则称该有向图为运输网络, 简称网络,记为N(V,E,C)。称s为发点, t为收点, 除s和t以外其它顶点称为中间点。C称为容量函数。

  3. 2.运输网络N中的流 • 定义 8.8:在网络N(V,E,C)的弧集E上定义了一个非负整值函数f={fij}, 称f为网络N上的流, fij称为弧(i,j)上的流量。若无弧(i,j), 则fij定义为0。设流f满足下列条件: • (1)容量限制条件:对每一条弧(i,j), 有fij≤cij。 • (2)平衡条件:除s和t外的每个中间点k, 有 • 即流出和等于流入和。 • 对于s和t有 • 则称f为网络N的一个可行流, Vf为流f的值, 或称f的流量。 • 若N中无可行流f', 使Vf'>Vf, 则称f为最大流。

  4. 定义 8.9:若fij=cij, 则称弧(i,j)是饱和的; 若fij<cij, 则称弧(i,j)是未饱和的。若fij=0, 则称弧(i,j)是f-0的; 若fij>0, 则称弧(i,j)是f-正的. • 现在的关键是如何求最大流的值。

  5. 二、最大流最小割定理 • 引理:对于给定的网络N=(V,E,C), 若可行流f和割(P,V-P), 成立Vf=C(P,V-P),则Vfmax=Vf,Cmin(P,V-P)=C(P,V-P)。 • 因此求最大流的一个想法就是构造流和割,使得流量和割容量相等。

  6. 福特,富克逊(Frod,Falkerson)于1956 年给出的最大流最小割定理 • 基本思想: • 1)对任意网络构造初始流。 • 零流,或其他可行流。 • 2)在初始流基础上寻找可增加流的路,这样的路称为增广路。并在寻找增广路的同时,计算在该路上可增加多少流。 • 3)若找到了从s到t的可增加流的路,则修改流,得到新的可行流。然后转回2)

  7. (1)怎样找增广路 • (2)如果找不到这样的增广路,是否此时的流就是最大流?

  8. 1.寻找增广路的方法 • 设u为s到t的路(不考虑弧的方向) • (1)先考察该路上与路方向一致的弧(称为向前弧)。 • 若路上所有弧均为向前弧,且每条弧的流量<相应弧的容量,则可增加流的路。 • 对于向前弧(i,j),fij是否<cij。 • 可增加流的通路,采用标号法。

  9. 1)对源点s标号(-) • 2)设点i已经标号,j点没有标,对于向前弧(i,j),若fij<cij,则点j标号i+;若fij=cij,则点j不标号。 • 3)若收点t最后被标号,如t点被标号c+,则找到了从s到t的增广路。 • 还需要知道这条路可增加多少流量,以便修改流。

  10. 1)对源点s标号(-),令Δs=+∞。 • 2)设点i已经标号,增量为Δi,j点没有标,对于向前弧(i,j),若fij<cij,则点j标号i+, • Δj=min{Δi,cij- fij} • 若fij=cij,则点j不标号。 • 3)若收点t最后被标号,如t点被标号c+,Δt=min{Δc,cct- fct},这就找到了从s到t的增广路,可增加的流量是Δt。 • 修改流时,为满足平衡条件,对该路上所有弧流量+Δt。

  11. 如果在这路上的向前弧(s,b),(c,t)都已经饱和,则显然该路不可能是增广路。如果在这路上的向前弧(s,b),(c,t)都已经饱和,则显然该路不可能是增广路。 如果(s,b),(c,t)没有饱和,且在前面的的标号过程中,b点已经标号,s+,Δb. 是否有增广路,取决于向后弧(c,b)的流fcb, • 若按此方法找不到增广路,是否就结束? • 否 • 还可采用下面的方法 • (2)如果u中部分弧的方向与路的方向相反(称这样的弧为向后弧)。 • 如下图所示。 如果b点已经标号,(s+,Δb),且fcb>0,则c点标号(b-,Δc), 这里Δc=min{Δb, fcb}。 s到t的路s,b,c,t,这里弧(c,b)与路的方向相反。 按前面的方法无法解决,对于这类情况需要新的方法

  12. 0)对任意网络构造初始流。 • 1)对源点s标号(-,+∞)。 • 2)设点i已经标号,增量为Δi,j点没有标, • i)对于向前弧(i,j),若fij<cij,则点j标号(i+,Δj), • 这里Δj= min{Δi,cij- fij} • 若fij=cij,则点j不标号。 • ii)对于向后弧(i,j),若fji>0,则j点标号(i-,Δj), • 这里Δj=min{Δi, fji}。 • 若fij=0,则点j不标号。 • (3)重复第2步,直到 • i)若收点t最后被标号(x+,Δt),这就找到了从s到t的增广路,可增加的流量是Δt。 • 修改流时,对该路上所有向前弧流量+Δt,向后弧上的流量减少Δt,并以此结果作为新的流,转向1)。 • ii)若不再有新的顶点被标号,且t仍没有被标号,则说明网络中的流为最大流

  13. 定理:用上述标号法在算法停止时得到的一定是最大流。定理:用上述标号法在算法停止时得到的一定是最大流。 • 证明:算法停止时,已经标号的点构成集合P,没有标号的构成V-P,则(P,V-P)构成割。然后证明网络中的流的值就等于该割的容量。 • 关于算法有2点要说明: • 1)在某点有多种标号选择时,可任意选择1种进行标号。 • 2)初始流不一定是零流,只要是可行流即可。

  14. 8.3图与二分图的匹配 定义:若G中每一个顶点是关于M 饱和的, 则称M为G的完美匹配。 一个图不一定存在完美匹配 • 一、匹配的概念 • 定义 8.11:在图 G=(V,E)中, M是边集E的子集,并且M中没有两条边相邻, 称M是G的一个匹配。 定义:若M中的一边关联于顶点v, 则称v为关于M饱和的。 M中的边的两端点称为在M下配对。

  15. 图可能有许多不同的最大匹配。 完美匹配必是最大匹配, 反之不一定。 如果G有完美匹配,则它的任一最大匹配是否一定为完美匹配? • 完美匹配不一定唯一. • 定理:无自环的图G,若它有完美匹配,则|V(G)|为偶数. • 定义:若G中不存在匹配M',使|M'|>|M|, 则称M为G的最大匹配。

  16. 二、匹配的基本定理 • 首先引进2个定义。 • 定义 8.12:设M是G的一个匹配, (1)若在G中有一条路,它的边在E-M和M中交错地出现, 则称该路为关于M的交错路。 (2)若关于M的交错路的起点和终点不是关于M饱和的, 则称该路为关于M的增广路。

  17. 定理:关于M的增广路中属于E-M的边数比属于M的边数多 1。 • 定理 8.8:在图G中,M是最大匹配当且仅当G中不包含关于 M的增广路。 • 证明:用反证法。假设G中存在关于 M的增广路p, • 构造M’=Mp • 证明(1)M’是匹配 (2)|M’|=|M|+1 • 假设M不是最大匹配, 则存在匹配 M',使|M'|>|M|。设由 MM’导出的图G(MM’)记为H, 它的每个分支或者是交错路, 或者是交错回路。由此证明H中存在关于M的增广路

  18. 作业:P188 • 12,14,15,16

More Related