王偉同,范海東,梁成思,趙中陽,邵宇浩,譚暢,鄭成航
(1.浙江大學能源清潔利用國家重點實驗室,國家環境保護燃煤大氣污染控制工程技術中心,浙江 杭州 310027;2.浙江浙能技術研究院有限公司,浙江 杭州 311121)
國家能源局統計顯示,2020 年我國全年能源消費總量49.8 億t 標準煤,其中煤炭消費占能源消費總量的56.8%[1]。由于我國具有“富煤、貧油、少氣”的資源特點約束,能源消費結構將長期以煤炭消費為主[2]。煤炭燃燒后會產生多種污染物,包括NOx、硫化物和煙塵等,對人們的生產生活產生巨大的影響[3-7]。因此,我國對于燃煤電站NOx排放治理的要求趨于嚴格,排放指標相比于歐盟燃煤電廠排放指標更嚴格[8-9]。
通過煙氣脫硝系統對NOx排放進行控制是燃煤電廠NOx超低排放的主要方式。然而針對控制程序的調整依賴于儀器儀表測量的數據,這些儀器測量的數據具有滯后性,使得控制作用始終落后于被控變量,尤其在鍋爐工況變化較大的時候,滯后所產生的影響更大。所以需要建立快速、準確的對沖鍋爐出口NOx排放量的預測模型,以便對儀器的測量數據進行修正,為對沖鍋爐NOx控制系統提前應對不同工況提供模型基礎。
對沖鍋爐的燃燒系統的運行數據具有種類多、維度高和生成速度快等特點,并且其中NOx生成受到諸多因素(如二次風量、燃燒器給煤量、燃燒溫度等)的影響,這些特征之間耦合程度較高,導致在海量數據中尋找出鍋爐NOx排放量與鍋爐特征之間的聯系較為困難。如何快速并準確地提前預測對沖鍋爐出口NOx的排放量,成為擺在研究者面前的一個挑戰。
機器學習是對鍋爐出口NOx排放量進行預測的一種有效方法。支持向量機、BP 神經網絡、邏輯回歸以及以它們為基礎改進后的算法曾先后用于排放量的預測。劉飛明、張雨飛將支持向量機與改進混沌粒子群算法相結合來對NOx排放量進行在線建模[10],丁知平和李應保等采用改進的最小二乘支持向量機建立煤粉鍋爐NOx排放模型[11-12]。但在缺失數據的情況下,支持向量機會變得十分敏感,影響輸出結果。在復雜的特征以及大量數據下這些單分類器模型并不能在NOx排放量預測上取得良好的效果。劉博文[13]使用RNN 算法建立脫硝系統入口NOx質量濃度測量修正方法,通過提前預測脫硝系統入口處NOx質量濃度測量值,使煙氣排放連續監測系統測量滯后誤差降低了32.6%;徐凱等[14]使用神經網絡針對循環流化床鍋爐建立自適應控制模型;印江等[15]使用IPSO-BP 算法針對NOx排放量進行預測。雖然神經網絡在預測數據較為穩定時具有較高的精度,但存在網絡結構難以確定、學習速度慢及易陷入局部最優等問題。
隨機森林(random forest,RF)是一種分類和預測集成的學習算法。通過多輪抽樣,生成k個數據集并構成含有k棵決策樹的隨機森林,其隨機性使得模型不易陷入過擬合并降低敏感數據對模型預測結果的影響,在不同的領域取得了不錯的效果。趙騰等[16]采用隨機森林算法針對用電差異性帶來的電量預測問題進行建模,在135 維的數據集下建立的模型平均百分比誤差(mean absolute percentage error,MAPE)為1.84。魏勤等[17]使用隨機森林預測電力現貨市場的出清價格,較相同條件下的決策樹(classification and regression tree,CART)、SVR 和ANN 算法建立的預測模型平均誤差分別相對減少了35.2%、25.3%和26.0%。
此外,根據文獻[18-19]可知,對大數據進行回歸預測時,應減少數據的復雜程度以及降低無關變量因素對模型預測的影響,因此需要建立初始指標體系進行特征篩選,將篩選完成后的特征放入隨機森林中進行訓練得出結果。?muk Berislav等[20]對相關性系數進行了詳盡的描述。相關性系數是用來判斷2 個特征之間是否具有相關的關系以及其關系的強弱程度。由于鍋爐燃燒系統的數據具有強非線性,所以選擇適用于非線性數據的Spearman 系數作為特征選擇方法。
綜上所述,為了得到一種兼具通用性和有效性的NOx排放量預測方法,本文在原有的隨機森林回歸算法基礎上,與Spearman 系數特征選擇相結合。首先利用Spearman 系數進行鍋爐燃燒特征篩選,選擇出與NOx排放量相關性強的特征,并將無關特征刪除;利用篩選出的特征搭建基于隨機森林算法的NOx排放量預測模型;使用決定系數(determination coefficient,R2)、均方根誤差(root mean square error,δRMSE)模型性能指標對比并分析基于Spearman 系數的隨機森林算法與其他模型的預測效果。
Spearman 相關性系數用于描述特征與其響應變量之間的關系,其值介于-1~1。數值的絕對值越大,變量之間的相關性程度也就越大。Spearman 系數為正值的時候,表示正相關;為負值的時候,表示為負相關。如果數據集為P={A,B,...,X,Y},其中X={X1,X2...,Xn},Y={Y1,Y2...,Yn},計算兩者Spearman 系數的公式為:

式中:X代表X變量,而Y代表Y變量;Xi、Yi代表X和Y中的第i個數據;μX、μY代表X、Y變量的平均值。
決策樹是一種既可以處理分類問題,也可以處理回歸問題的改進型單分類回歸器的學習算法。
決策樹算法作用于回歸的時候,使用Variance方差來對節點進行分裂,對訓練集的輸入劃分空間,不斷地將樣本數據分裂到不同的節點空間。每個節點會得到1 個預測值,全部節點預測值的平均值就是最終的算法輸出結果。每個節點的Variance方差越小,代表該節點所分裂得到的特征重要性越高。假設當前集合為D,樣本數量為N,每個樣本的值為yi,Variance 方差的計算式為:

隨機森林是隨機創造的決策樹組成的森林。決策樹中的每個節點是特征的1 個隨機子集,用于計算輸出。隨機森林將單個決策樹的輸出整合起來生成最后的輸出結果,其結構如圖1 所示。

圖1 隨機森林回歸算法結構Fig.1 Structure of the random forest regression algorithm
方匡南等[21]對隨機森林算法進行研究,發現隨機森林相較于傳統的機器學習模型具有訓練速度快、預測效果好、泛化能力強、魯棒性強等優勢,可有效避免模型過擬合的現象,適用于高維數據的處理。
隨機森林主要是采用bootstrap 對數據集進行隨機抽樣,抽取出n個子數據集,并從子數據集的所有特征中選取m個特征用于每個節點的分割。m是一個預定義的數字。隨機森林會找到每棵樹的最佳分割點,其余部分類似決策樹,最后對于所有枝點的預測值進行平均即得到最終的預測值。
盡管隨機森林具有很多優勢,但其在構建過程中考慮到所有的輸入維度,劃分不同的維度區間,當所劃分得到的隨機森林中決策樹棵數很多的時候,訓練所需的時間和空間成本會很大。因此使用Spearman 系數將無關輸入進行刪減并利用評價指標對模型參數進行調整,使得模型訓練所花費的時間盡可能縮減。
本文主要圍繞對沖鍋爐的歷史數據構建模型。對沖鍋爐結構及測點布置如圖2 所示。

圖2 對沖鍋爐測點布置Fig.2 Measuring point diagram of hedge boiler
對沖鍋爐采用前后墻對沖的燃燒方式,在鍋爐前后墻各布置3 層燃燒器,燃盡區布置2 層燃盡風,再往上為一次風、二次風以及煙氣流量、機組負荷的測點,往右為低溫過熱器、低溫再熱器、高溫再熱器以及省煤器的測點。數據從電廠信息(plant information,PI)數據庫中采集獲得。采樣間隔10 s,采樣周期3 個月,總共372 704 個數據點組成最初的數據集。數據集中包含低、中、高多個負荷段及升、降、平穩負荷多種運行工況,一定程度上可以覆蓋電廠運行典型工況特征。部分數據如圖3 所示。

圖3 對沖鍋爐數據集部分數據Fig.3 Partial data of the hedge boiler dataset
圖4 為模型構建流程。首先對鍋爐數據進行預處理。對2 個數據集進行特征選取,根據Spearman系數或合并或刪除多余特征,減少建模時間,并劃分為輸入特征(如機組負荷、給煤機給煤量等)以及與預測結果對照的真實值(鍋爐出口NOx質量濃度)。

圖4 模型構建流程Fig.4 Model building flowchart
將t時間段的輸入特征(圖4 中紅色區域)輸入隨機森林模型,用預測得到的t+m時間段輸出與原t+m時間段的數據進行對比來分析模型預測效果。根據燃煤電廠半個月內的數據來預測未來的NOx質量濃度,將t設置為15 天。由于電廠NOx測量表的延遲約為6 min,所以將m設置為6 min。
針對對沖鍋爐數據進行預處理,采用粗大值剔除、吹掃過程處理、數據平滑處理3 個方面的處理,如圖5 所示。

圖5 鍋爐出口NOx 排放量數據處理Fig.5 Processing of the NOx data at the boiler outlet
1)剔除數據中的粗大值并采用線性插值方法對吹掃過程數據進行處理:

式中:x1為吹掃開始時質量濃度;xm+1為吹掃結束后的質量濃度;xi為吹掃處理后時間i的質量濃度。
2)對數據進行平滑處理,數據采集過程存在一定的噪聲,高斯濾波可以有效抑制噪聲的影響。

數據集中的特征包括機組負荷、主蒸汽壓力、總風量、燃盡風、一次風、二次風、給煤機風量、省煤器出口煙溫、煙氣流量、給煤機給煤指令、各層燃燒器壁溫、各燃燒器一次風速和主蒸汽溫度等特征。
利用Spearman 相關系數針對特征之間的相關性進行分析,其相關性系數絕對值越接近1,特征之間的相關性越高。可合并一些相關性較高的特征,并去掉一些與NOx排放量相關性較弱的特征變量。鍋爐特征之間的相關性熱圖如圖6 所示,特征與NOx排放量之間的Spearman 系數結果見表1。
但她始終沒有生下一兒半女,和家世顯赫、兒女雙全的王夫人相比,處處都相形見絀。所以即便身為長房媳婦,卻時時被二房壓了一頭。

表1 特征與NOx 質量濃度之間的Spearman 系數Tab.1 Spearman coefficient between characteristic and NOx

圖6 鍋爐參數相關性熱圖Fig.6 Boiler parameter correlation heat map
通過相關性熱圖可以發現:總風量和其他風量之間的相關性較高,考慮到每層的風量對于對沖燃燒的影響力不一樣,所以選用各層給風量;同時過熱器、再熱器以及省煤器的溫度之間的相關性均超過0.9,根據其和NOx排放量的相關性從三者中選取省煤器出口煙溫作為輸入特征。
最終選取機組負荷X1、主蒸汽壓力X2、燃盡風X3、一次風X4、二次風X5、給煤機風量X6—X11、省煤器出口煙溫X12、煙氣流量X13、給煤機給煤量X14—X19總計19 維作為模型的輸入特征,鍋爐NOx質量濃度作為模型的輸出特征。
選取數據處理后的200 000 個數據點,根據模型驗證的思路,將其中190 000 個數據作為訓練集輸入模型,剩余的數據作為測試集。
為了評價模型的NOx排放預測性能,引入均方根誤差δRMSE和決定系數R22 個指標。δRMSE反映了NOx質量濃度預測值與真實值之間的偏差。δRMSE越小,模型預測效果越好。R2反映了NOx質量濃度的變化能通過預測模型被選取的特征解釋的比例。R2越接近于1,說明模型擬合效果越好。
在經過數據預處理以及特征參數選取之后,劃分成輸入特征與輸出對照真實值,之后預設隨機森林參數,將訓練集輸入隨機森林模型進行訓練,并以2 000 個點為一個時間段觀察模型預測效果。表2 為隨機森林預測模型參數。

表2 隨機森林預測模型參數Tab.2 Parameters of Stochastic Forest prediction model
為了調整隨機森林模型的棵數讓模型更為快速精確,使用前向搜索方法尋找最優棵數。每個步驟樹集的擬合性能由δRMSE和R2評估,結果如圖7所示。綜合建模時間以及預測精度的考量,決定由60 棵決策樹構建最終的NOx排放量預測模型。預測結果的整體均方根誤差為8.716 mg/m3,決定系數為0.93。訓練集NOx排放量快速變化和平穩期以及不同負荷段NOx排放量預測如圖8、圖9 所示。

圖7 隨機森林棵數參數調整Fig.7 Parameter adjustment of random forest number

圖8 訓練集NOx 排放量快速變化及平穩期Fig.8 The rapidly and stationary period of NOx changes in training set

圖9 訓練集不同負荷段NOx 排放量預測Fig.9 NOx prediction in different load segments of training set:low load,medium load,high load
為了驗證以訓練集為基礎建立的隨機森林模型的泛化效果,使用RF、SVR、PCR 以及KNN[22-25]4 種模型在總計10 000 個數據點的測試集上進行NOx排放量預測,最后進行效果對比,得到多模型預測散點圖如圖10 所示。圖10 中黑線代表預測值等于實際值。數據點偏離參考線的距離越近、數量越多,代表模型的預測結果越理想。由圖10 可以看出,隨機森林(RF)在預測集的效果最為精確,SVR和PCR 的預測效果次于隨機森林,KNN 模型的預測效果最差。

圖10 多模型預測散點圖Fig.10 Multi-model prediction scatter plot
表3 為多模型評價指標和模型計算耗時。從表3 可以看出,隨機森林模型在模型計算時間短的情況下兼具更高的精確度和泛化能力。

表3 多模型評價指標和模型計算耗時Tab.3 Multi-model evaluation index and model calculation time-consuming
圖11 為4 種模型在測試集的誤差分布。由圖11可見:隨機森林模型和SVR 模型的誤差分布曲線相比于PCR 與KNN 模型更加集中;KNN 模型預測誤差絕對值出現在30 mg/m3以上的頻次較高,在實際過程中可能經常出現模型失配現象;而隨機森林模型相較于SVR 模型更集中于-10~10 mg/m3,所以其預測更為準確,更加適應NOx質量濃度預測的各種情況。

圖11 模型在測試集的誤差分布Fig.11 Error distribution diagram of models in the test set
圖12 為測試集中NOx質量濃度在不斷變化時候,4 種模型的預測效果圖以及放大圖。由圖12 可見:隨機森林預測模型在平穩期的預測效果和其他模型相差不大,但在NOx質量濃度變化劇烈的過程中,如快速下降以及快速上升2 個過程中,都對出口NOx排放量有較為準確的預測;相較于其他模型,隨機森林模型能更好地對NOx排放量變化趨勢進行適應并預測。

圖12 NOx 排放量變化時模型效果以及放大圖Fig.12 Model rendering when NOx emission changes
本文以燃煤電廠對沖鍋爐的運行數據為基礎,利用隨機森林算法泛化性強、建模時間短的特性,并輔以Spearman 系數方法去除無關特征,降低無關特征對模型精度的影響,建立了隨機森林模型來預測鍋爐出口的NOx質量濃度,以提前了解對沖鍋爐出口NOx排放量的變化趨勢,并與SVR、PCR 及KNN 3 種模型進行了預測精度的對比。研究結果表明:
1)基于Spearman 的隨機森林模型在測試集上的預測結果的均方根誤差為10.182 mg/m3,決定系數為0.913,優于另外3 種模型,并且其在模型計算耗時上的表現體現了隨機森林在處理高維度數據、大規模非線性問題上的優越性。
2)基于Spearman 的隨機森林模型預測誤差集中在-10~10 mg/m3的范圍內,所以采用基于Spearman的隨機森林模型可以快速而準確地提前預測鍋爐NOx排放量的變化趨勢。
火電廠控制系統數據的海量化和高維化是電廠發展的必然趨勢,而數據時滯的存在使得控制作用落后于控制對象,所以利用控制系統的數據對控制對象的未來的變化趨勢進行預測是十分有必要的。本文對隨機森林的研究可應用于對控制對象的變化趨勢的預測。