近年来,混沌已经应用到许多工程领域,例如:信息科学、复杂神经网络、信号处理、通信保密等。因此,许多学者一直探索新的混沌动力学。
一些简单的光滑三维二次连续自治系统能生成混沌。1994年,Sportt提出了19个简单的混沌系统。每个系统仅有5项和2个非线性项或6项和1个非线性项。并且依次描述了每个混沌系统的平衡点、三个Lyapunov指数和分形维。1999年,陈关荣等人提出了一个新的三维二次连续混沌系统,后来被称之为 C h e n Chen Chen系统。2002年,吕金虎等人提出了另外一个新的三维二次连续混沌系统,后来被称之为 L u ¨ L\ddot{u} Lu¨系统。后来,在三维二次连续的自治系统中,诸多学者发现了许多光滑的混沌系统。与这些研究成果对比,同时构造具有一个对称参数的两个混沌系统的问题尚未被研究。
混沌系统能生成具有不同形状的混沌吸引子。2004年,Zhou首先提出了一个光滑三维二次连续的自治系统,该系统含9个参数和3个二次交叉乘积项,具有生成球形混沌吸引子的能力。混沌吸引子的两个代表性的形状是蝴蝶翅膀形状和涡卷形状。除了双翅膀吸引子之外,三翅膀和四翅膀吸引子的研究也是非常值得关注的。
近年来,诸多学者主要利用切换控制方法,来生成多涡卷或者多翅膀混沌吸引子。2004年,吕金虎等人研究了对称混沌吸引子的问题,取得了重要的研究成果。然而,两个问题尚未得到研究。一个问题是如何连接两个对称混沌吸引子,来生成一个新的对称混沌吸引子;另一个问题是两个混沌系统如何消除混沌。
本节提出两个具有4个二次项和1个对称参数的三维连续自治混沌系统,两个系统能生成两个新的对称混沌吸引子。本节分别计算了每个系统的三个Lyapunov指数和相应的Lyapunov维数,来验证混沌的存在性。利用新的切换控制方法,两个对称混沌吸引子能迅速地连接成一个新的对称混沌吸引子。并且,设计具有适当参数的几个简单的平面切换控制律,来有效消除混沌。
1. 两个混沌系统的构造
构造一个具有对称参数的两个光滑三维二次连续自治混沌系统如下:
第一个混沌系统
{ x ˙ = − 6 x + 18 y − a z 2 y ˙ = − 6 y − 18 x z z ˙ = − 20 + x y + 3 x 2 \left\{ \begin{array}{l} \dot{x}=-6x+18y-az^2\\ \dot{y}=-6y-18xz\\ \dot{z}=-20+xy+3x^2\\ \end{array} \right. ⎩⎨⎧x˙=−6x+18y−az2y˙=−6y−18xzz˙=−20+xy+3x2
第二个混沌系统
{ x ˙ = − 6 x + 18 y + a z 2 y ˙ = − 6 y − 18 x z z ˙ = − 20 + x y + 3 x 2 \left\{ \begin{array}{l} \dot{x}=-6x+18y+az^2\\ \dot{y}=-6y-18xz\\ \dot{z}=-20+xy+3x^2\\ \end{array} \right. ⎩⎨⎧x˙=−6x+18y+az2y˙=−6y−18xzz˙=−20+xy+3x2
其中 a a a是一个对称参数。
当取对称参数 a = 3 a=3 a=3时,第一个混沌系统取初始条件 ( x 0 , y 0 , z 0 ) = ( 1 , 1 , 1 ) (x_0,y_0,z_0)=(1,1,1) (x0,y0,z0)=(1,1,1)和第二个混沌系统取初始条件 ( x 0 , y 0 , z 0 ) = ( − 1 , − 1 , − 1 ) (x_0,y_0,z_0)=(-1,-1,-1) (x0,y0,z0)=(−1,−1,−1),这两个系统分别生成两个对称混沌吸引子,如下图所示:
以下是实现上述过程的MATLAB代码:
clear;clc;
x0 = [1,1,1,-1,-1,1];
tspan = [0,50];
[T,Y] = ode45(@dxdy,tspan,x0);
figure(1)
plot(Y(:,1),Y(:,2),'color',[0.25,0.15,0.7])
hold on
plot(Y(:,4),Y(:,5),'color',[0.85,0.2,0.3])
xlabel('x','FontName','Times New Roman','FontSize',20)
ylabel('y','FontName','Times New Roman','FontSize',20)
set(gca,'FontName','Times New Roman','FontSize',20,'LineWidth',2)
figure(2)
plot(Y(:,1),Y(:,3),'color',[0.25,0.15,0.7])
hold on
plot(Y(:,4),Y(:,6),'color',[0.85,0.2,0.3])
xlabel('x','FontName','Times New Roman','FontSize',20)
ylabel('z','FontName','Times New Roman','FontSize',20)
set(gca,'FontName','Times New Roman','FontSize',20,'LineWidth',2)
figure(3)
plot(Y(:,2),Y(:,3),'color',[0.25,0.15,0.7])
hold on
plot(Y(:,5),Y(:,6),'color'