常见混沌序列的生成及分布展示(合集、含代码)

您所在的位置:网站首页 映射和照射是近义词吗 常见混沌序列的生成及分布展示(合集、含代码)

常见混沌序列的生成及分布展示(合集、含代码)

#常见混沌序列的生成及分布展示(合集、含代码)| 来源: 网络整理| 查看: 265

分别列举很多种常见的混沌序列,并绘制出其散点图、直方图,这两种图就能直观的观察没种混沌序列的分布了。另外,有些混沌序列参数初始取值范围需要去看对应混沌序列的分岔图,对于只是使用一下混沌序列而不是深究混沌系统的朋友们来说,生成分岔图的步骤就多次一举了,可以直接用我给出的参数。不过分岔图的生成可以考虑后期再补上(20223.6.8日画饼)。在最后会有一个生成整数混沌序列的代码,经过测试效果很不错。

一、混沌序列

百度百科这样介绍混沌序列:混沌序列是一种确定系统中出现的无规则的运动。混沌的离散情况常常表现为混沌序列,混沌序列是由混沌模型生成的具有混沌特性的序列,混沌序列中蕴涵着系统丰富的动力学信息,混沌序列是混沌理论通向现实世界的一个桥梁,是混沌的一个重要应用领域。

做一下个人见解的解释,混沌就是一种无序的状态,而混沌序列就是这种无序状态的数字表现,通常会用一些确定的数学公式去计算得到。

混沌序列可以用来代替随机数生成的,据某篇论文说混沌序列比伪随机数生成器产生的值要好。当然,由于混沌序列的不确定性、无周期性,在密码学方面也有很多的应用,这里我就不太懂了。

本文的混沌序列的公式是在论文和别的网页截的屏(LaTeX用的不太好,公式录入不太熟练),还有一点,可能本文列出的混沌序列的表达式和别的地方不太一样,原因是我参考的论文有些可能是改进变形后的混沌序列,但我会尽量保证使用最经典的或者最常用的来描述。如果有不对的地方,欢迎评论指出。

二、常见混沌序列及其生成 2.1 Logistic 映射

Logistic 映射,又称虫口映射,是最经常用到的一种映射方式:

Z_{k+1}=\mu Z_{k}(1-Z_{k})

其中Z_{0}\notin {0,0.25,0.5,0.75,1.0},\mu \in (3,4]

Matlab代码如下:

% 产生Logistic 混沌序列 x0 = 0.2983; % 据本人经验,初始值至少取到小数点后三位效果才更好 len = 1000; squence = zeros(1,len); xn = x0; for i=1:len xn = 4*xn*(1-xn); squence(i) = xn; end % 绘制散点图 figure plot(squence,'.') xlabel('维度') ylabel('混沌值') % 绘制直方图 figure histogram(squence) xlabel('混沌值') ylabel('频数')

效果图如下:

 

2.2 PWLCM 映射

这个用在图像加密的多些,分布很均匀。表达式如下:

 其中:p是参数取值范围为(0,0.5),xi∈(0,1)。

 Matlab代码如下:

% 产生PWLCM混沌序列 clc; clear; close all; x0=0.347; p=0.439; len=1000; squence=zeros(1,len); xn=x0; for i=1:len if(xn>=0&&xn=p&&xn=0.5&&xn=0&&xn=p&&xn


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3