数学建模-图论

合集下载

数学建模-图论

数学建模-图论

如例2中球队胜了,可从v1引一条带箭头的连线到v2,每 场比赛的胜负都用带箭头的连线标出,即可反映五个球队比 赛的胜负情况。如下图
v5
v1
v2 v3
v4
Байду номын сангаас
由图可知, v1三胜一 负, v4打了三场球, 全负等等
类似胜负这种非对称性的关系,在生产和生活中也是常见 的,如交通运输中的“单行线”,部门之间的领导和被领导关 系,一项工程中各工序之间的先后关系等等。
B
哥尼斯堡七桥问题
从某点出发通过每座桥且每桥只通过一次回到起点 A B D
建模:
C
A B D C
点——陆地 岛屿 边——桥
后来,英国数学家哈密尔顿在1856年提出“周游世界”的 问题:一个正十二面体,20个顶点分别表示世界上20个大城市, 要求从某个城市出发,经过所有城市一次而不重复,最后回到出 发地.这也是图论中一个著名的问题. “四色问题”也是图论中的著名问题:地图着色时,国境 线相邻的国家需要着上不同的颜色,最少需要几种颜色?1976 年,美国人阿佩尔和哈肯用计算机运行1200个小时,证明4种颜 色就够了.但至今尚有争议.
图论起源
图论最早处理的问题是哥尼 斯堡城的七桥问题:18世纪在哥 尼斯堡城(今俄罗斯加里宁格勒) 有一条名叫普莱格尔(Pregel) 的河流横经其中,河上有7座桥, 将河中的两个岛和河岸连结。
C A D
城中的居民经常沿河过桥 散步,于是提出了一个问 题:能否一次走遍7座桥, 后来有人请教当时的大数学家 而每座桥只许通过一次, 欧拉,欧拉用图论的方法证明这个问 最后仍回到起始地点? 题无解,同时他提出并解决了更为一 般的问题,从而奠定了图论的基础, 欧拉也被誉为“图论之父”.

数学建模-图论模型

数学建模-图论模型

思路分析
• 每学期任课老师都有一定工作量的要求往往可能要上不止一门课 程。
• 每位同学需要在学期内完成若干门课程的学习。 • 某些对上课设施有特殊要求的课程,也不可以安排在同一时间。 • 为了方便开展一些全校性的活动,有些时段不安排课程。 • 受到教室数量的限制,在同一时段无法安排太多的课程。
模型建立
• 以每个课程为顶点,任何两个顶点之间连一条边当且仅当两门课 程的任课老师为同一人,或有学生同时选了这两门课或上课教室 冲突。
• 那么一个合理的课程安排就是将图中的点进行分化,使得每一个 部分里的点为一个独立集。
• 通过极小覆盖找出图中的极 大独立集,然后删去该极大 独立集,在剩下的图中找出 极大独立集,直到剩下的图 为一个独立集。
匈牙利算法
• 饱和点:M是图G的一个匹配,若G中顶点v是M中某条边的端 点,则称M饱和v,否则称v是M的非饱和点。
• 可扩路:一条连接两个非饱和点x和y的由M外的边和M的边交错 组成的路称为M的(x,y)可扩路。
• 算法基本步骤:
Kuhn-Munkres算法
1.2 图的独立集应用
• 问题描述:各大学学期临近结束时,需要根据老师任课 计划和学生选课情况,再结合教室资源情况安排下一学 期的课程及上课时间和地点。下表所示是某大学电信学 院的大三各专业部分课程情况。该学院每届学生按专业 分班,统一选课。另外,学院只有一间普通机房和一间 高级机房。那么应该如何合理地排这些课程呢?
则称其是双连通或强连通的。对于不是双连通的图,都可以分解成 若干个极大的双连通分支,且任意两分支之间的边是同向的。
举例:
• 右图所示竞赛图不是双连通的

为一条有向
的D哈密尔A顿路B。 C E

数学建模-图论

数学建模-图论

图论导引
问题3:四色猜想 地图或地球仪上,最多用四种颜色就可把每一 国的版图染好,使得国界线两侧异色。
电子计算机问世以后,由于演算速度迅速提高,加 之人机对话的出现,大大加快了对四色猜想证明的进 程。美国伊利诺大学哈肯在1970年着手改进“放电过 程”,后与阿佩尔合作编制一个很好的程序。就在 1976年6月,他们在美国伊利诺斯大学的两台不同的电 子计算机上,用了1200个小时,作了100亿判断,终于 完成了四色定理的证明,轰动了世界。
有向图:
1, 若vi是ei的始点 aij 1, 若vi是ei的终点 0, 若v 与e 不关联 i i
无向图:
1, 若vi与v j 关联 aij 0, 若vi与v j 不关联
图的矩阵表示
例6:写出右图与其基本图 的关联矩阵 解:分别为:
图论的基本概念
几个基本定理:
1、对图G V,E ,有 d v 2 E .
vV
2、度为奇数的顶点有偶数个。
3、设G V,E 是有向图, 则 d v d v E .
vV vV
子图
定义 设图 G=(V,E, ),G1=(V1,E1, 1 )
(3)设 E1 E,且 E1 ,以 E1 为边集,E1 的端点集为顶点集的图 G 的子图, 称为 G 的由 E1 导出的子图,记为 G[E1].
G
G[{v1,v4,v5}]
G[{e1,e2,e3}]
基 本 概 念
定义1 在无向图 G=(V,E)中: (1) 顶点与边相互交错的有限非空序列 w (v0 e1v1e2 vk 1ek vk ) 称为一条从 v 0 到 v k 的通路,记为 Wv0vk (2)边不重复但顶点可重复的通路称为道路,记为 Tv0vk (3)边与顶点均不重复的通路称为路径,记为 Pv 0 v k 始点和终点相同的路称为圈或回路.

数学建模——图论篇

数学建模——图论篇

软件学院
图论原理 一. 图的概念 一个图 G=<V(G),E(G)>, 其中结点集V(G):是G的结 点的非空集合.(V(G)≠Φ),简记成V;边集E(G):是 G的边的集合. 有时简记成E. 结点: 用 表示, 旁边标上该结点的名称. 边:有向边:带箭头的弧线.从u到v的边表示成(u,v) 无向边:不带箭头的弧线.u和v间的边表示成(u,v)
v3
软件学院
图论原理
回路:如果一条路的起点和终点是一个结点,则称此路 是一个回路. 如果一条路中所有边都不同,则称此路为迹或简单通路. 如果一条回路中所有边都不同,则称此回路为闭迹或简 单回路. 如果一条路中所有结点都不同,则称此路为基本通路. 如果一条回路中所有结点都不同,则称此路为基本回路. 一条基本通路一定是简单通路,但是一条简单通路不 一定是基本通路

图论原理
图的同构 设G=<V,E>和G’=<V’,E’>是图,如果存在双射f:VV’ 且任何 vi,vj∈V,若边(vi,vj)∈E,当且仅当 边(f(vi),f(vj))∈E’, (则称G与G’同构,记作G≌G’. (同构图要保持边的“关联”关系) 例如:右边所示的两个图: a b 1 4 G=<V,E> G’=<V’,E’> c d 3 2 构造映射f:VV’ a 1 b 2 c 3 d 4 a 1 b 2 c 3 d 4
软件学院
图论原理
2.汉密尔顿图的判定: 到目前为止并没有判定H图的充分必要条件. 定理1 (充分条件):G是完全图,则G是H图.

K2

K3

K4


K5
定理2(充分条件)设G是有n(n>2)个结点的简单图,若对G中每 对结点度数之和大于等于n,则G有一条H路(H回路)。

数学建模图论

数学建模图论

. 图论一.最短路问题问题描绘:找寻最短路径就是在指定网络中两结点间找一条距离最小的路。

最短路不只是指一般地理意义上的距离最短,还能够引申到其他的胸怀,如时间、花费、线路容量等。

将问题抽象为赋权有向图或无向图 G ,边上的权均非负 对每个极点定义两个标记(l(v),z(v)),此中:l(v):表示从极点到v 的一条路的权 z(v):v 的父亲点,用以确立最短路的路线 :拥有永远标号的极点集算法:即在每一步改良这两个标记,使最后 l(v)为最短路的权 输入:G 的带权毗邻矩阵w(u,v) 步骤: (1) 赋初值:令l(u 0) 0,对v u 0,令 l(v) ,S={u 0},i 0。

(2)面S 会合的点),用min{l(v),l(u)uS i极点u 和v 之间边的权值。

计算极点记为u i1,令S i1S i(3)w(uv)} 取代l(v),这里w(uv)表示 l(v)},把达到这个最小值的一个V1,则停止;若i V1,则用i 1取代i ,转(2)算法结束时,从 u 0到各极点v 的距离由v 的最后一次编号 l(v)给出。

在v 进入S i 以前的编号l(v)叫T 标号,v 进入S i 以后的编号l(v)叫P 标号。

算法就是不停改正各极点的T 标号,直至获取P 标号。

若在算法运转过程中,将每 一极点获取P 标号所由来的边在图上注明,则算法结束时,u 0至各极点的最短路也在图上标示出来了。

理解:贪婪算法。

选定初始点放在一个会合里,此时权值为0初始点搜寻下一个相连结点,将所有相连结的点中离初始点近来的点归入初始点所在的会合,并更新权值。

而后以新归入的点为起点持续搜寻,直到所有的点遍历。

..{u i1}。

若iu Si m in{.Matlab代码:function[mydistance,mypath]=Dijk(a,sb,db);%sb为起点,db为终点n=size(a,1);visited(1:n)=0;%n为结点数visited为结点标号distance(1:n)=inf;distance(sb)=0;%起点到各终点距离的初始化visited(sb)=1;u=sb;%u为新的P标号极点(初始点)parent(1:n)=0;%父节点的初始化%经过以下一个for..end便能够找到最短路径及该最短路径对应的最短行程fori=1:n-1%(找所有未标号的点)id=find(visited==0);%查找未标号的极点forv=id%找到一个未标号的点vifa(u,v)+distance(u)<distance(v)%uv之间的距离+起点到u的距离小于v到起点的距离(第一次是无量大的,所以第一次必定知足,下一次则找比这个点到u距离小的v)distance(v)=distance(u)+a(u,v);%改正标号值则v到原点的距离(权)改正。

图论-数学建模

图论-数学建模

• 以各城镇为图G的顶点,两城镇间的直通铁路为 图G相应两顶点间的边,得图G。对G的每一边e, 赋以一个实数w(e) —直通铁路的长度,称为e的权, 得到赋权图G。G的子图的权是指子图G的各边的 权和。
• 问题就是求赋权图中指定的两个顶点u0 , v间0 的具最
小权的轨。这条轨叫做 u间0 , v的0 最短路,它的权
• 在下面数据结构的讨论中,我们首先假设 G(V,A) 是一个简单有向图 ,|V|n,|A|m,并假设V中的 顶点用自然数1,2,…n表示或编号,A中的弧用自 然数1,2,…m表示或编号。
(i)邻接矩阵表示法
• 邻接矩阵表示法是将图以邻接矩阵(adjacency matrix)的形式存储在计算机中。图G(V,的A)邻 接矩阵是如下定义的:C是一个n*n的0-1矩阵, 即
对于有向图 G(V,A),一般用 A(i) 表示节点 的邻接表,即节点的所有出弧构成的集合或链表 (实际上只需要列出弧的另一个端点,即弧的
头)。例如上面例子,A(1){2,3},A(5){3,4}等。
(v)星形表示法
• 星形(star)表示法的思想与邻接表表示法的思 想有一定的相似之处。对每个节点,它也是记录 从该节点出发的所有弧,但它不是采用单向链表 而是采用一个单一的数组表示。
• 一个图称为有限图,如果它的顶点集和边集都有
限。图的顶点数用符号 | V 或| 表(G示),边数用
| E或| 表 (示G)。
• 当讨论的图只有一个时,总是用G来表示这个图。 从而在图论符号中我们常略去字母G,例如:分别
用 V,E代,替 V(G )E ,(G )。,(G )
• 端点重合为一点的边称为环(loop)。
例2 公路连接问题
某一地区有若干个主要城市,现准备修建高速公 路把这些城市连接起来,使得从其中任何一个城 市都可以经高速公路直接或间接到达另一个城市。 假定已经知道了任意两个城市之间修建高速公路 的成本,那么应如何决定在哪些城市间修建高速 公路,使得总成本最小?

图论-数学建模

图论-数学建模
• 一个图称为简单图(simple graph),如果它既没 有环也没有两条边连接同一对顶点。
• 2.2 有向图
• 定义 一个有向图(directed graph或 digraph) G是由一个非空有限集合V和V中某些元素的有序对 集合构成的二元组,记为 G(V,A)
其中 V{v1,v2称, 为,vn 图}的顶点集或节点集 . A{a1,a2称, 为,a图m}的弧集(arc set),A中的每一个 元素(即中某两个元素的有序对) 记为
当然可以通过试验去尝试解决这个问题,但该 城居民的任何尝试均未成功。
欧拉为了解决这个问题,采用了建立数学模型 的方法。他将每一块陆地用一个点来代替,将每 一座桥用连接相应两点的一条线来代替,从而得 到一个有四个“点”,七条“线”的“图”。问题成为 从任一点出发一笔画出七条线再回到起点。欧拉 考察了一般一笔画的结构特点,给出了一笔画的 一个判定法则:这个图是连通的,且每个点都与 偶数线相关联,将这个判定法则应用于七桥问题 ,得到了“不可能走通”的结果,不但彻底解决了 这个问题,而且开创了图论研究的先河。
vi(i1,2称, 为,n该)图的一个顶点(vertex)或节点( node); E(G ){e 称1,e 为2, 图,的em } 边集
(edge set),E(G中) 的每一个元素 记e k 为
ek (v或i,vj) ek vivj vj,vi被(称k为1,2 该, 图,m 的)一条从 到 的边(edge) v i v j
,则 x, 则X称, Gy为Y 完全二分x图y,E记(G成) 。 K | X |,|Y |
2.4 子图
如果 V(Байду номын сангаас) , V(G) E,(图HH) 叫E 做(G 图)G的子图( subgraph),记作 H。若GH是G的子图,则G 称为H的母图。

数学建模图论讲义

数学建模图论讲义

(1)邻接矩阵表示法

邻接矩阵表示法是将图以邻接矩阵(adjacency matrix)的形式存储在计算机中。图 G (V , A ) 的 邻接矩阵是如下定义的:C是一个n*n的0-1矩阵, 即
C ( c ij ) n n { 0 ,1}
nn
1, c ij 0,

(i, j ) A, ( i , j ) A.
n
图与网络的数据结构



网络优化研究的是网络上的各种优化模型与算 法.为了在计算机上实现网络优化的算法,首先 我们必须有一种方法(即数据结构)在计算机上 来描述图与网络。 这里我们介绍计算机上用来描述图与网络的5种常 用表示方法:邻接矩阵表示法、关联矩阵表示法、 邻接表表示法和星形表示法。 在下面数据结构的讨论中,我们首先假设 G (V , A ) |V 是一个简单有向图 , | n , | A | m ,并假设V中的 顶点用自然数1,2,…n表示或编号,A中的弧用自 然数1,2,…m表示或编号。

如果一个顶点是一条弧的起点,则关联矩阵中对 应的元素为1;如果一个顶点是一条弧的终点,则 关联矩阵中对应的元素为-1;如果一个顶点与一 条弧不关联,则关联矩阵中对应的元素为0。
例2 对于例1所示的图,如果关联矩阵中每列对应 弧的顺序为(1,2),(1,3),(2,4),(3,2),(4,3), (4,5),(5,3)和(5,4),则关联矩阵表示为(列单位为弧)
e E ( P )
定义 若 P0 ( u , v ) 是G 中连接顶点u, v的一条路, 且 对任意在G 中连接u, v的路P (u, v)都有F( P0 ) ) ≤F ( P ), 则称 P0 ( u , v 是G 中连接u, v的最短路.

数学建模图论讲

数学建模图论讲
如果任两顶点间最多有一条边,且每条边的两个端点皆 不重合的图,则称为简单图。
第2页1 /共86页
2024年8月3日
数学建模-图论
一、图的基本概念
如果图的二顶点间有边相连,则称此顶点相邻,每一对顶点
都相邻的图称为完全图,否则称为非完全图,完全图记为 K V 。
若V (G) X Y, X Y , X Y 0 ,且 X 中 无相邻的顶点对,Y 中亦然,则称图 G 为二分图.
第1行 1 A1i 第i行 1
11,A1i 2
2 2
22,A1i3
4 4
4 4
其中i=2,3,4,5,显然y1=1+(4+4+4+4-1) 4=61. 同理,计算y2时应考虑槽高只有2,21,23,24,25,
26时的情形,类似计算可得 y2=1+(4+4+4+4-1)×5=76.
于是,s=61×2+76×4=426,x=6306426=5880.
计算y1可分别考虑槽高只有1,12,13,14,15的 情形.若只有1,这样的锁具效只有1个, 若只有1和i(i=2,3,4,5),这样的锁具数=G中以1和i为 顶点,长度为3的道路数,此数可通过A的子矩阵A1i计 算得到.
第18页/共86页
数学建模-图论
二、图的矩阵表示(应用实例解法分析)
事实上,因为
间最短的路线。定义T*T=(t(2)ij),
3
4
t(2)ij=min{min1<=k<=5{tik+tkj},tij}, t(2)ij表示 从站点i到站点j的至多换乘一次的最短时间。
5
第22页/共86页
数学建模-图论
二、图的矩阵表示(应用实例及解法分析)

数学建模-图论学习

数学建模-图论学习

初等数学方法建模现实世界中有很多问题,它的机理较简单,用静态,线性或逻辑的方法即可建立模型,使用初等的数学方法,即可求解,我们称之为初等数学模型。

本章主要介绍有关自然数,比例关系,状态转移,及量刚分析等建模例子,这些问题的巧妙的分析处理方法,可使读者达到举一反三,开拓思路,提高分析, 解决实际问题的能力。

第一节 有关自然数的几个模型1.1鸽笼原理鸽笼原理又称为抽屉原理,把N 个苹果放入)(N n n < 个抽屉里,则必有一个抽屉中至少有2个苹果。

问题1:如果有N 个人,其中每个人至多认识这群人中的)(N n n <个人(不包括自己),则至少有两个人所认识的人数相等。

分析:我们按认识人的个数,将N 个人分为n ,2,1,0 类,其中)0(n k k ≤≤类,表示认识k 个人,这样形成 1+n 个“鸽笼”。

若 1-<N n ,则N 个人分成不超过1-N 类,必有两人属于一类,也即有两个人所认识的人数相等;若1-=N n ,此时注意到0类和N 类必有一个为空集,所以不空的“鸽笼”至多为1-N 个,也有结论成立问题2:在一个边长为1的正三角形内最多能找到几个点,而使这些点彼此间的距离大于5.0.分析:边长为1的正三角形 ABC ∆,分别以C B A ,,为中心,5.0为半径圆弧,将三角形分为四个部分(如图1-1 ),则四部分中任一部分内两点距离都小于5.0 ,由鸽笼原理知道,在三角形内最多能找四个点,使彼此间距离大于5.0 ,且确实可找到如C B A ,,及三角形中心四个点。

图1—1问题3:能否在88⨯的方格表ABCD 的各个空格中,分别填写3,2,1这三个数中的任一个,使得每行,每列及对角线BD AC ,的各个数的和都不相同?为什么?分析:若从考虑填法的种类入手,情况太复杂;这里我们注意到,方格表中行,列及对角线的总数为18个;而用3,2,1填入表格,每行,列及对角线都是8个数,8个数的和最小为8,最大为24,共有171824=+-种;利用鸽笼原理,18个“鸽”放入17个“鸽笼”,必有两个在一个“鸽笼”,也即必有两个和相同。

数学建模_ 图论模型_

数学建模_  图论模型_

图论中最短路算法与程序实现图论中的最短路问题(包括无向图和有向图)是一个基本且常见的问题。

主要的算法有Dijkstra 算法和Floyd 算法。

Dijkstra 算法是求出指定两点之间的最短路,算法复杂度为 Floyd 算法是求出任意两点之间的最短路,算法复杂度为 2()O n 3()O n1.Dijkstra算法2. Floyd算法算法程序(Matlab)为:for k=1:nfor i=1 :nfor j=1:nt=B(i,k)+B(k,j);if t<B(i,j) B(i,j)=t; end endendend起点终点距离起点终点距离起点终点距离12400718160151725013450892001617140243008152851618130221230910180172724024714010111501819204346001015160182518045210111214019201404193101114130192417556230121320020211805720013344002024190673201415190212230068340142619021232707817015161702147350表1 各点距离(m)实例:已知50个点之间相互连接信息见表1及续表。

求最短距离矩阵续表1 各点距离(m)起点终点距离起点终点距离起点终点距离22441602229313640190 22452702230313738135 22481802230423839130 23242402330433941310 23292102331324041140 23302902331364050190 23441502331504250200 24251702432334344260 24281302432354345210 26271402632364546240 26343202633344648280 27281902735374849200 2829260283639n=50; %Matlab实现的Floyd算法A=zeros(n,n);for i=1:nfor j=1:nif(i==j) A(i,j)=0;else A(i,j)=100000;endendend %赋直接距离信息A(1,2)=400;A(1,3)=450; A(2,4)=300;A(2,21)=230; A(2,47)=140;A(3,4)=600;A(4,5)=210;A(4,19)=310;A(5,6)=230;A(5,7)=200; A(6,7)=320; A(6,8)=340;A(7,8)=170;A(7,18)=160;A(8,9)=200;A(8,15)=285; A(9,10)=180; A(10,11)=150; A(10,15)=160; A(11,12)=140; A(11,14)=130; A(12,13)=200; A(13,34)=400;A(14,15)=190;A(14,26)=190; A(15,16)=170; A(15,17)=250; A(16,17)=140;A(16,18)=130; A(17,27)=240; A(18,19)=204; A(18,25)=180; A(19,20)=140; A(19,24)=175; A(20,21)=180; A(20,24)=190; A(21,22)=300; A(21,23)=270; A(21,47)=350;A(22,44)=160;A(22,45)=270;A(22,48)=180;A(23,24)=240; A(23,29)=210;A(23,30)=290;A(23,44)=150;A(24,25)=170;A(24,28)=130; A(26,27)=140;A(26,34)=320;A(27,28)=190;A(28,29)=260;A(29,31)=190; A(30,31)=240;A(30,42)=130;A(30,43)=210;A(31,32)=230;A(31,36)=260; A(31,50)=210;A(32,33)=190;A(32,35)=140;A(32,36)=240;A(33,34)=210; A(35,37)=160;A(36,39)=180;A(36,40)=190;A(37,38)=135;A(38,39)=130; A(39,41)=310;A(40,41)=140;A(40,50)=190;A(42,50)=200;A(43,44)=260; A(43,45)=210;A(45,46)=240;A(46,48)=280;A(48,49)=200;for j=1:nfor i=1:j-1A(j,i)=A(i,j); %使矩阵对称endendB=A;%利用Floyd算法计算最短距离矩阵for k=1:nfor i=1 :nfor j=1:nt=B(i,k)+B(k,j);if t<B(i,j) B(i,j)=t; endendendend %输出距离矩阵到文件fid=fopen('distance.txt','w'); for i=1:nfor j=1:nfprintf(fid,'%4d ',B(i,j)); endfprintf(fid,'\n');endfclose(fid);。

数学建模-图论篇

数学建模-图论篇

data
firstarc
nextvex
边结点表中的结点的表示:
data:结点的数据场,保存结点的 数据值。
firstarc:结点的指针场,给出自该 结点出发的的第一条边的 边结点的地址。
nextvex:结点的指针场,给出该结 点的下一结点的地址。
info:边结点的数据场,保存边的 权值等。
adjvex:边结点的指针场,给出本
2C 3D
20 30 ∧
data firstin firstout
tailvex headvex hlink tlink
0
1
02

31∧
2
3
∧∧
3 2 ∧∧
图的存储结构
4、邻接多重表
•结点表中的结点的表示

data
firstedge
data:结点的数据域,保存结点的 数据值。
firstedge: 结点的指针域,给出自该
A
B
E
表示成右图矩阵
C
D
011 00 100 11 1000 1 0100 1 0111 0
图的存储结构
1、邻接矩阵和加权邻接矩阵(labeled adjacency matrix)(续)
•有向图的加权邻接矩阵
设有向图具有 n 个结点,则用 n 行 n 列的矩阵 A 表示该有向图;
并且 A[i,j] = a , 如果i 至 j 有一条有向边且它的权值为a。A[i,j] =无穷,如果 i 至 j 没有一条有向边。
邻接表
十字链表
邻接多重表
1、邻接矩阵和加权邻接矩阵(labeled adjacency matrix) •无权值的有向图的邻接矩阵
设有向图具有 n 个结点,则用 n 行 n 列的布尔矩阵 A 表示该有向图;

数学建模-图论篇

数学建模-图论篇
• 设有向图或无向图具有 n 个结点,则用 结点表、边表表示该有向图或无向图。 • 结点表:用数组或单链表的形式存放所有的结点。如果结点数n已知,则采用数
组形式,否则应采用单链表的形式。 • 边表(边结点表):每条边用一个结点进行表示。同一个结点的所有的边形成
它的边结点单链表。 • 优点:内存 = 结点数 + 边数 • 缺点:确定 i --> j 是否有边,最坏需耗费 O(n) 时间。无向图同一条边表示两次
A1 = {<A,B>, <A,C>,
A2 = {(A,B), (A,C),(B,D),
<C,D>, <D,A>}
(B,E>, (C,E),(D,E)}
图的定义和术语
有向图 G1
有向图G1的子图
A
B
A
A
B
A
B
C
D
无向图 G2
A
B
E
C
D
C AA
C
DC
无向图G2的子图
BA
BA
D B
E
E
DC
DC
D
图的定义和术语
有向图顶点v出度 是指以顶点v为
无向图G1
始点的弧
A
B
的数目,
E
记为OD (v)。

H
TD (v)=ID (v)+OD (v)。
M
C
D
有向图G2
A
B
n个顶点的 图中顶点度 和边的关系
n
2e TD(v )
i 1
i
C
D
图的存储结构
图的四种常用邻接矩阵 matrix)
结点出发的的第一条边的 边结点的地址。

数学建模图论模型省公开课获奖课件说课比赛一等奖课件

数学建模图论模型省公开课获奖课件说课比赛一等奖课件

问题旳转换:
➢ 过河问题是否能解? 即:图中A1到A10是否连通?
➢ 有几种不同旳解法? 即: A1到A10之间有多少条不 同旳途径?
➢ 最快旳处理方案是什么? 即: A1到A10最短途径有哪些?
图旳矩阵表达
⑴ 邻接矩阵:邻接矩阵表达了点与点之间旳邻接关 系.一种n阶图G旳邻接矩阵A = (aij )n×n , 其中
以可允许旳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)
① V称为G旳顶点集, V≠, 其元素称为顶点或结点, 简称点;
② E称为G旳边集, 其元素称为边, 它联结V 中旳两个点, 假 如这两个点是无序旳, 则称该边为无向边, 不然, 称为有向边.
假如V = {v1, v2, … , vn}是有限非空点集, 则称G为有限图或 n阶图.
假如E旳每一条边都是无向边, 则称G为无向图(如图1); 假 如E旳每一条边都是有向边, 则称G为有向图(如图2); 不然, 称 G为混合图.
图论模型
1. 图论基本概念 2. 最短途径算法 3. 最小生成树算法 4. 遍历性问题 5. 二分图与匹配
图论模型
6. 网络流问题 7. 关键途径问题 8. 系统监控模型 9. 着色模型
2
1、图论旳基本概念
问题1(哥尼斯堡七桥问题): 能否从任一陆地出发经过每座桥恰好一次而
回到出发点?
3
欧拉指出: 假如每块陆地所连接旳桥都是偶数座,则从任一

数学建模_图论方法

数学建模_图论方法

数学建模中的图论方法一、引言我们知道,数学建模竞赛中有问题A和问题B。

一般而言,问题A是连续系统中的问题,问题B是离散系统中的问题。

由于我们在大学数学教育内容中,连续系统方面的知识的比例较大,而离散数学比例较小。

因此很多人有这样的感觉,A题入手快,而B题不好下手。

另外,在有限元素的离散系统中,相应的数学模型又可以划分为两类,一类是存在有效算法的所谓P类问题,即多项式时间内可以解决的问题。

但是这类问题在MCM中非常少见,事实上,由于竞赛是开卷的,参考相关文献,使用现成的算法解决一个P类问题,不能显示参赛者的建模及解决实际问题能力之大小;还有一类所谓的NP问题,这种问题每一个都尚未建立有效的算法,也许真的就不可能有有效算法来解决。

命题往往以这种NPC问题为数学背景,找一个具体的实际模型来考验参赛者。

这样增加了建立数学模型的难度。

但是这也并不是说无法求解。

一般来说,由于问题是具体的实例,我们可以找到特殊的解法,或者可以给出一个近似解。

图论作为离散数学的一个重要分支,在工程技术、自然科学和经济管理中的许多方面都能提供有力的数学模型来解决实际问题,所以吸引了很多研究人员去研究图论中的方法和算法。

应该说,我们对图论中的经典例子或多或少还是有一些了解的,比如,哥尼斯堡七桥问题、中国邮递员问题、四色定理等等。

图论方法已经成为数学模型中的重要方法。

许多难题由于归结为图论问题被巧妙地解决。

而且,从历年的数学建模竞赛看,出现图论模型的频率极大,比如:AMCM90B-扫雪问题;AMCM91B-寻找最优Steiner树;AMCM92B-紧急修复系统的研制(最小生成树)AMCM94B-计算机传输数据的最小时间(边染色问题)CMCM93B-足球队排名(特征向量法)CMCM94B-锁具装箱问题(最大独立顶点集、最小覆盖等用来证明最优性)CMCM98B-灾情巡视路线(最优回路)等等。

这里面都直接或是间接用到图论方面的知识。

要说明的是,这里图论只是解决问题的一种方法,而不是唯一的方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
德· 摩尔根致哈密顿的信(1852年10月23日) 我的一位学生今天请我解释一个我过去不知道,现在仍不甚 了了的事实。他说如果任意划分一 个图形并给各部分着上颜色,使任 何具有公共边界的部分颜色不同, 那么需要且仅需要四种颜色就够了 。下图是需要四种颜色的例子 (图1)。 ……
华中农业大学数学建模基地
华中农业大学数学建模基地
图的矩阵表示 ⑶ 关联矩阵A = (aij )n×m
有向图:
1, 若vi是ei的始点 aij 1, 若vi是ei的终点 0, 若v 与e 不关联 i i
无向图:
1, 若vi与v j 关联 aij 0, 若vi与v j 不关联
华中农业大学数学建模基地

图的矩阵表示
⑵ 权矩阵A = (aij ) n×n
F vi v j , aij 0, ,
vi v j E i j vi v j E
例5:写出右图的权矩阵: 0 6 8 解: 0 7 A 3 0 2 4 5 0
图论的基本概念
任取v V G , 则有两种情况:
1 v至少与另外3个顶点相邻,这又包含两种情况: 1、这3点互不相邻,则G包含3,0 图为子图。
2、这3点至少2点相邻,则G包含K 3为子图。
(2)v至多与另外2个顶点相邻(即至少与另外3个顶 点不相邻)。这又包含两种情况: 1、这3点两两相邻,则G包含K 3图为子图。
数学建模
图论方法专题
--数学建模基地系列课件--
专题板块系列
1 2
概率统计专题 优化专题 模糊方法及微分方程专题 图论方法专题
3 4

华中农业大学数学建模基地
图论方法专题
一 二
图论的基本概念 最短路与最小生成树

四二部图的匹配网流华中农业大学数学建模基地
v1
4
4 2
v3
5 4 6
v0
1
5
v4
3
v2
7
v5
华中农业大学数学建模基地
最短路
v 4 step1 : S 0, Dijkstra算法:求某一顶点到其余顶点的最短路
3
l 0 0, l v 用其对应下标数 表示 j 记号:顶点 k ai , j , j S k 5 4
华中农业大学数学建模基地
图论的基本概念
问题2:哈密顿圈(环球旅行游戏) 十二面体的20个顶点代表世界上20个城市,能 否从某个城市出发在十二面体上依次经过每个 城市恰好一次最后回到出发点?

华中农业大学数学建模基地
图论的基本概念
问题3:四色问题 对任何一张地图进行着色,两个共同边界的 国家染不同的颜色,则只需要四种颜色就够了。
eE ( 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的最短路.
华中农业大学数学建模基地

华中农业大学数学建模基地
图的矩阵表示
例6:写出右图与其基本图 的关联矩阵 解:分别为:
1 0 0 1 1 0 1 1 1 0 0 0 0 0 A 0 1 1 0 1 1 0 0 0 1 1 0 1 1
1 1 A 0 0
任意两顶点都相临的简单图称为完全图. 有n个顶点的完全图记为K n。

华中农业大学数学建模基地
图论的基本概念
几个基本定理:
1、对图G V,E ,有 d v 2 E .
vV
2、度为奇数的顶点有偶数个。
3、设G V,E 是有向图, 则 d v d v E .

华中农业大学数学建模基地
图论的基本概念
定义1 一个有序二元组 (V, E ) 称为一个图, 记为 G = (V, E ), 其中 ① V或V(G)称为G的顶点集, V≠Φ , 其元素称为顶点或 结点, 简称点; ② E或E(G)称为G的边集, 其元素称为边, 它联结V 中的 两个点, 如果这两个点是无序的, 则称该边为无向边, 否则 , 称为有向边.

0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 1
华中农业大学数学建模基地
最短路
定义 1 设 P ( u, v) 是赋权图G = (V, E , F ) 中从 点u到v的路径, 用E ( P ) 表示路径P (u, v)中全 部边的集合, 记F ( P ) = F (e) ,则称F ( P )为路
可以用V 或 E 表示图G的顶点数和边数。

华中农业大学数学建模基地
图论的基本概念
如果V = {v1, v2, … , vn}是有限非空点集, 则称G 为有限图或n阶图. 如果E的每一条边都是无向边, 则称G为无向图; 如果E的每一条边都是有向边, 则称G为有向图;
否则, 称G为混合图.
华中农业大学数学建模基地
图的矩阵表示 ⑴ 邻接矩阵 A = (aij )n×n ,
1, vi v j E aij 0, vi v j E
例4:写出右图的邻接矩阵: 解:
0 0 A 1 1 1 0 1 0 1 0 0 0 1 0 1 0
4
v1
2 6
5
step2 : l k min l j j S
v r j 0, j S S : 表示生长到树中的顶点 1 集
0
if l k , then step4, or else S S k l k : v 0到v k的距离 step 3 :
华中农业大学数学建模基地
图论的基本概念
例3、证明:在任意6人的集会上,总有3人互相认 识,或总有3人互相不认识。 解:以顶点表示人,以边表示认识,得6个顶点 的简单图G。 问题:3人互相认识即G包含K3为子图, 3人互相不认识即G包含(3,0)图为子图。

华中农业大学数学建模基地
vV vV
华中农业大学数学建模基地
图论的基本概念
用图论思想求解以下各题 例1、一摆渡人欲将一只狼,一头羊,一篮菜从 河西渡过河到河东,由于船小,一次只能带一物 过河,并且,狼与羊,羊与菜不能独处,给出渡 河方法。

华中农业大学数学建模基地

华中农业大学数学建模基地
图论的基本概念
定义4 顶点u与v称为连通的,如果存在u-v通路,任二顶 点都连通的图称为连通图,否则,称为不连通图。极大 连通子图称为连通支。
定义5 连通而无圈的图称为树, 常用T表示树. 树中最长路的长称为树的高。 树的度为1的顶点称为树叶。 其余的顶点称为分枝点。树的边称为树枝。 设G是有向图,如果G的基础图是树,则称G是 有向树,也简称树。
图论的基本概念
解: 用四维0-1向量表示(人,狼,羊,菜)的在西岸 状态,(在西岸则分量取1,否则取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,0,0)也是 不允许的,
if
step4 : if l j , r , 树中v i的紧前顶点(作逆向追 踪) S i : then step4,
then d 0 i l i ;
S V G \ S

v4
3
v2
7
v5
or else , j0: v 0到v i的最短距离,最短路 d 0i P i S , Poj 0, , r r i , r i , , i if l j l k a k , j then l j l k a k , j , r j k turn step2
最短路
重要性质:
若v0 v1 … vm 是G中从v0到vm的最短路, 则 对1≤k≤m, v0v1 … vk 必为G中从v0到vk的 最短路. 即:最短路是一条路,且最短路的任一段 也是最短路。

华中农业大学数学建模基地
最短路
例7 对下面的有向图求顶点v0到其余顶点的 最短路。
图论的基本概念
问题4(关键路径问题): 一项工程任务,大到建造一座大坝,一座体育中心, 小至组装一台机床,一架电视机, 都要包括许多工序.这 些工序相互约束,只有在某些工序完成之后, 一个工序 才能开始. 即它们之间存在完成的先后次序关系,一般 认为这些关系是预知的, 而且也能够预计完成每个工序 所需要的时间. 这时工程领导人员迫切希望了解最少需要多少时间 才能够完成整个工程项目, 影响工程进度的要害工序是 哪几个?
图论的基本概念
问题1:七桥问题 能否从任一陆地出发通过每座桥恰好一次而 回到出发点?
C
A
B
D

哥尼斯堡七桥示意图
华中农业大学数学建模基地
图论的基本概念
七桥问题模拟图: C
A
B
D
欧拉指出:如果每块陆地所连接的桥都是偶数座,则 从任一陆地出发,必能通过每座桥恰好一次而回到出 发地。

华中农业大学数学建模基地
图论的基本概念
人在河西: (1,1,1,1) (1,1,1,0) (1,1,0,1) (1,0,1,1) (1,0,1,0) 人在河东: (0,1,0,1) (0,1,0,0) (0,0,1,0) (0,0,0,1) (0,0,0,0) 以十个向量作为顶点,将可能互相转移的状态 连线,则得10个顶点的偶图。 问题:如何从状态(1,1,1,1)转移到(0,0,0,0)? 方法:从(1,1,1,1)开始,沿关联边到达没有到达 的相邻顶点,到(0,0,0,0)终止,得到有向图即是。
相关文档
最新文档