孫傳瑜,楊耀權
(華北電力大學 自動化系,河北 保定 071003)
提高火電機組鍋爐燃燒效率,是電力企業需要解決的關鍵問題。磨煤機一次風送風量是提高燃燒效率的重要參數[1]。
對于一次風量的測量,目前通常采用的是接觸式測量方式。由于現場環境復雜、影響因素較多,測量結果常會發生嚴重漂移現象。利用往期歷史數據建立一次風量預測模型,不僅可以解決接觸式測量所存在的缺陷,還可以通過其分析出送風系統運行參數與實際送風量之間的非線性關系,為現場工作人員及時調整送風系統相關參數提供有價值的參考。
近年來,隨著機器學習與深度學習算法的快速完善,越來越多的數據驅動方法被應用于建立預測模型[2]。深度學習具有特征抓取能力強。預測精度高等優點。文獻[3]采用長短期記憶(long short-term memory,LSTM)方法構建黑箱模型。文獻[4]采用機器學習中的最小二乘支持向量機(least square support vector machines,LSSVM)方法構建軟測量模型。文獻[5]采用 LSSVM方法進行脫硫系統漿液pH值測量,并取得了較好的預測效果。
在建立預測模型時,除了選擇合適的建模方法外,對輸入變量進行選擇與處理也是提升模型預測精度的關鍵所在。文獻[6]采用核主成分分析(kernel principal component analysis,KPCA)方法來對與磨煤機一次風實際送風量相關的輔助變量進行降維,以提高模型泛化能力,并建立了KPCA-LSSVM預測模型。文獻[7]采用套索算法對數據進行處理,有效去除了冗余變量,解決了模型過擬合問題,并利用經驗模態減少了噪聲干擾。
在建立模型時,若輸入變量過多,則可能會造成模型過度復雜,不利于實際應用;若輸入變量過少,則可能會導致表達特征過少,降低模型預測精度。因此,選擇合適的數據預處理方法,成為關乎模型預測精度的關鍵。
為準確預測出磨煤機一次風實際送風量,本文提出了一種基于麻雀算法結合KPCA-LSTM網絡的軟測量預測模型。利用相似度函數法處理數據,以提高模型泛化能力;再利用 KPCA對數據進行降維[8],縮短模型運行時間,進一步提高模型范化能力。利用 LSTM神經網絡建立預測模型[9],對其中存在的多個超參數使用麻雀算法進行尋優[10,11],以提高預測精度。
對磨煤機一次風送風系統進行機理分析,預選出所需的輔助變量。
輔助變量所具有的維度高、非線性等特點,會造成模型復雜度升高、泛化能力和學習能力變差等問題。
采用KPCA可以有效挖掘到各輔助變量之間蘊含的非線性信息,進而降低數據維數,最大程度保留原數據特征。
KPCA算法原理:通過非線性映射函數φ(X)將輸入矢量映射到高維空間,然后在高維空間中使用PCA方法[12]計算主元成分。


通過計算不同樣本之間的歐氏距離來判斷樣本之間的相近程度,進而決定樣本的取舍。
由于采集的數據集中含有大量相似或相近的數據樣本,因此會造成模型訓練時間過長,浪費計算資源。同時,訓練樣本中過多的冗余樣本也會造成模型出現過擬合現象。因此采用相似度函數法去除其中的冗余數據。
相似度函數公式為:

式中:Xi、Xj為數據集中的2個不同樣本;‖·‖2為向量二范數,用來求取樣本之間的歐式距離;Di,j為求取的相似度值;Ck為數據集中第k個輔助變量;n為輔助變量的總個數。
經過相似度函數計算:如果得到的相似度值Di,j接近于1,則說明2個樣本中含有的相同信息量較大,應去除其中一個冗余樣本;當相似度值Di,j接近0時,則表明2個樣本中含有的信息存在較大差異,此時應該保留含有差異的樣本。
在建立一次風量預測模型時,需要對模型內部的超參數進行優化。尋找最優超參數是提高模型預測精度的關鍵。
粒子群算法在尋優過程中容易出現過早收斂、陷入局部最優的問題。遺傳算法雖然全局搜索能力強,但是局部搜索能力較弱,往往只能得到次優解而不是最優解。考慮以上尋優算法出現的問題,本文選擇了尋優效果較好且運算時間較短的麻雀算法進行超參數優化。
麻雀算法的核心是發現者、加入者、警戒者三者的位置更新。根據算法設定,警戒者所占種群比例為10%~20%;發現者和加入者之間比例是動態變化的,即一只個體成為發現者必然意味著另一只個體成為加入者。


fi>fb,表示此時麻雀正處于種群邊緣,極易受到捕食者的攻擊。fi=fb,表明處于種群中間的麻雀意識到了危險,想要靠近其他麻雀來減少被捕食的風險。
通過循環迭代,不斷更新發現者、加入者和警戒者三者之間的位置,最終找到最優參數,完成尋優任務。
LSTM是一種特殊的RNN[13]類型,可以學習長期依賴信息。
此網絡的核心思想是引入細胞狀態(cell state)。細胞狀態用來存放需要記憶的信息,同時其內部含有3個門控(遺忘門、輸入門、輸出門)。LSTM 通過每個單元中的遺忘門(forget gate)、輸入門(input gate)和輸出門(output gate)以及tanh激活函數[14]構成細胞狀態,實現歷史信息的取舍。
LSTM通過讀取ht-1和xt,經過遺忘門,給每個在細胞狀態Ct-1中的信息輸出一個在范圍為[0,1]之間的數值,用來決定模型會從細胞狀態中丟棄什么信息。1表示“完全保留”,0表示“完全舍棄”。
LSTM遺忘門公式為:

LSTM中的輸入門由2部分功能組成:一是找到那些需要更新的細胞狀態,二是把需要更新的信息更新到細胞狀態里。這2部分功能同樣是通過讀取ht-1和xt,經過輸入門,將創建的新的細胞狀態值向量C?t加入到狀態中。遺忘門找到需要忘記的信息ft后,將它與舊狀態相乘,丟棄掉需要丟棄的信息。最后,將結果加上it C?t,使細胞狀態獲得新的信息。這樣就完成了細胞狀態的更新。
LSTM輸入門公式為:

LSTM輸入門更新公式為:

在輸出門中,通過讀取ht-1和xt,將其通過sigmoid層來確定哪部分信息將輸出;然后把細胞狀態Ct通過tanh進行處理后與sigmoid層輸出相乘,最終得到輸出ht。
LSTM輸出門公式為:

由于 LSTM 神經網絡中默認的激活函數是tanh函數,而采集的數據集中數據全部為正數,所以需要將tanh激活函數更換為relu函數[14]。此函數更適合模型的訓練,使模型的預測更精確。
relu函數數學表達式為:

在建立預測模型時,首先需要確定模型的輸入變量。通過對磨煤機一次風送風系統進行機理分析,預選出7個變量作為輔助變量。
磨煤機一次風由熱風和冷風在風道內充分混合而成。一次風將磨煤機中的煤粉吹入給粉管道,送入爐膛進行點火。
風量在管道內測量。考慮管道長度L遠遠大于管道橫截面積A,且流體做不可壓縮流動,根據伯努力方程,流體參數在同一條流線上有如下關系:

式中:p0為總壓;p1為靜壓;ρ為空氣密度;υ為空氣流速。

此方程為理想方程,沒有考慮實際誤差。在考慮總壓p0與靜壓p1的測量誤差后,需要增加校正系數ε。校正系數ε取值范圍為[0.84,0.87]。由此得到空氣流速公式為:

空氣密度ρ的計算公式為:

管道內空氣流量質量為:

式中:K為流量系數;A為管道橫截面積。
在對管道內一次風量進行實際測量時,需要考慮一次風流通過程中所遇到的阻力。一次風流通時所遇到的阻力有:一次風熱風管道風阻Rh、一次風冷風管道風阻Rc、熱風門風阻Rv、冷風門風阻Rw。在理想狀態下,一次風總風量等于一次風熱風量與一次風冷風量之和。
一次風熱風量為:

式中:pi,1為熱風管道進口風壓;ph為熱風管道出口風壓;ρh為熱風空氣密度。
影像學方面的診斷。對所選取的研究對象進行影像學方面的診斷,對于CT組的研究對象采用CT診斷的方法進行診斷,具體操作為:對研究對象的頭顱進行CT的平掃,其檢查結果的主要特點為:研究對象的靜脈竇區域會呈現出條帶樣的高密度陰影,橫竇狀的高密度影以及矢狀的高密度影和不規則的高密度影等。
一次風冷風量為:

式中:pi,2為冷風管道進口風壓;pc為冷風管道出口風壓;ρc為冷風空氣密度。
一次風總風量為:

通過對一次風送風系統進行機理分析,最終預選出的7個輔助變量分別為:一次風機電流i、磨煤機冷風調門開度、磨煤機熱風調門開度、空預器一次風進出口差壓Δp1、空預器一次風進出口溫差ΔT1、一次風機出口空氣壓力與磨煤機入口空氣壓力之間的差壓Δp2、一次風機出口空氣溫度與磨煤機入口空氣溫度之間的溫差ΔT2。
由式(11)(12)可知,送風系統實際送風量與差壓的平方成正比,所以選取空預器一次風進出口差壓Δp1、一次風機出口空氣壓力與磨煤機入口空氣壓力之間的差壓Δp2作為輔助變量。
由式(10)可知,一次風實際密度與溫差有關,所以選取空預器一次風進出口溫差ΔT1、一次風機出口空氣溫度與磨煤機入口空氣溫度之間的溫差ΔT2作為輔助變量。
一次風在管道內流通時,會遇到相應阻力,其阻力的主要來源是調門開度;所以,選取磨煤機熱風調門開度和磨煤機冷風調門開度作為輔助變量。
同時,由于一次風流量的主導變量是一次風機電流,電流大小決定總風量的大小;所以,選取一次風機電流作為輔助變量。
預選出的輔助變量如表1所示。

表1 預選輔助變量Tab. 1 Preselected auxiliary variables
選取某600 MW火電機組15 d實際運行數據。記錄同一時刻這7個輔助變量運行數據及其對應的實際送風量。間隔5 min記錄一次,最終得到數據集X。

式中:Xi為數據集X中第i個樣本;前7個元素為第i個樣本中的7個輔助變量;第8個元素為同一時刻輔助變量所對應的實際送風量。
由于數據集X中含有大量冗余樣本,因此采用相似度函數法去除其中冗余數據。
相似度函數法的核心:通過計算不同樣本之間的歐氏距離來判斷樣本之間的相近程度,進而決定樣本的取舍。
相似度函數公式為:

將數據集X經過相似度函數計算,得到含有3 000個樣本的新數據集X′。

將經過相似度函數計算得到的新數據集X′,進行核主成分分析。通過非線性映射函數φ(X)將X′映射到高維空間,然后在高維空間中使用 PCA方法計算主元成分。
設向量ωi為高維空間中的特征向量,λi為其對應的特征值,則高維空間中的PCA為:

將特征向量ωi用樣本集合表示為:

將式(14)代入式(13),計算可得:

對等式(15)兩邊左乘φ(X′ )T得到:

引入核函數矩陣K:

式(16)經過核函數矩陣運算后為:

將α代入式(14),即可求得特征向量ωi;將其作為高維空間中的一組基,通過這組基可以得到測試數據在高維空間中的表示。
經過KPCA得到各主成分的方差貢獻度和累計方差貢獻度如表2所示。

表2 貢獻度Tab. 2 The contribution degree
由表2可知,前5個主元的累計方差貢獻度達到了 99.997%,能夠表達所有主元中的絕大部分信息,所以選用前5個主元和其對應的實際送風量構成數據集 ′′X。對數據集 ′′X進行歸一化,將歸一化之后的數據作為模型的輸入數據。對輸入數據進行劃分,將數據集的前2 900個樣本劃分為訓練集,后100個樣本劃分為測試集。訓練集用于訓練模型的內部參數,測試集用于對模型進行測試。
在確定了模型的輸入數據后,接下來需要確定模型的相關參數,即LSTM隱含層層數、迭代次數 epoch、隱含層輸出節點數 units、記憶天數mem_days以及學習率lr。
首先,對模型中的LSTM隱含層層數進行確定。通過多次實驗可以得到不同隱含層層數對模型預測結果的影響,其實驗結果如表3所示。

表3 不同隱含層數下模型預測結果Tab. 3 Model prediction results under different hidden layers
由表3可知,隨著隱含層層數的不斷增加,模型預測精度不斷提升。當隱含層層數超過3層時,隨著層數的增加,模型能夠抓取的特征越來越多,學習能力越來越強;但此時卻出現了過擬合現象,即在測試集上的表現越來越差。所以最終確定LSTM隱含層層數為3層。
在確定了隱含層層數后,使用麻雀算法對迭代次數 epoch、隱含層輸出節點數 units、記憶天數mem_days、學習率lr等超參數進行尋優,并與粒子群尋優算法進行對比。
初始化種群大小為 100個,迭代次數為 200次,設定epoch的區間為[1 000,5 000]、units為[8,32]、學習率lr為[0.001,0.01]、mem_days為[3,8]。使用公式(7)(8)(9)進行位置更新。選取預測值與真實值的最大引用誤差作為適應度函數[15]進行訓練。
適應度函數為:

式中:n為預測值個數;Yi為預測值;為真實值。
經過麻雀算法得到,當迭代次數epoch為4 360、隱含層輸出節點數units為32、學習率lr為0.001、記憶天數mem_days為5時,模型預測精度最高。而經過粒子群尋優算法得到,當迭代次數 epoch為3 250、隱含層輸出節點數units為16、學習率lr為0.001、記憶天數mem_days為5時、模型預測精度最高。
為量化預測效果、評估模型優劣,引入最大引用誤差(MQE,最大量程為 100)和均方根誤差(RMSE)作為模型的評價指標[16]。計算公式如下:

采用2種不同尋優算法得到的模型預測結果對比如表4所示。

表4 不同尋優算法預測結果Tab. 4 Prediction results of different optimization algorithms
由表4可知,采用粒子群算法進行尋優時,陷入了局部最優狀態,因此造成尋優效果差、模型預測精度低。使用麻雀算法有效避免了這一問題,使模型取得了較好的預測精度。
經過麻雀尋優算法最終確定,當迭代次數epoch為4 360、隱含層輸出節點數units為32、學習率lr為0.001、記憶天數mem_days為5時,模型預測精度最高。此時模型的預測效果如圖1所示。

圖1 不同模型預測效果對比Fig. 1 The comparison of prediction effects of different models
在實驗中引入了LSSVM模型和混合LSSVM模型用于對比。由圖1可知,KPCA-LSTM模型較LSSVM模型和混合LSSVM模型擁有更優的預測效果。
不同模型預測效果評估結果如表5所示。

表5 不同模型預測效果評估Tab. 5 The evaluation of prediction effects of different models
對建立的KPCA-LSTM預測模型進行現場實驗驗證。
將訓練優化后的預測模型裝載到基于 ARM的磨煤機一次風量軟測量儀表中。
此儀表是使用 OK6410開發板、基于 FLTK對話框結構、采用模塊化設計開發的一套軟測量儀表。此儀表通過硬件平臺數據采集模塊獲取輔助變量測點信息,具有計算多個測點實測風量平均值、進行誤差統計等功能。
現場實測10組數據如表6所示。

表6 軟測量儀表數據統計Tab. 6 Soft measurement instrument data statistics
在進行現場實驗前,先將訓練優化后的KPCA-LSTM 預測模型裝載到軟測量測試功能塊中,通過數據采集卡獲得測點的實時輔助變量值。運行軟測量測試功能塊時,其內部的預測模型會自動讀取實時數據并進行計算,同時將計算后的預測結果及統計信息進行存盤。
在進行測試時還應具備如下條件:
測試系統正常運行,不出現使測試停止的條件;磨煤機正常運行,各輔助變量測點正常;數據采集準確。
滿足上述條件后,在某600 MW火電機組上進行現場實驗。現場實驗過程中記錄的預測值與現場實際風量測量值如圖2所示。

圖2 KPCA-LSTM預測模型現場試驗效果Fig. 2 The effect of KPCA-LSTM prediction model field test
圖2中紅色虛線為KPCA-LSTM預測模型在連續接收300組現場實測輔助變量值后輸出的一次風量預測值,藍色和綠色實線為磨煤機在該時段內2個一次風量測量測點的實際測量值。對比3條曲線可知,KPCA-LSTM 預測模型輸出的預測值與現場儀表所測實測值偏差較小。
將KPCA-LSTM預測模型輸出的預測值與現場2個測點實測值的平均值進行運算。使用最大絕對誤差Emax和平均誤差AE進行現場試驗效果評估。

經計算得:最大絕對誤差Emax為0.45;平均誤差AE為0.200 72。
最大絕對誤差Emax值為0.45,表示一次風量預測值與2個實測值的平均值之間的最大偏差為0.45 t。平均誤差AE值為0.200 72,表示預測值與2個實測值的平均值之間的平均誤差為0.200 72 t。由評估結果看出,所建立的KPCA-LSTM預測模型在進行現場實驗時擁有較高的準確度和更小的波動性,這說明模型準確合理。
本文建立的磨煤機一次風量KPCA-LSTM預測模型較LSSVM模型、混合LSSVM模型具有更小的最大引用誤差和均方根誤差。
使用麻雀算法優化LSTM網絡中的超參數,可使一次風量預測精度更高、預測能力更強。
現場試驗中,本文KPCA-LSTM預測模型預測值最大絕對誤差為0.45、平均誤差為0.200 72。該偏差值較小,說明模型能夠提高火電機組磨煤機一次風量預測準確度,同時也說明了所建立的模型正確合理。
本文研究結果可為磨煤機一次風量預測提供理論參考。