王龍剛 侯媛彬
(西安科技大學電氣與控制工程學院,陜西 西安 710054)
電加熱爐是一個非均勻分布、隨時間連續變化的溫度場,其爐溫不僅與時間有關,而且還與空間位置有關。嚴格地說,電加熱爐具有多變量、分布參數非線性、慢時變等特性,因此,很難建立精確的系統模型[1]。而傳統的控制理論往往要求建立精確的系統模型。近年來,智能控制理論得到了飛躍式的發展,它具有自適應、自組織和自學習等優點,所以被廣泛地應用到工業過程控制,并在工業控制中發揮著越來越重要的作用[2-3]。
本文以Cr-Fe合金作為合金試樣,采用粒子群優化BP神經網絡算法(以下稱BP-PSO算法)來辨識電加熱爐工作在500℃時的系統模型。同時,利用辨識得到的系統模型對爐內溫度的變化趨勢進行預測,從而為提高電加熱爐的穩態性能奠定基礎[4]。
BP-PSO算法是一種將BP神經網絡和粒子群優化(PSO)算法相結合,經訓練得到BP神經網絡權值的算法。由于BP神經網絡學習算法是一種采用隨機梯度最小均方的算法,導致其存在以下固有缺陷:容易陷入局部極小、泛化能力較弱、網絡的收斂速度較慢[5]。PSO算法是一種基于全局搜索的算法,能計算獲得全局最優解,不存在陷入局部極值等問題,且訓練效率更高。因此,采用BP與PSO結合的算法,既能發揮BP神經網絡的非線性應用,又能克服BP訓練神經網絡權值時容易出現的一些問題[1]。
BP-PSO算法是將BP神經網絡中的權值和閾值作為移動粒子,粒子的位置表示當前權值和閾值的大小。將神經網絡輸出與樣本的輸出誤差平方和作為粒子移動的適應度函數[6],即:

式中:y1為樣本的輸出值為神經網絡的輸出值;L為樣本的組數。JP值越小,粒子的適應度越高,神經網絡訓練的誤差越小。
為了計算得到神經網絡權值和閾值最優解,按照PSO算法迭代式(2)和式(3)[7],得到訓練神經網絡的權值和閾值。
在每一次迭代中,權值和閾值粒子通過全局最優值Gbest和局部最優值Pbest更新自己的移動位置,直到得到滿足要求的適應度J'P。

式中:V(n)為當前粒子的移動速度;X(n)為當前粒子的位置;ω為速度慣性權重,合適的ω可以使粒子群在全局和局部搜索時達到最佳;rand()為介于(0,1)之間的隨機數;c1、c2為學習因子;Gbest為種群粒子中最好適應度的粒子位置;Pbest為每個粒子自身移動過程中最好適應度的粒子位置[7-9]。
BP-PSO算法的辨識步驟如下。
①初始化:確定神經網絡的層數、各層的神經元的個數、激活函數;用rands()得到神經網絡各層的初始化權值和閾值,初始權值和閾值等于初始 Pbest和Gbest;用rands()得到初始速度值;歸一化樣本數據的輸入輸出值;設定速度慣性權重ω、學習因子c1和c2的大小。
②輸入樣本:按照神經網絡正向傳播計算得出神經網絡的輸出值,按照適應度函數JP計算神經網絡輸出與樣本輸出誤差平方和。如果JP<J'P,訓練結束;否則轉到步驟③。
③對于每個權值和閾值粒子,將其適應度與每個粒子的歷史最優適應度進行比較,適應度小者作為局部最優權值和最優閾值Pbest;將其適應度與整個種群最優適應度進行對比,適應度小者作為全局最優權值和最優閾值Gbest。
④更新權值和閾值粒子。按照式(2)和式(3),更新得到權值和閾值粒子移動位置和速度。
⑤由步驟④轉到步驟③。
⑥達到適應度要求或者最大迭代次數,訓練結束。粒子的全局最優位置就是神經網絡的最優權值和閾值。
電加熱爐結構如圖1所示。

圖1 電加熱爐結構Fig.1 Structure of the electric furnace
電加熱爐的爐內溫度變化不僅與加熱電壓有關,還與現場環境等多方面條件有關。在電加熱爐穩態工作時,無法保持爐內溫度的恒定不變。該溫度往往是在設定的溫度點上下振蕩。本文辨識的對象就是在電加熱爐穩態工作時,爐內溫度受環境影響隨時間變化的情況。
對工業實驗室測試合金鋼的電加熱爐,在其穩態工作的過程中,每間隔一段時間記錄上、下熱電偶測量的溫度值,將記錄數據作為辨識電加熱爐的樣本集。
將取樣的時間序列T作為輸入,上、下熱電偶溫度測量矩陣Y1和Y2作為輸出,建立“2-15-2”BP神經網絡模型。BP神經網絡結構如圖2所示。
圖2中,神經網絡輸入層的權值矩陣為W12×1,閾值矩陣為B12×1,激活函數為雙曲函數F(1)=tansig(·),輸出為 A12×1;隱含層的權值矩陣為W215×2,閾值矩陣為 B215×1,輸出為激活函數F(2)=tansig(·),閾值為 A215×1;輸出層權值矩陣為 W32×15,閾值矩陣為 B32×1,激活函數為線性函數,即:F(3)=purelin(·),輸出為 A32×1[10]。
由BP神經網絡的結構可知:


電加熱爐穩態工作在500℃時,每15 min記錄一次爐內上、下熱電偶的溫度測量值(數值分別用y1、y2表示),將電加熱爐連續穩態工作10 h的40組數據作為樣本測試數據。溫度的測試數據樣本如表1和表2所示。

表1 輸出y1的預測值Tab.1 The predictive values of output y1

表2 輸出y2的預測值Tab.2 The predictive values of output y2
分別采用BP和BP-PSO算法辨識得到系統模型,在此基礎上對電加熱爐的爐內溫度y1、y2變化進行預測。得到的輸出y1和y2仿真如圖3、圖4所示。

圖3 輸出y1的仿真圖Fig.3 Simulation graphics obtained by output y1

圖4 輸出y2的仿真圖Fig.4 Simulation graphics obtained by output y2
設預測時間從采樣時間31點起,到某個采樣時間點結束,預測值和實際值y1、y2的誤差都在±3 K內,則認為從預測時間31點到這個采樣點的時間范圍為預測值有效時間范圍。從上文分析可知,BP算法從采樣31點起,到采樣35點結束,預測值和實際值的誤差都在±3 K內,有效時間范圍為5×15=75 min;BP-PSO從采樣點31點起,到采樣38點結束,預測值和實際值的誤差都在±3 K內,有效時間范圍為8×15=120 min。此外,在采樣31點到35點的預測值有效時間范圍內,BP算法預測值與實際值的均方差為0.54,BPPSO算法預測值與實際值的均方差為0.31。由此可得,BP-PSO算法的預測值比BP算法預測值的有效性時間范圍延長60%;在相同有效的預測時間范圍內,預測值精度提高43%。
本文是以Cr-Fe合金作為合金試樣,應用BP-PSO算法來辨識電加熱爐工作在500℃時的系統模型。在建立模型的基礎上,對電加熱爐爐內溫度變化趨勢進行預測,最后將其與實際溫度值進行比較。試驗結果顯示,BPPSO算法的預測值比BP算法預測值的有效性時間范圍延長45 min;在相同有效的預測時間范圍內,預測值與實際值誤差均方差減少0.23。此外,這種算法也適用于辨識實驗室電加熱爐其他溫度點穩態工作特性。
[1]王順晃,舒迪前.智能控制系統及其應用[M]北京:機械工業出版社,2005:167-169.
[2]李人厚.智能控制理論和方法[M].西安:西安電子科技大學出版社,2007:1-3.
[3]李祚泳,汪嘉楊,郭淳.PSO算法優化BP網絡的新方法及仿真實驗[J].電子學報,2008,36(11):2224-2228.
[4]王安娜,陶子玉,姜茂發,等.基于PSO和BP網絡的LF爐鋼水溫度智能預測[J].控制與決策,2006,21(7):814-820.
[5]潘昊,侯清蘭.基于粒子群優化算法的BP網絡學習研究[J].計算機工程及應用,2006,42(16):41-43.
[6]魏星,舒乃秋,崔鵬程,等.基于改進PSO-BP神經網絡和D-S證據理論的大型變壓器故障綜合診斷[J].電力系統自動化,2006,30(7):46-50.
[7]李玉軍,湯曉君,劉君華.粒子群優化算法在混合氣體紅外光譜定量分析中的應用[J].光譜學和光譜分析,2009,29(5):1276-1280.
[8]Wang L,Zeng Y R,Gui C,et al.Application of artificial neural network supported by BP and particle swarm optimization algorithm for evaluating the criticality class of spare parts[C]∥Natural Computation(ICNC),2007:528-532.
[9]Wang P,Huang Z Y,Zhang M Y,et al.Mechanical property prediction of strip model based on PSO-BP neural network [J].Journal of Iron and Steel Research(International),2008,15(3):87-91.
[10]朱凱.精通MATLAB神經網絡[M].北京:電子工業出版社,2010:193-200.