郭映映,齊賀香,李素文,牟福生
(淮北師范大學物理與電子信息學院,安徽 淮北 235000)
隨著我國從制造業(yè)大國向制造業(yè)強國轉變,能源消耗與污染問題變得愈發(fā)嚴重,空氣污染問題受到越來越多的關注。其中,NO2在酸雨、臭氧和光化學煙霧的形成過程中都扮演著重要角色[1],不僅影響著生態(tài)平衡與綠色環(huán)境,更影響著社會發(fā)展與人類安全,因此NO2空氣污染問題是亟需解決的重要難題之一。
近年來,關于PM2.5、O3、CO2等污染物建模預測的研究較多。國內彭巖等[2]構建了集成樹-梯度決策樹的模型對PM2.5濃度進行了預測;張怡文等[3]利用PCA-BP神經網絡也進行了PM2.5濃度的預測;黃鴻等[4]利用深度信念網絡和極限學習機對SO2濃度進行檢測;李素文等[5]基于改進Elman網絡對污染物濃度進行實時預測;Zeng等[6]預測車輛排放的CO2及其在生態(tài)路線導航中的應用。國外Luna等[7]人利用神經網絡和支持向量機預測出巴西里約熱內盧對流層O3濃度。但關于NO2的研究較少,因此本文以合肥地區(qū)NO2氣體濃度為研究對象,利用反向傳播(BP)神經網絡模型來預測NO2濃度。粒子群算法(PSO)是一種通過種群行為找出目標值最優(yōu)解的方法,具有全局搜索、收斂速度快等優(yōu)點[8]。BP神經網絡局部搜索能力較強,但易受初始權值的影響,產生局部最優(yōu)[9]。因此將二者結合起來構建粒子群優(yōu)化的反向傳播(PSO-BP)網絡預測模型,先用PSO算法對BP網絡的權重和閾值進行初始化,范圍縮小后,再用BP網絡精確求解,從而實現(xiàn)NO2氣體濃度的準確預測。
BP神經網絡包括輸入層、隱含層和輸出層三部分(圖1),輸入層用來接收外界信息,隱含層用來對信息進行表示和保存,輸出層用來對輸入層的信息進行識別和判斷[10]。各層神經元之間不存在連接,但與相鄰層的神經元之間存在連接。學習的過程分為信號的正向傳輸和誤差信號的反向傳輸兩部分。信號正向傳輸?shù)倪^程中,信號從輸入層經隱含層傳輸并處理后,最終到達輸出層。當輸出的預測值與真實值之間的誤差不滿足要求時,則誤差信號開始反向傳輸,誤差信號由輸出層向隱含層傳輸后重新回到輸入層,各層神經元得到的誤差信號,被用來調整該層神經元的權值和閾值。信號的正向傳輸和誤差信號的反向傳輸不斷循環(huán),因此權值和閾值被不斷調整,直至網絡輸出的誤差滿足要求或學習次數(shù)達到設定時,結束學習[11]。
圖1 神經網絡的拓撲結構圖Fig.1 Topological structure of BP neural network
BP神經網絡可以看成自變量是輸入值、因變量是網絡模型預測值的非線性函數(shù)。若網絡的輸入節(jié)點有n個,輸出節(jié)點有m個,則BP神經網絡就可以看成是一個包含n個自變量和m個因變量的非線性函數(shù)。網絡的學習過程如下:
1)初始化網絡的訓練次數(shù)、誤差下限、學習速率及連接權值和閾值。
2)通過連接權值ωi,j,輸入信號xi及閾值aj,得到隱含層的輸出結果:
式中 f為隱含層的激勵函數(shù),l為隱含層的節(jié)點個數(shù)。
3)利用輸出層的連接權值ωj,k和閾值bk及2)中隱含層的輸出結果,得到輸出層的輸出結果:
4)利用網絡模型的輸出結果Yk和期望輸出結果Vk,得到網絡模型的誤差:
5)通過網絡模型的誤差ek對網絡的連接權值ωi,j,ωj,k和閾值aj、bk進行更新,即
6)判斷是否滿足終止條件,若不滿足條件,則返回2),若滿足條件,則結束學習。
粒子群算法是一種新型的進化算法,它來源于對鳥類捕食行為的研究[12]。其核心思想是利用搜索空間中的每一個粒子來代表問題的每一個候選解,由目標函數(shù)來確定每個粒子的適應度值,粒子下一步運動的位置和速度由該粒子本身和已經確定好適應度值的粒子決定,最后找出個體粒子的最優(yōu)解和種群的最優(yōu)解。在粒子中不斷進行尋優(yōu),直到滿足迭代次數(shù),結束尋優(yōu)。假設搜索空間為D,n個不同的粒子構成種群X=(X1,X2,...,Xn),用Xi=(xi,1,xi,2,...,xi,D)T表示第i個粒子在這個D維搜索空間中的位置,即每個問題的候選解,將Xi代入到適應函數(shù) f(xi)中,求適應值。Vi=(vi,1,vi,2,...,vi,D)T表示第i個粒子的速度,Pbesti,d=(pi,1,pi,2,...,pi,D)T表示個體的極值,Gbestd=(g1,g2,...,gD)T表示群體的極值。在粒子每一次的搜索過程中,根據種群的群體極值和個體極值來更新粒子的位置和速度,更新公式為
式中Vi,d為粒子速度,k為迭代次數(shù),i=1,2,...,n,d=1,2,...,D,c1和c2為學習因子,r1和r1為[0,1]之間的隨機數(shù),xi,d為粒子位置。
在粒子群算法中存在著粒子向鄰域或群體歷史最優(yōu)位置和粒子自身最優(yōu)位置靠近的現(xiàn)象,從而導致粒子的快速趨同效應,引起種群產生過早收斂、局部極值等不良現(xiàn)象。根據遺傳算法中的變異思想,在粒子群算法中加入自適應變異算子,以一定的可能性選取變量并重新對其進行初始化,來避免上述不良現(xiàn)象的產生。變異的操作使粒子在迭代過程中通過種群搜索空間的不斷減小而跳出當前的局部搜索空間,在更大的空間中進行搜索,這不僅保證了粒子的多樣性不會減少,還確保粒子不會產生局部最優(yōu)的現(xiàn)象。因此,BP神經網絡連接權值和閾值經粒子群算法對其進行初始化后,再利用BP神經網絡預測模型進行訓練,最后輸出的NO2濃度就是預測的最優(yōu)解。粒子群算法改進BP神經網絡模型的流程圖如圖2。
圖2 粒子群算法改進BP神經網絡算法的流程圖Fig.2 Flow diagram of the improved BP neural network algorithm by particle swarm optimization
參與空氣質量評價的主要污染物為NO2、PM2.5、PM10、SO2、CO和O3,因此下面以合肥市2017年1月1日至2019年12月31日的污染物PM2.5、PM10、SO2、CO和O3濃度為影響因子,對NO2濃度進行預測,以制定有效的環(huán)境改善措施。實驗數(shù)據來源共分兩類,一類是來源于中國空氣質量在線監(jiān)測分析平臺的大氣污染數(shù)據,該數(shù)據收集了研究期間每日的NO2、PM2.5、PM10、SO2、CO平均濃度和O3_8h(臭氧的日最大值8 h滑動平均濃度)。另一類是氣象數(shù)據,來源于中國氣象科學數(shù)據中心,選取同期與NO2濃度相關性較大的氣象數(shù)據,即每日平均溫度、平均相對濕度、平均風速、平均氣壓和總降水量。合肥市2017–2019年樣本個案數(shù)、缺失計數(shù)及缺失百分比如表1所示,空氣質量與氣象要素描述性統(tǒng)計結果如表2所示。
表1 合肥市2017–2019年樣本個案數(shù)、缺失計數(shù)及缺失百分比統(tǒng)計Table 1 Statistics of sample cases,missing count and missing percentage in Hefei City from 2017 to 2019
表2 合肥市2017–2019年空氣質量與氣象要素描述性統(tǒng)計Table 2 Descriptive statistics of air quality and meteorological elements in Hefei City from 2017 to 2019
從表1中可以看出,本次實驗選取觀測數(shù)據共有1095組,其中有27組存在缺失值,單個變量中缺失個數(shù)最多的是O3_8h,僅占其樣本數(shù)的1.1%。利用插值法中的分段三次樣條插值[13]對缺值進行補充,補充后的各要素的樣本個案數(shù)均為1095,插值后的完整數(shù)據描述性統(tǒng)計特征見表3。
表3 插值后的完整數(shù)據描述性統(tǒng)計Table 3 Descriptive statistics of complete data after interpolation
圖3(a)展示了合肥地區(qū)2017–2019年NO2濃度的日均值,可以看出,合肥地區(qū)NO2日均濃度在一年內呈現(xiàn)“U”型變化,即冬季濃度最高,夏季濃度最低的特征。三年來最高NO2濃度出現(xiàn)在2017年3月10日,為137μg·m-3,最低NO2濃度出現(xiàn)在2018年8月17日,僅為9μg·m-3。圖3(b)展示了合肥地區(qū)NO2濃度2017–2019年年度每周工作日和非工作日的日變化平均值及其在三年期間總平均值,可以看出,NO2濃度穩(wěn)定在總體年均值附近,與具體日期關系不大,沒有明顯的“周末效應”[14]。
圖3 2017–2019年間合肥地區(qū)NO2濃度日均值(a)和年度每周工作日和非工作日的日變化平均值及其在三年期間總平均值(b)Fig.3 Daily mean of NO2concentration in Hefei from 2017 to 2019(a)and the daily variation mean value of working and non working days per week in each year and its total mean value over the three-year period(b)
圖4給出了三年來合肥地區(qū)NO2日均濃度的月均值變化圖,發(fā)現(xiàn)這三年變化趨勢一致,均呈現(xiàn)“U”型曲線分布特征。其中,11月份平均濃度最高,為60.47μg·m-3,隨后再逐漸降低,到7月份平均濃度達到最低,為27.19μg·m-3,隨后再逐漸升高。觀察2019年NO2月均濃度變化,發(fā)現(xiàn)2月份下降迅速,這是由于2月份是疫情管控期間,交通和工廠管制使得NO2排放量減少。3月份開始,疫情得到初步控制,工廠復工、交通恢復導致NO2濃度又開始增加。
圖4 2017–2019年合肥地區(qū)NO2濃度的月均值Fig.4 Monthly mean NO2concentration in Hefei from 2017 to 2019
為分析各影響因子的變動對NO2濃度變化的影響程度,選取2017年1月1日至2019年12月31日合肥地區(qū)6項大氣污染物和5項氣象因素的觀測數(shù)據,對NO2日均濃度構建逐步回歸模型[15]。進行變量篩選時,被模型選入或剔除的顯著性水平分別為0.05和0.1,模型篩選過程的匯總見表4,因變量為NO2日濃度。
表4 逐步回歸模型篩選過程匯總Table 4 Summary of the screening process of stepwise regression model
模型最先引進自變量PM2.5、PM10,緊接著依次引入O3_8h、SO2、CO、平均氣壓、平均2 min風速和平均氣溫。模型3剔除自變量PM2.5,模型4重新引入PM2.5,模型7剔除平均氣壓,至此逐步回歸分析建模結束。模型7為逐步回歸分析得到的最終模型,其對應的回歸系數(shù)和統(tǒng)計特征見表5。該模型的表達式為
表5 模型7對應的回歸系數(shù)和t統(tǒng)計量及其概率Table 5 Regression coefficients,t statistics and its probabilities corresponding to Model 7
式中Y表示NO2日均濃度,X1、X2、X3、X4分別表示PM2.5、PM10、SO2、CO日均濃度,X5、X6分別表示平均2 min風速和平均氣溫。該逐步回歸模型可以解釋為PM2.5等自變量的變動會引起因變量NO2發(fā)生相應的變動。例如,當其他條件不變時,PM2.5的濃度每增加1單位,NO2的濃度就會減少0.2218單位。由表4可知,該逐步回歸模型F-stat為414.555,其對應概率為0.0,表明在0.05顯著水平下,該模型通過了顯著性檢驗,并且模型調整后的R2為0.694,說明該模型具有較好的擬合效果。此外模型t統(tǒng)計量的概率均小于0.05顯著性水平,表明這些變量均與NO2日均值濃度的相關性較大。
首先對采集到的數(shù)據進行預處理操作,通過逐步回歸方法對預處理后的數(shù)據進行特征篩選,篩選出與NO2濃度值關聯(lián)度較高的因子,將這些因子構成的數(shù)據集作為BP神經網絡的輸入樣本,分別利用遺傳算法和粒子群算法對BP神經網絡的權值、閾值進行調整,再將這三種預測模型的結果進行對比。利用合肥地區(qū)2017年1月1日至2019年12月31日的數(shù)據構建預測模型。其中2017年1月1日至2019年9月22日共995天的NO2日均濃度數(shù)據做為訓練集樣本,2019年9月23日至12月31日共100天的數(shù)據做為測試集樣本。由于預測是對未知數(shù)據進行估計,所以預測結果與真實數(shù)據之間必定存在誤差。因此引入平均絕對誤差EMA、平均絕對百分比誤差EMAP、均方誤差EMS和均方根誤差ERMS,對模型的預測結果進行評價。各模型的參數(shù)設置為:
式中yj為模型的預測值,vj為模型的真實值。
1)BP神經網絡模型參數(shù)設置:采用5個隱層節(jié)點,傳輸函數(shù)隱層采用默認的tansig函數(shù),輸出層采用purelin函數(shù),迭代次數(shù)100次,最小誤差限0.001,學習率0.01,歸一化算法為y=(x-xmin)/(xmax-xmin)。
2)遺傳算法改進的反向傳播(GA-BP)神經網絡模型參數(shù)設置:遺傳算法進化30代,種群規(guī)模20,交叉選擇概率0.3,變異選擇概率0.1,其他參數(shù)設置與1)相同。
3)PSO-BP神經網絡模型參數(shù)設置:粒子群進化30代,種群規(guī)模20,學習因子C1=C2=1.5,其他參數(shù)設置與1)相同。
表6給出在三種不同輸入樣本的情況下,利用三種不同的模型對NO2濃度進行預測的誤差。三種不同輸入樣本的情況分別為NO2濃度、NO2濃度及全部影響因子和NO2濃度及相關性較高的影響因子。
表6 三種預測模型的預測誤差對比Table 6 Comparison of prediction errors of the three prediction models
對比表6中三種不同輸入樣本的結果,發(fā)現(xiàn)NO2濃度及相關性較高的影響因子作為三種預測模型的輸入樣本時,EMA、EMAP、EMS和ERMS的值均最小。再對比不同模型的結果,發(fā)現(xiàn)PSO-BP模型輸出結果的EMA、EMAP、EMS和ERMS的值最小,GA-BP模型輸出結果次之,BP模型輸出結果最大。表明NO2及相關性較高的影響因子作為PSO-BP模型的輸入樣本時的誤差最小,EMA、EMAP、EMS和ERMS分別為0.039、0.072、0.002、0.046。
圖5給出了NO2濃度及相關性較高的影響因子作為輸入樣本時不同預測模型的預測值與真實值的對比結果。由圖可知,三種預測模型均能預測出NO2日均濃度的變化趨勢,BP神經網絡預測模型的預測結果普遍高于真實值,GA-BP模型的預測結果略低于真實值,只有PSO-BP模型的預測結果與真實值的擬合程度、擬合曲線的吻合度都比較高。對比三種不同的預測模型,發(fā)現(xiàn)PSO-BP模型預測的結果明顯優(yōu)于BP模型和GA-BP模型。表明PSO-BP神經網絡模型預測精度高、誤差小,能夠廣泛應用于大氣NO2濃度的實際預測中。
圖5 BP(a)、GA-BP(b)和PSO-BP(c)三種預測模型的預測值與真實值的對比圖Fig.5 Comparison between the real value and the predicted value of BP(a),GA-BP(b)and PSO-BP(c)respectively
以合肥地區(qū)2017年1月1日至2019年12月31日的大氣污染數(shù)據和氣象數(shù)據為基礎,利用逐步回歸的方法篩選出6個與NO2濃度相關性較大的影響因子作為輸入樣本。構建了PSO-BP神經網絡預測模型,與BP神經網絡預測模型和GA-BP神經網絡預測模型相比,PSO-BP模型具有全局搜索、收斂速度快、預測精度高、算法簡單等特點。將PSO-BP模型的預測結果與其他兩種模型的預測結果進行對比,發(fā)現(xiàn)PSO-BP模型的擬合效果最好,預測值與真實值之間的均方根誤差最小,僅為0.046。表明PSO-BP模型能夠較準確地預測出NO2濃度的動態(tài)變化規(guī)律,可為治理空氣污染問題提供基本依據,具有一定的實際應用價值。