楊琴 黃瀚
【摘 要】針對微波加熱腔內(nèi)媒質(zhì)溫度難實時測量的問題,給出了采用 BP神經(jīng)網(wǎng)絡(luò)算法對加熱媒質(zhì)溫度進行實時預(yù)測。本論文中首先完成了對媒質(zhì)溫度預(yù)測的三層 BP 網(wǎng)絡(luò)的設(shè)計。其中針對隱含層節(jié)點數(shù)多少的問題,文中首先利用經(jīng)驗公式估計出隱含層節(jié)點數(shù)目的范圍,然后通過設(shè)置循環(huán)對隱含層節(jié)點數(shù)目進行自動篩選,選出最佳的隱含層節(jié)點數(shù)。最后,在 MATLAB 的平臺上對其進行仿真,并對手動和自動篩選隱含層節(jié)點的網(wǎng)絡(luò)性能以及溫度預(yù)測結(jié)果進行對比分析。
【關(guān)鍵詞】BP神經(jīng)網(wǎng)絡(luò);隱層節(jié)點自動篩選;溫度預(yù)測
【Abstract】There is a difficult problem that the temperature of medium is measured in the microwave heating cavity. First of all, the BP neural network algorithm is used to predict the real-time temperature of heating medium. In this thesis, the design of three layer BP network for the prediction of mediums temperature is completed. About the node number problem of hidden layer, firstly the empirical formula is used to estimate the range of the node number of hidden layer, then the node number of hidden layer is screened automatically by setting the circulation. Finally, the simulation is done on MATLAB platform. The network performance and the temperature prediction results of the manual screening or the automatic screening are compared and analyzed.
【Key words】BP Neural Network; Screened hidden layer nodes automatically; Temperature prediction
0 引言
微波加熱過程中溫度的預(yù)測,一般采用數(shù)值模擬的方法,其中劉長軍等采用時域有限差分求解方程組的方法來模擬媒質(zhì)溫度隨時間變化的規(guī)律[1]。趙翔等采用矩量法、半解析法分別求解電磁場方程和熱傳導(dǎo)方程的方法來模擬溫度空間隨時間的變化規(guī)律[2]。此類數(shù)值模擬的方法,存在數(shù)值計算復(fù)雜,考慮因素不齊全等問題。而直接用溫度傳感器測量所導(dǎo)致的問題有:需對腔體開孔易造成微波泄漏;微波對傳感器輻射,易造成測量不準確和損壞;傳感器測量存在時延,不利于實時控制。而用微波功率計對反射功率的測量比溫度測量容易,且精度較高。因此本論文用反射功率、時間、初始溫度等對溫升產(chǎn)生影響的因素,結(jié)合 BP 算法對加熱的溫度進行預(yù)測。
1 BP神經(jīng)網(wǎng)絡(luò)算法的數(shù)學(xué)模型
2 隱含層節(jié)點數(shù)的研究
隱含層節(jié)點數(shù)量對網(wǎng)絡(luò)性能有很大影響,節(jié)點數(shù)越多,網(wǎng)絡(luò)性能越好,但可能導(dǎo)致訓(xùn)練時間較長,且網(wǎng)絡(luò)學(xué)習(xí)后的網(wǎng)絡(luò)泛化能力會降低,節(jié)點數(shù)目太少,則不能產(chǎn)生供樣本數(shù)據(jù)學(xué)習(xí)的連接權(quán)值組合,導(dǎo)致學(xué)習(xí)不收斂,最終訓(xùn)練網(wǎng)絡(luò)不能達到預(yù)期的預(yù)測效果。
2.1 隱含層節(jié)點數(shù)范圍的確定
對于神經(jīng)網(wǎng)絡(luò)中隱含層節(jié)點數(shù)目的確定,目前仍沒找到確定表達式,以往一直采用經(jīng)驗和不斷試驗來確定一個近似的隱含層節(jié)點數(shù),而這類方法工作量比較大,預(yù)測的精度以及網(wǎng)絡(luò)模型的質(zhì)量都不能保證。
其中,m是輸入層節(jié)點數(shù),n是輸出層節(jié)點數(shù),ξ是整數(shù),取值范圍為1~10。估算出i的取值范圍3~12。
2.2 隱含層節(jié)點數(shù)自動篩選的設(shè)計
本文通過設(shè)置For循環(huán),對隱含層取值范圍內(nèi)的數(shù)進行一一對比測試數(shù)據(jù)樣本對應(yīng)的輸出數(shù)據(jù)的累計誤差和,選取累計誤差和最小的隱含層數(shù)作為最優(yōu)隱含層節(jié)點數(shù)。在篩選中,選用2層For循環(huán),外層For循環(huán)用于設(shè)置隱含層節(jié)點數(shù)范圍,即3~12,內(nèi)層For循環(huán)用于計算誤差和,其實現(xiàn)步驟為:(1)選取隱含層節(jié)點數(shù)為NodeNum=L(i),創(chuàng)建網(wǎng)絡(luò)。(2)對樣本數(shù)據(jù)進行網(wǎng)絡(luò)訓(xùn)練。(3)用測試樣本數(shù)據(jù)對訓(xùn)練好的網(wǎng)絡(luò)進行測試,計算測試樣本數(shù)據(jù)與目標輸出間的誤差矩陣。(4)對誤差矩陣進行求和,求出當前隱含層節(jié)點下的誤差和sumerror。(5)比較誤差和,篩選出誤差和最小的隱層節(jié)點數(shù)目。
3 BP算法的MATLAB仿真實現(xiàn)
本文仿真在MATLAB平臺上完成,采用自動篩選隱含層節(jié)點數(shù)的BP算法對微波腔體中媒質(zhì)的溫度進行預(yù)測[6]。
3.1 預(yù)處理
實驗將100ml的水在室溫20.9℃下采用不同恒定功率下加熱,記錄時間、溫度和反射功率,溫度到達50攝氏度,停止加熱。
4 BP模型溫度預(yù)測結(jié)果分析
采用手動和自動篩選隱含層節(jié)點數(shù)目的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示:
5 結(jié)論
本文利用在實驗中收集的相關(guān)數(shù)據(jù),采用可自動篩選節(jié)點的BP神經(jīng)網(wǎng)絡(luò)算法對媒質(zhì)水的溫度進行預(yù)測。在微波加熱溫度可控的工程應(yīng)用中,本論文具有重要的應(yīng)用價值。
【參考文獻】
[1]劉長軍,閆麗萍,黃卡瑪.微波加熱中“熱失控”的一維數(shù)值模擬[C]//2005年全國毫米波會議論文集,2005:1040-1043.
[2]趙翔,黃卡瑪,閆麗萍,姚遠.數(shù)值模擬微波加熱化學(xué)反應(yīng)過程的初步研究及熱點和熱失控現(xiàn)象討論[J].中國科學(xué)Q輯:物理學(xué) 力學(xué) 天文學(xué),2009,39(4):501-511.
[3]陳明,等,編.MATLAB神經(jīng)網(wǎng)絡(luò)原理與實例精解[M].清華大學(xué)出版社,2013.
[4]傅薈璇,等.Matlab神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計[M].北京:機械工業(yè)出版社,2010.
[5]夏克文,李昌彪,沈鈞毅.前向神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點數(shù)的一種優(yōu)化算法[J].計算機科學(xué),2005,32(10):143-145.
[6]封毅,武博強,崔靈周.基于BP神經(jīng)網(wǎng)絡(luò)的臺風(fēng)降雨量預(yù)測研究[J].水土保持研究,2012,19(3):289-293.
[責(zé)任編輯:楊玉潔]