运筹学6(图与网络分析).ppt

上传人:桔**** 文档编号:573269420 上传时间:2024-08-14 格式:PPT 页数:69 大小:1.12MB
返回 下载 相关 举报
运筹学6(图与网络分析).ppt_第1页
第1页 / 共69页
运筹学6(图与网络分析).ppt_第2页
第2页 / 共69页
运筹学6(图与网络分析).ppt_第3页
第3页 / 共69页
运筹学6(图与网络分析).ppt_第4页
第4页 / 共69页
运筹学6(图与网络分析).ppt_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《运筹学6(图与网络分析).ppt》由会员分享,可在线阅读,更多相关《运筹学6(图与网络分析).ppt(69页珍藏版)》请在金锄头文库上搜索。

1、 西安理工大学工商管理学院西安理工大学工商管理学院运筹学运筹学OperationsResearch运运筹筹学学OperationsResearchChapter8图与网络分析图与网络分析GraphandNetwork1.图与网络的基本知识图与网络的基本知识2.树树3.3.最短路问题最短路问题4.最大流问题最大流问题ACBDCBA引例:哥尼斯堡七桥问题您能从A、B、C或D任意一点出发走遍7座桥并且每座桥只走一次最后回到原出发点吗?DE.Euler提出(1736年):中国邮路问题:管梅谷(1962年)提出一个邮递员,负责某一地区的信件投递。他每天要从邮局出发,走遍该地区所有街道再返回邮局,问应如何

2、安排送信的路线可以使所走的总路程最短?245563344494我们在实际生活、生产和科研活动中经常看到许多的网络,如互联网、通信网、公路网、管道网、销售网等。对网络进行研究是希望解决其中的一些优化问题,网络最优化能为人们管理和控制这些网络系统提供一套有效的方法。ACBD例例某家电配送中心需要为多个销售点送货,配送中心与销售点以及销售点之间的相对位置和运输情况可以用图来表示。其中,点v1,v2,v7代表销售点,边表示运输路线。若已知每条路线行走所需的时间,请帮助配送中心管理人员设计一条送货路线,使送货车辆用最短的时间送完货物,并回到配送中心。 v9v7v8v6v4v5v3配送中心v2v1基本的网

3、络最优化问题有4个,即最小树问题,最短路问题、最大流问题、最小费用最大流问题。这些问题的数学模型实际上大都是线性规划问题,但使用线性规划的单纯形法去求解,过程非常繁琐,本章介绍的网络分析方法能有效的解决这些问题。 图可 定义为点和边的集合,记作 式中是点的集合,是边的集合。注意上面定义的图区别于几何学中的图。在几何学中,图中点的位置、线的长度和斜率等都十分重要,而这里只关心图中有多少点以及哪些点之间有线相连,如果给图中的点和边赋以具体的含义和权数,如距离、费用、容量等,把这样的图称为网络图,记作。图和网络分析的方法已广泛应用于物理、化学、控制论、信息论、计算机科学和经济管理等各个领域。ACBD

4、8.1图与网络的基本知识图与网络的基本知识v3e7e4e8e5e6e1e2e3v1v2v4v5如图8-1定义定义1端点,关联边,相邻端点,关联边,相邻若有边e可表示为e=vi,vj,称vi和vj是边e的端点,反之称边e为点vi或vj的关联边。若点vi、vj与同一边关联,称点vi和vj相邻;若边ei和ej具有公共的端点,称边ei和ej相邻。例如图81,v2和v4是边e6的端点,反之边e6是点v2、v4的关联边。点v2、v4相邻;边e6与e5、 e4相邻。图81e2可记作:一、图与网络的基本概念定义定义2环,多重边,简单图环,多重边,简单图 如果边e的两个端点相重,称该边为环。如图8中边e1为环。

5、如果两个点之间的边多于一条,称为多重边,如图8中的e4和e5,对无环、无多重边的图称作简单图。v3e7e4e8e5e6e1e2e3v1v2v4v5 定义3 次,奇点,偶点,孤立点次,奇点,偶点,孤立点与某一个点vi相关联的边的数目称为点vi的次(也叫做度),记作d(vi)。图中d(v1),d(v3)=5,d(v5)=1。次为奇数的点称作奇点,次为偶数的点称作偶点,次为0的点称作孤立点。定理1 任何图中,顶点次数的总和等于边数的2倍。v1v2v3定理2 任何图中,次为奇数的顶点必为偶数个。v3e7e4e8e5e6e1e2e3v1v2v4v5定义定义4有向图:有向图:如果图的每条边都有一个方向则称

6、为有向图定义定义5混合图:混合图:如何图G中部分边有方向则称为混合图有向图定义6 有向图中,以Vi为起始点的边数称为点Vi的出次,用 表示;有向图中,以Vi为终点的边数称为点Vi的入次,用 表示。结论1: Vi点的出次与入次之和就是该点的次。结论2:有向图中,所有顶点的入次之和等于所有顶点的出次之和。定义定义7:子图、生成子图(:子图、生成子图(支撑子图)图G1=V1、E1和图G2=V2,E2如果 称G1是G2的一个子图。若有 则称 G1是G2的一个支撑子图(部分图)。图8-2(a)是图 6-1的一个子图,图8-2(b)是图 8-1的支撑子图,注意支撑子图也是子图,子图不一定是支撑子图。e4v

7、3e8e5e6v2v4v5图2(a)v3e7e4e8e5e6e1e2e3v1v2v4v5v3e7e6e1e2e3v1v2v4v5图2(b)定义定义8网络(赋权图):网络(赋权图):设图G(V,E),对G的每一条边(vi,vj)相应的有一条数w (vi,vj) (或记为wij),wij称为边(vi,vj)的权,赋有权的图G称为网络(赋权图)。这里的权数可以是时间、费用、距离等,视不同背景代表不同的含义。910201571419256赋权图 定义9 链、路、回路(圈)链、路、回路(圈)无向无向图中有些点和边的交替序列对任意vi,t1 和vit(2tk)均相邻,称从v0到vk的链。v3e7e4e8e

8、5e6e1e2e3v1v2v4v5图81中, 1=v5,e8,v3,e3,v1,e2,v2,e4,v3,e7,v5是一条链,1中因顶点v3重复出现,不能称作路。二、连通图如果链中所有的顶点v0,v1,vk也不相同,这样的链称初等链(或路)。如果链中各边e1,e2,ek互不相同称为简单链。当v0与vk重合时称为回路(或圈),如果边不重复称为简单回路,如果边不重复点也不重复则称为初等回路。是一条链也是一条路。是一条回路并且是简单回路。v3e7e4e8e5e6e1e2e3v1v2v4v5定义定义10连通图连通图若在一个图中,如果每一对顶点之间至少存在一条链,称这样的图为连通图,否则称该图是不连通的。

9、图81是连通图。3=v4,e7,v3,e3,v1,e2,v2,e6,v4欧拉回路定义11 连通图G中,若存在一条回路,经过每边一次且仅一次,则称这条回路为欧拉回路。 具有欧拉回路的图称为欧拉图(E图)。CBADACBDACBD哥尼斯堡七桥问题:寻找一条欧拉回路CBAD定理3 无向连通图G是欧拉图,当且仅当G中无奇点。ACBDv1v2v3七桥问题:d(A)=3, d(B)=3, d(C)=5, d(D)=3有四个奇点,故不是欧拉图定理4 有向连通图G是欧拉图,当且仅当G中每个顶点的出次等于入次。910201571419256中国邮路问题讨论:奇偶点图上作业法245563344494v1v2v3v

10、4v5v6v7v8v98.2 树树的概念树是图论中结构最简单但又十分重要的图,在许多领域都有应用。如:运动员抽签结构图定义定义树、生成树:树、生成树:无圈的连通图称为树; 若G1是G2的一个支撑子图并且是一棵树,则称G1是G2的一棵生成树。图83(a)是一棵树,图83(b)是图81的一棵生成树。v3e7e4e8e5e6e1e2e3v1v2v4v5v1v1图图81图图83(a)图图83(b)v3e2e3v2v5v3e7e8e6e2v2v4v5定理: 图G=(V,E)有生成树的充分必要条件为G是连通图。v3e7e4e8e5e6e1e2e3v1v2v4v5生成树的寻求方法在图中,每步选出一条边使它与

11、已选边不构成圈,直到选够n-1 条边为止。()深探法步骤:任取一点v,给v以标号; 若某点u已得标号i,检查其端点w是否已标号; 若端点w未标号,则给w以标号i+1;重复 若端点均已标号,则退到标号i1的点,重复。(2) 广探法任取一点v,给v以标号;检查其所有端点wi是否已标号;若端点w未标号,则给所有wi以标号i+1;对标号i+1的点重复。01112212223334(3)破圈法在图中任意取一个圈,从圈上任意舍弃一条边,将这个圈破掉;重复上述步骤,直到图中没有圈为止。v1v2v3v4v5v6v7v8v0v1v2v3v4v5v6v7v8v0例:某乡有9个自然村,其乡间道路如下图,要求:以v0

12、村为中心沿道路架设有线广播网络,应如何架设?最小生成树定义:设GV,E是一个连通图,每一条边eiE具有长度C(ei) 0, G的任意生成树T各条边的长度之和称为树T的长度,记为C(T)。长度最小的生成树称为最小树。2364122223313最小树的应用:最小树的应用: 电信网络(计算机网络、电话专用线网络、有线电视网络等等)的设计 低负荷运输网络的设计,使得网络中提供链接的部分(如铁路、公路等 等)的总成本最小 高压输电线路网络的设计电器设备线路网络(如数字计算机系统)的设计,使得线路总长度最短 连接多个场所的管道网络设计 求最小树是在一个无向连通图G中求一棵最小生成树。避圈法(加边法):去掉

13、G中所有边,得到n个孤立点;然后加边;加边的原则:从最短边开始添加,加边的过程中不能形成圈,直到连通(n1条边)。5v1v2v3v4v5v6843752618v1v2v3v4v5v643521MinC(T)=15求最小树的方法:避圈法和破圈法 破圈法:任取一圈,去掉圈中最长边,直到无圈。v1v2v3v4v5v6435215v1v2v3v4v5v6843752618v1v2v3v4v5v643521得到最小树:MinC(T)=15根树及其应用定义 有向树:若一个有向图是一棵树,则称这个有向图为有向树。定义 若有向树T恰有一个结点的入次为0,其余各点入次均为1,则称T为根树。v1v2v3v4v5v

14、6v7v8v9v10v11v1v2v3v4v5v6v7v8v9v10v11入次为0的点,称为根出次为0的点,称为叶其它顶点,称为分枝点根到某顶点vi的道路长度,称为vi点的层次。定义 在根树T中,若每个顶点的出次小于或等于m,则称T为m叉树。 若每个顶点的出次恰好等于m或零,则称T为完全m叉树。v1v2v3v4v5v6v7v8v9v10v11当m=2时,称为二叉树、完全二叉树。v1v2v3v4v5v6v7记二叉树各叶子的权为pi,根到各叶子的距离(层次)为 li二叉树的总权数: v1v2v3v4v5v6v7最优二叉树:满足总权最小的二叉树称为最优二叉树。霍夫曼(D A Huffman)给出了一

15、个求最优二叉树的算法,又称霍夫曼树。例:最优检索问题用计算机进行图书分类。现有五类图书共100万册,其中有A类50万册,有B类20万册,C类5万册,D类10万册,E类15万册。问如何安排分检过程,可使总的运算次数最小?算法步骤:1.将s个叶子按权由小至大排序;2.将二个具有最小权的叶子合并成一个分枝点,其权为p1+p2;将新的分枝点作为一个叶子,合并,解:构造一棵具有5个叶子的最优二叉树,其叶子的权分别为50,20,5,10,15. 步骤如下: 1.将5个叶子按权由小到大排序:5,10,15,20,50 2.找出二个最小权的叶子,合并成一个分枝点,其权为15;依次,继续。10301520505

16、0100总权为:5151234分检过程是:先把A类50万册从总数中分检出来,其次将B类20万册分检出来,然后再将E类15万册分检出来,最后再将D、C分检出来。AABBEEDCDNYNYNYNY8.3最短路问题最短路问题有些问题,如选址、管道铺设时的选线、设备更新、投资、某些整数规划和动态规划的问题,也可以归结为求最短路的问题。因此这类问题在生产实际中得到广泛应用。求最短路有两种算法,一是求从某一点至其它各点之间最短离的狄克斯屈拉(Dijkstra)算法;另一种是求网图上任意两点之间最短的矩阵算法。最短路问题,就是从给定的网络图中找出一点到各点或任意两点之间距离最短的一条路 .渡河问题渡河问题

17、一老汉带了一只狼、一只羊、一棵白菜想要从南岸过河到北岸,河上只有一条独木舟,每次除了人以外,只能带一样东西;另外,如果人不在,狼就要吃羊,羊就要吃白菜,问应该怎样安排渡河,才能做到既把所有东西都运过河去,并且在河上来回次数最少?这个问题就可以用求最短路方法解决。设:M人 W狼 S羊 V白菜渡河方案共有10种,构造如下一个图,每条边的距离为1,问题变为求一条从MWSV到的最短路。北岸南岸狄克斯屈拉狄克斯屈拉(Dijkstra)标号算法标号算法点标号:b(j) 起点vs到点vj的最短路长;边标号:k(i,j)=b(i)+dij,步骤:1.令起点的标号;b(s)0。先求有向图的最短路,设网络图的起点

18、是vs,终点是vt ,以vi为起点vj为终点的弧记为(i,j),距离为dij 2.找出所有vi已标号vj未标号的弧集合 B= (i,j) 如 果这样的弧不存在或vt已标号则计算结束;3.计算集合B中弧k(i,j)=b(i)+dij的标号4.选一个点标号 返回到第2步。【例例】求下图v1到v7的最短路长及最短路线86252353421057086225441114751071211v7已标号,计算结束。从v1到v7的最短路长是 11最短路线是:v1 v4 v6 v7无向图最短路的求法无向图最短路的求法无向图最短路的求法只将上述步骤2改动一下即可。点标号:b(i) 起点vs到点vj的最短路长;边标

19、号:k(i,j)=b(i)+dij,步骤:1.令起点的标号;b(s)0。3.计算集合B中边标号:ki,j=b(i)+dij4.选一个点标号: 返回到第2步。 2.找出所有一端vi已标号另一端vj未标号的边集合 B= i,j 如果这样的边不存在或vt已标号则计算结束;【例例】求下图v1到各点的最短路及最短距离4526178393261216180452231039612641166188122482418所有点都已标号,点上的标号就是v1到该点的最短距离,最短路线就是红色的链。有有负权的负权的最短路算法最短路算法假设图中没有负回路。如下图是一条负回路,最短路权无下界。322当vi到vj之间没有弧

20、连接时,令lij列表迭代计算:设vs到vj经过vi到达vj,则vs到vj的最短距离为:迭代:【例例】求下图v1到v8的最短路长及最短路线v1v3v4v5v2v6v7v8567-22-3-32444-13l lij ijv v1 1v v2 2v v3 3v v4 4v v5 5v v6 6v v7 7v v8 8k k=1=1k k=2=2k k=3=3k k=4=4K=5K=5v v1 10 02 25 5 3 30 00 0v v2 20 02 24 42 2v v3 30 06 65 5v v4 44 40 0-3-3v v5 50 0v v6 6- 3- 30 04 4v v7 77

21、72 20 0v v8 83 31 10 0 min2 min036110 min20366150203361410(表中空格为表中空格为)v1v3v4v5v2v6v7v8567-22-3-32444-130 02 20 0-3-33 36 69 91010l lij ijv v1 1v v2 2v v3 3v v4 4v v5 5v v6 6v v7 7v v8 8k k=1=1k k=2=2k k=3=3k k=4=4K=5K=5v v1 10 02 25 5 3 30 00 00 00 00 0v v2 20 02 24 42 22 22 22 22 2v v3 30 06 65 50

22、00 00 00 0v v4 44 40 0-3-3-3-3-3-3-3-3-3-3v v5 50 06 66 63 33 3v v6 6- 3- 30 04 411116 66 66 6v v7 77 72 20 014149 9v v8 83 31 10 0151510101010采用”反向追踪”的方法找出从v1到v8的最短路.已知已知:P(v1,v8)=10,而,而P(v1,v8)=minP(v1,vi)+li8寻找:寻找:P(v1,v6)+l68=6+4=10记下:记下:v6v8再检查: P(v1,v6)=6寻找:寻找:P(v1,v3)+l36=0+6=6记下:记下:v3v6v8v1v

23、2v3v6v8再检查: P(v1,v3)=0寻找:寻找:P(v1,v2)+l23=2+(-2)=0记下:记下:v2 v3v6v88.4最大流问题最大流问题 许多系统中都涉及到流量问题,例如网络系统中有信息流、公路系统中有车辆流、金融系统中有现金流等等。对于这些包含了流量问题的系统,我们往往需要求出其系统的最大流量。例如,某公路系统的容许通过的最大车辆数,某网络系统的最大信息流量等,以便于对某个系统加以认识并进行管理。 例例 某石油公司建有一个可以把石油从采地输送到不同销售点的管道网络,如下图。由于管道的直径变化,使得各段管道(vi, vj)的最大通过能力(容量)cij也是不一样的,cij的单位

24、为万加仑/小时。要求我们制定一个输送方案,将石油从v1输送到v6,使得输送的石油达到最大 4844122679基本概念基本概念4844122679容量容量:在某时期内弧(i,j)上的最大通过能力。记为C (i,j)或Cij 在上图中,C12=4,C138,C234等,怎样安排运输方案,才能使在某一时期内从v1运到v6的物资最多,这样的问题就是最大流问题,网络中所有流起源于一个叫做发点发点的节点(源) 所有的流终止于一个叫做收点收点的节点其余所有的节点叫做中间点中间点(转运点) 通过每一条弧的流只允许沿着弧的箭头方向流动目标是使得从发点到收点的总流量最大8.4最大流问题最大流问题流量:流量:弧(

25、i,j)的实际通过量,记为f (i,j)或f ij可行流:可行流:如果f ij满足: 1.对于所有弧(i,j)有0f ijCij 则称流量集合f ij为网络的一个可行流,简记为 f 。以下假设网络是一个简单连通图。2.对于中间点点vm有:链链:从发点到收点的一条路线(弧的方向不一定都同向)称为链。从发点到收点的方向规定为链的方向。前向弧:前向弧:与连的方向相同的弧称为前向弧。后向弧后向弧:与连的方向相反的弧称为后向弧。增广链增广链设 f 是一个可行流,如果存在一条从vs到vt的链,满足:1.所有前向弧上fij0则该链称为增广链前向弧后向弧8446952346容量容量流量流量想一想,这是一条增广

26、链吗?【定理定理】设网络G的一个可行流f,如果存在一条从vs到vt的增广链,那么就可改进一个值更大的可行流f1,并且val f1val f【证】设【证】设val fv对改进的可行流f1 :最大流的标号算法最大流的标号算法步骤 1. 找出第一个可行流,例如所有弧的流量fij =02. 用标号的方法找一条增广链 A:发点标号( ,), B:选一个已标号的点 vi ,对于vi的所有未给标号的邻接点,按下列规则处理: 如果是前向弧前向弧并且有fijCij,令j=minCijfij, i,则vj标号(+ vi ,j) 如果是后向弧后向弧vi并且有fj0,令j=minfij, i,则vj标号(- vi ,

27、 j)当收点不能得到标号时,说明不存在增广链,计算结束。当收点已得到标号时,说明已找到增广链。【定理】可行流是最大流当且仅当不存在发点到收点的增广链4. 调整流量 得到新的可行流,去掉所有标号,从发点重新标号寻找增广链,直到收点不能标号为止。3. 依据vi 的第一个标号反向跟踪得到一条增广链; 依据vi 的第二个标号求最小值得到调整量(,+)68441226794220222204(+v1,6)【例例】求下图v1 到v6 的最大流及最大流量【解】1. 通过观察得到初始可行流2.标号3. 得到增广链(+v2,2)(+v2,1)(+v5,1)(+v1,2)j=minCijfij, i(, )684

28、41226795221222304 得到增广链 4.求调整量 5.调整可行流 去掉所有标号,重新标号68441226794220222204(+v1,1)(+v1,6)(+v2,1)(-v4,0)(+v4,1)j=minfij, i68441226796321222305 求调整量 调整可行流 去掉所有标号,重新标号(, )(+v1,6)(-v3,2)(+v2,1)(-v4,0)(+v4,1)68441226796411322306 求调整量 调整可行流 去掉所有标号,重新标号标号不能继续进行,说明不存在从发点到收点的增广链,得到最大流.最大流量最大流量v=6+3=9(, )(+v1,5)(-

29、v3,1)截集截集将图将图G(V,E)的点集分割成两部分的点集分割成两部分称为一个截集,截集中所有弧的容量之和称为截集的截量。68441226796411322306下图所示的截集为68441226796401322106又如下图所示的截集为上图所示的截集为所有截量中此截量最小且等于最大流量,此截集称为最小截集。【定理】最大流量等于最小截集的截量。TheEndofChapter6作业作业:教材教材P285T10.1110.1210.14Exit1.基本概念 容量、流量、可行流、前向弧、后向弧、增广链、 最大流、最大流量、割集、割量、最大流量最小割量 定理2.如何用标号方法求增广链3.怎样求调整量、如何调整流量4.用QSB软件求最大流问题

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号