臧玉萍,張 洋,孫 博
ZANG Yu-ping1,ZHANG Yang1,SUN Bo2
(1.長春工業大學 人文信息學院,長春 130122;2.長春工業大學 基礎科學學院,長春 130012)
獨立式汽車燃油加熱器,是一種用于對工作在低溫條件下的汽柴發動機進行預熱的小型燃油內燃機系統。該系統一般由燃油供給、電控點火、助燃空氣供給、燃燒及熱交換、水循環、暖風循環、電控單元等主要部分構成。對加熱器的控制目標之一是通過調整油泵的燃油供給量和風機的助燃空氣供給量使發動機冷卻液溫度按預定的曲線變化。加熱器-負載系統是一種具有滯后、系統外部不確定擾動引起時變等特征,且難以建立確定數學模型的被控系統,由此控制模型的設計必須解決系統模型在線辨識的問題。
系統辨識問題本質上是一個優化問題。傳統辨識算法的基本思想,是通過建立一個與系統輸入和輸出響應相關的參數模型,將辨識問題轉化為模型的參數識別問題,典型方法如最小二乘法、梯度校正法、極大似然法等。此類方法,在對具有不確定參數的線性、時不變系統的辨識和自適應控制問題中取得了很大的進展,但對于非線性、時變、滯后系統則還很難實行有效的辨識和自適應控制[1]。
神經網絡建模方法的一大特點是“黑箱”特性,即不需要對系統的內部結構、動力學特性做任何分析,只需要知道輸入輸出即可[2]。神經網絡用于系統辨識的本質,是選擇一個合適的神經網絡模型來逼近實際系統。辨識過程中,通過直接學習系統的輸入/輸出數據,使誤差函數達到最小,從而歸納出隱含在系統輸入/輸出數據中的關系,從而完成對原系統的辨識。
具有單輸入輸出關系的SISO(Single Input Single Output,單輸入單輸出)系統是一類工程中普遍存在的控制對象。設具有此特征的SISO系統:

式中,u(k)、y(k)為由第k次采樣得到的系統輸入和輸出;nu和ny為u和y的階次;f[.]為非線性函數。

圖1 SISO系統三層前向神經網絡辨識器拓撲結構圖
絡辨識器模型NNI的輸入-輸出關系可表述為:

式中,k為采樣序號,k=0,1,2…;

f[.],g[.]分別為隱含層、輸出層傳輸函數,且有:

式(2)~式(6)給出的三層前向辨識器模型中的權值/閾值系數可借助反向傳播學習算法確定[1]。修正權值系數的過程本質上是一個搜索過程。基于理想辨識模型將使系統輸出y和辨識器預報輸出之間誤差最小的思想,及辨識準則:

可建立指標函數:

并由此得到權值系數的調整算法:

式中,η∈[0,1]為學習速率;α∈[0,1]為動量系數。引入動量系數是為了加快搜索過程,使其快速收斂于全局最小。
LLYCO-30KW型加熱器是雷克汽車供暖有限公司生產的獨立式燃油加熱器,實驗研究表明,該加熱器在負載不同的情況下,開環響應曲線表現出明顯的S形特征,負載不同,滯后時間不同,系統特性隨溫度的變化具有明顯的緩時變特征,本文以LLYCO-30KW型加熱器為對象設計神經網絡辨識器。
式(2)~式(6)以及圖1給出了SISO系統三層前向辨識器的基本理論構架,工程實踐中需進一步確定網絡輸入層向量和隱含層神經元數量。
對于如式(1)給出的SISO系統,根據系統輸入u和輸出y的階次nu和ny確定輸入向量元素數。對于響應曲線具有明顯S形特征的一類系統用三階函數加以描述。記辨識器輸入層輸入向量為p,輸入u的階次為nu,輸出y的階次為ny,總節點數為nI,則有:

式中,y(k)為第k次采樣得到的系統輸出值;u(k)、u(k-1)、u(k-2)分別為第k、k-1、k-2次采樣得到的系統輸入值。
辨識網絡隱含層神經元設計問題,與問題域密切相關,目前還沒有一種可行的理論方法可借鑒,實踐中通常是采用經驗和實驗的方法。對于本工作所涉及的高階非線性研究對象而言,一般認為如下一些原則對隱含層拓撲結構設計具有借鑒意義:
神經元數量不少于輸入數。
增加神經元數量有利于提高預測精度,但同時會由于結構復雜度的增加而增加計算時間,降低時間效率。
減少神經元數量會加大預測誤差,同時也會由于預測值不能很快的收斂于目標值而增加計算時間,降低時間效率。
過多的神經元數量會增加過擬合的風險,降低魯棒性。
基于上述考慮,本工作針對辨識網絡隱含層設計問題,對含有不同隱含層神經元數的辨識網絡進行了實驗研究。實驗結果表明,由3~5個神經元構成的隱含層網絡,均可對本工作所對的目標系統實現有效的辨識;其間的區別在于簡單的隱含層結構(如3神經元模型)有利于減小初始誤差,但5神經元模型的辨識收斂速度則明顯優于3神經元模型。而更復雜的隱含層結構,從各方面考慮都是不利的。
神經網絡辨識器工作過程中,首先需要對網絡權值系數進行初始化賦值[3,4]。通常情況下,可采用一組非零的隨機數作為網絡權值系數的初值。對被測目標系統的辨識、黑箱建模過程的本質是在一組由無窮多個備選模型組成的解空間中搜索出一個次優解(或滿意解)。隨機初始化權值系數的方法,相當于在解空間中隨機選取一點作為搜索起點。顯而易見,由隨機起點收斂到接近次優解(或滿意解)所在位置需要一段時間,而若能以接近次優解(或滿意解)所在位置作為搜索起點,無疑會減少搜索步次,加快收斂速度,進而提高辨識器的時間效率。而對于實時在線辨識的應用目標而言,時間效率的提高有著重要的意義。
一種解決此問題的思想是借助于先驗知識選擇一組參數作為辨識網絡的初始值。加入先驗知識相當于減小了神經網絡函數類的VC維數[5],在神經網絡中使用任何一種先驗知識都能改進網絡的泛化能力。與此同時,引入先驗知識后的神經網絡,既可以滿足一定的過程特性(增益、單調、凸性等),也能保證可靠的安全性(避免零增益和增益反轉)[6]。考慮到導致加熱器系統模型變化的主要原因為外部環境條件的變化,而一般情況下此時變過程為一緩變過程,由此可以利用前次辨識得到的系統模型參數作為先驗知識初始化網絡權值系數。可以預見,此權值系數初始化模型在最不利的情況下等價于隨機數初始化模型;而在一般多數情況下將表現出更優良的時間效率。
基于上述思想,本工作在系統辨識器中增加了一個用于保存前次辨識得到的系統模型參數的知識庫模塊,作為先驗知識引導本次辨識網絡權值系數。知識引導學習算法的系統辨識器框圖如圖2所示。
圖3為5神經元模型在兩種初始化條件下辨識性能的比較,其中圖3(a)為采用隨機算法初始化網絡權值系數的辨識誤差曲線,圖3(b)為采用先驗知識引導算法初始化網絡權值系數的辨識誤差曲線。分析實驗結果可見:基于先驗知識的網絡權值系數初始化模型對辨識器性能有明顯改善作用;知識引導模型的最大辨識誤差降低至隨機模型的30%左右;辨識響應速度也有所提高。

圖2 知識引導學習系統辨識器結構框圖

圖3 兩種初始化條件下5神經元結構辨識器辨識性能比較
其中:(a)為采用隨機算法初始化網絡權值系數的辨識誤差曲線;(b)為采用先驗知識引導算法初始化網絡權值系數的辨識誤差曲線。
式(2)~式(6)與圖1給出的SISO系統三層前向神經網絡辨識器的輸出為第k+1次循環時系統的預報輸出實踐中還需要以的形式(即第k+1次循環系統預報輸出對第k次采樣得到的系統輸入值的偏導數)作為系統輸出,由式(2)~式(6),可導出的計算式:


在前述討論基礎上,可構建加熱器系統SISO三層前向神經網絡辨識器NNI,拓撲結構如圖4所示。為方便后續仿真計算起見,圖中采用了Simulink仿真器符號系統。其中:
隱含層由5個神經元構成IW為隱含層5×4權值系數矩陣。b1為隱含層5×1偏值系數向量。n1為隱含層5×1累加器輸出。f[.]為式(3)~式(7)所定義的隱含層雙曲正切傳輸函數。a1為隱含層5×1輸出向量。
輸出層由1個神經元構成。IW為輸出層1×5權值系數矩陣。b2為輸出層1×1偏值系數向量。n2為輸出層1×1累加器輸出。g[.]為式(3)~式(8)所定義的輸出層傳輸函數。為辨識器預報輸出,1×1輸出向量。為第k+1次循環系統預報輸出對第k次采樣得到的系統輸入值的偏導數,1×1輸出向量。
辨識器在線建模算法如下:
調入知識庫,讀取:輸入層節點數nI;隱含層節點數Q;學習速率η;

圖4 加熱器系統SISO三層神經網絡辨識器拓撲結構
動量系數α;隱含層權值系數矩陣IW,偏置系數向量b1;輸出層權值系數向量IW,偏置系數向量b2;采樣序號k=0;輸入向量初始化p1=(0,0,0,0);
讀當前時刻輸入/輸出采樣值u(k),y(k);
輸入層輸入向量p1賦值,
計算隱含層累加器輸出:

計算隱含層傳輸函數輸出:

計算輸出層傳輸函數輸出:


修正隱含層權值系數向量:

讀停止指令;若指令繼續,跳轉至下一步;若指令停止,跳轉至式(13);
采樣序號k=k+1;
返回至式(3);
保存IW、LW至知識庫;
退出。
利用MATLAB-Simulink仿真器平臺,對3.3節加熱器系統辨識模型和3.5節在線建模算法進行仿真調試。系統辨識器NNI仿真結果如表1所示,仿真曲線及仿真誤差曲線如圖5所示。
圖5左圖為燃油加熱器系統辨識Simulink仿真曲線。圖中階躍線為單位階躍信號,曲線為加熱器傳遞函數輸出曲線,*號線為辨識器辨識輸出。右圖為燃油加熱器系統辨識Simulink仿真誤差曲線。
分析NNI仿真數據可知:

表1 加熱器系統辨識器Simulink仿真結果

圖5 燃油加熱器系統辨識Simulink仿真曲線
NNI辨識器可以很好的實現對燃油加熱器的系統辨識任務,最大辨識誤差不大于1%,優于加熱器設計的精度要求。
NNI辨識器具有良好的響應特性。辨識誤差不大于1%的響應時間不大于3秒,優于加熱器設計對緩慢時變系統實時在線辨識建模的響應速度要求。
1)采用神經網絡對燃油加熱器系統進行在線辨識,設計了一種基于三層神經網絡模型的系統辨識器NNI。NNI以由第k次采樣得到的被控系統的輸入、輸出u(k)、u(k-1)、u(k-2)、y(k)作為辨識器的輸入,隱含層采用5神經元結構和雙曲正切函數作為傳輸函數,輸出層采用單神經元結構和線性傳輸函數,采用了基于反向傳播學習算法的網絡權值系數調整算法。實驗結果表明,NNI辨識器最大辨識誤差不大于1%,優于加熱器設計的精度要求;NNI辨識器具有良好的響應特性,辨識誤差不大于1%的響應時間不大于3秒,優于加熱器設計對緩慢時變系統實時在線辨識建模的響應速度要求。前向神經網絡辨識器NNI是解決具有三階非線性、時變不確定性、純滯后等特征的系統辨識問題的有效方法。
2)構建了知識引導學習模型,采用了先驗知識引導下的權值系數初始化策略,從而加快了搜索過程收斂于滿意解的速度,更有利于實現對控制對象的實時在線辨識和建模。
[1]Martin T.Hagan,Howard B.Demuth,Mark H.Beale.神經網絡設計[M].北京:機械工業出版社,2002.
[2]薛福珍,柏潔.基于先驗知識和神經網絡的非線性建模與預測控制[J].系統仿真學報,2004,16(5),1057-1063.
[3]Martin T.Hogan,Howard B.Demuth,Mark H.Beale.Neural Ntwork Design[M].北京:機械工業出版社,2002.
[4]Theodoridis,Koutroumbas.Pattern Recognition(2nd Edition)[M].北京:電子工業出版社,2004.
[5]Abu-Mostafa Y S.Hints and VC dimension[J].Neural Comut.1993,5:278-288.
[6]婁海川,蘇宏業,謝磊.融合過程先驗知識的遞歸神經網絡模型及其應用[J].化工學報,2013,64(5):1665-1673.