薛美盛,王 旭,冀若陽
(中國科學技術大學 自動化系,合肥 230026)
隨著我國經濟的高速發展,電力需求不斷增多,且我國大部分的電能來自燃煤火力發電.燃煤火電廠在利用燃煤發電的過程中,會產生各種廢氣、廢水、灰渣,其中廢氣中帶有的SO2是大氣的主要污染物之一[1].國家對于排煙的指標要求越來越高,因此實現脫硫系統的高效穩定運行顯得至關重要[2].
目前,各熱電廠主要采用的煙氣檢測裝備是煙氣連續排放檢測系統(CEMS).因為煙氣的檢測系統工作情況復雜,采樣的探頭、傳感器和很多的光學器件會隨著時間的積累出現不同程度的腐蝕老化[3].不僅如此,安裝CEMS系統的費用昂貴,且需要花費大量的人力去維護,因此建立煙氣二氧化硫的預測模型,得到較為精準的二氧化硫輸出預測值很有研究意義,對鍋爐控制系統運行參數的調節也有參考指導的價值.
支持向量機(Suport Vector Machine,SVM)是一種以統計學理論為基礎的新機器學習方法[4],在解決小樣本、高維度和非線性等問題有特有的優勢[5].另外,該算法通過轉化為一個二次規劃問題,可以得到全局最優解,解決了神經網絡訓練存在的局部極小值問題[6],因此基于支持向量機的系統建模方法非常具有發展前景.本文基于支持向量機回歸方法,針對循環流化床鍋爐(CFB)控制系統中煙氣二氧化硫對象的非線性問題,建立一種多輸入單輸出的二氧化硫濃度預測模型,仿真結果表明,基于支持向量機的煙氣二氧化硫預測模型具有很好的預測效果.
為了把SVM推廣到回歸估計算法中去,我們引入一種損失函數(ε不敏感函數)來實現[7],如式(1).

對于線性回歸,假設所有的訓練數據都可以用線性函數在精度ε精度精度之外情況,引入ξi≥0和ξi*≥0,則回歸問題轉化成最小化結構風險(SRM)函數的問題[8],如式(2).

式中懲罰因子C>0,對經驗風險與置信范圍這兩部分進行折中,指的是對超出誤差的樣本的懲罰程度.其約束條件可用式(3)表示.

構造拉格朗日函數,通過求偏導轉化為求解對偶二次規劃問題,最終得到回歸函數,如式(4).

另外,對于非線性問題,可以通過映射將原始低維樣本轉化為某個高維空間的線性問題.由于在上面的求解對偶問題中,只涉及到訓練樣本之間的內積運算(xi·xj),因此我們用核函數K(xi,xj)替代原來的內積運算來實現高維空間上的非線性函數擬合[9].本文采用的核函數是徑向基核函數(RBF):.
石灰石和燃煤分別放在石灰石倉和燃煤倉內,由各自的傳送帶送入爐膛內,通過床料加熱著火,在一次風的作用下呈流化狀態燃燒.燃燒產生的煙氣經過旋風分離器分離,利用余溫加熱過熱器、空氣預熱器等,最后通過除塵器除塵后由煙道排除.其工作原理如圖1所示.

圖1 循環流化床鍋爐燃燒工作原理圖
石灰石和煤燃燒生成的SO2在爐膛內反應生成硫化鹽,從而達到脫硫的目的.根據循環流化床鍋爐燃燒的工作原理和添加石灰石的脫硫方法,可知石灰石量、給煤量影響著煙氣二氧化硫的濃度.一次風、二次風影響著鍋爐燃料的燃燒狀態及爐內氧含量,所有對二氧化硫的濃度也有很大影響.床溫不僅影響著煤燃燒的速度還影響石灰石脫硫的效率,因此也是影響二氧化硫濃度的重要因素.
選取某動力站1#爐CFB鍋爐的穩定運行數據,根據該循環流化床鍋爐燃燒特性和相關系數法計算,煙氣二氧化硫預測模型的輸入變量選擇為:給煤量、石灰石給料傳送帶轉速、一次風A導葉、一次風B導葉、二次風A液偶、二次風B液偶、床溫等7個參數.
選取2015.03.22一天的穩定運行數據進行仿真實驗.建模前,對訓練數據和測試數據進行歸一化預處理,采用式(5)進行歸一化.

式中,x為原始數據,x'為歸一化之后的數據,μ為原始樣本數據均值,σ為原始樣本數據標準差.
在MATLAB仿真平臺上進行仿真研究,操作系統為Windows 7,本文采用通用的支持向量機工具箱,其作者是Steve Gunn,將工具箱添加到“Matlab search path”中,通過調用工具包的功能函數來實現預測模型的訓練和測試.調用svr函數來訓練模型,見式(6)

其中X_1和Y_1分別為輸入輸出數據集,ker表示核函數的選擇;C為懲罰因子的參數設置,loss為損失函數的選擇設置,e為設置的不敏感系數值.函數返回值nsv為支持向量個數,beta和bias為返回的模型拉格朗日乘子解.
采用svroutpu函數計算模型的輸出,如式(7),tstY_1為返回的模型輸出值.

采用高斯徑向基函數RBF作為尋優核函數,經過多年的應用實踐看出,RBF核函數是一個較為的普適函數[10],可以通過參數的選取,使其適用于任意分布的樣本.這樣SVR可調的模型參數有懲罰系數C、核函數參數g和不敏感系數ε[11].其中C的大小表示對誤差的懲罰程度,若是C越小,懲罰程度越小.g的變化會引起映射核函數的變化,導致樣本空間分布的復雜程度改變[12].ε反映輸入變量所含噪聲對模型的影響程度,影響著模型的擬合精度.網格搜索法進行參數尋優的基本原理是使log2ε、log2C、log2g在一定范圍內變化,使用交叉驗證來評估參數對模型性能的影響,以此來選擇出最佳的參數值.一般log2ε、log2C、log2g的取值范圍分別為[-10,2],[-5,15],[-15,5].但網格搜索方法的缺點是計算量大,搜索時間長.
為減少參數尋優的計算量,需要確定一個更為緊湊的參數搜索范圍.為此,首先分析單個參數變化與模型均方根誤差和支持向量個數之間的關系,在此基礎上確定參數精選搜索范圍.最后在參數精選范圍內,利用網格搜索法確定模型的參數.具體步驟如下:
(1)確定 log2ε、log2C、log2g的粗選搜索范圍,為[-10,2],[-5,15],[-15,5];
(2)測試ε時,C、g設為默認值.使log2ε在[-10,2]范圍內變化,將訓練樣本用于交叉驗證,然后得到模型對應的均方誤差和支持向量所占百分比;
(3)畫出log2ε與均方誤差以及支持向量所占百分比之間的關系曲線;
(4)根據曲線的形狀,得到log2ε的精選搜索范圍;
(5)采用同樣的步驟對其它兩個參數進行實驗,得到3個參數的精選搜索范圍,參數ε通常對于模型的訓練影響較小,一般取一個合理值即可;
(6)在精選搜索范圍內,使用網格搜索確定參數C,g的最優設定值.
圖2、圖3分別為單變量參數ε變化對模型均方根誤差、支持向量占比的影響,這里參數g=3,C=2設為默認值.當log2ε≤-4時,ε對模型的均方誤差和支持向量占比影響較小;從log2ε≥-1時模型誤差開始增大,而當log2ε≥1時,支持向量個數小于總訓練樣本的20%,此時出現了欠擬合,模型過于簡單,均方誤差有增大的趨勢.由此可以看出,log2ε的最優值位于[-4,1].其中不敏感系數ε作為一個控制精度的參數,通常情況對模型的訓練學習影響較小,一般取一個合理值即可,這里取ε=0.5.

圖2 參數ε對模型均方根誤差的影響

圖3 參數ε對模型支持向量占比的影響

圖4 參數C對模型均方根誤差的影響
圖4、圖5分別為參數C對模型均方根誤差、支持向量占比的影響,另兩個參數設為默認值ε=0.5,g=3.開始模型的誤差隨著log2C的增大而減小,支持向量占比也不斷降低;但在log2C≥5后,模型在訓練樣本上的誤差和支持向量個數都基本不變.而C越大,對模型誤差的懲罰程度越大,模型的泛化能力較低.因此,可以確定最優log2C的值位于[-3,5].
圖6、圖7分別為參數g對模型均方根誤差、支持向量占比的影響,另兩個參數設為默認值ε=0.5,C=2.首先隨著log2g不斷增大,模型誤差先減小后增大,支持向量的個數也是先減少,然后增加,在log2g=-1附近模型的誤差達到最小值.由此可以確定參數log2g的搜索范圍為[-4,4].

圖5 參數C對模型支持向量占比的影響

圖6 參數g對模型均方根誤差的影響
以上基于單變量的參數搜索方法得到了參數精選范圍,log2C在區間[-3,5]之間,log2g在區間[-4,4]之間,參數ε=0.5.在精選的搜索范圍內,利用基于交叉驗證的網格搜索方法確定參數最優值.如圖8、圖9所示的是在精選范圍內進行參數網格尋優的3D視圖和等高線圖,為保證模型更高的泛化能力,在最小的模型誤差參數組中選擇較小的懲罰因子C,由此得到最佳的參數組合C=4,g=0.5,ε=0.5.

圖7 參數g對模型支持向量占比的影響

圖8 網格搜索結果3D圖

圖9 網格搜索結果等高線圖
由于循環流化床鍋爐燃燒工況隨著時間和條件的變化在不斷改變,利用離線數據建立的固定模型不能真實地反映當前的實時工況,因此建立一個滑動更新的二氧化硫預測模型來驗證二氧化硫濃度的預測效果.這里,選取2015.03.22這一天的某段穩定運行數據,采樣時間為10s.建立一個隨時間滑動的建模數據區間,區間長度為100步并保持不變.模型更新時間T為30步,即每間隔30步,滑動一次建模數據區間,更新模型.設置參數C=4,g=0.5,ε=0.5.訓練模型,得到如圖 10所示的二氧化硫濃度預測值與實際值對比的效果圖.

圖10 二氧化硫濃度模型預測輸出
由圖10可見,基于SVM的二氧化硫模型預測輸出曲線很好擬合實際值曲線,77.54%的樣本預測輸出相對誤差小于4.39%,90.58%的樣本預測輸出相對誤差小于6.88%.
表1為基于SVM的二氧化硫模型預測精度,可見預測精度較高.其相關系數為0.84,相關性很強,平均誤差為1.96 mg/m3,均方根誤差為2.85 mg/m3.

表1 二氧化硫濃度模型預測精度
CFB鍋爐運行工況復雜,煙氣的二氧化硫對象具有很強的非線性,傳統的建模方法很難獲得較為精確的模型,為解決此問題,本文建立了一種基于支持向量機煙氣二氧化硫排放量預測模型.同時,為了減少支持向量機回歸模型參數尋優的計算量,本文采用單變量參數搜索結合網格尋優的方法來確定模型參數.通過將模型預測值與實際測量值對比,實驗結果表明基于SVM二氧化硫濃度預測模型有很好的預測效果.
1鄭海明,楊志.燃煤電廠二氧化硫排放質量濃度的軟測量技術.動力工程學報,2013,33(2):130-134.
2吳曉蔚.火電廠執行大氣污染物排放新標準的達標研究.環境監測管理與技術,2015,27(6):57-60.
3劉林杰.基于過程監控的煙氣排放軟測量預測研究[碩士學位論文].北京:華北電力大學,2015.
4王松,王東風,董宇.基于支持向量機的CFB鍋爐煙氣含氧量建模和預測.電力科學與工程,2013,29(6):57-60,72.
5王定成,方延健,高理富,等.支持向量機回歸在線建模及應用.決策與控制,2003,18(1):89-91,95.
6Kaneko H,Funatsu K.Application of online support vector regression for soft sensors.AICHE Journal,2014,60(2):600-612.[doi:10.1002/aic.14299]
7李先知.污水處理過程遠程監控系統設計與支持向量機技術應用研究[碩士學位論文].合肥:中國科學技術大學,2016.
8Chang CC,Lin CJ.LIBSVM:A library for support vector machines.ACM Transactions on Intelligent Systems and Technology,2011,2(3):Article No.27.
9Basak D,Pal S,Patranabis DC.Support vector regression.Neural Information Processing-Letters and Reviews,2007,11(10):203-224.
10榮海娜,張葛祥,金煒東.系統辨識中支持向量機核函數及其參數的研究.系統仿真學報,2006,18(11):3204-3208,3226.[doi:10.3969/j.issn.1004-731X.2006.11.050]
11管曉晨.基于支持向量機的循環流化床鍋爐燃燒系統建模與控制[碩士學位論文].南京:東南大學,2015.
12薄翠梅,張湜,王執銓,等.基于滑動時間窗的支持向量機軟測量建模研究.自動化儀表,2006,27(1):45-48.