数学实验之十三-混沌中国科学技术大学数学系陈发来实验内容
函数迭代
二次函数的迭代
FeigenBaum图
混沌的特性
其它函数的迭代一、函数迭代
给定一函数 以及初始点,定义数列称为函数 的迭代序列。
满足 的点 称为 的 不动点,记之为 。如果所有附近的点在迭代过程中都趋向于某一不动点,则该不动点称为 吸引点 。如果所有附近的
)(xf 0x
,.,,,1,0),(1 kxfx kk
}{ kx )(xf
uuf?)( u f
uu?
点都远离它,则它是 排斥点 。
例如,0 与 1 是 的不动点。 0 是吸引点,1是排斥点。
如果则点集 形成一个 k 循环 。
称为 k 周期点 。 k称为 周期 。
2)( xxf?
13221 )(...,,)(,)( uufuufuuf k
kuuu,...,,21
1u
类似地,周期点也可以分吸引点与排斥点。如果点 最终归宿于某个循环中
,则称它为 预周期点 。如 1 是 的预周期点。
迭代序列 的收敛与发散性质不仅与函数 有关,而且与初值的选择有关。
例如,对于迭代
12?x
u
}{ kx
)(xf
121 kk xx
当初值 时,迭代序列收敛,否则发散 。
10x
二、二次函数的迭代
对二次函数 做迭代,
迭代的几何直观图
)1()( xxaxf
,1,0),1(1 kxxax kkk
40 a
0x
)( 0xf
)( 1xf
xy?
练习 1 对几组不同的参数值 (如
1.4)以及不同的初值,观察迭代是否收敛。
练习 2 取参数,用不同的初值做迭代。你能找到一个吸引的不动点吗?一个排斥的不动点吗?哪些初值收敛到吸引的不动点?哪些初值使序列发散?取不动的参数 回答同样的问题。
a,5.0?a
0x
8.0?a
5.2,2,6.1,1?a
练习 3 找出一个参数 使它对应的迭代具有 2周期点。这种性质依赖于初值吗?
练习 4 对任意的整数,你能找到一个值使得它对应的迭代具有 周期点吗?
对哪些 值能给出 周期点?在每种情况下,结果是否依赖于初值?(对和 的值进行验证)
a
k
ka
kk
6.34.3 a 46.3 a
练习 5 如果某个 值能给出周期点,它是否一定是吸引的周期点?你能否找到排斥的周期点?
练习 6 根据前面的练习,试着从理论上分析:如何求不动点?对哪些 值对应吸引的不动点?哪些 值对应排斥的不动点?初值对结果有什么影响?对周期点做类似的分析。
不动点的计算从得到及
)1( xxax
0?x aax /)1(
吸引的不动点与排斥的不动点定理 设 是 的不动点,如果在附近有,则 是 的吸引的不动点;否则,是 的排斥的不动点。
由于故当 0<a<1时,0为吸引点,(a-1)/a为排斥点。当 1<a<3,0 为排斥点,(a-1)/
a为吸引点 。
x )(xf x
1|)('|?xf x )(xf
x )(xf
aaafaf 2)/)1((',)0('
2 周期点得
))1(1)(1())(( 2 xaxxxaxffx
,/)1(,0 21 aaxx
3,2/)321( 24,3 aaaaax
三,Feigenbaum图
将区间 ( 0,4]以某个步长 (如 )
离散化。对每个离散的 值做迭代。忽略前 50个迭代值,而把点显示在坐标平面上,最后形成的图形称为 Feigenbaum图。
a? 04.0a
),(,),,(),,( 1005251 xaxaxa?
a
练习 7 观察 Feigenbaum图。
( 1)它的左部有一条曲线,这表示什么意义?
( 2) 从某一点 开始,这条曲线分成两支,这说明了迭代的什么性质?迭代的点是如何运动的?
( 3)再在下一个分支点,曲线分成几支?这说明迭代的什么性质?
( 4)上述分支过程是否一直进行下去?
1a
2a
是否存在极限分支点?
( 5)在极限分支点之后,Feigenbaum图是否显得很混乱?
练习 8 在 Feigenbaum图的右部,有一个有三条线穿过的空白地带,它是一个周期为 3 的窗口。你能找到其它窗口吗?它们的周期是什么?窗口里有什么图案?这些窗口与周期轨道有什么关系?
a
四、混沌的特性
对初值的敏感性练习 9 任取两个初值使它们之间的差的绝对值不超过 0.1,在迭代他们是否逐渐分开?如果两个初值的差的绝对值不超过
0.01,0.001,0.0001 结果如何? 由此得出迭代对初值是否敏感?
,1,0),1(41 kxxx kkk
非随机性仍然考虑迭代练习 10 从不同的初值 出发,统计迭代点列中分别落与区间( 0,1/2)及
(1/2,1)中的点的个数,你得到的结果是随机的吗?进一步,将区间分成任意等份,统计迭代点列落于每个子区间的点的个数?结果如何?
,1,0),1(41 kxxx kkk
)1,0(0?x
五、其它函数的迭代
锯齿函数练习 11 锯齿函数的迭代对初值是否敏感?
找出锯齿函数的周期点。



12/112
2/102)(
xx
xxxS
帐篷函数练习 12 帐篷函数的迭代对初值是否敏感? 找出帐篷函数的周期点。



12/1)1(2
2/102)(
xx
xxxT
其它函数的迭代对以下函数的迭代行为做探讨,并与函数 的迭代行为相比较。
axxf
xaxf
xxf
axaxf



4
2
)(.4
)s i n ()(.3
2)(.2
)()(.1
)1()( xxaxf
六、听一听混沌练习 14 选取初值 (如 ),由迭代产生迭代序列,根据 的大小确定相应音调的高低,编程演奏该迭代序列。
0x 1.00?x
,1,0),1(41 kxxx kkk
,1,0,?kx k kx