1第二章差分方程建模在现实世界里有些对象涉及的变量本身就是离散的,自然可以用离散模型描述其数量关系,例如商人安全过河问题.也有些对象虽然涉及的变量(如时间)是连续的,但是从建模的目的考虑,把连续变量离散化更为合适.至于为了模型求解时利用计算机的需要,把连续模型离散化,则不在本章讨论之列.一般地说,确定性离散模型包括的范围很广,例如用规划论和网络流等方法建立的模型,但是在这一章里我们将它的范围限制为用差分方程方法建立的模型.这样,本章所用的主要数学工具是差分方程和线性代数方法.在第3和第4章中我们看到,动态连续模型用微分方程方法建立.与此相应,当时间变量离散化后,可以用差分方程建立动态离散模型.有些实际问题既可建立连续型,又可建立离散模型,究竟采用哪种模型应视建模目的而定.2.1市场经济中的蛛网模型在自由贸易的集市上你注意过这样的现象吗:一个时期由于猪肉的上市量远大于需求,销售不畅导致价格下降,农民觉得养猪赔钱,于是转而经营其它农副业.过一段时间后猪肉上市量大减,供不应求导致价格上涨.原来的饲养户看到有利可图,又重操旧业.这样下一个时期会重现供大于求、价格下降的局面.在没有外界干预的情况下,这种现象将如此循环下去.在完全自由竞争的市场经济中上述现象通常是不可避免的.因为商品的价格是由消费者的需求关系决定的,商品数量越多价格越低.而下一时期商品的数量由生产者的供应关系决定了市场经济中商品的价格和数量必然是振荡的.在现实世界里这样的振荡会出现不同的形式,有的振幅渐小趋向平稳,有的则振幅越来越大导致经济崩溃.当然政府会对后者采取干预手段.这一节我们先用图形方法建立所谓“蛛网模型”,对上述现象进行分析,讨论市场经济趋于稳定的条件,再用差分方程建模,对结果进行解释,并作适当推广.[31]蛛网模型记第k时段商品的数量为kx,价格为ky,2,1k.这里我们把时间离散化为时段,1个时段相当于商品的1个生产周期,如蔬菜、水果可以是1年,肉类则是1个饲养周期.同一时段商品的价格ky取决于数量kx,设)(kkxfy(1.1)它反映消费者对这种商品的需求关系,称需求函数.因为商品的数量越多价格越低,所以在图2-1中用一条下降曲线f表示它,f为需求曲线.下一时段商品的数量1kx由上一时段价格ky决定,设)(1kkyhx,或)(1kkxgy(1.2)它反映生产者的供应关系,称供应函数.因为价格越高生产量才越大,所以在图中供应曲线g是一条上升曲线.图中两条曲线相交于),(000yxP点.0P是平衡点,因为一旦某个k有0xxk,则由2(1.1)、(1.2)可知,,,01010yyxxyykkk,即商品数量和价格永远保持在),(000yxP点.但是实际生活中的种种干扰使得yx,不可能停止在0p点,不妨设1x偏离0x(如图2-1).我们分析随着k的增加kkyx,的变化.O数量1x给定后,价格1y由曲线f上的1P点决定,下一时段的数量2x由曲线g上的2P点决定,2y又由f上的3P点决定,这样得到一系列的点),(),,(122111yxPyxP,),,(),,(234223yxPyxP,在图2-1上这些点将按箭头所示方向趋向),(000yxP,表明0P是稳定平衡点,意味着市场经济(商品的数量和价格)将趋向稳定.但是如果需求函数和供应函数由图2-2的曲线所示,则类似的分析发现,市场经济将按照4321,,,PPPP的规律变化而远离0P,即0P是不稳定平衡点,市场经济趋向不稳定.图2-1和图2-2中折线4321PPPP形似蛛网,于是这种用需求曲线和供应曲线分析市场经济稳定性的图示法在经济学中称蛛网模型,实际上,需求曲线f和供应曲线g的具体形式通常是根据各个时段商品的数量和价格的一系列统计资料,,,,2211yxyx得到的,一般地说,f取决于消费者对这种商品的需要程度和他们的消费水平,g则与生产者的生产能力经营水平等因素有关.一旦需求曲线和供应曲线被确定下来,如何判断它们的交点—平衡点0P的稳定性呢?从图2-1和图2-2不难看出,当市场经济偏离0P点不大(即01xx较小)时,0P点的稳定性取决于曲线f和g在0P点的斜率.记f在0P斜率的绝对值(因为它是下降的)为fK,g在0P点的斜率为gK,则当gfKK(1.3)时0P点是稳定的(图2-1),而当gfKK(1.4)3时0P点是不稳定的(图2-2).由此可见,需求曲线越平,供应曲线越陡,越有利于经济稳定.在对这种现象作出解释之前,我们先看看模型的差分方程形式.差分方程形式利用差分方程可以将蛛网模型的结果用公式表示出来.在0P点附近取函数f和h的线性近似,设(1.1)、(1.2)式分别近似为0),(00xxyykk(1.5)0),(001yyxxkk(1.6)消去ky,(1.5)、(1.6)可合并为,2,1,)1(01kxxxkk(1.7)(1.7)是一阶线性差分方程对k递推不难得到011])(1[)(xxxkkk(1.8)由此可得,当k时0xxk,即0P点稳定的条件是1或1(1.9)而k时kx,即0P点不稳定的条件是1或1(1.10)注意到(1.5)、(1.6)式中、的定义,有1,gfKK,所以条件(1.9)、(1.10)与蛛网模型中的(1.3)、(1.4)式是一致的.模型解释首先考察参数、的含义.需求函数f的斜率(取绝对值)表示商品供应量减少1个单位时价格的上涨幅度;供应函数h的斜率表示价格上涨1个单位时(下一时期)商品供应的增加量.所以的数值反映消费者对商品需求的敏感程度,如果这种商品是生活必需品,消费者处于持币待购状态,商品数量稍缺,人们立即蜂拥抢购,那么会比较大;反之,若这种商品非必需品,消费者购物心理稳定,或者消费水平低下,则较小,的数值反映生产经营者对商品价格的敏感程度,如果他们目光短浅,热衷于追逐一时的高利润,价格稍有上涨立即大量增加生产,那么会比较大;反之,若他们素质较高,有长远的计划,则较小.根据、的意义很容易对市场经济稳定与否的条件(1.9)、(1.10)作出解释.当供函数g,即固定时,越小,需要曲线越平,表明消费者对商品需求的敏感程度越小(使(1.9)式成立),越利于经济稳定.当需要求函数f,即固定时,越小,供应曲线越4陡,表明生产者对价格的敏感程度越小(使(9)式成立),越利于经济稳定.反之,当、较大,表明消费者对商品的需求和生产者商品的价格都很敏感,则会导致经济不稳定.基于上述分析我们还可以看到,当市场经济趋向不稳定时政府有两种干预办法.一种办法是使尽量小,极端情况是令0,即需求曲线水平,这时不论供应曲线如何(即不管多大),总是稳定的.这相当于政府控制物价,无论商品数量多少,命令价格不得改变.另一种办法是使尽量小,极端情况是令0,即供应曲线竖直,于是不论需求曲线如何(不管多大),也总是稳定的.这相当于控制市场上的商品数量,当供过于求时,政府收购过剩部分,维持商品上市量不变.模型的推广如果生产者的管理水平更高一些,他们在决定商品生产数量1kx时,不是仅根据前一时期的价格ky,而是根据前两个时期的价格ky和1ky.为简单起见不妨设根据二者的平均值)(211kkyy,于是供应函数(1.2)式表为)2(11kkkyygx(1.11)在0P点附近取线性近似时(1.6)式表为)2(20101yyyxxkkk(1.12)含义不变.又设需函数仍由(1.1)、(1.5)式表示.则由(1.5)、(1.12)式得到,2,1,)1(2012kxxxxkkk(1.13)(1.13)是二阶性差分方程.为寻求k时0xxk即0P点稳定的条件,不必解方程(1.13),只须利判断稳定的条件—方程特征根均在单位圆内.因为方程(1.13)的特征方程是022容易算出其特征根为48)(22,1(1.14)当8时显然有448)(22从而22,2在单位圆外.下面设8,可以算出22(1.15)由12,1得到0P稳定的条件为2(1.16)与原有模型中0P点稳定的条件(1.9)式相比,保持经济稳定的参数、的范围放大了(、的含义未变).可以想到,这是生产经营者的生产管理水平提高,对市场经济稳定起着有5利影响的必然结果.2.2差分形式的阻滞增长模型前面几章中我们曾不止一次地用微分方程)1()(Nxrxtx(2.1)描述受到环境约束的所谓“阻滞增长”的规律,即Logisfic规律,这种约束随着对象本身数量x的增加面增加.人口或其它生物在有限次源环境下的增长,传染病在封闭地区的传播,耐用消费品在有限市场上的销售等等现象,都可以合理地、简化地用这个模型描述.现实对象有时离散化的时间研究起来比较方便,例如有些生物每年在固定的时间繁殖,我们用繁殖作为时段来研究其增长规律就比用连续时间方便,于是需要阻滞增长的离散模型.将方程(2.1)中的微分用差分形式表示,就有,2,1,0),1(1kNyryyykkkk(2.2)这里用ky而不用kx是为了下面记号的方便.r和N的含义同前,仍分别是固有增长率和最大容量.(2.2)式可进一步写作])1(1[)1(1kkkyNrryry(2.3)令1rb(2.4)kkyNrrx)1((2.5)则(2.3)式可化简为,2,1,0),1(1kxbxxkkk(2.6)(2.6)式是一阶非线性差分方程.在实际应用中没有必要找出方程(2.6)的一般解,因为给定初值0x后利用计算机可以方便地由(2.6)递推地算出,2,1,kxk.事实上,在应用差分形式的阻滞增长模型(2.2)或(2.6)时,人们最关心的通常是k时ky或kx的收敛情况,即方程平衡点的稳定性问题.本节主要讨论这个问题.我们知道,对于微分方程(2.1),Nx是稳定平衡点,0x是不定稳定平衡点,即不论)0(r和)0(N为何值,都有当k时Nyk呢?下面将会看到,回答这个问题并不简单,而且将引出一个十分有趣的现象.平衡点及稳定性代替(2.2)我们讨论方程(2.6)的平衡点及其稳定性.因为0r,由(2.4)知1b.为了求(2.6)的平衡点,解代数方程)1()(xbxxfx(2.7)容易得到(2.6)的非平衡点为)bx11,(2.8)利用(2.4)、(2.5)式可以验证,x的稳定性,计算bxbxf2)21()((2.9)根据x稳定的条件1)(xf,立即得到31b(2.10)由此可知,仅当(2.10)6成立时x才是稳定平衡点,由(2.4)式可知它相当于仅当2r时Ny才是方程(2.2)的稳定平衡点.这与不论r多大Nx都是微分方程(2.1)的稳定平衡点是不同的.在条件(2.10)下kx收剑于x的状况可以通过方程(2.6)的图解法清楚地表示出来.以x为横坐标作)1()(xbxxfy和xy的图形,曲线)(xfy和直线xy交点的横坐标为平衡点x.对于初值0x由方程(2.6)求,,21xx的过程表示为图上带箭头的折线,当21b时21x,xxk的过程则会出现如图8-1蛛网型那样的衰减振(图8-3(2)).当3b时,虽然方程(2.6)仍可形式地求解,但x不稳定,其图解法如图8-4所示出现如图8-2蛛网模型那样发散的振荡(kxx).事情到此并未完结,作一些计算就会发现,当b比3大得不太多时,虽然序列}{kx不再剑于x,但是出现了两个子序列的收剑点1x和2x当k时,,21212xxxxkk.如果说原来的xxk是单周期收敛(如生物繁殖的周期),那么这里就可经称为2倍周期收敛了.倍周期收敛如果一般地把方程(6)表示为)(1kkxfx(