图论与网络规划ppt课件.ppt
《图论与网络规划ppt课件.ppt》由会员分享,可在线阅读,更多相关《图论与网络规划ppt课件.ppt(141页珍藏版)》请在三一办公上搜索。
1、第十章 图论与网络优化,1 图的基本概念,2 最小树问题,3 最短路问题,4 网络最大流问题,5 最小费用最大流问题,一 些 问 题,图论中著名问题. 1736年,图论的创始人Euler巧妙地将此问题化为图的不重复一笔画问题,并证明了该问题不存在肯定回答,发表了第一篇论文.,例:七桥问题,问题:一个散步者能否走过七座桥,且每座桥只走 过一次,最后回到出发点。,例:四色猜想,能否用四种颜色给地图染色,使相邻的国家有不同的颜色。,点:国家;边:两个国家有公共边界。,问题:能否用四种颜色给平面图的点染色,使有公共边的点有不同的颜色。,公元1852年,格里斯发现无论多么复杂的地图,只要用四种颜色就能将
2、相邻的区域区分开来,这就是所谓“四色猜想”。直到公元1976年,才由美国数学家同时操作三台超大型汁算机作了近200亿个逻辑判断,花费1200个机时,才取得了“四色猜想”的证明。,例:Hamilton图,游戏:用正十二面体上20个顶点表示20个城市,要求参加游戏者沿着各边行走,走遍每一个城市且仅走一次,最后回到出发城市。,公元1859年,哈密尔顿(Hamilton)在给朋友格拉伍斯(Grares)的信中提出了这个游戏。问题:如何判断一个图是否具有这样的性质。如果有,这样的行走路线如何确定。,例:中国邮路问题,一个邮递员送信,要走完他所负责的全部街道分送信件,最后返回邮局。邮递员都会本能地以尽可能
3、少的行程完成送信任务。如何走路线最短。,点:路口;边:两路口之间道路,第i条道路长ei。,1962年,由我国数学家管梅谷提出,国际上称为中国邮递员问题。问题:求一个圈,过每边至少一次,并使圈的长度最 短。,例:有甲、乙、丙、丁、戊五个球队,各队之间比赛 情况如表:,点:研究对象(陆地、路口、国家、球队);,点间连线:对象之间的特定关系(陆地间有桥、路 口之间道路、两国边界、两球队比赛及 结果)。,对称关系:桥、道路、边界;,用不带箭头的连线表示,称为边。,非对称关系:甲队胜乙队,用带箭头的连线表示, 称为弧。,图:点及边(或弧)组成。,实际生活中,人们经常用“图”来表示一些对象以及这些对象之间
4、的特定关系。,如公路或铁路交通图、管网图、通讯联络图等。,对所要研究的问题确定具体对象及这些对象间的性质关系,并用图的形式表示出来,这就是对所研究原问题建立的模型。图是反映对象之间关系的一种工具。,这里所研究的图与平面几何中的图不同。这里只关心图中有多少个点,点与点之间有无连线,至于连线的方式是直线还是曲线,点与点的相对位置如何,都是无关紧要的。是组合意义下的图。图的理论和方法,就是从形形色色的具体的图以及与它们相关的实际问题中,抽象出共同性的东西,找出其规律、性质、方法,再应用到解决实际问题中去。,图论(Graph Theory)是运筹学中的一个重要分支,主要研究具有某种二元关系的离散系统的
5、组合结构和性质。随着电子计算机的蓬勃发展,图论不仅得到了迅速发展,而且应用非常广泛。它直观清晰,使用方便,易于掌握。应用领域:物理学、化学、控制论、信息论、管理科学、通信系统、交通运输系统、建筑、计算机科学、生产工艺流程以及军事后勤保障系统等的问题常用图论模型来描述。网络规划是图论与线性规划的交叉学科,具有广泛的应用背景,比如,最短路问题、最小树问题、最大流问题、最优匹配问题等.,10.1 图的基本概念,一个图(Graph) 定义为三元有序组G=(V(G), E(G), G ),V(G)是图的顶点集合,E(G)是图的边集合,G称为顶点与边之间的关联函数。 V(G)中的元素 vi 称为顶点,E(
6、G)中的元素 ek 称为边.一个图习惯记作 G=(V, E).,当V, E为有限集合时,G称为有限图,否则,称为无限图.,我们只讨论有限图.,一、基本概念,.图,设G是一个图,G=(V(G),E(G),,则称e 连接u和v,称u和v是e的端点.,若,称端点u,v与边e是关联的,称两个顶点u,v是邻接(相邻)的.两条边e, e1有公共端点v,则称e, e1相邻.,一个图可用一个几何图形表示,称为图的几何实现,其中每个顶点用点表示,每条边用连接端点的线表示。图的几何实现有助与我们直观的了解图的许多性质.,设G是一个图,,G的几何实现,其中:,例,说明,一个图的几何实现并不是唯一的;表示顶点的点和表
7、示边的线的相对位置并不重要,重要的是图形描绘出边与顶点之间保持的相互关系。我们常常把一个图的图形当作这个抽象图自身. 并称图形的点为顶点,图形的线为边.图论中大多数概念是根据图的表示形式提出的,例如:顶点、边、多重边、环、路、圈、树等。,在一个图的几何实现中,两条边的交点可能不是图的顶点。例如,有时也用 m(G)=|E| 表示图 G 中的边数,用 n(G)=|V| 表示图 G 中的顶点个数,简记为m, n.,图 G 中的点数记为 p(G),边数记为q(G) .在不引起混淆的情况下,简记为 p, q.此时,图 G 可以表示为G = ( p, q ).,平面图,一个图称为平面图,如它有一个平面图形
8、,使得边与边仅在顶点相交。下图就是一个平面图:,非平面图,环、多重边,端点重合为一点的边称为环。连接同一对顶点的多条边称为多重边。,简单图,一个图称为简单图,如果它既没有环也没有多重边.含有多重边的图称为多重图.我们只讨论有限简单图,即顶点集与边集都是有限的图。,只有一个顶点的图称为平凡图;,边集是空集的图称为空图。,完全图K n,完全图是每一对不同顶点都恰有一边的简单图;具有 n 个顶点的完全图记为K n.,二分图(X, Y; E),二分图是一个简单图,其顶点集合可分划成两个子集X与Y,使得每条边的一个端点在X,另一个端点在Y; (X,Y)也称为图的二分划。,完全二分图,K3,3,完全二分图
9、是具有二分划(X,Y)的二分图,并且X的每个顶点与Y的每个顶点都相连。完全二分图记为Km,n,X:,Y:,特殊图例,都是极小的非平面图.,K5,K3,3,2.顶点的度(次),称度为奇数的顶点为奇点;,称度为偶数的顶点为偶点.,设G是一个图,G=(V(G), E(G), G),定义图G的顶点 v 的度为与顶点v相关联的边数,记作d(v).,定理设G是一个图,则,推论:图中奇点的数目为偶数。,度为1的点称为悬挂点,连结悬挂点的边称为悬挂边.度为0的点称为孤立点。,3.子图,有两个图G和H,如果,称图H是图G的子图,记为,若,且,称H是G的真子图。,称H是G的支撑子图(或生成子图).,如果 ,,e1
10、,e3,e2,G,v3,v4,v5,v2,v1,H1: 真子图,v3,v5,v2,v1,H2:支撑子图,e1,e3,e2,v3,v4,v5,v2,v1,顶点导出子图,设W是图G的一个非空顶点子集,以W为顶点集,以二端点均在W中的边的全体为边集的子图称为由W导出的G的子图,简称导出子图,记为GW。导出子图GV- W记为G-W,即,它是从G中删除W中顶点以及与这些顶点相关联的边所得到的子图。,e1,e3,e2,G,v3,v4,v5,v2,v1,e3,e2,v3,v4,v2,Gv2 ,v3 ,v4 ,G-v1 ,v5 ,边导出子图,设F是图G的非空边子集,以F为边集,以F中边的端点全体为顶点集所构成
11、的子图称为由F导出的G的子图,简称G的边导出子图。记为GF。记 G-F 表示以 E(G)F 为边集的G的支撑子图,它是从G中删除F 中的边所得到的子图。,如F= e ,则记,e1,e3,e2,G,v3,v4,v5,v2,v1,Ge1 ,e2 ,e3 ,G - e1,e1,e3,e2,v3,v4,v2,v1,4.图的并与交,设G1与G2都是图G的子图;若 ,则称G1与G2不相交;若 ,则称G1与G2边不重的。定义图G1与G2的和,记为,是G的一个子图,其顶点集为 ,边集为 若G1与G2是不相交的,则记。类似的可以定义G1与G2的交 ,此时要求,同构,给定两个图,如果存在两个一一对应的关系,使的,
12、称G和H是同构的,记为,同构图例,G,H,e6,e4,e2,e1,e3,e5,f1,f2,f6,f3,f5,f4,v1,v2,v3,v4,u1,u2,u3,u4,径,顶点vk叫W的终点,顶点v0 称为W的起点, 顶点vi 叫W的内部顶点(内点), 整数k称为W的长度。 在简单图中,径可由顶点序列表示。,图G的一个有限的点边交错序列称为从v0到vk的径;,其中vi 与vi+1是边ei的顶点;,5. 连通性,链、路,如果径W 的边各不相同,则称W为一条链,,如果W 顶点互不相同,则称W 是一条路。,链长是W 中边的个数 k.,记路长,链:w c x d y h w b v g y路:x c w h
13、 y e u a v,圈(回路),如果径 W 的起点和终点相同且有正长度,则称它是一个闭径;如果一条闭链的顶点互不相同,则称它是一个圈(或回路)。称一个圈是偶圈(奇圈),如果它的圈长是偶数(奇数)。,圈:u a v b w h y e u,a,b,d,e,f,g,h,c,u,v,y,x,w,定理:一个图是二分图当且仅当图中不存在奇圈.,连通性,图G称为连通的,如果G的任意两个顶点u 和 v 中存在一条(u,v)路。,不连通图(分离图)至少有两个连通分支。,用w 表示G的连通分支数。,一个连通图称为一个连通分支。,割集:删除掉连通图中的若干条必要的边后,使得图不连通,则这些边的集合称为图的一个割
14、集.,割边:删除掉这条边后图G不连通。,割点:删除掉这个点后图G不连通。,Euler圈,Euler圈是指过所有边一次且恰好一次的闭链。Euler链是指过所有边一次且恰好一次的链。,Euler链:y d x c w h y e u a v f y g v b w,Euler圈:所有的顶点度数为偶数。Euler链:除了两个顶点度数为奇数,其余为偶数.,Euler 型(Euler 图),定理设G是连通图,则G是Euler 型的充要条件是G没有奇次数的顶点。推论设G是一个连通图,则G有Euler 链当且仅当G最多有两个奇数次数的顶点。,如果图G包含一条Euler圈,则称G是Euler型的.,Hamil
15、ton 型(Hamilton 图),Hamilton路是指包含G的每个顶点的一条路。Hamilton圈是指包含G的每个顶点的一个圈。,如果图G包含一条Hamilton圈,则称G是Hamilton型的.,6. 赋权图,对图G的每条边e,赋予一实数w(e),称为边e的权,可得一赋权图(网络)。定义赋权图 G 的权为 G 的所有边权的总和。赋权图中一条路的权称为路长。,7. 有向图,图G的每条边如果有方向,称为有向图。有向图的边称为有向弧(简称弧),用ai 表示.有向图的各弧用边对应替换后所得的无向图称为该有向图的基础图。度:出度、入度相应的可以定义有向图的路、圈、连通性、有向网络等。,1. 邻接矩
16、阵,设G是一个图,G=(V(G),E(G),G),定义图G的邻接矩阵A(G) =(aij)为 nn 矩阵, 其中aij为连接vi与vj的边数。,二、图的矩阵表示,2. 关联矩阵,取值可能为0、1、2。,设G是一个图,G=(V(G),E(G),G),定义图G 的关联矩阵M(G) =(mij)为nm矩阵, 其中mij为vi与ej的关联次数。,注,关联矩阵和邻接矩阵统称图的矩阵表示。,图的邻接矩阵比它的关联矩阵小的多,因而图常常以其邻接矩阵的形式存贮于计算机中。,例,2,2,2,2,2,2,2,4+3+3+4=14=27,关联矩阵性质,图G的关联矩阵M=(mij)为mn矩阵;则每行元素之和等于相应顶
17、点的度;每列元素之和等于2.,因此,图G的关联矩阵M所有元素之和既等于所有顶点的度之和,又等于边数的2倍。,10.2 树,一、树的概念和性质二、图的支撑树三、最小支撑树,一、树的概念和性质,树是图论中结构最简单但又十分重要的图。,例 某企业的组织结构可用下图表示.,树(tree)是一个不包含圈的简单连通图。树中度为1的点称为树叶,度大于1的点称为分枝点.具有k个连通分支的不包含圈的图称为k-树,或森林.下图列出了具有六个顶点的不同构的树。从中可以看出,图中的每棵树都只有5条边,并且至少有2个顶点的次数是1。,树的性质,设G是一个简单图, ,则下列六个命题是等价的.G是一棵树。G无圈且 m =
18、n-1。G连通且 m = n-1。G连通并且每条边都是割边。G中任意两点都有唯一的路相连。G无圈,但在任意一对不相邻的顶点之间加连一条边,则构成唯一的一个圈。,二、图的支撑树(生成树),若图G的支撑子图是一棵树,则称该树为图G的支撑树(生成树)。或简称为图G的树.支撑树也称为连通图的极小连通支撑子图。图G有支撑树的充要条件为G是连通图.很显然,一个连通图只要本身不是一棵树,它的支撑树就不止一个。,图的支撑树的求法,寻找图的支撑树的方法有两种:破圈法、避圈法.,破圈法:在图G中任意取一个圈,从圈上任意去掉一条边,将这个圈破掉。重复这个步骤直到不含圈为止,所得图即为支撑树。,v1,v2,v4,v5
19、,v3,避圈法:在给定的图G中,每步选出一条边,使它与已选边不构成圈,直到选够n-1条边为止。,按照边的选法不同,可分为两种:深探法,广探法.,深探法:,避圈法:在给定的图G中,每步选出一条边,使它与已选边不构成圈,直到选够n-1条边为止。,按照边的选法不同,可分为两种:深探法,广探法.,广探法:,设G是一个赋权图,T为G的一个支撑树。定义T的权为:G中权最小的支撑树称为G的最小支撑树(最小树).,三、最小支撑树问题,许多网络问题都可以归结为最小树问题。例如:设计长度最小的公路网把若干城市联系起来;设计用料最省的电话线网把有关单位联系起来等.,下面介绍求最小树的两种算法.,Step0 把边按权
20、的大小从小到大排列得: 置 Step1 若 ,则停,此时GS即为所 求的最小树;否则,转向Step2。Step2 如果 GS+e j不构成回路,则令 转向Step1;否则,令j=j+1转向Step2。,算法1:Kruskal算法(类似于广探法)(1965),思想:开始选一条权最小的边,以后每一步,总从未选的边中选一条权最小的边,使它与已选边不构成圈.,算例1:,利用Kruskal算法求最小树。,评注,Kruskal算法的总计算量为 ,有效性不太好。求最小树的一个好的算法是Dijkstra于1959年提出的,算法的实质是在图的 个独立割集中,取每个割集的一条极小边来构成最小树。,算法2:Dijk
21、stra算法(类似于深探法),Step0 置Step1 取 置 Step2 若 ,则停止;否则,置 ,返回Step1.,算例2:,利用Dijkstra算法求最小树。,算法3:破圈法,破圈法是Dijkstra算法的对偶算法。最适合于图上作业。尤其是当图的顶点数和边数比较大时,可以在各个局部进行。Step1 若G不含圈,则停止;否则在G中找一个 圈C,取圈C中权值最大的一条边e .Step2 置 G = G - e ,返回Step1。,算例3:,利用破圈法求最小树。,1,2,2,4,4,3,4,2,v1,v2,v4,v5,v3,最小连接问题,作为最小树的应用问题之一是所谓的连接问题:欲建造一个连接
22、若干城镇(矿区或工业区)的铁路网,给定城镇i和j之间直通线路的造价为 cij ,试设计一个总造价最小的铁路运输图。把每个城镇看作是具有权cij的赋权图G的一个顶点。显然连接问题可以表述成:在赋权图G中,求出具有最小权的支撑树。,10.3 最短路问题,最短路问题是网络理论中应用最广泛的问题之一.许多优化问题可以使用这个模型如设备更新、管道铺设、线路安排、厂区布局等.我们曾介绍了最短路问题的动态规划解法,但某些最短路问题(如道路不能整齐分段者)构造动态规划方程比较困准、而图论方法则比较有效。,最短路问题:在一个赋权图G上,给定两个顶点u和 v,在所有连接顶点u和 v 的路中,寻找路长最短的路(称为
23、u和 v最短路.) u和 v最短路的路长也称为u和 v的距离-d(u,v).,有些最短路问题也可以求网络中某指定点到其余所有结点的最短路、或求网络中任意两点间的最短路.,一、网络无负权的最短路,本算法由Dijkstra于1959年提出,可用于求解指定两点间的最短路,或从指定点到其余各点的最短路,目前被认为是求无负权网络最短路问题的最好方法。算法的基本思路基于以下原理:若序列vs ,v1 ,vn是从vs到vn的最短路,则序列vs ,v1 ,vn-1必为从vs到vn-1的最短路。,Dijkstra算法,Dijkstra算法基本思想,Dijkstra算法的基本思想是从vs出发,逐步地向外探寻最短路,
24、采用标号法。执行过程中,与每个点对应,记录下一个数(称为这个点的标号),它或者表示从vs到该点的最短路长(称为P标号),或者是从vs到该点的最短路长的上界(称为T标号)。算法每一步都把某个顶点的T 标号改为P 标号, 当终点vt 得到 P 标号时,计算结束。最多n-1步。,计算实例:,求连接 vs、vt 的最短路.,开始,给vs以 P 标号,P(vs)=0,其余各点给 T 标号 T(vi)=+.,Step 1:,迭代 1,Dijkstra算法基本步骤:,若 vi 为刚得到 P 标号的点,考虑这样的点 vj : (vi ,vj)E 且vj 为 T 标号。,Step 2:,对vj的T 标号进行如下
25、更改T(vj)=minT(vj),P(vi)+wij,2,4,5,迭代 1,考察vs ,T(v2)=minT(v2),P(vs)+ws2= min+,0+5=5,T(v1)=minT(v1),P(vs)+ws1= min+,0+2=2,比较所有具有 T 标号的点,把最小者改为P 标号,,Step 3:,2,4,5,-,2,迭代 1,全部T标号中,T(v1)最小,令P(v1)=2,记录路径(vs ,v1).,9,4,若 vi 为刚得到 P 标号的点,考虑这样的点 vj : (vi ,vj)E 且vj 为 T 标号。,Step 2:,对vj的T 标号进行如下更改T(vj)=minT(vj),P(v
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 规划 ppt 课件

链接地址:https://www.31ppt.com/p-1930049.html