基于支持向量機(jī)的沼氣中CH4濃度預(yù)測
摘要:組建了沼氣檢測的實驗系統(tǒng),采用國家標(biāo)準(zhǔn)混合氣獲取大量的濃度標(biāo)定數(shù)據(jù),分析了目前廣泛應(yīng)用的甲烷濃度預(yù)測算法及影響預(yù)測結(jié)果的因素,討論了支持向量機(jī)在CH4濃度預(yù)測中的應(yīng)用,在此基礎(chǔ)上研究了將多通道探測器的電壓輸出及環(huán)境溫度共同作為支持向量機(jī)的輸入,實現(xiàn)CH4濃度的預(yù)測。將該方法與線性插值法、多項式回歸法、神經(jīng)網(wǎng)絡(luò)法等多種方法進(jìn)行比較,預(yù)測結(jié)果的平均絕對誤差減小了0.44%~1.99%。初步試驗結(jié)果表明該方法在CH4濃度檢測中具有一定的應(yīng)用前景。
關(guān)鍵詞:沼氣;CH4;濃度預(yù)測;SVM
0 引言
沼氣是一種優(yōu)質(zhì)、高效、綠色、環(huán)保的燃料。沼氣由50%~80%甲烷(CH4)、20%~40%二氧化碳(CO2)、0%~5%氮氣(N2)、0.1%~3%硫化氫(H2S)等氣體組成。當(dāng)較多的沼氣泄露在生活環(huán)境中時,有可能令人窒息;沼氣使用中,CH4濃度在5%~15%之間時,會有爆炸的危險;CH4濃度低于50%,就不能正常燃燒。因此,對沼氣中CH4濃度預(yù)測進(jìn)行研究,顯得非常必要。
基于不同工作原理,現(xiàn)有的CH4濃度檢測方法主要有:奧式氣體檢測法、催化燃燒法、紅外光譜檢測法。目前沼氣中CH4濃度預(yù)測較多地采用紅外多波長法。但該方法也會帶來新的問題。例如:當(dāng)檢測沼氣中CH4濃度時,沼氣中較多的CO2會對CH4通道和參考通道的輸出帶來影響,從而影響CH4的預(yù)測精度,所以本文討論利用數(shù)據(jù)處理的方法提高CH1濃度預(yù)測精度。
目前,常用的CH4濃度預(yù)測算法有線性插值法、多元回歸法、神經(jīng)網(wǎng)絡(luò)法(Neural Network,NN)。其中,線性插值法與多元回歸法為傳統(tǒng)算法,精度低;神經(jīng)網(wǎng)絡(luò)需要大量的樣本才能擬合出較好的模型,且容易陷入局部極小值點。本文所探討的支持向量機(jī)(Support Vector Machine,SVM)專門解決小樣本問題,以結(jié)構(gòu)風(fēng)險最小化為原則尋找全局最優(yōu)解。
在預(yù)測沼氣中CH4濃度時,本文首次嘗試把溫度作為影響探測器輸出的重要因素,引入溫箱控制探測器的環(huán)境溫度,以獲取不同溫度下的693個樣本,把溫度和探測器的輸出作為SVM的輸入,建立CH4預(yù)測模型,得到理想的預(yù)測精度。
1 支持向量機(jī)簡介
SVM是一種機(jī)器學(xué)習(xí)方法,根據(jù)結(jié)構(gòu)風(fēng)險最小化原則,大大提高了學(xué)習(xí)機(jī)的泛化能力,它將優(yōu)化問題轉(zhuǎn)化為求解一個凸二次規(guī)劃的問題,二次規(guī)劃所得的解是惟一的且為全局最優(yōu)解,這樣就不存在一般神經(jīng)網(wǎng)絡(luò)的局部極值問題。
回歸型支持向量機(jī)(SVR)是支持向量機(jī)在回歸學(xué)習(xí)中的應(yīng)用,其基本思想是:對于給定的訓(xùn)練樣本點{(x1,y1),(x2,y2),…,(xn,yn)}通過SVR訓(xùn)練回歸出一個函數(shù)f(x),使由該函數(shù)求出的每個輸入樣本的輸出值和輸入樣本對應(yīng)的目標(biāo)值相差不超過誤差e,同時使回歸出的函數(shù)盡量平滑,能克服傳統(tǒng)的線性插值法、多元回歸法預(yù)測精度低的缺點,解決高濃度CO2對CH4通道和參考通道的輸出帶來的影響,且較NN有更好的推廣能力。另外,溫度對氣體探測器的輸出有一定的影響,本文研究了將溫度作為模型的輸入之一,同時將多通道探測器的電壓輸出作為SVM的輸入,實現(xiàn)CH4濃度預(yù)測。
2 實驗數(shù)據(jù)的獲取
2.1 系統(tǒng)結(jié)構(gòu)與紅外多波長探測簡介
硬件系統(tǒng)結(jié)構(gòu)如圖1所示。鋼瓶里的高壓標(biāo)準(zhǔn)氣CH4經(jīng)過減壓閥減壓后,通過氣體管道流向配氣箱里的流量計1,配氣箱經(jīng)自帶的電腦軟件進(jìn)一步控制并計量流量計1內(nèi)氣體的流速,流出配氣箱以后,與經(jīng)過流量計2,3的CO2,N2(稀釋作用,非異核分子,對CH4通道影響小)進(jìn)行定比混合,再進(jìn)入溫箱,溫箱里的沼氣檢測電路板包括多通道探測器(CH4,CO2),參考端)和相應(yīng)的信號處理電路,氣體經(jīng)過檢測氣室以后,排到通風(fēng)櫥。
上述沼氣檢測基于紅外吸收原理,如圖2所示。
異核分子結(jié)構(gòu)(由不同種類化學(xué)原子構(gòu)成的分子)的氣體對中紅外波段的紅外線具有選擇吸收特性,CH4特征吸收峰值波長為3,32μm,CO2為4.24μm。探測器的CH4,CO2通道前端分別裝有CH4,CO2特征吸收光的濾光片,探測器接收到紅外輻射后有電壓輸出。探測時氣體濃度越大,對其特征波長的紅外光吸收越強(qiáng),對應(yīng)探測電壓越小。參考端濾光片能通過的紅外光子幾乎不被氣體吸收,最能體現(xiàn)光源信息和氣室污染情況。實踐中探測器的濾光片受工藝的限制,它透射光譜的裙部不可能完全避開兩種氣體吸收區(qū)的交叉敏感區(qū)域,所以當(dāng)氣體濃度較高時,就會產(chǎn)生干擾問題,例如圖2中CH4的特征吸收峰值波長為3.32μm,但在4.2~4.4μm之間也有吸收。本文就是采用SVM來解決這種交叉干擾問題的。
2.2 實驗數(shù)據(jù)獲取過程
(1)將實驗系統(tǒng)按圖1結(jié)構(gòu)組建好;
(2)設(shè)置溫箱溫度T1,等待2個小時,使得溫度恒定;
(3)將三個流量計的流速均設(shè)置為0,打開上位機(jī)數(shù)據(jù)獲取軟件,為數(shù)據(jù)獲取做準(zhǔn)備;
(4)打開氣瓶減壓閥,使氣體流出;
(5)按所要配置的氣體濃度Ci,分別設(shè)置流量計1,2,3的流速;待傳感器輸出穩(wěn)定時,獲取CH4,CO2,參考端的輸出值并保存;
(6)CH4濃度標(biāo)定范圍為0%~100%(0%,1%,2%,…,100%,共19個標(biāo)定點),CO2為0%~100%(0%,0.5%,1%,…,100%,共23個標(biāo)定點)。實際標(biāo)定時,先固定CH4濃度,不斷改變CO2的濃度得到一組測量值;然后改變CH4濃度到另一固定值,再不斷改變CO2的濃度得到另一組測量值;重復(fù)(5),采集到不同氣體濃度組合的探測器輸出值;
(7)改變溫箱溫度Ti,重復(fù)(2)~(6),得到不同溫度下的數(shù)據(jù)。
通過上述數(shù)據(jù)采集過程,最終得到0℃,25℃,40℃,50℃的試驗數(shù)據(jù)693組,為進(jìn)行SVR做準(zhǔn)備。實驗數(shù)據(jù)如表1所示,U1,U2,Ur行分別代表CH4,CO2,參考端的A/D值。
3 基于SVM的CH4濃度的預(yù)測算法
3.1 SVM預(yù)測模型的建立
上述分析可知,參考端(Ref探測端)最能體現(xiàn)光源信息;U1/Ur,U2/Ur與U1,U2相比,更能體現(xiàn)CH4和CO2對其特征光子吸收的程度;同樣組分的沼氣混合氣,溫度不同時,傳感器的幾個通道輸出不在同一數(shù)域。鑒于SVM善于解決小樣本、非線性問題,及其好的泛化能力,把溫度T,U1/Ur,U2/Ur,作為支持向量機(jī)的三維輸入,建立CH4濃度的SVM預(yù)測框圖,如圖3所示。SVM的輸出為CH4濃度的預(yù)測值。
SVM常用的核函數(shù)有多項式、徑向基函數(shù)(RBF)、Sigmoid等。其中,Gauss徑向基函數(shù)能比較好地模擬光譜信號的譜峰等特征信息,故選用RBF核函數(shù)。SVM的參數(shù)有σ2和γ,σ2取值過大,將使模型過早收斂;γ控制對超出誤差的樣本的懲罰程度。用反復(fù)試驗的方式選取(σ2,γ),建立模型后,將測試樣本的T,U1/Ur,U2/Ur代入模型進(jìn)行計算,比較模型預(yù)測值與試驗標(biāo)定值,直到滿足模型預(yù)測精度要求。本文最終確定σ2=10 000,γ=1。
3.2 結(jié)果與分析
在獲得的693個樣本中,隨機(jī)選擇543個作為訓(xùn)練樣本,150個作為檢驗樣本。將本文方法與線性插值法(Liner Interpolation,L-I)、多元回歸法(Multiple Regression,M-R)、BP神經(jīng)網(wǎng)絡(luò)、RBF神經(jīng)網(wǎng)絡(luò)、未把溫度作為支持向量機(jī)(SVM-noT)輸入幾種方法做比較,這些方法具體如下:
(1)線性插值法:由已知點(x01,y01),(x02,y02),…,(xon,y0n),依照空間線性關(guān)系建立y=A·x模型(A為系數(shù)矩陣),求解x11,x12,…,x1n所對應(yīng)的y11,y12,…,y1n;
(2)多項式回歸法:由已知點(x01,y01),(x02,y02),…,(x0n,y0n),依照最小二乘原則建立y=f(x)多項式模型,進(jìn)而求解x11,x12,…,x1n所對應(yīng)的y11,y12,…,y1n;
(3)BP神經(jīng)網(wǎng)絡(luò)法:基于誤差反向傳播算法的多層前向神經(jīng)網(wǎng)絡(luò),建立已知樣本的輸入、輸出模型。本文以溫度T,U1/Ur,U2/Ur為輸入,CH4的預(yù)測濃度為輸出建立BP神經(jīng)網(wǎng)絡(luò)模型;
(4)RBF神經(jīng)網(wǎng)絡(luò)法:即以函數(shù)逼近理論為基礎(chǔ)、傳遞函數(shù)為徑向基函數(shù)的一類前向神經(jīng)網(wǎng)絡(luò),可以在多維空間中擬合最佳模型。本文以溫度T,U1/Ur,U2/Ur為輸入,CH4的預(yù)測濃度為輸出建立RBF神經(jīng)網(wǎng)絡(luò)模型;
(5)SVM-noT法:不考慮溫度因素的影響,即在圖3中去掉“SVM模塊”前端的“溫度T”輸入,只保留U1/Ur,U2/Ur兩元輸入,建立輸入、輸出模型。
測試時,把x1j作為上述五種方法建立模型的輸入,輸出為CH4的預(yù)測濃度,可以檢驗這些模型的精度,其中向量xij=[T,U1/Ur,U2/Ur],i=0,1;j=1,2,…,n;x0j為訓(xùn)練樣本,x1j為測試樣本,為預(yù)測濃度。將本文考慮溫度的SVM方法與前五種方法進(jìn)行對比時,是以預(yù)測結(jié)果的最大誤差絕對值和誤差絕對平均來衡量的。六種方法的仿真結(jié)果對比如圖4所示。
從圖中可以看出:SVM優(yōu)于M-R,RBF,BP,L-I和SVM-noT法,誤差最小,取得了最好的預(yù)測精度。SVM模型的核函數(shù)能更好地模擬光譜信號的譜峰等特征信息,能充分考慮到沼氣中其他成分對CH4通道輸出的影響,實現(xiàn)U1/Ur,U2/Ur,溫度T對CH4濃度值更好地非線性映射,具有更好的泛化能力。
4 結(jié)論
針對沼氣中CH4濃度的預(yù)測問題構(gòu)建了實驗系統(tǒng),獲取了大量實驗數(shù)據(jù),探討了將溫度T,CH4和CO2探測器的輸出作為SVM的輸入,預(yù)測CH4濃度的方法,將該方法與常用的L-I,M-R,BP,RBF,SVM-noT五種方法進(jìn)行對比。實驗結(jié)果表明,本文方法具有較高的預(yù)測精度,為沼氣中CH4濃度的預(yù)測提供了一個良好的思路。