下载了tomcat运行静态页面,并且成功运行了,实验页面也能进入,但java编译的jsp文件都不能打开

您所在的位置: &
Logistic映射
Logistic映射
电子工业出版社
《数字图像处理:技术详解与Visual C++实践》本书全面系统地讲述了数字图像处理领域中的15 大核心话题,包括色彩空间、图像编码、频域变换、图像文件格式、几何变换、灰度变换、图像的增强处理、边缘检测、轮廓跟踪、形态学处理、图像分割、图像的加密与隐藏、小波变换、偏微分方程以及图像去噪等。本节为大家介绍Logistic映射。
12.2& 几种典型的混沌系统举例
混沌映射是研究混沌系统的工具,通过对混沌映射的研究可以抽象出许多相应的动力学系统的性质和特点。在加密系统的设计过程中,混沌映射对于生成数字化离散混沌序列也是必不可少的。下面介绍几种常用的混沌映射。
12.2.1& Logistic映射
Logistic映射即虫口模型,它是目前研究非常广泛的一种混沌映射。Logistic映射的意义可解释为:在某一范围内单一种类的昆虫繁殖时,其子代数量远远大于其亲代数量,这样可以认为,在子代出生后,其亲代的数量可忽略不计。设xn是某种昆虫第n年的个体数目,这个数目与年份有关,n只取整数值,第n+1年的数目为xn+1。
一维Logistic映射的数学表达式如下:
其中,0&x&1,&为控制参数,0 & &&4。当0 &&&1时,该系统有一个定常解0(即初值取0时会使生成的序列全部为0),而且无论初值取为何值,通过多次迭代,序列会最终收敛于0。
当1&&&3时,定常解为0和1 1/&,多次迭代后序列会收敛于这两个值中的一个。当3&&&4时,系统由倍周期通向混沌。特别地,当3.5699456&&&&4时,系统进入混沌状态,迭代生成的值处于一种伪随机分布的状态,而且&取值越接近4,混沌性越强。当& = 4时,Logistic映射的Lyapunov指数为ln2 = 0.6931。如图12-1所示是Logistic映射分岔图。
使用Logistic映射时应注意如下几点。
① 即使Logistic映射处于混沌区,即3.5699456&&&&4,也会出现所谓的倒分支现象。当&=4时Logistic映射在[0, 1]区间上出现混沌,称为单片混沌。当&逐渐减小时,开始仍为单片混沌,但当&减小到一个值&1 = 3.678573&时,会由单片混沌变成2片混沌,即迭代值分布在2个区域,每一次迭代数值从其中一个跳到另一个。当&值再减小到&2 = 3.592572&时,2片混沌又分为4片,&值继续减小,将产生8, 16, 32等倒分支,倒分支一直延续到&& = 3.5699456。尽管取值仍是混沌的,但还是会影响混沌序列的性质,故应将&值取在[&1, 4],以改善序列的随机分布性能。
② 当两个初值相差很小时,多次迭代后确实会差之千里,但这种差别只有在多次迭代后才会明显(如几十次)。故在使用Logistic混沌系统时,可以先让系统先迭代一定次数之后,再使用生成的值,这样可以更好地掩盖原始的情况。
③ 一个好的伪随机序列应该有比较平均的分布,也就是说,每个数出现的概率应该是相等的,但Logistic映射迭代序列的分布并不是均匀的,而是呈现两头大中间小的情形,即分布在0、1附近的概率较大。另外,除了&=4 的迭代值域为[0, 1]外, 其他&值的迭代值域都小于这个范围。计算表明,取定&值的迭代值上界为&/4,下界为(1 &/4)&&&/4。为了保持迭代序列在整个[0, 1]区间的分布特性,在必要的情况下可以通过如下线性变换使每个参数&下的迭代值域变换到[0, 1]区间,这样便消除了在参数&作用下混沌方程迭代输出值域的差异性。
下面给出这个公式的一个证明。由上面描述可知,当&值取定时,迭代值上界为&/4,下界为(1 &/4)&&&/4,而这里则希望能够把迭代区域均匀地放大到[0, 1]区间上。这相当于在二维平面内构造一条线段,如图12-2所示。这条斜线段的一个端点是((1 &/4)&&&/4, 0),另外一个端点是(&/4, 1),那么输入任何在[(1 &/4)&&&/4, &/4]区间内的值都可以被线性地映射到区间[0, 1]上。又知平面直线的两点式公式为:(x x0)/(x1 x0)=(y y0)/(y1 y0),则将点((1 &/4)&&&/4, 0)和点(&/4, 1)代入公式,可得:
则该公式得证。
④ 利用Logistic映射进行迭代时,初值不要取0、1、1/&、1 1/&这几个值,因为它们是不动点。
此外,通过变量替换,Logistic映射还可以变为以下形式:
其中, 1&x&1,&为控制参数,0&&&2。当&取大于等于1.4011小于等于 2 时,系统进入混沌状态。
&【责任编辑: TEL:(010)】&&&&&&
关于&&的更多文章
《数字图像处理:技术详解与Visual C++实践(含CD光盘1张)》全面
本书描述了黑客用默默无闻的行动为数字世界照亮了一条道路的故事。
本书面向对于视觉艺术及技巧并不熟稔的软件开发人员,
本书详细讲解了Google Glass 开发中最重要的Mirror AP
Big Nerd Ranch 是美国一家专业的移动开发技术培训机
在这本书中,C 语言专家 Peter Prinz和Tony Crawford为你提供大量的编程参考信息。全书叙述清晰,语句简洁,分析深刻。本书主题
51CTO旗下网站来自集智百科
Logistic映射是研究、、等复杂系统行为的一个经典模型。Logistic映射又叫Logistic迭代,其实就是一个时间离散的动力系统,即按照如下方程进行反复迭代:
其中,t为迭代时间步,对于任意的t,,为一可调参数,为了保证映射得到的始终位于[0,1]内,则。当变化不同的参数的时候,该方程会展现出不同的动力学极限行为(即当t趋于无穷大,x(t)的变化情况),包括:稳定点(即最终x(t)始终为同一个数值)、周期(x(t)会在2个或者多个数值之间跳跃,以及混沌:x(t)的终态不会重复,而会等概率地取遍某区间)。
该模型可以用来模拟生物种群的生长行为,所以Logistic映射也叫“虫口模型”。其中x(t)可以解释为在t时刻种群占最大可能种群规模的比例。我们将原方程变形为:
其中左边可以解释为种群的生长率(即一个单位周期内,种群数量的变化)。右侧第一项可以解释为虫种群的出生,第二项则为种群的消亡。其中消亡项和有关,也就是说种群数量越多,消亡得越快,这体现为该种群内部由于资源有限而引起的竞争。
首先,让我们用一系列数值试验的方法来探讨这个迭代方程。如果使用Mathematica,我们只要用两句话就能实现这个迭代:
μ=0.9;x0=0.1
NestList[μ # (1 - #) &;, x0, 100]
我们分下面几种情况来进行讨论:
上图中左图表示的是当,右图表示的是当的时候方程的迭代结果。每张图都有两条曲线(蓝色和紫色),分别表示从初始值和开始得到的演化轨迹。每张图内的小图为纵坐标取对数之后的图形,可以看出系统趋向于0时候的速度,显然当的时候,速度更快。
我们观察到,无论系统从何初值开始,也无论取什么值,系统最终都会渐进地趋近于0。因此,当时,系统的极限行为趋于0这个固定值。
左图展示的是,右图表示的是的时候方程的迭代结果,我们看到,两种情况下,方程的迭代结果仍然收敛于固定值,分别是0.18和0.63。也就是说,这个稳定值可以随着发生变化。
事实上,只要μ&3,系统都会收敛到一个不动点,而这个不动点的数值可以通过求解下列方程而得到:
得到解为:
其中,对应的是μ&1时候的不动点,对应的是μ&1时候的不动点。
所谓的迭代的不动点,也就是说:一旦出现某一个T使得,则对任意的t&T都会有:。这就是上述两种情况。方程会收敛到不动点,并不会再产生新的x(t)值。
这个时候,方程的迭代会出现周期行为。随着的增大,周期的长度也会相应地增加。如下图所示两种情况,左侧的周期为2,右侧的周期为4。
我们看到,当为3.2的时候,图形呈现锯齿状,表明x(t)在两个值之间:0.5和0.8上下徘徊。虽然从不同的初始值开始(蓝线和紫线),系统演化的轨迹并不一样,但是它们的终值却始终是0.5和0.8。
右图展示了当的时候,系统在4个值上下反复跳动即0.87--&0.4--&0.82--&0.5。蓝色的轨迹和紫色的轨迹在初始略有不同,但是最终收敛到了一起。如果进一步增加值,系统还会呈现出更多的周期,包括8周期、16周期……
事实上,从μ&3.54以后,系统震荡的周期就变得越来越长,直到大概3.6的时候,周期长度趋向于无穷大,此时,系统开始了混沌状态。我们看到,随着系统的演化,x(t)的值会一直在0.3到0.9之间徘徊,没有固定的周期,而且行为很随机。不同的初始状态演化的轨迹也不重合。我们可以统计不同时刻的x(t)值在区间[0.3,0.9]之上的统计分布,如下所示:
图中所示为一次模拟试验运行了20000个周期,x(t)在这不同时刻的值在[0,1]区间上的累计分布图。图形中的平台部分表示取值概率基本为0。也就是说x(t)的取值基本集中在0.3~0.6和0.8~0.9这两个区间里。而往右上按照直线倾斜的部分表示x(t)在该区间近似呈现均匀分布。由此可见,这个时候迭代系统表现出随机性,然而整个迭代方程都是确定性的,因此,我们说产生了确定性的混沌。
当持续增大的时候,迭代运行的轨道就会在周期类型和混沌类型之间来回切换。直到,系统处于完全混沌的状态,最终的长期行为会在[0,1]区间上均匀分布。
为了概括上述各种数值模拟试验的结果,我们用下面的相图来表示不同值对应的极限行为。
图1 分岔图
图中显示的每一个参数所对应的迭代的极限行为。在相同的参数下,我们通过从不同的初始值(共有1000个)开始迭代足够多的次数(T=2000次),记录下这些数据点对应的x(T)值。为了让显示效果更好看,我们对处于相同区域的数据点进行了归并,从而可以用某一点灰度的大小来表示该区域数据点的多少。最后的Mathematica代码如下所示:
interval = 0.001;
results = Reverse[Transpose[Table[
logisticValues =
Table[Nest[a # (1 - #) &, RandomReal[], 2000], {1000}];
intervals = Table[i, {i, 0, 1 - interval, interval}];
result = BinCounts[logisticValues, {0, 1, interval}]/1000;
Log[result + 0.001]
, {a, 2.9, 4, 0.001}]]];
gradraft =
ArrayPlot[70 + 10 results, FrameLabel -& {"x(T)", "\[Mu]"},
FrameTicks -& {Table[{i, N[(i - 1)/(Length[results] - 1)]}, {i,
0.1*(Length[results] - 1) + 1,
0.9 (Length[results] - 1) + 1, (Length[results] - 1)/4}],
N[2.9 + (i - 1)*(4 - 2.9)/(Length[results[[1]]] - 1),
1]}, {i, (3 - 2.9) (Length[results[[1]]] - 1)/(4 - 2.9) + 1,
Length[results[[1]]], (Length[results[[1]]] - 1)/5}]}]
其中1000为初始值的个数,2000为迭代的时间步。interval为区域的划分尺度。
观察图形,我们发现,随着逐渐增大,系统迭代的周期会逐渐增多,从1个变2个,2个变4个,……。我们将这些周期分岔点所对应的参数值记为。我们会发现,这些点之间的间距,即会变得越来越小。那么,这些点是如何确定的呢?
事实上,迭代方程决定了系统的一切行为。因此,它也必然决定了这些分岔点所对的位置。我们知道,如果迭代的极限点只有一个,那么,我们事实上可以通过求解下述方程得到这个极限点:
同样的道理,当迭代方程的极限行为出现两个周期点的时候,我们不妨设这两个点分别为,则从开始一步迭代应该能得到,而从开始迭代又得到,周而复始,因此,我们可以列出方程:
其中,我们定义。如果将代入第二个方程,那么上述方程组相当于求解:
显然,这是一个一元四次方程,我们可以求解该方程得到四个解:
其中第3个是和第4个是不动点。我们知道,如果x*是迭代方程的不动点,那么,x*一定也是迭代方程的2周期点、4周期点、任意的周期点。所以,后两个解并非我们要求的二周期点。而第1和第2个解才是真正的二分周期点。我们可以验证:。
为了让这2个解有意义,必须使得根号中的式子大于0,也就是,于是可以推得:
因为始终在范围[0,4]之内,因此,只要就会存在二分周期点。并且,我们可以画出这两个解随而变的图形:
其中,下面蓝色曲线为,上面的为。与上一小节的系统极限行为随变化图相比,该图显然夸大了二分周期点的存在范围。看来,我们不能仅仅根据满足迭代关系这一个条件来确定二分周期点发生的参数区间。
仔细分析会发现,如果系统的极限行为要产生二分周期点,除了需要满足迭代关系之外,还需要满足稳定性条件。也就是说从周期点或者邻近的点出发,系统经过几步迭代仍然能回归到这两个周期点之一,而不能跑掉。于是,这就给参数μ设置了更加苛刻的条件。
下面,我们来对该迭代方程在二分周期点附近做稳定性分析。首先,我们知道如果x*是二分周期点,那么必然有:
我们对x*做微扰,即把x*加上小量再代入迭代方程,得到的新点应该仍然在x*点附近,因此:
我们将右侧在x*附近做泰勒展开,并求一级近似。得到:
于是,代入迭代方程:
因为,所以:
因此,要让小扰动不会对系统后续的演化轨道造成太大的偏离,就必须让新的随着迭代越来越小,也就是让
将已经求得的二分周期点代入上式,进行化简、去除不合理的参数范围,得到需要满足如下不等式:
也就是说,在这个参数范围内,迭代方程存在着两个稳定的二周期极限点。对照图1,我们实际上已经求得了二分周期的启始和终止位置。
接下来,我们可以利用同样的方法求解稳定的4周期点,只需要求解的稳定不动点,由此给出参数的范围。一般地,对于周期点,我们只需要求解如下方程:
并要求此不动点是稳定的,即:
就可以相应地求出参数的范围,即。
这个Logistic映射的分岔图具有明显的自相似性:
图2:分岔图的自相似性
我们看到,在两个分岔点μn与μn+1之间的区域,图形是自相似的两个“小山头”。为了刻画这种自相似性,我们可以引入两个比例数值,它们分别是费根鲍姆第一、第二常数。
我们看到,倍分周期点所对应的参数值序列彼此之间的间隔会变得越来越小,而且似乎呈现出按照指数衰减的趋势。我们不妨通过如下定义:
来刻画这个区间长度逐渐变小的速度。下面是相应的数值计算:
分岔参数 ()
我们看到,会越来越趋近一个常数:4.6694,我们把这个常数计作,并命名为(第一常数),用来纪念他的发现者,美国物理学家,它的精确值可以写作:
除此之外,在这个简单的Logistic映射中,费根鲍姆还发现了第二个普适常数可以用来刻画分岔图的自相似性。
如图2中,我们定义第p个周期点第q个分岔的高度为lp,q,其中横坐标的选取是迭代映射在第p个周期分岔中满足超稳定不动点条件的特殊的参数μ值,该数值为满足下列方程的解:
其中,, 是周期迭代的不动点,即方程的解。例如,在Logistic映射中,如果p=1,则:。由这些代入不动点方程,就可以求出相应的高度。
费根鲍姆发现,沿着任意一个分岔的分支行走,任意两个相邻分支的高度之比,例如图2中的的极限为常数α。这个常数称为费根鲍姆第二常数,近似值为。
更有趣的是,费根鲍姆常数不仅仅对于Logistic映射方程成立,它对一类映射方程:都成立,并且取同样的值。其中,a为常数,g(x)为[0,1]区间上的单峰函数。例如,对于迭代方程:
也可以计算得到相同的费根鲍姆常数:
分岔参数 (an)
又例如函数,我们可以计算得到:
分岔参数 (an)
由此,可见费根鲍姆常数具有很强的普适性。
那么,为什么会有这些普适的常数?费根鲍姆又是如何求出这些常数的精确值的呢?
我们观察到,Logistic迭代的分岔图产生了自相似的现象,即从2p周期到2p+1周期的小山峰彼此相似。这种自相似性可以用费根鲍姆常数δ和α给与刻画。但是,我们如何获得这两个常数的精确解?又如何得知对于不同方程的迭代,都会得到同样的费根鲍姆常数呢?这就需要用到了。我们知道可以根据系统所具备的自相似性出发,而写出重正化方程,从而给出相变点的精确位置以及临界指数。这种方法在,中得到了成功的应用。在Logistic迭代中也存在着自相似现象,因此,也可以利用重正化的思路。
重正化方法涉及到用多个不同的尺度来观察系统,从而抓住尺度变换过程中不变的东西。那么,在Logistic映射过程中,什么是尺度呢?什么又是尺度不变的本质?我们知道,对于一维的迭代系统:
时间 t 相当于空间,该映射可以得到一系列不同时刻的点x(1),x(2),....。假如我们进行尺度的扩大,忽略掉一些信息,即不是以1为间隔进行采样,而是以2为间隔进行,就会得到:x(1),x(3),x(5),....。因此这个粗粒化的序列相当于按照如下方程进行迭代而成:
所以,我们知道对Logistic迭代进行扩缩,实际上就是在对迭代进行归并,从而将迭代的法则变换成。而我们知道,迭代法则f(x)实际上制约了动力系统的全部性质。所以,当我们说系统在不同的分岔点具有自相似性质的时候,实际上就是在考察迭代法则f(x)在尺度变换下,即是否具有某种不变的形式。如果迭代法则f(x)具有了尺度变化下的不变性,那么根据前面的讨论,它的一切性质(包括分岔的长度和高度等)就会具有自相似性。因此,迭代法则f(x)就像中的,起到了主导的作用。
为了更好地了解迭代法则f(x)在尺度变换下的自相似性质,让我们把不同时间尺度下的f(x)图像画出来进行直观地比较。首先,我们可以画出f(x)当的时候,在的时候的函数图像(其中为满足相应第p重迭代函数的超稳定周期条件:下对应的参数值)。函数图如下:
为什么一定在这种“超稳定”的参数下观察函数的自相似呢?这是因为,在分岔图2中,不同小山峰之间彼此相似,而每个倍分周期的超稳定参数点刚好位于小山峰的“中心”位置。所以,该点附近的迭代法则的相似性就直接对应了不同小山峰之间的相似性。在上图中我们可以看出,右图中的绿色区域刚好和左图全体相似,就好像把左图上下颠倒、左右颠倒,再缩小一定比例α(一个固定的常数,后面可以求出),就得到了右图。
同样的道理,让我们再来观察与之间的相似性,如下图上两张图所示。
对于与,我们画出了当μ在相应的超稳定周期参数的时候的函数图像。我们观察到,右上图中的蓝色和红色区域刚好与左上图中的蓝色和红色区域相似。它们也是上下颠倒,再进行缩放变换、左右颠倒。我们选择右上图中的蓝、红色区域进行放大得到右下图,同样将左上方图的染色区域放大得到左下图。这样,可以更方便我们的比较。另外,我们将坐标系原点移到了中心位置(即最大值所对应的位置(0.5,0.5))。
我们可以把这种图形变化用数学来表示。为了让图3中右下子图和左下子图彼此相似,我们需要对右下子图进行水平、竖直翻转、缩放(以(0.5,0.5)为轴)才能与左下图重合。也就是:
其中箭头的意思表示对应关系,或者相似关系,也就是说这个函数图形与经过缩放、翻转之后的图形相似。
如果我们不停地画出更高阶的函数图像,都能发现它们与p+1阶的函数图像都有上述自相似关系,也就是:
我们上一节的讨论仅仅针对Logistic迭代完成的。然而,对于其他的单峰函数,也有类似的自相似性,以及不同阶映射法则之间的图形变换对应。下面,我们要提出一个更一般的纲领,即把不同阶映射法则的自相似性作为一个前提而非最终的观察结果来引入,从而反过来求解什么样的函数f(x)才会具有这种性质。那么,我们最终发现,其实f(x)函数的具体性质并不重要,有相当一大类函数都可以最终得到同样的自相似性结果。而费根鲍姆常数也跟具体的迭代函数f(x)无关,而仅仅与我们所要求的系统具备的自相似性质有关。
事实上,我们正在不自觉地运用重正化的思想。如果将从不同时间尺度来考察迭代系统的行为,那么迭代函数的自相似要求就变成了重正化群方程。而最终满足重正化方程的函数集合实际上就是重正化理论中的普适类。
下面,我们将不同阶迭代法则之间的相似几何关系作为一个基本要求。即对于任意的迭代法则,其中f(μ,x)可以写为,g(x)为[0,1]内的单峰函数,我们要求它在变换R下不变。其中R为对函数f进行一系列操作:
(1). 从f得到f(2):,其中为f的超稳定不动点对应的参数;
(2). 从f(2)可以计算出它的超稳定不动点对应的参数;
(3). 对f(2)进行尺度缩放和上下左右翻转:(其中α为一个常数,我们将从重正化方程的求解过程中确定它的值)。
或者,可以简单地把上述3个步骤写为:
这样,假设我们从一个函数出发,不停地运用变换R,就能得到一个函数序列:
其中任意一项可以写成:
有趣的是,我们用重正化的方法研究迭代函数的时候,又得到了一个迭代序列,只不过这里面被反复迭代的对象已经不再是数了,而是变成了迭代函数本身。于是,一切就升级了。假设,这一函数的迭代过程也存在着一个不动点,注意这个不动点不是数,而是一个函数,我们记为:
那么,它应该满足:
我们再把R具体的定义带进去,就有:
于是,我们得到了一个函数方程。它是重正化的不动点方程。对这个方程的求解就能得出一切我们希望得到的东西。
本文不打算对重正化方程的求解进行详细地讨论,在此,我们只介绍一些结论。
我们把所有那些经过重正化方程迭代而收敛到同一个点的函数集合记为一个普适类。这样,我们就解释了不同的函数形式也具有相同的费根鲍姆常数的原因。另外,如果我们将R变换在不动点附近进行泰勒级数展开,并保留线形项,我们就可以计算出费根鲍姆常数δ和α。因此,整个问题就都得到了解答。具体求解可以参考和
有关Logistic映射的更详细讨论可以参考本文献:
郝, 柏林 (1995). 从抛物线谈起. 上海科技教育出版社.  .
Feigenbaum, Mitchell J.. . Journal of Statistical Physics:
25–52. .
WIKIPEDIA的文章:logistic 给出罗杰斯蒂克的分岔图的matlab程序
238万源代码下载-
&文件名称: logistic
& & & & &&]
&&所属分类:
&&开发工具: matlab
&&文件大小: 1 KB
&&上传时间:
&&下载次数: 8
&&提 供 者:
&详细说明:给出罗杰斯蒂克的分岔图的matlab程序-Rogers Mystic gives the bifurcation diagram of the matlab program
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&logistic\Logistic2.m&&logistic&&........\logisticfencha.m&&........\复件 logisticfencha.m&&........\复件 复件 logisticfencha.m
&相关搜索:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - 一 维 混 沌 系 统 分 岔 图 示 例
&[] - 一个画一种logistic Map 分岔图(bifurcation diagram)的程序,运行后,你们可以看到它与常规的非线性系统的行为不一样。该映射可以用如下方程表述:
xn=1-a*x2n-1
其中,aDD[0,2].
&[] - 有关速率的分岔图程序,图像比较清晰,可下载参考。
&[] - 使用matlab实现的小波变换彩色图像水印嵌入和提取程序
&[] - 本文提出了基于二维混沌映射的数字图像水印算法,混沌具有随机性、似噪声及对初始条件的极端敏感性等特点。将经过二维混沌映射置乱后的数字水印信号嵌入图像小波域的低频系数,实现了数字水印的隐蔽性、保密性和稳固性;利用二维混沌映射Arnold变换对水印信号进行置乱,不仅增强了水印信号保密性,同时有效提高了视觉
&[] - 简要介绍了三种典型的混沌系统:logistic映
射,Lorenz系统和Henon映射,利用Matlab软
件,使用编程方法进行了仿真
&[] - logistic混沌映射的MATLB仿真,包括分岔图,相图以及Lyapunov指数谱的绘制

我要回帖

更多关于 tomcat运行成功 的文章

 

随机推荐