逢山修路问题 2.docx

上传人:b****5 文档编号:14457896 上传时间:2023-06-23 格式:DOCX 页数:19 大小:547.86KB
下载 相关 举报
逢山修路问题 2.docx_第1页
第1页 / 共19页
逢山修路问题 2.docx_第2页
第2页 / 共19页
逢山修路问题 2.docx_第3页
第3页 / 共19页
逢山修路问题 2.docx_第4页
第4页 / 共19页
逢山修路问题 2.docx_第5页
第5页 / 共19页
逢山修路问题 2.docx_第6页
第6页 / 共19页
逢山修路问题 2.docx_第7页
第7页 / 共19页
逢山修路问题 2.docx_第8页
第8页 / 共19页
逢山修路问题 2.docx_第9页
第9页 / 共19页
逢山修路问题 2.docx_第10页
第10页 / 共19页
逢山修路问题 2.docx_第11页
第11页 / 共19页
逢山修路问题 2.docx_第12页
第12页 / 共19页
逢山修路问题 2.docx_第13页
第13页 / 共19页
逢山修路问题 2.docx_第14页
第14页 / 共19页
逢山修路问题 2.docx_第15页
第15页 / 共19页
逢山修路问题 2.docx_第16页
第16页 / 共19页
逢山修路问题 2.docx_第17页
第17页 / 共19页
逢山修路问题 2.docx_第18页
第18页 / 共19页
逢山修路问题 2.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

逢山修路问题 2.docx

《逢山修路问题 2.docx》由会员分享,可在线阅读,更多相关《逢山修路问题 2.docx(19页珍藏版)》请在冰点文库上搜索。

逢山修路问题 2.docx

逢山修路问题2

逢山修路问题

一,摘要

本题旨在通过对复杂地形的探索与分析,以及对资金费用的考虑,探索出一条逢山开路的最佳路线。

最终找到一条最优路线建设方案,使花费最低。

我们的主要思路如下:

从山脚经居民点到矿区,需要经过一个峡谷,并且有一条小溪,到达居民区,之后经过一条山脉到矿区。

经过小溪的地方我们要修桥,因为考虑到山的坡度问题以及修桥的高价费用问题,我们需要寻找一条最适路线,由于公路有坡度的限制(

),我们必须选择可行的一条道路通向山谷,并且尽量花费最少。

修桥的地方我们也要考虑到坡度的可行性,以及结合水面最宽处与峡谷深度的那个函数,找出河面比较窄的点来修桥达到资金花费最少。

之后考虑山峰修一条隧道,由已知条件,我们应尽量控制隧道长度在300米以内,因为超过300米花费就是一倍!

通过对隧道长度,公路坡度,以及矿区高程的因素的考虑,我们选定了一条路线通过修隧道过山峰,再至矿区。

最后,我们通过用matlab作图,拟合函数计算路线长度,以及应用公路学以及城市规划的一些原理分析,提出了一种花费最小化的可行做法。

关键词:

隧道,桥,高程,坡度,资费

二,模型假设

我们认为逢山开路主要从路线及价钱考虑,寻找一种可行的路线同时又较为省钱,为这个问题的最佳方案。

为简化该问题,我们先做出几点假设:

(1)、假设山体充分光滑。

(2)、不考虑路面宽度。

(3)、溪流的的最深处在x+y=4800,(2400≤x≤4800)上,且该直线为溪流的中线。

(4)、桥梁的长宽度为溪流的宽度。

根据对整个地形图及公路走向的认识,我们决定将公路分为四段来修:

一是从起点(0,800)到小溪流,二是修桥及到居民点一端,三是从居民点到山峰这段,最后就是越过山到达矿区。

我们先建立一个空间三维的直角坐标系,x、y坐标同题目中一致,z坐标则表示对应给出的x、y坐标的点的高程。

根据题中所给数据,我们将该地区的大致图形绘制如下:

下面是路段工程成本及对路段坡度α(上升高程与水平距离之比)的限制如下表:

工程种类

一般路段

桥梁

隧道

工程成本/(元/米)

300

2000

1500(长度≤300米)

3000(长度﹥300米)

对坡度的限制

α<0.125

α=0

α<0.100

第一段公路属于一般路段,由于这一段路的终点是桥梁,故要确定这一段路首先要确定桥梁的具体位置。

三,模型设计

(一)、桥梁位置的选取

我们已先假设溪流的中心连线在o-xy面上的投影为直线段x+y=4800(2400≤x≤4800)上,先假设桥梁的长度为小溪的宽度,小溪的宽度与(溪流最深处的)x的坐标关系可近似表示为:

由此可知,小溪的宽度随x的增加呈递增的关系。

再从小溪左右公路对坡度要求,我们暂时确定小溪的位置在点

之间,因为小溪的直线方程从

点开始为:

,我们先假设在小溪中心高程z=800的地方修桥。

在这样的高程上,我们找到小溪上对应的点为

,由此算出溪流的宽度:

因为桥的坡度为零,从这方面考虑,则桥的两个落点只能在点

这两点与A点的两条直线上确定,为了方便,我们做一个垂直于o-xy面,含直线

的剖面如下图,

为桥的两个落点,为了满足桥的宽度最接近小溪宽度,通过计算,我们求得

,则桥的实际高程为855,桥的实际宽度为82米。

倒此,我们解决的桥梁问题。

(二)、第一段山路的优化设计

由题所给数据及上面对桥梁位置的找寻,我们可以知道这段路的始点为M(0,800,650),终点为

通过对整个数据的观察及计算,我们需要在x=400,x=800的位置分别寻找高程z=700,750的点,为了简便计算,我们假设在x=400与x=800的地方,山形在两点间呈直线,那么我们可以得到这样两个点

我们用分段直线连接

,这里

记该段曲线的长度为

在y=400这个平面上,我们在x=1200到x=2400直接修路是可行的,于是根据题中所给数据,我们以合一条山体曲线,即公路的曲线如下图所示(由于横纵坐标的选取间隔不一样,故看起来较为陡峭,实际不然):

该曲线的函数为:

z=-2.0642e-8*x^3+3.125e-5*x^2+0.19167*x+570,x在1200到2400之间,记该段曲线的长度为

现在解决该段曲线最后一段,通过对数据的观察,我们认为该段曲线应该要经过

这点。

通过对坡的计算,发现这样走是可行的。

我们就直接用几段线段来连接这几点,记该部分曲线的长度为

则第一段公路的长度为

4124.2

(三)、桥与居民区之间的路段优化

这段是从点

开始到居民点

结束,通过对开始点高程和结束点高程的考虑,由于高程偏低,故不能直接走,需要从高程较接近的路线绕道居民点。

我们认为应该先从点(3200,1600,700)与点(3200,2000,1100)之间寻找一个高程在870左右的点,经过计算我们确定这个点为(3200,1770,870),再经由点(3600,1600,900),最后至居民点

通过对高度的考虑及周围点的坐标变化情况,在这几个点之间用折线连接可行,记这段公路的长度为

,通过计算有:

=1180.97。

(四)、隧道的选取及居民区到隧道一段路段的优化

因为整个公路的终点为

,其高程比居民点前一段公路的高程高出许多,因此从居民点到隧道及出隧道以后的路段呈缓慢上升趋势。

再通过对山峰两边高程的考虑,我们的想法是将修筑的隧道的高程应该在950到1200之间,再加上对隧道坡度及一般路段的坡度的考虑,我们先决定在以点(4400.2800,1500)为顶点的山峰上修筑高程在1100左右的隧道。

由于居民点到隧道这段路缓慢上升,即高程在允许的情况下缓慢增加。

居民点的高程为950,我们通过计算分别找到这样一些点(4012,2400,1002),(4047.06,2800,1050),最终确定隧道入口点的坐标为(4400,2927,1090),因为这座山峰近似图如下所示:

求得出口点坐标(4400.3446.1100),隧道长度为

519.1米,整个隧道坡度为0.02在允许的范围内,故在这个地方修筑隧道是可行的。

故该方案可行,在该方案下路段长度

米。

(五)、出隧道后到矿区路段的优化

出隧道后到矿区这一段路的高程也是缓慢增加的,我们的考虑是从隧道出口的高程1100开始一点点增加高程,使之最后到达矿区。

为了达到这一目的,我们在隧道出口和矿区之间选取了这样一些点作为公路的必经之处:

(4000,3491,1159)、(3600,3600,1200)、(3200,3685,1246)。

跟据隧道出口点和计算出的这三个点,我们拟合了一条公路走向近似曲线如图所示:

从点(3200,3685,1246)到矿区(2000,4000,1320)之间,我们通过计算发现这段路可近似用直线表处,故该段直线的方程为:

求得该直线的长度为1240.86米。

则出隧道到矿区的路段长度

2644.24米。

(六)、整段路程总合及所需资金计算

在整个路段中,一般路段的长度

米。

桥梁长度为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+570

2.计算海拔在1010到880之间,纵坐标在4000到4400之间,海拔约为1000的点的横坐标。

线形拟合计算

为增加准确度,将海拔1380到1050及对应横坐标都纳入拟合范围

类似的:

figure(3)

h2=[138010108801050];

x2=[3600400044004800];

plot(x2,h2,'o')

holdon

q3=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')

holdon

f3=polyfit(y1,h3,3);

yy=linspace(2800,4000);

plot(yy,polyval(f3,yy),'r')

gridon

xlabel('y')

ylabel('h')

采点,取h=1150左右的点y=3491,h=1159

(2)同样的方法在x=3200,h=1600~950,拟合一个高度h关于y的曲线

figure(5)

h4=[160013001080950];

y2=[3200360040004400];

plot(y2,h4,'o')

holdon

f3=polyfit(y2,h4,3);

yy=linspace(3200,4400);

plot(yy,polyval(f3,yy),'r')

gridon

xlabel('y')

ylabel('h')

采点得y=3685,h=1246

见图:

找海拔约为1250的那个点的图

(3)下面根据刚才找出的点,算出隧道出口到矿区的公路拟合路线及其近似长度

首先,将曲线投影到XOY平面上,计算出射影线段的长度

将点(3200,3686),(3600,3600),(4000,3491),(4400,3225)(注明:

这个3225是凡静静算的)

拟合成XOY平面上的曲线,求长,再用空间关系求出公路近似长

x3=[3200360040004400];

y3=[3686360034913225];

plot(x3,y3,'o')

holdon

r3=polyfit(x3,y3,3);

xx=linspace(3200,4400);

plot(xx,polyval(r3,xx),'r')

见图:

出隧道口到3200,高1250左右那个点的拟合图如下所示

r3=[-3.4896e-0070.0036969-13.23819626]

y=-3.4896e-007*x^3+0.0036969*x^2-13.238*x+19626

A(2400,400,850)B(2800,800,830)C(3036,1836,855)的拟合

分别将AB,BC用二次曲线拟合,使它们在XOY上的投影是直线

为此,变量设为t=(x^2+y^2)^0.5:

如下计算:

AB:

考虑到:

[(2800-2400)^2+(800-400)^2]^0.5=565.7

figure

t1=[0565.7];

hh1=[850830];

plot(t1,hh1,'o')

holdon

tt=linspace(0,565.7);

g1=polyfit(t1,hh1,2);

plot(tt,polyval(g1,tt),'g')

见图:

多加的一段拟合

计算出:

g1=[-6.2497e-0050850]

hh1=-6.2497e-005*x^2+850

BC:

考虑到:

[(3036-2800)^2+(1836-800)^2]^0.5=333.8

类似地

figure

t2=[0333.8];

hh2=[830855];

plot(t2,hh2,'o')

holdon

tt=linspace(0,333.8);

g2=polyfit(t2,hh2,2);

plot(tt,polyval(g2,tt),'g')

见图:

多加的第二段拟合

计算出:

g2=[0.000224370830]

hh2=0.00022437*x^2+830

304组员:

04231107凡静静04231114姜岚04231115李林娟04231116李夏

For:

Prof.ZengandTALee.

2006.3.21

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2