1、数学实验之三,收敛与混沌(迭代),Mathematical Experements,引例,图示迭代数列,实 验 内 容,实 验 目 的,返 回,蛛 网 模 型,实 验 目 的,1 理解迭代的基本概念; 2 掌握图示迭代数列; 3 熟悉MATLAB软件编程环境;掌握MATLAB编程语句; 4 了解二元函数迭代方法及图形特征;,返 回,例:污水处理厂每天可将处理池的污水(中含污物)浓度降低一个固定比例q,问多长时间才能使污水浓度降低一半?,引例,设第k天的污水浓度为ck,则第k+1天的污水浓度为 ck+1=(1-q)ck, k=0,1,2,cn=(1-q)nc0,将cn=c0/2代入可解出n=-l
2、g2/lg(1-q), n天后污水浓度降低一半。,濒危物种的自然演变和人工孵化,引例,Florida沙丘鹤属于濒危物种,据报道,生态学家估计它在较好的自然环境下,年平均增长率仅为1.94%,而在中等及较差的自然环境下,年平均增长率则分别为-3.24%和-3.82%,即它将逐年减少。如果在自然保护区内开始有100只鹤,建立描述其数量变化规律的模型。人工孵化是拯救这个濒危物种的措施之一,如果每年人工孵化5只鹤放入该保护区,那么在中等自然环境下沙丘鹤的数量将如何变化?,建立模型,引例,设第k年沙丘鹤的数量为xk,自然环境下的年平均增长率为r,且a=1+r,则第k+1年鹤的数量为:,在人工孵化条件下,
3、设每年孵化的数量为b,则第k+1年鹤的数量为:,xk+1=axk, a=1+r, k=0,1,2,xk+1=axk+b, a=1+r, k=0,1,2,例如,迭代的基本概念,对任意初值x00,由f1(x)产生的数列是收敛于1的。,除0,1以外,对任意初值x0,由f2(x)产生的数列是发散的。,设函数f(x),任意给定一个数x0,定义,可产生数列xn,如何判断该数列收敛?,迭代的基本概念,定义:对函数f(x),如果存在点u,使得f(u) = u,则称点u为函数f(x)的不动点。,注意,x=0, 1都是f1(x)的不动点,在x=1附近的任何初值x0,由f1(x)产生的数列都收敛于1,而在x=0附近
4、的任何初值x0,由f1(x)产生的数列都是发散的,前者称为吸引的,后者称为排斥的。,市场经济中的蛛网模型,问 题,供大于求,现 象,商品数量与价格的振荡在什么条件下趋向稳定,当不稳定时政府能采取什么干预手段使之稳定,描述商品数量与价格的变化规律,数量与价格在振荡,蛛 网 模 型,xk第k时段商品数量;yk第k时段商品价格,消费者的需求关系,生产者的供应关系,f与g的交点P0(x0,y0) 平衡点,思考: P0(x0,y0)是否是稳定平衡点?,设x1偏离x0,x1,P0是稳定平衡点,P0是不稳定平衡点,曲线斜率,蛛 网 模 型,在P0点附近用直线近似曲线,P0稳定,P0不稳定,方 程 模 型,方
5、程模型与蛛网模型是一致的, 商品数量减少1单位, 价格上涨幅度, 价格上涨1单位, (下时段)供应的增量,考察 , 的含义, 消费者对需求的敏感程度, 生产者对价格的敏感程度,小, 有利于经济稳定, 小, 有利于经济稳定,结果解释,xk第k时段商品数量;yk第k时段商品价格,结果解释,模型的推广,生产者根据当前时段和前一时段的价格决定下一时段的产量。,生产者管理水平提高,设供应函数为,需求函数不变,二阶线性常系数差分方程,试分析平衡点稳定条件,即k, xkx0的条件,图示迭代数列,以下讨论二次函数:,其中a为参数,考虑a 的取值范围0, 4,称该函数为Logistic函数。,可以用图形的方式来
6、反映迭代的过程。迭代格式:,三种图形显示方式:线性联结图、蛛网图、费根鲍姆图 1)线性联结图 用点(n, xn)描述迭代点,并用直线连接这些点所形成的折线图(横坐标表示n,纵坐标表示 xn)。,不同的参数a,产生的序列xn可能收敛可能发散。观察a取什么值时收敛(或发散)?,图示迭代数列,1. 线性连接图,2-周期,4-周期,a=0.5,2.5,3.1,3.5; x1=;x2=;x3=;x4=; x1(1)=0.5;x2(1)=0.5;x3(1)=0.5;x4(1)=0.5; for i=2:20x1(i)=a(1)*x1(i-1)*(1-x1(i-1);x2(i)=a(2)*x2(i-1)*(
7、1-x2(i-1);x3(i)=a(3)*x3(i-1)*(1-x3(i-1);x4(i)=a(4)*x4(i-1)*(1-x4(i-1); end n=1:20; subplot(2,2,1),plot(n,x1),title(a=0.5,x0=0.5) subplot(2,2,2),plot(n,x2),title(a=2.5,x0=0.5) subplot(2,2,3),plot(n,x3),title(a=3.1,x0=0.5) subplot(2,2,4),plot(n,x4),title(a=3.5,x0=0.5),MATLAB 程序,died4.m,在直角坐标系中,首先画出直线y
8、= x和曲线y= f(x),其中f(x)为迭代曲线。, 从直线y= x上点An(xn,xn)到曲线y= f(x)上点Bn(xn,xn+1);(垂直) 从Bn(xn,xn+1)到An(xn+1,xn+1); (水平) 重复。,a=2.9, x0=0.2,2. 蛛网图,a=2.9; ezplot(2.9*x*(1-x),-0.2,1.2),% 画二次函数曲线 hold on ezplot(x,-0.2,1.2),% 画直线 x1=;x1(1)=0.2; % 初始点 for i=2:50x1(i)=a*x1(i-1)*(1-x1(i-1);plot(x1(i-1),x1(i-1),x1(i-1),x
9、1(i);plot(x1(i-1),x1(i),x1(i),x1(i); end % 画折线,MATLAB 程序,发散情形,收敛情形,2. 蛛网图,3. 费根鲍姆图,周期点:如果对某个x0M有fn(x0)=x0,但对于小于n的自然数k, fk(x0)x0,则称x0是f的一个n-周期点。当x0是f的n-周期点时,有fn+k(x0)=fk(x0)。此时迭代序列为x0, x1, x2, xn-1, x0, x1,xn-1, x0, ,只有n个不同的元素。注意,若x0是f的n-周期点,则x0, f(x0),fn-1(x0)均是f的n-周期点。,3. 费根鲍姆图,图3.5 费根鲍姆图: f(x) = a
10、x(1-x), a = 2.9,3.2, 3.5,3.56, 3.7, 3.828前1000项,a,xn,结论: 具有周期性!,倍2-周期:2,4,8,16,32, 倍3-周期:3,6,12,24,48,96,,分岔与混沌,倍周期分裂行为就是 所谓的分岔。随着参数a的取值的增加,分岔频率逐渐加快。对参数a连续取值观察序列收敛性的变化?能否确定各个周期变化的临界状态?,该图形特点:观察当参数a连续变化时,函数f(x)=ax(1-x)的收敛与发散情况。,3. 费根鲍姆图,xn,编写一个对含参变量函数 f(x,a) 进行迭代可调用程序。 function root=iter(x,a) for i=2
11、:100x(i)=a*x(i-1)*(1-x(i-1); end root=x; % 产生100个迭代序列组成的数组,MATLAB 程序,iter.m,clf; x=; x(1)=0.2; hold on; for a=2:0.01:4root=iter(x,a); plot(a.*ones(size(root(51:100),root(51:100),.) end xlabel(parameter a); ylabel(迭代序列(51-100));,died9.m,MATLAB 程序,能否将图形放大?,died9.m,MATLAB 程序,3.449,died9.m,MATLAB 程序,die
12、d9.m,MATLAB 程序,周期点分岔的临界值表,当ak = 3.569945672时,以上的倍-2周期分裂行为(分岔)终止,迭代进入没有周期性规律的模式(混沌),并且,迭代数列非常敏感地依赖于初始值x0的选取,这种不规则性与不可预测性,就是所谓的混沌(Chaos)。混沌与分岔相伴发生,分岔是混沌出现的早期现象。例如a = 3.7的迭代行为就是如此。 通过实验还可以发现,当a = 3.7时,迭代对初值的高度敏感性:无论两个初值如何靠近,经过迭代其结果(两个数列)将是各行其道,这体现了混沌的不可预测性。,混沌,迭代格式: xn+1=4xn(1-xn), n = 0,1,1、取初始点x0=0.2
13、, 记产生的序列为xn;,2、取初始点x0=0.201, 记产生的序列为yn;,3、作线性连接图。即 plot(n, xn-yn);,敏感性分析,敏感性分析,x0=0.2,x0=0.201,a=4,另外,吸引子的倍增现象不只是对二次函数才有,别的函数也有。例如,,敏感性分析,1、迭代以下函数,分析其收敛性。任选一个完成。,使用线性连接图、蛛网图或分枝与混沌图 对参数a进行讨论与观察,会得到什么结论?,实 验内容,返 回,结 束,2、生物种群的数量问题种群的数量(为方便起见以下指雌性)因繁殖而增加,因自然死亡和人工捕获而减少。记xk(t)为第t年初k岁(指满k-1岁,未满k岁,下同)的种群数量,
14、bk为k岁种群的繁殖率(1年内每个个体繁殖的数量),dk为k岁种群的死亡率(1年内死亡数量占总量的比例),hk为k岁种群的捕获量(1年内的捕获量)。今设某种群最高年龄为5岁(不妨认为在年初将5岁个体全部捕获),b1=b2=b5=0,b3=2,b4=4,d1=d2=0.3,d3=d4=0.2,h1=400,h2=200,h3=150,h4=100。,实 验内容,A. 建立xk(t+1)与xk(t)的关系(k=1,2,5, t=0,1,),如。为简单起见,繁殖量都按年初的种群数量xk(t)计算,不考虑死亡率。B. 用向量 表示t年初的种群数量,用bk和dk定义适当的矩阵L,用hk定义适当的向量h,将上述关系表成 的形式。C. 设t=0种群各年龄的数量均为1000,求t=1种群各年龄的数量。又问设定的捕获量能持续几年。D. 种群各年龄的数量等于多少,种群数量x(t)才能不随时间t改变。记D的结果为向量x*, 给x* 以小的扰动作为x(0),观察随着t的增加x(t)是否趋于x*, 分析这个现象的原因。,实 验内容,