图论模型及其解答

图论模型及其解答
图论模型及其解答

各种图论模型及其解答

摘要:

本文用另一种思路重新组织《图论及其应用》相关知识。首先,用通俗化语言阐述了如何对事物间联系的问题进行图论建模;接着从现实例子出发,给出各种典型图论模型,每种图论模型对应于图论一个重要内容;再者,介绍相关知识对上述提到的图论模型涉及的问题进行解答;最后,补充一些图论其他知识,包括图论分支、易混概念。

符号约定:

Q(Question)表示对问题描述,M(Modeling)表示数学建模过程,A(Answer)表示原问题转化为何种图论问题。

一、引言

图论是研究点、线间关系的一门学科,属于应用数学的一部分。现实生活中,凡是涉及到事物间的关系,都可以抽象为图论模型。点表示事物,连线表示事物间的联系。整个求解过程如下:

原问题——>图论建模——>运用图论相关理论求解——>转化为原问题的解

整个过程关键在于图论建模,所谓图论建模,就是明确点表示什么,连线表示什么,原问题转化为图论中的什么问题。存在以下两种情况:

①若事物间联系是可逆的(比如双行道,朋友),则抽象成无向图

②若事物间联系是不可逆的(比如单行道,状态转化不可逆),则抽象成有向图

如果需要进一步刻画事物间的联系(比如城市间的距离),就给连线赋一个权值,从而抽象成赋值图。

综上,根据实际问题,可建模成下列图论模型的一种:无向赋权图、有向赋权图、无向非赋权图、有向非赋权图。

例1.宴会定理:任何一宴会中,一定存在两个人有相同的数量朋友M:点表示人,连线表示当且仅当该两个人是朋友

A:问题转化为任何一个图一定存在两个顶点的度相等

二、图论模型

接下来介绍若干典型的图论模型,每种模型几乎对应于图论的一个重要内容,这些内容将在第三章进行讨论,也就给出了这些模型的解答思路。

2.1 偶图模型

凡涉及两类事物间的联系(即只考虑两类事物间的联系,而不考虑同类事物间的联系),均可抽象成偶图模型。作图时,将两类事物分成两行或者两列。这

类模型通常被包含在后续的模型中,但因许多现实问题可抽象成该模型,所以单列出来讨论。

(1) 仓库与销售间

M:点代表仓库或销售点,连线代表仓库与销售店间的关联

(2) 上课安排问题

Q:学校有6位教师将开设6门课程。六位教师的代号是Xi(i=1,2,3,4,5,6),六门课程代号是Yi (i=1,2,3,4,5,6)。已知,教师X1能够胜任课程Y2和Y3;教师X2能够胜任课程Y4和Y5;教师X3能够胜任课程Y2;教师X4能够胜任课程Y6和Y3;教师Y5能够胜任课程Y1和Y6;教师X6能够胜任课程Y5和Y6。

M:点表示教师或者课程,连线表示当且仅当该教师能胜任该课程

2.2 最短路模型

凡涉及到最小状态转换问题,均可转化为最短路模型。点表示允许的状态,连线表示状态的转换(可逆与不可逆分别对应于无向图、有向图)。

(1) 最短航线

M:点表示城市,连线表示当且仅当两城市有直达航线,并在该线上注明两城市的距离,即权值

A:问题转化为求两点间的最短路径

(2) 状态转换

Q:某两人有一只8升的酒壶装满了酒,还有两只空壶,分别为5升和3升。求最少的操作次数能均分酒。

M:设x1,x2,x3分别表示8,5,3升酒壶中的酒量,则

点表示组合(x1,x2,x3) ,连线表示当且仅当可通过倒酒的方式相互变换A:问题转化为在该图中求点(8,0,0)到点(4,4,0)的一条最短路

(3) 狼羊菜渡河

Q:在一河岸有狼,羊和卷心菜。摆渡人要将它们渡过河去,由于船太小,每次只能载一样东西。由于狼羊,羊卷心菜不能单独相处。问摆渡人至少要多少次才能将其渡过河?

M:但是以下组合不能允许出现:狼羊菜,羊菜,狼羊,人,人狼,人菜,共6种。岸上只能允许出现10种组合:人狼羊菜,人狼羊,人狼菜,人羊,空,菜,羊,狼,狼菜,人羊菜。

点表示可允许的组合,连线当且仅当两种情况可用载人(或加一物)的渡船相互转变。

A:问题转化为求由顶点“人狼羊菜”到顶点“空”的一条最短路。

2.3 最小生成树模型

道路铺设

Q:道路铺设,使得任意两个地方均可达,并且费用最小

M:点表示工厂(假设是工厂),任意两点连线,并标出铺设需要的费用

A:问题转化为求该图的最小生成树

2.4 欧拉图模型

通俗地讲,G是欧拉图当且仅当G存在经过每条边恰好一次,并且回到起始点的迹。

(1) 哥尼斯堡七桥问题

Q:能否从一点出发,走遍7座桥,且通过每座桥恰好一次,最后仍回到起始地点

M:点表示陆地,连线表示桥

A:问题转化为G是否存在E图

(2) 中国邮递员问题

Q:邮递员必须走过他投递范围内的每一条街道至少一次,选择一条尽可能短的路线

M:点表示路口,连线表示当且仅当两路口有直达街道

A:若G是E图,通过Fleury算法构造Euler环游,即为所求。否则,按一定规则添加重复边,再用Fleury算法构造Euler环游。

2.5 哈密尔顿圈模型

(1) 旅行售货员问题——TSP

一售货员要到若干城市去售货,每座城市只经历一次,问如何安排行走路线,使其行走的总路程最短。

例子:

Q:一电脑代理商要从她所在城市出发,乘飞机去六个城市,然后回到出发点,如果要求每个城市只经历一次,能否办到?给出行走方案。

M:点表示城市,连线表示两城市有直达航线

A:该图是否存在H圈

(2) 圆桌会议座位安排

Q:若干人围圆周开会,每个人会不同的语言,如何安排座位,使得每个人能够和他身边的交流

M:点表示人,连线表示当且仅当两个人能交流,即至少会同一种语言。(可能你一下子想到的偶图模型,的确该问题可以抽象成偶图模型,但很难转化为图论问题)

A:给出该图的一个H圈

2.6 匹配模型

(1) 旅游座位安排

Q:有一个旅行团要组织一批人去旅游,其中一些人是朋友他们要乘坐公共汽车去,而车上的位子是成对的。因此为了让大家旅途更愉快,旅行团负责人需要将成对的朋友安排在一起。给出一种安排方案。

M:点表示旅行团的人,连线表示当且仅当两人是朋友

A:求该图的最大匹配

(2) 研究生找工作

Q:学生能找到理想工作吗?

M:点表示研究生或者工作,连线表示当且仅当学生申请了该工作

A:问题转化为求饱和每个顶点的一个匹配,即完美匹配

(3) 最优分派问题

M:点表示工作或者人员,构造完全偶图,边的权值表示该工人做此份工作的效率

A:问题转化为求该图的最优匹配

2.7 平面图模型

平面模型可以这样理解,交通网络,使得不交叉,且无需修高架桥、隧道(这里的隧道显然跟山洞不同)

(1) 电路板设计问题

Q: 连接电路元件间的导线间不能交叉。否则,当绝缘层破损时,会出现短路故障。

M;点表示电路元器件,连线表示元器件间的连接

A;该图是否可平面

(2) 景区空调管道的设计

M:点表示景区,连线表示当且仅当两景点间要铺设空调管道

A:能否把上图画在平面上,使得边不会相互交叉?

(3) 3间房子和3种设施问题

Q:要求把3种公用设施(煤气,水和电)分别用煤气管道、水管和电线连接到3间房子里,要求任何一根线或管道不与另外的线或管道相交,能否办到?

M:点表示公用设施或者房子,连线表示该类公用设施连接到该房子

A:抽象出来的图是否可平面嵌入

2.8 着色模型

点着色问题对应于顶点集合的一种划分方式,对应于分类问题。边着色对应于边集合的一种划分方式,也对应于分类问题。区分点着色模型和边着色模型,主要在于抽象出来的模型,是相邻的顶点还是相邻的边不能着同一种颜色。

(1) 点着色模型

①考试时间安排

Q:使得学生们不会有相互冲突的考试,最小安排数

M:点表示待考的课程,连线表示至少有一个学生同时选择这两门课

A:问题转化为求该图的点色数(把互不冲突的课程、考试安排在同一个时间段完成)

②课程安排问题

Q: 学生选择课程中,使得学生选课不会发生冲突,如何制订一张课时数尽可能小少的课表

M:点表示课程,连线表示当且仅当有某个学生同时选了这两门课程

A:问题转化为求该图的点色数

③交通灯的相位设置问题

Q:为了(最终)让所有的车辆都能够安全通过路口,对于交通灯来说,所需要的相位的最小数是多少

M:点表示车道,连线当且仅当两个车道上的车不能同时安全地进入路口A:问题转化为求该图的点色数

(2)边着色模型

①排课表问题

Q:设有m位教师,n个班级,其中教师xi要给班级yj上pij节课。求如何在最少节次排完所有课。

M:令X={x1,x2,…,xm}, Y={y1,y2,…,yn},xi与yj间连pij条边,得偶图G=(X, Y)。

A:问题转化为求该图的边着色数

(2) 比赛安排问题

Q:最少天完成比赛

M:点表示参赛人,连线当且仅当两人有比赛

A:问题转化为求一种最优边着色,即用最少色数进行正常边着色

2.9 覆盖模型

覆盖模型,对应于控制问题,通俗地讲点覆盖对应于用最少的点来控制所有边(即任一边至少有一个顶点在点独立集中),边覆盖对应于用最少的边控制所有的点。均对应于控制问题。

(1) 哨站设计

Q:城市设置哨岗,使得哨兵能监管所有街道的最少哨岗数

M:点表示交叉口,连线表示存在直达街道

A:问题转化为求该图的点覆盖

2.10 强连通性定向图模型

(1) 城市交通网设计问题

Q:一座城市为某种需要,要把所有街道改为单行道,使得人们在任意两个位置都可以相互到达。如何设计单行道方向

M:顶点表示街道交叉口,连线当且仅当存在直达街道

A:问题等价于在模型图中给出其强连通定向

(2) 竞赛图

M:循环比赛的结果可以用所谓的“竞赛图”来表示。u队战胜了v队,则

由点u向v画一条有向边。显然,“竞赛图”是完全图的一种定向图。

三、模型求解

现针对上述的模型给出求解过程,每个模型几乎对应于图论的一个主要内容。

3.1 偶图模型

正如上文所说,偶图模型只是建模方式,并没有与直接问题关联起来。

3.2 最短路算法

(1) Dantjig算法——顶点标号法

在已选定的集合A的临近点集合B(不包含A集合的点),选择符合条件(选

择的点不会构成回路,边权值最小)的点加入集合A。迭代,直到终点出现在集

合A中。

3.3 最小生成树算法

(1) Kruskal(克鲁斯克尔)算法

从G中的最小边开始,进行避圈式扩张。从符合扩展边(新加入的边不会构成回路)选择权值最小的边进行扩展。

(2) 管梅谷的破圈法

不断破圈(从赋权图G的任意圈开始,去掉该圈中权值最大的一条边,称为破圈),直到G中没有圈为止,最后剩下的G的子图为G的最小生成树。

(3) Prim算法

对于连通赋权图G的任意一个顶点u,选择与点u关联的且权值最小的边作为最小生成树的第一条边e1。在接下来的边e2,e3,…,en-1 ,在与一条已经选取的边只有一个公共端点的的所有边中,选取权值最小的边。

3.4 Euler环游

(1) Euler环游判定

连通图G是Euler图 <==> G的每个顶点的度为偶数

连通图G有Euler迹 <==> G最多有两个奇点

(1) 构造欧拉环游(Fleury算法)

该算法解决了在欧拉图中求出一条具体欧拉环游的方法。方法是尽可能避割边行走。

(2) 最优环游算法(中国邮路问题)

若G是Euler图,则G的任何环游都是最优环游(最优环游是指在具有非负权的赋权连通图中找出一条最小权的环游)。

若G不是Euler图,则G的任何环游,通过某些边不止一次,通过以下方法求

添加重复边(其一,每条边最多重复一次,得到一个Euler多重图;其二,在该多重图的每一个圈上,如果重复边的总权值大于该圈权值的一半,则交换重复边与不重复边),而后Fleury算法求得。

3.5 Hamilton图

(1) H图判定

H图判定至今没有平凡的充要条件,不过可以通过如下定理辅助判断。

必要条件

G是H图 ==> 对于V的每个非空真子集S,均有ω(G-S)≤|S|,即若去k个点,得到连通分支数比k大,则不是H图(逆否命题)。(显然有割点的图不是H图)

充分条件

①设G是n(n≥)阶简单图,δ≥n/2 ==> G是H图

② G是简单图,对于任意不相邻的顶点,满足d(u)+d(v)≥n,G是H图 <==>

G+uv是H图

③ G是H图 <==> G的闭包是H图 (若G的闭包是完全图,则G是H图。但

一个图的闭包不一定是H图)

闭包构造过程:将度数之和≥图的顶点个数的非邻接顶点对递归连接起来,直到不再有这样的顶点对存在。

(2) 最优H圈

在一个赋权完全图中,找出一个有最小权的H图,称这个圈为最优H圈。目前没有有效算法,但可以通过如下近似算法求得近似值:

首先求出一个H圈,通过替换边不断改善上界。通过求最小生成树获得其下界。

3.6 匹配模型

(1)匹配判定

①最大匹配判定:

G的匹配M是最大匹配 <==> G不包含M可扩充路

②偶图匹配判定

设G为具有二分类(X,Y)的偶图,对于X的每个子集S ,G包含饱和X的每个顶点的匹配 <==> |N(S)|≥|S|

G是k正则偶图 ==> G有完美匹配

在偶图中,最大匹配的边数等于最小覆盖的顶点数

③完美匹配判定

G有完美匹配 <==> 对于V的每个非空真子集S,奇分支数ο(G-S)≤|S| 每个没有割边的3正则图都有完美匹配

G有完美匹配 <==> G有1因子 (图的一个1因子的边集等价于图的一个完美匹配)

④ 1-因子分解

完全图K2n是1-可因子化 (除2n外,其余的每个数按箭头方向移动一个位置,在每个位置,同一行的两点邻接就得到一个1因子)

任一正则偶图是1-可因子化 (不断减去完美匹配的方式求得所有1因子) 任一个具有H圈的3正则图是1-可因子化 (一个偶数个顶点的H圈可以分解为两个1-因子的并)

若3正则图有割边,则不可1-因子分解

(2)匈牙利算法——寻找偶图的最大匹配

从任一匹配M开始,若M饱和X中的每一个顶点,则M即为所求。否则,从在X在找一个非饱和点u,通过构造扎根于u的M交错树来寻找一条可扩路。交换边,得到一个更大的匹配。

(3)最优匹配(最优分派问题)

最优匹配即在赋权完全偶图中寻找一个具有最大权的完美匹配。可以通过Kuhn-Munkres最优匹配算法进行求解,该算法采用顶点标号修改策略。

3.7 平面性模型

(1)平面性判定

①对于简单图G=(n, m),如果m>3n-6,则G是非可平面的;

②对于连通图G=(n, m),如果每个面次数至少为l≥3,且m>(n-2)l/(l-2),则G是非可平面

③ G是可平面的 <==> G不含有与K5或K3,3同胚的子图 (库拉托斯基定理)

④ G是可平面的 <==> G不含有能够收缩成K5或K3,3的子图 (瓦格纳定理)

⑤通过平面性算法判定

⑥观察法判断,试图通过移动边,判断是否可平面

(2) 平面性算法(DMP算法)

3.8 着色模型

(1) 求点色数

①任意的图G,均有χ≤Δ+1

② G是简单连通图,且G既不是完全图也不是奇圈,则χ≤Δ

③ G是非空简单图,则χ≤Δ2+1 (找出所有顶点度≥其相邻的顶点度的顶点,在余下的顶点中找最大度的点,即为次大度,不等同于第二大度)

④ G是非空简单图,若G中度数最大的点互不相邻,则χ≤Δ

⑤对任意的平面图,均有χ≤5

⑥ 通过色多项式求得,即最小k使得Pk(G)不等于0

上面的各种方法都很繁琐,仅给出了上界。在实际求解过程中,可以求得Δ2+1作为上界,即次大度加1。通过观察是原图是否存在Kn的子图,若存在,则下界为n。例如,若原图存在K3即三角形,则点色数至少为3。

(2) 求边色数

① G是简单图,则χ’=Δ或Δ+1

② G是偶图,则χ’=Δ

③ G是简单图,若n=2k+1且m>kΔ,则χ’=Δ+1

④ G是奇阶Δ正则简单图,则χ’=Δ+1

⑤设无环图G中边的最大重数为μ,则χ’=Δ+μ

(3) 着色算法

对色集标号,每次给顶点着符合条件(相邻的顶点不能着相同颜色)的最小颜色数。该算法只能保证最多用Δ+1种颜色给一个图正常着色,但不能保证使用的颜色数一定是最少。

(4) 着色计数(求色多项式)

缩边、加边递推法

① G为n阶空图,则 Pk(G)=k n

② Pk(Kn)=k(k-1)(k-2)…(k-n+1)

③若d(u)=1,则 Pk(G)=(k-1) Pk(G-u)

④加边递推法Pk(G-e) = Pk(G)+ Pk(G.e)

减边递推法Pk(G)= Pk(G-e)- Pk(G.e)

理想子图法

理想子图法改进

3.9 覆盖模型

(1)点覆盖

一个图的点独立集(简称独立集)是指图中一些互不相邻的点构成的点子集。含点数最多的独立集称最大独立集,最大独立集所含的顶点数称为G的独立数,记为α(G),简记为α

G的一个覆盖是指G的一个顶点子集K,使得G的每条边都至少有一个端点属于K。G的最小覆盖的点数称G的覆盖数,记为β(G),简记为β

(2) 边覆盖

G的最大匹配的边数称为G的边独立数,记为α’(G),简记为α’。

设L是G的一个边子集

G的一个边覆盖是指G的一个边子集L,使得G的每个点均为L中某条边的端点。G的最小覆盖的边数称G的边覆盖数,记为β’(G),简记为β’

(3) 点覆盖与边覆盖关系

①对任意n阶图G,均有α+β=n

②对任意n阶图G,且δ(G)>0均有α’+β’=n

③ G是δ(G)>0的偶图,则α=β’

3.10 强连通定向算法

(1) 存在性问题

定理3( 罗宾斯,1939) 非平凡连通图G具有强连通定向 <==> G是2边连通的。

(2) 强连通定向算法

从已标号集合L中选择其与未标号集合U有邻点的最高标号的点v,扩展该点u,并标点u为点v标号值加1。对所有未赋方向的边,由标号值大的顶点指向标号值小的顶点

3.11 点边面关系运算

①握手定理:图G= (V, E)中所有顶点的度的和等于边数m的2倍

②设T是(n, m)树,则:n=m-1

③设G=(n,m)是平面图,则∑deg(f) = 2m

④平面图欧拉公式:设G=(n,m)是连通平面图,φ是G的面数,则n-m+φ=2

四、图论分支

4.1 网络图论

网络图论又称为网络拓扑学,用图的理论,对电路的结构及其连接性质进行分析和研究。

4.2 极值图论

主要研究与图相关的极大极小问题。比如最短路径、最小生成树、最大匹配、最小覆盖、最大流等问题。更多信息,请参考维基百科Extremal Graph Theory。

4.3 代数图论

用代数方法研究图论问题。更多信息,请参考维基百科Algebraic Graph Theory。

4.4 拓扑图论

直接看英文吧,It studies the embedding of graphs in surfaces, spatial embeddings of graphs, and graphs as topological spaces.It also studies immersions of graphs.更多信息,请参考维基百科Topological Graph Theory。

4.5 随机图论

研究以某种随机方式产生点数、边数以及边的图(英文原文:A random graph is a graph in which properties such as the number of graph vertices, graph edges, and connections between them are determined in some random way.)。更多信息,请参考维基百科Random Graph。

4.6 结构图论

结构图论的核心是哈密顿问题[3]。

五、几组易混概念

5.1 图论与拓扑学

图论以前是作为拓扑学一章来讲解,现在已经发展为独立的学科。百度百科词条拓扑学,说拓扑学是近代发展起来的一个研究连续性现象的数学分支。很费解对吧,看新浪爱问知识人一回答,说“拓扑学”主要研究的是出于数学分析的需要而产生的一些几何问题。发展至今,拓扑学主要研究拓扑空间在拓扑变换下的不变性质和不变量。维基百科词条图论,说图论的研究对象相当于一维的拓扑学。

5.2 途径、迹、路

5.3 欧拉闭迹欧拉环游欧拉回路

5.4 H路 H圈 H图

注:这几个,等再看一遍书后再总结。

六、进一步阅读

老师PPT给出如下参考文献,我们用的是研究生教材(张先迪,李正良.图论及其应用[M].北京:高等教育出版社.2005.2),感觉该教材主要是抄[1]的,难怪不是著而是主编。我看过[2]的,比较浅显易懂,而且给出很多人物背景介绍,读起来比较有意思。[3]我们老师也推荐比较多。

[1]美,帮迪《图论及其应用》

[2]美,Gary Chartrand《图论导引》,人民邮电出版社,2007

[3]Bela Bollobas,《现代图论》,科学出版社,2001 中国科学院研究生教学丛书

[4]美,Fred Buckley《图论简明教程》,清华大学出版社,2005 李慧霸王风芹译

[5] 李尉萱,《图论》,湖南科学技术出版社,1979

[6] 美,Douglas B.West《图论导引》,机械工业出版社,2007 李建中,骆吉洲译

[7] 杨洪,《图论常用算法选编》,中国铁道出版社,1988

[8] 陈树柏,《网络图论及其应用》,科学出版社,1982

[9] Chris Godsil,Gordon Royle 《Algebraic Graph Theory》,世界图书出版公司北京公司,2004

[10] 王朝瑞,《图论》,高等教育出版社,1983

参考文献:

[1]张先迪,李正良.图论及其应用[M].北京:高等教育出版社.2005.2

[2]Gary Chartrand,Ping Zhang著.范益政,汪毅译.图论导引[M].北京:人民邮电出版社.2007.9

[3]陈德钦,曾克扬,赵克文.海南在结构图论、组合矩阵论和极值集合论的世界核心领域的贡献[J].科技信息(科学教研).2008年07期

另附:数学界三大奖

菲尔茨(Fields)奖——数学界**奖,百度百科词条菲尔兹奖

沃尔夫(Wolf)奖,百度百科词条沃尔夫奖

阿贝尔(Abel)奖,百度百科词条阿贝尔奖

第5-6章:如何建立数学模型及实例

如 何 建 立 数 学 模 型 及 实 例 数学建模培训 科研处数学建模小组

第五章:如何建立数学模型 怎样撰写数学建模的论文? 1.什么是数学模型? 数学模型是对于现实世界的一个特定对象,一个特定目的,根据特有的内在规律,做出一些必要的假设,运用适当的数学工具,得到一个数学结构。 简单地说:就是系统的某种特征的本质的数学表达式(或是用数学术语对部分现实世界的描述),即用数学式子(如函数、图形、代数方程、微分方程、积分方程、差分方程等)来描述(表述、模拟)所研究的客观对象或系统在某一方面的存在规律。 2.什么是数学建模?数学建模是利用数学方法解决实际问题的一种 实践。即通过抽象、简化、假设、引进变量等处理过程后,将实际问题用数学方式表达,建立起数学模型,然后运用先进的数学方法及计算机技术进行求解。 观点:“所谓高科技就是一种数学技术” 注数学建模其实并不是什么新东西,可以说有了数学并需要用数学去解决实际问题,就一定要用数学的语言、方法去近似地刻划该实际问题,这种刻划的数学表述的就是一个数学模型,其过程就是数学建模的过程。数学模型一经提出,就要用一定的技术手段(计算、证明等)来求解并验证,其中大量的计算往往是必不可少的,高性能的计算机的出现使数学建模这一方法如虎添翼似的得到了飞速的发展,掀起一个高潮。 注 数学建模将各种知识综合应用于解决实际问题中,是培养和提高同学们应用所学知识分析问题、解决问题的能力的必备手段之一。 3.数学建模的一般方法和步骤建立数学模型的方法和步骤并没有一定的模 式,但一个理想的模型应能反映系统的全部重要特征:模型的可靠性和模型的使用性 建模的一般方法: ◆机理分析◆测试分析方法 机理分析:根据对现实对象特性的认识,分析其因果关系,找出反映内部机理的规律,所建立的模型常有明确的物理或现实意义。 测试分析方法:将研究对象视为一个“黑箱”系统,内部机理无法直接寻求,通过测量系统的输入输出数据,并以此为基础运用统计分析方法,按照事先确定的准则在某一类模型中选出一个数据拟合得最好的模型。测试分析方法也叫做系统辩识。 将这两种方法结合起来使用,即用机理分析方法建立模型的结构,用系统测试方法来确定模型的参数,也是常用的建模方法。在实际过程中用那一种方法建模主要是根据我们对研究对象的了解程度和建模目的来决定。机理分析法建模的具体步骤大致可见下图。

数学建模中的图论方法

数学建模中的图论方法 一、引言 我们知道,数学建模竞赛中有问题A和问题B。一般而言,问题A是连续系统中的问题,问题B是离散系统中的问题。由于我们在大学数学教育内容中,连续系统方面的知识的比例较大,而离散数学比例较小。因此很多人有这样的感觉,A题入手快,而B题不好下手。 另外,在有限元素的离散系统中,相应的数学模型又可以划分为两类,一类是存在有效算法的所谓P类问题,即多项式时间内可以解决的问题。但是这类问题在MCM中非常少见,事实上,由于竞赛是开卷的,参考相关文献,使用现成的算法解决一个P类问题,不能显示参赛者的建模及解决实际问题能力之大小;还有一类所谓的NP问题,这种问题每一个都尚未建立有效的算法,也许真的就不可能有有效算法来解决。命题往往以这种NPC问题为数学背景,找一个具体的实际模型来考验参赛者。这样增加了建立数学模型的难度。但是这也并不是说无法求解。一般来说,由于问题是具体的实例,我们可以找到特殊的解法,或者可以给出一个近似解。 图论作为离散数学的一个重要分支,在工程技术、自然科学和经济管理中的许多方面都能提供有力的数学模型来解决实际问题,所以吸引了很多研究人员去研究图论中的方法和算法。应该说,我们对图论中的经典例子或多或少还是有一些了解的,比如,哥尼斯堡七桥问题、中国邮递员问题、四色定理等等。图论方法已经成为数学模型中的重要方法。许多难题由于归结为图论问题被巧妙地解决。而且,从历年的数学建模竞赛看,出现图论模型的频率极大,比如: AMCM90B-扫雪问题; AMCM91B-寻找最优Steiner树; AMCM92B-紧急修复系统的研制(最小生成树) AMCM94B-计算机传输数据的最小时间(边染色问题) CMCM93B-足球队排名(特征向量法) CMCM94B-锁具装箱问题(最大独立顶点集、最小覆盖等用来证明最优性) CMCM98B-灾情巡视路线(最优回路) 等等。这里面都直接或是间接用到图论方面的知识。要说明的是,这里图论只是解决问题的一种方法,而不是唯一的方法。 本文将从图论的角度来说明如何将一个工程问题转化为合理而且可求解的数学模型,着重介绍图论中的典型算法。这里只是一些基础、简单的介绍,目的在于了解这方面的知识和应用,拓宽大家的思路,希望起到抛砖引玉的作用,要掌握更多还需要我们进一步的学习和实践。

数学建模中常见的十大模型

数学建模常用的十大算法==转 (2011-07-24 16:13:14) 转载▼ 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MA TLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。 8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MA TLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 2.1 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢?随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。 2.2 数据拟合、参数估计、插值等算法 数据拟合在很多赛题中有应用,与图形处理有关的问题很多与拟合有关系,一个例子就是98 年美国赛A 题,生物组织切片的三维插值处理,94 年A 题逢山开路,山体海拔高度的插值计算,还有吵的沸沸扬扬可能会考的“非典”问题也要用到数据拟合算法,观察数据的

图论模型简介

图论模型简介 一、图及其矩阵表示 1、起源:哥尼斯堡七桥问题: 欧拉为了解决这个问题,建立数学模型:陆地——点,桥——边,得到一个有四个“点”,七条“边”的“图”。问题转化为能否从任一点出发一笔画出七条边再回到起点。欧拉考察了一般一笔画的结构特点,给出了一笔画判定法则:图是连通的,且每个顶点都与偶数条边相关联(这种图称为欧拉图)。由此可以得出结论:七桥问题无解。

2、基本概念: 图(graph):由顶点和边(又称线,边的两端必须是顶点)组成的一个结构。 邻接:一条边的两个端点称是邻接的;关联:边与其两端的顶点称是关联的。 无向图(graph):边无方向的图;有向图(digraph):边有方向的图。 路(path):由相邻边组成的序列,其中中间顶点互不相同。 圈(cycle):首、尾顶点相同的路,即闭路。 连通图(connected graph):图中任意两顶点间都存在路的图。 树(tree):无圈连通图 完全图(complete graph):任意两个顶点之间都有边相连的无向图,记为K n。 竞赛图(tournament):由完全图给每条边定向而得到的有向图。 二部图(bipartite graph):图的顶点分成两部分,只有不同部分顶点之间才有边相连。图G的子图H(subgraph):H是一个图,H的顶点(边)是图G的顶点(边)。 网络(Network):边上赋了权的有向图。

3、图的矩阵表示 无向图 有向图 0100010 11001011 011000 1 00???????????????? ???? ? ? ? ? ????????0110010100000100100000110

图论 模型

251 图论模型 图论是运筹学的一个经典和重要分支,专门研究图与网络模型的特点、性质以及求解方法。许多优化问题,可以利用图与网络的固有特性而形成的特定方法来解决,比用数学规划等其他模型来求解往往要简单且有效得多。 图论起源于1736年欧拉对柯尼斯堡七桥问题的抽象和论证。1936年,匈牙利数学家柯尼希(D. K?nig )出版的第一部图论专著《有限图与无限图理论》,树立了图论发展的第一座里程碑。近几十年来,计算机科学和技术的飞速发展,大大地促进了图论研究和应用,其理论和方法已经渗透到物理、化学、计算机科学、通信科学、建筑学、生物遗传学、心理学、经济学、社会学各个学科中。 9.1 图的基础理论 9.1.1 图的基本概念 所谓图,概括地讲就是由一些点和这些点之间的连线组成的。定义为(,)G V E =,V 是顶点的非空有限集合,称为顶点集。E 是边的集合,称为边集。边一般用(,)i j v v 表示,其中 ,i j v v 属于顶点集V 。 以下用V 表示图(,)G V E =中顶点的个数,E 表示边的条数。 如图9.1是几个图的示例,其中图9.1 (a)共有3个顶点、2条边,将其表示为 (,)G V E =,123{,,}V v v v =,1213{(,),(,)}E v v v v =. 2 3 v 45 v 3 4 (a) (c) 图9.1 图的示意图 1.无向图和有向图 如果图的边是没有方向的,则称此图为无向图(简称为图),无向图的边称为无向边(简称边)。如图9.1 (a)和(b)都是无向图。连接两顶点i v 和j v 的无向边记为(,)i j v v 或(,)j i v v 。 如果图的边是有方向(带箭头)的,则称此图为有向图,有向图的边称为弧(或有向边),如图9.1 (c)是一个有向图。连接两顶点i v 和j v 的弧记为,i j v v ??,其中i v 称为起点,j v 称为终点。显然此时弧,i j v v ??与弧,j i v v ??是不同的两条有向边。有向图的弧的起点称为弧头,弧的终点称为弧尾。有向图一般记为(,)D V A =,其中V 为顶点集,A 为弧集。 例如图9.1 (C)可以表示为(,)D V A =,顶点集1234{,,,}V v v v v =,弧集为1223{,,,, A v v v v =????243441,,,,,}v v v v v v ??????。 对于图除非指明是有向图,一般地,所谓的图都是指无向图。有向图也可以用G 表示。 例9.1 设12345{,,,,}V v v v v v =,12345{,,,,}E e e e e e =,其中

数学建模中常见的十大模型讲课稿

数学建模中常见的十 大模型

精品文档 数学建模常用的十大算法==转 (2011-07-24 16:13:14) 转载▼ 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MA TLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。 8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MATLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 2.1 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢?随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。 2.2 数据拟合、参数估计、插值等算法 数据拟合在很多赛题中有应用,与图形处理有关的问题很多与拟合有关系,一个例子就是98 年美国赛A 题,生物组织切片的三维插值处理,94 年A 题逢山开路,山体海拔高度的 收集于网络,如有侵权请联系管理员删除

第8节图论应用实例_图着色问题

第8节图论应用实例_图着色问题 预备知识_回溯法 回溯法:在实际生活中,有些问题是不能用数学公式去解决的,它需要通过一个过程,此过程要经过若干个步骤才能完成,每一个步骤又分为若干种可能;同时,为了完成任务,还必须遵守一些规则,但这些规则无法用数学公式表示,对于这样一类问题,一般采用搜索的方法来解决,回溯法就是搜索算法(广度优先、深度优先等)中的一种控制策略,它能够解决许多搜索中问题。 回溯法基本思想:试探法,撞了南墙就回头。(一般采用深度优先搜索策略) 搜索策略:深度优先(不撞南墙不回头)。 在搜索过程中,如果求解失败,则返回搜索步骤中的上一点,去寻找新的路径,以求得答案。要返回搜索,前进中的某些状态必须保存,才能使得退回到某种状态后能继续向前。 白话搜索:如果用数组存放搜索信息,i表示数组下标(当前状态), ++i表示往前走(下一个状态),--i表示回溯(往回退,返回上一次状态)。 第8节图论应用实例_图着色(graph coloring)问题数学定义:给定一个无向图G=(V, E),其中V为顶点集合,E为边集合,图着色问题即为将V分为k个颜色组(k为颜色数),每个组形成一个独立集,即其中没有相邻的顶点。其优化版本是希望获得最小的k值。 典型应用:地图的着色、调度问题等。 k-着色判定问题:给定无向连通图G和k种不同的颜色。用这些颜色为图G的各顶点着色,每个顶点着一种颜色,是否有一种着色法使G中任意相邻的2个顶点着不同颜色,

例四色问题。设有如图1的地图,每个区域代表一个省,区域中的数字表示省的编号,现在要求给每个省涂上红、蓝、黄、白四种颜色之一,同时使相邻的省份以不同的颜色区分。 课外拓展:搜索“四色问题”,了解四色问题相关知识。 5 6 74 2 31 图1 问题分析: (1)属于图的搜索问题。将问题简化:将每个省抽象为一个点,省之间的联系看为一条边,可以得到图2。 1 67 5 1 4 32 图2 (2)用邻接矩阵表示各省之间的相邻关系,二维数组实现: 1 表示省i与省j相邻, ,,ri,j,,0 表示省i与省j不相邻, 由图2可以得到如下矩阵:(对称矩阵) 1 2 3 4 5 6 7

图论模型的建立与转化

图论模型的建立与转化 关键字:图论模型、建立、转化 摘要 本文主要写图论模型的建立与转化,共分四部分: 第一部分引言说明了图论建模在整个信息学竞赛中的地位,以及图论模型与其它数学模型的异同,并指出很有研究总结图论建模的思想、方法及技巧的必要。 第二部分提出了图论模型建立中的两个要点:对原型中的要素进行适当的取舍和选择合适的理论体系,并分别举例加以详细分析,然后从中总结出了图论建模的总的原则:准确、清晰、简明。 第三部分主要讨论了在图论模型的转化中,应用得较为广泛的两种方法:拆分转化和补集转化,并着重分析了前者。文中把前者分为三类:点→边、点→点、边→边,其中详细分析了第二类。 第四部分总结了全文,并指出了进一步研究图论模型的必要性 目录 一.引言 (2) 二.图论模型的建立 (2) I.要素的取舍 (2) II.选择合适的理论体系 (4) 三.图论模型的转化 (7) I.拆分转化 (7) II.补集转化 (10) 四.结语 (11)

正文 一.引言 信息学竞赛以解题为主,整个解题过程中一个重要的步骤就是数学建模,本文要讨论的就是数学建模的一个分支——图论建模。 图论建模是指对一些客观事物进行抽象、化简,并用图1来描述事物特征及内在联系的过程。 建立图论模型的目的和建立其它的数学模型一样,都是为了简化问题,突出要点,以便更深入地研究问题的本质;它的求解目标可以是最优化问题,也可以是存在性或是构造性问题;并且,和几何模型、运筹学模型一样,在建立图论模型的过程中,也需要用到集合、映射、函数等基本的数学概念和工具; 但图论模型和其它模型在它们的研究方法上又有着很大的不同,例如我们可以运用典型的图论算法来对图论模型进行求解,或是根据图论的基本理论来分析图论模型的性质,这些特殊的算法和理论都是其它模型所不具备的,而且在其它模型中,能用类似于图这种直观的结构来描述的也很少。 我们学习图论,一般都是通过书籍,但书上介绍的往往只限于图论模型的基本要素、一些图论的相关理论和经典算法等,至于如何建立图论模型、如何运用这些理论和算法、如何研究图论问题,都只有靠自己来理解、来领会,并通过实践来验证这些理解,通过摸索总结来提高自己的能力。 在建立图论模型的过程中,我们常常会遇到一些困难,例如难以建立点、边、权关系,或是原型中的一些重要因素无法纳入现有模型,或是现有模型虽能表示原型,却无法求解等等。为了克服这些困难,就需要用到某些独特的思想、方法和技巧,本文要写的正是我在学习、实践中得出的这方面的一点认识。 二.图论模型的建立 在建立模型之前,我们首先要对研究对象进行全面的调查,将原型理想化、简单化(对于竞赛题而言,这一步大部分已经由出题人完成了);然后对原型进行初步的分析,分清其中的各个要素及求解目标,理出它们之间的联系;下一步就是用恰当的模型来描述这些要素及联系。 I.要素的取舍 在用图论模型描述研究对象时,为了更突出与求解目标息息相关的要素,降低思考的复杂度,就不可避免地要舍去部分要素。下面我们就通过例1来分析一下。 【例1】导线排布Line[7]: 题目(文档附件:导线排布.doc)中蓝色的一段是问题描述的重点,其中涉及的要素有圆圈、N根导线、2N个端点、编号规则、导线的交叉等,求解目标是构造一种符合所给的导线交叉情况的导线排布方案。 起先,我们对题目描述的导线排布并不熟悉,或许我们能够画出几个无解或是多解的1在本文中,“图”专指由若干不同顶点与连接其中某些顶点的边所组成的图形[6],不包括一般的示意图。

数学建模中常见的十大模型

数学建模中常见的十大 模型 Document serial number【KKGB-LBS98YT-BS8CB-BSUT-BST108】

数学建模常用的十大算法==转 (2011-07-24 16:13:14) 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MATLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。

8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MATLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。

数学建模常用算法模型

按模型的数学方法分: 几何模型、图论模型、微分方程模型、概率模型、最优控制模型、规划论模型、马氏链模型等 按模型的特征分: 静态模型和动态模型,确定性模型和随机模型,离散模型和连续性模型,线性模型和非线性模型等 按模型的应用领域分: 人口模型、交通模型、经济模型、生态模型、资源模型、环境模型等。 按建模的目的分: 预测模型、优化模型、决策模型、控制模型等 一般研究数学建模论文的时候,是按照建模的目的去分类的,并且是算法往往也和建模的目的对应 按对模型结构的了解程度分: 有白箱模型、灰箱模型、黑箱模型等 比赛尽量避免使用,黑箱模型、灰箱模型,以及一些主观性模型。 按比赛命题方向分: 国赛一般是离散模型和连续模型各一个,2016美赛六个题目(离散、连续、运筹学/复杂网络、大数据、环境科学、政策) 数学建模十大算法 1、蒙特卡罗算法 (该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,比较好用的算法) 2、数据拟合、参数估计、插值等数据处理算法 (比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具)

3、线性规划、整数规划、多元规划、二次规划等规划类问题 (建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo软件实现) 4、图论算法 (这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备) 5、动态规划、回溯搜索、分治算法、分支定界等计算机算法 (这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中) 6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法 (这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用) 7、网格算法和穷举法 (当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具) 8、一些连续离散化方法 (很多问题都是从实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的) 9、数值分析算法 (如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用)10、图象处理算法 (赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的这些图形如何展示,以及如何处理就是需要解决的问题,通常使用Matlab进行处理) 算法简介 1、灰色预测模型(必掌握)

图论模型及其解答

各种图论模型及其解答 摘要: 本文用另一种思路重新组织《图论及其应用》相关知识。首先,用通俗化语言阐述了如何对事物间联系的问题进行图论建模;接着从现实例子出发,给出各种典型图论模型,每种图论模型对应于图论一个重要内容;再者,介绍相关知识对上述提到的图论模型涉及的问题进行解答;最后,补充一些图论其他知识,包括图论分支、易混概念。 符号约定: Q(Question)表示对问题描述,M(Modeling)表示数学建模过程,A(Answer)表示原问题转化为何种图论问题。 一、引言 图论是研究点、线间关系的一门学科,属于应用数学的一部分。现实生活中,凡是涉及到事物间的关系,都可以抽象为图论模型。点表示事物,连线表示事物间的联系。整个求解过程如下: 原问题——>图论建模——>运用图论相关理论求解——>转化为原问题的解 整个过程关键在于图论建模,所谓图论建模,就是明确点表示什么,连线表示什么,原问题转化为图论中的什么问题。存在以下两种情况: ①若事物间联系是可逆的(比如双行道,朋友),则抽象成无向图 ②若事物间联系是不可逆的(比如单行道,状态转化不可逆),则抽象成有向图 如果需要进一步刻画事物间的联系(比如城市间的距离),就给连线赋一个权值,从而抽象成赋值图。 综上,根据实际问题,可建模成下列图论模型的一种:无向赋权图、有向赋权图、无向非赋权图、有向非赋权图。 例1.宴会定理:任何一宴会中,一定存在两个人有相同的数量朋友M:点表示人,连线表示当且仅当该两个人是朋友 A:问题转化为任何一个图一定存在两个顶点的度相等 二、图论模型 接下来介绍若干典型的图论模型,每种模型几乎对应于图论的一个重要内容,这些内容将在第三章进行讨论,也就给出了这些模型的解答思路。 2.1 偶图模型 凡涉及两类事物间的联系(即只考虑两类事物间的联系,而不考虑同类事物间的联系),均可抽象成偶图模型。作图时,将两类事物分成两行或者两列。这

第九章 图论模型

第九章 图论模型 现实世界的许多实际问题都可以用图形来解释或说明.例如通讯网络就可以用图的形式直观的表现出来:点可以表示通讯中心,而边表示通讯线路.图论模型是应用十分广泛的数学模型,它已经在物理、化学、控制论、信息论、科学管理和计算机等领域.由于它具有图形直观,方法简单容易掌握的特点,因此在实际、生活和数学建模中,有许多问题可以运用图论的理论和方法解决. §9.1图论起源 图论起源于18世纪欧拉对哥尼斯堡七桥问题的研究.哥尼斯堡是18世纪东普鲁士的一个城市,城中有一条普雷格尔河,河中有两个岛,河上有七座桥,如图1所示. 图1 当时那里的居民热终于思考这样一个问题,一个人能否经过七座桥且每座桥只走过一次,最后回到出发点.能否用数学的方法解决这个问题一贯成为当时居民的一个悬而未决的问题. 1736年欧拉创造性的将陆地用点表示,桥用边表示,从而将这个问题转化为如图2所示的一笔画问题,即能否从某个点开始一笔画出这个图形,最后回到原点而不重复.欧拉证明了这个问题是不可能的. 图2 欧拉解决七桥问题时,其方法超出了常用的数学方法,充分发挥自己的想象力,用了全新的思想方法,从而使得问题得到完美解决.由于这一项开创性的工作,产生了“图论”这门崭新学科,欧拉被认为是图论的创始人. A B C D A B C D 1 e 2 e 5e 6e 7 e 4 e 3 e

§9.2基本概念 定义1 图G 由两个点集合V 以及边集合E 组成,记为(),G V E =,其中: (1)V 是顶点构成的集合; (2)E 是连接某些顶点对构成的边组成的集合. 例1 {}1234,,,V v v v v =,{}12232434,,,E e e e e =,画出图(),G V E =. 图3 注:图分为无向图和有向图. 定义2 若图(),G V E =的边均没有方向,这样的图成为无向图.例如图2,图3为无向图.无向图的边称为无向边,无向边是由两个顶点构成的无序对,无序对通常用圆括号表示. 例2 () ,i j v v 表示一条无向边,(),i j v v 与() ,j i v v 是同一条边. 定义3 若图(),G V E =的边均有方向,这样的图称为有向图.有向图的边称为有向边,有向边是由两个顶点构成的有序对,有序对通常用尖括号表示.有向边又称为弧. 例3 ,i j v v 表示一条有向边,,i j v v 与,j i v v 是两条不同的有向边. 定义4 一条边的端点称为与这条边关联,反之,一条边称为与它的端点关联.与同一条边关联的两个端点是邻接的.如果两边有一个公共端点,则这两条边是邻接的。两个端点重合为一点的边称为圈,不与任何边关联的点成为孤立点. 例4 如图4所示,理解定义4 图4 注:若图(),G V E =中V 和E 为有限集,称图G 为有限图,没有任何边的图为空图,只有一个点的图称为平凡图。一个图既无圈又没有两边连接同一对点的图称为简单图。 例5 结合图5理解上述概念。 5 v 4 v 3 1 v 2 v 3 v 4v 12 e 23 e 24 e 34 e

模型实例-红绿灯的调节

模型实例-----红绿灯调节问题 问题的背景及提出 在车辆拥挤的交叉路口,需要合理地调节各车道安置的红绿灯,使车辆能够顺利、有效地通过。首先应使各道都的车辆互不冲突地顺利驶过路口,其次希望效能尽量地高,试制定合适的方案。 假 设 1 我们以一个十字路口为例,含有六个交通流,见图7-1。 2 车辆在经过路口时匀速,在先后两个绿灯交替时,两个交通流不互相冲突。 3 尽量使多个交通流同时使用绿灯,和同时使用地交通流称为相容的。 4 六个交通流的红绿灯的调节是周期性的,譬如60秒。 5 直行和转弯车辆的数量比为λ1:λ2。 6 每个交通流至少使用绿灯时间10秒。 7 以各交通流总的绿灯时间作为衡量红绿灯调节优劣的指标。 模 型 建 立 设图G =,f :V →实轴上的开区间集,令f(v)=J(v)。若v 和u 相邻当且仅当J(v)和J(u)相交,则称G 是区间图。 由假设4,我们先在一个周期时间段上解决问题。取时间轴上0到60秒这段区间,记 为I ,I 上的子区间称为时段。我们进行红绿灯调节实际上是建立一个交通流到I 上时段的函数J ,即把I 分成若干时段,将这些 时段作为绿灯时间分配给各交通流,使之满足假设3、5、6、7。 故我们可以利用图论中的区间图来解决。下面把此问题用图来表示。 我们研究的主要问题是交通流的红绿灯的使用问题,即交通 流之间是否可以同时使用绿灯(相容)。故我们按下面准则建立图:每个交通流用一个顶表示, V={a ,b ,c ,d ,e ,f};当两个交通流是相容的,它们对应的顶之间连一条边,这样得到的图称为交通流的相容图,见图7-2。 发现图7-2交通流相容图不是区间图,即c 和d 、d 和e 、e 和f 、f 和c 同时使用绿灯,c 和e 、d 和f 不同时使用绿灯是做不到的。又由于相容的交通流可以不必同时使用绿灯,为 b 图7-1: 十字路口的六条车道 a b c d f e 图7-2

数学建模中常见的十大模型

数学建模中常见的十大 模型 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

数学建模常用的十大算法==转 (2011-07-24 16:13:14) 1. 蒙特卡罗算法。该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性,几乎是比赛时必用的方法。 2. 数据拟合、参数估计、插值等数据处理算法。比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MATLAB 作为工具。 3. 线性规划、整数规划、多元规划、二次规划等规划类算法。建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。 4. 图论算法。这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备。 5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法。这些算法是算法设计中比较常用的方法,竞赛中很多场合会用到。 6. 最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。 7. 网格算法和穷举法。两者都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。

8. 一些连续数据离散化方法。很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。 9. 数值分析算法。如果在比赛中采用高级语言进行编程的话,那些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。 10. 图象处理算法。赛题中有一类问题与图形有关,即使问题与图形无关,论文中也会需要图片来说明问题,这些图形如何展示以及如何处理就是需要解决的问题,通常使用MATLAB 进行处理。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 以下将结合历年的竞赛题,对这十类算法进行详细地说明。 2 十类算法的详细说明 蒙特卡罗算法 大多数建模赛题中都离不开计算机仿真,随机性模拟是非常常见的算法之一。 举个例子就是97 年的A 题,每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108 种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。另一个例子就是去年的彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。

图论模型建立与转化

图论模型的建立与转化 安徽徐静 关键字:图论模型、建立、转化 摘要 本文主要写图论模型的建立与转化,共分四部分: 第一部分引言说明了图论建模在整个信息学竞赛中的地位,以及图论模型与其它数学模型的异同,并指出很有研究总结图论建模的思想、方法及技巧的必要。 第二部分提出了图论模型建立中的两个要点:对原型中的要素进行适当的取舍和选择合适的理论体系,并分别举例加以详细分析,然后从中总结出了图论建模的总的原则:准确、清晰、简明。 第三部分主要讨论了在图论模型的转化中,应用得较为广泛的两种方法:拆分转化和补集转化,并着重分析了前者。文中把前者分为三类:点→边、点→点、边→边,其中详细分析了第二类。 第四部分总结了全文,并指出了进一步研究图论模型的必要性。 目录 一.引言 (2) 二.图论模型的建立 (2) I.要素的取舍 (2) II.选择合适的理论体系 (4) 三.图论模型的转化 (7) I.拆分转化 (7) II.补集转化 (10) 四.结语 (11)

正文 一.引言 信息学竞赛以解题为主,整个解题过程中一个重要的步骤就是数学建模,本文要讨论的就是数学建模的一个分支——图论建模。 图论建模是指对一些客观事物进行抽象、化简,并用图[1]来描述事物特征及内在联系的过程。 建立图论模型的目的和建立其它的数学模型一样,都是为了简化问题,突出要点,以便更深入地研究问题的本质;它的求解目标可以是最优化问题,也可以是存在性或是构造性问题;并且,和几何模型、运筹学模型一样,在建立图论模型的过程中,也需要用到集合、映射、函数等基本的数学概念和工具; 但图论模型和其它模型在它们的研究方法上又有着很大的不同,例如我们可以运用典型的图论算法来对图论模型进行求解,或是根据图论的基本理论来分析图论模型的性质,这些特殊的算法和理论都是其它模型所不具备的,而且在其它模型中,能用类似于图这种直观的结构来描述的也很少。 我们学习图论,一般都是通过书籍,但书上介绍的往往只限于图论模型的基本要素、一些图论的相关理论和经典算法等,至于如何建立图论模型、如何运用这些理论和算法、如何研究图论问题,都只有靠自己来理解、来领会,并通过实践来验证这些理解,通过摸索总结来提高自己的能力。 在建立图论模型的过程中,我们常常会遇到一些困难,例如难以建立点、边、权关系,或是原型中的一些重要因素无法纳入现有模型,或是现有模型虽能表示原型,却无法求解等等。为了克服这些困难,就需要用到某些独特的思想、方法和技巧,本文要写的正是我在学习、实践中得出的这方面的一点认识。 二.图论模型的建立 在建立模型之前,我们首先要对研究对象进行全面的调查,将原型理想化、简单化(对于竞赛题而言,这一步大部分已经由出题人完成了);然后对原型进行初步的分析,分清其中的各个要素及求解目标,理出它们之间的联系;下一步就是用恰当的模型来描述这些要素及联系。 I.要素的取舍 在用图论模型描述研究对象时,为了更突出与求解目标息息相关的要素,降低思考的复杂度,就不可避免地要舍去部分要素。下面我们就通过例1来分析一下。 【例1】导线排布Line[7]: 题目(文档附件:导线排布.doc)中蓝色的一段是问题描述的重点,其中涉及的要素有圆圈、N根导线、2N个端点、编号规则、导线的交叉等,求解目标是构造一种符合所给的导线交叉情况的导线排布方案。 起先,我们对题目描述的导线排布并不熟悉,或许我们能够画出几个无解或是多解的例子,但竞赛时我们不可能花更多的时间在熟悉题目上了,这时只有尽快地把我们不熟悉的、难于思考的原型转化成我们熟知的、便于思考的模型。 先来分析求解目标:所谓的构造导线排布方案,也就是找出每根导线两个端点的编号;而编号要满足的条件就是导线交叉的情况。 那么下一步我们就来分析一下编号与导线交叉之间的关系。记第i根导线两端点的标号为Ai和Bi(AiB1,A2>B2,A1>A2(根据编号规则),不同的是(a)满足A2>B1,B1>B2,

基于Matlab平台的图论模型的仿真实验

第28卷一第8期 长一春一大一学一学一报 Vol.28一No.8 一2018年8月JOURNALOFCHANGCHUNUNIVERSITYAug.2018一 收稿日期:2018 ̄04 ̄20 基金项目:山东科技项目(J15L157) 作者简介:孙建英(1979-)?女?山东烟台人?副教授?硕士?主要从事应用数学方面研究?基于Matlab平台的图论模型的仿真实验 孙建英 (青岛理工大学琴岛学院?山东青岛266106) 摘一要:在Matlab2014a平台下?利用图论工具箱中的函数求解图论模型中的最短路二最大流和最小支撑树问题?用3个实例进行仿真?能快速方便地得到最优解?对图论模型的进一步研究有重要意义和实用价值? 关键词:最短路?最大流?最小支撑树?Matlab2014a 中图分类号:O29一一一文献标志码:A一一一文章编号:1009-3907(2018)08-0021-04 一一图论模型是数学建模中一类非常重要的模型?它的应用非常广泛?购买机票二设备更新二配送路线选择等?都属于最短路径问题?景区的旅游车辆的最大通行量二石油管道的最大输送量等?都属于最大流问题?电线的架设问题二居民区的供水管道问题等?都属于最小支撑树问题?Matlab2014a平台中的图论工具箱?可以实现图论模型的快速求解?不必编写复杂的程序?对计算机不是很懂的学者也可以很快地掌握?本文从3个实例出发?详细介绍了如何利用图论工具箱快速准确地求解图论模型中的最短路二最大流和最小支撑树问题?对图论模型的进一步研究有重要意义和实用价值? 1一预备知识 1.1一图论工具箱Matlab2014a平台下图论工具箱中的相关函数?如表1所示? 表1一Matlab图论工具箱中的相关函数函数名 功能介绍graphshortestpath 求解无向图和有向图中任意指定顶点的最短距离和最短路径graphmaxflow求解有向图中的最大流graphminspantree求解最小支撑树1.2一稀疏矩阵 稀疏矩阵是指零元素很多?非零元素比较少的矩阵? 稀疏矩阵的存储方式:a(i?j)=m?其中?a表示稀疏矩阵?i表示非零元素的行标?j表示非零元素的列标?m表示非零元素的数值? 稀疏矩阵的使用说明:1)有向图中?可以直接使用Matlab中的sparse命令?把邻接矩阵转化为稀疏矩阵?2)无向图中?由于Matlab只存储下三角矩阵中的非零元素?要先把邻接矩阵转置?再应用sparse命令?2一实例仿真 2.1一最短路问题 例1购买机票问题[1]:某集团公司在六个城市C1?C2? ?C6中有分公司?从Ci到Cj的直飞航程票价如表2所示( - 表示无直飞航班)?如今?集团巡视组要分别从C1出发到其他城市去检查工作?请问:应该如何安排航班?方可使得票价最低?

相关文档
最新文档