欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    运筹学8图与网络分析.ppt

    • 资源ID:4948066       资源大小:1.83MB        全文页数:167页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    运筹学8图与网络分析.ppt

    第八章 图与网络分析,主要内容:8.1 图的基本概念与基本定理8.2 树和最小支撑树8.3 最短路问题8.4最小费用流问题8.5最大流问题8.6网络计划8.7中国邮递员问题8.7指派问题,8.1 图的基本概念与基本定理,图论是应用非常广泛的运筹学分支,它已经广泛地应用于物理学控制论,信息论,工程技术,交通运输,经济管理,电子计算机等各项领域。对于科学研究,市场和社会生活中的许多问题,可以同图论的理论和方法来加以解决。例如,各种通信线路的架设,输油管道的铺设,铁路或者公路交通网络的合理布局等问题,都可以应用图论的方法,简便、快捷地加以解决。,随着科学技术的进步,特别是电子计算机技术的发展,图论的理论获得了更进一步的发展,应用更加广泛。如果将复杂的工程系统和管理问题用图的理论加以描述,可以解决许多工程项目和管理决策的最优问题。因此,图论越来越受到工程技术人员和经营管理人员的重视。,关于图的第一篇论文是瑞士数学家欧拉(E.Euler)在1736年发表的解决“哥尼,斯堡”七桥难题的论文;,德国的哥尼斯堡城有一条普雷格尔河,河中有两个岛屿,河的两岸和岛屿之间有七座桥相互连接,(见图8.1 a)当地的居民热衷于这样一个问题,一个漫步者如何能够走过这七座桥,并且每座桥只能走过一次,最终回到原出发地。尽管试验者很多,但是都没有成功。为了寻找答案,1736年欧拉将这个问题抽象成图8.1b所示图形的一笔画问题。,哥尼斯堡七桥问题,图 8.1 a,A,B,C,D,哥尼斯堡七桥问题可简化为以下图形其中的四个顶点都是奇顶点,A,B,C,D,图8.1 b,即能否从某一点开始不重复地一笔画出这个图形,最终回到原点。欧拉在他的论文中证明了这是不可能的,因为这个图形中每一个顶点都与奇数条边相连接,不可能将它一笔画出,这就是古典图论中的第一个著名问题。,在实际的生产和生活中,人们为了反映事物之间的关系,常常在纸上用点和线来画出各式各样的示意图。,例8.1 图8.2是我国北京、上海、重庆等十四个城市之间的铁路交通图,这里用点表示城市,用点与点之间的线表示城市之间的铁路线。诸如此类还有城市中的市政管道图,民用航空线图等等。,图8.2,例8.2 有六支球队进行足球比赛,我们分别用点v1,v6表示这六支球队,它们之间的比赛情况,也可以用图反映出来,已知v1队战胜v2 队,v2 队战胜v3 队,v3 队战胜v5队,如此等等。这个胜负情况,可以用图8.3所示的有向图反映出来,图8.3,从以上的几个例子可以看出,我们用点和点之间的线所构成的图,反映实际生产和生活中的某些特定对象之间的特定关系。一般来说,通常用点表示研究对象,用点与点之间的线表示研究对象之间的特定关系。由于在一般情况下,图中的相对位置如何,点与点之间线的长短曲直,对于反映研究对象之间的关系,显的并不重要,因此,图论中的图与几何图,工程图等本质上是不同的。,综上所述,图论中的图是由点和点与点之间的线所组成的。通常,我们把点与点之间不带箭头的线叫做边,带箭头的线叫做弧。如果一个图是由点和边所构成的,那么,称为无向图,记作G=(V,E),其中V表示图G 的点集合,E表示图G的边集合。连接点vi,vjV 的边记作vi,vj,或者vj,vi。如果一个图是由点和弧所构成的,那么称为它为有向图,记作D=(V,A),其中V表示有向图D的点集合,A表示有向图D的弧集合。一条方向从vi 指向vj 的弧,记作(vi,vj)。,例如.图8.4是一个无向图G=(V,E),其中V=v1,v2,v3,v4 E=v1,v2,v2,v1,v2,v3,v3,v4,v1,v4,v2,v4,v3,v3,图8.4,图8.5 是一个有向图D=(V,A)其中V=v1,v2,v3,v4,v5,v6,v7 A=(v1,v2),(v1,v3),(v3,v2)(v3,v4),(v2,v4),(v4,v5),(v4,v6),(v5,v3),(v5,v4),(v5,v6),(v6,v7),图8.5,下面介绍一些常用的名词:一个图G或有向图D中的点数,记作P(G)或P(D),简记作P,边数或者弧数,记作q(G)或者q(D),简记作q。如果边vi,vjE,那么称vi,vj 是边的端点,或者vi,vj是相邻的。如果一个图G中,一条边的两个端点是相同的,那么称为这条边是环,如图8.4中的边v3,v3是环。如果两个端点之间有两条以上的边,那么称为它们为多重边,如图8.4中的边v1,v2,v2,v1。一个无环,无多重边的图称为简单图,一个无环,有多重边的图称为多重图。,以点v为端点的边的个数称为点v的度,记作d(v),如图84中d(v1)=3,d(v2)=4,d(v3)=4,d(v4)=3。度为零的点称为弧立点,度为1的点称为悬挂点。悬挂点的边称为悬挂边。度为奇数的点称为奇点,度为偶数的点称为偶点。端点的度 d(v):点 v 作为端点的边的个数 奇点:d(v)=奇数;,偶点:d(v)=偶数;悬挂点:d(v)=1;悬挂边:与悬挂点连接的边;孤立点:d(v)=0;空图:E=,无边图,V=v1,v2,v3,v4,v5,v6,v7,d(v1)=3;d(v2)=5;,d(v3)=4;d(v4)=4;,d(v5)=1;d(v6)=3;,d(v7)=0,其中 v5 为悬挂点,v7 为孤立点。,定理8.1 所有顶点度数之和等于所有边数的2倍。证明:因为在计算各个点的度时,每条边被它的两个端点个用了一次。,定理8.2 在任一图中,奇点的个数必为偶数。证明:设 V1,V2 分别是图G中奇点和偶点的 集合,由定理8.1,有,因为 是偶数,也是偶数,因此,也必是偶数,从而V1 中的点数是偶数。,图的连通性:链:由两两相邻的点及其相关联的边构成的点边序列。如:v0,e1,v1,e2,v2,e3,v3,vn-1,en,vn;v0,vn分别为链的起点和终点。记作(v0,v1,v2,,v3,vn-1,vn)简单链:链中所含的边均不相同;初等链:链中所含的点均不相同,也称通路;,圈:若 v0 vn 则称该链为开链,否则称为闭链或回路或圈;,简单圈:如果在一个圈中所含的边均不相同初等圈:除起点和终点外链中所含的点 均 不相同的圈;连通图:图中任意两点之间均 至少有一条通路,否则 称为不连通图。,初等链:(v1,v2,v3,v6,v7,v5),初等圈:(v1,v2,v3,v5,v4,v1),简单圈:(v4,v1,v2,v3,v5,v7,v6,v3,v4),简单链:(v1,v2,v3,v4,v5,v3),以后除特别声明,均指初等链和初等圈。,连通图,子图定义:如果 V2 V1,E2 E1 称 G2 是 G1 的子图;真子图:如果 V2 V1,E2 E1 称 G2 是 G1 的真子图;部分图:如果 V2=V1,E2 E1 称 G2 是 G1 的部分图或支撑子图;导出子图:如果V2 V1,E2=vi,vjvi,vjV2,称 G2 是 G1 中由V2 导出的导出子图。,设 G1=V1,E1,G2=V2,E2,G1,G2真子图,G3子图部分图,G4导出子图,G5生成树,G6G5余树,有向图:关联边有方向弧:有向图的边 a=(u,v),起点u,终点v;路:若有从 u 到 v 不考虑方向的链,且 各方向一致,则称之为从u到v 的路;初等路:各顶点都不相同的路;初等回路:u=v 的初等路;连通图:若不考虑方向 是无向连通图;强连通图:任两点有路;,8.2 树和最小支撑树,一、树及其性质 在各种各样的图中,有一类图是十分简单又非常具有应用价值的图,这就是树。例8.3 已知有六个城市,它们之间 要架设电话线,要求任意两个城市均可以互相通话,并且电话线的总长度最短。,如果用六个点v1v6代表这六个城市,在任意两个城市之间架设电话线,即在相应的两个点之间连一条边。这样,六个城市的一个电话网就作成一个图。表示任意两个城市之间均可以通话,这个图必须是连通图。并且,这个图必须是无圈的。否则,从圈上任意去掉一条边,剩下的图仍然是六个城市的一个电话网。图8.8是一个不含圈的连通图,代表了一个电话线网。,图8.8,v6,v3,v4,v2,v5,v1,定义8.1 一个无圈的连通图叫做树。下面介绍树的一些重要性质:定理8.3 设图G=(V,E)是一个树 P(G)2,那么图G中至少有两个悬挂点。定理8.4 图G=(V,E)是一个树的充要条件是G 不含圈,并且有且仅有P-1条边。定理8.5 图G=(V,E)是一个树的充要条件是G是连通图,并且有且仅有 p1 条边。定理8.6 图G是一个树的充分必要条件是任意两个顶点之间有且仅有一条链。,从以上定理,不难得出以下结论:(1)从一个树中任意去掉一条边,那么剩下的图不是连通图,亦即,在点集合相同的图中,树是含边数最少的连通图。(2)在树中不相邻的两个点之间加上一条边,那么恰好得到一个圈。,二.支撑树,定义8.2 设图K=(V,EI)是图G=(V,E)的,一支撑子图,如果图K=(V,EI)是一个树,那么称K 是G 的一个支撑树。例如,图8.10b 是图8.10a 的一个支撑树,图8.10,显然,如果图K=(V,EI)是图G=(V,E)的一个支撑树,那么K 的边数是p(G)-1,G中不属于支撑树K 的边数是q(G)-p(G)+1。定理8.7 一个图G有支撑树的充要条件是G 是连通图。证明:充分性:设图G是连通的,若G不含圈,则按照定义,G是一个树,从而G是自身的一个支撑树。若G含圈,则任取G的,一个圈,从该圈中任意去掉一条边,得到图G的一支撑子图G1。若G1不含圈,则G1是G的一个支撑树。若G1仍然含圈,则任取G1的一个圈,再从圈中任意去掉一条边,得到图G的一支撑子图G2。依此类推,可以得到图G的一个支撑子图GK,且不含圈,从而GK是一个支撑树。,定理8.7充分性的证明,提供了一个寻找连通图支撑树的方法叫做“破圈法”。就是从图中任取一个圈,去掉一条边。再对剩下的图重复以上步骤,直到不含圈时为止,这样就得到一个支撑树。例8.4 用破圈法求出图8-11的一个支撑树。,图8-11,取一个圈(v1,v2,v3,v1),在一个圈中去掉边e3。在剩下的图中,再取一个圈(v1,v2,v4,v3,v1),去掉边e4。再从圈(v3,v4 v5,v3)中去掉边e6。再从圈(v1,v2,v5,v4,v3,v1)中去掉边e7,这样,剩下的图不含圈,于是得到一个 支撑树,如图8.12所示。,图8.12,三.最小支撑树问题 定义8.3 如果图G=(V,E),对于G中的每一条边vi,vj,相应地有一个数Wij,那么称这样的图G为赋权图,Wij称为边vi,vj的权。这里所指的权,是具有广义的数量值。根据实际研究问题的不同,可以具有不同的含义。例如长度,费用、流量等等。赋权图在图论及实际应用方面有着重要的地位,被广泛应用于现代科学管理和工程技术等领域,最小支撑树问题就是赋权图的最优化问题之一。,设G=(V,E)是一个连通图,G的每一条vi,vj对应一个非负的权Wij。定义8.4 如果图T=(V,EI)是图G的一个支撑树,那么称EI上所有边的权的和为支撑树T的权,记作S(T)。如果图G的支撑树T*的权S(T*),在G 的所有支撑树T中的权最小,即S(T*)=minTS(T),那么称T*是G的最小支撑树。,如前所述,在已知的几个城市之间联结电话线网,要求总长度最短和总建设费用最少,一个问题的 解决可以归结为最小支撑树问题。再如,城市间交通线的建造等,都可以归结为这一类问题。,下面介绍寻求最小支撑树的方法-破圈法。在给定的连通图中任取一个圈,去掉权最大的一条边,如果有两条以上权最大的边,则任意,去掉一条。在剩下的图中,重复以上步骤,直到得到一个不含圈的连通图为止,这个图便是最小支撑树。例8.5 某六个城市之间的道路网如图8.13a 所示,要求沿着已知长度的道路联结六个城市的电话线网,使得电话线的总长度最短。,图8.13a,图8.13b,解:这个问题的解决就是要求所示赋权图8.13a中的最小支撑树。用破圈法求解。任取一个圈,例如(v1,v2,v3,v1),去掉这个圈中权最大的边v1,v3。再取一个圈(v3,v5,v2,v3),去掉边v2,v5。再取一个圈(v3,v5,v4,v2,v3),去掉边v3,v5。再取一个圈(v5,v6,v4,v5),这个圈中,有两条权最大的边v5,v6和v4,v6。任意去掉其中的一条,例如v5,v6。这时得到一个,不含圈的图,如图8.13b 所示,即是最小支撑树。关于破圈法正确性的证明略去。,例 用破圈法求出下图中的最小支撑树,破圈法和生长法两个方法:,(1)在网络图中寻找一个圈。若不存在圈,则已经得到最短树或网络不存在最短树;,(2)去掉该圈中权数最大的边;,反复重复 两步,直到最短树。,1.破圈法,从网络图中任意节点开始寻找与该节点关联的权数最小的边,得到另一节点后,再从这个新节点开始寻找与该节点关联的权数最小的另一边。注意寻找过程中,节点不得重复,即在找最小权数边时不考虑已选过的边,反复进行,直到得到最短树或证明网络不存在最短树。,2.成长法,例 用成长法求出下图中的最小支撑树(最短 树),一.引言 最短路径问题是图论中十分重要的最优化问题之一,它作为一个经常被用到的基本工具,可以解决生产实际中的许多问题,比如城市中的管道铺设,线路安排,工厂布局,设备更新等等。也可以用于解决其它的最优化问题。,8.3最短路问题,例86 如图8.14所示的单行线交通网,每个弧旁边的数字表示这条单行线的长度。现在有一个人要从v1出发,经过这个交通网到达v8,要寻求是总路程最短的线路。,图8.14,1,从v1到v8 的路线是很多的。比如从v1出发,经过v2,v5到达v8 或者从v1出发,经过v4,v6,v7 到达v8 等等。但不同的路线,经过的总长度是不同的。例如,按照第一个线路,总长度是6+1+6=13单位,按照第二个路线,总长度是1+10+2+4=17单位。从这个例子中,可以给出一般意义下的最短路问题。设一个赋权有向图D=(V,A),,对于每一个弧a=(vi,vj),相应地有一个权wij。Vs,vt是D中的两个顶点,P 是D中从vs到vt 的任意一条路,定义路的权是P 中所有弧的权的和,记作S(p)。最短路问题就是要在所有从vs到vt的路P0中,寻找一个权最小的路P0,亦即S(P0)=minS(p)。P0 叫做从vs到vs的最短路。P0的权S(P0)叫做从vs到vt 的距离,记作d(vs,vt)。由于D是有向图,很明显d(vs,vt)与d(vt,vs)一般不相等。,二.Dijkstra算法 下面介绍在一个赋权有向图中寻求最短路的方法Dijkstra算法,它是在1959年提出来的。目前公认,在所有的权wij 0时,这个算法是寻求最短路问题最好的算法。并且,这个算法实际上也给出了寻求从一个始定点vs到任意一个点vj的最短路。,Dijkstra算法的基本思想是从vs出发,逐步向外寻找最短路。在运算过程中,与每个点对应,记录一个数,叫做一个点的标号。它或者表示从vs到该点的最短路权(叫做P 标号),或者表示从vs 到该点最短路权的上界(叫做T 标号)。算法的每一步是去修改T标号,把某一个具有T 标号的点改变为具有P 标号的点,使图D中具有P 标号的顶点多一个。这样,至多经过P-1 步,就可求出从vs 到各点vj 的最短路。,以例1为例说明这个基本思想。在例1中,S=1。因为Wij 0,d(v1,v1)=0。这时,v1是具有P标号的点。现在看从v1出发的三条弧(v1,v2),(v1,v3)和(v1,v4)。如果一个人从v1出发沿(v1,v2)到达v2,这时的路程是d(v1,v1)+w12=6单位。如果从v1出发,沿(v1,v3)到达v3,则是d(v1,v1)+w13=3单位。同理,沿(v1,v4)到达v4,是d(v1,v1)+w14=1单位。因此,他从v1出发到达v4的最短路必是(v1,v4),d(v1,v4)=1。,这是因为从v1到达v4的任一条路P,假如不是(v1,v4),则必先沿(v1,v2)到达v2,或者沿(v1,v3)到达v3,而这时的路程已是6或者3单位。由于所有的权wij 0,因此,不论他如何再从v2 或者v3 到达v4,所经过的总路程都不会比1少,于是就有d(v1,v4)=1。这样就使v4 变成具有P标号的点。现在看从v1 和v4指向其余点的弧。如上所述,从v1出发,分别沿(v1,v2),(v1,v3)到达v2,v3,经过,的路程是6或者3单位。从v4出发沿(v4,v6)到达v6,经过的路程是d(v1,v4)+w46=1+10=11单位。而min d(v1,v1)+w12,d(v1,v1)+w13,d(v1,v4)+w46=d(v1,v1)+w13=3单位。根据同样的理由,可以断定,从v1 到达v3的最短路是(v1,v3),d(v1,v3)=3。这样,又使点v3变为具有P标号的点,不断重复以上过程,就可以求出从vs到达任一点vj的最短路。,(0,0),(6,1),(3,1),(1,1),(0,0),(3,1),(1,1),(6,1),(11,4),(0,0),(3,1),(1,1),(5,3),(11,4),(0,0),(3,1),(1,1),(5,3),(11,4),(6,2),(0,0),(3,1),(1,1),(5,3),(10,5),(6,2),(9,5),(12,5),(0,0),(3,1),(1,1),(5,2),(10,5),(6,2),(9,5),(12,5),(0,0),(3,1),(1,1),(5,2),(10,5),(6,2),(9,5),(12,5),从v1 到 v8 的最短路的长度为:12从v1 到 v8 的最短路线为:,v8,v5,v2,v1,步骤:,1、给起点一个永久标号(0,0)。永久标号用下划线表示;标号中的第一个数表示从起点到该点的距离;第二个数表示该点的前面没有点了。,2、修改非永久标号点 vi 的临时标号为(a,b),其中 a 为以 vi 为终点的弧,如果其起点为永久标号,则求其永久标号的第一个数与弧长的和,如果这样的和有多个,则取最小值。b为前一个点的下标。,3、在临时标号中取第一个标号的最小值,将该标号该为永久标号,再返回到 2步,三、含有负权的最短路的求法,例:求从v1 到v8 的最短路,0,-1,-2,3,0,-5,-2,-7,1,-1,5,0,-5,-2,-7,-3,-1,-5,6,0,-5,-2,-7,-3,-1,-5,6,从v1 到 v8 的最短路的长度为:6从v1 到 v8 的最短路线为:,v8,v6,v3,v1,8.4 最小费用流问题,一 引言 在许多实际的网络系统中都存在着流量和最大流问题。例如铁路运输系统中的车辆流,城市给排水系统的水流问题等等。而网络系统流最大流问题是图与网络流理论中十分重要的最优化问题,它对于解决生产实际问题起着十分重要的作用。,图8.19是联结某个起始地vs和目的地vt的交通运输网,每一条弧vi 旁边的权cij表示这段运输线的最大通过能力,货物经过交通岗从vs运送到vt.要求指定一个运输方案,使得从vs到vt的货运量最大,这个问题就是寻求网络系统的最大流问题。,问题描述连通网络 G(V,A)有 m 个节点,n条弧,弧 eij 上的流量上界为 cij,求从起始节点 vs 到终点 vt 的最大流量。,图8.19,二 基本概念 定义8.5 设一个赋权有向图D=(V,A),在V 中指定一个发点vs和一个收点vt,其它的点叫做中间点。对于D中的每一个弧(vi,vj)A,都有一个权叫做弧的容量。我们把这样的图D叫做一个网络系统,简称网络,记做D=(V,A,C)。网络D上的流,是指定义在弧集合A上的一个函数f=f(vi,vj)=fjj f(vi,vj)=fij叫做弧(vi,vj)上的流量。,例如图8.19就是一个网络。每一个弧旁边的权就是对应的容量(最大通过能力)cij.图8.20表示的就是这个网络上的一个流(运输方案),每一个弧上的流量fij就是运输量。例如fs1=5,fs2=3,f13=2 等等。对于实际的网络系统上的流,有几个显著的特点:(1)发点的总流出量和收点的总流入量必相等。(2)每一个中间点的流入量与流出量的代数和等于零。(3)每一个弧上的流量,不能超过它的最大通过能力(即容量)于是有:,图8.20,定义8.6 网络上的一个流f 叫做可行流,如果f 满足以下条件(1)容量条件:对于每一个弧(vi,vj)A,有 0 fij cij.(2)平衡条件:,对于发点vs,有,对于收点vt,有,对于中间点,有,任意一个网络上的可行流总是存在的。例如零流v(f)=0,就是满足以上条件的可行流。网络系统中最大流问题就是在给定的网络上寻求一个可行流f,其流量v(f)达到最大值。设流f=fij是网络D上的一个可行流。我们把D中fij=cij的弧叫做饱和弧,fijcij的弧叫,其中发点的总流量(或收点的总流量)v(f)叫做这个可行流的流量。,做非饱和弧,fij0的弧为非零流弧,fij=0的弧叫做零流弧.,在图8.20中,(v4,v3)是饱和弧,其他的弧是非饱和弧,并且都是非零流弧。设是网络D中连接发点s和收点vt的一条链。定义链的方向是从s到 vt,于是链上的弧被分为两类:一类是弧的方向与链的方向相同,叫做前向弧,前向弧的集合记做+。二类是弧的方向与链的方向相反,叫做后向弧,,后向弧的集合记做。例如在图8.19中,在链(vs,v1,v2,v3,v4,vt)中,+=vs,v1,(v1,v2),(v2,v3),(v4,vt),=(v4,v3).,增广链:如果链满足以下条件:1在弧(vi,vj)+上,有0fijcij,即+中的每一条弧是非饱和弧。2在弧(vi,vj)上,有0fijcij,即中的每一条弧是非零流弧。,例如在图8.20中,链=(vs,v1,v2,v3,v4,vt)就是一条增广链。设图D=(V,A,C),点集S,TV,ST=。将起点在S,终点在T 的所有弧作成集合,记做(S,T)。,定义8.8 设一个网络D=(V,A,C)。如果点集V 被剖分为两个非空集合v1和,发点vsv1,收点vt,那么将弧集(v1,)叫做是分离vs和vt的截集。,定义8.9 设一个截集(V1,).将阶截集(V1,)中所有的弧的容量的和叫做截集的截量,记做 s(V1,),亦即,下面的事实是显然的:一个网络D中,任何一个可行流 f 的流量v(f)都小于或等于这个网络中任何一个截集(V1,)的截量。并且,如果,网络上的一个可行流 f*和网络中的一个截集(V1*,),满足条件v*(f*)=c(V1*,),那么f*一定是D上的最大流,而(V1*,)一定是D的所有的截集中截量最小的一个(即最小截集),定理8.8 网络中的一个可行流f*是最大流的充分必要条件是,不存在关于f*的增广链。定理8.9 在一个网络D中,最大流的流量等于分离vs 和vt 的最小截集的截量。,定理8.8为我们提供了一个寻求网络系统最大流的方法。亦即,如果网络D中有一个可行流 f,只要判断网络是否存在关于可行流 f 的增广链。如果没有增广链,那么f一定是最大流。如有增广链,那么可以按照定理 8.9中必要性,不断改进和增大可行流 f 的流量,最终可以得到网络中的一个最大流。,三标号法 从网络中的一个可行流f 出发(如果D中没有 f,可以令f 是零流),运用标号法,经过标号过程和调整过程,可以得到网络中的一个最大流。下面用给顶点标号的方法来定义V1*.在标号过程中,有标号的顶点是V1*中的点,没有标号的点不是V1*中的点。如果vt有了标号,表示存在一条关于f 的增广链。如果标号过程无法进行下去,并且vt未被标号,则表示不存在关于f 的增广链。这样,就得到了网络中的一个最大流和最小截集。,1 标号过程 在标号过程中,网络中的点或者是标号点(分为已检查和未检查两种)。或者是未标号点。每个标号点的标号包含两部分:第一个标号表示这个标号是从那一点得到的。以便找出增广链。第二个标号是为了用来确定增广链上的调整量。标号过程开始,先给vs 标号(0,+)。这时,vs 是标号未检查的点,其它都是未标号点。一般地,取一个标号未检查点vi,对一切未标号点vj:,(1)如果在弧(vi,vj)上,fij 0,那么给vj标号(-vi,l(vj)).其中l(vj)=min l(vi),fji.这时,vj 成为标号未检查点。于是vi 成为标号已检查的点。重复以上步骤,如果所有的标号都已经检查过,而标号过程无法进行下去,则标号法结束。这时的可行流就是最大流。,2.调整过程 首先按照vt 和其它的点的第一个标号,反向追踪,找出增广链。例如,令vt的第一个标号是vk,则弧(vk,vt)在上。再看vk的第一个标号,若是vi,则弧(vi,vk)都在上。依次类推,直到vs为止。这时,所找出的弧就成为网络D 的一条增广链。取调整量=l(vt),即vt的第二个标号,令,但是,如果vt 被标上号,表示得到一条增广链,转入下一步调整过程。,其它不变,再去掉所有的标号,对新的可行流f=f ij,重新进行标号过程,直到找到网络D的最大流为止。,例8.8 求图8.21的网络最大流,弧旁的权 数表示(cij,fij)。,图8 20 例8 8网络图,解:用标号法。1.标号过程。(1)首先给vs标号(0,+)(2)看vs:在弧(vs,v2)上,fs2=cs3=3,不 具备标号条件。在弧(vs,v1)上,fs1=1 0,故给 v2标号(-v1,l(v2)),其中 l(v2)=minl(v1),f21=min 4,1=1.,图8 21 例8 8网络图,(0,+),(vs,4),(v1,1),(v2,1),(-v2,1),(v3,1),(4)看v2:在弧(v2,v4)上,f24=3 0,故给v3标号(-v2,l(v3),其中 l(l(v3)=minl(v2),f32=min1,1=1。(5)在v3,v4中任意选一个,比如v3,在弧(v3,vt)上,f3t=1 c3t=2,故给vt标号(v3,l(vt),其中l(vt)=minl(v3),(c3t-f3t)=min1,1=1.因为vt被标上号,根据标号法,转入调整过程。,2.调整过程 从vt开始,按照标号点的第一个标号,用反向追踪的方法,找出一条从vs到vt的增广链,如图822中双箭线所示。不难看出,+=(vs,v1),(v3,vt),=(v2,v1),(v3,v2),取=1,在上调整f,得到,图8 22 例8 8网络图,(5,2),(1,0),(1,0),(2,2),(cij,fij),调整后的可行流f*,如图8.22所示,再对这个可行流从新进行标号过程,寻找增广链。首先给vs标号(0,+),看vs,给v1标号(vs,3)。看v1,在弧(v1,v3)上,f13=c13,弧(v2,v1)上,f21=0,均不符合条件。因此标号过程无法进行下去,不存在从vS到vt的增广链,算法结束。,这时,网络中的可行流f*即是最大流,最大流的流量v(f*)=fs1+fs2=5.同时,也找出D的最小截集(V1,),其中V1是标号的集合,是未标号的集合。,(0,+),(vs,3),图823 例8 8网络图,例89 求图8 24所示网络的最大流,图 824 例89网络图,解:给定初始可行流为全零流,即 f(0)=0,给vs 标号(0,+),检查 vs:给 v1 标号(vs,4),给 v3 标号(vs,3),给 v3 标号(vs,10),(0,+),(vs,4),(vs,3),(vs,10),检查 v1:给 v3 标号(v1,1),检查完毕;,(v1,1),检查 v2:给 v5 标号(v2,3),检查完毕;,(v2,3),检查 v5:给 vt 标号(v5,3),检查完毕;,(v5,3),因为终点 vt 已标号,故找出一条从vs到vt的增广链:vs v2 v5 vt.取=3,(vs,4),(v1,3),(vs,10),(v1,1),(v2,2),(0,+),(v5,2),(vs,2),(v3,3),(vs,10),(v2,3),(v3,4),(0,+),(v4,3),(0,+),(vs,2),(vs,10),(v3,4),(v5,2),(v5,3),(0,+),(vs,2),(vs,4),(v1,1),(v1,1),(v4,1),(0,+),(vs,4),(vs,1),(v3,1),(v5,1),(v4,1),(0,+),(vs,1),(vs,3),(v1,1),(v2,1),(v4,1),(0,+),(vs,3),首先给vs标号(0,+),看vs,给v3标号(vs,3)。看v3,在弧(v3,v2)上,f32=c32,弧(v3,v5)上,f35=c35,均不符合条件。因此标号过程无法进行下去,不存在从vS到vt的增广链,算法结束。最大流量 f*=14。,8.4最小费用最大流问题,在实际的网络系统中,当涉及到有关流的问题的时候,我们往往不仅仅考虑的是流量,还经常要考虑费用的问题。比如一个铁路系统的运输网络流,即要考虑网络流的货运量最大,又要考虑总费用最小。最小费用最大流问题就是要解决这一类问题。,我们首先考察,在一个网络D中,当沿可行流 f 的一条增广链,以调整量=1改进f,得到的新可行流f 的流量,有 v(f)=,设一个网络D=(V,A,C),对于每一个弧(vi,vj)A,给定一个单位流量的费用bij 0,网络系统的最小费用最大流问题,是指要寻求一个最大流 f,并且流的总费用 达到最小。,=v(f)+1,而此时总费用b(f)比b(f)增加了,结论:如果可行流 f 在流量为v(f)的所有可行流中的费用最小,并且 是关于f 的所有增广链中的费用最小的增广链,那么沿增广链,我们将 叫做这条增广链的费用。,调整可行流f,得到的新可行流f,也是流量为v(f)的所有可行流中的最小费用流。依次类推,当 f 是最大流时,就是所要求的最小费用最大流。,显然,零流f=0是流量为0的最小费用流。一般地,寻求最小费用流,总可以从零流f=0开始。下面的问题是:如果已知f 是流量为v(f)的最小费用流,那么就要去寻找关于f 的最小费用增广链。,对此,重新构造一个赋权有向图 M(f),其顶点是原网络D的顶点,而将D中的每一条弧(vi,vj)变成两个相反方向的弧(vi,vj)和(vj,vi),并且定义M(f)中弧的权wij为:,并且将权为+的弧从 M(f)中略去。,这样,在网络D中寻找关于f 的最小费用增广链就等于价于在M(f)中寻求从vs 到vt 的最短路。算法开始,取零流f(0)=0.一般地,如果在第K-1步得到最小费用流f(K-1),则构造图M(f(k-1)。在图M(f(k-1)中,寻求从vs到vt的最短路。如果存在最短路,则f(k-1)就是最小费用最大流。如果存在最短路,则在原网络D中得到相对应(一一对应)的增广链0,在增广链上对f(k1)进行调整,取调整量,令:,得到一个新的可行流f(k),在对f(k)重复以上的步骤,直到D中找不到相对应的增广链时为止。,例8.9 求图8-24 所示网络中的最小费用最大流,弧旁的权是(bij,cij).,图 8-24,解:(1)取初始可行流为零流f(0)=0,构造赋权有向图M(f(0),求出从vs到vt的最短路(vs,v2,v1,vt),如图8.25a 中双箭头所示。,图 8.25 a,(2)在原网络D中,与这条最短路相对应的增广链为=(vs,v2,v1,vt)。(3)在上对f(0)=0进行调整,取=5,得到新可行流f(1),如图8.25b所示。按照以上的算法,依次类推,可以得到f(1),f(2),f(3),f(4),流量分别为5,7,10,11,并且分别构造相对应的赋权有向图M(f(1),M(f(2),M(f(3),M(f(4)。由于在M(f(4)中已经不存在从vs到vt的最短路,因此,可行流f(4),v(f(1)=11是最小费用最大流。,M(f(1),图 8.25 c,M(f(2),图 8.25 e,8.6 网络计划,大型项目的开发涉及很复杂的项目协调和管理问题,为使项目管理人员对项目进度有全面的了解,进行有效的控制,必须使用科学的管理方法.,网络计划法是使用最广泛的方法之一,关键路径法(CPM)和项目评审技术(PERT)是两种使用最广泛的网络计划技术。,网络计划方法的优点使它适用于生产技术复杂,工作项目繁多,且紧密联系的一些跨部门的工作计划,如:新产品研制开发 大型工程项目建设 生产技术准备 复杂设备的大修计划,网络计划方法的基本原理,将工程项目分解为相对独立的活动,根据各活动先后顺序、相互关系以及完成所需时间做出反映项目全貌的网络图;从项目完成全过程着眼,找出影响项目进度的关键活动和关键路线,通过对资源的优化调度,实现对项目实施的有效控制和管理。,网络计划方法的主要功能,1 用网络图描述一个实际项目的管理问题(画网络图);2 计算项目的最早、最晚完成和开工时间(网络计算);3 寻找关键活动和关键路径(网络分析);4 根据以上分析对网络进行优化。,8.6.1 网络计划与网络图,复杂工程项目可被分解为一系列小的事件或活动,各种事件和活动之间的逻辑顺序可以表述为一个由一系列弧和节点组成的网络图;网络图中的有向弧代表各种活动(或工作),活动完成需要的时间写在弧上;节点表示事件(或事项),表示活动的开始与结束,每个节点有唯一节点号;,位于弧的起点和终点的节点表示活动或事件的开始和结束,每个活动有一 个起点和一个终点:,圆圈和里面的数字代表各事项,写在箭杆中间的数字 5 表示完成本工作所需时间,即工作 a(1,2),事项:(1,2)。,图 8.26,整个网络的方向按惯例从左到右地反映活动的逻辑顺序,并有唯一的起点和终点。,画网络图有以下四个阶段:一、列出所有活动 一个完整的项目必须被分解为一系列独立,活动(称为工序),分解程度取决于项目计划的需要以及相应的管理职能。二、确定每个活动的紧前工序 项目执行的连续性确定了项目各项活动的前后顺序,为了从逻辑上搞清楚活动之间的顺序关系,需要确定每项活动可以开始之前必须完成的活动-紧前工序。,注意:区分习惯上发生的顺序和它们在逻辑上应该发生的顺序,例如,寄出一个发票的一般,方法是:,(1)检查发票(2)将发票放入信封(3)封上信封(4)在信封上写地址这不是唯一正确方法,网络图应能反映所有可能性,而不仅仅是传统方法。,三、画网络图 画网络图应注意以下规则:,1、网络只能有一个总起点和一个总终点;,图 8.27 中,有两个总起点事项,;三个总终点事项,不符合规则。,图 8.27,2、网络图为有向图,且不能有回路;,图8.28 中 是回路,不符合规则,图 8.28,3、两个节点之间不能有两条或两条以上的弧(两个及两个以上的工作);,图8.29 不符合规则。,4、应正确表示活动之间的前行后继关系;,如 4 道工作a,b,c,d 的关系为:c 必须在a,b 均完成后才能开工,而 d 只要在 b 完工后,图 8.29,即可开工,如画成下图是错误的,因本来与 a 工作的工作d 被错误地表为必须在 a 完工后才能开工。,5、虚拟活动的运用,网络有时需要包括由虚线表示的虚拟 活,图 8.30,动。首先,它可以避免两个活动有相同的起点和终点;其次,使用虚拟活动可以帮助表示一些特殊的逻辑依赖关系。,如前面不符合规则的图 8.27,图 8.29,图 8.30,用添加虚工作的方法改图为图 8.31,图 8.32,图 8.33就是正确的了。,图 8.32,图 8.31,图 8.33,商业中心建设网络图,错误的依赖关系,6、平行工作 虚工作还可以用于正确地表示平行工作与交叉工作。一道工作分为几道工作同时进行,称为平行工作,如图图 8.34(a)中市场调查(2,3)中需12天,如增加人力分为三组同时进行,可画为(b)。,图 8.34(a),图 8.34(b),7、交叉作业两件或两件以上的工作交叉进行,称为交叉工作。如工作 A 与工作 B 分别为挖沟和埋管子,那么它们的关系可以是挖一段埋一段,不必等沟全部挖好再埋,这就可以用交叉作,业来表示,如把这工作各分为三段,A=a1+a2

    注意事项

    本文(运筹学8图与网络分析.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开