没有合适的资源?快使用搜索试试~ 我知道了~
数学建模学习资料 数学建模十大经典算法 共38页.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 103 浏览量
2024-11-15
22:19:26
上传
评论
收藏 358KB DOCX 举报
温馨提示
数学建模学习资料 数学建模十大经典算法 共38页.docx
资源推荐
资源详情
资源评论
建模十大经典算法
1、蒙特卡罗算法。
该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时通过模拟可以
来检验自己模型的正确性。
2、数据拟合、参数估计、插值等数据处理
算法。
比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用
Matlab 作为工具。
3、线性规划、整数规划、多元规划、二次
规划等规划类问题。
建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,
通常使用 Lindo、Lingo、MATLAB 软件实现。
4、图论算法。
这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可
以用这些方法解决,需要认真准备。
5、动态规划、回溯搜索、分治算法、分支
定界等计算机算法。
这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中。
6、最优化理论的三大非经典算法:模拟退
火法、神经网络、遗传算法。
这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是
算法的实现比较困难,需慎重使用。
7、网格算法和穷举法。
网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模
型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。
8、一些连续离散化方法。
很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其
离散化后进行差分代替微分、求和代替积分等思想是非常重要的。
9、数值分析算法。
如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求
解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。
10、图象处理算法。
赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图
形如何展示以及如何处理就是需要解决的问题,通常使用 Matlab 进行处理。
历年全国数学建模试题及解法
赛题 解法
93A 非线性交调的频率设计 拟合、规划
93B 足球队排名 图论、层次分析、整数规划
94A 逢山开路 图论、插值、动态规划
94B 锁具装箱问题 图论、组合数学
95A 飞行管理问题 非线性规划、线性规划
95B 天车与冶炼炉的作业调度 动态规划、排队论、图论
96A 最优捕鱼策略 微分方程、优化
96B 节水洗衣机 非线性规划
97A 零件的参数设计 非线性规划
97B 截断切割的最优排列 随机模拟、图论
98A 一类投资组合问题 多目标优化、非线性规划
98B 灾情巡视的最佳路线 图论、组合优化
99A 自动化车床管理 随机优化、计算机模拟
99B 钻井布局 0-1 规划、图论
00A DNA 序列分类 模式识别、Fisher 判别、人工神经网络
00B 钢管订购和运输 组合优化、运输问题
01A 血管三维重建 曲线拟合、曲面重建
01B 公交车调度问题 多目标规划
02A 车灯线光源的优化 非线性规划
02B 彩票问题 单目标决策
03A SARS 的传播 微分方程、差分方程
03B 露天矿生产的车辆安排 整数规划、运输问题
04A 奥运会临时超市网点设计 统计分析、数据处理、优化
04B 电力市场的输电阻塞管理 数据拟合、优化
05A 长江水质的评价和预测 预测评价、数据处理
05B DVD 在线租赁 随机规划、整数规划
06A 出版资源配置
06B 艾滋病疗法的评价及疗效的预测
07A 中国人口增长预测
07B 乘公交,看奥运 多目标规划 数据处理 图论
08A 数码相机定位
08B 高等教育学费标准探讨
09A 制动器试验台的控制方法分析
09B 眼科病床的合理安排 动态规划
10A
10B
赛题发展的特点:
1.对选手的计算机能力提出了更高的要求:赛题的解决依赖计算机,题目的数据较多,手工
计算不能完成,如 03B,某些问题需要使用计算机软件,01A。问题的数据读取需要计算机
技术,如 00A(大数据),01A(图象数据,图象处理的方法获得),04A(数据库数据,数
据库方法,统计软件包)。计算机模拟和以算法形式给出最终结果。
2.赛题的开放性增大 解法的多样性,一道赛题可用多种解法。开放性还表现在对模型假设和
对数据处理上。
3.试题向大规模数据处理方向发展
4.求解算法和各类现代算法的融合
从历年竞赛题来看,常用的方法:
线性规划 整数规划 非线性规划 动态规划 层次分析法
图论方法 拟合方法 插值方法 随机方法 微分方程方法
各种算法的详解
一、蒙特卡洛算法
1、含义的理解
以概率和统计理论方法为基础的一种计算方法。也称统计模拟方法,是指使用随机数(或更
常见的伪随机数)来解决很多计算问题的方法,它是将所求解的问题同一定的概率模型相
联系,用计算机实现统计模拟或抽样,以获得问题的近似解。
2、算法实例(有很多相似的例题,包括平行线等)
在数值积分法中,利用求单位圆的 1/4 的面积来求得 Pi/4 从而得到 Pi。单位圆的 1/4 面积是
一个扇形,它是边长为 1 单位正方形的一部分。只要能求出扇形面积 S1 在正方形面积 S 中
占的比例 K=S1/S 就立即能得到 S1,从而得到 Pi 的值。怎样求出扇形面积在正方形面积中
占的比例 K 呢?一个办法是在正方形中随机投入很多点,使所投的点落在正方形中每一个
位置的机会相等看其中有多少个点落在扇形内。将落在扇形内的点数 m 与所投点的总数 n
的比 m/n 作为 k 的近似值。P 落在扇形内的充要条件是
2 2
1x y+ £
。
已知:K=
1s
s
,K
»
m
n
,s=1,s1=
4
Pi
,求 Pi。
由
1s m
s n
»
,知 s1
»
*
m
s
n
=
m
n
,
而 s1=
4
Pi
,则 Pi=
*4
m
n
程序:(该算法可以修改后用 Mathematica 计算或者 Matlab)
/* 利用蒙特卡洛算法近似求圆周率 Pi*/
/*程序使用:VC++6.0 */
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#define COUNT 800 /*循环取样次数,每次取样范围依次变大*/
void main()
{
double x,y;
int num=0;
int i;
for(i=0;i<COUNT;i++)
{
x=rand()*1.0/RAND_MAX;/*RAND_MAX=32767,包含在<stdio.h>中*/
y=rand()*1.0/RAND_MAX;
if((x*x+y*y)<=1)
num++; /*统计落在四分之一圆之内的点数*/
}
printf("Pi 值等于:%f\n",num*4.0/COUNT);
剩余37页未读,继续阅读
资源评论
passionSnail
- 粉丝: 456
- 资源: 7362
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功