- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
;一、历年全国竞赛常用基本解法;96B节水洗衣机 非线性规划
97A零件的参数设计 非线性规划
97B截断切割的最优排列 随机模拟、图论
98A一类投资组合问题 多目标优化、非线性规划98B灾情巡视的最佳路线 图论、组合优化
99A自动化车床管理 随机优化、计算机模拟
99B钻井布局 0-1规划、图论
00A DNA序列分类 模式识别、Fisher判别、人工神经网络
00B钢管订购和运输 组合优化、运输问题;01A血管三维重建 曲线拟合、曲面重建
01B 工交车调度问题 多目标规划
02A车灯线光源的优化 非线性规划
02B彩票问题 单目标决策 仿真模拟
03A SARS的传播 微分方程、差分方程 时间序列
03B 露天矿生产的车辆安排整数规划、运输问题
04A奥运会临时超市网点设计 统计分析、数据处理、优化
04B电力市场的输电阻塞管理 数据拟合、优化05A长江水质的评价和预测 统计分析、数据处理、预测;总结
数学建模竞赛常用方法和手段主要是下面几类:
1.分析类 如最优捕鱼策略 SARS的传播 微分方程
2.运筹学 图论 规划等
3.数理统计 统计分析、数据处理等
4.计算机 模式识别、Fisher判别、人工神经网络、仿真模拟等
5.常用软件
Matlab Mathematica Lingo SAS系统等;新的发展特点 (05年前就已有反映)
1.对选手的计算机能力提出了更高的要求:赛题的解决依赖计算机,题目的数据较多,手工计算不能完成,如03B,某些问题需要使用计算机软件,01A。问题的数据读取需要计算机技术,如00A(大数据),01A(图象数据,图象处理的方法获得),04A(数据库数据,数据库方法,统计软件包)。计算机模拟和以算法形式给出最终结果。
2.赛题的开放性增大 解法的多样性,一道赛题可用多种解法。开放性还表现在对模型假设和对数据处理上。;二.基本解法运用案例;
现假设条件如下:
1).不相撞的标准为任意两架飞机的距离大于8公里;
2).飞机飞行方向角调整的幅度不应超过30度;
3).所有飞机的飞行速度均为每小时800公里;
4).进入该区域的飞机在到达区域边缘时,与区域内飞机的距离应在60公里以上;
5).最多需考虑6架飞机;
6).不必考虑飞机离开此区域后的情况。;请你对这个避免碰撞的飞行管理问题建立数学模型,列出计算步骤,对以下数据进行计算(方向角误差不超过0.01度),要求飞机飞行方向角调整的幅度尽量小。
设该区域4个顶点的坐标为(0,0),(160,0),(160,160),(0,160)。记录数据为:(注:方向角指飞行方向与x轴正向的夹角。);3.符号说明
t表示表示时间;
xi ,yi分别表示第i架飞机的横纵坐标(问题中已给出);
θi表示第i架飞机的飞行方向角(问题中已给出);
dij(t)表示t时刻第i架飞机与第j架飞机间的距离;
表示飞机的飞行速度( )。;2.问题分析
此问题很容易想到以飞机调整的飞行角度平方和作为目标函数,而以每两架飞机之间的最小距离不超过8km,各飞机飞行角度调整的值不超过30°为约束条件。如此得出的是一个非线性模型,在计算上可能会复杂些,但一目了然。;4、模型的建立
由题意可知,目标函数是
约束条件为
dij(t)=?
;其中
如何求Dij?
如果求出t, 则Dij可求出。
如何求t?
;对上式求极值,即有
其中;
于是本问题的一个数学模型为
是不是就可以求解了?;引入记号:
(g是由 按 构成的向量,在下面的程序中计算),则模型变为
其中,;5、模型的求解
调用Matlab命令fmincon求解,先写两个M函数airfun.m和airfunco.m如下:
M 函数 airfun.m
function f=airfun(delta)
f=delta*delta;
M 函数 airfunco.m;.;在Matlab命令窗口计算如下:
deltaini=zeros(1,6);
vlb=-pi*ones(1,6)/6;vub=pi*ones(1,6)/6;
options=optimset(LargeScale,off);
[dt,fval]=fmincon(@airfun,deltaini,[],[],[],[],vlb,vub,@airfunco,options);
d1=dt*180/pi,fval=d1*d1
d1 =
0.0000 0.0000 2.0683 -0.4896 -0.0055 1.5611
fval =
6.9547;三.数学建
文档评论(0)