微分方程建模(动态模型)在许多实际问题中,当直接导出变量之间的函数关系较为困难,但导出包含未知函数的导数或微分的关系式较为容易时,可用建立微分方程模型的方法来研究该问题,本节将通过一些最简单的实例来说明微分方程建模的一般方法。在连续变量问题的研究中,微分方程是十分常用的数学工具之一。动态模型•描述对象特征随时间(空间)的演变过程.•分析对象特征的变化规律.•预报对象特征的未来性态.•研究控制对象特征的手段.•根据函数及其变化率之间的关系确定函数.微分方程建模•根据建模目的和问题分析作出简化假设.•按照内在规律或用类比法建立微分方程.微分方程建模(动态模型)随时间(空间)变化的数量关系微分方程:含有导数(微分)的方程例:人口模型Malthus模型0)0()()(xxtrxtx解rtxtx)()(分离变量法积分dtrdtxx1lnCrtx解结果rtceex1rtCe微分方程研究定量定性解有初等函数表达式数值解:计算机稳定性·········模型一:简单模型例1:室温:20C物体:100C20min60C问:?min30C关键温度变化规律冷却定律:物体的冷却速度与物体和环境的温差成正比模型物体温度()Tt冷却速度dTdt冷却定律(20)dTkTdt初值(0)100T求解冷却系数()20ktTtCe(0)10080TC1(20)60ln220Tkln220()20tTtCe于是()3060Ttt例2:链条无摩擦下滑1米5米问:需多少时间链条才能全部划过桌子关键位移变化规律运动方程:牛顿第二定律Fma模型建立坐标系1米5米O令链条终点位置:()xtt时刻受力F重力(1)gx线密度质量加速度6x则60xgxg模型解60(0)1(0)0xgxgxx661266111122ggttggttxxxCeCeee答案:当x=5时,6ln(635)tg为了保持自然资料的合理开发与利用,人类必须保持并控制生态平衡,甚至必须控制人类自身的增长。本节将建立几个简单的单种群增长模型,以简略分析一下这方面的问题。种群的数量本应取离散值,但由于种群数量一般较大,为建立微分方程模型,可将种群数量看作连续变量,由此引起的误差将是十分微小的。§3.2Malthus模型与Logistic模型模型1马尔萨斯(Malthus)模型马尔萨斯在分析人口出生与死亡情况的资料后发现,人口净增长率r基本上是一常数,(r=b-d,b为出生率,d为死亡率),既:1dNrNdtdNrNdt或(3.5)0()0()rttNtNe(3.6)(3.1)的解为:其中N0=N(t0)为初始时刻t0时的种群数。马尔萨斯模型的一个显著特点:种群数量翻一番所需的时间是固定的。令种群数量翻一番所需的时间为T,则有:002rTNNeln2Tr故模型检验比较历年的人口统计资料,可发现人口增长的实际情况与马尔萨斯模型的预报结果基本相符,例如,1961年世界人口数为30.6(即3.06×109),人口增长率约为2%,人口数大约每35年增加一倍。检查1700年至1961的260年人口实际数量,发现两者几乎完全一致,且按马氏模型计算,人口数量每34.6年增加一倍,两者也几乎相同。19502000205021002150220000.511.522.533.5x1011t/年N/人马尔萨斯模型人口预测模型预测假如人口数真能保持每34.6年增加一倍,那么人口数将以几何级数的方式增长。例如,到2510年,人口达2×1014个,即使海洋全部变成陆地,每人也只有9.3平方英尺的活动范围,而到2670年,人口达36×1015个,只好一个人站在另一人的肩上排成二层了。故马尔萨斯模型是不完善的。几何级数的增长Malthus模型实际上只有在群体总数不太大时才合理,到总数增大时,生物群体的各成员之间由于有限的生存空间,有限的自然资源及食物等原因,就可能发生生存竞争等现象。所以Malthus模型假设的人口净增长率不可能始终保持常数,它应当与人口数量有关。模型2Logistic模型人口净增长率应当与人口数量有关,即:r=r(N)从而有:()dNrNNdt(3.7)r(N)是未知函数,但根据实际背景,它无法用拟合方法来求。为了得出一个有实际意义的模型,我们不妨采用一下工程师原则。工程师们在建立实际问题的数学模型时,总是采用尽可能简单的方法。r(N)最简单的形式是常数,此时得到的就是马尔萨斯模型。对马尔萨斯模型的最简单的改进就是引进一次项(竞争项)对马尔萨斯模型引入一次项(竞争项),令r(N)=r-aN此时得到微分方程:()dNraNNdt(1)dNNrNdtK或(3.8)(3.8)被称为Logistic模型或生物总数增长的统计筹算律,是由荷兰数学生物学家弗赫斯特(Verhulst)首先提出的。一次项系数是负的,因为当种群数量很大时,会对自身增大产生抑制性,故一次项又被称为竞争项。(3.8)可改写成:()dNkKNNdt(3.9)(3.9)式还有另一解释,由于空间和资源都是有限的,不可能供养无限增长的种群个体,当种群数量过多时,由于人均资源占有率的下降及环境恶化、疾病增多等原因,出生率将降低而死亡率却会提高。设环境能供养的种群数量的上界为K(近似地将K看成常数),N表示当前的种群数量,K-N恰为环境还能供养的种群数量,(3.9)指出,种群增长率与两者的乘积成正比,正好符合统计规律,得到了实验结果的支持,这就是(3.9)也被称为统计筹算律的原因。图3-5对(3.9)分离变量:11dNkKdtNKN两边积分并整理得:1kKtKNCe令N(0)=N0,求得:00KNCN故(3.9)的满足初始条件N(0)=N0的解为:000()()kKtNKNtNKNe(3.10)易见:N(0)=N0,lim()tNtKN(t)的图形请看图3.5模型检验用Logistic模型来描述种群增长的规律效果如何呢?1945年克朗皮克(Crombic)做了一个人工饲养小谷虫的实验,数学生物学家高斯(E·F·Gauss)也做了一个原生物草履虫实验,实验结果都和Logistic曲线十分吻合。大量实验资料表明用Logistic模型来描述种群的增长,效果还是相当不错的。例如,高斯把5只草履虫放进一个盛有0.5cm3营养液的小试管,他发现,开始时草履虫以每天230.9%的速率增长,此后增长速度不断减慢,到第五天达到最大量375个,实验数据与r=2.309,a=0.006157,N(0)=5的Logistic曲线:几乎完全吻合,见图3.6。2.309375()174tNte图3-6Malthus模型和Logistic模型的总结Malthus模型和Logistic模型均为对微分方程(3.7)所作的模拟近似方程。前一模型假设了种群增长率r为一常数,(r被称为该种群的内禀增长率)。后一模型则假设环境只能供养一定数量的种群,从而引入了一个竞争项。用模拟近似方法建立微分方程来研究实际问题时必须对求得的解进行检验,看其是否与实际情况相符或基本相符。相符性越好则模拟得越好,否则就得找出不相符的主要原因,对模型进行修改。Malthus模型与Logistic模型虽然都是为了研究种群数量的增长情况而建立的,但它们也可用来研究其他实际问题,只要这些实际问题的数学模型有相同的微分方程即可。例6新产品的推广经济学家和社会学家一直很关心新产品的推销速度问题。怎样建立一个数学模型来描述它,并由此析出一些有用的结果以指导生产呢?以下是第二次世界大战后日本家电业界建立的电饭包销售模型。设需求量有一个上界,并记此上界为K,记t时刻已销售出的电饭包数量为x(t),则尚未使用的人数大致为K-x(t),于是由统计筹算律:()dxxKxdt记比例系数为k,则x(t)满足:()dxkxKxdt此方程即Logistic模型,解为:()1KktKxtCe还有两个奇解:x=0和x=K对x(t)求一阶、两阶导数:22'()(1)KktKktcKkextCe323(1)()(1)KktKktKktCKkeCextCex’(t)0,即x(t)单调增加。令x’’(t0)=0,有2)(0Ktx当tt0时,x’(t)单调增加,当tt0时,x’(t)单调减小。在销出量小于最大需求量的一半时,销售速度是不断增大的,销出量达到最大需求量的一半时,该产品最为畅销,接着销售速度将开始下降。所以初期应采取小批量生产并加以广告宣传;从有20%用户到有80%用户这段时期,应该大批量生产;后期则应适时转产,这样做可以取得较高的经济效果。模型二:传染病模型问题提出方法:机理分析若:假设病人x(t),病人日接触率→感染则:传染病模型ttxtxttx)()()(0)0()()('xxtrxtxx(t)=x0ert显然:……关键:模型假设基本假设:封闭地区中总人数N,时间t(天)模型(一)(SI)假设人群:易感染者(健康人):s(t)←比例已感染者(病人):i(t)病人日接触率→感染建立模型病人数:每病人每天使健康者变为病人数:每天共有个被新感染者即:病人数的增加率为:传染病模型Ni(t)s(t)s(t)Ni(t)Ni(t)NsidtdNi而s,t:s+t=1∴模型0)0()1(iiiidtdiLogistic模型teiti)11(11)(0总人数N、时间t比例:健康s(t)、病人i(t)病人日接触率模型分析的作用传染病模型此时t→∞,i→1模型改进tm1/0i1/2tmti001/2idtdi)11ln(01imtitdid~i(t)~ttdidmdtdii=1/2时,达到最大模型(二)(SIS)假设:(3)病人每天被治愈的占病人总数的比例(易感染者)(→日治愈率)于是有1/为平均传染期于是模型变为N(di/dt)=Nsi-Ni即:传染病模型0)0()1(iiiiidtdi解:01)(0)0()1()(iieitit模型分析令=/=(1/)接触数:一个传染期间内每病人有效接触的平均人数传染病模型1,01,11)(i1ii00i0t11≤1ii00t:1阈值1101)(0)0()1()(iieitit模型(三)(SIR)假设:(3)免疫移出者,比例r(t)日接触数,日治愈率传染期接触数=/建立模型s(t)+i(t)+r(t)=1移出率模型传染病模型00)0(,)0(ssiisidtdsisidtdiNidtdrN模型分析相s,t←原相t定义域(s,i)∈DD={(s,t)|s≥0,i≥0,s+t≤1}于是消去dt:传染病模型0011iisdsdiss解为000ln1)(sssisi相轨线←tt→(s,i)is0D11P1P21.s0,i0→i(∞)=0证:ds/dt≤0,s(t)≥0→s(∞)dr/dt≥0,r(t)≤1→r(∞)若i(∞)=0t1有dr/dt/2→r(∞)=∞矛盾传染病模型is0D11P1P200)0(,)0(ssiisidtdsisidtdiidtdr2.未被感染的健康s(∞)=s∞的解:相轨线与s轴交点横坐标即:i(∞)=0时→s∞3.s01/,P1(s0,i0)4.s0≤1/,P2(s0,i0)阈值1/→提高:卫生水平模型验证:印度孟买模型应用: