智能控制:理论基础、算法设计与应用
上QQ阅读APP看书,第一时间看更新

5.1 T-S模糊模型

T-S(Takagi-Sugeno)模糊模型由Takagi和Sugeno两位学者在1985年提出。该模型的主要思想是将非线性系统用许多线段相近地表示出来,即将复杂的非线性问题转化为在不同小线段上的问题。

5.1.1 T-S模糊模型的形式

前面介绍的为传统的模糊系统,属于Mamdani模糊模型,其输出为模糊量。另一种模糊模型为T-S模糊模型,其输出为常量或线性函数,其函数形式为

y=a

T-S模糊模型与Mamdani模糊模型的区别在于,一是T-S模糊模型输出变量为常量或线性函数;二是T-S模糊模型输出为精确量。

T-S型的模糊推理系统非常适合于分段线性控制系统,例如在导弹、飞行器的控制中,可根据高度和速度建立T-S型的模糊推理系统,实现性能良好的线性控制。

5.1.2 仿真实例

设输入X∈[0,5],Y∈[0,10],将它们模糊化为两个模糊量,即“小”和“大”。输出Z为输入(xy)的线性函数,模糊规则为

If X is small and Y is small then Z =-x+y-3

If X is small and Y is big then Z =x+y+1

If X is big and Y is small then Z =-2y+2

If X is big and Y is big then Z =2x+y-6

仿真程序见chap5_1.m。采用高斯隶属函数对输入进行模糊化,模糊推理系统的输入隶属函数曲线及输入/输出曲线如图5.1和图5.2所示。

图5.1 T-S模糊推理系统的输入隶属函数曲线

图5.2 T-S模糊推理系统的输入/输出曲线

通过命令showrule(ts2)可显示模糊控制规则,共以下4条:

(1)If(X is small)and(Y is small)then(Z is first area)(1)

(2)If(X is small)and(Y is big)then(Z is second area)(1)

(3)If(X is big)and(Y is small)then(Z is third area)(1)

(4)If(X is big)and(Y is big)then(Z is fourth area)(1)

仿真程序:chap5_1.m

5.1.3 一类非线性系统的T-S模糊建模

考虑如下非线性系统[1]

其中,x1t)∈[-1,1],x2t)∈[-1,1]。

上式可写为

其中,xt)=[x1t) x2t)]T

定义

考虑x1t)∈[-1,1],x2t)∈[-1,1],则

针对z1t),采用模糊集M1z1t))和M2z1t))来描述,针对z2t),采用模糊集N1z2t))和N2z2t))来描述。采用三角形隶属函数分别描述z1t)和z2t)的模糊集,如图5.3和图5.4所示。隶属函数设计为

图5.3 M1z1t))和M2z1t))隶属函数

图5.4 N1z2t))和N2z2t))隶属函数

将模糊集模糊化为两个模糊量,即“小”和“大”。模糊规则为

Rule1:If z1t)is Big and z2t)is Big then t)=A1xt

Rule2:If z1t)is Big and z2t)is Small then t)=A2 xt

Rule3:If z1t)is Small and z2t)is Big then t)=A3 xt

Rule4:If z1t)is Small and z2t)is Small then t)=A4 xt

结合式(5.4)~式(5.6),可得

模糊T-S模型输出为

其中

h1zt))=M1z1t))×N1z2t))

h2zt))=M1z1t))×N2z2t))

h3zt))=M2z1t))×N1z2t))

h4zt))=M2z1t))×N2z2t))

可见,通过T-S模糊建模,可将非线性系统式(5.2)在x1t)∈[-1,1],x2t)∈[-1,1]域内转化为线性系统的形式。

仿真程序:

(1)M1z1t))和M2z1t))隶属函数:chap5_2.m

     %Define N+1 triangle membership function
     clear all;
     close all;
     z1=-1:0.01:1;
     M1=(z1+1)/2;
     M2=(1-z1)/2;
     figure(1);
     plot(z1,M1);
     hold on;
     plot(z1,M2);
     xlabel('z1)';
     ylabel('Degree of membership)';

(2)N1z2t))和N2z2t))隶属函数:chap5_3.m

     %Define N+1 triangle membership function
     clear all;
     close all;
     z2=0:0.01:4;
     N1=z2/4;
     N2=(4-z2)/4;
     figure(1);
     plot(z2,N1);
     hold on;
     plot(z2,N2);
     xlabel('z2)';
     ylabel('Degree of membership)';