—般说来建立数学模型的方法大体上可分为两大类、一类是机理分析方法,一类是测试分析方法.机理分析是根据对现实对象特性的认识、分析其因果关系,找出反映内部机理的规律,建立的模型常有明确的物理或现实意义.
模型准备 首先要了解问题的实际背景,明确建模的目的搜集建模必需的各种信息如现象、数据等,尽量弄清对象的特征,由此初步确定用哪一类模型,总之是做好建模的准备工作.情况明才能方法对,这一步一定不能忽视,碰到问题要虚心向从事实际工作的同志请教,尽量掌握第一手资料.
模型假设 根据对象的特征和建模的目的,对问题进行必要的、合理的简化,用精确的语言做出假设,可以说是建模的关键一步.一般地说,一个实际问题不经过简化假设就很难翻译成数学问题,即使可能,也很难求解.不同的简化假设会得到不同的模型.假设作得不合理或过份简单,会导致模型失败或部分失败,于是应该修改和补充假设;假设作得过分详细,试图把复杂对象的各方面因素都考虑进去,可能使你很难甚至无法继续下一步的工作.通常,作假设的依据,一是出于对问题内在规律的认识,二是来自对数据或现象的分析,也可以是二者的综合.作假设时既要运用与问题相关的物理、化学、生物、经济等方面的知识,又要充分发挥想象力、洞察力和判断力,善于辨别问题的主次,果断地抓住主要因素,舍弃次要因素,尽量将问题线性化、均匀化.经验在这里也常起重要作用.写出假设时,语言要精确,就象做习题时写出已知条件那样.
模型构成 根据所作的假设分析对象的因果关系,利用对象的内在规律和适当的数学工具,构造各个量(常量和变量)之间的等式(或不等式)关系或其他数学结构.这里除需要一些相关学科的专门知识外,还常常需要较广阔的应用数学方面的知识,以开拓思路.当然不能要求对数学学科门门精通,而是要知道这些学科能解决哪一类问题以及大体上怎样解决.相似类比法,即根据不同对象的某些相似性,借用已知领域的数学模型,也是构造模型的一种方法.建模时还应遵循的一个原则是,尽量采用简单的数学工具,因为你建立的模型总是希望能有更多的人了解和使用,而不是只供少数专家欣赏.
模型求解 可以采用解方程、画图形、证明定理、逻辑运算、数值计算等各种传统的和近代的数学方法,特别是计算机技术.
模型分析 对模型解答进行数学上的分析,有时要根据问题的性质分析变量间的依赖关系或稳定状况,有时是根据所得结果给出数学上的预报,有时则可能要给出数学上的最优决策或控制,不论哪种情况还常常需要进行误差分析、模型对数据的稳定性或灵敏性分析等.
模型检验 把数学上分析的结果翻译回到实际问题,并用实际的现象、数据与之比较,检验模型的合理性和适用性.这一步对于建模的成败是非常重要的,要以严肃认真的态度来对待.当然,有些模型如核战争模型就不可能要求接受实际的检验了.模型检验的结果如果不符合或者部分不符合实际,问题通常出在模型假设上,应该修改、补充假设,重新建模.有些模型要经过几次反复,不断完善,直到检验结果获得某种程度上的满意.
模型应用 应用的方式自然取决于问题的性质和建模的目的,这方面的内容不是本书讨论的范围。
应当指出,并不是所有建模过程都要经过这些步骤,有时各步骤之间的界限也不那么分明.建模时不应拘泥于形式上的按部就班,本书的建模实例就采取了灵活的表述方式
第一、模型准备 首先要了解问题的实际背景,明确建模目的,搜集必需的各种信息,尽量弄清对象的特征。
第二、模型假设 根据对象的特征和建模目的,对问题进行必要的、合理的简化,用精确的语言作出假设,是建模至关重要的一步。如果对问题的所有因素一概考虑,无疑是一种有勇气但方法欠佳的行为,所以高超的建模者能充分发挥想象力、洞察力和判断力,善于辨别主次,而且为了使处理方法简单,应尽量使问题线性化、均匀化。
第三、模型构成 根据所作的假设分析对象的因果关系,利用对象的内在规律和适当的数学工具,构造各个量间的等式关系或其它数学结构。这时,我们便会进入一个广阔的应用数学天地,这里在高数、概率老人的膝下,有许多可爱的孩子们,他们是图论、排队论、线性规划、对策论等许多许多,真是泱泱大国,别有洞天。
不过我们应当牢记,建立数学模型是为了让更多的人明了并能加以应用,因此工具愈简单愈有价值。 第四、模型求解 可以采用解方程、画图形、证明定理、逻辑运算、数值运算等各种传统的和近代的数学方法,特别是计算机技术。
一道实际问题的解决往往需要纷繁的计算,许多时候还得将系统运行情况用计算机模拟出来,因此编程和熟悉数学软件包能力便举足轻重。 第五、模型分析 对模型解答进行数学上的分析。
"横看成岭侧成峰,远近高低各不"。能否对模型结果作出细致精当的分析,决定了你的模型能否达到更高的档次。
还要记住,不论那种情况都需进行误差分析,数据稳定性分析。
一、机理分析法 从基本物理定律以及系统的结构数据来推导出模型。
1. 比例分析法--建立变量之间函数关系的最基本最常用的方法。
2. 代数方法--求解离散问题(离散的数据、符号、图形)的主要方 法。
3. 逻辑方法--是数学理论研究的重要方法,对社会学和经济学等领域的实际问题,在决策,对策等学科中得到广泛应用。
4. 常微分方程--解决两个变量之间的变化规律,关键是建立"瞬时变化率"的表达式。
5. 偏微分方程--解决因变量与两个以上自变量之间的变化规律。
二、数据分析法 从大量的观测数据利用统计方法建立数学模型。
1. 回归分析法--用于对函数f(x)的一组观测值(xi, fi)i=1,2… n,确定函数的表达式,由于处理的是静态的独立数据,故称为数理统计方法。
2. 时序分析法--处理的是动态的相关数据,又称为过程统计方法。
三、仿真和其他方法
1. 计算机仿真(模拟)--实质上是统计估计方法,等效于抽样试验
① 离散系统仿真--有一组状态变量。
② 连续系统仿真--有解析表达式或系统结构图。
2. 因子试验法--在系统上作局部试验,再根据试验结果进行不断分析修改,求得所需的模型结构。
3. 人工现实法--基于对系统过去行为的了解和对未来希望达到的目标,并考虑到系统有关因素的可能变化,人为地组成一个系统。
1. 预测模块:灰色预测、时间序列预测、神经网络预测、曲线拟合(线性回归);
2. 归类判别:欧氏距离判别、fisher判别等 ;
3. 图论:最短路径求法 ;
4. 最优化:列方程组 用lindo 或 lingo软件解 ;
5. 其他方法:层次分析法 马尔可夫链 主成分析法 等 。
建模常用算法,仅供参考:
1. 蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决 问题的算法,同时间=可以通过模拟可以来检验自己模型的正确性,是比赛时必 用的方法) 。
2. 数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数 据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab 作为工具) 。
3. 线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多 数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通 常使用Lindo、Lingo 软件实现) 。
4. 图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算 法,涉及到图论的问题可以用这些方法解决,需要认真准备) 。
5. 动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算 法设计中比较常用的方法,很多场合可以用到竞赛中) 。
6. 最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些 问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助, 但是算法的实现比较困难,需慎重使用) 。
7. 网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很 多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种 暴力方案,最好使用一些高级语言作为编程工具) 。
8. 一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计 算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替 积分等思想是非常重要的) 。
9. 数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分 析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编 写库函数进行调用) 。
10. 图象处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文 中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问 题,通常使用Matlab 进行处理)。
1、蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算
法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法)
2、数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要
处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具)
3、线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多数问题
属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、
Lingo软件实现)
4、图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉
及到图论的问题可以用这些方法解决,需要认真准备)
5、动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计
中比较常用的方法,很多场合可以用到竞赛中)
6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题是
用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实
现比较困难,需慎重使用)
7、网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛
题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好
使用一些高级语言作为编程工具)
8、一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计算机只
认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的)
9、数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分析中常
用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用)
10、图象处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文中也应该
应用数学去解决各类实际问题时,建立数学模型是十分关键的一步,同时也是十分困难的一步。建立教学模型的过程,是把错综复杂的实际问题简化、抽象为合理的数学结构的过程。要通过调查、收集数据资料,观察和研究实际对象的固有特征和内在规律,抓住问题的主要矛盾,建立起反映实际问题的数量关系,然后利用数学的理论和方法去分析和解决问题。这就需要深厚扎实的数学基础,敏锐的洞察力和想象力,对实际问题的浓厚兴趣和广博的知识面。数学建模是联系数学与实际问题的桥梁,是数学在各个领械广泛应用的媒介,是数学科学技术转化的主要途径,数学建模在科学技术发展中的重要作用越来越受到数学界和工程界的普遍重视,它已成为现代科技工作者必备的重要能力之。
所谓提炼数学模型,就是运用科学抽象法,把复杂的研究对象转化为数学问题,经合理简化后,建立起揭示研究对象定量的规律性的数学关系式(或方程式)。
这既是数学方法中最关键的一步,也是最困难的一步。提炼数学模型,一般采用以下六个步骤完成: 第一步:根据研究对象的特点,确定研究对象属哪类自然事物或自然现象,从而确定使用何种数学方法与建立何种数学模型。
即首先确定对象与应该使用的数学模型的类别归属问题,是属于“必然”类,还是“随机”类;是“突变”类,还是“模糊”类。 第二步:确定几个基本量和基本的科学概念,用以反映研究对象的状态。
这需要根据已有的科学理论或假说及实验信息资料的分析确定。例如在力学系统的研究中,首先确定的摹本物理量是质主(m)、速度(v)、加速度(α)、时间(t)、位矢(r)等。
必须注意确定的基本量不能过多,否则未知数过多,难以简化成可能数学模型,因此必须诜择出实质性、关键性物理量才行。 第三步:抓住主要矛盾进行科学抽象。
现实研究对象是复杂的,多种因素混在一起,因此,必须变复杂的研究对象为简单和理想化的研究对象,做到这一点相当困难,关键是分清主次。如何分清主次只能具体问题具体分析,但也有两条基本原则:一是所建数学模型一定是可能的,至少可给出近似解;二是近似解的误差不能超过实际问题所允许的误差范围。
第四步:对简化后的基本量进行标定,给出它们的科学内涵。即标明哪些是常量,哪些是已知量,哪些是待求量,哪些是矢量,哪些是标量,这些量的物理含义是什么? 第五步:按数学模型求出结果。
第六步:验证数学模型。验证时可根据情况对模型进行修正,使其符合程度更高,当然这以求原模型与实际情况基本相符为原则。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
蜀ICP备2020033479号-4 Copyright © 2016 学习鸟. 页面生成时间:2.724秒