数学建模图论讲稿.pptx
《数学建模图论讲稿.pptx》由会员分享,可在线阅读,更多相关《数学建模图论讲稿.pptx(122页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图论方法专题图论方法专题一一图的基本概念二二三三最短路问题及其算法四四最小生成树问题五五E图与H图图的矩阵表示六六网络最大流第1页/共122页ABCD哥尼斯堡七桥示意图问题1:七桥问题能否从任一陆地出发通过每座桥恰好一次而回到出发点?数学建模-图论第2页/共122页七桥问题模拟图:ABDC欧拉指出:如果每块陆地所连接的桥都是偶数座,则从任一陆地出发,必能通过每座桥恰好一次而回到出发地。数学建模-图论第3页/共122页问题2:哈密顿圈(环球旅行游戏)十二面体的20个顶点代表世界上20个城市,能否从某个城市出发在十二面体上依次经过每个城市恰好一次最后回到出发点?数学建模-图论第4页/共122页问题
2、3:四色问题 对任何一张地图进行着色,两个共同边界的国家染不同的颜色,则只需要四种颜色就够了。德摩尔根致哈密顿的信(1852年10月23日)我的一位学生今天请我解释一个我过去不知道,现在仍不甚了了的事实。他说如果任意划分一个图形并给各部分着上颜色,使任何具有公共边界的部分颜色不同,那么需要且仅需要四种颜色就够了。下图是需要四种颜色的例子(图1)。数学建模-图论第5页/共122页1847年德国的克希霍夫(G.R.Kirchoff)将树的概念和实践利用于工程技巧的电网络方程组的研究;1857年英国的凯莱(A.Cayley)也提出了树的概念,并运用于有机化合物的分子构造的研究中;1936年匈牙利的数
3、学家哥尼格(D.Konig)写出了第一本图论专著有限图与无穷图的理论,使图论成为一门独立的学科。图论的应用 数学建模-图论第6页/共122页由于管理、军事、交通运输、计算机和通讯网络等方面的大量问题的出现,大大增进了图论的发展。特别是电子计算机的大量应用,使大规模问题的求解成为可能。实际问题如电网络、交通网络、电路设计、数据结构以及社会科学中的问题所涉及到的图形都是很复杂的,需要计算机的辅助才有可能进行分析和解决。目前图论在物理、化学、运筹学、计算机科学、电子学、信息论、经济治理等几乎所有学科领域都有应用。数学建模-图论第7页/共122页 数学建模-图论82023年3月25日 一、图的基本概念
4、一、图的基本概念第8页/共122页92023年3月25日 一、图的基本概念一、图的基本概念 数学建模-图论例:什么是匹配:把上图想象成3男4女搞对象(无同性吸引),连线代表彼此有好感,但最终只能1夫1妻,最终的配对结果连线就就是一个匹配。什么是最大匹配:在有好感的基础上,能够最多发展几对。第9页/共122页 一、图的基本概念一、图的基本概念次数为奇数顶点称为次数为奇数顶点称为奇点奇点,否则称为否则称为偶点偶点。102023年3月25日 数学建模-图论第10页/共122页常用常用d d(v v)表示图表示图G G中与顶点中与顶点v v关联的边的数目关联的边的数目,d d(v v)称为顶点称为顶点
5、v v的度数的度数.与顶点与顶点v v出关联的边的数目称为出关联的边的数目称为出度出度,记作,记作d d +(v v),与顶点与顶点v v入关联的边的数目称为入关联的边的数目称为入度入度,记作,记作d d -(v v)。用用N N(v v)表示图表示图G G中所有与顶点中所有与顶点v v相邻的顶点的集合相邻的顶点的集合.一、图的基本概念一、图的基本概念数学建模-图论第11页/共122页几个基本定理:几个基本定理:一、图的基本概念一、图的基本概念数学建模-图论第12页/共122页 若将图若将图G G的每一条边的每一条边e e都对应一个实数都对应一个实数F F(e e),则称则称F F(e e)为
6、该边的为该边的权权,并称图并称图G G为为赋权图赋权图,记为记为G G=(=(V V,E E,F F ).设设G G=(=(V V,E E)是一个图是一个图,v v0 0,v v1 1,v vk kV V,且且“11i ik k,v vi i1 1 v vi iE E,则称则称v v0 0 v v1 1 v vk k是是G G的一条的一条通路通路.如果通路中没有相同的顶点如果通路中没有相同的顶点,则称此通路为则称此通路为路径路径,简称简称路路.始点和终点相同的路称为始点和终点相同的路称为圈圈或或回路回路.一、图的基本概念一、图的基本概念数学建模-图论第13页/共122页 顶点顶点u u与与v
7、v称为称为连通连通的,如果存在的,如果存在u u到到v v通路,任二顶通路,任二顶点都连通的图称为点都连通的图称为连通图连通图,否则,称为,否则,称为非连通图非连通图。极大。极大连通子图称为连通子图称为连通分图连通分图。连通而无圈的图称为连通而无圈的图称为树树,常用常用T T 表示树表示树.树中最长路的边数称为树的树中最长路的边数称为树的高,高,度数为度数为1 1的顶点的顶点称为称为树叶树叶。其余的顶点称为。其余的顶点称为分枝点分枝点。树的边称为。树的边称为树树枝枝。设设G G是有向图,如果是有向图,如果G G的底图是树,则称的底图是树,则称G G是是有向树有向树,也简称,也简称树树。一、图的
8、基本概念一、图的基本概念数学建模-图论第14页/共122页邻接矩阵(结点与结点的关系)邻接矩阵(结点与结点的关系)关联矩阵(结点与边的关系)关联矩阵(结点与边的关系)路径矩阵(任意两结点之间是否有路径)路径矩阵(任意两结点之间是否有路径)可达性矩阵可达性矩阵直达矩阵直达矩阵 等等等等二、图的矩阵表示二、图的矩阵表示数学建模-图论第15页/共122页1 1 有向图的邻接矩阵有向图的邻接矩阵A=(aij)nn(n为结点数)例例1 1:写出右图的邻接矩阵:写出右图的邻接矩阵:解:二、图的矩阵表示二、图的矩阵表示数学建模-图论第16页/共122页2 2 有向图的权矩阵有向图的权矩阵A=(aij)nn(
9、n为结点数)例2:写出右图的权矩阵:解:二、图的矩阵表示二、图的矩阵表示数学建模-图论第17页/共122页3 有向图的有向图的关联矩阵关联矩阵A A=(aij)nm(n为结点数m为边数)有向图:有向图:无向图:无向图:二、图的矩阵表示二、图的矩阵表示数学建模-图论第18页/共122页例3:分别写出右边两图的关联矩阵解:分别为:二、图的矩阵表示二、图的矩阵表示数学建模-图论第19页/共122页 二、图的矩阵表示4 4 应用实例应用实例 某厂生产一种弹子锁具,每个锁具的钥匙有5个槽,每个槽的高度从1,2,3,4,5,6)中任取一数由于工艺及其它原因,制造锁具时对5个槽的高度有两个限制:(1)至少有
10、3个不同的数;(2)相邻两槽的高度之差不能为5 满足以上条件制造出来的所有互不相同的锁具称为一批我们的问题是如何确定每一批锁具的个数?19941994年全国大学生数学建模竞赛年全国大学生数学建模竞赛B B题题(锁具装箱锁具装箱)中关于中关于锁具总数的问题可叙述如下:锁具总数的问题可叙述如下:数学建模-图论第20页/共122页 该问题用图论中的邻接矩阵解决较为简单易见,该问题用图论中的邻接矩阵解决较为简单易见,令令 x=t-sx=t-s,其中,其中,t t代表相邻两槽高度之差不为代表相邻两槽高度之差不为5 5的锁的锁具数,即:满足限制条件具数,即:满足限制条件(2)(2)的锁具数,的锁具数,s
11、s代表相邻两代表相邻两槽高度之差不为槽高度之差不为5 5且槽高仅有且槽高仅有1 1个或个或2 2个的锁具数,即:个的锁具数,即:满足限制条件满足限制条件(2)(2)但不满足限制条件但不满足限制条件(1)(1)的锁具数的锁具数 我们用图论方法计算我们用图论方法计算t t和和s.s.二、图的矩阵表示(应用实例及解法分析)数学建模-图论第21页/共122页 二、图的矩阵表示(应用实例及解法分析)在在G G中每一条长度为中每一条长度为4 4的道路对应于一个相的道路对应于一个相邻两槽邻两槽高度之差不超过高度之差不超过5 5的锁具,即满足限制条件(的锁具,即满足限制条件(2 2)的锁)的锁具,反之亦然,于
12、是可以通过具,反之亦然,于是可以通过G G的邻接矩阵的邻接矩阵A A来计算来计算t t的的值,具体步骤如下:值,具体步骤如下:构造无向图构造无向图 124356数学建模-图论第22页/共122页 二、图的矩阵表示(应用实例及解法分析)因此,因此,数学建模-图论第23页/共122页又令又令 二、图的矩阵表示(应用实例及解法分析)其中其中y yi i表示满足限制条件表示满足限制条件(2)(2)但不满足限制条件但不满足限制条件(1)(1)且且首位为首位为i i的锁具数的锁具数,(i=1,2,3,4,5,6),i=1,2,3,4,5,6),显然显然y y1 1=y=y6 6,y y2=2=y y4 4
13、=y=y3 3=y=y5 5,于是我们只需要计算于是我们只需要计算y y1 1和和y y2.2.计算计算y y1 1可分别考虑槽高只有可分别考虑槽高只有1 1,1212,1313,1414,1515的的情形若只有情形若只有1 1,这样的锁具效只有,这样的锁具效只有1 1个,个,若只有若只有1 1和和i(i=2,3,4,5)i(i=2,3,4,5),这样的锁具数,这样的锁具数=G=G中以中以1 1和和i i为为顶点,长度为顶点,长度为3 3的道路数,此数可通过的道路数,此数可通过A A的子矩阵的子矩阵A A1i1i计计算得到算得到124356数学建模-图论第24页/共122页 二、图的矩阵表示(
14、应用实例解法分析)事实上,因为事实上,因为 其中其中i=2,3,4,5,i=2,3,4,5,显然显然y y1 1=1+(4+4+4+4-1)=1+(4+4+4+4-1)4=61.4=61.同理,计算同理,计算y y2 2时应考虑槽高只有时应考虑槽高只有2,21,23,24,25,2,21,23,24,25,2626时的情形,类似计算可得时的情形,类似计算可得 y y2 2=1+(4+4+4+4-1)5=76=1+(4+4+4+4-1)5=76 于是,于是,s=612+764=426s=612+764=426,x=6306-426=5880.x=6306-426=5880.该算法既易理解又易操作
15、并且又可扩展该算法既易理解又易操作并且又可扩展数学建模-图论第25页/共122页 二、图的矩阵表示(应用实例及解法分析)公交线路选择问题:公交线路选择问题:在给定某城市公交线路的公交网信息后,在给定某城市公交线路的公交网信息后,求任意两个站点之间的最佳出行路线,包括换乘次数最少、出行求任意两个站点之间的最佳出行路线,包括换乘次数最少、出行时间最短、出行费用最低等。以下图的简化公交网为例来说明。时间最短、出行费用最低等。以下图的简化公交网为例来说明。12345 图中由两条公交线路组成,实线表示第图中由两条公交线路组成,实线表示第一条线路,依次经过站点一条线路,依次经过站点1,3,4,51,3,4
16、,5,虚线表,虚线表示第二条线路,依次经过站点示第二条线路,依次经过站点2,3,52,3,5。首先考虑换乘次数最少的线路选择模型,首首先考虑换乘次数最少的线路选择模型,首先建立直达矩阵如下:先建立直达矩阵如下:数学建模-图论第26页/共122页 二、图的矩阵表示(应用实例及解法分析)12345计算计算A A2 2得到:得到:由于由于A A2 2为非零矩阵,所以任意两站点经为非零矩阵,所以任意两站点经过换乘一次都可到达,由于问题较简单,结过换乘一次都可到达,由于问题较简单,结果显然正确。果显然正确。一般地,比较一般地,比较A=(aA=(aijij),A),A2 2=(a=(a(2)(2)ijij
17、),),A,Ak k=(a(a(k)(k)ijij)中的中的(i,j)(i,j)元够成的向量中第一个非元够成的向量中第一个非零向量的上标即为出行换乘的最少次数。零向量的上标即为出行换乘的最少次数。数学建模-图论第27页/共122页 二、图的矩阵表示(应用实例及解法分析)12345接下来考虑出行时间最短的接下来考虑出行时间最短的模型,建立直达距离矩阵:模型,建立直达距离矩阵:下面利用下面利用FloydFloyd矩阵算法可计算出出行时矩阵算法可计算出出行时间最短的路线。定义间最短的路线。定义T*T=(tT*T=(t(2)(2)ijij),),t t(2)(2)ijij=minmin=minmin1
18、=k=51=k=5ttikik+t+tkjkj,t,tijij,t(2)ij表示表示从站点从站点i i到站点到站点j j的至多换乘一次的最短时间。的至多换乘一次的最短时间。数学建模-图论第28页/共122页 二、图的矩阵表示(应用实例及解法分析)41235利用利用matlabmatlab编写程序如下:编写程序如下:T=0 inf 1 2 3;inf 0 1 inf 2;1 1 0 1 1;2 inf 1 0 1;3 2 1 1 0;n=length(T);T2=zeros(n);for i=1:n for j=1:n T2(i,j)=min(min(T(i,:)+T(:,j),T(i,j);e
19、ndendT2计算结果为:计算结果为:T2=0212220122110112210122110 数学建模-图论第29页/共122页 二、图的矩阵表示(应用实例及解法分析)12345 类似可计算出类似可计算出T T3 3,T T4 4,实际上实际上T T2 2的值已为的值已为出行路线的最短时间,例如出行路线的最短时间,例如T T2 2(2,52,5)=2=2,说明站点说明站点2 2到站点到站点5 5的最短时间为的最短时间为2 2站路时间。站路时间。数学建模-图论第30页/共122页 二、图的矩阵表示(应用实例及解法分析)商人过河问题:商人过河问题:假如有三个商人各带一名随从要过河,只有一假如有三
20、个商人各带一名随从要过河,只有一条船,每次最多只能坐两个人。为安全起见,商人数不能少于随条船,每次最多只能坐两个人。为安全起见,商人数不能少于随从数,否则随从会杀人越货。船过一次河需要从数,否则随从会杀人越货。船过一次河需要5 5分钟,问最短几分钟,问最短几分钟能使他们都过去?分钟能使他们都过去?用邻接矩阵来解决:用邻接矩阵来解决:设设(m,n,(m,n,l)表示左岸商人表示左岸商人m m人,随从人,随从n n人;设人;设(m,n,r)(m,n,r)表示右岸有商人表示右岸有商人m m人,随从人,随从n n人。从左岸到右岸去,所有可人。从左岸到右岸去,所有可能的状态为:能的状态为:v v1 1=
21、(3,3,=(3,3,l),v),v2 2=(3,2,=(3,2,l),v),v3 3=(3,1,=(3,1,l),v),v4 4=(3,0,=(3,0,l),v),v5 5=(2,2,=(2,2,l),),v v6 6=(1,1,=(1,1,l),v),v7 7=(0,3,=(0,3,l),v),v8 8=(0,2,=(0,2,l),v),v9 9=(0,1,=(0,1,l),v),v1010=(3,3,r),=(3,3,r),v v1111=(3,2,r),v=(3,2,r),v1212=(3,1,r),v=(3,1,r),v1313=(3,0,r),v=(3,0,r),v1414=(2,
22、2,r),=(2,2,r),v v1515=(1,1,r),=(1,1,r),v v1616=(0,3,r),=(0,3,r),v v1717=(0,2,r=(0,2,r),),v v1818=(0,1,r).=(0,1,r).数学建模-图论第31页/共122页 二、图的矩阵表示(应用实例及解法分析)V10 v11 v12 v13 v14 v15 v16 v17 v18v1 v2 v3 v4v5v6v7v8v9 渡河可以理解为上面状态的转移,例如状态渡河可以理解为上面状态的转移,例如状态v v1 1渡河一次可渡河一次可以转化为其他状态以转化为其他状态v v1515 v v1717 v v181
23、8,其他状态也易列出。以其他状态也易列出。以V=vV=v1 1,v v2 2,.v,.v1818 为顶点集,当两种状态可以互相转化时,就在相应为顶点集,当两种状态可以互相转化时,就在相应的来那个顶点间连一边,从而建立一个二分图的来那个顶点间连一边,从而建立一个二分图G=G=,如右,如右图所示。图所示。G=G=的邻接矩阵为:的邻接矩阵为:数学建模-图论第32页/共122页 二、图的矩阵表示(应用实例及解法分析)V10 v11 v12 v13 v14 v15 v16 v17 v18v1 v2 v3 v4v5v6v7v8v9其中,矩阵其中,矩阵B B为:为:记记a a(k)(k)ijij为为A Ak
24、 k中的(中的(i,ji,j)元,目标是使)元,目标是使a(k)1,10不等于不等于0 0的最小的的最小的自然数自然数k.k.利用利用matlabmatlab容易计算出容易计算出k=11k=11,且,且a(11)1,10=4,=4,即小船至少即小船至少1111次才次才能把所有人全部运到右岸,说明共有能把所有人全部运到右岸,说明共有4 4种不同的过河方案。继续计种不同的过河方案。继续计算可得出算可得出a a(19)(19)1,10 1,10=45060=45060,如果允许小船过河,如果允许小船过河1919次的话,共有次的话,共有4506045060中不同的方案。中不同的方案。数学建模-图论第3
25、3页/共122页 若将图若将图G G的每一条边的每一条边e e都对应一个实数都对应一个实数F F(e e),则称则称F F(e e)为该边的为该边的权权,并称图并称图G G为为赋权图赋权图,记为记为G G=(=(V V,E E,F F ).设设G G=(=(V V,E E)是一个图是一个图,v v0 0,v v1 1,v vk kV V,且且“11i ik k,v vi i1 1 v vi iE E,则称则称v v0 0 v v1 1 v vk k是是G G的一条的一条通路通路.如果通路中没有相同的顶点如果通路中没有相同的顶点,则称此通路为则称此通路为路径路径,简称简称路路.对于赋权图,对于赋
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 讲稿
限制150内