数学建模1课件_第1页
数学建模1课件_第2页
数学建模1课件_第3页
数学建模1课件_第4页
数学建模1课件_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、算法及程序实现 葛志昊河南大学数学与信息科学学院 zhihaoge2013.07 9/8/20221算法及Matlab程序实现 数学建模简介 1.关于数学建模 2.数学建模实例 3.数学建模论文的撰写方法A.人口预报问题B. 椅子能在不平的地面上放稳吗?C.双层玻璃的功效2022/9/82算法及Matlab程序实现1、什么是数学模型? 数学模型是对于现实世界的一个特定对象,一个特定目的,根据特有的内在规律,做出一些必要的假设,运用适当的数学工具,得到一个数学结构。 简单地说:就是系统的某种特征的本质的数学表达式(或是用数学术语对部分现实世界的描述),即用数学式子(如函数、图形、代数方程、微分方

2、程、积分方程、差分方程等)来描述(表述、模拟)所研究的客观对象或系统在某一方面的存在规律。一、名词解释2022/9/83算法及Matlab程序实现2、什么是数学建模? 数学建模是利用数学方法解决实际问题的一种实践。即通过抽象、简化、假设、引进变量等处理过程后,将实际问题用数学方式表达,建立起数学模型,然后运用先进的数学方法及计算机技术进行求解。 2022/9/84算法及Matlab程序实现 数学建模其实并不是什么新东西,可以说有了数学并需要用数学去解决实际问题,就一定要用数学的语言、方法去近似地刻划该实际问题,这种刻划的数学表述的就是一个数学模型,其过程就是数学建模的过程。数学模型一经提出,就

3、要用一定的技术手段(计算、证明等)来求解并验证,其中大量的计算往往是必不可少的,高性能的计算机的出现使数学建模这一方法如虎添翼似的得到了飞速的发展,掀起一个高潮。 数学建模将各种知识综合应用于解决实际问题中,是培养和提高同学们应用所学知识分析问题、解决问题的能力的必备手段之一。2022/9/85算法及Matlab程序实现 二、数学建模的一般方法和步骤 建立数学模型的方法和步骤并没有一定的模式,但一个理想的模型应能反映系统的全部重要特征: 模型的可靠性和模型的使用性建模的一般方法: 机理分析 测试分析方法 机理分析:根据对现实对象特性的认识,分析其因果关系,找出反映内部机理的规律,所建立的模型常

4、有明确的物理或现实意义。 测试分析方法:将研究对象视为一个“黑箱”系统,内部机理无法直接寻求,通过测量系统的输入输出数据,并以此为基础运用统计分析方法,按照事先确定的准则在某一类模型中选出一个数据拟合得最好的模型。 测试分析方法也叫做系统辩识。 将这两种方法结合起来使用,即用机理分析方法建立模型的结构,用系统测试方法来确定模型的参数,也是常用的建模方法。2022/9/86算法及Matlab程序实现 在实际过程中用那一种方法建模主要是根据我们对研究对象的了解程度和建模目的来决定。机理分析法建模的具体步骤大致可见右图。符合实际不符合实际交付使用,从而可产生经济、社会效益实际问题抽象、简化、假设 确

5、定变量、参数建立数学模型并数学、数值地求解、确定参数用实际问题的实测数据等来检验该数学模型建模过程示意图2022/9/87算法及Matlab程序实现2022/9/810算法及Matlab程序实现1、如何预报人口? 要预报未来若干年(如2015)的人口数,最重要的影响因素是今年的人口数和今后这些年的增长率(即人口出身率减死亡率),根据这两个数据进行人口预报是很容易的。记今年人口为 ,k年后人口为 ,年增长率为r,则预报公式为: 预报正确的条件: 年增长率r保持不变。数学建模实例2022/9/811算法及Matlab程序实现1、指数增长模型(马尔萨斯人口模型): 英国人口学家马尔萨斯(Malthu

6、s17661834)于1798年提出。2、阻滞增长模型(Logistic模型)3、更复杂的人口模型 随机性模型、考虑人口年龄分布的模型等 可见数学模型总是在不断的修改、完善使之能符合实际情况的变化。人口模型2022/9/812算法及Matlab程序实现数学建模竞赛网上资源CUMCM网站: MCM和ICM网站: 中国数学建模: 中科大建模网站: MATLAB网站: GOOGLE大学2022/9/816算法及Matlab程序实现93A 非线性交调的频率设计: 拟合、规划93B 足球队排名次: 矩阵论、图论、层次分析法、整数规划94A 逢山开路: 图论、插值、动态规划94B 锁具装箱问题: 图论、组

7、合数学95A 飞行管理问题 : 非线性规划、线性规划95B 天车与冶炼炉的作业调度: 非线性规划、动态规划、层次分析法、PETRI方法、图论方法、排队论方法96A 最优捕鱼策略:微分方程、积分、非线性规划2022/9/817算法及Matlab程序实现96B 节水洗衣机:非线性规划97A 零件参数设计:微积分、非线性规划、随机模拟97B 截断切割:组合优化、几何变换、枚举、蒙特卡罗、递归、最短路98A 投资收益与风险:线性规划、非线性规划98B 灾情巡视:最小生成树、Hamilton圈、旅行商问题99A 自动化车床:积分、概率分布、随机模拟、分布拟合度检验2022/9/818算法及Matlab程

8、序实现99B 钻井布局:几何变换、枚举、最大完全子图、混合整数规划00A DNA分类:神经网络、最小二乘拟合、统计分类00B 管道订购:最短路、二次规划01A 血管的三维重建:数据挖掘、曲面重建与拟合01B 公交车调度:非线性规划02A 车灯光源优化设计:最优化02B 彩票中的数学:概率与优化2022/9/819算法及Matlab程序实现97年的A题 每个零件都有自己的标定值,也都有自己的容差等级,而求解最优的组合方案将要面对着的是一个极其复杂的公式和108种容差选取方案,根本不可能去求解析解,那如何去找到最优的方案呢?随机性模拟搜索最优方案就是其中的一种方法,在每个零件可行的区间中按照正态分

9、布随机的选取一个标定值和选取一个容差值作为一种方案,然后通过蒙特卡罗算法仿真出大量的方案,从中选取一个最佳的。2022/9/823算法及Matlab程序实现02年的B题 关于彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。2022/9/824算法及Matlab程序实现98 年美国赛A 题 生物组织切片的三维插值处理94 年A 题逢山开路 山体海拔高度的插值计算2. 数据拟合、参数估计、插值等数据处理算法 比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用MATLAB 作为工具。与图形处理有关

10、的问题很多与拟合有关系。 此类问题在MATLAB中有很多函数可以调用,只有熟悉MATLAB,这些方法才能用好。2022/9/825算法及Matlab程序实现98年B 题 用很多不等式完全可以把问题刻画清楚3. 规划类问题算法 此类问题主要有线性规划、整数规划、多元规划、二次规划等。竞赛中很多问题都和数学规划有关,可以说不少的模型都可以归结为一组不等式作为约束条件、几个函数表达式作为目标函数的问题,遇到这类问题,求解就是关键了。 因此列举出规划后用Lindo、Lingo 等软件来进行解决比较方便,所以还需要熟悉这两个软件。2022/9/826算法及Matlab程序实现98 年B 题、00年B 题

11、、95 年锁具装箱等问题体现了图论问题的重要性。4. 图论问题 这类问题算法有很多,包括:Dijkstra、Floyd、Prim、Bellman-Ford,最大流,二分匹配等问题。2022/9/827算法及Matlab程序实现92 年B 题用分枝定界法97 年B 题是典型的动态规划问题98 年B 题体现了分治算法5. 计算机算法设计 计算机算法设计包括很多内容:动态规划、回溯搜索、分治算法、分枝定界等计算机算法. (要给出流程图)2022/9/828算法及Matlab程序实现97年A 题用模拟退火算法00年B 题用神经网络分类算法01年B 题这种难题也可以使用神经网络美国89年A 题也和BP

12、算法有关系美国03年B 题伽马刀问题,最佳方法是遗传算法。6. 最优化理论的三大非经典算法: 模拟退火法(SA)、神经网络(NN)、遗传算法(GA) 近几年的赛题越来越复杂,很多问题没有什么很好的确定模型可以借鉴,于是这三类算法可以派上用场。2022/9/829算法及Matlab程序实现97 年A 题、99 年B 题都可以用网格法搜索 网格算法和穷举法一样,只是网格法是连续问题的穷举。此类算法运算量较大。7. 网格算法和穷举算法 这种方法最好在运算速度较快的计算机中进行,还有要用高级语言来做,最好不要用MATLAB 做网格,否则会算很久的。2022/9/830算法及Matlab程序实现 很多问

13、题都是实际来的,数据(问题)可以是连续的,而计算机只能处理离散的数据,因此需要将连续问题进行离散化处理后再用计算机求解。比如差分代替微分(有限差分法)、求和代替积分(数值积分)等思想都是把连续问题离散化的常用方法。8. 连续问题离散化的方法2022/9/831算法及Matlab程序实现93A2022/9/834算法及Matlab程序实现93B2022/9/835算法及Matlab程序实现94B2022/9/836算法及Matlab程序实现952022/9/837算法及Matlab程序实现2022/9/838算法及Matlab程序实现962022/9/839算法及Matlab程序实现2022/9

14、/840算法及Matlab程序实现2022/9/841算法及Matlab程序实现2022/9/842算法及Matlab程序实现2022/9/843算法及Matlab程序实现2022/9/844算法及Matlab程序实现2022/9/845算法及Matlab程序实现2022/9/846算法及Matlab程序实现例子2022/9/847算法及Matlab程序实现数学建模需要的知识运筹学多元统计分析微分方程2022/9/848算法及Matlab程序实现数学建模常用的方法类比法量纲分析法差分法变分法图论法层次分析法数据拟合法回归分析法数学规划(线性规划,非线性规划,整数规划,动态规划,目标规划)202

15、2/9/849算法及Matlab程序实现数学建模常用的方法机理分析法排队方法对策方法决策方法模糊评判方法时间序列方法灰色理论方法现代优化算法(禁忌搜索算法,模拟退火算法,遗传算法,神经网络)2022/9/850算法及Matlab程序实现数学模型分类优化模型微分方程模型统计模型概率模型图论模型决策模型2022/9/851算法及Matlab程序实现拟合与插值方法问题给定一批数据点(输入变量与输出变量的数据),需确定满足特定要求的曲线或曲面插值问题要求所求曲线(面)通过所给所有数据点数据拟合不要求曲线(面)通过所有数据点,而是要求它反映对象整体的变化趋势2022/9/852算法及Matlab程序实现

16、数据拟合一元函数拟合多项式拟合非线性函数拟合多元函数拟合(回归分析)MATLAB实现函数的确定2022/9/853算法及Matlab程序实现插值方法一维插值的定义已知n个节点,求任意点处的函数值。分段线性插值多项式插值 样条插值 y=interp1(x0,y0,x,method)二维插值节点为网格节点z=interp2(x0,y0,z0,x,y,method) pp=csape(x0,y0,z0,conds,valconds) 二维插值节点为散点z1=griddata(x,y,z,x1,y1) 2022/9/854算法及Matlab程序实现优化方法优化模型四要素决策变量目标函数(尽量简单、光滑

17、)约束条件(建模的关键)求解方法 (MATLAB,LINDO)2022/9/855算法及Matlab程序实现优化模型分类线性规划模型(目标函数和约束条件都是线性函数的优化问题)非线性规划模型(目标函数或者约束条件是非线性的函数)整数规划(决策变量是整数值得规划问题)多目标规划(具有多个目标函数的规划问题)目标规划(具有不同优先级的目标和偏差的规划问题)动态规划(求解多阶段决策问题的最优化方法) 2022/9/856算法及Matlab程序实现优化模型求解无约束规划fminsearchfminbnd线性规划linprog非线性规划fmincon多目标规划(计算有效解)目标加权、效用函数动态规划(倒

18、向、正向)整数规划(分支定界法、枚举法、LINDO)2022/9/857算法及Matlab程序实现统计方法(回归分析)回归分析对具有相关关系的现象,根据其关系形态,选择一个合适的数学模型,用来近似地表示变量间的平均变化关系的一种统计方法 (一元线性回归、多元线性回归、非线性回归)回归分析在一组数据的基础上研究这样几个问题:建立因变量与自变量之间的回归模型(经验公式)对回归模型的可信度进行检验判断每个自变量对因变量的影响是否显著判断回归模型是否适合这组数据利用回归模型对进行预报或控制b, bint,r,rint,stats=regress(Y,X,alpha) (线性回归)rstool(x,y,

19、model, alpha)(多元二项式回归)beta,r,J=nlinfit(x,y,model, beta0)(非线性回归)2022/9/858算法及Matlab程序实现统计方法(逐步回归分析)逐步回归分析从一个自变量开始,视自变量作用的显著程度,从大到地依次逐个引入回归方程当引入的自变量由于后面变量的引入而变得不显著时,要将其剔除掉 引入一个自变量或从回归方程中剔除一个自变量,为逐步回归的一步对于每一步都要进行值检验,以确保每次引入新的显著性变量前回归方程中只包含对作用显著的变量这个过程反复进行,直至既无不显著的变量从回归方程中剔除,又无显著变量可引入回归方程时为止stepwise(x,y

20、,inmodel,alpha)SPSS,SAS2022/9/859算法及Matlab程序实现统计方法(聚类分析)聚类分析所研究的样本或者变量之间存在程度不同的相似性,要求设法找出一些能够度量它们之间相似程度的统计量作为分类的依据,再利用这些量将样本或者变量进行分类系统聚类分析将n个样本或者n个指标看成n类,一类包括一个样本或者指标,然后将性质最接近的两类合并成为一个新类,依此类推。最终可以按照需要来决定分多少类,每类有多少样本(指标)2022/9/860算法及Matlab程序实现统计方法(系统聚类分析步骤)系统聚类方法步骤:计算n个样本两两之间的距离构成n个类,每类只包含一个样品合并距离最近的

21、两类为一个新类计算新类与当前各类的距离(新类与当前类的距离等于当前类与组合类中包含的类的距离最小值),若类的个数等于1,转5,否则转3画聚类图决定类的个数和类。2022/9/861算法及Matlab程序实现统计方法(判别分析)判别分析在已知研究对象分成若干类型,并已取得各种类型的一批已知样品的观测数据,在此基础上根据某些准则建立判别式,然后对未知类型的样品进行判别分类。距离判别法首先根据已知分类的数据,分别计算各类的重心,计算新个体到每类的距离,确定最短的距离(欧氏距离、马氏距离)Fisher判别法利用已知类别个体的指标构造判别式(同类差别较小、不同类差别较大),按照判别式的值判断新个体的类别

22、Bayes判别法计算新给样品属于各总体的条件概率,比较概率的大小,然后将新样品判归为来自概率最大的总体 2022/9/862算法及Matlab程序实现与模糊数学相关的问题(一)模糊数学研究和处理模糊性现象的数学 (概念与其对立面之间没有一条明确的分界线)与模糊数学相关的问题(一)模糊分类问题已知若干个相互之间不分明的模糊概念,需要判断某个确定事物用哪一个模糊概念来反映更合理准确模糊相似选择 按某种性质对一组事物或对象排序是一类常见的问题,但是用来比较的性质具有边界不分明的模糊性2022/9/863算法及Matlab程序实现与模糊数学相关的问题(二)模糊聚类分析根据研究对象本身的属性构造模糊矩阵

23、,在此基础上根据一定的隶属度来确定其分类关系 模糊层次分析法两两比较指标的确定模糊综合评判综合评判就是对受到多个因素制约的事物或对象作出一个总的评价,如产品质量评定、科技成果鉴定、某种作物种植适应性的评价等,都属于综合评判问题。由于从多方面对事物进行评价难免带有模糊性和主观性,采用模糊数学的方法进行综合评判将使结果尽量客观从而取得更好的实际效果 2022/9/864算法及Matlab程序实现时间序列分析建模时间序列是按时间顺序排列的、随时间变化且相互关联的数据序列通过对预测目标自身时间序列的处理,来研究其变化趋势(长期趋势变动、季节变动、循环变动、不规则变动) 自回归模型一般自回归模型AR(n

24、)系统在时刻t的响应X(t)仅与其以前时刻的响应X(t-1),, X(t-n)有关,而与其以前时刻进入系统的扰动无关 移动平均模型MA(m)系统在时刻t的响应X(t) ,与其以前任何时刻的响应无关,而与其以前时刻进入系统的扰动a(t-1),a(t-m)存在着一定的相关关系 自回归移动平均模型 ARMA(n,m)系统在时刻t的响应X(t),不仅与其前n个时刻的自身值有关,而且还与其前m个时刻进入系统的扰动存在一定的依存关系 2022/9/865算法及Matlab程序实现时间序列建模的基本步骤 (1)数据的预处理:数据的剔取及提取趋势项取n=1,拟合ARMA(2n,2n-1)(即ARMA(2,1)

25、)模型n=n+1,拟合ARMA(2n,2n-1)模型用F准则检验模型的适用性。若检验显著,则转入第2步。若检验不显著,转入第5步。检查远端时刻的系数值的值是否很小,其置信区间是否包含零。若不是,则适用的模型就是ARMA(2n,2n-1) 。若很小,且其置信区间包含零,则拟合ARMA(2n-1,2n-2) 。2022/9/866算法及Matlab程序实现时间序列建模的基本步骤 (2)利用F准则检验模型ARMA(2n,2n-1)和ARMA(2n-1,2n-2) ,若F值不显著,转入第7步;若F值显著,转入第8步。舍弃小的MA参数,拟合m2n-2的模型ARMA(2n-1,m) ,并用F准则进行检验。重复这一过程,直到得出具有最小参数的适用模型为止舍弃小的MA参数,拟合m2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论