首页 > 报告总结 > 实践报告 > 详情页

数学建模实践报告(大全)

2023-02-02 23:59:09

千文网小编为你整理了多篇相关的《数学建模实践报告(大全)》,但愿对你工作学习有帮助,当然你在千文网还可以找到更多《数学建模实践报告(大全)》。

第一篇:数学建模实践报告

数学建模实践报告

随着人们自身素质提升,报告的使用成为日常生活的常态,我们在写报告的时候要注意语言要准确、简洁。相信许多人会觉得报告很难写吧,以下是小编收集整理的数学建模实践报告,欢迎大家分享。

又是一个酷热难耐的暑假,济南以它独特的天气特点招待了我们这些因为参赛而留在老校住宿的同学们,几次零星的小雨丝毫撼不动炎热的主题。蓊蓊郁郁的师大老校园里大批学子,他们忙碌着,早出晚归;他们埋头苦干着,废寝忘食;他们做着自己的事情,紧张有序他们默默等待着一场未知的洗礼。他们,就是参加暑假数学建模辅导的同学。

我很荣幸地成为了这支队伍中的一员,而且成为队长,本组成员都是让我佩服的两位很优秀的同学,让我对这次建模的胜利充满信心,宋希良,和王成龙,这两位我的员工,让我感觉很踏实,本来平淡无奇的暑假,因为参加了数学建模而变得丰富多彩。

先说说数学建模吧。数学建模是运用数学思想、方法和知识解决实际问题的过程,已经成为不同层次数学教育重要和基本的内容。数学建模是数学学习的一种新的方式,它为学生提供了自主学习的空间,有助于学生体验数学在解决实际问题中的价值和作用,体验数学与日常生活和其他学科的联系,体验综合运用知识和方法解决实际问题的过程,增强应用意识;有助于激发学生学习数学的兴趣,发展学生的创新意识和实践能力。数学建模与数学实验开创了大学生把数学理论和专业知识有机结合的新途径,是培养学生分析问题、解决问题和使用计算机进行科学计算的有效方法,是培养学生创新能力和实践能力的有效手段。

中国科学院王梓坤院士在《今日数学及其应用》一文中指出精确定量思维是对21世纪科技人员的素质要求。所谓定量思维就是人们从实际问题中提炼数学问题,抽象化为数学模型,用数学计算此模型的解或近似解,然后回到现实中进行检验,必要时修改模型使之更切合实际,最后编制解决问题的软件包,以便得到更广泛的'方便的应用。这一精辟的论述阐明了在解决工程实际问题中数学建模与数学实验是相互依赖、相辅相成、互不可分的。数学建模与数学实验是以数学知识为基础,以各个领域的实际问题为载体,以计算机为手段,以数学软件为工具,培养学生深入理解数学建模的思想与方法,熟悉常用的科学计算软件,如,mathematica、matlab,并在此基础上,根据所要解决的数学问题进行程序设计,培养学生运用所学知识建立数学模型,使用计算机解决实际问题的能力,以及综合应用能力和创新能力。

建模前的准备。首先,要完善自己。只有解决了自身的问题,才能克服其他的问题。如果连自己都没把握好,那么,做任何事都会漏洞百出。要完善自己,首先要明确态度,记得中国前任国足教练米卢说过:态度决定一切。明确自己为什么要参加数学建模竞赛,参加的目的是什么,是抱着学习的态度参加呢还是其他呢?只有态度明确了,才能在这个前提下,进行全身心的投入竞赛。

其次,要有热情,要有认真,严谨的科学精神。热情是动力的源泉,如果没有燃料,汽车将不能开动,火箭将不能腾空,飞船将不能遨游;同样,如果人缺少热情,他就会缺少前进的动力,不能在竞争中腾空而起,引人注目,亦不能在求知与快乐的海洋中遨游。没有热情,能打动谁?没有热情,能走多远?参加数学建模竞赛也是一样,热情是必需的,如果抱着试一试的态度,是不会有什么结果的。在练习过程中我们也有苦恼的时候,但是我们的热情却始终没有减少,我们经常激烈的争辩,为一个问题搞的晚上睡不着觉,然而当灵感到来,解法豁然开朗时,我们都会激动万分。当我们遇到我们不会的问题,需要用到新的知识时,我们会毫不犹豫的去学习这些知识,热情使我们不惧任何困难。

第二篇:数学建模实训报告

目录

实训项目一

线性规划问题及lingo软件求解……………………………1 实训项目二

lingo中集合的应用 ………………………………………….7 实训项目三

lingo中派生集合的应用 ……………………………………9 实训项目四

微分方程的数值解法一………………………………………13 实训项目五

微分方程的数值解法二……………………………………..15 实训项目六

数据点的插值与拟合………………………………………….17 综合实训作品

…………………………………………………………….18 每次实训课必须带上此本子,以便教师检查预习情况和记录实验原始数据。实验时必须遵守实验规则。用正确的理论指导实践袁必须人人亲自动手实验,但反对盲目乱动,更不能无故损坏仪器设备。这是一份重要的不可多得的自我学习资料袁它将记录着你在大学生涯中的学习和学习成果。请你保留下来,若干年后再翻阅仍将感到十分新鲜,记忆犹新。它将推动你在人生奋斗的道路上永往直前!

项目一:线性规划问题及lingo软件求解

一、实训课程名称

数学建模实训

二、实训项目名称

线性规划问题及lingo软件求解

三、实验目的和要求 了解线性规划的基本知识,熟悉应用LINGO解决线性规划问题的一般方法

四:实验内容和原理 内容一:

某医院负责人每日至少需要下列数量的护士 班次 时间 最少护士数 1 6:00-10:00 60 2 10:00-14:00 70 3 14:00-18:00 60 4 18:00-22:00 50 5 22:00-02:00 20 6 02:00-06:00 30 每班的护士在值班的开始时向病房报道,连续工作8个小时,医院领导为满足每班所需要的护士数,最少需要多少护士。内容二:

内容三

五:主要仪器及耗材

计算机与Windows2000/XP系统;LINGO软件 六:操作办法与实训步骤 内容一:

考虑班次的时间安排,是从6时开始第一班,而第一班最少需要护士数为60,故x1>=60,又每班护士连续工作八个小时,以此类推,可以看出每个班次的护士可以为下一个班次工作四小时,据此可以建立如下线性规划模型: 程序编程过程:

min=x1+x2+x3+x4+x5+x6;x1>=60;x1+x2>=70;x2+x3>=60;x3+x4>=50;x4+x5>=20;x5+x6>=30;编程结果:

Global optimal solution found.Objective value:

150.0000

Infeasibilities:

0.000000

Total solver iterations:

Variable

Value

Reduced Cost

X1

60.00000

0.000000

X2

10.00000

0.000000

X3

50.00000

0.000000

X4

0.000000

1.000000

X5

30.00000

0.000000

X6

0.000000

0.000000

Row

Slack or Surplus

Dual Price

150.0000

-1.000000

0.000000

-1.000000

0.000000

0.000000

0.000000

-1.000000

0.000000

0.000000

10.00000

0.000000

0.000000

-1.000000 内容二:

(1)max=6*x1+4*x2;2*x1+3*x2

所以,生产产品A1、A2分别为20、20件时,可使利润最大,最大为200元。(2)

所以,当产品A1的利润在(2.6666667,8)时,不影响产品的生产数量。(3)

所以,当装配工序的工时在(60,180)时,不改变产品种类,只需调整数量。(4)加放产品A3,建立新的线性规划问题 max=6*x1+4*x2+5*x3;2*x1+3*x2+4*x3

内容三:

(1)设生产I 产品为x1,生产 II为x2, 生产 III 产品为x3,则有:

max=3*x1+2*x2+2.9*x3;

8*x1+2*x2+10*x3

10*x1+5*x2+8*x3

2*x1+13*x2+10*x3

@gin(x1);

@gin(x2);

@gin(x3);

所以,当月仅生产产品Ⅰ、Ⅱ、Ⅲ数量分别为24、24、5时工厂的利益最大,最大利润为134.5千元。

(2)max=3*x1+2*x2+2.9*x3-18;8*x1+2*x2+10*x3

借用其他工厂的设备B 60台时时,可生产产品Ⅰ数量

31、产品Ⅱ数量26,此时每月最大利润为127千元,比不借用设备时的利润少7.5千元。所以借用B设备不合算。(3)如果投入两种新产品,设每月生产的数量分别为x4、x5,则: max=3*x1+2*x2+2.9*x3+2.1*x4+1.87*x5;8*x1+2*x2+10*x3+12*x4+4*x5

投产产品IV、V后,该工厂生产产品I、II、III、IV、V数量分别为26、19、1、1、8时,每月最大利润为135.96千元,比不投产该产品时多增加利润1.46千元。故投产产品IV、I在经济上合算。

(4)max=4.5*x1+2*x2+2.9*x3;9*x1+2*x2+10*x3

改进后,要使得每月利润最大,则需生产产品I、II、III数量分别为22、24、2,最大利润为152.8千元。所以改进结构对原计划有影响。使得利润比为改进之前多18.3千元。七:项目分析

线性规划模型只是忽略一些外在因素所建立的模型,理论比较简单,但涉及的方面不全,所以要运用到实际中还需要多方面的考虑。项目二: lingo中集合的应用

一、实训课程名称

数学建模实训

二、实训项目名称

lingo中集合的应用

三、实验目的和要求

熟悉应用LINGO解决规模较大线性规划问题的一般方法,熟悉集合的应用

四:实验内容和原理

采用lingo中的集合语言,编程求解下列两个问题 内容一:某医院负责人每日至少需要下列数量的护士 班次 时间 最少护士数 1 6:00-8:00 60 2 8:00-10:00 50 3 10:00-12:00 70 4 12:00-14:00 40 5 14:00-16:00 60 6 16:00-18:00 40 7 18:00-20:00 50 8 20:00-22:00 30 9 22:00-00:00 20 10 00:00-02:00 30 11 02:00-04:00 30 12 04:00-06:00 30 每班的护士在值班的开始时向病房报道,连续工作6个小时,医院领导为满足每班所需要的护士数,最少需要多少护士。

内容二:某个百货商场对售货人员(周200元)的需求经统计如下表, 星期 1 2 3 4 5 6 7 人数 16 15 12 14 16 18 19 为了保证销售人员充分休息,销每周工作5天,休息2天。问要使工资开支最省至少需要多少售货员?且给出一个销售人员工作时间安排表。五:主要仪器及耗材

计算机与Windows2000/XP系统;LINGO软件 六:操作办法与实训步骤 内容一: model: sets: class/c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12/:required,hire;endsets data: required=60 50 70 40 60 40 50 30 20 30 30 30;enddata min=@sum(class(i):hire(i));@for(class(j):

@sum(class(i)|i#le#3:hire(@wrap(j-i+1,12)))>=required(j));end

所以最少需要180名护士。内容二: model: sets: days/z1,z2,z3,z4,z5,z6,z7/:required,hire;endsets data: required=16 15 12 14 16 18 19;enddata min=200*@sum(days(i):hire(i));@for(days(j):

@sum(days(i)|i#le#5:hire(@wrap(j-i+1,7)))>=required(j));end

所以要使工资开支最省至少需要22名售货员,工资开资最省为4400元。项目三: lingo中派生集合的应用

一、实训课程名称

数学建模实训

二、实训项目名称

lingo中派生集合的应用

三、实验目的和要求

熟悉应用LINGO解决规模较大线性规划问题的一般方法,熟悉派生集合、稀疏集合的应用 四:实验内容和原理

采用lingo中的集合语言,编程求解下列两个问题 内容一:

内容二:

计算6个产地8个销地的最小费用运输问题。产销单位运价如下表。单

销地 运 价 产地 B1 B2 B3 B4 B5 B6 B7 B8 产量 A1 6 2 6 7 4 2 5 9 60 A2 A3 A4 A5 A6 4 5 7 2 5 9 2 6 3 5 5 1 7 9 2 3 9 3 5 2 8 7 9 7 8 5 4 2 2 1 8 3 7 6 4 2 3 1 5 3 55 51 43 41 52 销量 35 37 22 32 41 32 43 38

五:主要仪器及耗材

计算机与Windows2000/XP系统;LINGO软件 六:操作办法与实训步骤 内容一: 程序: model: SETS: CITIES/1,2,3,4,5,6,7,8,9,10/:L;ROADS(CITIES,CITIES)/ 1,2 1,3 2,4 2,5 2,6 3,4 3,5 3,6 4,7 4,8 5,7 5,8 5,9 6,8 6,9 7,10 8,10 9,10/:D;ENDSETS DATA: D= 6 5 6 9 7 5 11 1 8 7 5 4 10 7 9;L=0,,,,,;ENDDATA @FOR(CITIES(i)|i#GT#1: L(i)=@MIN(ROADS(j,i):L(j)+D(j,i)););END 结果:

所以,从城市1到城市10的最短路径长度为17,具体路径为:1—2—4—8—10

内容二: 程序: model: sets: gongying/1..6/:chandi;xuqiu/1..8/:xiaodi;link(gongying,xuqiu):yunjia,c;endsets data: chandi=60 55 51 43 41 52;xiaodi=35 37 22 32 41 32 43 38;yunjia= 6 2 6 7 4 2 5 9 4 9 5 3 8 5 8 2 5 2 1 9 7 4 3 3 7 6 7 3 9 2 7 1 2 3 9 5 7 2 6 5 5 5 2 2 8 1 4 3;enddata min=@sum(link(i,j):c*yunjia);@for(gongying(i):@sum(xuqiu(j):c(i,j))

Global optimal solution found.Objective value:

664.0000

Infeasibilities:

0.000000

Total solver iterations:

所以最小费用为664.项目四:微分方程的数值解法一

一、实训课程名称

数学建模实训

二、实训项目名称

微分方程求解

三、实验目的和要求

1、学会用Matlab求简单微分方程的解析解.2、学会用Matlab求微分方程的数值解 四:实验内容和原理

1、求方程 的通解。

2、求微分方程组,在初始条件 下的特解。

3、求方程,分别用ode45,ode15s求解,并画出函数图形。五:主要仪器及耗材

计算机与Windows2000/XP系统;MATLAB软件 六:操作办法与实训步骤

1、>> dsolve('(x^2-1)*Dy+2*x*y-sin(x)=0')ans = 1/2*(sin(x)+2*exp(-2*x/(x^2-1)*t)*C1*x)/x

2、>> [x,y]=dsolve('Dx+x+y=0','Dy+x-y=0','x(0)=1,y(0)=0','t');>> x=simple(x)x =(-1/4*2^(1/2)+1/2)*exp(2^(1/2)*t)+(1/4*2^(1/2)+1/2)*exp(-2^(1/2)*t)>> y=simple(y)y =-1/4*2^(1/2)*(exp(2^(1/2)*t)-exp(-2^(1/2)*t))

3、M_文件:

function dx=l(t,x)dx=zeros(2,1);dx(1)=x(1)-0.1*x(1)*x(2)+0.01*t;dx(2)=-x(2)+0.4*x(1)*x(2)+0.04*t;程序(ode45):

>> [t,x]=ode45('l',[0,100],[30 20]);>> plot(t,x(:,1),'-',t,x(:,2),'*')

程序(ode15s): >> [t,x]=ode15s('l',[0,100],[30 20]);>> plot(t,x(:,1),'-',t,x(:,2),'*')

项目五:微分方程的数值解法二

一、实训课程名称

数学建模实训

二、实训项目名称

微分方程求解

三、实验目的和要求

熟悉并掌握用matlab解微分方程的解析解和数值解 四:实验内容和原理

一个慢跑者在平面上沿圆以恒定的速率v=1跑步,设圆方程为:

x=10+20cost,y=20+20sint.突然有一只狗攻击他.这只狗从原点出发,以恒定速率w跑向慢跑者,狗的运动方向始终指向慢跑者.分别求出w=20,w=5时狗的运动轨迹.五:主要仪器及耗材 计算机、matlab软件 六:操作办法与实训步骤 当w=20 建立M文件h,M文件如下 function dy=h(t,y)

dy=zeros(2,1);dy(1)=20*(10+20*cos(t)-y(1))/sqrt((10+20*cos(t)-y(1))^2+(20+20*sin(t)-y(2))^2);dy(2)=20*(20+20*sin(t)-y(2))/sqrt((10+20*cos(t)-y(1))^2+(20+20*sin(t)-y(2))^2);程序如下: 取t0=0,tf=10 [t,y]=ode45('h',[0 10],[0 0]);>> t=0:0.1:2*pi;>> X=10+20*cos(t);>> Y=20+20*sin(t);>> plot(X,Y,'-')>> hold on plot(y(:,1),y(:,2),'*')

当W=5 建立M文件l,M文件如下 function dy=l(t,y)

dy=zeros(2,1);

dy(1)=5*(10+20*cos(t)-y(1))/sqrt((10+20*cos(t)-y(1))^2+(20+20*sin(t)-y(2))^2);

dy(2)=5*(20+20*sin(t)-y(2))/sqrt((10+20*cos(t)-y(1))^2+(20+20*sin(t)-y(2))^2);程序如下: 取t0=0,tf=10 [t,y]=ode45('l',[0 10],[0 0]);>> t=0:0.1:2*pi;>> X=10+20*cos(t);>> Y=20+20*sin(t);>> plot(X,Y,'-')>> hold on plot(y(:,1),y(:,2),'*')

项目六:数据点的插值与拟合

一、实训课程名称

数学建模实训

二、实训项目名称

数据点的插值与拟合

三、实验目的和要求

了解插值、最小二乘拟合的基本原理,掌握用MATLAB计算一维插值和两种二维插值的方法,掌握用MATLAB作最小二乘多项式拟合和曲线拟合的方法 四:实验内容和原理

附件1列出了采样点的位置、海拔高度及其所属功能区等信息,现要求你们通过数学建模来完成以下任务:

(1)给出8种主要重金属元素在该城区的空间分布,并分析该城区内不同区域重金属的污染程度。

五:主要仪器及耗材

计算机与Windows2000/XP系统;MATLAB软件 六:操作办法与实训步骤 在matlab中输入:

x=[];y=[];z=[];cx=0:100:28654;cy=5000:100:18449;cz=griddata(x,y,z,cx,cy','cubic');meshz(cx,cy,cz),rotate3d xlabel('X'),ylabel('Y'),zlabel('Z')figure(2),contour(cx,cy,cz,15,'r');

综合实训作品

基于枚举法和曲线积分法公路选址问题的求解 摘要 城区公路选址是一项利民工程,为将该工程做好,建设部门在设计时应最大限度减少造价,从而节约成本,达到费用最省。为此目的,本文利用函数化思想建立模型求解并给出了五种不同要求下的最优方案。

由题目所给数据(图1)可知,直线AB右上方单位区域中的单位建设费用小于AB左下的单位建设费用,且数据矩阵关于其次对角线对称。因而转弯点(无论一个或两个)均应位于AB右上区域。

问题1要求至多1个转弯点且在网格点上,可分0个和1个转弯点两种情况。对于0个转弯点,即直线AB,通过几何方法得出建设费用为14.9907百万元。对于1个转弯点在网格点上的问题,我们利用函数化思想建立函数关系模型,运用枚举法和权重法,并利用

编程直接输出最小费用。比较可知,恰有一个转弯点时较无转弯点为优。其方案是选择坐标为(5,6)或(6,5)的点,建设费用最小为14.707百万元。

对于问题3,要求转弯点在网格线上,即至少有一个坐标为整数,分一个转弯点和两个转弯点两种情况。因为整数最优点是最接近理想最优点的整数点,我们可以先算出只有两个转弯点时且转弯点在网格点的费用,计算得出最优转弯点为(4,7)和(7,4)时,建设费用最小,为14.6241百万元。在此基础上将循环语句中的步长1修改为0.01,运行结果说明,一个转弯点的最优选择是(6,4.57),费用为14.6989百万元;两个转弯点的最优选择是(3.62,7)和(7,3.62),费用为14.6201百万元。因而选择两个转弯点更优。

对于问题4,坐标点可以为区间[0,9]中的任意实数值,我们在问题三解法的基础上对最优点的两个坐标均用步长 0.01循环,得出最优转弯点为(3.58,7.32)和(7.32,3.58),此时最小费用为14.54百万元。可见较问题3的答案更优。

对于问题5,每个点的单位建设费用都不同,且单位建设费用是连续函数。我们用曲线积分方法建立总费用模型,求出变下限积分函数的最小值,得出最优点为(5.30,5.30),最优建设费用为14.707百万元,与问题1相同。

最后,我们针对问题的实际情况,对论文的优缺点做了评价,提出了几个改进方向,以便用于指导实际应用。

关键词:

函数化建模

编程

枚举法

最优方案

曲线积分法

一、问题重述

某区政府计划在下列区域(见图1)修建一条从A(0,9)到B(9,0)的直线型公路,由于涉及路面拆迁等因素,各地段建设费用有所不同,图1中的数字代表该区域公路单位建设费用(单位:百万元)。未标数字的任何地方单位建设费用均为1。图1的每个网格长与宽都是1个单位。每个网格的边界上建设费用按该地区最小单位费用计算。

请你按建设部门的如下具体要求,从建设费用最省的角度,给出最优的方案。(1)公路至多只能有1个转弯点,且转弯点只能建在图1所示的网格点上。(3)公路至多只能有2个转弯点,且转弯点只能建在图1所示的网格线上。(4)公路至多只能有2个转弯点,转弯点可以建在图1所示区域的任何位置。(5)如果各区域的单位建设费用为(百万元),公路至多只能有1个转弯点,转弯点可以建在图1所示区域的任何位置。

图1

二、问题分析 针对问题一:需要求出当公路至多只能有1个转弯点且转弯点只能建在图1所示的网格点上时所需的费用最省的目标值。首先,我们计算出没有转弯点时花费为14.9907百万元。对于有一个转弯点的,我们利用函数化建模思想将W与、的关系用数学方程式表达出来,接着利用

编程将函数关系式进行运算,使用枚举法得出所有可能的转弯点的值,最后通过查找语句找出所得数据中的最小值,在与没有转弯点的花费比较,较小的即为可用的最优方案。针对问题三:需要求出当公路至多只能有2个转弯点且转弯点只能建在图1所示的网格线上时所需的费用最省的目标值,坐标点至少有一个为小数,在只有两个转弯点时且转弯点在网格点的基础上设定x或y其一必为小数,即步长改为0.01,和只有两个转弯点时且转弯点在网格点类似。针对问题四:需要求出当公路至多只能有2个转弯点但转弯点可以建在图1所示区域的任何位置时所需的费用最省的目标值。此时,坐标点为0-9之间的任意实数,有两种情况:一种为有一个转弯点,另一种为有两个转弯点。在问题一与只有两个转弯点时且转弯点在网格点的基础上,针对第一种情况,只需将第一问的程序中的步长改为0.01;针对第二种情况,只需将只有两个转弯点时且转弯点在网格点程序中的步长改为0.01,通过比较两种情况下的值,可得出最优方案。

针对问题五:如果各区域的单位建设费用为(百万元),公路至多只能有1个转弯点,转弯点可以建在图1所示区域的任何位置。因为每个点的单位建设费用不同,但又是连续变化的,故我们可以利用微积分法思想,假设在极小的一段路程内建设费用是相同的,由此建立一个积分方程,通过 编码找出花费最小值,从而得出最优方案。

三、模型的假设

1、区域内所有位置的路面状况均相同

2、不考虑软件计算带来的极小误差

3、不考虑转弯点的设置对公路建设费用的影响

4、在区域内设置转弯点不受地形条件的限制

四、符号说明

(1):单转弯点的坐标;

(2):双转弯点中靠近A点的坐标;(3):双转弯点中靠近B点的坐标;(4):总建设费用;

(5):单位区域的公路长度;(6):第 条路段单位建设费用;

(7):第 条路段费用;(8):第 条路段与网格线交点的横坐标矩阵;(9):第 条路段与网格线交点的纵坐标矩阵;

五、模型的建立与求解

5.1 至多只能有1个转弯点且转弯点只能建在网格点上。5.1.1建立模型

(1)没有转弯点时: W=(百万元)

(2)有一个转弯点时:

利用函数化思想,建立 与、的函数关系: 第1步:在网格点上任取一点(图1),根据直线两点式方程:,可得直线 的方程为

图1

第2步:由直线方程可求得AP与x=i(i=0、1、2……)和y=j(j=yp……

8、9)的 所有交点,并按x从小到大的排序,(,)(i=1,2,3,4……)

取(,)和(,)则可以根据它们的中点得到这两点的路段需要的加权权重,即:

因此对于 有,累加可得AP段公路的费用。PB段公路的费用同理可得。故此总费用的表达式为:

5.1.2 软件求解

根据枚举法,利用Matlab软件求解(程序见chengxuyi),流程图如图2:

图2 求解 的流程图

从 程序运行结果可以看出,使得W最小的点的坐标为(5,6)和(6,5),此时,=14.707百万元。

因为14.707

图3 5.2下面计算只有两个转弯点且转弯点在网格时的情况 5.2.1判断公路的大致走向 5.2.1.1 公路在直线AB的上方

以直线AB为对称轴,上方区域的单位建设费用要低于其下方对应区域的单位建设费用。如图4所示,若有某段公路在直线AB的下方,则以直线AB为对称轴,得到与

其对称的公路。两公路长度相等,但下方价格明显高与上方,故公路应在直线AB的上方。

图4 5.2.1.2 公路呈向下趋势

若公路趋势如图5所示,路段 向上,水平或竖直,则连接 ,则易得公路 的建设费用低于A-P1-P2段的建设费用

图5

所以,我们得到公路的大致走向,如图6所示:

图6 5.2.2 建立模型 第一步:根据两点的位置关系,在网格点上任取两点,如图7。根据直线两点式方程:,得到直线A , , 的方程: A :(y–9)m =(mn)(an)(xb)(9a)

图7

第二步:根据直线方程可求得直线A 与x=i(i=0、1、2……)和y=j(j=yp……

8、9)的所有交点,并按x从小到大的排序,即:(,)(i=1,2,3,4……)

取(,)和(,)则可以根据它们的中点得到这两点的路段需要的加权权重,即:

第3步:对于 有,累加得到A 段公路的费用,同理得到 , 段公路的费用。故整条公路的总费用表达式为:

5.2.2 软件求解

5.2.2.1当有两个转弯点时

编写Matlab编程,利用枚举法,得到所有可能得到的两个转弯点的情况时所需要的总建设费用W,程序见chengxuer,分析流程图如图8:

图8 求两个转弯点在网格点上时的流程图

经过分析,得出使得W最小的两点坐标为(4,7)和(7,4),此时,=14.6241百万元。所以,将两转弯点分别设在坐标为(4,7)和(7,4)的网格点上时,能使建设费用最省,即为最优的方案。如图9:

图9 两转弯点在网格点上时的最优方案

5.3至多只能有2个转弯点且转弯点只能建网格线上。5.3.1 建立模型

5.3.1.1 有两个转弯点

在第二问的基础上,我们可推出公路的大致走向,如图10

图10 公路的大致走向 第 1 步:根据两点的位置关系,在网格点上任取两点,得到直线A , , 的方程: A :(y–9)m =(mn)(an)(xb)(9a)

第 2 步:在坐标满足条件的情况下,如果n为整数根据直线方程可求得直线A 与x=i(i=0、1、2……)和y=j(j=yp……

8、9)的所有交点,并按x从小到大的排序,即:(,)(i=1,2,3,4……)

取(,)和(,)则可以根据它们的中点得到这两点的路段需要的加权权重,即:

若n为小数,则取n的整数部分再加1,重复上述步骤; 如果m为整数,同样方法得到(,),若m为小数,则取m的整数部分,然后计算得到(,)。

第3步:对于 有,累加得到A 段公路的费用,同理得到 , 段公路的费用。故整条公路的总费用表达式为:

5.3.1.2 有一个转弯点

与设立两个转弯点相比,只需在网格线上任取一个点P,思想和方法都与之相同 5.3.2 软件求解

5.3.2.1 有两个转弯点

以只有两个转弯点且转弯点在网格点上的程序为基础,将循环中的步长设为0.01,在m或n为整数且a或b为整数的条件下,寻找最优解。程序见chengxusan,流程图以A 为例显示了取整与求取线段与网格线交点的过程,其他步骤同上。如图11。

图11 两个转弯点下的部分流程图 5.3.2.2设一个转弯点

编程思路与设两个转弯点的情况相同,程序见chengxusi。5.3.3 结果

设一个转弯点时,使W最小的转弯点坐标为(6,4.57),=14.6989; 设两个转弯点时,使W最小的转弯点坐标为(3.62,7)和(7,3.62),=14.63。所以最优方案为:设立两个转弯点,其坐标分别是(3.62,7)和(7,3.62)5.4至多只能有2个转弯点但转弯点可以建在所示区域的任何位置。

该问中,转弯点坐标都为实数,在问题二的基础上只需要改变x,y的步长,比较步长0.1和0.01,分析结果为步长是0.01时所花费用最省,即两个转弯点的坐标为(3.58,7.32),(7.32,3.58)时,建设费用为14.54百万元。5.5 单位建设费用连续变化 5.5.1缩小转弯点所在区间

以AB所在直线为x轴,AB的中垂线为y轴建立平面直角坐标系。以点A、B焦点,任意画一椭圆,如图12:

图12 两圆的半径差为dr,当dr足够小时,我们可将②区域内的单位造价视为均匀的,设三个区域内的造价分别为,由条可知,是P沿椭圆逆时针转过某一微小弧度所对应位置, C,D分别是 B与圆②相交的两个点,分别计算路线A-P-B和路线A--B所对应的总造价:

+

+ +)+

+ B)= P+PB)=

同理可证得:

以此类推可知将转弯点设在y轴上可使建设费用最省。在如图13所示的坐标系下,转弯点在直线y =x上

图13 转弯点的位置 5.5.2 建立模型 第一步:在线段上取极小的一段dS,此时,其建设费用可看作是均匀的,设此时

t =

(1)

第二步:对线段上的任意一点(x , y),设其参数方程为:

且令x = x(z)=z;第三步:

因为x = x(z)=z,所以

是公路所在直线的斜率,用k 表示,所以;

(2)

第四步:根据直线两点式方程:,得到直线AP、PB的直线方程: AP:

PB:

由于点P在直线y = x上,所以:

AP:

(3)

PB:

(4)第五步:对x积分,得到W的表达式:

(5)将(1)-(4)代入(5)得:

(6)

所以,该问题转化求函数式(6)的最小值问题

以直线AB为对称轴,上方区域的单位建设费用要低于其下方对应区域的单位建设费用。所以,转弯点应选在直线y=x上且位于直线AB的上方,即m>4,可缩短程序运行的时间。利用Matlab软件编程,以0.01为步长,解出W在区间[4,8.99]上的最小值。程序见chengxuwu。5.2.3.2结果

当m=5.30时,W最小,Wmin=14.707百万元。

所以,将转弯点设在(5.30,5.30)处,可使建设费用最少,为最优方案。

六、模型的推广与改进方向

1、枚举法只适用于个体数量较少的情况下

2、根据题目要求,分析出合适区域,在不影响最优方案的选择情况下适当缩短步长,以减少程序中不必要的循环计算进而缩短运算时间。

七、模型的优缺点

1、模型的优点

由于模型运用了枚举法,从而使得建立出该模型后比较直观,易于理解且算法的正确性比较容易证明。

2、模型的缺点

当数据量庞大时,程序运行时间稍长,对计算机的性能要求过高。参考文献

[1]谢军占,吕常影.亚当•斯密的公路经济理论[J].长安大学学报(社会科学版).第8卷 第3期.2006年9月

[2]徐秀华.Matlab软件在数学建模中的应用[J].科技与生活.2010年第13期 [3] 赵修坤

微积分第三版

国防工业出版社

2012 年8月

推荐专题: 社会实践总结报告 小学数学教师述职报告 数学建模实践报告

相关推荐
本站文档由会员上传,版权归作者所有,如有侵权请发送邮件至89702570@qq.com联系本站删除。
Copyright © 2010 - 千文网移动版
冀ICP备2020027182号