数学建模实践课论文.docx
《数学建模实践课论文.docx》由会员分享,可在线阅读,更多相关《数学建模实践课论文.docx(24页珍藏版)》请在冰点文库上搜索。
数学建模实践课论文
学生实习报告
课程编号:
C01061
课程名称:
数学建模实用技术基础
学号:
姓名:
专业班级:
机自1501
所在学院:
工程分院
报告日期:
2017年8月13日
实习时间
2016-2017学年□秋季学期□春季学期■暑期短学期
自2017年7月1日至2017年8月7日
实习类型
□认识(社会调查)实习
■教学(课程、专题、金工)实习
□毕业(综合)实习
实习地点
校内
实习单位评语:
实习单位(盖章):
年月日
实习指导(带队)教师评语:
实习总评成绩:
教师(签名):
年月日
注:
学生的实习总结等文档附在本封面之后
摘要
数学建模实用技术应用基础系列课程给我最大的收获不是学会简单地使用软件、知道一些简单的建模方法,而是每一位老师课前的介绍。
老师们的课前介绍告诉我统计学的浩瀚。
这篇文章除了阐述抑或叫记录老师讲的我觉得比较重要的知识点,还有我自己根据老师的思路自己课外做的实例。
第一、二天讲的是关于文献查找的内容,印象最深刻还是NoteExpress的好用之处,除此之外还知道了一些常用的找文献的网站。
之后林老师讲的随机模拟对数学知识的储备要求比较高。
用excel的函数来做随机模拟无疑是非常快捷方便的办法。
KNN算法的思想对我而言很新奇,个人感觉和神经网络有点异曲同工之处。
康老师讲的关于MATLAB、LINGO软件的操作非常有用,相当于数学建模公选课的浓缩。
戴老师对matlab的更进一步的讲解,包括计算方法让我印象非常深刻。
如果说之前我在门外徘徊,从这堂课开始我才正视用matlab进行真正的编程操作。
matlab有很多计算方程的函数,这些都可以用help能够找到。
之后在张老师的指导下,学会了用spss的简单操作,也对聚类分析、降维有了初步的认识。
同时,张老师还讲了主成分分析和因子分析,用来解决多元统计系列问题。
黄老师的二维三维图形绘制的课也让我对数学建模论文的插图有了进一步的想法。
关于科技论文的写作更是让我有规范论文格式的意识。
最后,王老师介绍了MATLAB的工具箱。
我意识到了站在前人肩膀上的重要性。
总之此次数学建模培训让我明白数学建模四个字的含义,将问题转化为数学问题然后运用成熟的算法将之解决。
关键字:
MATLABLINGOSPSS多元统计
1网络文献及中英文文献的检索
这是图书馆的祝黎丽老师在7月1日上午讲授的。
1、检索
检索之前需要问自己几个问题。
在哪里检索,怎样检索,检索结果怎样获取。
学生和科研工作者一般用中外文数据库检索。
在检索之前一般都要制定检索策略。
而检索的结果一般用全文获取方式获取。
2、数据库
数据库中收录了各种类型的数字资源,如期刊、学位论文、会议、专利等。
在检索信息的时候需要用中文数据库和外文数据库相结合。
数据库的建设是一项知识工程,这项工程为使用者提供了重要的学术资源。
城院的数据库有三个来源,包括图书馆自购资源、开放资源和浙大共享资源。
3、常用检索网站
常用的检索网站有:
(1):
超星数字图书
(2):
CADAL
(3):
中文基本古籍库
(4):
CNKI中国学术期刊
(5):
维普期刊
(6):
万方数字化期刊子系统
4、总结
此外,老师还介绍了万方、维普等期刊的收录情况、覆盖范围,并向我们演示了下载资源的操作。
告诉我们检索方式可以用单个检索词也可以用组合检索词。
除了这些还介绍了常用的学术搜索引擎:
google学术、必应搜索和读秀学术搜索。
2文献管理软件NE
这是图书馆的祝黎丽老师在7月1日下午讲授的。
1、NoteExpress简介
NoteExpress是一款个人文献管理工具。
为了减轻研究工作中因为大量文件夹和大量重复文档导致的查找不方便和管理与撰写的痛苦,NoteExpress应运而生。
它可以通过各种途径连互联网对文件进行搜索,并且下载管理文献资料和论文。
该软件可嵌入MSWord环境使用,在使用Word中输出各种格式化的参考文献,不需要脱离Word环境。
使用方式与绝大多数文献管理软件相似,容易学习。
2、如何使用NoteExpress
在城市学院下载的NoteExpress在校园网范围内使用时无需账号密码,直接用IP进行控制。
其界面如图1:
图1NoteExpress界面
NoteExpress文献管理有5大模块,分别为:
检索、管理、分析、发现、写作。
题录是参考文献的标题、作者、摘要、关键词等信息即通常所说的文献,在NoteExpress中称为题录,存储在数据库节点下的题录文件夹中。
通常采用在线检索导入、数据库导入、导入全文和手动添加始终方式导入题录。
过滤器用来过滤数据。
因为不同数据库检索结果有不同显示格式,我们在三个数据库中检索,检索到的期刊文章数据可能以三种格式呈现。
此时就需要用过滤器进行处理。
外文数据库保存题录,可以选择RIS或Endnote格式,导入时过滤器选择相应的RIS或EndnoteImport。
另外,NE2.0也支持BibTeX格式的导入和导出。
图2NoteExpress一般使用步骤
3随机模拟
这是林伟然老师在7月2日讲授的。
林老师讲述了几何概型。
举了约会问题和蒲丰投针实验的例子,让我们更好地理解几何概型。
同时,林老师还演示了基于EXCEL的随机模拟。
演示中用到生成随机数的函数是RAND。
此外还用了ABS函数用来求绝对值。
面包价格P是一个随机变量P~N(4,1),NORMINV函数用于返回指定平均值和标准偏差的正态累积分布函数的反函数值。
所以在这里用来表示面包的价格随机变量P。
Excel仿真模拟是利用Excel中自带的函数,通过生成随机数的方式,进行计算,从而解决实际问题。
它的原理是蒙特卡罗方法。
蒙特卡罗方法,也称为计算机随机模拟方法,是一种基于“随机数”计算方法。
只要设计一个随机试验,使一个事件的概率与某未知数有关,然后通过重复试验,以频率近似表示概率,即可求得该未知数的近似解。
林老师在下午还讲了KNN算法[7]。
该算法的思想是:
一个样本与数据集中的k个样本最相似,如果这k个样本中的大多数属于某一个类别,则该样本也属于这个类别。
该算法涉及3个主要因素:
训练集、距离或相似的衡量、k的大小。
KNN算法的计算步骤如下:
图3
算距离:
给定测试对象,计算它与训练集中的每个对象的距离。
找邻居:
圈定距离最近的k个训练对象,作为测试对象的近邻。
做分类:
根据这k个近邻归属的主要类别,来测试对象分类。
图4是KNN算法的图形解释:
图4
KNN算法[5]的改进:
分组快速搜索近邻法。
其基本思想是:
将样本集按近邻关系分解成组,给出每组质心的位置,以质心作为代表点,和未知样本计算距离,选出距离最近的一个或若干个组,再在组的范围内应用一般的KNN算法。
由于并不是将未知样本与所有样本计算距离,故该改进算法可以减少计算量,但并不能减少存储量。
4Matlab基本操作
这是康旭升老师在7月31日上午讲授的。
开发MATLAB软件的初衷只是为了方便矩阵运算,随着其作为商业软件的推广,它不断吸收各学科各领域权威人士编写的实用程序,形成了一系列规模庞大、覆盖面极广的工具箱(Toolbox),如优化、图形处理、信号处理、神经网络、小波分析、概率统计、偏微分方程、系统识别、鲁棒控制、模糊逻辑等工具箱,极大地方便了我们进行科学研究和工程应用。
由于数学建模中很多问题都可以转化为优化问题,本节我们简单地介绍一下优化工具箱(OptimizationToolbox)中的部分函数,为大家今后熟练使用MATLAB各工具箱函数奠定基础。
康老师给我们介绍了matlab的基本用法,介绍了逻辑运算,循环。
比如%后面的是解释性语句,不参与程序的运行。
而%%是可以起到分段作用的。
如果matlab语句另起一行但是没写完那么就需要加…。
此外,康老师还以Fibonnaci为例演示了matlab编程解决问题。
图5
5Lingo/lindo优化软件简介
这是康旭升老师在7月31日下午讲授的。
康老师介绍了LINGO软件,由于是英文版,简单的介绍了菜单栏的作用。
然后康老师给我们演示了用LINGO怎样求最优路线。
图6
公式1
所以,从S到T的最优行驶路线的路长为20.进一步分析以上求解过程,可以得到从S到T的最优行驶路线为
S→A3→B2→C1→T.公式2
LINGO程序如图6所示:
图7
此外,康老师还讲了用LINGO来解决订购船只的问题。
下面将阐述用LINGO解决最优选择问题。
某钻井队要从10个可供选择的井位中确定5个钻井探油,使总的钻探费用为最小。
若10个井位的代号为s1、s2……s10,相应的钻探费用为c1,c2……c10为5,8,10,6,9,5,7,6,10,8,并且井位选择上要满足下列限制条件:
(1)或选择s1和s7,或选择钻探s9;
(2)选择了s3或s4就不能选择s5,或反过来也一样;
(3)在s5,s6,s7,s8中最多只能选两个;
试建立这个问题的整数规划模型,确定选择的井位。
取0-1变量
,若
表示选取第i个井,若
,则表示不选取第i个井。
建立数学模型如下所示:
公式3
model:
sets:
variables/1..10/:
s,cost;
endsets
data:
cost=581069576108;
enddata
min=@sum(variables:
cost*s);
(s
(1)+s(7)-2)*(s(9)-1)=0;
s(3)*s(5)+s(4)*s(5)=0;
@sum(variables(i)|i#ge#5#and#i#le#8:
s(i))<=2;
@sum(variables:
s)=5;
@for(variables:
@bin(s));
end
图8
VariableValueReducedCost
S
(1)1.0000005.000000
S
(2)0.0000008.000000
S(3)0.00000010.00000
S(4)1.0000006.000000
S(5)0.0000009.000000
S(6)1.0000005.000000
S(7)1.0000007.000000
S(8)0.0000006.000000
S(9)0.00000010.00000
S(10)1.0000008.000000
Objectivevalue:
31.00000
即选择井S1、S2、S4、S6、S7以达到最小费用31。
6符号运算、字符串操作及相互转化
这是戴晓霞老师在8月1日上午讲授的。
戴老师给我们介绍了matlab的符号工具箱,演示了怎样用matlab解方程。
定义符号应该用x=sym(‘x’,’real’)。
这样可以用来求导。
在符号工具箱symbolicmathtoolbox中可以找到一些常用的函数,我们可以通过matlab的help函数进行学习寻找我们不知道的函数的用法,也可以求助matlab的社区寻求帮助。
她向我们介绍了求积分函数的用法。
=int(f,0,1)用来求积分。
还有求导函数diff的用法,ezplot函数可以直接画出函数的图像,不需要像plot那样描点,还有求极限函数limit。
如果是diff(u,x,1),则表示在函数u中对x求1阶偏导。
戴老师还强调一般可以用solve解方程,如‘solve(‘sin(x)=1’,x)可以解最近的根。
下面将用图片来阐述符号运算、字符串操作及互相转化的关系。
图9
7计算方法、微分方程数值解
这是戴晓霞老师在8月1日下午讲授的。
戴老师让我们初步了解计算方法。
1、误差分为模型误差,观察误差,计算误差(舍入误差(稳定),截断误差(方法))
2、非线性方程求解(solve)
f(x)=0
(1)用ezplot找出大致解,先确定有解。
(零点存在定理)
(2)牛顿迭代法
,终止条件
(依赖于初值的选择,如果n大于20,牛顿迭代无效,复数偶重根能求)
3、线性方程组(Ax=b)(A的条件数直接影响计算好坏,条件数越大越不好)
(1)A:
n*n,a.直接法,A\b,A=LU(只有舍入误差,没有截断误差)
b.在a方程计算效果不好的情况下,cond(A)很大,或者A不是对称,gmres,bicg等迭代法
(2)A:
n*m(最小二乘),A\b
4、插值与拟合
插值:
interp1(分段低次插值,高次插值震荡)
拟合:
cftool
5、数值积分
(1)等距节点(梯形公式,(复合)辛普森公式),quad函数和dblquad函数
(2)非等距节点,高斯积分,代数精度最高。
6、常微分方程
ode45(4阶Runge-kutta)
7、偏微分方程(综合)
pdetool函数
8、特征值与特征向量
eig函数:
全部特征值
eigs:
绝对值意义下最大或最小的特征值
8多元统计分析及统计软件基本功能
这是张彩伢老师在8月2日和8月3日讲授的。
我知道了聚类分析是什么。
学会了用spss做聚类分析。
聚类分析是根据研究对象的特征,对样品或者变量进行分类的一种多元统计分析[8]方法,在进行聚类分析之前,这些类别是隐蔽的,能分为多少种类别事先也是不知道的。
聚类分析的目的是根据对象间的相关程序大小进行类别的聚合,要求同一类中的个体有较大的相关性,不同类中的个体差异很大。
在中间距离法中,知道了可以用中心线定理去证明。
学习了判别分析。
判别分析是根据已掌握的、历史上每个类别的若干样本的数据信息,总结出客观事物分类的规律性,建立判别公式和判别准则。
根据总结出的判别公式和判别准则,判断新的样本点所属的类别。
老师上课演示时用了spss自带的例子。
接下来我将以一个自己的例子来展示这两天学到的。
图10
表1
觀察值處理摘要a
觀察值
有效
遺漏
總計
N
百分比
N
百分比
N
百分比
10
100.0
0
.0
10
100.0
a.平均連結(組間)
表2
图11
图12
图13
表3
表4
学习了主成分分析法和因子分析法。
主成分分析[6]也称主分量分析,旨在利用降维的思想,把多指标转化为少数几个综合指标。
因子分析法是指从研究指标相关矩阵内部的依赖关系出发,把一些信息重叠、具有错综复杂关系的变量归结为少数几个不相关的综合因子的一种多元统计分析方法。
基本思想是:
根据相关性大小把变量分组,使得同组内的变量之间相关性较高,但不同组的变量不相关或相关性较低,每组变量代表一个基本结构一即公共因子。
显著性水平是0.000小于0.05,所以显著,此时例子适合做因子分析。
这些都属于多元统计的范畴。
需要过硬的线性代数和概率论与数理统计基础。
9二维三维图形绘制
这是黄外斌老师在8月4日上午讲授的。
Matlab的二维三维图形绘制[4]是基于函数,不同于solidworks等工程师所用的绘图软件。
将以一例阐述。
用图解法求方程
最靠近原点的解。
图14
图15
关于以上程序,我在csdn中写了一篇博客。
10科技论文写作技巧
这是黄外斌老师在8月4日下午和8月5日上午讲授的。
科技论文是反映科技研究成果和科技管理经验的一种学术论文,即科研论文是对从事的科学研究成果的反映。
科技论文里的题名应该直接明示文章的内容,准确地表达出作者的研究成果。
摘要是论文的简要叙述,是一篇具有独立性和完整性的短文。
摘要应该包括本文的创造性成果及理论与实际意义。
摘要中不宜用公式、图表,不标注引用文献编号。
关键词是反映文章最主要内容的术语,是为了方便检索,适应计算机自动检索需要而产生的。
正文是科技论文的核心组成部分,应充分阐明论文的观点、原理、方法及具体达到预期目标的整个过程。
突出创新性,以反映论文具有的首选性。
结论是对整个论文主要成果的总结,在结论中应该明确指出研究内容的创新性成果或创新理论。
引用参考文献应该注意文献不但要新还要足,EI论文最好是15篇以上。
此外,黄老师还拿出他收藏的论文与我们一一讲解。
11图形图像处理
这是黄外斌老师在8月5日下午讲授的。
黄老师讲了对图像处理[10]方式。
通过在matlab中输入代码,可以调整图像的颜色、大小,可以旋转图像,去噪。
我以一张图为例,进行matlab命令的运用。
图16
图17
12Matlab优化工具箱及常用算法概述
这是王贵老师在8月6日讲授的。
Matlab是mathworks公式推出的一套功能强大的过程计算及数值分析软件,是目前世界上应用最广泛的工程计算软件之一。
它包含很多工具箱,主要用来扩充matlab的数值计算、符号计算、图形建模仿真等功能,使其能够用于多种学科,里面有一些常用工具箱,如控制系统工具箱、信号处理工具箱、财政金融工具箱等等。
Matlab的优化工具箱[9]主要应用包括:
1、求解无约束条件非线性极小值;
2、求解约束条件下非线性极小值,包括目标逼近问题、极大-极小值问题;
3、求解二次规划和线性规划问题;
4、非线性最小二乘逼近和曲线拟合;
5、求解复杂结构的大规模优化问题
优化工具箱的常用函数有:
边界约束条件下的非线性最小化fminbnd
求解多变量函数的最小化fminunc
求解无约束非线性最小化fminsearch
求解线性规划问题linprog
求解二次规划问题quadprog
求解有约束的非线性最小化fmincon
求解多目标规划的优化问题fgoalattain
求解最小、最大化问题fminimax
算法是指解决问题的一种方法或一个过程。
常用的算法有递归与分治算法、动态规划算法、贪心算法、回溯法、分支限界法、概率算法和线性规划与网络优化算法。
还有一些智能算法[1],如遗传算法[2]、模拟退化算法、禁忌搜索算法、蚁群算法和粒子群算法[3]等。
13总结与体会
通过这几天的数学建模培训,我深刻地认识到了数学的重要性。
我们可以通过spss、lingo、matlab、1st0pt等软件来快速地解决问题,但是过硬的数学功底可以让我们更好地掌握他们。
比如以spss软件为例,如果没有概率论与数理统计和线性代数的知识,可能连它导出的表格都看不懂,更别谈因子分析了。
再说说数学建模的比赛。
数学建模比赛最后是以论文的方式呈现给评委老师的。
这就奠定了数学建模论文格式及图表美观性的重要性。
论文格式如果出现错误,可能会导致论文失去参赛资格。
论文结尾的参考文献可以通过NoteExpress导入。
当然,NoteExpress在文献的管理上面也比较方便。
作为一个机械专业的学生,参加数学建模比赛最主要的目的除了学习怎么样写出更好地论文还有就是为了弥补在编程方面的缺憾。
机械专业其实在硕士阶段与matlab息息相关,有些好的高校在本科阶段也将matlab的学习纳入培养计划中,学习如逆水行舟,不进则退,更何况现在属于人工智能的时代,如果不懂算法那么将会被这个时代淘汰。
整个暑假的培训,短短的几天老师只是起到了引导的作用,更多的东西需要自己去学习。
以上。
14参考文献
[1]骆旗,付苗苗.浅析数学建模中的智能优化算法[J].科技经济导刊,2017,(16):
18+10.[2017-08-10].
[2]贾花萍.智能算法在数学建模比赛中的应用[J].计算机系统应用,2016,25(08):
149-154.[2017-08-10].DOI:
10.15888/ki.csa.005272
[3]王先超,韩波,张开银,孙娓娓,王春生,王志刚,杨利峰.粒子群算法在求解数学建模最优化问题中的应用[J].阜阳师范学院学报(自然科学版),2016,33(02):
117-121.[2017-08-10].DOI:
10.14096/34-1069/n/1004-4329(2016)02-117-05
[4]曲庆国,孟艳双,王建英.Matlab在数学建模教学中的应用[J].教育教学论坛,2016,(21):
262-263.[2017-08-10].
[5]史佳.基于聚类与K近邻算法的LKJ运行记录数据分析及故障诊断[D].兰州交通大学,2015.
[6]俞立平,刘爱军.主成分与因子分析在期刊评价中的改进研究[J].情报杂志,2014,33(12):
94-98.[2017-08-10].
[7]肖辉辉,段艳明.基于属性值相关距离的KNN算法的改进研究[J].计算机科学,2013,40(S2):
157-159+187.[2017-08-10].
[8]周全.几种多元统计分析方法及其在生活中的应用[D].长江大学,2012.
[9]张武.MATLAB优化工具箱及其应用[J].农业网络信息,2008,(08):
138-139+142.[2017-08-10].
[10]邓巍,丁为民,张浩.MATLAB在图像处理和分析中的应用[J].农机化研究,2006,(06):
194-198.[2017-08-10]