数学建模介绍
1.1 数学模型及其分类
数学建模作为用数学方法解决问题的第一步,它与数学本身有着同样悠久的历史。一个羊倌看着他的羊进入羊圈,为了确信他的羊没有丢失,他在每只羊进入羊圈时,则在旁边放一颗小石子,如果每天羊全部入圈而他那堆小石子刚好全部放完,则表示他的羊和以前一样多。究竟羊倌数的是石子还是羊,那是毫无区别的,因为羊的数目同石子的数目彼此相等。这实际上就使石子与羊“联系”起来,建立了一个使石子与羊一一对应的数学模型。(1)什么是数学模型
人们在认识研究现实世界里的客观对象时,常常不是直接面对那个对象的原形,有些是不方便,有些甚至是不可能直接面对原形,因此,常常设计、构造它的各种各样的模型。如各式各样的玩具模型、展览厅里的三峡大坝模型、化学上的分子结构模型等。这些模型都是人们为了一定目的,对客观事物的某一部分进行简化、抽象、提炼出来的原形替代物,集中反映了原形中人们需要的那一部分特征,因而有利于人们对客观对象的认识。数学模型也是反映客观对象特征的,只不过它刻画的是事物在数量方面的特征或数学结构及其变化规律。
数学模型是人们为了认识客观对象在数量方面的特征、定量地分析对象的内在规律、用数学的语言和符号去近似地刻画要研究的那一部分现象时,所得到的一个数学表述。建立数学模型的过程称为数学建模。
(2) 数学模型的重要作用
进入20世纪以来,数学以空前的广度和深度向一切领域渗透,作为数学的应用,数学建模也越来越受到人们的重视。在一般工程技术领域,数学模型仍是工程技术人员定量研究有关工程技术问题的重要工具;而随着数学与其他学科领域诸如经济、人口、生态、地质等所谓非物理领域的渗透,一些交叉学科如计量经济学、人口控制论、数学生态学、数学地质学等应运而生;计算机的发展给数学及作为数学应用的数学建模带来了前所未有的机遇和挑战。计算机改变了人类的生活方式、思考方式和研究方式,极大地提高了人们的计算能力、搜索和分析海量数据和信息的能力。今天数学和其他科学、工程和技术之间的联系,比以前更加紧密。很多科学前沿遇到的主要瓶颈是数学建模问题。计算建模正成为许多学科的通行工具,而计算机只能读懂数学模型,因此“数学化”已成为研究中一个重要的步骤。
数学模型的分类
了解数学模型的分类对于理解别人的数学模型或是给自己建立的数学模型命名都是有用的。数学模型可以按照不同的方式分类,常见有以下的几种。
1.按照模型的应用领域分。如:人口模型、环境模型、交通模型、水资源模型、生态模型、城镇规划模型等。
2.按照建立模型所使用的主要数学方法分。如初等模型、微分方程模型、差分方程模型、统计回归模型、数学规划模型、马氏链模型等。
3.按是否考虑随机因素,可分为确定性模型和随机性模型。
4.按应用离散方法或连续方法可分为离散模型和连续模型。
5.按照人们对事物发展过程的了解程度分为白箱模型、灰箱模型和黑箱模型。
此外,根据模型的基本关系分为线性模型与非线性模型,根据是否考虑模型的变化可分为静态模型和动态模型等。
1.2 一个数学建模例子
数学建模面临的实际问题多种多样,建模的目的不同,分析的方法不同,采用的数学工
具不同,所得模型的类型也就不同。数学建模常常要使数学知识与其他学科专业知识结合起来,因此,不同应用背景的数学模型也将是千差万别的。但从方法论的意义上看,除了不同数学模型的差异性之外,数学建模过程还是有一些基本的“套路”。本节通过一个数学建模例子,重点说明如何作出合理的、简化的假设,用数学语言确切地表述实际问题,以及建模的结果如何与所研究的客观对象联系起来等。
设河边点O 的正对岸为点A ,河宽OA=h(图1.1),水流速度为a ,有一鸭子从点A游向点O,设鸭子(在静水中)的游速为()b b a >,且鸭子游动的方向始终朝着点O。(1)设h=10m ,1/,2/a m s b m s ==,用数值解法求渡河所需时间、任意时刻鸭子的位置及游动曲线。(2)建立任意时刻鸭子的位置和鸭子游动的数学模型,求解析解。 1.2.1 模型的假设
为了使问题确定和简化,实际上已经作了如下假设: (1) 假设河宽固定,设为h ,且两岸为平行直线; (2) 鸭子游速为b 及水流速度a 均为常数; (3) 鸭子游动的方向始终指向O。
1.2.2 模型的建立与求解
取O为坐标原点,河岸朝顺水方向为x 轴,y 轴指向对岸,如图1.1所示。
图1.1 鸭子游动迹线示意图
设时刻t 鸭子位于点(,)P x y , 设起点坐标(,)(0,)x y h =,终点坐标(0,0),设θ为鸭子
速度方向与x 轴正向间的夹角
,(cos ,sin ),)bop
b b b x y op
θθ==-=--
,
(,0)a a =
,v a b =+ 于是鸭子游动的迹线满足:
cos sin dx
b a a dt
dy b dt θθ⎧=+=⎪⎪
⎨
⎪==⎪⎩
(0)0,(0)x y h ==
模型的数值解
实际上,从上述方程不能求得()x t ,()y t 的解析式,但在参数确定的情况下,我们可
以通过数值解得到任意时刻鸭子的位置。设((1),(2))T x x x =,(1),(2)x x x y ==,编写如下的函数M 文件:
function dx=duhe(t,x) %建立名为duhe 的函数M 文件 a=1;b=2;
s=sqrt(x(1)^2+x(2)^2);
dx=[a-b*x(1)/s;-b*x(2)/s]; %以向量形式表示方程组
在编写运行程序时,须设定时间t 的起点终点及步长,可大致估计静水中的渡河时间,并作试探。
ts=0:0.5:7;
x0=[0,10]; % x,y 的初始值 [t,x]=ode45(@duhe,ts,x0); % 调用ode45计算
[t,x] % 输出t,x(t),y(t)
plot(t,x),grid, % 按照数值输出作x(t),y(t)的图形 gtext('x(t)'),gtext('y(t)'),pause % 利用鼠标确定字符串位置 plot(x(:,1),x(:,2)),grid, % 作y(t)的图形 gtext('x'),gtext('y')
得到的数值结果()x t ,()y t 为鸭子的位置列入表1-1。()x t ,()y t 及()y x 的图形见图1.2(a)和图1.2(b)。
表1-1 10,1,2h a b ===时的数值解
图1.2 (a)
()x t ,()y t 的图形 (b) ()y x 的图形
模型的解析解
为了得到更精确的运动轨迹,还必须对模型作进一步分析以得到其解析解。鸭子运动速度
(,)(
,)(x y dx dy v v v a dt dt ===
故有:
x
y
v dx dy v = 由此得到微分方程
,()0x
y v dx x x h dy v y ===
求解此齐次微分方程得到鸭子游动的迹线方程为:
11[()()],
0.2a a
b b h y y x y h h h
-+=-≤≤
1.2.3 对解以及问题的进一步讨论
(1)关于解可以作进一步分析:如果b a <,由上述迹线方程当0y →,得到x →∞。因此,这种情况下鸭子是不可能到达对岸的,这与鸭子运动的力学分析结果是一致的。
(2)很自然地,我们还可以探讨如下问题:如果鸭子上岸的地点不超过河对岸下游一定位置(比如与正对岸距离为l ),鸭子的速度大小和方向不变,问鸭子以怎样的游动方向才能以最少的时间到达上岸地点?鸭子能够按要求到达对岸速度应满足什么条件?如果水流速度变化,进一步可研究2003年全国数学建模竞赛D 题:抢渡长江。
1.2.4 建模过程总结
这是一个微分方程应用题,整个解题过程已经包含了建立数学模型的基本内容,即 ● 根据问题背景和建模目的做出必要的简化假使——鸭子速度和水速均为常数; ● 用字母和符号表示有关的量(如鸭子速度、水速、时间及位置坐标等); ● 利用相应的物理(或其他)规律——牛顿力学有关规律,列出微分方程; ● 求解微分方程得到鸭子游动轨迹曲线解析解,此处我们还采用了数值解法得到了任意时刻鸭子的位置(坐标); ● 解的讨论及推广应用等。
1.3 数学建模的基本方法和步骤
1.3.1 数学建模的基本方法
数学建模方法大体上分为机理分析和测试分析两种。机理分析方法是根据对所研究客观对象特性的认识,出反映内部机理的数量规律,建立的模型常有明确的物理意义或其他实际意义。上节例子用的就是机理分析方法。
在所研究对象内部机理不清楚时,常采用测试分析方法,通过对系统输入、输出数据的测量和统计分析,按照一定准则出与数据拟合最好的模型。测试分析有一套完整的数学方法,最小二乘法、回归分析等就属于这类方法。
面对一个实际问题用哪一种方法建模,主要处决于人们对研究对象的了解程度和建模目的。有时要将两种方法结合起来,用机理分析建立模型的结构,用测试分析确定模型的参数。
1.3.2 数学建模的一般步骤
关于回归分析建模,确定型与随机型时间序列预测建模步骤和过程在本书相应章节中介绍,在此我们主要征对运用机理分析方法建模的一般过程介绍。建立数学模型通常经过如下步骤:
(1)问题的分析数学建模的第一步就应该对问题所给的条件和数据进行分析,明确要解决的问题。通过对问题的分析,明确问题中所给出的信息与哪些学科有关,判断可能用到的知识和方法,最好能确定解决问题的重点和关键所在。
(2)模型的假设根据问题的复杂程度和建立与求解模型所使用的条件和方法,对所研究的问题进行必要的、合理的假设。合理假设在数学建模中除了起着简化问题的作用之外,还常常对求解方法和使用范围起着限制作用。模型假设的合理性是评价一个模型优劣的重要条件之一。提出假设既要起到简化问题
突出主要因素的作用,又不能使问题过于简单和特殊,有时候需要在建模过程中对已做的假设进行不断地补充和修改。
(3)模型的建立建立数学模型除了要有较为广阔的应用数学方面的知识外,还需要有一些相关学科的专门知识。在建立模型之前,首先要明确建模的目的,要善于发挥想象力,注意使用类比法,分析对象与熟悉的其他对象的共性,借用已有的模型,并在此基础上加以修改和推广以便适用于你所研究的问题。根据所作假设和有关数据建立起问题中相关变量或因素之间的数学规律,可以是数学表达式、图形和表格,或者是一个算法等。
(4)模型的求解对所建立的数学模型在求解过程中常常需要使用相关数学分支的求解方法。有些甚至没有现成的方法可用,还须对问题进行简化假设或对问题采取从特殊到一般的处理方法,包括数值方法等。当然熟练掌握一两个数学工具软件(如MA TLAB等)的使用,对于求解是非常重要的,也将带来极大方便。
(5)模型的分析、检验和应用对求解结果进行数学上的分析,如结果的误差分析,模型对数据的灵敏性分析等。还需要把所得解及其分析结果翻译回到实际问题,包括解是否合理适用,数学模型的解在实际问题中的意义是什么。模型的解对我们有何指导作用,模型如何应用等。如果经过检验模型还须改进则上述建模过程再来一次循环。
建模方法
这里归纳的是我们建立数学模型的一些常规步骤,实际上,有时各步之间界限并不分明,比如一个算法有时建模与求解是紧密联系在一起的,建模时也要灵活处理各步之间的关系。现把数学建模的全过程表示为如下框图
1.4 数学建模论文写作
数学建模的目的是解决实际问题的,要使别人了解你的研究成果,我们的模型及其结论要以论文或报告的形式呈现出来。由于我们的论文不一定是给数学专业人士看的,因此,这种论文与专业论文既有相同之处,也应该有所区别。
从结构上看,一篇学术论文应包含8个必要的组成部分,即:题名、作者信息、摘要、关键词、引言、正文、结论和参考文献。正式发表的论文常常也要求有对应的英文题名、摘
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论