敖培 李懷芝 任化娟 陶長青 楊百順

摘 要 針對非線性系統的辨識問題,本文提出一種基于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