图论应用

2024-09-18

图论应用(共9篇)

图论应用 篇1

图论是一门应用十分广泛而又极其有趣的新兴数学分支。随着计算机的广泛应用,离散数学处于越来越重要的位置,图论作为一门提供一种离散数学模型的应用数学学科而得到迅速发展。应用图论来解决运筹、物理、化学、计算机科学、网络理论、信息论、控制论、经济管理等方面已显示出极大的优越性。从数学的角度看,学习图论可以锻炼学生的综合思维能力,提高运用数学工具描述和解决实际问题的能力。同时,图论对于考察青少年的智力水平,提高分析问题与解决问题的能力大有益处,因此在一些国内外著名的数学竞赛中,常常有一些与图论有关的试题。

1、图论的提出

图论是今年来比较活跃的数学分支之一,它研究的对象是图,我们致力所讨论的图并不是几何学中图形,而是客观世界某些具体事物间的联系的一个数学抽象,用顶点代表事物,用边表示各事物间的二元关系,我们就把相应的顶点连成一条边,这种由顶点及连接这些顶点的边所组成的图就是我们图论中所研究的图。一个图就是一个二元组,其中V是非空的顶点集合,E是边集合,而每条边总是与两个顶点关联。

2、图论的发展

图论起源于十八世纪普鲁士的哥尼斯堡,1736年欧拉关于哥尼斯堡的七桥问题的论文被公认为图论的首篇奠基性的论文,20世纪后,图论的应用参透到许多其他学科领域,如物理,化学,信息学,运筹学,博弈学,计算机网络,社会学,语言学,以及集合论,矩阵论等。从20世纪50年代以后,由于生产管理,交通运输,军事,计算机网络等方面的提出的实际问题的需要,特别是许多离散性问题的出现,以及有了大型计算机,而使复杂问题的求解成为可能,图论及其应用的研究得到了飞速的发展,终于成长为数学科学中一门独立的学科。

3、图论的应用

目前,图已经用来作为许多与对象的离散安排有关问题的模型,比如计算机科学、运筹学、通讯科学、电网络分析、量子物理、结构化学、建筑学、经济学、语言学、生物学、社会学、遗传学、法律学、人类学、家系学和定理证明等。

在计算机科学中,利用图的单向树和有序树作为一种数据结构,可用于分析算法的好坏;在编码理论和程序设计中,利用图的霍夫曼树可以得到解决;利用最小树的概念及算法可以解决数据存放的问题;利用线图结构可处理数据管理系统。

运筹学中许多问题如最短路径、人员配置、生产计划和投资安排等可归结为二元关系的问题。比如用图的点表示某种货物可以储藏或装船的实际位置,从一处到另一处的一条有向边和记在这条边上的一个正数代表一条运输货物的水道和它的能力,这个能力给出同时可以通过的最大允许数目。

图与通讯网有极其相似之处,因而用图论方法解决通讯网络问题很自然。通过图可以研究通讯网络的结构性质、布线设计、控制方法以及阻塞的可能性等问题。

许多经济问题如税率涨落、供求关系引起商品流通动态特性的变化等都可用图来描拟并加以研究。

在心理学研究中,用点代表人,而人与人之间的关系比如爱、恨、交往和支配,用边表示,可以得到较好的研究。

4、图论在数学竞赛中的应用

学习图论可以锻炼学生的组合思维能力,提高运用数学工具描述和解决实际问题的能力。同时,图论对于考察青少年的智力水平提高分析问题与解决问题的能力大有益处,因此在一些国内外著名的数学竞赛中常常有一些与图论有关的试题。为了帮助参加数学竞赛的学生加深对数学竞赛中图论方法的理解。下面我们分析几个数学竞赛试题,看看怎样应用图论知识解决数学竞赛试题。

4.1、相互认识与比赛次数问题

定义和定理引入:

定义:

图:有若干个不同的顶点与连结其中某些顶点的边所组成的图形,其中顶点的个数称为阶。

相邻:若图中的两个顶点之间有边相邻,则称这两点相邻;如果顶点是一个边的端点,则称这个点是与这条边是相邻的。

环:有些顶点本身也是有边相连的,这样的边称为环。

平行边或重边:若两顶点之间有K(K≥2)条边相连,则称这些边为平行边或重边。

度:图G中与顶点V相邻的边数(约定环算做两条边)称为G中点V的度,记做d(v);若点V的度数为奇数,则称V为图G的奇顶点;若点V的度数为偶数,则称为图G的偶顶点;

简单图:如果图G中没有环,也没有平行边,则称图G为简单图。

定理1:设G是n阶图,则G中n个顶点的度之和等于边数的两倍。

即d(V1)+d(V2)+A+d(Vn)=2e.(其中e为边数)

定理2:对于任意的图G,奇顶点的个数一定是偶数。

例1:某会议有1991个人参加,已知他们每个人都至少和其中的一个人认识,证明:必有一个人至少和其他的两个人认识。

分析:我们可以用一个顶点表示一个人,两个人认识的则在相应的顶点间用边相连,则在这个1991阶的图中,由题意我们可以知道若每个人仅认识一个人的话,则1度的顶点个数为奇数。即d (V1)+d(V2)+A+d(V1991)≥1991。而有定理1知道,左端和必为偶数,即有d(V1)+d(V2)+A+d(V1991)≥1992。所以知道,必有一点的度数2,所以必有一个人至少认识其他的两个人。

例2:有2n(n≥2)个人在一起聚会,若每个人至少同其中n个人认识,证明:从这2n个人中总可以找出4个人来,这4个人可以围着圆桌坐下,使得每个人旁边都是他认识的人。

分析:我们用2rn个点表示2n个人,如果两个人认识,就在相应的两点间连一个条边,这样得到一个简单图G。我们要证的就是在图G中任一顶点Vi,有d(Vi)≥4,既证明G中必有四边形存在。由题意知,G中两个不相邻的点v1,v2,则有d(v1)+d(v2)≥2n,G中除v1、v2外只有2n-2个顶点,因此其中至少有两个点(记为v3,v4)与v1、v2相邻,于是v1、v2、v3、V4构成四边形。因此,可以知道总可以从2n个人中找出4个人来,使这四个人围着圆桌坐下,并且每个人旁边都是他认识的人。

例3:某地区网球俱乐部的20名成员举行14场单打比赛,每人至少上场一次。证明:必有六场比赛,其中12个参赛者各不相同。(美国数学奥林匹克试题,1989年)

分析:我们用20个点v1、v2、……、v20代表20名成员,两名选手比赛过,则在相应的顶点间连一条边,则可得到图G。由题意可知,图G中有14条边,并且有d(vi)≥1,i=1,2,……,20。由定理1,d(v1)+d(v2)+……+d(v20)=2×14=28。

在每个顶点vi处抹去d(vi)-1条边,由于一条边可能同时被两个端点抹去,所以抹去的边最多是(d(v1)-1)+(d(v2)-1)+L+(v20)-1)=28-20=8(条),故所抹去这些边后所得的图F中至少还有148=6条边,且图F中每个顶点的度至多为1。从而这6条边所相邻的12个人是各不相同的,即这6条边所对应的6场比赛的参赛者各不相同。

例4:某足球邀请赛有十六个城市参加,每市派出甲、乙两个队。根据比赛规则,每两个队之间至多赛一场,且同一城市的两队之间不进行比赛。比赛若干天后进行统计,发现除A市甲队外,其他各队已比赛过的场数个不相同,问A市乙队已赛过多少场?请证明你的结论。(全国高中数学联赛,1985年)

分析:将32个队用32个顶点v、v0、v1、v2、……、v30表示。其中v表示A市甲队。若两队已经赛过就在他们相应的顶点间连一条边,得到图G。在G中,d(vi)≤30,i=0,1,……,30。且当i≠j时,d(vi)≠d(vi)。故除点v外,其他顶点的度分别为0,1,2,……,30。不防设d(vi)=i(i=0,1,2,……,30)。对顶点v30来说,它只和顶点v0不相邻,v30与v0是同一城市的两队,在G中去掉顶点v0和v30及与它们相邻的边,得到图F,在图F中除点v外,各顶点的度仍不同,且都减小1,同样道理,可得v29与v1是同一城市的,依次推出v28与v2,……,v16与v14是同一城市的。于是v15与v是同一城市的,即v15是A市乙队,他已赛了15场。

通过以上对例题的分析,我们可以知道在用图论知识解决这类问题时,可以把人数化为顶点数,认识或者不认识以及比赛与否都可以用两点之间是否相连即用边来表示。这样就可化为图论的基本知识对问题进行求解。当然,像这类问题,比如握手,参加会议所用的语言数,参加舞会两个人是否跳舞……等等,都可以把它转化,然后求解。

4.2、欧拉图问题(一笔画问题)

定义定理引入:

定义:

欧拉图:从一顶点出发而每边恰好经过一次,有能回到出发的顶点的简单图。

定理5:图G是欧拉图的充要条件是:G是连通的,当且仅当奇顶点的度数等于0时,G是欧拉图。

例8:(七桥问题)18世纪,普鲁士的哥尼斯堡镇上有一个小岛,岛旁边流过一条河的两条支流,7座桥跨在两条支流上。假设A表示岛,B表示河的左岸,C表示右岸,D为两支流间的地区,a,b,c,d,e,f和g分别表示7座桥。问:一个人能否恰好经过每座桥1次,并且最后回到原出发点。

分析:既然岛与陆地是桥梁的连接地点,两岸陆地是桥梁通往的地点,就不妨把4处地点缩小成4个点,并把7座桥表示成7条边,便得到了七桥问题的模拟图,见图(b)。于是七桥问题等价于一笔画出上述图形的问题。A、B、C、D四个地点中任何一个点出发点都有先“出”后“回”,最后以回告终。而桥做为两点间的连接,通过时其中一个顶点肯定经过两次,所以不可能一笔画出。

4.3、平面图问题

定义定理引入:

定义:

平面图:如果一个图能画在平面上,使得它的边仅在端点相交,则称为平面图。

定理6:如果一个连通的平面图G中有v个顶点,e条边,f个面,那么v-e+f=2。

定理7:一个连通的平面简单图G有v(v≥3)个顶点,e条边,则e≤3v-6。

例10:空间中是否存在这样的多面体,它有奇数个面,每个面又都有奇数条边?(北京数学竞赛题,1956年)

分析:如果我们假设存在这样的多面体,则可以将这多面体的面用顶点表示,当且仅当两个面有公共棱时,在相应的顶点间连一边,得到图G。按题意,G中有奇数个奇顶点。也就是说图G的所有度数和是个奇数。由定理1,可知这样的图不存在,故这样的多面体不存在的。

例11:有n个车站组成的公路网,每个站至少有6条公路引出,求证:必有两条公路在平面上相交。

分析:n个车站用n个顶点表示,每两个车站有公路相通,则相应的两个顶点间连一边,得图G,由题意可知,G中每个点的度≥6。若G是平面图,则由于6n≤2e,即。又,所以有e=0。这个矛盾的结论表明G非平面图,所以,至少有两条公路在平面上相交。

5、总结

在研究以某种特定方式相互联系的物体或人之间的相互关系时,图论是一个很有用的工具,在许多的实例中,这些物体可以用一个图的顶点来表示,而它们之间的相互联系可以用顶点之间的连线表示。通过这样的转化,就可以化做有关图论知识应用的例子。这样就可以大大的简化做题过程,并且使学生做题水平得到很大的提高。

摘要:本文主要介绍了图论的提出,发展以及作为一门离散数学模型在解决实际问题中的应用。学习图论可以锻炼学生的思维能力,同时对于提高学生分析问题、解决问题的能力大有益处,因此在一些国内外著名的数学竞赛中,常常有一些与图论有关的试题。文章的目的就是让学生掌握和了解最基本的图论知识,开拓学生数学思维,学会应用图论知识解决问题。

关键词:图论,提出,发展,图论的应用

图论应用 篇2

1.已知无向图G有12条边,6个3度顶点,其余顶点的度数均小于3,问G至少有几个顶点?并画出满足条件的一个图形.(24-3*6)/2 +6=9 2.是否存在7阶无向简单图G,其度序列为1、3、3、4、6、6、7.给出相应证明.不存在;7阶无向简单图G中最大度≤6 3.设d1、d2、…、dn为n个互不相同的正整数.证明:不存在以d1、d2、…、dn为度序列的无向简单图.Max{d1,d2,…,dn}≥n,n阶无向简单图G中最大度≤n-1 4.求下图的补图.5.1)试画一个具有5个顶点的自补图

2)是否存在具有6个顶点的自补图,试说明理由。

对于n阶图,原图与其补图同构,边数应相等,均为(n*(n-1)/2)/2,即n*(n-1)/4且为整 数,n=4k或n=4k+1,不存在6阶自补图。

6.设图G为n(n>2且为奇数)阶无向简单图,证明:G与G的补图中奇度顶点个数相等.n(n>2且为奇数),奇度点成对出现

7.无向图G中只有2个奇度顶点u和v,u与v是否一定连通.给出说明或证明。

只有2个奇度顶点u和v,如果不连通,在u和v在2个连通分支上,每个分支上仅有一个奇度顶点,与握手引理相矛盾。

8.图G如下图所示:

1)写出上图的一个生成子图.2)δ(G),κ(G),λ(G).δ(G)=2,κ(G)=1,λ(G)=2.说明:δ(G)=min{ d(v)| vV } ;κ(G)=min{ |V’| |V’是图G的点割集} ; λ(G)=min{ |E’| |E’是图G的边割集} 9.在什么条件下无向完全图Kn为欧拉图?

n为奇数时

10.证明:有桥的图不是欧拉图.假设是欧拉图:桥的端点是u和v,并且图各顶点度均为偶数; 桥为割边,删除桥,图不再连通,u和v应该在2各不同的连通分支上;且u和v度数变为奇数;由于其他顶点度数均为偶数,则u和v所在的连通分支上只有一个奇度顶点,与握手引理矛盾。

11.证明:有桥的图不是哈密尔顿图.若G是K2,显然不是哈密尔顿图;

否则n≥3,则桥的两个端点u和v至少有一个不是悬挂顶点(容易证明悬挂顶点不是割点);设u不是悬挂点,则u是割点,存在割点显然不是哈密尔顿图。

12.树T有2个4度顶点,3个3度顶点,其余顶点全为树叶,问T有几片树叶?

X+2*4+3*3=2*(2+3+x-1)

x=9 13.证明:最大度Δ(T)≥k的树T至少有k片树叶。

设有n个顶点,其中x片树叶

2*(n-1)≥1*K+(n-x-1)*2+x*1

x≥k 14.已知具有3个连通分支的平面图G有4个面,9条边,求G的阶数.n-9+4=3+1

n=9

15.给出全部互不同构的4阶简单无向图的平面图形。

高校图论课程的教学方法与模式 篇3

【关键词】图论 组合数学 教学方法

【中图分类号】G642 【文献标识码】A 【文章编号】2095-3089(2015)08-0178-02

一、前言

在计算机科学和互联网技术的推动下,近几十年里图论取得了一系列发展成果。如今,图论的理论和方法越来越受到各行各业的广泛关注,它已逐渐成为解决工程、信息、交通、经济等各领域实际问题的重要工具之一。但不容忽视的是,在国内的许多高等院校,图论这门课程却没有因此得到足够的重视,在高校开设图论课程的专业很少。另外,在图论教学上也存在课时有限,教学方法单一,重理论轻应用,学生的学习积极性不高等问题,针对这些问题,本文深入分析图论开展的必要性及其重要意义,并对图论的教学改革,作了详尽的探讨和分析,提出几点教学思路和方法。

二、图论教学的重要意义

1.有利于提高学生的数学素养

相对于数学领域的其他课程,图论具有其鲜明的特点,体现在图论概念抽象深奥、研究对象结构复杂、逻辑推理严密、证明技巧性强,大多问题本身虽然朴素易懂,可是求解方法经常难以想到。正因此,图论理论的建立往往蕴含着巧妙的构造、创新的思维以及严密的逻辑推导。通过图论的学习,学生可以深刻地体会到人类思维的深邃广袤,领略丰富多样的数学证明方法,见识巧妙精细的图形构造,并有意识性地去掌握这些证明方法、构造技巧和思维方式,從而培养自己的数学逻辑思维能力和创造能力,进一步提高自己的数学素养和数学悟性。

2.有助于提高分析问题和解决问题的能力

图论是一门产生于实际且服务于实际的课程。特别是进入二十世纪以后,由于计算机科学技术的迅速发展,使得图论中许多复杂问题的求解成为可能,而在生产活动中所出现的其他领域的许多大规模问题又都可以转化成图论问题,因此,图论在实际生活当中的应用变得越来越广泛,例如信息传输问题、交通网络问题等等。学生在学习图论过程中,可以结合现实生活中的问题,分析如何将其转化成图论问题,并设计算法加以解决,以提高自己利用理论知识解决实际问题的能力。

3.有助于提高学生的算法设计和实现能力

图论中很重要的一部分内容,就是其中的经典问题及其有效算法,例如最短路问题的Dijsktra算法,最小生成树的Kruskal算法和Prim算法,二部图最大匹配的匈牙利算法,最大流的标号算法等等。在教学过程中,要求学生深刻理解这些基本算法,并尝试去编写算法的程序代码。同时,在此基础上,也可以适当地提出一些派生问题,启发学生学习如何设计算法,比如在学习最小生成树的算法时,可以要求学生设计求最小森林的算法。在现实生活中,解决其它实际问题的算法往往是以这些基本算法作为子算法,或在此基础上进行适当修改而成的。因此,通过图论的学习,可以提高学生对算法的理解和设计能力,强化程序代码的编写能力。

三、图论的教学方法探析

1.基本理论与实例相结合,准确把握理论的涵义

概念丰富难懂,理论抽象深奥,是图论的一大突出特点,学生常常因此望而生畏。要学好图论,必须首先要准确深刻地理解图论的基本理论。为了让学生做到这一点,在教学时,应坚持理论与实例相结合。讲解概念时,应首先让学生掌握概念的本质涵义,然后通过一些具体的图,让学生直观上就能准确理解概念。例如,若连通图 的顶子集 使得 不连通,则称 是 的点截集,仅仅掌握这个定义远不能深刻理解点截集的涵义,应通过图示的方法进一步说明,若 是 的点截集, 是 的所有连通分支,则当 时, 与 无边相连,而每个 与 之间必有边相连;倘若 是 的最小点截集,则抓住极小性,可知 中的每一顶点在每 个中必有邻点。

2.注重启发式教学,提高学生的主动性

由于图论理论抽象,结构复杂,又受到课时的限制,在课堂上,老师难以面面俱到。因此,在教学方式上,应当采用启发式教学,教师引导学生自觉思考。这一方面可以增加学生的学习兴趣,提高主观能动性,培养学生的自学能力;另一方面让学生自己深入学习各个知识点,在掌握好这些基本理论后,老师对原教学内容进行加深和拓展,从而进一步开拓学生视野,培养学生的创新思维能力。例如,在学完二部图求最大匹配的匈牙利算法后,提示学生一般图中的 -可增广链会出现什么情况,启发学生思考能否用匈牙利算法求一般图的最大匹配,然后自然地引出开花算法。通过这种启发式教学的方式,将学生的思维不断引向深处,并顺理成章地增加教学内容,能使学生更连贯更有条理地掌握图论知识,学习图论基本思想,理解图论的发展规律。

3.课堂讲授与上机操作相结合,培养学生实践操作能力

图论与实际应用联系非常紧密,而实际问题的解决依赖于算法的设计和实现,针对图论的基本问题及其算法,现已开发出一些相应的软件,如Lingo软件,Matlab软件的优化工具箱。在理论教学之余,应适当安排一些上机实验课,让学生熟悉这些软件的操作应用,并能解决一些实际问题。另外,在图论的教学过程中,还应兼顾培养学生独立设计算法及编写算法程序代码的能力,这既可以加深学生对基本算法的理解,同时也培养了学生分析实际问题和解决实际问题的能力。

4.图论与数学建模相结合,增加图论的应用性

传统的图论教学中,理论与实际脱离,学生在课堂上掌握了一大堆概念和理论,但是缺乏动手能力。促使学生将学到的知识用到实处,是图论教学的目的之一。数学建模是将数学知识应用于社会生产中的重要手段,在历年全国大学生数学建模竞赛中,有关图论的竞赛试题曾多次出现,例如1992年B题是求最小生成树,1994年B题是关于最大独立顶点集和最小覆盖等问题。可以说,图论现已成为解决实际问题的重要工具之一,在图论教学中将数学建模的思想、方法和技巧渗透其中是十分必要的,这样既可以激发学生的学习兴趣,又能启发学生自觉思考,培养学生的创新能力。

5. 板书讲授与多媒体课件相结合,让图论更加直观形象

由于图论的内容繁多,结论证明复杂,有时一个定理的证明需要很长的时间,所以在一学期内完成图论的教学,课时十分有限。图论的学习,最为重要的就是学习掌握图论的思维方式。传统的板书教学费时费力,需要花太多的时间书写文字,若能够制作成熟的多媒体课件,配合板书进行教学,不仅减少了老师的板书书写内容,同时还可以为学生呈现图论中各种各样精美绝伦的图,增强图论内容的直观性,让学生更容易理解。

四、结束语

图论在国内是一门相对年轻的课程,做好图论的教学工作任重道远。总的来说,各个院校各个专业应结合本身实际情况因材施教,以提高学生的数学素养为宗旨,以培养学生的思维能力、创新能力和动手能力为目标,选择适合的教学方法和模式。

参考文献:

[1]田丰,马仲蕃.图与网络流理论[M].科学出版社,1965.

[2]王树禾.图论[M].科学出版社,2004.

[3]谢政,戴丽,陈挚.关于图论课教学的思考[J].数学理论与应用,2005,25(4):139-140.

[4]张清华,陈六新,李永红.图论教育教学改革与实践[J].电脑知识与技术,2012,8(34): 8235-8237.

DNA计算在图论中的应用 篇4

自从Adleman博士于1994年开创性地用DNA计算实现了7个顶点的有向图的哈密尔顿问题以来, 国际上DNA计算在图论应用的研究领域中, 主要集中在对哈密顿图问题、图着色问题和图顶点的最小覆盖问题的求解上。继Adleman之后1998年, Roweis给出一种基于Sticke模型的解决集合最小覆盖问题的方法。2000年, Head等又用基于质粒的DNA计算求解了图的最大团问题。同年, Faulhammer等人对骑士周游问题用DNA计算进行了求解[1]。2004年, Zuwairie Ibrahim等人提出了一种求解最短有向路问题的一种DNA算法。2006年, Aili Han和Daming Zhu提出了解决旅行者问题的一种新的DNA编码方法[2]。

电子计算机在解决图与组合优化中的NP-问题是非常的困难, 特别是规模特别大时几乎是不可能的。DNA计算机将具有以下几个方面的突出优点: (l) 具有高度的并行性, 运算速度快。 (2) DNA作为信息的载体其贮存的容量非常之大。 (3) DNA计算机所消耗能量极小。 (4) DNA分子的资源丰富[3]。这些决定了DNA计算在解决非线性复杂问题、NP完全问题时具有其他计算模式所无法比拟的优势。

2. DNA计算的基本原理

DNA计算的本质就是利用大量不同的核酸分子杂交, 产生类似于某种数学过程的一种组合的结果, 并根据限定条件对其进行筛选的。单链DNA可看作由符号A、C、G、T组成的串, 同电子计算机中编码0和1一样, 可表示成4字母的集合来译码信息。特定的酶可充当“软件”来完成所需的各种信息处理工作[4]。

DNA计算的基本思想是:利用DNA分子的双螺旋结构和碱基互补配对的性质, 将所要处理的问题编码成特定的DNA分子, 在生物酶的作用下, 生成各种数据池;然后利用现代分子生物技术如聚合酶链反应、聚合重叠放大技术、超声波降解、分子纯化、电泳、磁珠分离等手段破获运算结果;最后通过测序或其它方法解读计算结果。DNA计算的核心问题是将经过编码后的DNA链作为输入, 在试管内或其它载体上经过一定时间完成控制的生物化学反应, 以此来完成运算, 使得从反应后的产物中能得到全部的解空间。

3. DNA计算在图论中的应用

3.1 最小生成树问题

文中我们考虑的图是连通赋权简单图。若图是连通的无向图或强连通的有向图, 则从图中任意一个顶点出发遍历图中的所有顶点, 这个过程中经过的边所构成的子图称为原图的生成树。所以最小生成树可描述为:在连通图G的所有生成树中, 代价 (生成树各边权值之和) 最小的生成树称为最小生成树[5]。最小生成树可简记为MST。

下面讨论求解最小生成树问题的算法。根据最小支撑树的定义, 我们可以将最小支撑树的算法简单概括如下:针对图G, 从空树T开始, 往集合T中逐条选择权最小的边 (始终保持边数=顶点数-1) , 直到无法再扩展为止。具体步骤如下:

步骤一:从E中选取一条最小权的边, 记为el=[v1, vZ], E={e1};记n=2, Vn={vl, vZ}。

步骤二:如果n=|G|, 则T= (Vn, En-1) 是最小支撑树;否则执行步骤3。

步骤三:从[Vn, V-Vn]中选一条权最小的边 ([Vn, V-Vn]表示连接顶点Vn, V-Vn的边) 记为en-1=[Vn-1, Vn], Vn+1=Vn∪{vn}, En=En-1∪{en-1}, 把n换成n+1, 转入第2步。

我们来介绍上面提到的算法所对应的分子操作步骤:

步骤一:对图的顶点、边以及边的权进行DNA编码:对于图G的任意顶点vi, 用长度为20的寡聚核苷片断表示 (即它包含20个碱基) , 并记为Ni (i=1, 2, …, n) 。然后利用Ni构造n个探针, 并分别记为Q1, Q2, ……, Qn。对于图G的边eij由三个部分表示:第一部分是寡聚核着酸片断Ni的碱基的补链所构成的寡聚核苷酸片断;第二部分是寡聚核苷酸片断Nj的碱基的补链所构成的寡聚核苷酸片断。第三部分是长度为[30*wij/D+0.5] (wij为边eij的权, D=max{wij}) 的寡聚核苷酸片断;下面通过例子解释编码问题。

根据图1, 可得到, D=max{1, 5, 4, 4, 2, 3, 6, 5, 7}=7。因此根据上面的公式, 可以得到对应于边权w12, w23, w34, w45, w15, w26, w36, w46, w56, 编码的寡聚核苷酸片断的长度分别为:26, 22, 30, 13, 5, 9, 22, 18, 18。由于篇幅所限, 我们这里就只拿e12, e23, 举例。顶点1, 2, 3的编码如下:

N1:TCGGTAATGCTAGCTGGAGA

N2:TATAGGCCATGCGATCGGTA

N3:CGTTAAGCAGTACGAGTCAG

根据编码规则, 得到e12, e23的编码为:

注意:寡聚核普苷片断Nij中带下划线的部分为边的权值长度。

然后将等量边eij (l≤i

步骤二:从试管B中取出部分溶液进行琼脂糖浆凝胶电泳, 跑在最前端的就是最短的DNA链, 该DNA链对应的一定是图G的权最小的边。提取出这些DNA链并用PCI进行扩增和纯化来增加它的纯度。

步骤三:对第二步的产物进行测序并记录这条边。不妨记这条边为e12=v1v2, 同时记V1={v1, v2}。如果V1=V (G) , 则停止;如果V1V (G) , 那么利用探针Q1, Q2将含有顶点v1及含有顶点v2的边e12从试管B中分离出来, 然后再分别利用探针Q1, Q2将含有顶点v1及含有顶点v2分离出来建立新的试管, 仍然记为B, 转入第2步。

按此操作, 最多经过n-1步, 就可以找到图G的最小生成树, 而且在生物操作中, 用电泳代替了权值的比较, 更加适合于寻找比较复杂的图的最小生成树。

3.2 哈密顿路径问题

哈密顿路径又称为哈密顿回路, 是指一个图中, 从图的一个顶点出发, 沿着图中的边 (各顶点连线) , 经过所有顶点且只经过一次, 最终又回到起点, 这条回路就称为哈密顿路径。在一个赋权图中的所有哈密顿路径中, 所经各边权值之和最小的哈密顿路径称为最短哈密顿路径, 也称为最短哈密顿回路[6]。哈密顿路径问题是一个NP-完全问题。本节阐述了利用DNA计算的方法找出无向赋权图中的所有哈密顿路径并找出最短的哈密顿路径的算法。

在1994年Adleman博士用DNA计算首次实现了7个顶点的有向图的哈密尔顿问题。这里采取一种与Adleman博士不同的编码方式。Adleman博士当时采用DNA链的长短的编码方式来代表权值的不同。这种编码方式随着问题规模的增长DNA链的结构也会随之不稳定, 在实际中的可行性也随之降低。文中采用通过链中G, C含量的不同来代表不同的权值。对于权值较高的边使其具有高的GC含量;因为GC配对是形成三个共价键其解链温度大于AT形成的二个共价键的结合。并且与Adleman博士在1994年所做的实验不同的是, 这里解决的是无向图。在算法里将无向边作为两条有向边进行处理。

下面讨论求解无向赋权图中的哈密顿路径问题的算法。哈密顿求解的问题可形式的表示为:给定无向赋权图G= (V, E, W) , V表示图的顶点, E表示图的边, W表示图各边的权值。设图中, |V|=n, 即V (G) ={V0, V1, V2……Vn-1}, 如果存在为V0为起始点以Vn-1为终点的一条包含图p个顶点一次且仅一次的路, 则称这条路为为以V0为起始点以Vn-1为终点的一条Hamilion路。可以将求解无向赋权图中的哈密顿路径问题的算法简单概括如下:随即产生图G的所有路径, 从中找出含有n个顶点的的路径。并从这些路径中找出经过图G所有顶点 (V (G) ={V0, V1, V2……Vn-1}) 且只经过一次的路径。再从中得到权值最小的路径。具体步骤如下:

步骤一:随即产生图G中的所有路径, 记为P。

步骤二:从P中找出含有n个顶点的所有路径, 记为P1。

步骤三:从P1中找出经过所有顶点V (G) ={V0, V1, V2……Vn-1}且只经过一次的所有路径, 这些路径既是图G所有的哈密顿路径, 记为P2。

步骤四:从P2中找到其中权值最小的一条路径, 这条路径既是图G的最短哈密顿路径。

我们来介绍上面提到的算法所对应的分子操作步骤

步骤一:首先对图中所有的顶点V (G) 和所有的边E (G) 进行编码。Vj=Vj’Vj”用20bps的寡居核苷酸表示, 。Vj’代表顶点Vj的前端的10个寡居核苷酸, Vj”代表顶点Vj的前端的10个寡居核苷酸。边eij由顶点Vi的后10个寡居核苷酸Vi”, 权值w和Vj的后10个寡居核苷酸Vj’表示。其中w通过边编码的CG含量不同来代表它的大小, 并根据实际情况选定边编码的长度。

下面通过例子解释编码问题。

根据图2, 用20bps长度的DNA链表示图的边, 并且通过代表各边的DNA链中的CG含量来区分权值的大小。图中有6种不同的权值, 为了在后续试验中比较容易区别出不同的权值, 这里可以领GC含量各相差4。各边的GC含量分别为:0, 4, 8, 12, 16, 20。无向图的边可以看成有向边, 只不过入度和出度不同。由于篇幅所限, 我们这里就只拿e01, e10, e12, 举例。顶点V0, V1, V2编码如下:

注:单下划线表示顶点Vj的前10个寡居核苷酸Vj’, 双下划线表示顶点Vj的前10个寡居核苷酸Vj“。

根据编码规则, 得到e01, e10, e12的编码为:

注:黑色下划线表示边的权值。

按照上面的编码方法生成所有顶点和边的补链, 并加上连接酶和缓冲液加入试管中。使之得到充分的复制。DNA分子大量冗余的特点保证了一定能得到所有可能性的路径。

步骤二:在步骤一得基础上, 利用V1和Vn-1构造探针Q1和Qn-1。并且以这两个探针为引物进行PCR反应。这样试管中以V1为起始点以Vn-1为终点的路径的到大量的复制。

步骤三:对于步骤二生成的产物, 进行凝胶、层析和多次的纯化的到长度在制定区间的分子 (这个区间保证得到所有经过n个顶点的路径) 。

步骤四:利用V1, V2……Vn-1构造探针Q1, Q2……Qn-1。在第三步的基础上, 以Q1, Q2……Qn-1为引物, 用磁珠分离的方式进行过滤。最终剩下的就是图G中的所有哈密顿路径。

步骤五:在步骤四的基础上, 以边权的编码作为引物, 进行PCR扩增。同时对试管溶液进行缓慢的加热。使GC含量较低的路径得到较大几率的扩增, 并进行多次循环的PCR扩增。

步骤六:对步骤五得到的试管溶液进行凝胶电脉得到浓度最高的DNA链。这条DNA链既是图G的最短哈密顿路径。

4. DNA计算在图论中存在的问题

DNA计算在图论应用的领域中还存在一些尚待解决的问题。第一, 图论中权编码的问题, 编码不够合理会直接影响到整个算法的性能。第二, 如何对算法进行设计和优化以降低算法的空间复杂度。第三, 操作的规模和次数问题, 操作规模过于庞大直接影响到算法的精确性和计算时间。

参考文献

[1]韩爱丽.赋权图上优化问题的DNA计算方法研究.中国博士学位论文全文数据库.2008

[2]YuseiTsuboi, Zuwairie Ibrahim.Algorithm of graph isomorphism with three dimensional DNA graph structures.International Journal of Hybrid Intelligent Systems.2005

[3]刘永现.赋权图的DNA计算模型.中国硕士学位论文全文数据库.2008

[4]殷志祥, 张佳秀.图论中的DNA计算模型.系统工程与电子技术.2007

[5]韩世芬.基于DNA计算的遗传算法解决最小生成树问题.鄂州大学学报.2008

[6]崔光照, 张勋才, 王延峰.DNA计算中编码序列的优化设计方案.计算机应用研究.2007

[7]周康, 殷燕芳, 李玉华等.编码的模型分析.华中科技大学学报自然科学版.2007

[8]许进, 强小利, 方刚等.一种图顶点着色DNA计算机模型.科学通报.2006

[9]朱翔鸥, 刘文斌, 孙川.DNA计算编码研究及其算法.电子学报.2006

[10]Satoshi Nakamoto, Kazuhiko.An Error-Resilient Encoding with Fewer DNA Strands for Graph Problems on DNA Computing.Electronics and Communications in Japan.2005

图论应用 篇5

一、GPU同传统并行计算架构的区别

1.1同多核CPU的区别研究

对于CPU,其应用目的对其体系是一种严重的限制,在CPU芯片上,大部分的电路都是用作逻辑控制或者缓存,这导致计算单元的晶体管数量非常少。通过大量的研究可以发现,对于GPU来说,其在应用的过程中,并行指令的数量非常少,但CPU却大部分采用的是长指令字等指令级的并行技术,这种技术使其架构和GPU之间存在着本质上的区别。此外,设计目的也存在着较大的差别,对于CPU,其主要是实现ALU指令的获取和执行,因此,逻辑控制电路等数量较大,但对于GPU来说,其主要是为了提高自身的计算能力,其更加注重的是对数据的吞吐效率,因此,对于逻辑控制设计相对较为简单。

1.2同分布式集群的区别

对于GPU和集群之间的区别,其主要分为两个方面:首先是在计算方式上,对于集群,其采用的是主从模式,这种计算方式采用的是分割计算,通过Slave的计算和Master的集合和处理功能对数据进行计算。对于GPU来说,其通用计算和集群的模式相似,但GPU是Slave。然后是通信方式之间的区别,对于集群,其通信主要是通过局域网或者互联网等,这种算法在计算时需要对传输的细节进行重点的考虑,防止设计方面出现传输限制。而对于GPU芯片而言,其采用的是PCI-E接口进行数据等的传输,因此,其仅仅需要考虑的是如何对计算内容进行分配以及哪一部分的CPU具有什么样的特性等。

二、GPU加速计算有向图的强连通分量

对于有向图的强连通分量计算,其是图论中一个非常基本性的问题,像对复杂产品设计中的耦合任务集进行识别等。若将设计过程中所涉及到的各个人物看做是图的顶点,然后通过不同任务之间的关系能够建立一个有向图,而其中的耦合任务集的识别就变为了对途中的强连通分量进行寻找。在GPU加技术应用之后,设计了一个FB算法,其能够对非平凡图的强连通分量进行计算。

2.1 FB算法

对于FB算法,其在计算过程中不是依靠DFS为子的一种算法,而是通过分配模式将不同的子问题分配到各个单元中对其进行处理,而对于每个子问题,其都是通过顶点的可达性来进行分析,因此,FB算法具有较强的并行化能力。对于FB算法,其需要对下面两个引理进行重点的观察:

给定有向图G=(V,E),v⊂V,则:

FWD(G,v)∩BWD(G,v)=SCC(G,v)

给定有向图G=(V,E),v⊂V,那么对于任何不包含v的强连通分量,其一定是FWD(G,v)BWD(G,v)和Rem(G,v)三个和集中的一个。

通过这两个理论可以得知,对于FB算法,其具体的计算过程是:首先选择一个顶点,然后对其前闭包和后闭包进行计算,两个集合之间的交集就是强连通分量值。然后通过剩余的顶点对原图进行3个子集的划分,并通过迭代计算对三个子图进行重复性的上述计算过程,这样就能够实现子图的并行处理计算。

2.2基于CUDA的FB算法

首先是GPU中的图存储,对于当前的图算法,其采用的都是邻接表或者邻接矩阵,对于G=(V,E),其采用邻接表来对其进行表示,定义数组Adj代表|V|,其包含了满足(v,u)∈E的全部顶点,然后通过|V|×|V|来对矩阵进行表示,通过邻接表对无向图进行表示时,其大小为2|E|,而有向图的表达则是|E|。而采用邻接矩阵进行表示时,其空间需求都是O(V²)。而在通过GPU技术进行图数据的存储时,需要对下面几点内容进行考虑:首先,同现代的传统CPU主机系统相比,GPU的系统内存相对较小,然后是CUDA的模型,其采用的是一种CPU-GPU的异构模型,这种模型在进行数据的传输时同传统的计算机不同,最后则是对于CUDA的存储系统,其内存和主存两者之间选择不同的地址空间,因此,在进行指针数据的操作时较为困难,且设备的内存采用的是线性内存,这种存储方式更加适合数组形式的数据结构存取。

然后是算法的主体结构,对于FB算法,其SIMT架构也能够对顶点的闭包进行计算,通过迭代方式能够对非平凡的强连通分量进行计算,然后通过核函数起到时的线程分配来实现线程的计算和访存。

三、GPU加速计算图的最小生成树

加入G的一个子图包含了G的全部顶点,那么就将其称为G的生成树。对于生成树中的各边权,将其综合定义为G的耗费,由于不同的子图生成的生成树具有不同的耗费,而其中耗费最小的就是最小生成树。下面对CUDA模式下的最小生成树进行了简单的介绍。

为了能够更好的对图的数据结构进行处理,同时节省存储空间,在对生成树进行计算时,往往采用的是两种图的数据结构,下面的(a)和(b)两种不同的结构构成了两种不同的计算方法,其中,(a)可以将所有的边都看做是没有方向的,然后通过(S,E,W)来对其进行表示,而对于(b)来说,其采用的是压缩邻接表而对方法,将每一条边看做是方向完全相反的两条边对其进行表示,采用的是(E,W)元组。而对于VP,其中存放的则是索引位置,而W数组的使用是为了对边的权值进行存储。

四、GPU加速计算图的最短路径

对于这一问题,其在当前的网络和物流等中应用非常频繁,而对于如何高效的选择最短路径一直是科学家关注和研究的热点问题。在本文中采用了一种基于CUDA的并行算法,其能够通过对SSSP算法进行多次的重复运行来实现边权值的非负APSP问题。下面对基于CUDA的SSSP算法进行了简单的介绍:为了能够实现这一算法,可以通过压缩邻接表对图中的数据结构进行计算,而在当前的CUDA编程中,采用的是CPU和GPU两种线程的同步运行,而通过开发multiprocer之间的同步,能够对全局线程进行有效的同步。为了实现APSP问题,可以通过在每一个顶点上运行上一节的SSSP算法来实现,这种并行方案能够对GPU的全局内存进行有效的利用。

五、总结

伴随着GPU计算能力的不断发展,其在各个领域中的应用和计算能力也将得到有效的提高,对比与传统的CPU和集群算法,GPU具有成本低和功耗少等优点,在未来的图论算法中,GPU加速技术应用将越来越广泛。

参考文献

[1]王一同.GPU加速技术在图论算法中的应用[D].电子科技大学,2014.

[2]郭绍忠,王伟,周刚,胡艳.基于GPU的单源最短路径算法设计与实现[J].计算机工程,2012,02:42-44.

图论应用 篇6

1 流体网络基本方程

根据质量守衡 (流体网络任一节点上的支路流量的代数和恒为零——根据基尔霍夫电流定律) 和能量守衡 (流体网络中任一回路内, 支路的压降的代数和恒为零——根据基尔霍夫电压定律) 两个原理[1], 这些流体输配管网应满足

式中:A流体网络图的基本关联矩阵, 设管网的节点数为n, 管段数为b, 为一 (n-1) ×b阶矩阵;G管路流量向量, b维列向量;B流体网络图的独立回路矩阵, 为一 (b-n+1) ×b阶矩阵;ΔH管路压降列向量, b维列向量;DH管路风机/水泵压头, b维列向量, 当管段i上没有风机/水泵时, DH (i) =0, 当管段i上有风机/水泵时, |DH (i) |为风机压头, 风机方向与管路方向一致时, DH (i) 取正, 风机方向与管路方向相反时, DH (i) 取负;S以管路阻抗s为元素的b×b维对角阵;Z管路起止节点位能差向量, b维列向量;|G|以管路流量的绝对值为元素的b×b维对角阵;P各节点相对于参考节点的压差向量, (n-1) 维列向量。

2 基本关联矩阵A、基本回路矩阵B, 以及两者的关系

对于图1所示的图G, 其节点数n=4, 支路数b=6, 节点和支路的编号及指向如图1中所示。它的关联矩阵Aa为一n×b阶矩阵, 其行对应于节点, 其列对应于支路, 而任一元素aij定义如下:aij=1, 如果支路j和节点i关联, 且支路j的方向离开节点i;aij=-1, 如果支路j和节点i关联, 且支路j的方向指向节点i;aij=0, 如果支路j和节点i无关联。

因此, 图1中的Aa为:

将关联矩阵Aa的任一行划去, 所得的矩阵A的秩仍为n-1, 这个矩阵实质上已经包含了Aa的全部内容, 划去的行所对应的节点vi即为参考节点, 矩阵A称为以vi为参考节点的基本关联矩阵[3,4]。

可以用另一回路矩阵Ba来描述图1中图G的回路与支路的关联性质, Ba为s×b阶矩阵, 其中s为G的回路数, b为支路数。在各回路中, 预先标出该回路的方向, 回路的方向可以按需要任意选择。则Ba的任一元素bij定义如下:bij=1, 如果支路j在回路i中, 且支路的方向与回路方向一致;bij=-1, 如果支路j在回路i中, 且支路的方向与回路的方向相反;bij=0, 如果支路j不在回路i中。

对于一个节点数为n, 支路数为b的连通图G, 回路矩阵Ba的秩为m=b-n+1。可见, 回路矩阵Ba中只有m行线性无关, 将这m行取出来构成一个m×b的子矩阵, 这个矩阵就完全能把Ba的信息表达清楚, 且这m个回路是独立的, 矩阵B称为图G的独立回路矩阵[3,4]。

基本关联矩阵A和独立回路矩阵B满足正交性, 即

由上式得出, 只要知道了图G的基本关联矩阵, 就可以求出它的独立回路矩阵[3,4]。

3 基本关联矩阵的MATLAB程序

本文选取一典型的VAV空调系统管网, 抽象成一个网络图, 共有n=60个节点、b=88条支路。该VAV空调系统的流体网络图的生成树, 有n-1=59条树枝, 余枝有b-n+1=29条, 单余枝回路应有b-n+1=29[5]。

在进行了节点、支路的编号后, 同时系统各支路的流量方向也是明确的 (由实际工程系统决定) 。根据所编制的程序, 只需给出图的节点数、支路数和输入各管段的起、止节点编号便能生成系统网络图的关联矩阵, 在给出参考节点编号后, 就能得到参考节点的基本关联矩阵。依据文献【2】中的“二数组法”[2], 编制了该VAV空调系统管网网络图的基本关联矩阵的MATLAB通用程序tulungljz.m:

可见, 该程序简单, 而且很接近对管网的描述, 不易出错。

4 整体计算的程序方框图

在以上工作的基础上, 编制了用于计算各工况下VAV系统内压力-流量分布特性的整体计算程序。程序方框图见图2。图中δ为预先指定的精度, 本文取δ=0.001。关联矩阵A、独立回路矩阵Bf按余枝在前, 树枝在后的次序排列;流量列向量G、阻抗列向量s、压降列向量ΔP按余枝在上、树枝在下的次序排列。节点压力列向量Ptotnode, 次序不变, 仍是按节点的编号次序排列。所以:

给出某一工况下的初始条件包括送风机、回风机的风量与转速, 各末端box阀位角θ, 某些支路的阻抗s、余枝的初始流量GL, 根据图2的程序方框图的计算程序, 便可进行该VAV变风量空调系统运行工况下各节点各支路的压力、流量计算。

5 结语

本文基于图论的流体网络基本方程对一典型的变风量空调系统建立了流体网络图, 并运用MATLAB语言编制了计算基本关联矩阵的通用程序, 同时编制了用于计算各工况下VAV系统内压力-流量分布特性的整体计算程序, 为变风量空调系统运行工况下的压力-流量水力分析打下了基础。

人防墙:人防内墙采用上下固端、人防外墙采用上绞下固的单向板模型进行设计, 而门框墙及战时封堵则按悬臂构件计算。因平战兼顾的要求, 部分门框墙的门垛较长且地下室层高较高, 此时应在不影响建筑使用要求的基础上, 在门边增设扶壁柱及在门框上设梁等措施, 按两端简支模型验算, 更加安全并兼顾经济性要求。密闭门需要在平时使用的, 采用活门槛的设计;战时封堵上挡墙一般情况同时为顶板梁, 作为悬臂构件时梁箍筋为主受力筋, 应单独验算。

风井:考虑侧土压力及人防等效静荷载组合。

开敞式通道:只计算静土侧压力, 按悬臂构件计算。

开敞式防倒塌棚架:上、下表面受荷分别进行计算。

扩散室防爆波活门:扩散室安装悬板活门的墙面及活门按临空墙荷载取值, 其余墙面按相应人防墙分类进行计算。

平战兼顾设计是实现“平战结合”建设方针的重要措施, 人防工程具有战时确保城镇居民安全与生活的特殊功能要求, 因此其设计荷载及功能都与传统建筑有很大区别, 且对建筑的抗辐射能力也有很高要求, 这与建筑物的平时使用原则多有相悖, 故人防工程设计应根据工程实际情况综合考量确定。

本工程中, 人防分区较多, 分区之间仅设置汽车通道并不能完全满足平时使用需要, 故建筑设计在人防隔墙上增设了一些双向密闭门通道供人员平时通过, 满足人防工程的要求同时更利于平时使用, 得到人防审批部门的认可。

在设计中, 设计人员由对防空地下室结构中的一些部位的设计原理不胜了解, 往往觉得无从下手。目前防空地下室结构设计可参考中国建筑标准设计院出版《防空地下室结构设计》图集, 为设计人员提供了丰富的设计参考资料;2012版的PKPM系列结构设计软件中, 有关防空地下室结构设计方面的功能也有所加强。关键是设计人员必须掌握防空地下室结构各部位荷载取值及材料强度调整的原理。

摘要:本文基于图论的流体网络基本方程对一典型的变风量空调系统建立了流体网络图, 并运用MATLAB语言编制了计算基本关联矩阵的通用程序, 同时编制了用于计算各工况下VAV系统内压力-流量分布特性的整体计算程序, 为变风量空调系统运行工况下的压力-流量水力分析打下了基础。

关键词:图论,流体网络,水力分析,关联矩阵,建模

参考文献

[1]罗志昌.流体网络理论.机械工业出版社, 1988:1~9.

[2]肖益民, 付祥钊.用MATLAB分析流体输配管网的初步研究.重庆大学学报 (自然科学报) .2005, 25 (8) :15~16.

[3]卢开澄, 卢华明.图论及其应用.第二版.清华大学出版社, 1995:14~17 41~52.

[4]邱关源.网络图论简介.人民教育出版社, 1978:1~14 26~27 30~41 51~54 55~5961~64.

图论应用 篇7

上述用手工方法计算工艺尺寸链的过程非常繁琐,计算量庞大。应用计算机求解工艺尺寸链,能够运用先进的解算方法,快速准确的了解工序尺寸间的相互关系,最大限度的减少原料、工耗、降低成本,提高经济效益[2]。鉴于此,本人在总结工艺尺寸链计算特点的基础上,借鉴“绕圈法”的原理,引入图论来辅助分析组成环的增减性,即建立表达各环之间位置关系的无向图———尺寸图,通过对该尺寸图的遍历达到求解工艺尺寸链的目的,该方法能快速准确的进行工艺尺寸链的正计算[3]和中间计算[3]。

1 尺寸图的数据结构

在计算机辅助工艺尺寸链的解算过程中,需要用户输入的信息包括各已知环的基本尺寸、上下偏差以及各环之间的位置关系。通过分析,待输入环与已输入的某环有图1所示的四种位置关系,其中(1)所标识的环表示已输入的环,这里称其为被参照环;(2)所标识的环表示待输入的环。

根据以上输入的各已知环之间的位置关系建立无向图即尺寸图,其中,用各环首尾相接的端点作为尺寸图的顶点,用相应端点之间的尺寸环作为尺寸图的边。并采用邻接表链式存储结构,在邻接表中,对图中每个顶点建立一个单链表,第i个单链表中的结点表示依附于顶点Vi的边。具体结构如下所示:

结构体headnode是尺寸链分析和计算模块中用于存储无向图头结点信息的数据结构,无向图对图中每个顶点均建立一个头结点。该结构体包括五个数据成员,数据成员degree是整型变量,它记录了该顶点的度,即依附于头结点的表结点的数目。

数据成员vexnum是整型变量,它表示无向图中顶点的序号。对于各尺寸环首尾相接的端点从第一个输入的尺寸环开始进行编号,输入序号为1的尺寸环的左端点编号为1,右端点编号为2,由于第二个尺寸环的添加而产生的新端点编号为3,依次类推,因第i个尺寸环的输入而产生的新端点则编号为i+1。

数据成员coord为双精度型变量。建立以第一个输入的尺寸环的左端点为原点,以相对于窗口向右和向下的方向为X轴和Y轴正方向的逻辑坐标系。如图2所示的尺寸链的正计算中,假设尺寸环A1的输入序号为1并假设其基本尺寸为x1,那么端点1的逻辑坐标为0,而端点2的逻辑坐标为x1,以此类推。该数据成员记录了无向图中各顶点的X坐标值。而后对组成环增减性的判断主要依据此成员变量记录的X坐标值。

数据成员vexnext为vexnode结构类型的变量,它指向依附于该头结点的第一个表接点。

结构体vexnode是尺寸链分析和计算模块中用于存储无向图表结点信息的数据结构。该结构体包括四个数据成员,数据成员vexnum是整型变量,它表示依附于无向图中顶点的Vi的边所邻接的另一顶点Vj的序号j。

数据成员ringnum是整型变量,它表示该尺寸环的输入序号。

数据成员next是vexnode结构类型的变量,它指向依附于该头结点的下一个表结点。

2 尺寸图的建立算法

尺寸图实际上是用于存储尺寸环相关数据信息的无向图,建立尺寸图的目的是为了方便系统对尺寸链中各组成环增减性的判断。

邻接表是一种链式存储结构。在邻接表中,对尺寸图中每个顶点建立一个单链表,即无向图的头结点。若尺寸链中已知环的个数为N,那么该尺寸链将包含N+1个首尾相接的端点,也就是说我们要为该尺寸链建立N+1个头结点。第i个头结点中的表结点表示依附于顶点Vi的边。由于在尺寸图中依附于某一顶点的边的数目为一到两个,因此我们需要为每一个头结点建立一到两个表结点以记录各个已知尺寸环的信息。

如图2所示的尺寸链中,A0为封闭环,A1、A2、A3为组成环,在正计算中,A0为未知环,A1、A2、A3为已知环,依次输入已知环A1、A2、A3的数据信息,按此输入顺序,建立了包含编号从(1)到(4)四个顶点的尺寸图,具体如图3所示。

建立尺寸图邻接表数据结构的算法步骤如下:

1)若当前输入的尺寸环的输入序号为1,则分别建立结点序号为1和2的两个头结点和两个表结点。将结点序号为1和2的表结点分别插入到结点序号为2和1的头结点所在的单链表的表尾以表示尺寸图的当前边。

2)若当前输入的尺寸环的输入序号为i(i≠1),则需要在无向图中建立顶点序号为i+1的顶点,即在邻接表中建立结点序号为i+1的头结点和表结点。若在尺寸图中将要建立边所依附的另一个顶点序号为j,则在邻接表中仍需建立结点序号为j的表结点。接下来首先将序号为i+1的表结点插入到结点序号为j的头结点所在的单链表的表尾,再将序号为j的表结点插入到结点序号为i+1的头结点所在的单链表的表尾。

反复进行上述两步操作,直到尺寸链的所有已知环输入完毕为止。

3 组成环的增减性判断算法

前面已经建立了尺寸图的数据结构。对该尺寸图的各个顶点进行遍历,通过比较各个顶点X坐标值的大小,即可判断出各组成环的增减性。

为了在遍历过程中便于区分顶点是否已被访问,需附设访问标志数组visited[1:N+1](N为输入的尺寸环的个数),其初值为“false”,一旦某个顶点被访问,则其相应的分量值置为“true”。

另外,建立整型数组s[1:N],用来记录各个组成环的增减性信息,当其数组元素为-1时,表示该尺寸环为减环,否则表示该尺寸环为增环。

算法步骤如下:

1)在上述建立的尺寸图数据结构中,取出度为1的顶点序号,由于在尺寸链的解算过程中,只有一个尺寸环未知,因此度为1的顶点个数为2,分别记为va和vb。设其顶点X坐标值分别为xa和xb。

2)比较上述两个顶点X坐标值xa和xb的大小。从值较大的顶点开始深度遍历。置visited[xa]=true和visited[xb]=true

3)设xa>xb,并假设依次遍历的顶点序列为va,……,vi,vj,……,vb,相应的X坐标值分别为xa,……,xi,xj,……,xb。对该序列中相邻顶点的X坐标值两两比较。设依附于顶点xi和xj的边所代表的尺寸环输入序号为k。

对遍历序列中,两两相邻的顶点的X坐标值都进行类似上面的比较,并对相应的s数组中成员变量赋值。

4)对s数组从s[1]开始进行扫描,

4 总结

将图论引入到计算机辅助工艺尺寸链解算过程中,能够有效的解决在计算机中存储尺寸链数据信息的问题,并达到自动判断各组成环增减性的目的。该方法为借助计算机自动解算工艺尺寸链提供了一种有效的实现途径,主要有以下特点:

1)信息存储量较小,占用较少的计算机内存;算法复杂度较低,程序的执行速度较快。

2)计算过程稳定可靠。

参考文献

[1]肖海波.尺寸链解算的技巧[J].机床与液压,2004(4):35-37.

[2]华雷,丛培田.计算机求解工艺尺寸链的研究[J].机械设计与制造,1996(5):20-22.

图论应用 篇8

关键词:网络分析,最短路,网络计划技术,D算法

T1454切眼是公司5煤工作面, 5煤低灰、低硫素有“开优”煤的味精之称, 5煤的开采对公司的效益有着举足轻重的关系。虽然T1454切眼煤层赋存比较好地质构造比较简单, 变板过程轻车熟路, 但是公司要求工程时间紧, 劳务区人员工力比较有限, 而且因大井检修造成供料不及时, 如何在有限的时间内用有限的人力完成这项比较艰巨的任务是摆在劳务区全体员工的一个重要课题, 经过劳务区党政反复研究决定, 应用网络分析理论指导变板生产。

劳务区必须用最短的工期完成T1454切眼变板的工程, 为此我区将用求最短路的d算法寻找出最佳的生产途径, 从而实现T1454切眼变板的工程完成工期最短的目的。

一、网络分析在工程施工中的应用

(一) 工程项目分解

T1454切眼扩面变板工作可分解为运道修道→运变板料→变板→跨板→铺网打抬板 (包括上、下出口替板) →拆溜子清卧。

(二) 确定各种活动的先后关系, 估计活动所需的时间

根据以往施工经验, 确定T1454变板工程活动所需的时间, 采用单一时间估计法进行估计。

(三) 绘制工程网络图

通过以上网络路线不难看出, 要想完成公司下达的变板任务, 包涵多种可行性方案。为了使工期最短, 提高施工效率, 确保支架安装工程的顺利衔接, 必须对关键路线进行优化。

(四) 工序优化

施工过程中针对线路中工序繁多, 且各工序之间并非完全孤立的特点, 我区采取了网络分析求最短路问题的D算法, 提前准备、各工序互创有利条件、工序逐项进行优化的方法对关键线路进行优化。

由点A到I最短时间为58。这时可找到A到网络中点的

1最短路线

所以最短路线:

2工程时间

施工天数:25天

3保障资源配置

(1) T1454切眼开始运道、修道、运变板料时, 在确保运输过程中人员安排要符合规定的基础上, 工作面要集中人员尽量多出件。

(2) 运输过程中人员安排要符合定员规定, 不得超出定员。

(3) 各班之间不得遗留隐患问题和尾巴活, 当班出现设备或其它问题当班解决, 当班不能解决的, 要及时向值班人员汇报, 以便及时处理防止影响工程进度。

4对网络的监控和调整

施工过程中, 有时会发生意外情况, 要通过网络图对工程进行监视和控制, 以保证工程按期完成。同时, 按工程的实际情况对网络计划进行必要的调整。

5时间安排如下:

(1) 5日-7日:三班安装绞车为运道、修道作准备。

(1) 变板前做好各项准备工作, 工具设备、材料备齐备足。

(2) 变板前将切眼内的溜子调试好, 使之运转正常。

(3) 变板前安装好液泵, 接好液管、液枪并调试好泵站压力:18MPa

(2) 8日-10日:三班运道、修道、运料。

(1) 运煤系统:切眼→T1454风道→8050→T1390泄水巷→9280→T1270大井

(2) 运料:9041大巷料场→9041横管→T1454架子道→T1454溜子道→T1454切眼

(3) 通风系统:9041→T1454架子道→T1454溜子道→T1454切眼→T1454风道→T1450边眼→7044

(4) 供水系统:T1454风道→T1454切眼

(5) 供电系统:T1454风道干变供电

(6) 排水系统:T1454溜子道→T1454架子道→9041大巷

(3) 11日-21日:六、两点班变3.6大板, 再跨3.0大板, 检修班负责机电检修、变板运料、下运旧拱形等工作。

(4) 22日-23日:三班集中清煤。

(5) 24日-27日:六、两点班打抬板, 十点班运料。

(6) 28日-29日:拆溜子清卧。

二、效果检验

通过网络分析实施, 整合作业流程, 优化资源配置, 使T1454切眼变板比原计划提高了3天 (其中包括使用2000棵DZ-3.0/100单体液压支柱矿上储备不足耽误3天下运的时间) 取得了良好的施工效果。同时, 我区还充分利用变板施工节省下来的时间, 完成了:

1 T1454替风道及溜子道超前各替回19板。

2 T2290底边眼清卧皮带45米, 9282清卧皮带45米。

3 T1450甲边眼插背100米等多项任务。

参考文献

图论教育教学改革与实践 篇9

关键词:图论,教学改革,课程建设,分类教学

图论及其应用是现代数学的一个重要分支,在自然科学、社会科学、机械工程中有重要的意义,生活中的大量事物之间可用图来描述,如交通图、规划图、调度图、关系图等。图论的发展历经大体上可以划分为三个阶段[1]:第一阶段是萌芽阶段,大约是从1736年到十九世纪中叶,欧拉提出的哥尼斯堡的七桥问题是最具代表性的工作;第二阶段是发展阶段,大约从十九世纪中叶到二十世纪中叶,图论相关问题得到研究者关注,如1852年的四色问题和1856年的汉密尔顿问题;第三阶段是二十世纪中叶到现在,大量的生活中的问题如生产管理、交通运输、通信、计算机等领域提出了一系列图论问题[1]。特别是现代生活中,计算机的普及使得复杂问题的求解成为可能,图论及其求解思想渗透到自然学科的各个领域,如运筹学、IT科学、控制论、社会科学和经济学等不同领域。图论越来越受到研究者广泛的重视,并得到包含数学家在内的各个学科研究者的广泛关注,各种国际学术交流活动十分活跃。

由于图论的可视化数据结构可以对自然科学和社会科学中许多问题进行描述和建模,越来越多的高校把它单独作为一门课程来开设,特别是研究生教育的大规模发展,图论及其应用这门课程在很多工科高校中得到重视。当前,国内许多高校已为信息与计算科学、计算机科学与技术、信息工程、控制与管理科学等学科的研究生开设了图论课程[2]。我校通信类、计算机类、自动化类、经管类、物理类、系统科学类等学科的研究生培养方案把《图论及其应用》作为学位课来开设。教学规模逐年扩大,每年有近600人愿意修这门课程,而大约有400人成功选课,受益面非常广泛。由于图论课程具有基本理论严谨、系统性强、高度抽象、方法灵活、强调算法、证明方法奇特等特点,而且研究内容广泛且解决问题的方法千变万化。这些都给教学带来一定的困难,如不加以探讨和改进,势必影响这门课程的教学效果。因此,必需对图论课的教学进行探讨。我们从在图论的教学内容、教学形式、教材建设等方面积极探索与实践,逐步形成了一套适合本科生或研究生学习的教学方法和教学模式。下面简单介绍这些方法,希望能够与同行共勉。

1 图论课程的教学现状和存在问题

当前,图论课程教学虽然取得了长足的进步,基本能够适应学生对课程基本知识的需求。但是,在课程建设、教材建设、信息化建设、师资队伍建设等方面相对比较滞后,特别是作为以信息学科为特色的教学研究型大学的本科生的选修课,也是我校研究生教育的一门公共基础课,该课程的教学存在一些问题。

1.1 教学内容陈旧

当前,我校图论课程或离散数学的图论部分的教学内容重理论、轻应用。图论课程有概念多、公式复杂和定理难证明、难理解等问题,在一定程度上造成教学难,证明抽象度高,学生难以理解,学生不能真正理解图论思想,更谈不上灵活运用图论知识来解决各种实际问题。多数授课方式都是采用先讲概念,然后用大部分时间来讲解定理及其证明,这主要源于图论的任课教师多数都是数学教师的缘故。但这种以概念定理为主的教学方式对图论这门的课程来说不太适合,它会使学生感到图论的学习非常枯燥。其次,评价学生图论课程学习的好坏,仍然是以传统的笔试为主,试题主要以例题或习题为样题。而我校相关专业的研究生学习图论这门课主要是通过图论中各种算法的学习来培养自己的编程能力或提高解决问题的能力。在教学内容上,我校图论课程的教学侧重于图论知识体系介绍和定理证明,对图论前沿的研究型课题的介绍相对较少,没有很好的激发学生学习后的创新思考。

1.2 图论教学没有很好地体现学科之间的渗透思想

图论课程是在不同学科发展基础上衍生形成的,它在很大程度上具有学科交叉、相互渗透的特点,因此图论的产生和发展得益于各学科的交叉与渗透以及各个学科对图的需求,如“树”就是来源于化学、电子学和纯数学[3,4]。图论提供的理论和方法应用于不同学科,特别是我校的计算机学科和通信学科。各学科的发展和需求又为图论提供新的概念、新的课题、新的研究方法和新的研究目标,推进图论的理论发展。但目前来讲,由于教师专业方向的限制,我们的教学主要围绕图论的基本数学理论,缺乏内容上的交叉和渗透,使得教学有些枯燥乏味,有的学生是为了应付学分而选课。

1.3 图论教学改革缺乏创新

当前,我校研究生教育发展迅速,专业对图论课程知识的需求日益凸显,图论课程的重要性得以提高。但是由于师资队伍发展相对较慢,而且对任课教师的专业要求较高,整个教师队伍的教学方法还有待优化,教师授课基本沿袭本科的教学模式,即“理论+证明+例子”的传统教学模式,它不利于调动学生学习积极性,也不能体现这门课程的应用性和学科交叉性,教材上的例题有些陈旧,且形式固化,很少能够与研究生的专业问题结合起来,几乎没有体现专业的需求和差异。

鉴于上述这些问题,图论的教学改革迫在眉睫。学校高度重视“图论及其应用”和“离散数学”课程的建设,设立专项的研究生创新计划,以重点项目的形式对“图论及其应用”课程进行专项建设,希望获得阶段性和实质性的结果,推动图论及其应用课程的教学改革,提高本科和研究生的教育教学质量。

2 图论教学改革的思考与探索

针对我校图论教学中存在的诸多问题,我们成立了专门的课题组,对该课程进行重点建设,在教学改革、教材建设、网站建设等方面进行了思考和探索。

2.1 教学改革

“图论及其应用”作为研究生后续课程如“算法分析与设计”、“算法复杂性分析”、“运筹与控制”、“信号分析”、“人工智能”、“网络优化”等的先修课程,也作为本科专业高年级的选修课,其重要性也是不言而喻的,很多研究生导师也要求学生选择这门课程。针对我校《图论及其应用》这门课程中概念比较多、论证方法独特而又千变万化的特征,再加上课时短(48学时),而且选修的学生遍及全校几乎所有的研究生专业和不同学科和层次(本科阶段有的同学没有学过),这些都给教学带来相当的困难,对这门公共基础课进行教学改革是我校研究生教学改革的重要方向。课题组在以下几方面试行教学改革尝试。

2.1.1 摸清学生底细,求同存异

作为一门研究生一年级的公共基础课,面对不同层次和专业(学科)的学生,求同存异是我们必然的选择。“求同”有两个方面的意思:一是尽管学生们各自情况不同,但要选修这门课应有一个基本的公共要求,这就是要求学生掌握图论中的基本概念和结论以及基本方法。二是摸清学生选修该课程的共同兴趣,为解决第一个问题,我们将在课堂教学上把主要精力放在基本概念的讲解上和透析上,着重在于方法的剖析和应用。为此,我们在教学中注重引入大量的实例使同学们首先弄清这些基本概念和图论中常用的基本方法,适当补充一些如狼羊过河、邮递员问题、作色问题等有趣味的问题,增加课程的科普性和应用性。同时,对一些难度较大的定理证明采用具体图例,讲清论证方法的基本思路和一些可能会使学生感到困难的关键地方。“存异”是力争保留同学们对图论这门课程知识需求的不同。在讲课时,我们将图论的知识点剖析后,收集和整理出这个知识点在不同学科中的应用,给学生抛出来,让他们根据自己的专业在课下去深究。如讲到最优二叉树时,我们可以引出通信的编码问题,让通信方向的学生自己去完善。因此,课堂上着重讲解使学生普遍感兴趣的应用,而专业性较强的应用,指出方向,让学生自己查阅文献去理解和学习。

2.1.2 针对专业需求,分类授课

由于我校研究生《图论及其应用》课程是公共基础课程,不同专业的需求和基础不同,为此,课题组试图分专业授课,增强授课的针对性,提高学生的学习质量,做到有的放矢。具体思路是,通过前几届学生选课情况的调查,并调研相关学院分管研究生教学的领导和部分代表性的研究生导师,了解相关学院和专业对《图论及其应用》课程的基本要求和专业要求。然后根据专业需求的不同,我们课题组将进行分组备课和分组教学,对基本的图论知识进行整体讲解,对不同专业需求的内容进行分组教学,最简单的操作方法是让学生尽可能根据专业需求和研究需求选课,我们课题组将公布不同教师的教学倾向和特点以及专业背景,让学生充分了解我们的意图,让图论课既有基础知识的学习,由于专业需求的深入教学,着力提高研究生教学质量。另外,我们试图开展专题讲座和讨论会的方式,来解答和讨论同学们提出的问题。对个别同学可以采用答疑、提供参考文献等方法来满足他们的求知渴望。

2.1.3 从接受学习到探究学习

教师如何将图论及其应用课程传统的接受学习方式转变为探究学习方式,从而提高学生的积极性,提高教学效率,是本课题组的尝试研究的一个重要内容。所谓接受学习[6]是以听讲和练习为主要方式的学习方式,以突出教学的结果为标志。在接受学习中,学习的主要内容是以定型的形式呈现给学习者的。因此接受学习是本科阶段的普遍教学方法,对于研究生来讲,面对知识总量不断增加,知识更新日益加快的当今社会,仅仅掌握一些基本的知识是远远不够的,因此,用这种学习方法为研究生教学无法实现研究生创新能力培养的目标。所谓探究学习指的是学生构建知识体系,形成科学研究方法的各种活动[6]。因此,在研究生的图论及其应用课程的教学过程中,引导学生探究学习的是本课题的重点。课题组试图研究《图论及其应用》的探究学习教学模式,旨在培养研究生的创新意识、应用知识的迁移能力、对待事实证据的科学态度、对科学探究所需要的多种能力。

2.2 教材建设

教材建设是课程建设的重要工作。课题组认为当前的教材虽然内容丰富,但有的内容过于理论化,有的内容体系复杂,对我校相关专业不太合适,有的内容过于简单,在一定程度上不能满足我校研究生教学的需求。为此,既要考虑到我校研究生的专业需求,又要结合研究生具有求知欲望强烈、勇于钻研的特点,同时兼顾各学科学生修课需要,我们正在组织编写一本深度和广度适中且具有我校特色的研究生“图论及其应用”课教材。课题组在为本科生多年开设离散数学和为研究生开设图论及其应用的教学实践基础上,试图编写“图论及其应用”新教材。该教材有以下几个特点。

2.2.1 突出现代特色,推出学科前沿课题

我们根据图论的本质和发展趋势,特别是信息学科的发展趋势和最新研究动态,重新编写教材,力争引进与我校学科相关的图论最新进展,强调图论在信息科学中的应用,特别结合通信背景、计算机背景、控制与自动化背景、光信息背景等介绍相关图的新理论,如Petri网与网络流的内容,增加哈弗曼编码及其应用的内容。从而引入学生去深入研究和讨论,激发学生的创新欲望和求知欲。

2.2.2 各学科的交叉和渗透

课题组通过多年的教学和调研发现目前的《图论及其应用》教材主要介绍图论在数学其他领域(如组合数学、矩阵论、拓扑学、群论、运筹学等)的应用,对信息学科中的应用介绍相对较少。本课题将在新的教材中除了介绍图论的基本理论和方法外,重点增加介绍图论在电子学、信息处理、管理科学、控制理论和计算机科学等方面的应用。并力争增加图论与其他数学分支的相互交叉和相互渗透上做一些介绍。借助于同构概念把图与群联系在一起,增加学科之间的渗透。

2.2.3 弱化证明,注重应用分析

图论来源于实践又服务于实践。从这个意义上讲我们将在《图论及其应用》教材中把理论和应用放在重要同等的位置。按照“定义一定理一应用”的编写模式,每章节的前一部分是定义和理论部分,紧接着介绍知识的应用部分,主要是应用图论的知识解决具体的问题。对于专业性很强的应用,如通信方向、计算机或控制方向的问题,我们在章末给出阅读指南;对图论在计算机科学应用方面感兴趣的同学可参阅《图论与算法分析》等等。这样将使学生在学习中结合自己的专业有的放矢地学习和讨论。另外,弱化定理证明,着重分析图论算法的思想,重点在于这些图论算法的程序实现和应用。

2.3 网站建设

为了展示图论课程的相关信息,我们进行图论及其应用课程的网站建设,建设成适合我校研究生教学的课程网站,试图通过网站传递课程的性质和目的,将授课计划、考试大纲、应用实例、案例分析等问题在网站上展示出来,同时把很多先关的参考文献和最新的研究论文放在网站,共同学们下载学习。完善网站内容,把网站建成课程的展示窗口,同时将网站也建成老师与学生的交流平台。为将该课程建设市级优质课程打下基础。

3 结束语

总之,图论课程的教学改革蕴含着丰富的内容,包括教学思想、教学方法、教学手段、课程建设和网站建设等。对图论的教学并没有固定的模式可循,在教学过程中,教师要转变教学观念,“以教师为主导、以学生为主体”,因材施教,以提高学生素质为根本宗旨,把握学科教育的本质和目的,以培养学生的创新精神、学习能力和实践能力为重点,采取各种有效手段和措施,充分挖掘学生的创造力和潜力,培养学生严谨、认真、规范的科学态度,使学生能利用所学的知识和掌握的技能去解决实际问题。

致谢:特别感谢重庆邮电大学研究生教育创新计划资助项目(No.Y201110)、重庆市研究生教育改革研究项目(No.yjg123103)、重庆市高等教育教学改革研究()和重庆市高等教育教学改革研究重点项目(3)的支持!

参考文献

[1]徐俊明.图论及其应用课程建设探索[J].教育与现代化,1997(2):41-46.

[2]黄晓学,苗正科.从七桥问题看图论的本原思想与文化内涵[J].数学教育学报,2008,17(4):22-25.

[3]图论课程教学改革的探索与实践[J].中国教育创新导刊,2010(26):53.

[4]谢政,戴丽,陈挚.关于图论课教学的思考[J].数学理论与应用,2005,25(4):139-140.

[5]刘广军,刘信生,陈祥恩.对图论课堂教学的探讨[J].周口师范学院学报,2009,26(2):46-48.

上一篇:简约化教学下一篇:重症感染