第6章_网络模型.ppt
《第6章_网络模型.ppt》由会员分享,可在线阅读,更多相关《第6章_网络模型.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6 6章章 网络模型网络模型6.1 图论导引图论导引6.2 网络中的流网络中的流6.3 最短路和最小费用流问题最短路和最小费用流问题6.4 网络计划方法网络计划方法6.5 应用实例应用实例6.1 图论导引图论导引什么是图什么是图?哥尼斯堡七桥示意图哥尼斯堡七桥示意图问题问题1(1(哥尼斯堡七桥哥尼斯堡七桥问题问题):):能否从任一陆地出发通过每座桥恰好一次而能否从任一陆地出发通过每座桥恰好一次而回到出发点?回到出发点?ABDC七桥七桥问题模拟图问题模拟图欧拉指出:欧拉指出:如果每块陆地所连接的桥都是偶数座,则如果每块陆地所连接的桥都是偶数座,则从任一陆地出发,必能通过每座桥恰好一次而从任一
2、陆地出发,必能通过每座桥恰好一次而回到出发地回到出发地.问题问题2(2(设备更新问题设备更新问题)某企业每年年初某企业每年年初,都要作出决定都要作出决定,如果继续使如果继续使用旧设备用旧设备,要付维修费;若购买一台新设备要付维修费;若购买一台新设备,要付要付购买费购买费.试制定一个试制定一个5 5年更新计划年更新计划,使总支出最少使总支出最少.已知设备在每年年初的购买费分别为已知设备在每年年初的购买费分别为11,11,11,11,12,12,13.12,12,13.使用不同时间设备所需的维修费分别使用不同时间设备所需的维修费分别为为5,6,8,11,18.5,6,8,11,18.第第1年年第第
3、2年年第第3年年第第4年年第第5年年购买费购买费1111121213维维修修费费5681118第第1年年第第2年年第第3年年第第4年年第第5年年购买费购买费1111121213维修费维修费5681118点点vi表示表示第第i 年年年年初购进一初购进一台新设备台新设备,虚设一个虚设一个点点v6表示表示第第5 5年年年年底底.弧上的数字表示弧上的数字表示一一台设备的购买费与台设备的购买费与维修费之和维修费之和.59=11+5+6+8+11+1841=11+5+6+8+1130=11+5+6+823=12+5+616=11+522=11+5+6 这样上述设备更新问题就变为:求这样上述设备更新问题就变
4、为:求v1到到v6的最短路问题的最短路问题.问题问题3(3(选址问题选址问题)现准备现准备在在 n 个个居民点居民点v1,v2,vn中设置一中设置一银行银行.问设在哪个点问设在哪个点,可使最大服务距离最小可使最大服务距离最小?若若设置两个银行设置两个银行,问设在哪两个点问设在哪两个点?问题问题4(4(关键路径问题关键路径问题)一项工程任务一项工程任务,大到建造一座大坝大到建造一座大坝,一座体育中心一座体育中心,小至组装一台机床小至组装一台机床,一架电视机一架电视机,都要包括许多工序都要包括许多工序.这这些工序相互约束些工序相互约束,只有在某些工序完成之后只有在某些工序完成之后,下一道工序下一道
5、工序才能开始才能开始.即它们之间存在完成的先后次序关系即它们之间存在完成的先后次序关系,一般认一般认为这些关系是预知的为这些关系是预知的,而且也能够预计完成每道工序所而且也能够预计完成每道工序所需要的时间需要的时间.这时工程领导人员迫切希望了解最少需要多这时工程领导人员迫切希望了解最少需要多少时间才能够完成整个工程项目少时间才能够完成整个工程项目,影响工程进度影响工程进度的要害工序是哪几道?的要害工序是哪几道?6.1.1 6.1.1 图论的基本概念图论的基本概念 图论中的图论中的“图图”并不是通常意义下的几何图并不是通常意义下的几何图形或物体的形状图形或物体的形状图,而是以一种抽象的形式来表而
6、是以一种抽象的形式来表达一些确定的事物之间的联系的一个数学系统达一些确定的事物之间的联系的一个数学系统.定义定义1 一个有序二元组一个有序二元组(V,E)称为一个称为一个图图,记为记为G=(V,E),其中其中 V称为称为G的顶点集的顶点集,V,其元素称为其元素称为顶点顶点或或结点结点,简称简称点点;E称为称为G的边集的边集,其元素称为其元素称为边边,它联结它联结V 中的两个点中的两个点,如果这两个点是无序的如果这两个点是无序的,则称该边则称该边为为无向边无向边,否则否则,称为称为有向边有向边.有向边常称为有向边常称为弧弧.如果如果V=v1,v2,vn是有限非空点集是有限非空点集,则则称称G为为
7、有限图有限图或或n阶图阶图.如果如果E的每一条边都是无向边的每一条边都是无向边,则称则称G为为无向无向图图(如图如图1)1);如果如果E的每一条边都是有向边的每一条边都是有向边(即即弧弧),则称则称G为为有向图有向图(如图如图2)2);否则否则,称称G为为混合图混合图.图图1 1图图2 2 教材教材上将有向上将有向图记为图记为D=(V,A)并且常记并且常记V=v1,v2,vn,|V|=n;E=e1,e2,em(ek=vivj),|E|=m.称点称点vi,vj为边为边vivj的的端点端点.在有向图中在有向图中,称点称点vi,vj分别为边分别为边vivj的的始点始点和和终点终点.对于一个图对于一个
8、图G=(V,E),人们常用图形来表示人们常用图形来表示它它,称其为称其为图解图解.凡是有向边凡是有向边,在图解上都用箭在图解上都用箭头标明其方向头标明其方向.例如例如,设设V=v1,v2,v3,v4,E=v1v2,v1v3,v1v4,v2v3,v2v4,v3v4,则则G=(V,E)是一个有是一个有4个顶点和个顶点和6条边的图条边的图,G的图解如下图所示的图解如下图所示.一个图会有许多外形不同的图解一个图会有许多外形不同的图解,下面两个下面两个图表示同一个图图表示同一个图G=(V,E)的图解的图解.其中其中V=v1,v2,v3,v4,E=v1v2,v1v3,v1v4,v2v3,v2v4,v3v4
9、.今后将不计较这种外形上的差别今后将不计较这种外形上的差别,而用一个容而用一个容易理解的、确定的图解去表示一个图易理解的、确定的图解去表示一个图.我们今后只讨论我们今后只讨论有限简单图有限简单图:(1)(1)顶点个数是有限的顶点个数是有限的;(2)(2)任意一条边有且只有两个不同的端点任意一条边有且只有两个不同的端点;(3)(3)若是无向图若是无向图,则任意两个顶点最多只有则任意两个顶点最多只有一条边与之相联结一条边与之相联结;(4)(4)若是有向图若是有向图,则任意两个顶点最多只有则任意两个顶点最多只有两条弧与之相联结两条弧与之相联结.当两个顶点有两条弧与之相当两个顶点有两条弧与之相联结时,
10、这两条弧的方向相反联结时,这两条弧的方向相反.如果某个有限图不满足如果某个有限图不满足(2)(3)(4),(2)(3)(4),可在某条可在某条边边(弧弧)上增设顶点使之满足上增设顶点使之满足.定义定义2 若将图若将图G的每一条边的每一条边e都对应一个实数都对应一个实数F(e),则称则称F(e)为该边的为该边的权权,并称图并称图G为为赋权图赋权图(网网络络),记为记为G=(V,E,F).“权权”可根据实际需要可根据实际需要赋予不同的含义,如距离、时间、费用等赋予不同的含义,如距离、时间、费用等.定义定义3 设设G=(V,E)为无向图为无向图,v0,v1,vkV,且且 1ik,vi-1viE,则称
11、则称v0 v1 vk为连接为连接v0 和vk的一条的一条链链.若若G=(V,E)为有向图为有向图,则称链则称链 v0v1vk是一是一条以条以v0为始点为始点vk为终点的为终点的路路.始点和终点相同的始点和终点相同的链或路链或路称为称为圈圈或或回路回路.定义定义4 任意两点之间至少有一条链的图称为任意两点之间至少有一条链的图称为连通图连通图.定义定义5 连通而无圈的图称为连通而无圈的图称为树树,常用常用T表示树表示树.树有以下显而易见的性质:树有以下显而易见的性质:(1)(1)树中任意两顶点间有且仅有一条路树中任意两顶点间有且仅有一条路;(2)(2)在树中任意两个不相邻的顶点间添上一在树中任意两
12、个不相邻的顶点间添上一条边,就得到一个圈条边,就得到一个圈;(3)(3)在树中去掉任意一条边,图就不连通在树中去掉任意一条边,图就不连通;(4)(4)|V|=|E|+1.子图与生成树子图与生成树(支撑树支撑树)设图设图G=(V,E)和和图图G=(V,E),如果如果V V,E E,则称则称G是是G 的一个的一个子子图图.如果如果V=V,E E,则称则称G是是G 的一个的一个生成生成(支撑支撑)子子图图.如果如果G 的一个生成子的一个生成子图图G=(V,E)是树,是树,则则称称G是是G 的一颗的一颗生成生成树树(支撑树支撑树).).例例 一摆渡人欲将一只狼一摆渡人欲将一只狼,一头羊一头羊,一篮菜从
13、一篮菜从河西渡过河到河东河西渡过河到河东.由于船小由于船小,一次只能带一物过一次只能带一物过河,并且狼与羊河,并且狼与羊,羊与菜不能独处羊与菜不能独处.给出渡河方法给出渡河方法.解解:用:用四维四维0-10-1向量表示向量表示(人人,狼狼,羊羊,菜菜)在河在河西岸的状态西岸的状态(在河西岸则分量取在河西岸则分量取1,1,否则取否则取0),0),共有共有24=16 种状态种状态.在河东岸的状态类似记作在河东岸的状态类似记作.由题设由题设,状态状态(0,1,1,0),(0,0,1,1),(0,1,1,1)是不允许的是不允许的,从从而对应状态而对应状态(1,0,0,1),(1,1,0,0),(1,0
14、,0,0)也也是不允许的是不允许的.以可以可允许的允许的10个个状态状态向量作为顶点向量作为顶点,将可能互将可能互相转移的状态用线段连接起来构成一个图相转移的状态用线段连接起来构成一个图.根据此图便可找到根据此图便可找到渡河方法渡河方法.(1,1,1,1)(1,1,1,0)(1,1,0,1)(1,0,1,1)(1,0,1,0)(0,0,0,0)(0,0,0,1)(0,0,1,0)(0,1,0,0)(0,1,0,1)(0,1,0,1)(0,1,0,0)(0,0,1,0)(0,0,0,1)(0,0,0,0)(1,0,1,0)(1,0,1,1)(1,1,0,1)(1,1,1,0)(1,1,1,1)河
15、西河西=(=(人人,狼狼,羊羊,菜菜)河东河东=(=(人人,狼狼,羊羊,菜菜)将将10个顶点分别记为个顶点分别记为A1,A2,A10,则则渡河渡河问题化为在该图中求一条从问题化为在该图中求一条从A1到到A10的的路路.从图中易得到两条从图中易得到两条路路:A1 A6 A3 A7 A2 A8 A5 A10;A1 A6 A3 A9 A4 A8 A5 A10.图的矩阵表示图的矩阵表示 任意一个任意一个有限简单图有限简单图G的都可用一个实数矩的都可用一个实数矩阵阵A=(aij)nn 来表示来表示,其中,其中n阶为阶为G的顶点数的顶点数.当当G=(V,E)的边的边(弧弧)没有赋权没有赋权时,定义时,定义
16、当当G=(V,E,F)的边的边(弧弧)有赋权有赋权时,定义时,定义 当当vivj E,若求图若求图G的最短路时的最短路时,定义定义aii=0,aij=+(i j);若求图若求图G的最长路时的最长路时,则定义则定义aii=+,aij=0(i j).6.1.2 最短路与最小生成树最短路与最小生成树 定义定义1 设设P(u,v)是赋权图是赋权图G=(V,E,F)中,从点中,从点u到到v的路的路.用用E(P)表示路表示路P(u,v)中全部边中全部边(弧弧)的集合的集合,记记则称则称F(P)为路为路P(u,v)的的权权或或长度长度(距离距离).定义定义2 若若P0(u,v)是是G 中连接中连接u,v的路
17、的路,且且对任意在对任意在G 中连接中连接u,v的路的路P(u,v)都有都有F(P0)F(P),则称则称P0(u,v)是是G 中连接中连接u,v的的最短路最短路.重要性质:重要性质:若若v0 v1 vm 是是图图G中从中从v0到到vm的最短路的最短路,则则 1km,v0v1 vk 必为必为G中从中从v0到到vk的最短路的最短路.即:最短路是一条路即:最短路是一条路,且最短路的任一段也且最短路的任一段也是最短路是最短路.求非负赋权图求非负赋权图G中某一点到其它各点最短路中某一点到其它各点最短路,一般用一般用Dijkstra标号算法标号算法;求赋权图上任意两点间求赋权图上任意两点间的最短路,一般用
18、的最短路,一般用Floyd算法算法.Dijkstra标号算法标号算法仅适用于非负赋权图仅适用于非负赋权图.由于由于Dijkstra标号算法较为复杂标号算法较为复杂,以下只介绍以下只介绍Floyd算法算法.求赋权图中任意两点的最短路的求赋权图中任意两点的最短路的Floyd算法:算法:设设A=(aij)nn为赋权图为赋权图G=(V,E,F)的权矩阵的权矩阵,dij表示从表示从vi到到vj点的距离点的距离,rij表示从表示从vi到到vj点的最点的最短路中一个点的编号短路中一个点的编号.赋初值赋初值.对所有对所有i,j,dij=aij,rij=j.k=1.转转向向.更新更新dij,rij.对所有对所有
19、i,j,若若dik+dk jdij,则则令令dij=dik+dkj,rij=k,转向转向;终止判断终止判断.若若dii0或或k=n终止,最短路线终止,最短路线可由可由rij得到得到;否则令否则令k=k+1,转向转向.dii 0 表明表明 G 中存在一条含有顶点中存在一条含有顶点 vi 的负回的负回路路;k=n终止后若有终止后若有dij=+表明表明G非连通非连通.例例1 1 求下图中任意两点间的最短路求下图中任意两点间的最短路.221118675394368v1v2v3v4v5v6v7v8 解解:用:用Floyd算法算法,首先写出其首先写出其(对称的对称的)权矩权矩阵阵A=(aij)88,然后利
20、用计算机编程计算然后利用计算机编程计算.1 2 3 4 5 6 7 81 2 3 4 5 6 7 81 1 0 2 8 1 0 2 8 1 2 2 2 0 6 1 2 0 6 1 3 3 8 6 0 7 5 1 2 8 6 0 7 5 1 2 4 4 1 7 0 9 1 7 0 9 5 5 1 5 0 3 8 1 5 0 3 86 6 1 3 0 4 6 1 3 0 4 67 7 2 9 4 0 3 2 9 4 0 38 8 8 6 3 0 8 6 3 0 求赋权图中任意两点的最短路求赋权图中任意两点的最短路Floyd算法的算法的MATLAB程序:程序:A=0281InfInfInfInf20
21、6Inf1InfInfInf8607512Inf1Inf70InfInf9InfInf15Inf03Inf8InfInf1Inf3046InfInf29Inf403InfInfInfInf8630;%用用Inf表示表示n=8;D=A;R=;%赋初值赋初值for i=1:n for j=1:n R(i,j)=j;%赋初值赋初值 endendfor k=1:n for i=1:n for j=1:n if D(i,k)+D(k,j)D(i,j)D(i,j)=D(i,k)+D(k,j);%更新更新 dij R(i,j)=k;%更新更新 rij end end end k%显示迭代步数显示迭代步数 D
22、%显示路长显示路长 R%显示路径显示路径end for i=1:n%含有负权时 if(D(i,i)0)break%存在负回路 end end if(in|D(n,n)0)break%终止 end计算结果计算结果221118675394368v1v2v3v4v5v6v7v80 2 7 1 3 6 9 110 2 7 1 3 6 9 112 0 5 3 1 4 7 92 0 5 3 1 4 7 97 5 0 7 4 1 2 57 5 0 7 4 1 2 51 3 7 0 4 7 9 121 3 7 0 4 7 9 123 1 4 4 0 3 6 83 1 4 4 0 3 6 86 4 1 7 3
23、0 3 66 4 1 7 3 0 3 69 7 2 9 6 3 0 39 7 2 9 6 3 0 311 9 5 12 8 6 3 011 9 5 12 8 6 3 0最小生成树最小生成树 由树的定义不难知道由树的定义不难知道,任意一个连通的任意一个连通的p,q 图图(p个顶点个顶点q条边条边)G适当去掉适当去掉q-p+1条边后条边后,都都可以变成树可以变成树,这棵树称为图这棵树称为图G的的生成树生成树.设设T是图是图G的一棵生成树的一棵生成树,用用F(T)表示树表示树T中中所有边的权数之和所有边的权数之和,F(T)称为称为树树T的权的权.一个连通图一个连通图G的生成树一般不止一棵的生成树一般
24、不止一棵,图图 G的所有生成树中权数最小的生成树称为图的所有生成树中权数最小的生成树称为图 G 的的最最小生成树小生成树,简称,简称最小树最小树.求最小生成树问题有很广泛的实际应用求最小生成树问题有很广泛的实际应用.例例如如,把把n个乡镇用高压电缆连接起来建立一个电网个乡镇用高压电缆连接起来建立一个电网,使所用的电缆长度之和最短使所用的电缆长度之和最短,即费用最小即费用最小,就是就是一个求最小生成树问题一个求最小生成树问题.求连通图求连通图G的最小生成树的最小生成树T的近似算法有破圈的近似算法有破圈法与法与Kruskal避圈法避圈法.(1)(1)破圈法:先任取一个圈,从圈中去掉一破圈法:先任取
25、一个圈,从圈中去掉一条权数最大的边,若在同一圈中权数最大的边不条权数最大的边,若在同一圈中权数最大的边不止一条止一条,则任选其中一条边去掉则任选其中一条边去掉(不同的选择可能不同的选择可能会导致权数不同的结果会导致权数不同的结果).).重复上述步骤重复上述步骤,直至没直至没有圈为止有圈为止.(2)2)Kruskal 避避圈法:将图圈法:将图G中的边按权从中的边按权从小到大逐条考察小到大逐条考察,按不构成圈的原则加入到按不构成圈的原则加入到T 中中(若有选择时若有选择时,不同的选择可能会导致权数不同的不同的选择可能会导致权数不同的结果结果),),直到直到 q(T)=p(G)-1为止,即为止,即T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 模型
限制150内