施建中, 梁紹華
(南京工程學院能源與動力工程學院, 南京 211167)
神經網絡由于其較強的學習能力,被廣泛應用于非線性系統辨識與控制中,而實際對象充滿了不確定因素,很多問題往往不能用精確的數學模型來描述.模糊系統利用專家的知識經驗,通過自然語言去解決數學問題,自從自適應模糊神經網絡(adaptive-network-based fuzzy inference system, ANFIS)提出以來[1],該理論的研究與應用得到了長足的發展。很長時間內模糊設計網絡都是基于傳統的一型模糊邏輯系統,隨著模糊集合理論的發展以及一型模糊邏輯系統在描述客觀世界不確定性的不足,二型模糊邏輯系統理論和應用近些年成為模糊理論的研究熱點。二型模糊集合理論最早由Zadeh[2]于1975年提出,其最早應用于詞計算方面。Mendel[3]將二型模糊集合理論做了深入研究,將其研究領域擴展到控制領域。
隨著二型模糊邏輯系統在非線性系統辨識與控制方面的研究深入,關于二型模糊神經網絡在非線性系統辨識與控制的研究逐漸增多[4-6]。目前二型模糊神經網絡的結構主要包括固定網絡結構[7-8]、結構自調整二型模糊神經網絡[9-10]、自進化二型模糊神經網絡[11-12]、自組織區間二型模糊神經網絡[13-15]等。區間二型模糊神經網絡的結構一旦確定,接下來就需要進行網絡參數的學習,目前使用最多的參數學習算法為反向傳播(back propagation,BP)算法,但是BP算法對初值敏感,不恰當的初值會導致算法發散或者收斂于非最優解。
區間二型模糊邏輯系統與傳統模糊邏輯系統的結構類似,但其需要一個關鍵步驟,即降階。降階過程首先將二型模糊集合降為一型模糊集合,在利用常規的一型模糊集合的解模糊化方法得到最終區間二型模糊系統的精確輸出。目前大部分的區間二型模糊神經網絡系統都采用Karnik-Mendel (KM)降階算法[16],該降階算法是一迭代尋優算法,首先需要進行離散點的按大小排序,這樣與之對應的隸屬度也要做相應的改動,降階得到兩個切換點,且每次的切換點不一定相同,這樣利用BP算法學習參數的時候,過程較為煩瑣,沒有統一的學習公式。
現提出一種基于模糊C均值(fuzzy C means, FCM)聚類算法的區間二型模糊神經網絡辨識算法,利用FCM算法得到訓練數據的最佳聚類數目,該數目也即神經網絡的層數。模糊隸屬度函數選擇高斯型,FCM算法得到的聚類中心用來初始化高斯隸屬度函數的中心,而高斯隸屬度函數的寬度則通過FCM聚類算法的聚類中心和訓練數據針對每一類的隸屬度計算得到。本文算法首先通過FCM聚類算法確定二型模糊神經網絡的結構,然后利用一種直接降階算法,避免KM降階算法的迭代過程,簡化BP算法的學習過程。通過2個非線性系統的辨識結果表明,本文提出的算法簡化了區間二型模糊神經網絡的結構辨識以及BP算法的學習過程,具有較高的辨識精度以及較快的收斂速度。
區間二型模糊神經網絡的結構和傳統的神經網絡結構類似,分為四層,第一層為輸入層,第二層為隸屬度函數層,該層的輸入為系統的輸入,輸出為輸入變量的隸屬度函數,由于是區間二型模糊集合,那么該隸屬度輸出為一區間。第三層為模糊推理層,輸入為規則中輸入變量的二型模糊隸屬度,輸出為規則的激發隸屬度,同樣也為一區間。第四層為輸出層,輸入為規則的激發隸屬度,輸出為系統的輸出,第三層和第四層的連接權重即為模糊規則的后件參數。按照后件參數的不同,區間二型模糊系統分為Mandani和T-S模糊模型形式,本文的模糊模型后件參數為Mandani形式,一般的區間二型模糊神經網絡的結構如圖1所示。

圖1 二型模糊神經網絡結構圖Fig.1 Structure of interval type 2 fuzzy neural network
假設二型模糊神經網絡有M條規則,第k個規則Rk可表示為

考慮多輸入單輸出二型模糊神經網絡,一共為四層,多輸入多輸出二型模糊神經網絡可通過多個多輸入單輸出網絡組成,結構類似。
多輸入單輸出神經網絡每層分別描述如下。



(1)
高斯型二型隸屬度函數可通過模糊化中心mki或者寬度σki表示,如果模糊化中心mki,則隸屬度函數的上、下限可分別表示為


(2)


(3)
如果模糊化中心σki,則隸屬度函數的上、下限可分別表示為

(4)

(5)
現選擇第二種形式的高斯型隸屬度函數,即式(4)和式(5)。
第三層為模糊推理層:神經元個數為M個,每個神經元輸出可表示為

(6)


(7)
yl和yr通過區間二型模糊集合的KM降階算法求出,具體KM降階算法可參考文獻[16]。
模糊C均值聚類算法是一種無監督學習算法,其目標函數為
s.t.U∈Mfc
(8)

根據拉格朗日乘子法,FCM聚類算法其具體的實現步驟如下。
初始化:給定聚類類別數c,2≤c≤n,n是樣本個數,設定給定停止閾值ε、最大迭代次數Cmax、初始化聚類中心P0,設置迭代計數器r=0。
步驟1用式(9)計算第r+1次迭代的模糊劃分矩陣U(r+1)。


(9)

步驟2用式(10)計算第r+1次迭代的聚類中心P(r+1):

(10)
步驟3如果‖P(r+1)-P(r)‖<ε或者迭代次數大于Cmax,那么算法停止,最后一次迭代的值就是模糊劃分矩陣U和聚類中心P,否則令r=r+1,轉向步驟1,其中‖·‖為某種合適的矩陣范數。
本文提出的區間二型模糊神經網絡參數訓練方法利用BP算法,優化的目標函數為

(11)



(12)

(13)

(14)

(15)

(16)
根據復合函數求導,各參數的學習算法分別為

(17)

(18)

(19)

(20)

(21)

(1)設置二型模糊神經網絡的模糊規則數目M。

(3)利用式(22)初始化高斯隸屬度函數的參數:

(22)

(5)如果所有訓練數據的誤差平方根(root square error, RSE)之和J,如式(23)所示,小于給定的截止誤差ε或者迭代次數達到了最大迭代次數I,則結束訓練過程;否則t=t+1,轉步驟(4)。

(23)
本例選擇如下離散非線性動態系統:
(24)



圖2 本文算法和原系統輸出曲線Fig.2 Algorithm of this paper and original system outputs curves

圖3 本文算法和原系統誤差曲線Fig.3 Algorithm of this paper and original system errors curve

圖4 本文算法性能曲線(均方根誤差)Fig.4 Algorithm of this paper performance curve (root mean square error)
表1顯示了本文算法和其他辨識算法的基于均方根誤差的性能比較結果。比較的準則選擇的是訓練數據和驗證數據的均方根誤差。
表1中比較的辨識算法包括文獻[17]提出的基于BP和混合訓練算法的區間二型模糊神經網絡(interval type 2 fuzzy neural networks, IT2FNN),文獻[18]提出的動態模糊神經網絡(dynamic fuzzy neural networks, DFNN),文獻[19]提出的廣義動態模糊神經網絡(generalized dynamic fuzzy neural networks, GDFNN),文獻[20]提出的自組織模糊神經網絡(self-organizing fuzzy neural networks, SOFNN),文獻[21]提出的基于遺傳算法的自組織模糊神經網絡(self-organizing fuzzy neural networks based on genetic algorithms, SOFNNGA)以及文獻[6]提出的自組織區間二型模糊神經網絡(self-organizing interval type-2 fuzzy-neural-network, SOIT2FNN)。
本例選擇如下離散非線性動態系統:y(k+1)=g[y(k),y(k-1),y(k-2),u(k),u(k-1)],其中,g

表1 不同辨識算法性能比較Table 1 Different identification methods performance comparison
注:“-”代表相關數據缺失。
共選擇900組訓練數據組,前350組的輸入信號u(k)為均勻分布在[-1,1]上的隨機數,剩下的輸入信號u(k)為1.05sin(πk/45)。驗證數據的輸入信號u(k)描述為
(26)
在仿真中,模糊規則數目M=4。圖5顯示了驗證數據本文算法的模糊神經網絡輸出和原系統的輸出曲線,圖6顯示了驗證數據二者的誤差曲線,圖7顯示了迭代次數的目標函數曲線。

圖5 本文算法和原系統輸出曲線Fig.5 Algorithm of this paper and original system outputs curves

圖6 本文算法和原系統誤差曲線Fig.6 Algorithm of this paper and original system errors curve

圖7 本文算法性能曲線(均方根誤差)Fig.7 Algorithm of this paper performance curve (root mean square error)
表2顯示了本文算法和其他辨識算法的性能比較。比較的準則選擇的是驗證數據的均方根誤差。
表2中比較的辨識算法包括文獻[22]提出的基于TSK模型的遞歸模糊神經網絡(TSK-type recurrent fuzzy network, TRFN-S),文獻[23]提出的遞歸自進化模糊神經網絡(recurrent self-evolving fuzzy neural network, RSEFNN),文獻[24]提出的基于TSK和FUL(functional-link-based)模型的交互遞歸自進化模糊神經網絡(interactively recurrent self-evolving fuzzy neural network, IRSFNN)以及文獻[25]提出的同步遞歸區間2型神經模糊系統(mutually recurrent interval type-2 neural fuzzy system,MRIT2NFS)。
針對區間二型模糊神經網絡結構辨識復雜以及BP參數依賴初始值的問題,提出了一種基于FCM聚類算法的區間二型模糊神經網絡辨識算法。首先利用FCM聚類算法得到訓練數據的中心和隸屬度,將其賦初值給二型模糊系統的高斯隸屬度函數的中心和寬度以及后件參數。其次利用一種直接二型模糊集合的降階算法,簡化了BP算法訓練網絡參數的流程。仿真結果表明,本文提出的算法學習過程簡單,辨識精度較好,收斂速度較快。

表2 不同辨識算法性能比較Table 2 Different identification methods performance comparison