陳紅巖,劉嘉豪,盛偉銘,黃 瀚,趙永佳
(1. 中國計量大學(xué) 現(xiàn)代科技學(xué)院,浙江 杭州 310018; 2.中國計量大學(xué) 機電工程學(xué)院,浙江 杭州 310018)
天然氣的主要成分為甲烷,在使用中需要對甲烷氣體進行檢測。現(xiàn)在紅外甲烷傳感器具有精度高、使用壽命長等優(yōu)點,被廣泛用于氣體的測量,所以如何進一步減小甲烷氣體的測量誤差成為一個被關(guān)注的問題[1,2]。
近年來,徑向基(RBF)、小波神經(jīng)網(wǎng)絡(luò)以及SVM等在數(shù)據(jù)處理領(lǐng)域有了廣泛應(yīng)用。不斷涌現(xiàn)出的算法也為氣體定量分析和數(shù)據(jù)仿真提供了新的途徑,如Ali Gulbag等提出一種應(yīng)用在混合氣體濃度定量識別中的徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)降維方法,簡化了數(shù)據(jù)集,加快了收斂速度[3];楊景明等采用改進果蠅算法與最小二乘支持向量機相結(jié)合的方法,用于鋁熱連軋現(xiàn)場數(shù)據(jù)的仿真,減小了預(yù)測誤差[4];吳永忠等以RBF網(wǎng)絡(luò)為核心提出了一種新型甲烷定量分析模型,有效減少了環(huán)境溫度和難以滿足朗伯-比爾定律約束條件帶來的誤差[5];梁杰等以前向和反向兩種修正算法為基礎(chǔ),提出了一種多級修正模型,解決了車載氣體傳感器測量結(jié)果不易修正及準確度低的問題[6]。
本文用實驗室研制的紅外甲烷傳感器對濃度在0~5.05%范圍的25組標準甲烷氣體進行測量,選取其中20組樣本作為訓(xùn)練集,使用不同算法和SVM結(jié)合建立了多種回歸模型,其余5組樣本作為測試集用來驗證模型的預(yù)測精度。通過計算對比表明,基于灰狼優(yōu)化算法(grey wolf optimization,GWO)的支持向量機(support vector machine,SVM)更具優(yōu)勢。
支持向量機SVM是一種統(tǒng)計學(xué)習(xí)理論回歸方法[7,8]。其主要思想是將輸入數(shù)據(jù)(低維空間)映射到高維特征空間,然后構(gòu)造一個核函數(shù)來實現(xiàn)線性回歸函數(shù)。
本文將已知濃度的甲烷氣體樣本和相對應(yīng)的紅外甲烷傳感器測量輸出的電壓差值比作為數(shù)據(jù)集T={(x1,y1),…,(xN,yN)}∈(R×R),其中xi∈R為紅外甲烷傳感器輸出的電壓比值,yi∈R為對應(yīng)的甲烷氣體濃度值,i=1,2,…,N。按照式(1)進行回歸分析。
f(xi)=ω·φ(xi)+b
(1)
式中:ω·φ(xi)為向量ω與φ(xi)的內(nèi)積;ω為回歸系數(shù);φ(xi)為輸入空間到特征空間的映射函數(shù);b為閾值。
在此引入松弛變量ξ,ξ*≥0求解ω與b,根據(jù)SRM準則,將式(1)轉(zhuǎn)換為凸二次規(guī)劃問題:
(2)
(3)
式中:正則化參數(shù)C為懲罰因子;ε為不敏感損失函數(shù)。
引入Lagrange函數(shù)求解式(2),通過核函數(shù)k(xi,xj)將高維空間的內(nèi)積運算轉(zhuǎn)換在原二維空間計算,有:
(4)
得到的SVM回歸模型的回歸函數(shù)為:
f(x)=ω·φ(x)+b
(5)
在非線性情況下,一般的核函數(shù)是高斯徑向基核函數(shù)(RBF),其表達式如式(6):
K(xi,xj)=exp(-g||xi-xj||2),g>0
(6)
式中:g為gamma參數(shù)函數(shù)設(shè)置(若k為屬性的數(shù)目,則g默認為1/k)。
在支持向量機模型中,懲罰因子C和核函數(shù)自帶參數(shù)g的取值將對訓(xùn)練數(shù)據(jù)和預(yù)測數(shù)據(jù)的精度產(chǎn)生較大影響。懲罰因子C即對誤差的寬容度,C過大或過小都會產(chǎn)生不好的影響(過擬合和欠擬合)。參數(shù)g隱含地決定了數(shù)據(jù)映射到新的特征空間后的分布,g的大小和支持向量的個數(shù)息息相關(guān)。因此,尋找最優(yōu)參數(shù)至關(guān)重要。
2014年,澳大利亞學(xué)者Mirjalili等提出了一種新的元啟發(fā)式算法——GWO[9]。該算法的靈感來自于灰狼,是一種模仿了灰狼的等級關(guān)系和自發(fā)的捕獵行為來實現(xiàn)目標優(yōu)化的新型群智能優(yōu)化方法,具有較強的收斂性、參數(shù)小、易實現(xiàn)等特點。在該方法中,把狼群分為4個社會階級α、β、δ、ω(其中α最高,ω最低),如圖1所示。
圖1 灰狼等級制度(從上到下遞減)Fig.1 Grey wolf hierarchy
上層階級領(lǐng)導(dǎo)指揮開展狩獵行動,GWO算法的具體步驟如下:
1) 包圍獵物:進行狩獵行動時,狼群會先開始包圍獵物。這種包圍行為的數(shù)學(xué)建模為:
(7)
2) 追捕獵物:灰狼可以搜索獵物的位置和獵殺它們,這種行為通常由α階層指導(dǎo),目前為止獲得的前3個最佳位置會被保存,并要求其他搜索代理(包括ω)根據(jù)最佳搜索代理的位置更新其位置。這種行為的數(shù)學(xué)建模為:
(8)
在支持向量機參數(shù)優(yōu)化方法中,GWO方法在復(fù)雜搜索空間的全局搜索中具有傳統(tǒng)方法所不具備的優(yōu)勢。此外,與人工神經(jīng)網(wǎng)絡(luò)等其他機器學(xué)習(xí)算法相比,GWO-SVM模型更適合小樣本數(shù)據(jù)而不是大樣本數(shù)據(jù),而且具有更好的學(xué)習(xí)效果[10]。
樣本大小以30個單位為界,因此本次實驗的樣本數(shù)據(jù)屬于小樣本數(shù)據(jù),完全契合GWO-SVM模型的使用范圍?;贕WO的SVM參數(shù)優(yōu)化過程如圖2所示。
圖2 GWO-SVM模型流程圖Fig.2 Model flow chart of GWO-SVM
實驗采用基于Non-Dispersive InfraRed(NDIR)原理制作的甲烷傳感器對甲烷氣體進行檢測[11,12]。向甲烷傳感器氣室中充入待測濃度的甲烷氣體,當MCU調(diào)制的紅外光源通過氣室時,由于甲烷對特定波長的紅外光有吸收,因此當特定波長的紅外光通過待測氣體后,在特征吸收峰附近的紅外能量會被全部吸收,導(dǎo)致光強的衰減,探測器將檢測剩余的光強度并轉(zhuǎn)化為電信號,經(jīng)過信號調(diào)理電路處理后作為模型的輸入,其原理如圖3所示(U1、U2分別為測量通道和參考通道的電壓值)。圖4、圖5為紅外甲烷氣體傳感器和實驗采樣圖。
圖3 甲烷氣體測量系統(tǒng)原理圖Fig.3 Methane gas detection schematic diagram
圖4 紅外甲烷傳感器結(jié)構(gòu)Fig.4 Infrared methane sensor
圖5 實驗采樣系統(tǒng)Fig.5 The experimental sample
本次實驗用紅外甲烷傳感器對0~5.05%濃度范圍的25組標準甲烷氣體進行測量[13]。根據(jù)朗伯比爾定律(Lambert-Beer law)對氣體濃度公式進行推導(dǎo)后發(fā)現(xiàn),對于一個確定的傳感器系統(tǒng)而言,只需得到測量通道和參考通道的電壓差與參考通道電壓的比值即可求出氣體濃度,因此把這個電壓差值比作為最終輸出。從中選取20組數(shù)據(jù)作為訓(xùn)練集,用3種不同的方法各自建立SVM回歸模型,對比3種模型的回歸效果。把剩余濃度分別為0.18%、0.94%、2.01%、3.13%、4.53%的5組數(shù)據(jù)作為測試集,用已建立好的回歸模型進行預(yù)測,驗證SVM回歸模型的預(yù)測精確度,檢測數(shù)據(jù)如表1。
表1 甲烷傳感器采樣數(shù)據(jù)Tab.1 Methane sensor sampling data
SVM回歸模型的建立需要找到最優(yōu)的懲罰因子參數(shù)C和RBF核函數(shù)參數(shù)g,本文采用的基于GWO的SVM方法進行參數(shù)尋優(yōu)的步驟如下[14,15]:
1) 輸入訓(xùn)練集和測試集。
鐵路系統(tǒng)中的各設(shè)計單位正在大力推廣基于BIM的設(shè)計技術(shù),咨詢單位對BIM的研究、應(yīng)用成熟度,需與設(shè)計單位基本同步。
2) 初始化GWO、SVM參數(shù),隨機產(chǎn)生狼群,每個狼群位置即為C、g。
3) 計算每頭灰狼的適應(yīng)度值,根據(jù)適應(yīng)度值將狼群分為4個階級α、β、δ、ω,進行迭代。
4) 更新每頭灰狼的位置和每頭灰狼在新位置上的適應(yīng)度值。
5) 判斷是否滿足迭代終止條件,若滿足,則停止迭代,輸出SVM中C和g的最優(yōu)值;不滿足,則轉(zhuǎn)到步驟4),當所得參數(shù)組合不唯一時,取C最小的組合。
為了顯示通過GWO算法進行SVM參數(shù)尋優(yōu)的優(yōu)勢,與目前普遍使用的GridSearch法和PSO算法進行SVM參數(shù)尋優(yōu)建立的回歸模型進行對比。訓(xùn)練集在3種算法建立的SVM回歸模型上的驗證效果如圖6~圖8所示。
圖6 基于網(wǎng)格搜索法的SVMFig.6 SVM based on Grid Serach
圖7 基于粒子群優(yōu)化算法的SVMFig.7 SVM based on PSO
圖8 基于灰狼優(yōu)化算法的SVMFig.8 SVM based on GWO
由圖6~圖8可知,圖8所采用的基于灰狼優(yōu)化算法的SVM建立的回歸模型效果最好。表2為以上3種方法建立SVM回歸模型時的最優(yōu)參數(shù)、尋優(yōu)時間及其均方差。
由表2可知,采用傳統(tǒng)SVM尋優(yōu)得到的參數(shù)C與采用GWO算法尋優(yōu)得到的參數(shù)C范圍相差不大,而后者均方根誤差明顯更小。
表2 模型參數(shù)Tab.2 Model parameter
將GWO算法尋優(yōu)得到的參數(shù)代入SVM來建立所需的預(yù)測回歸模型,并進行預(yù)測,得到的預(yù)測結(jié)果如圖9所示。
圖9 回歸模型預(yù)測輸出與實際輸出對比圖Fig.9 A comparison diagram between the predicted output of the regression model and the actual output
圖9表明,基于GWO算法尋優(yōu)建立的SVM回歸模型預(yù)測曲線和期望曲線很接近,具有很高的預(yù)測精度。
3種方法的誤差結(jié)果對比見表3。
表3 模型預(yù)測誤差對比Tab.3 Model prediction error comparison (%)
同樣,表3表明,基于GWO算法尋優(yōu)建立的SVM回歸模型其絕對和相對誤差都明顯低于其他2種傳統(tǒng)SVM建立的回歸模型的誤差。
本文將GWO算法應(yīng)用于SVM的參數(shù)尋優(yōu),以此建立紅外甲烷傳感器測量數(shù)據(jù)的處理模型,并與傳統(tǒng)的PSO算法和Grid Serach法所建立的模型進行對比分析。研究結(jié)果表明,其回歸效果最好,仿真的相對誤差小于2%,不僅能滿足紅外甲烷傳感器測量誤差的要求,而且對類似測量數(shù)據(jù)處理的問題,也提供了參考。