敖培 李怀芝 任化娟 陶长青 杨百顺
摘 要 针对非线性系统的辨识问题,本文提出一种基于SFLA聚类算法的T-S模糊模型辨识方法。首先通过SFLA聚类算法自动地从已知的输入输出数据中确定模糊模型的结构和前件参数,然后用SFLA算法估计模糊模型的后件参数。仿真结果表明,该方法辨识精度高,得到的模糊模型简单、模糊规则少,具有很好的实用性和有效性。
【关键词】SFLA 聚类 T-S模型辨识
1 引言
基于混合蛙跳算法(Shuffled Frog Leaping Algorithm, SFLA),本文在T-S模糊模型结构辨识中,采用SFLA聚类算法确定模糊规则数目以及前件参数,在此基础上使用SFLA算法实现后件加权参数辨识,也即调整模糊模型的参数使其具有更高的精度。仿真结果表明,该方法辨识精度高,具有很好的实用性和有效性。
2 基于SFLA聚类算法的T-S模糊模型辨识
2.1 前件结构部分辨识
考虑非线性系统y(k)=f(y(k-1),…,y(k-m),u(k-1),…,u(k-n))+ζ(k),其中:y、u和ζ分别代表系统的输出、输入和干扰,f代表非线性函数。本文采用基于SFLA的聚类算法建立前件中的模糊集合Aji(i=1,2,…,C),C为聚类数目,构造如下一个初始模糊规则库:
Ri if
y(k-1) is A1i,…, y(k-m) is Ami, u(k-1) is Am+1i,…, u(k-1) is Ani
then
yi(k)=p0i+p1iy(k-1)+…+pmiy(k-m)+pm+1iu(k-m-1)+ …+ pniu(k-n)
其中:Ri为第i条模糊规则, Aji是一个由SFLA的聚类算法得出的模糊子集,用高斯函数表示,pji是一个结论参数,m和n为系统变量的阶次。则由中心平均解模糊公式得系统的输出为:
y'(k) =
=vi(p0i+p1iy(k-1)+…+pmiy(k-m)+pm+1iu(k-m-1)+ …+ pniu(k-n)) (1)
其中wi = Aji 。
2.2 后件结论参数辨识
采用SFLA算法确定每条规则的后件参数(p0i,p1i,…,pmi,pm+1i,…,pni),具体步骤如下:
Step 1:初始化算法参数,包括种群大小N、模因组数量m、模因组进化次数M、青蛙允许移动的的最大距离Dmax和种群最大迭代次数MaxIter。
Step 2:随机初始化种群。
Step 3:青蛙种群根据分组算子分成若干模因组。其中适应度为J= (y(k)?y'(k))2,式中y(k)是系统的实际值,y'(k)是模糊模型输出。
Step 4:每个模因组内部执行局部位置更新算子。
Step 5:青蛙在模因组间跳跃,重新混合形成新的种群。
Step 6:判断是否满足结束条件,若满足则输出最优解;若不满足,则跳到Step 3继续执行。
3 仿真实例
本文以非线性系统y(k)+a1y(k-1)+a2y(k-2)=b1u(k-1)+b2u(k-2)+b3u(k-3)+ε(k)/Δ研究对象,其中ε(k)=[-0.02,0.02]均匀分布的白噪声,[u(k-3),u(k-2),u(k-1),y(k-2),y(k-1)]为输入变量,采用本文第3节方法进行模糊辨识。当聚类个数为4时,辨识的参数为:θ1=[-1.2871 -0.7505 1.4427 0.4332 1.1120];θ2=[-1.3216 -0.7448 1.4321 -0.3265 -0.3754];θ3=[-1.3283 -0.7625 1.5052 -1.1051 -0.1663];θ4=[-1.2928 -0.7709 1.6014 1.4417-0.6019]。误差矩阵范数为3.1325。仿真结果表明,采用本文方法能够获得较好的模糊模型的逼近精度。
4 结语
本文提出一种利用SFLA聚类算法和SFLA算法来辨识T-S模型的结构和加权的参数非线性系统的模糊辨识方法仿真结果表明该方法能够实现非线性系统的辨识,辨识精度较高,可作为复杂系统建模的一种有效手段。
参考文献
[1]杨淑莹,张桦.群体智能与仿生计算——Matlab技术实现[M].北京:电子工业出版社,2014.
作者简介
敖培(1979-),女,蒙古族,辽宁省沈阳市人。博士学位。现为河南师范大学计算机与信息工程学院讲师、硕士生导师。研究领域为智能信息处理。
李怀芝(1992-),女,河南省新乡市人。大学本科学历。研究领域为通信工程。
任化娟(1993-),女,河南省杞县人。大学本科学历。研究领域为物联网工程。
陶长青(1992-),女,河南省淮阳市人。大学本科学历。研究领域为物联网工程。
杨百顺(1992-),男,河南省商城县人。大学本科学历。研究领域为计算机科学与技术。
作者单位
1.河南师范大学计算机与信息工程学院 河南省新乡市 453007
2.河南师范大学软件学院 河南省新乡市 453007