数学建模图论模型课件.ppt
《数学建模图论模型课件.ppt》由会员分享,可在线阅读,更多相关《数学建模图论模型课件.ppt(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图论模型1.图论基本概念图论基本概念2.最短路径算法最短路径算法3.最小生成树算法最小生成树算法4.遍历性问题遍历性问题5.二分图与匹配二分图与匹配26.网络流问题网络流问题7.关键路径问题关键路径问题8.系统监控模型系统监控模型9.着色模型着色模型1 1、图论的基本概念、图论的基本概念问题问题1(1(哥尼斯堡七桥哥尼斯堡七桥问题问题):): 能否从任一陆地出发通过每座桥恰好一次而能否从任一陆地出发通过每座桥恰好一次而回到出发点?回到出发点?34欧拉指出:欧拉指出: 如果每块陆地所连接的桥都是偶数座,则从任一如果每块陆地所连接的桥都是偶数座,则从任一陆地出发,必能通过每座桥恰好一次而回到出发地
2、陆地出发,必能通过每座桥恰好一次而回到出发地. .5问题问题2(2(哈密顿环球旅行哈密顿环球旅行问题问题):): 十二面体的十二面体的2020个顶点代表世界上个顶点代表世界上2020个城市,个城市,能否从某个城市出发在十二面体上依次经过每个能否从某个城市出发在十二面体上依次经过每个城市恰好一次最后回到出发点?城市恰好一次最后回到出发点?欧拉问题是欧拉问题是“边遍历边遍历”,哈密尔顿问题是,哈密尔顿问题是“点遍历点遍历”6问题问题3(3(四色问题四色问题):): 对任何一张地图进行着色,两个共同边界的国家染不同的颜对任何一张地图进行着色,两个共同边界的国家染不同的颜色,则只需要四种颜色就够了色,
3、则只需要四种颜色就够了. .问题问题4(4(关键路径问题关键路径问题):): 一项工程任务一项工程任务, ,大到建造一座大坝大到建造一座大坝, ,一座体育中心一座体育中心, ,小至组装小至组装一台机床一台机床, ,一架电视机一架电视机, , 都要包括许多工序都要包括许多工序. .这些工序相互约束这些工序相互约束, ,只有在某些工序完成之后只有在某些工序完成之后, , 一个工序才能开始一个工序才能开始. . 即它们之间存在即它们之间存在完成的先后次序关系完成的先后次序关系, ,一般认为这些关系是预知的一般认为这些关系是预知的, , 而且也能够而且也能够预计完成每个工序所需要的时间预计完成每个工序
4、所需要的时间. . 这时工程领导人员迫切希望了解最少需要多少时间才能够完这时工程领导人员迫切希望了解最少需要多少时间才能够完成整个工程项目成整个工程项目, , 影响工程进度的要害工序是哪几个?影响工程进度的要害工序是哪几个? 图的定义 图论中的图论中的“图图”并不是通常意义下的几何图形或物体的形并不是通常意义下的几何图形或物体的形状图状图, , 而是以一种抽象的形式来表达一些确定的事物之间的联而是以一种抽象的形式来表达一些确定的事物之间的联系的一个数学系统系的一个数学系统. . 定义定义1 一个有序二元组一个有序二元组(V, E ) 称为一个称为一个图图, 记为记为G = (V, E ), 其
5、中其中 V称为称为G的顶点集的顶点集, V , 其元素称为其元素称为顶点顶点或或结点结点, 简称简称点点; E称为称为G的边集的边集, 其元素称为其元素称为边边, 它联结它联结V 中的两个点中的两个点, 如如果这两个点是无序的果这两个点是无序的, 则称该边为则称该边为无向边无向边, 否则否则, 称为称为有向边有向边. 如果如果V = v1, v2, , vn是有限非空点集是有限非空点集, 则称则称G为为有限图有限图或或n阶图阶图. 8 如果如果E的每一条边都是无向边的每一条边都是无向边, 则称则称G为为无向图无向图( (如图如图1)1); 如如果果E的每一条边都是有向边的每一条边都是有向边,
6、则称则称G为为有向图有向图( (如图如图2)2); 否则否则, 称称G为为混合图混合图. 图图1 1 图图2 2并且常记并且常记: : V = v1, v2, , vn, |V | = n ;E = e1, e2, , em(ek=vivj ) , |E | = m.称点称点vi , vj为边为边vivj的的端点端点. 在有向图中在有向图中, 称点称点vi , vj分别为边分别为边vivj的的始点始点和和终点终点. 该图称为该图称为(n,m)图图9 对于一个图对于一个图G = (V, E ), 人们常用图形来表示它人们常用图形来表示它, 称称其为其为图解图解. 凡是有向边凡是有向边, 在图解上
7、都用箭头标明其方向在图解上都用箭头标明其方向. 例如例如, 设设V = v1 , v2 , v3 , v4, E = v1v2 , v1v3 , v1v4 , v2v3 , v2v4 , v3v4, 则则G = (V, E ) 是一个有是一个有4个顶点和个顶点和6条边的图条边的图, G的图解如下图所示的图解如下图所示. 10 一个图会有许多外形不同的图解一个图会有许多外形不同的图解, , 下面两个图表示同一个图下面两个图表示同一个图G = (V, E )的图解的图解. .这两个图互为这两个图互为同构图同构图, ,今后将不计较这种外形今后将不计较这种外形上的差别上的差别, ,而用一个容易理解的、
8、确定的图解去表示一个图而用一个容易理解的、确定的图解去表示一个图. . 11 有边联结的两个点称为有边联结的两个点称为相邻的点相邻的点, 有一个公共端点的边称为有一个公共端点的边称为相相邻边邻边. 边和它的端点称为边和它的端点称为互相关联互相关联. 常用常用d(v)表示图表示图G中与顶点中与顶点v关联关联的边的数目的边的数目, d(v)称为顶点称为顶点v的的度数度数. 对于有向图对于有向图,还有还有出度出度和和入度入度之之分分. 用用N(v)表示图表示图G中所有与顶点中所有与顶点v相邻的顶点的集合相邻的顶点的集合. d(v1)= d(v3)= d(v4)=4, d(v2)=2dout(v1)=
9、 dout (v3)= dout (v4)=2, dout(v2)=1din(v1)= din(v3)= din(v4)=2, din(v2)=112握手定理握手定理:无向图中,所有结点的度数之和等于2m。右图:推论1:无向图中必有偶数个度数为奇数的结点。推论2:有向图中所有结点的出度之和等于入度之和。d(v1)= d(v3)= d(v4)=4, d(v2)=2mvdnii2)(1147*2)(1niivd我们今后只讨论有限简单图: (1) (1) 顶点个数是有限的顶点个数是有限的; (2) (2) 任意一条边有且只有两个不同的点与它相互关联任意一条边有且只有两个不同的点与它相互关联; (3)
10、 (3) 若是无向图若是无向图, , 则任意两个顶点最多只有一条边与之相则任意两个顶点最多只有一条边与之相联结联结; (4) (4) 若是有向图若是有向图, , 则任意两个顶点最多只有两条边与之相则任意两个顶点最多只有两条边与之相联结联结. . 当两个顶点有两条边与之相联结时,这两条边的方向当两个顶点有两条边与之相联结时,这两条边的方向相反相反. . 如果某个有限图不满足如果某个有限图不满足(2)(3)(4),(2)(3)(4),可在某条边上增设顶点可在某条边上增设顶点使之满足使之满足. .14 定义定义2 若将图若将图G的每一条边的每一条边e都对应一个实数都对应一个实数F (e), 则称则称
11、F (e)为该边的为该边的权权, 并称图并称图G为为赋权图赋权图(网络网络), 记为记为G = (V, E , F ). 定义定义3 任意两点均有通路的图称为任意两点均有通路的图称为连通图连通图. 定义定义4 连通而无圈的图称为连通而无圈的图称为树树, 常用常用T表示树表示树. 常用的图给定图G= 和 G = 是两个图,如果有 V V 和 E E,则称图G是图 G 的子图。若V =V 称图G是图 G 的生成子图;若将图G的每一条边e都对应一个实数F(e),则称F(e)为该边的权,并称图G为赋权图(网络), 记为G = 。任意两点均有通路的图称为连通图。连通而无圈的图称为树,常用T=表示树。 若
12、图G是图 G 的生成子图,且G又是一棵树,则称G是图G 的生成树。例 Ramsey问题问题:任何6个人的聚会,其中总会有3个互相认识或3人互相不认识。图论模型:用红、蓝两种颜色对6个顶点的完全图K6的边进行任意着色,则不论如何着色必然都存在一个红色的K3或一个蓝色的K3 。对应关系:每个人即为一个结点;人与人之间的关系即为一条边例 Ramsey问题图论证明:用红、蓝两种颜色对K6的边进行着色,K6的任意一个顶点均有5条边与之相连接,这5条边必有3条边的颜色是相同的,不妨设为蓝色(如图)与这3条边相关联的另外3个节点之间的3条边,若都为红色,则形成红色的K3;若另外3个节点之间的3条边有一条为蓝
13、色,则与上面的蓝色边形成蓝色的K3;因此必然存在一个红色的K3或一个蓝色的K3 。例 Ramsey问题Ramsey数:R(3,3)=6;R(3,4)=9;。18例 过河问题问题:一摆渡人欲将一只狼、一头羊、一篮菜从河西渡过河到河东。由于船小,一次只能带一物过河,并且狼与羊,羊与菜不能独处,给出渡河方法。这里显然不能用一个节点表示一个物体。一个物体可能在河东,也可能在河西,也可能在船上,状态表示不清楚。另外,问题也可以分成几个小问题,如:问题是否能解?有几种不同的解法?最快的解决方案是什么?例 过河问题解:解:用四维0-1向量表示(人,狼,羊,菜)在河西岸的状态(在河西岸则分量取1,否则取0),
14、共有24 =16 种状态。在河东岸的状态类似记作。由题设,状态(0,1,1,0),(0,0,1,1),(0,1,1,1)是不允许的;其对应状态:(1,0,0,1), (1,1,0,0),(1,0,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,
15、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)河西河西=(人人,狼狼,羊羊,菜菜) 河东河东=(人人,狼狼,羊羊,菜菜) 将10个顶点分别记为A1, A2, , A10 , 从图中易得到两条路:A1 A6 A3 A7 A2 A8 A5 A10;A1 A6 A3 A9 A4 A8 A5 A10.问题的转换: 过河问题是否能解?即:图中A1到A10是否连通? 有几种不同的解法?即: A1到A10之间有多少条不同的路径? 最快的解决方案是什
16、么?即: A1到A10最短路径有哪些?图的矩阵表示图的矩阵表示 邻接矩阵:邻接矩阵:邻接矩阵表示了点与点之间的邻接关邻接矩阵表示了点与点之间的邻接关系系. .一个一个n阶图阶图G的邻接矩阵的邻接矩阵A = (aij )nn , 其中其中 ., 0;, 1EvEvaijijij0101100101001010A2223无向图无向图G的邻接矩阵的邻接矩阵A是一个对称矩阵是一个对称矩阵. . 0101101101011110A 权矩阵权矩阵 一个一个n阶赋权图阶赋权图G = (V, E, F)的权矩阵的权矩阵A = (aij ) nn , 其中其中 .,;0),(EvjiEvvvFaijijjiij
17、有限简单图基本有限简单图基本上可用权矩阵来上可用权矩阵来表示表示. .2405420370860A无向图无向图G的权矩阵的权矩阵A是一个对称矩阵是一个对称矩阵. . 02420737064360A25 关联矩阵:关联矩阵:一个有一个有m条边的条边的n阶有向图阶有向图G的关联的关联矩阵矩阵A = (aij )nm , 其中其中 若若vi是是ej的始点的始点;若若vi是是ej的终点的终点;若若vi与与ej不关联不关联. ., 0, 1, 1ija 有向图的关联矩阵每列的元素中有且仅有一个有向图的关联矩阵每列的元素中有且仅有一个1,1,有且仅有且仅有一个有一个 - - 1. 1. 110110001
18、1011000000111011001A26 一个有一个有m条边的条边的n阶无向图阶无向图G的关联矩阵的关联矩阵A = (aij )nm , 其中其中 若若vi与与ej关联关联;若若vi与与ej不关联不关联. ., 0, 1ija 无向图的关联矩阵每列的元素中有且仅有两个无向图的关联矩阵每列的元素中有且仅有两个1. 1. 110100101010011001000111A2 2、最短路径算法 定义定义1 设设P(u, v) 是赋权图是赋权图G = (V, E , F) 中从点中从点u到到v的路径的路径, 用用E(P) 表示路径表示路径P(u, v)中全部边的集合中全部边的集合, 记记)()()
19、(PEeeFPF则称则称F (P)为路径为路径P(u, v) 的的权权或或长度长度( (距离距离) ). 定义定义2 若若P0 (u, v) 是是G 中连接中连接u, v的路径的路径, 且对任意在且对任意在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的最短路的最短路. 即:最短路是一条路,且最短路的任一段也是最短路即:最短路是
20、一条路,且最短路的任一段也是最短路. 求非负赋权图求非负赋权图G中某一点到其它各点最短路,一般用中某一点到其它各点最短路,一般用Dijkstra标号算法;求非负赋权图上任意两点间的最短路,一般用标号算法;求非负赋权图上任意两点间的最短路,一般用Floyd算法算法. . 这两种算法均适用于有向非负赋权图这两种算法均适用于有向非负赋权图. . 下面分别介绍两种算法的基本过程下面分别介绍两种算法的基本过程. .Dijkstra算法指标(a为起点) 设T为V的子集,P=V-T且aT,对所有tT,设 l(t)表示从a到t的所有通路中距离最短的一条的长度,且这条路径中不包含T中其他的结点,则称l(t)为t
21、关于集合P的指标,若不存在这样的路径,这记l(t)= 注:l(t)不一定是从a到t的最短路径,因为最短路径中可能包含T中其他的节点。定理1 若t是T中关于P由最小指标的结点,则l(t)是a和t之间的最短距离。定理2 设 T为V的子集,P=V-T,设 (1)对P中的任一点p,存在一条从a到p的最短路径,这条路径仅有P中的点构成, (2)对于每一点t,它关于P的指标为l(t),令x为最小指标所在的点, 即: (3)令P=P Ux,T=T-x,l(t)表示T中结点t关于P的指标,则 29),()(),(min)( txwxltltlTttlxl),(min)(Dijkstra算法(求a点到其他点的最
22、短路径)1、初始化,、初始化,P=a,T=V-a,对每个结点,对每个结点t计算指标计算指标 l(t)=w(a,t) 2、设、设x为为T中关于中关于P有最小指标的点有最小指标的点, 即即:l(x)=min(l(t) (tT), 3、若、若T=,则算法结束则算法结束; 否则否则,令令P=P Ux,T=T-x 按照公式按照公式l(t)=minl(t),l(x)+w(x,t), 计算计算T中每一个结点中每一个结点t关于关于P的指标的指标. 4、P代替代替P,T代替代替T,重复步骤重复步骤2,3 ( 其中:其中:w(x,y)为图的权矩阵)为图的权矩阵) 30改进Dijkstra算法(求a点到其他点的最短
23、路径)1、初始化,、初始化,P=a,T=V-a,对每个结点,对每个结点t计算指标计算指标 l(t)=w(a,t) ,pro(t)=a;2、设、设x为为T中关于中关于P有最小指标的点有最小指标的点, 即即:l(x)=min(l(t) (tT);3、若、若T=,则算法结束则算法结束; 否则否则,令令P=P Ux,T=T-x 按照公式按照公式l(t)=minl(t),l(x)+w(x,t), 计算计算T中每一个结点中每一个结点t关于关于P的指标的指标. 若若 l(x)+w(x,t) l(t), pro(t)=x;4、P代替代替P,T代替代替T,重复步骤重复步骤2,3 ( 其中:其中:w(x,y)为图
24、的权矩阵)为图的权矩阵) 31例 求下图中A A点到其他点的最短路. .32Floyd算法(求任意两点的最短路径) 设设A = (aij )nn为赋权图为赋权图G = (V, E, F)的权矩阵的权矩阵, dij表表示从示从vi到到vj点的距离点的距离, rij表示从表示从vi到到vj点的最短路中前一个点的最短路中前一个点的编号点的编号. 赋初值赋初值. 对所有对所有i, j, dij = aij, rij = j. k = 1. 转向转向. 更新更新dij , rij . 对所有对所有i, j, 若若dik + dk jdij , 则令则令dij = dik + dkj , rij = k,
25、 转向转向; 终止判断终止判断. 若若k = n终止终止; 否则令否则令k = k + 1, 转向转向. 最短路线可由最短路线可由rij得到得到. 例 求下图中任意两点间的最短路. .3403030350201502051504510500A028338235803065508525035205540150352053015035452510450D533333143333113111133230142212142220R例 设备更新问题 某企业每年年初某企业每年年初, ,都要作出决定都要作出决定, ,如果继续使用旧设备如果继续使用旧设备, ,要付要付维修费;若购买一台新设备维修费;若购买一台
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 模型 课件
限制150内