您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 宣传企划 > 1994年全国大学生数学建模逢山开路问题
The2edhomeworkofmathematicalmodelingTEAM:14#304dormitoryPersons:04231107FanJingjing04231114JiangLan04231115LiLinjian04231116LiXiaMarch21,2006CollageofMathematicalScience,BNUModelinginconstructionMathematicalModelingFor:Prof.ZengandTALee.逢山修路问题一,摘要本题旨在通过对复杂地形的探索与分析,以及对资金费用的考虑,探索出一条逢山开路的最佳路线。最终找到一条最优路线建设方案,使花费最低。我们的主要思路如下:从山脚经居民点到矿区,需要经过一个峡谷,并且有一条小溪,到达居民区,之后经过一条山脉到矿区。经过小溪的地方我们要修桥,因为考虑到山的坡度问题以及修桥的高价费用问题,我们需要寻找一条最适路线,由于公路有坡度的限制(125.0),我们必须选择可行的一条道路通向山谷,并且尽量花费最少。修桥的地方我们也要考虑到坡度的可行性,以及结合水面最宽处与峡谷深度的那个函数,找出河面比较窄的点来修桥达到资金花费最少。之后考虑山峰修一条隧道,由已知条件,我们应尽量控制隧道长度在300米以内,因为超过300米花费就是一倍!通过对隧道长度,公路坡度,以及矿区高程的因素的考虑,我们选定了一条路线通过修隧道过山峰,再至矿区。最后,我们通过用matlab作图,拟合函数计算路线长度,以及应用公路学以及城市规划的一些原理分析,提出了一种花费最小化的可行做法。关键词:隧道,桥,高程,坡度,资费二,模型假设我们认为逢山开路主要从路线及价钱考虑,寻找一种可行的路线同时又较为省钱,为这个问题的最佳方案。为简化该问题,我们先做出几点假设:(1)、假设山体充分光滑。(2)、不考虑路面宽度。(3)、溪流的的最深处在x+y=4800,(2400≤x≤4800)上,且该直线为溪流的中线。(4)、桥梁的长宽度为溪流的宽度。根据对整个地形图及公路走向的认识,我们决定将公路分为四段来修:一是从起点(0,800)到小溪流,二是修桥及到居民点一端,三是从居民点到山峰这段,最后就是越过山到达矿区。我们先建立一个空间三维的直角坐标系,x、y坐标同题目中一致,z坐标则表示对应给出的x、y坐标的点的高程。根据题中所给数据,我们将该地区的大致图形绘制如下:下面是路段工程成本及对路段坡度α(上升高程与水平距离之比)的限制如下表:工程种类一般路段桥梁隧道工程成本/(元/米)30020001500(长度≤300米)3000(长度﹥300米)对坡度的限制α<0.125α=0α<0.100第一段公路属于一般路段,由于这一段路的终点是桥梁,故要确定这一段路首先要确定桥梁的具体位置。三,模型设计(一)、桥梁位置的选取我们已先假设溪流的中心连线在o-xy面上的投影为直线段x+y=4800(2400≤x≤4800)上,先假设桥梁的长度为小溪的宽度,小溪的宽度与(溪流最深处的)x的坐标关系可近似表示为:)4800x2400(,522400-xx(w43)由此可知,小溪的宽度随x的增加呈递增的关系。再从小溪左右公路对坡度要求,我们暂时确定小溪的位置在点700)3200,1600,(A)900,2000,2800(A21及之间,因为小溪的直线方程从1A点开始为:200t900z400t2000y400t2800x,我们先假设在小溪中心高程z=800的地方修桥。在这样的高程上,我们找到小溪上对应的点为)800,1800,3000(A,由此算出溪流的宽度:77)3000(w。因为桥的坡度为零,从这方面考虑,则桥的两个落点只能在点)1100,2000,3200(B),1300,1600,2800(B21这两点与A点的两条直线上确定,为了方便,我们做一个垂直于o-xy面,含直线21BB的剖面如下图,21C,C为桥的两个落点,为了满足桥的宽度最接近小溪宽度,通过计算,我们求得)855,1836,(3036C),855,1778,2978(C21,则桥的实际高程为855,桥的实际宽度为82米。倒此,我们解决的桥梁问题。(二)、第一段山路的优化设计由题所给数据及上面对桥梁位置的找寻,我们可以知道这段路的始点为M(0,800,650),终点为)855,1778,2978(C1。通过对整个数据的观察及计算,我们需要在x=400,x=800的位置分别寻找高程z=700,750的点,为了简便计算,我们假设在x=400与x=800的地方,山形在两点间呈直线,那么我们可以得到这样两个点)750,464,800(M),700,628,400(M21我们用分段直线连接32211MM,MM,MM及,这里)800,400,1200(M3,记该段曲线的长度为1S。在y=400这个平面上,我们在x=1200到x=2400直接修路是可行的,于是根据题中所给数据,我们拟合一条山体曲线,即公路的曲线如下图所示(由于横纵坐标的选取间隔不一样,故看起来较为陡峭,实际不然):该曲线的函数为:z=-2.0642e-8*x^3+3.125e-5*x^2+0.19167*x+570,x在1200到2400之间,记该段曲线的长度为2S。现在解决该段曲线最后一段,通过对数据的观察,我们认为该段曲线应该要经过)855,1778,2978(C,900),(3200,120030),2800,800,8(),850,(2400,4001再到点这点。通过对坡的计算,发现这样走是可行的。我们就直接用几段线段来连接这几点,记该部分曲线的长度为3S。则第一段公路的长度为321SSSS4124.2(三)、桥与居民区之间的路段优化这段是从点1836,855),3036(C2开始到居民点)960,2000,4000(D结束,通过对开始点高程和结束点高程的考虑,由于高程偏高,故不能直接走,需要从高程较接近的路线绕道居民点。我们认为应该先从点(3200,1600,700)与点(3200,2000,1100)之间寻找一个高程在870左右的点,经过计算我们确定这个点为(3200,1770,870),再经由点(3600,1600,900),最后至居民点)960,2000,4000(D。通过对高度的考虑及周围点的坐标变化情况,在这几个点之间用折线连接可行,记这段公路的长度为'S,通过计算有:'S=1180.97。(四)、隧道的选取及居民区到隧道一段路段的优化因为整个公路的终点为)1320,4000,2000(G,其高程比居民点前一段公路的高程高出许多,因此从居民点到隧道及出隧道以后的路段呈缓慢上升趋势。再通过对山峰两边高程的考虑,我们的想法是将修筑的隧道的高程应该在950到1200之间,再加上对隧道坡度及一般路段的坡度的考虑,我们先决定在以点(4400.2800,1500)为顶点的山峰上修筑高程在1100左右的隧道。由于居民点到隧道这段路缓慢上升,即高程在允许的情况下缓慢增加。居民点的高程为950,我们通过计算分别找到这样一些点(4012,2400,1002),(4047.06,2800,1050),最终确定隧道入口点的坐标为(4400,2927,1090),因为这座山峰近似图如下所示:求得出口点坐标(4400.3446.1100),隧道长度为2l519.1米,整个隧道坡度为0.02在允许的范围内,故在这个地方修筑隧道是可行的。故该方案可行,在该方案下路段长度21.1185S''米。(五)、出隧道后到矿区路段的优化出隧道后到矿区这一段路的高程也是缓慢增加的,我们的考虑是从隧道出口的高程1100开始一点点增加高程,使之最后到达矿区。为了达到这一目的,我们在隧道出口和矿区之间选取了这样一些点作为公路的必经之处:(4000,3491,1159)、(3600,3600,1200)、(3200,3685,1246)。跟据隧道出口点和计算出的这三个点,我们拟合了一条公路走向近似曲线如图所示:从点(3200,3685,1246)到矿区(2000,4000,1320)之间,我们通过计算发现这段路可近似用直线表示,故该段直线的方程为:)1,0(t,74t1246z315t3685y1600t3600x。求得该直线的长度为1240.86米。则出隧道到矿区的路段长度'''S2644.24米。(六)、整段路程总合及所需资金计算在整个路段中,一般路段的长度65.79502644.241185.212.4124SSS'''米。桥梁长度为82米。隧道长为519.1米。故最终所需资金为:7950.65*300+82*2000+[300*1500+(519.1-300)*3000]=410.13(万元)四,模型分析由于我们对一些函数的不确定,一部分的路线近似用直线代替,通过线性差值法计算出一些高程,从宏观来说,是可以这样近似看待的。用matlab拟合函数来计算点的位置以及确定修桥修隧道位置,使数据更加精确。五,参考文献刘来福曾文艺编著《数学模型与数学建模》北京师范大学出版社谭浩强著《C程序设计》高等教育出版社张志涌等《精通matlab6.5版》北京航空航天大学出版社六,附件一些用matlab拟合函数的图形及算法,如下:1.第一段,海拔800-780的线性拟合:先用二次的多项式曲线拟合:h1=[800,850870850];x1=[1200160020002400];plot(x1,h1,'o')holdon;p2=polyfit(x1,h1,2);xx=linspace(1200,2400);plot(xx,polyval(p2,xx),'g')见图:二次多项式曲线拟合再用三次的拟合一次:figure(2)plot(x1,h1,'o')holdon;p3=polyfit(x1,h1,3);plot(xx,polyval(p3,xx),'g')见图:三次多项式曲线拟合比较得知,二次的拟合较为接近,而曲线尚有两个点未能通过,三次的拟合已经十分接近了,通过给定的全部的点。因此,采用三次拟合。由刚才的计算,得知:p3=[-2.0642e-83.125e-50.19167570.0000]即:Whenxisin[1200,2400]h=-2.0642e-8*x^3+3.125e-5*x^2+0.19167*x+5702.计算海拔在1010到880之间,纵坐标在4000到4400之间,海拔约为1000的点的横坐标。线形拟合计算为增加准确度,将海拔1380到1050及对应横坐标都纳入拟合范围类似的:figure(3)h2=[138010108801050];x2=[3600400044004800];plot(x2,h2,'o')holdonq3=polyfit(x2,h2,3);xx=linspace(3600,4800);plot(xx,polyval(q3,xx),'r')见图:找海拔为1000米的那个拟合图拟合情况非常好,MATLAB计算出q3=[1.5625e-007-0.0011250.855610]鉴于是已知海拔求横坐标,是反求自变量,我们采取在图上采点找近似值的方法获取数据gridon打上网格后,获取数据x=4012,h=1002见图:找到1002的横坐标的图3.(1)找横为4000高为1150左右的点从x=4000,y=2800~4000,拟合一个高度h关于y的曲线figure(4)h3=[10701550980780];y1=[2800320036004000];plot(y1,h3,'o')holdonf3=polyfit(y1,h3,3);yy=linspace(2800,4000);plot(yy,polyval(f3,yy),'r')gridonxlabel('y')ylabel('h')采点,取h=1150左右的点y=3491,h=1159(2)同样的方法在x=3200,h=160
本文标题:1994年全国大学生数学建模逢山开路问题
链接地址:https://www.777doc.com/doc-6204744 .html