《神經控制中的系統辨識》精品PPT_第1頁
《神經控制中的系統辨識》精品PPT_第2頁
《神經控制中的系統辨識》精品PPT_第3頁
《神經控制中的系統辨識》精品PPT_第4頁
《神經控制中的系統辨識》精品PPT_第5頁
已閱讀5頁,還剩167頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、神經控制中的系統辨識3.1 系統辨識過程中神經網絡的作用3.2 非線性動態系統辨識3.3 多層前向網絡辨識中的快速算法3.4 非線性模型的預報誤差神經網絡辨識3.5 非線性系統逆模型的神經網絡辨識3.6 線性連續動態系統辨識的參數估計3.7 利用神經網絡聯想功能的辨識系統3.7 小結習題與思考題3.1 辨識模型辨識模型只是被測系統在一定環境下的近似描述,選擇只能在以下情況中確定:是選擇靜態模型,還是選擇動態模型?是選擇參數模型,還是選擇非參數模型?必須考慮:1) 模型的用途;(2) 被測對象的精確度與復雜程度;(3) 系統的控制方式,是自適應控制還是實時控制;(4) 使用神經網絡,可以選擇三層

2、網絡通過仿真比對完成,當前神經網絡理論尚未明確指出需要幾個隱層節點數才能模擬出系統。一、使用參數模型辨識的方法 從輸入輸出數據中提取被測系統S的數學模型M,使下式成立:YmYo=M(u)S(u)式中Ym、Yo分別是系統輸入u作用下模型和系統的輸出。為預設的辨識精度。設e=YmYo,則辨識準則二、使用非參數模型辨識的方法 無需事先確定模型的具體結構,只需要知道運行過程為線性。這一類模型有階躍響應、脈沖響應、頻率特性三、人工神經網絡用于系統辨識 用神經網絡構成辨識模型,辨識方法就是用神經網絡辨識模型逼近被測系統。用作辨識模型的神經網絡通常有多層感知器、BP網絡、Hopfield網絡等。四、 辨識系

3、統的輸入和輸出被測系統與辨識模型使用相同的輸入信號。輸入信號滿足條件1、辨識時間內的輸入信號必須持續激勵,充分激勵系統的所有模態,輸入信號的頻譜必須足夠覆蓋系統的頻譜;2、輸入信號要求最優化。辨識系統常用的輸入信號有偽隨機序列或白噪聲。 辨識系統的輸出是系統的誤差。在確定系統誤差時,選擇誤差準則,用來衡量辨識模型接近被測系統的程度。四、誤差準則函數的泛函表示 f() 用得較多的是平方函數:fe(k)=e2(k)e(k)是誤差函數,定義區間為0,M,是辨識模型的輸出與被測系統的輸出之差。如果e(k)=0,則說明被測系統與辨識模型等價。 3.2 系統辨識過程中神經網絡的作用3.2.1 神經網絡辨識

4、原理一、系統辨識 實質上是一個優化問題,優化準則依靠辨識目的、辨識算法的復雜程度進行選擇。二、辨識方法基于算法的辨識方法,適用于線性系統;基于神經網絡的辨識方法,適用于非線性系統。1. 基于算法的辨識方法要求建立一個模型,該模型依賴于某個參數,把辨識轉化成了對模型參數的估計。1) 最小二乘法利用最小二乘法原理,通過極小化廣義誤差的二次方和函數來確定模型的參數。例如一個線性系統模型,在經過一系列的數學變換后轉換成最小二乘格式: z(k)=hT(k)+e(k)hT(k)是系統的廣義輸入,內含原系統輸入u(k)和原系統輸出y(k);e(k)是系統的廣義噪聲。2) 梯度校正法沿著誤差準則函數關于模型參

5、數的負梯度方向,逐步修改模型的參數估計值,直到誤差準則函數達到最小。3) 極大似然法極大似然法通過極大化似然函數來確定模型參數。最小二乘法辨識系統2. 基于神經網絡的辨識方法人工神經網絡辨識那些非線性系統,不需預先知道被測系統的模型。 辨識并不在意神經網絡以什么形式去逼近實際系統,只關心神經網絡的輸出與被辨識系統的輸出相差多少,誤差e(k)能否為0。從辨識的角度出發,只要e(k)小于某一個事先認可的值,對被辨識系統的辨識任務告一段落。3、神經網絡的辨識方法的特點:(1) 辨識器由神經網絡構成,被辨識對象允許是本質上不能線性化的非線性系統;(2) 辨識過程非算法式,由神經網絡的訓練來實施。辨識結

6、果是網絡外部特性擬合系統的輸入輸出特性,網絡內部特性歸納隱藏在輸入輸出數據中;(3) 辨識之前無須對被辨識系統建模,神經網絡辨識器的權值反映了被辨識對象的可調參數;(4) 辨識過程是否收斂以及收斂速度僅取決于神經網絡的結構及其算法,與被辨識系統及其維數無關,有別于與模型參數的維數密切相關的傳統算法;(5) 神經網絡可用于在線控制;(6) 神經網絡連接權的權值在辨識中對應于模型參數,只要調節這些參數,就能使網絡輸出逼近系統輸出。3.2.2 多層前向網絡的辨識能力1. 三層前向網絡的逼近能力僅含一個隱層的三層前向網絡可以逼近某個函數。設輸入層有n個節點,能接納n個輸入xi(i=1,2,3,n),隱

7、層有q個節點vj(j=1,2,3,q),輸出層僅有一個節點。網絡的輸入矢量為X,輸入層到隱層第j個神經元的連接權值矢量用Wj表示,網絡的輸出為單輸出,用y表示。()是隱層節點的作用函數。給定函數空間S、映射p,若函數f,g,hS,且滿足:(1) p(f,g)0,且僅當f=g時取等號,具有正定性;(2) p(f,g)=p(g,f),具有對稱性;(3) 三角不等式p(f,g)p(f,h)+ p(h,g)成立。 (s,p)為賦范空間,映射p稱為距離函數或范數。如果URn是n維單位立方體,C(U)是定義在U上的所有連續函數f(X)的集合,定義范數p=sup|f(X)|定理1 若神經元特性(t)是連續函

8、數,且函數f(x)不僅限于連續函數,f(x)是一個非連續函數時定理仍然成立,只要求f(x)在1,1上有定義,且滿足平方可積條件。利用傅里葉積分將f(x)展開成傅里葉級數若干個連續函數之和,對每一連續函數,定理1均成立。設f(x)連續,且在連續點處,有限次級數和的三角級數形式為問題推廣到n維(n1),定義矢量的絕對值為其各分量的最大絕對值,在單位空間中定義下列積分:其中將函數f(x)的集合記為L2(U)。定義范數則下列定理成立:定理2 若神經元特性(t)是閾值特性,那么()在L2(U)中是p稠密的,即對于fL2(U)及0,g(X),使得三層前向網絡能以任意精度逼近任意連續函數、任意非連續函數及其

9、各階導數(如果存在導數)。這一性質能用于動態系統辨識,要求神經網絡具備逼近各階導數的能力。2. 多層前向網絡的基本結構1)靜態網絡的典型例子就是BP網絡,該網絡的三個特征是多層次結構、S型神經元及反向傳播算法(BackPropogation)。靜態網絡已在模式識別、系統識別、圖像處理等方面受到較大的關注。2)動態多層前向網絡回歸網絡是一種動態網絡,它的結構特點存在反饋。或用一段時間內的均方誤差值 T選用適宜的一個正整數,并要求輸入模式為動態信號。設網絡的全部可調參數(例如連接權值和閾值)的集合用表示,網絡的當前參數為,J為當前時刻指標函數的梯度,由BP算法知當前參數增量與梯度成正比:=J比值是

10、學習速率或步長。(1) 圖 (a),有式中,用W(z)表示一個動態系統,只需要用BP算法靜態計算 ,就能得到當前時刻的。設網絡期望輸出為W(z)是一個特定的脈沖傳遞標量函數。選取多層網N的結構為四層:輸入層1個節點,第一隱層20個節點,第二隱層10個節點,輸出層1個節點。用多層網N逼近:逼近過程中W(z)可能有三種情況出現:第一種,取W(z)是純滯后q步的線性系統,傳遞函數W(z)=zq,計算并時延q步得 當前值。如取q=5, 訓練指標用J1,=0.1時訓練50 000步可得較好效果。訓練指標用J2,=0.2時訓練50 000步得相同結果。第二種,取W(z)是有限脈沖響應模型(FIRM),傳遞

11、函數W(z)=aiz1,計算線性組合以前各時刻的值后可得 。如設W(z)=0.1z1+1.0z2+0.5z3訓練指標用J2,每三步調整一次參數(T=3),=0.01時訓練50 000次后N與f基本相同。第三種,取W(z)是穩定的有限傳遞函數,且能用參數模型描述,如描述模型用ARMA模型。取訓練指標用J1,=0.005時訓練10萬次,發現y與yq仍有差別。訓練指標改用J2,=0.005時訓練10萬次,取T=5,最終效果較好。(2) 對圖 (b),多層前向網絡的映射有兩個,現分別確定。對于N1網絡映射,用靜態BP算法計算 ,其中是N1的參數。對于N2網絡映射,使用靜態BP算法計算 和 ,求得或寫成

12、其中,f代表了非線性的關系,有此函數關系的非線性系統均可以用神經網絡來逼近。盡管如此,也不能簡單地認為:N1能訓練成f,N2能訓練成g(u)。用例說明,設N1是結構為120101的單輸入單輸出系統,取訓練用的輸入信號是分布在2,2之間的隨機信號。訓練好以后,實際輸出y與期望輸出yq之間無多大的差別。(3) 圖 (c),設和是當前點上取值的Jacobian矩陣矢量,它們能夠在每一時刻求得,成為以下線性差分方程的系數矩陣矢量式中,是n維矢量,系統傳遞函數W(z)僅對其后的產生延時作用。如果離散系統通過零階保持器采樣,W(z)至少有一步時延效應,使得W(z)總只包括當前時刻前的各值。按照差分方程能遞

13、推出各時刻的值。(4) 圖 (d),N1的可用與圖 (c)相同的線性差分方程計算出來,N2則有仿真結果表明這種動態BP算法能使網絡較好地跟蹤期望輸出。動態反向傳播算法比靜態反向傳播算法復雜得多,導致這種算法存在諸多缺點,其中突出的有兩個缺點:一個是必須假設系統可以分成線性系統和非線性系統;另一個是需要已知線性系統的傳遞函數。3.2.3 辨識系統中的非線性模型神經網絡作系統辨識,主要用于非線性辨識和自適應。非線性系統在能控性、能觀性、負反饋調節、狀態觀測器設計等方面,還沒有成熟的做法,難度是非線性系統的辨識模型和控制模型不易選取。為此,用神經網絡辨識非線性系統,必須作一些假設限制:(1) 被控對

14、象具有能控能觀性;(2) 對所有可能的輸入控制量u,被控對象的輸出y存在并有界;(3) 在辨識模型中的神經網絡允許一個或幾個,選用的結構同于被控對象;(4) 辨識模型的基本結構為包含神經網絡的串并聯結構。以上第(1)、(2)條限制是為了保證整個系統的穩定性及可辨性;第(3)條限制是為了方便選擇模型,簡化數學處理過程;第(4)條限制源于串并聯結構有以下優點: 由于被控對象的輸出y存在并有界,那么串并聯模型中所有用作辨識的信號均有界,使辨識模型易于穩定; 串并聯模型無反饋網絡,使從后向前的靜態反向傳播算法成為可能; 當辨識誤差足夠小時,不使用串并聯結構,只使用并聯結構也能有好的效果。在上述四種假設

15、限制下,能夠寫出常用的一些非線性典型模型,現舉例如下:第一種,這種模型的輸出輸入關系為n=2,m=0時的并聯結構和串并聯結構如圖4-6所示。第二種,第三種,并聯及串并聯模型(a) n=2,m=0時的并聯模型;(b) n=2,m=0時的串并聯模型第四種,y(k+1)=f(y(k),y(k1),y(kn),u(k),u(k1),u(km) 3.3 非線性動態系統辨識3.3.1 非線性動態系統的神經網絡辨識設非線性離散動態系統的狀態方程為X(k+1)=X(k),U(k)Y(k)=X(k),U(k)式中,X,Y,U分別是系統的狀態矩陣、輸出矩陣和輸入矩陣,并設X(k)Rn,Y(k)Rp,U(k)Rm設

16、狀態方程描述的系統滿足以下三個條件:第一條,定義U的取值范圍組成的集合為Rm,則U。若X(0)Rm,則對有限個M,系統是穩定的,表現為:X(M)+Y(M)。第二條,函數和當Rn+mRn時連續且滿足Lipschitz條件,系統解唯一。由于神經網絡用作非線性離散系統辨識模型時屬靜態網絡,用作非線性離散系統的動態模型時還需要滿足下一個條件。第三條,設任意連續函數f:CRp,其中C為閉集,CRp,均存在網絡參數W,使網絡輸出F(X,W)滿足其中,是一個大于0的小正數。滿足以上三個條件的神經網絡非線性動態系統結構圖如圖4-7所示,用作系統辨識時有如下定理。定理 考慮到滿足第三條的系統狀態方程為對于X(0

17、)=X0Rm,U Rm,為閉集,對于每一0,必存在網絡參數W,使得 U,都有滿足上述第一條、第二條條件的系統充分接近輸出,存在:maxy(k)Y(k)證明過程從略。此定理說明用BP網絡組成非線性動態系統時,按上圖結構,能構成非線性離散動態系統的精確模型,且有唯一穩定解。圖 神經網絡非線性動態系統結構圖3.3.2 單輸入單輸出非線性動態系統的BP網絡辨識選用BP網絡辨識,網絡的結構可選三層前向網絡。其中輸入層用u(k)作輸入,神經元個數為n1,則n1 n + m +1隱層的神經元個數假設為n2個,可取n2n1隱層神經元個數n2在420個范圍內選取,通過仿真比較,選取性能好的那個值。輸出層神經元個

18、數設為n3,大小等于被辨識系統的輸出個數。現考慮一個單輸入單輸出非線性動態系統,設系統的輸入及階次分別為u(k)和m,輸出及階次分別為y(k)和p,系統方程為Y(k+1)=f(y(k),y(k1),u(k),u(km+1)單輸入單輸出的n1n31。BP網絡的輸入矢量可寫成x(k)=x1(k),x2(k),xn1(k)T因m、p未知,可進行的幾種組合,比較性能后選最優的一組。設輸入層用“I” 表示,隱層用“H”表示,輸入層到隱層的連接權矩陣為wji,對應輸入輸出關系為Ij(k)=Hneti(k)閾值對應的狀態為x0=1。設輸出層用“O”表示,從隱層到輸出層的連接權矩陣為Pi, 相應輸入輸出關系為

19、閾值對應的狀態為I0=1。選用的性能指標為:學習規則采用廣義規則,為加快收斂,規則帶慣性項,格式如下:Pi(k)=Pi(k+1)Pi(k)=a1e(k)Ii(k)+a2Pi(k1)wji(k)=a1e(k)Hneti(k)Pi(k)xi(k)+a2wji(k1)e(k)=y(k)yq(k)Hneti(k)=neti(k)(1neti(k)式中,i=1,2,n2;j=1,2,n1,以下同。基于BP網絡的系統辨識分6步實施,各步如下。(1) 初始化連接權為小的隨機值。設Random()為1,+1內均勻分布的隨機函數,初始值wji(0)=aRandom()0.1,0.1Pi(0)=aRandom()

20、0.1,0.1(2) 選擇輸入信號u(k),候選的有階躍、斜坡、正弦波、偽隨機二進制序列(PRBS)等信號,只選一種加入系統。(3) 仿真計算y(k)。(4) 形成輸入矢量X(k),計算e(k)。(5) 計算Pi(k)、wji(k)。(6) 將u(k)、y(k)移位轉入第二步繼續。如果是離線辨識,結束循環的判斷條件為(預先選定為小的正數) |e(k)|=|y(k)yq(k)| 例1 水輪發電機組模型BP網絡辨識。本例選自參考文獻3。水輪發電機組在線辨識系統結構如圖4-8所示。從結構圖中看到,水輪發電機組模型的輸入信號除正常PC調節器調節信號外,還疊加有一個二位式偽隨機M序列信號PRES,由ST

21、D工控機參數在線辨識產生。辨識系統運行狀態如下:水輪發電機組在三種典型工況下運行,分別是空載、帶地區小負荷、并入大電網。機組工作于空載運行時,轉換開關S接入“電氣手動”時,水輪發電機組呈現開環調節系統運行。機組工作于帶地區小負荷運行時,轉換開關S接入“PC調節器”輸出,整個系統是一個受命于給定值的負反饋調節系統,由于負載較輕,參數在線辨識裝置的輸入基本上與“空載運行”相同。機組工作于“并入大電網”時,S仍撥在“PC調節器”輸出位置上,負反饋調節繼續有效,但辨識裝置的輸入卻不同于“帶地區小負荷運行”,由于機組的頻率同于外電網的頻率,辨識裝置的輸入為水輪機導葉開度和機組所帶的外部有功負荷。對于混流

22、式機組,在小波動工況下,轉速v(s)對導葉開度k(s)的傳遞函數表示成式中,T、T0分別是機組及引水道的慣性時間常數,e0、e、a、b均是水輪機組的特性參數。水輪發電機組啟動后,先空載運行,隨后切換到電氣手動運行,頻率基準50 Hz,此時實際空載開度約20%。輸入信號選用5級PRBS,單位游歷t=4 s,采樣周期為0.4 s,幅值取導水機構接力器全行程的2%,記錄1000次,用時6 min 40 s,記錄下三個完整的PRBS周期。數據處理時去掉穩態分量,得到機組頻率的相對變化曲線,如圖3-9(a)所示。使用三層BP神經網絡辨識,網絡結構選用321,學習率=0.65,初始連接權在0,1間隨機取值

23、,用基本BP算法得到的BP輸出如圖b)所示,圖 (c)給出了實際輸出與BP網絡輸出之間的差別,從差別極微可以看到,BP網絡能較理想辨識出水輪發電機組非線性動態模型。 3-9 水輪發電機組的BP動態辨識曲線(a) 實際機組頻率輸出變化;(b) BP網絡辨識結果;(c) 實際測出結果與BP辨識之差例2 煤氣加熱爐的BP動態辨識。煤氣加熱爐是典型的單輸入單輸出系統,輸入u(t)是煤氣流量,輸出y(t)是排除煙道中CO2的濃度。輸入輸出的數據能夠測得。模型的動態結構可以寫成 Y(k)=f(y(k1), y(k2), y(k3), u(k3), , u(k7)+cq1(k)式中,取模型的階次n=3,m=

24、5,時滯d=2。c、q、是系統結構參數。用來辨識的前向網絡選用三層,輸入層、隱層、輸出層的神經元個數分別為n1=8、n2=7、n3=1。在進行訓練前測得有289對u(i),y(i)數據對,可選擇其中200對訓練隱層(如果隱層選取10個神經元,則可選用170對數據進行訓練)。在訓練前,所有數據對應進行正規化處理。訓練使用帶修正項的BP算法,性能指標選擇均方誤差函數:兩種不同模型訓練后的辨識結果比較如表4-1所示。系統經過學習后,可將測量所得289對數據中的余下數據對與BP網絡的輸出進行比對,就可以測得使用BP網絡的辨識準確程度。圖4-10給出了BP網絡辨識結果及預報曲線,從圖中觀察到,預報時間較

25、長,但預報的準確程度較為滿意。網絡學習過程中均方誤差(MSPE)變化曲線如圖4-11所示。變化趨勢顯示出BP網絡能夠用于辨識,但與隱層神經元個數、輸入輸出階次等有密切的關系。圖 BP網絡辨識結果及預報(a) 辨識結果;(b) 預報圖 BP網絡學習過程中的均方誤差變化例3 多輸入多輸出動態系統的BP網絡動態辨識。現以兩輸入兩輸出系統為例介紹,設系統為一線性系統,傳遞矩陣為其中,A(z1)=1+0.883z1+0.471z2+0.083z3B11(z1)=3z13.5z21.5zzB12(z1)=z10.167z20.167z3B21(z1)=4z22z3z4B22(z1)=z10.167z20.

26、083z30.167z4系統輸入輸出分別為這時網絡輸入量設為14,分別是n1=3,n2=3,m1=4,m2=4。y1(k)和y2(k)用兩個神經網絡學習:y1網絡結構為9101,y2網絡結構為10121,辨識信號為010間的均勻分布隨機數,學習算法使用帶慣性項的BP算法:式中,、是相關系數,取=0.9,由輸出層或隱層選定,=0.3;yq是網絡的輸出值,作用函數為取40個樣本,兩個網絡分別學習8500次和8800次后的辨識結果如表4-2所示,表內數據已經經過轉換轉到區間(0,1)內取值。設u1=u2=0.5作為系統常值輸入,系統的5組輸出及測試網絡后所得輸出,列在表4-3中。最大相對誤差(0.6

27、610.543)/0.6612.7%,表示神經網絡辨識的精度相當高。3.4 多層前向網絡辨識中的快速算法在多層神經網絡極值訓練中,BP算法存在收斂較慢及局部極小點問題。為此提出了多種修改算法,力圖克服收斂較慢或避免陷入局部極小點。這些修正算法有增加慣性項、改變學習率或學習步長、引入高階導數項等等。本節討論使用遞推最小二乘法(RLS)學習訓練神經網絡的連接權系數,這種方法有較快的收斂速度。1. 神經元模型考慮有M層的多層前向網絡,輸入層為1層,輸出層為M層,其中的每個神經元均可表示成式中,n是第n層神經元個數,wij是第i個神經元到第j個神經元的連接權,f()是單調單值連接的S型函數,且每個神經

28、元的輸入輸出關系可以分解成線性輸入或非線性輸出兩部分,從線性輸入到非線性輸出之間存在一一對應的映射和逆映射關系。其中逆映射可將輸出信息轉換到輸入端,使用線性參數估計技術對神經網絡的連續權進行訓練,便于使用遞推最小二乘法。2. RLS訓練算法設輸出層神經元的期望輸入r(k)和期望輸出d(k)之間有一定的關系:d(k)=fr(k)對d(k)的逆變換可寫成r(k)=f1d(k)式中,f1()是f()的反函數。定義性能指標:式中,稱為遺忘因子。神經元的輸入輸出重新寫出如下:性能指標改寫成考慮到 令可得W的LS估計為W(k)=T(k)(k)1T(k)R(k)相應的RLS估計為 WL(k)=WL1(k)+

29、ML1(k)rL(k)XTL1(k)WL1(k1)式中,遞推時取初值:PL1(0)=(103106)I對于中間層每個神經元,定義其期望輸入與期望輸出滿足d(k)=fr(k)定義反傳誤差為it(k)=dit(k)xit(k)=fnetit(k)rit(k)netit(k)相應神經元期望輸入為Rit(k)=f1dit(k)定義式中,(k)為非負遺忘因子。在t=L1時,對第i個神經元,由于令反傳誤差L(k)=rL(k)nL(k)及L1(k)=L(k)wiLf netiL(k)有求解此式,可得神經元i的連接權系數RLS估計:WL1(k)=WL1(k1)+WL1由此類推直至t=1,可得RLS估計如下:W

30、it(k)=Wit(k1)+Mt1(k)rit(k)netit(k)由此可計算各神經元的輸出。現舉一個仿真實例,設非線性系統為式中,u(k)=sin(2/250)。u(k)和y(k)是該系統的輸入與輸出,而該系統的結構未知。現在使用4層前向網絡描述該非線性系統,4層的節點分別為520101,輸入層的輸入矢量 X0T (k)=y(k1), y(k2), y(k3), u(k1), u(k2)取初始值Pi(0)103I,t=0.99,使用RLS估計,經過400步學習后均方誤差收斂且小于0.075,學習時間小于31 s。圖3-12和圖3-13分別是RLS估計均方誤差和BP算法均方誤差, 當比較兩條曲

31、線時, 能夠明顯發現, RLS估計只要較少的學習步驟,例如400步便產生收斂,誤差就能限制在一個事先確定的較小范圍。而BP算法要想達到相同的目的,約需4000步費時4 min 13 s(仿真結果),收斂才能達到0.1。如果要想達到RLS估計的收斂值0.075,則還需要更長的時間。圖3-12 RLS算法估計均方誤差圖3-13 BP算法估計均方誤差用BP算法估計神經網絡的連接權時,所用的算法為wij(k)=wij(k1) ait(k)xji(k)式中,it是反傳誤差,a是學習步長。輸出層的反傳誤差為L(k)=fn(k)d(k)x(k)中間層的反傳誤差為it(k)=fn(k)jt(k)wji(k1)

32、步長為 a(k)=amax+(aminamax)e 3.5 非線性模型的預報誤差神經網絡辨識除RLS外,還有諸多提高收斂速度的算法,預報誤差算法就是其中的一種。3.5.1 非動態模型建模預報誤差算法簡稱RPE算法,它具有預報精度高、收斂速度快等特點,同樣該算法也能用于非動態模型的神經網絡建模。考慮圖4-14的三層前向網絡,設三層結構n1n21,輸入層有n1個神經元,隱層有n2個神經元,輸出層僅一個節點。圖3-14 三層前向網絡網絡輸入為xi,i=1,2,n1。網絡的輸出為y。zj和qj是隱層中第j個神經元的輸出值和閾值,j=1,2,n2。Wkij表示第k1層中第i個神經元,對第k層中的第j個神

33、經元的連接權。隱含層中節點的作用函數取成S型函數:網絡的輸入輸出關系為y(t)=WXX=g(WijXi+Qi)該網絡能辨識的非線性系統具有如下的輸出輸入關系: y(t)=fy(t1),y(tm),x(t1),x(tn)+d(t)其中,y(t)和x(t)是非線性系統的輸出和輸入;m與n分別是輸出與輸入的最大滯后;d(t)是影響該系統的非線性隨機因素,如隨機噪音;f()是非線性函數。在三層前向網絡中,設Q=Q1,Q2,QnT是神經網絡中待求的神經元閾值,n1+n2是待定的神經元個數。e(t)是實際輸出與神經網絡輸出之差,又稱為偏差。訓練算法讓Q1Qn在一定的條件準則下得到確定值。RPE算法是一種將

34、預報誤差極小化來估計參數的方法。算法中同樣需要準則函數。這里不妨設準則函數為式中,N是數據長度,e(t)是預報誤差。有了準則函數,RPE算法便可沿著J的高斯牛頓(Gauss-Newton)方向搜索,不斷修正未知參數矢量,直至使J趨近于最小。3.5.2 遞推預報誤差算法遞推預報誤差算法的原則是先選定參數矢量的修正算式,再求對Q的一階及二階微分。設修正算式為Q(t)=Q(t1)+S(t)Q(t1)式中,(Q)就是高斯牛頓搜索方向,可定義成(Q)=H(Q)1 J(Q)其中,J(Q)是J(Q)關于Q的梯度,H(Q)是J(Q)的Hessian矩陣。J(Q)和H(Q)表示成它們分別是J(Q)對Q的一階和二

35、階微分。1. 遞推預報流程遞推預報誤差算法如下式:e(t)=y(t)yq(t)式中,(t)是遺忘因子,對收斂速度有影響。改變的方法是迭代開始時取(t)1;t時取(t)1。或設置的初值,例如取(0)=0.950.99,而后有(t)=(0)(t1)+(1(0)若將RPE用于三層前向神經網絡,隱層取一層,相應的為n1矩陣,矩陣中各元素為由此設計的RPE流程如下:(1) 用較小隨機值初始化連接權值和閾值,得:W(0)=a Random()Q(0)=b Random()(2) 選P(0)為對角矩陣。(3) 按照網絡輸入分別計算隱層節點x1k及輸出節點yq的值。(4) 形成陣并求預報誤差e(t)、P(t)

36、陣及參數序列Q(t)。(5) 重復以上(2)(4),直至收斂。從以上的分析可以看到,RPE算法實際上是一種求高階導數的學習算法。在計算H(Q)的逆矩陣上使用遞推最小二乘法,與基本BP算法(僅利用一階導數)相比,高階導數的計算加快了收斂速度。2. RPE算法的具體應用例1 帶電流內環和轉速外環的PWM直流脈寬調速系統,具有如圖4-15所示的系統結構。轉速環處于外環,能有效克服環內出現的干擾以及外特性引起的速度變化。但電機轉速卻會因電機運行工況、電源電壓的波動或畸變、機械負荷的突然變化而發生改變,因此雙環調速系統本身是一個非線性時變系統。另外,還有許多非線性因素也廣為存在系統中,如:時磁滯、齒輪間

37、隙、庫侖摩擦、調節器限幅、脈沖調制放大器和運算放大器飽和產生的非線性等。圖43-15 轉速電流雙閉環PWM調速系統在轉速環基礎上增加位置環,將構成位置伺服系統,該系統有一系列典型的非線性特征,這是PWM調制所產生的。為了動態辨識轉速環,便于使用RPE算法,選用321的神經網絡結構。同時選擇輸入信號為2 V0.2 V,其中2 V是系統轉速環給定值,對應需要恒定運轉的速度,0.2 V是迭加的幅值,用于考慮一定的波動允許范圍。輸入信號可用矢量表示成X(t)=u(t1),u(t2),y(t1)T輸出信號為測速發電機的輸出電壓。在用RPE算法訓練900次后,神經網絡預報輸出及殘余序列實測曲線如圖3-16

38、所示。實測階躍響應擬合曲線如圖3-17所示。圖3-16 神經網絡預報輸出及殘余序列實測曲線圖3-17 實測階躍擬合曲線對比擬合曲線可以看到,神經網絡辨識PWM系統動態模型的效果令人滿意。通常為了評價模型的擬合精度,常引入誤差指數E,定義成式中,e(t)是偏差值,為系統實際輸出與神經網絡輸出之差。改變隱層節點數目后,不同的E值如表4-4所示。輸入矢量及輸入節點不同時的E值如表4-5所示。由此可見,選擇如此結構的神經網絡模型較為合理,輸入節點數及輸入矢量的合理搭配在很大程度上能影響擬合精度。通常情況下合理選擇隱層節點數量,適當增加輸入節點數量及延遲y(t),對提高辨識精度較為有利。例2 設SISO

39、非線性模型為選用辨識的神經網絡結構為211,輸入信號為六級偽隨機二進制序列PRBS,用u(t)表示,設輸入矢量為X(t)=u(t1),y(t1)T參數矢量(t)和分別為(t)=1,2,3,4T=1,2,3,4T遞推1000次后得參數矢量(t)=0.4999,0.3999,0.09985,0.6000T ,表示結果十分理想。如果改用BP算法,因學習率等一系列參數難于折中表示,得不到滿意結果。4.6 非線性系統逆模型的神經網絡辨識無論是線性系統還是非線性系統,都存在一個可逆性問題。在正常情況下,對系統進行分析的主要任務就是:系統在一個控制信號的作用下,將會產生什么樣的輸出,產生什么樣的運動軌跡。例

40、如一個系統可用以下方程表示出來:y=f(u,x,T)其中,y是輸出,u 是輸入,x是狀態變量,T是系統的控制作用。當輸入一定、系統狀態不變時,系統輸出y應直接與控制作用T有關,式中的f(u,x,T)事實上是系統在外力作用下的非線性函數。正常的系統分析過程是已知控制信號T(t),確定其運動軌跡u(t)和x(t)。已知系統的運動軌跡u(t)和x(t),尋找控制信號T(t),被稱為系統分析的逆過程。系統分析過程與逆過程如圖3-18所示。圖3-18 系統分析過程及逆過程(a) 系統分析過程;(b) 系統分析逆過程3.6.1 系統分析逆過程的存在性在一個控制系統中,如果已經知道了運動軌跡u(t)、x(t

41、),要想求出它的控制信號T(t),首先必然要問:這個控制信號是否存在? 系統是否可逆?在求解系統運行的正向過程和逆向過程中,神經網絡具有的獨特的作用與功能,尤其是對于非線性系統。神經網絡的學習方式有監督學習和非監督學習兩種。監督學習中存在導師信號,導師信號的功能恰好是演示期望的運動軌跡,而不是起控制作用的,不是直接教會網絡實施運動神經的控制。由此可見,在清晰明了的導師信號前,系統的運動軌跡也清晰可見,尋找相應的控制指令更加方便與直觀。事實上,神經網絡在獲取了所期望的運動軌跡后,將產生相應的各種運動神經指令,傳送給網絡的各層以實現這個期望值,并由相應的感覺系統完成測量。在比較實際軌跡與期望運動軌

42、跡的基礎上,神經網絡產生一個它們之間的差值。如果將這個差值作為導師信號完成對相應神經網絡的訓練,那就能從神經網絡的輸出中產生“控制信號”,從而實現系統分析的逆過程。一個系統是否可逆,是否能用神經網絡建立逆模型實現辨識,與系統自身的性質密切相關,與系統是否線性無關。線性系統的可逆性問題比非線性系統的可逆性問題要簡單得多。線性系統的可逆性問題實際上是一個能控性問題,凡具有能控性的系統,可逆性必存在,系統必然可逆。例如對單變量線性系統,可逆性十分清晰;對多變量線性系統,利用能控性判據也能得出可逆存在。非線性系統的可逆性問題則要復雜得多,目前尚無一個普遍適用的方法對應所有的非線性系統,既然無通用解法,

43、只能遇到一個,辨識一個(非線性系統)。現考察離散單輸入單輸出非線性系統,設該系統的輸入和輸出分別是u(k)R,y(k)R又設mi,系統的傳輸關系為y(k+1)=fy(k),y(kn),u(k),u(km)式中,f()是輸出、輸入之間的函數關系。系統可逆性有如下定義:如果存在R(n+m+1)的子集A,且y(k),y(kn),u(k1),u(km)TA當任意一個u(k)=u(k)時,必有fy(k),y(kn),u(k1),u(km)fy(k),y(kn),u(k1),u(km)則稱系統在點y(k),y(kn),u(k1),u(km)處是可逆的,否則稱系統在該點處是奇異(即不可逆)的。對于奇異系統,

44、有fy,u=fy,u上述對系統可逆性的定義僅僅定義了系統在某些點上是可逆或奇異的。系統的奇異是一種極端情況,非線性系統在某一點上可逆并不等于說該系統就是一個可逆系統,這是因為系統在某些點上是可逆的,但在另一些點上卻是奇異的。介于可逆系統與奇異系統之間的系統是存在的,一個系統能夠在某些點表現出存在兩個不同的輸入u(t)u(t),但能引起相同的輸出,例如帶滯環特性的閥門就有這種特征。系統可逆性的充分條件由下述定理給出。定理 如果對于u(k),fy(k),y(kn),u(k),u(k1),u(km)嚴格單調,那么系統在點y(k),y(kn),u(k1),u(km)T處可逆。只有在所有點處可逆都成立,

45、系統才是可逆系統。定理的證明較為簡單,由于系統嚴格單調,則f(y,u)f(y,u)表明系統在該點處單調。多值非線性系統不一定都是可逆系統。是否可逆就看它是否符合定理的三個條件。例如磁滯回線是否為可逆系統,可作如下分析:表面上看,磁滯的一個輸入對應兩個輸出,每個輸出可找到相應的兩個控制信號,似乎磁滯回線不可逆。但是磁滯控制有一個特征,就是有向性,升磁和消磁經過的路徑不同,如果是磁化過程,一個輸入僅對應一個輸出;反之,退磁過程是一個輸入僅對應一個輸出。必然能逆向辨識,由此可見磁滯回線是可逆系統,只是正向過程和逆向過程所走的路徑不同罷了。又如系統y=(u1)u(u+1)就是一個不可逆系統,它不符合定

46、理提出的三個條件,如y=0時,有1,0,1三個解。3.6.2 非線性系統的逆模型非線性系統的逆模型研究包括逆系統建模及逆模型辨識兩部分內容。逆系統建模的主要任務是對非線性系統的逆運行過程建立一個數學模型;逆模型辨識是對非線性系統的逆運行進行辨認識別,看其與哪一種已知模型更接近。神經網絡辨識是逆模型建立和辨識的核心內容。本節所述逆模型的建立方法突出了神經網絡的功能與作用。非線性系統的逆模型建立方法有如下幾種:直接逆系統建模、正逆系統建模及逆正系統建模。1. 非線性系統逆模型的直接建立非線性系統逆模型的直接建立依靠直接逆系統建模法,該方法又稱為泛化學習法。泛化學習的本意是網絡訓練所覆蓋的范圍要比未

47、知的逆系統所可能涉及的范圍大一些,這樣設置有利于獲得更佳的逆動力學特性。逆模型直接建立的結構框圖如圖4-19所示,系統的給定值為u,輸出值為y,神經網絡的訓練信號取自一個誤差值e,e是系統輸入u和神經網絡輸出v之差:e=uv。圖3-19 逆模型直接建立神經網絡的輸入信號為系統的輸出信號y。訓練方法是:把未知被控對象的輸出y作為神經網絡的輸入,神經網絡的輸出v如果不等于系統的輸入u,將產生偏差e對網絡進行訓練,直至v=u為止,或uv小到一個允許的范圍為止。用于直接逆系統建模的網絡較多,有BP網絡、CMAC網絡、多層感知器等。不同的網絡結構有不同的優缺點,如BP網絡,優點是訓練簡單、結構簡練,不足

48、之處是不能快速進行,要想在線實時獲取逆動力學模型,就有一定難度。2. 正逆系統建模非線性系統逆模型還可以依靠“正逆系統建模”的方法獲得,這種方法的要點是在非線性系統的正模型(未知對象的動力學模型)基礎上,獲得逆動力學模型,有三種方案值得考慮。(1) 被控對象逆模型建模,建模示意圖如圖4-20所示。本方案中的神經網絡作逆系統辨識用,它的輸入是整個系統的輸入給定值u,系統的實際輸出是未知被控對象的輸出y,神經網絡的訓練信號e取自二者之差:e=yu圖3-20 被控對象逆模型建模這種建模方法存在一個嚴重的缺憾,那就是要求知道未知對象的模型,恰恰在系統中它又是未知的,解決這個問題的方法是將未知對象改用直

49、接自適應控制器,避免可能出現的致命差錯。(2) 正模型逆系統建模,建模示意圖如圖3-21所示。本方案中的神經網絡用于模擬被控對象的正模型(圖4-21中的“正模型”),在前饋通道上的神經網絡用于辨識逆模型。神經網絡的訓練信號是兩值之差,一個值u是神經網絡的期望輸入,另一個值v則是正模型的期望輸出,e=uv圖3-21 正模型逆系統建模誤差e用來訓練辨識逆模型的神經網絡連接權值。本方案的突出優點是正模型一旦建立便成為已知條件,未知被控對象的各種運算都能從正模型計算出來。方案的不足之處在于逆模型的精確程度依賴于正模型的精確程度,如果正模型本身精度低、誤差大,相應逆模型也不能正常反映被控對象的實際情況。

50、產生這種狀態的直接原因是被控對象不在逆系統的反饋回路中,這是系統結構造成的,沒辦法解決。(3) 被控對象正模型逆模型建模,建模示意圖如圖3-22所示。圖3-22 被控對象正模型逆模型建模本方案以直接建模為基礎,神經網絡作逆模型辨識用,它的訓練信號來自于兩值之差:一個值是它的期望輸入u,另一個是被控對象的實際輸出y,e=uy在調節過程中,未知被控對象使用正模型神經網絡代替。未知被控對象處在逆系統的反饋環中,通過正模型能反映出未知被控對象的真實情況,避免出現“正模型逆系統建模”方案的弊病。本方案的第二個優點在于:如果正反模型都采用BP網絡,則逆模型神經網絡在誤差回傳時的最后一層誤差,通過正模型神經

51、網絡的誤差回傳傳遞。既然正模型神經網絡的功能僅僅只是回傳誤差,那么即便存在誤差也無關緊要,僅影響收斂速度而不至于影響是否收斂。3. 逆逆系統建模這種建模方法使用兩個逆系統模型,與未知被控對象一起構成訓練回路。處于系統前饋通道上的神經網絡,功能是一個控制器,控制未知被控對象,讓被控對象產生相應的輸出。逆逆系統建模示意圖如圖4-23所示。圖3-23 逆逆系統建模逆模型的輸入信號e為神經網絡控制器的輸入u與未知被控對象的輸出y之差:e=uy如果神經網絡控制器與未知被控對象的逆動力學特性不相等,則逆模型的輸入不為0,神經網絡控制器的訓練將繼續進行。只要系統中的逆模型是未知被控對象的另一個逆模型,就可以

52、利用它來計算出未知被控對象應該具有的輸入估計值。當e為0或進入一個事先預定的小的正數時,連接權訓練才可停止。逆逆系統建模中的“逆模型”可采用如下幾種形式:第一種,未知被控對象的線性化逆動力學模型,可通過最小二乘法、相關分析法等傳統辨識方法獲得。既為線性模型,就比較容易從輸出反推出輸入,辨識準則為線性化的程度。第二種,未知被控對象的非線性逆動力學模型,可通過機理分析未知被控對象的結構或實驗獲得,也可由神經網絡直接辨識逆模型而獲得。第三種,神經網絡控制器的復制模型,可通過神經網絡控制器在訓練以后獲得,訓練過程是控制器每學習完一步,就可以復制出完全相同的連接權。使用這種模型時要注意:神經網絡控制器與

53、逆模型在初始值、參數及結構等方面完全相同。本節介紹了非線性系統逆模型的三種建模方法,其中直接逆系統建模簡單直觀,但不易在線操作。另外兩種方法將逆模型與神經網絡控制器聯系在一起,成為系統閉環控制的一個組成部分。3.6.3 基于多層感知器的逆模型辨識采用多層感知器的非線性系統辨識,是直接逆系統建模的一個具體應用。在非線性系統的神經網絡中使用多層感知器,是因為其具有學習速度快、計算工作量快等優點,這些優點是相對于BP網絡而言的。1. 基本結構做開關作用函數的單層感知器結構如圖4-24所示。它的學習算法有以下幾種。(1) WidrowHoff 學習規則:(2) 修正的學習規則: (3) 高收斂階學習規

54、則:各種學習規則中都有XRn,是輸入矢量; W(k)Rm是連接權矢量,e(k)是期望輸出與實際輸出之差,是學習率,sgnX是符號函數陣:sgnX=sgnx1,sgnx2,sgnxmT式中,符號函數為圖3-24 單層感知器開關結構示意圖2. 高收斂階學習規則采用高收斂階學習規則的單層感知器,在固定模式的訓練誤差e由下式決定:e(k+1)=f,e(k),e(k1)e(k)按f()的取法,e(k)允許取超線性的1.618階、2階、3階或更高階次。對于這一學習規則,證明如下。首先設單層感知器的輸入/輸出特性為y(k)=wixi=WT(k)X固定模式時有則e(k+1)=f,e(k),e(k1)e(k)若

55、取f,e(k),e(k1)=e(k1)則e(k+1)=e(k1)e(k)設誤差初值為e(0)和e(1),且e(0),e(1)=|1,對任一k,都有e(k+1)或當k時,e(k)0,證明學習規則收斂。再看e(k+1)=e(k1)e(k),若令該式滿足差分方程:z(k+1)=z(k)+z(k1)方程的兩根為1=1.618及2=1.618,因此有比較后得收斂階1,為超線性的1.618階。如果取f,e(k),e(k1)=2e(k),則有e(k+1)=e(k)2 取滿足則e(k+1)具有2次收斂階。對于3次或高次收斂階,亦可采取同樣的取法。3. S型作用函數的使用不用開關型作用函數,改用S型作用函數,多

56、層感知器可采用BP算法,這是因為開關型作用函數不可微時,反傳學習法將無法使用。設三層感知器的結構如圖4-25所示。圖中X、Y0分別是三層感知器的輸入和輸出,Y=、YH分別是輸入層和隱層的輸出,Z1和ZH分別是輸入層和隱層在經過非線性開關函數后的輸出。設三層結構為n1、nH和n0,連接權矩陣W1、WH、W0的維數分別為n1n,nHn,mnH。圖3-25 三層感知器輸入輸出特性如下:輸入層: 隱層: 輸出層:連接權訓練用的誤差矢量為E(k)=YdY0(k)其中,Yd是神經網絡的期望輸出。連接權算法可表示成W1(k+1)=W1(k)+U1(k)WH(k+1)=WH(k)+UH(k)W0(k+1)=W

57、0(k)+U0(k)算法收斂性可表達成U1、UH、U0,分別取值為U1、UH、U0統一稱為連接權更新矩陣。誤差矩陣E(k)滿足差分方程:E(k+1)=fA,E(k),E(k1)E(k)式中,A,E(k),E(k1)均為對角矩陣:A=diaga1,a2,anE(k)=diage1(k),e2(k),en(k)當f()的取法不同時,E(k)收斂階數隨之不同,一般值有1.618、2、3或更高。S型作用函數算法收斂性證明過程與S開關型函數算法收斂性證明過程相同。首先給E(k)一個能滿足的關系式:又則將U0T(k)表達式代入并整理,得A,E(k),E(k1)均為對角矩陣時,矢量差分方程由幾個差分方程組成

58、,第i個方程為ei(k+1)=fai,ei(k),li(k1)ei(k)其中,i=1,2,n。當f()的取法不同時,E(k)的收斂階數可分別為1.618、2、3或更高。4. 動態模擬型辨識動態逆模型辨識結構圖如圖3-26所示。該系統由5部分組成:未知待辨識系統、感知器、學習算法、延時電路及誤差產生環節。其中未知待辨識系統既容許線性系統,也容許非線性系統;感知器既可以是單層網,也可以是多層網;學習算法使用本節討論過的算法。學習過程就是感知器的訓練過程,訓練方法由以下幾個因素描述:(1) 一個狀態矢量W(k),反映了網絡層間的連接權;(2) 用h()定義的非線性映射單輸出誤差e(k);圖3-26

59、動態逆模型辨識結構圖(3) 一個非線性動態離散差分方程,其輸入量為連接權值改變量。用數學式表示成W(k+1)=fW(k),U(k)e(k)=hW(k)式中,連接權陣W(k)Rn,輸入陣U(k)Rm,誤差e(k)R。定義使誤差為0的連接權陣W組成的集合為h1(0)=WRn|e=h(W)=0h1(0)的含義在于:如果存在一個控制規律U(k),使得系統運動過程中對e(k)0滿足關系式|e(k+1)e(k)|e2(k)則稱在h1(0)上存在一個擬滑動模型。無論單層感知器或多層感知器,只要學習率a選擇恰當,總有|e(k+1)|e(k)|,因此有 |e(k+1)e(k)|e2(k)能夠找到期望的連接權陣W

60、,使神經網絡實現期望的輸入輸出映射,學習算法必然收斂。考察線性對象,狀態方程為x1=x2 x2=2x12x2uy=x1非線性對象的輸出狀態為使用單層網絡,輸入狀態數n=6,X(k)的分量是y(k)輸出的延遲部分:X(k)=y(k),y(k1),y(k5)T 使用多層網絡,各層神經元個數(以三層為例)為331,輸入狀態數仍然為n=6。控制信號u(k)是單位階躍、斜坡函數、正弦函數的合成:再看連接權,單層網絡的初值為W(0)=0.5,0.5T,多層網絡的初值為0.1,0.1之間的隨機值。對線性系統,還有采樣周期0.1 s,學習率a=0.8。單層網絡用于線性系統和非線性系統的建模實驗仿真結果如圖3-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論