張學坤
(云南省水文水資源局西雙版納分局,云南 景洪 666100)
溶解氧(DO)是反映水質狀況及自凈能力的重要指標。提高溶解氧預測精度對于保護水資源、水環境、水生態以及保障飲用水安全具有重要意義。目前,用于溶解氧預測的方法有BP神經網絡[1]、GRNN[1]、Elman[1-2]、RBF[3]、NARX神經網絡[4]、回歸支持向量機(SVR)[5]、極限學習機(ELM)[6]、組合預測法等[7],均具有較好的預測效果。為進一步提高溶解氧預測精度,拓展現有預測模型及方法,本文研究提出一種基于海鷗優化算法(Seagull Optimization Algorithm,SOA)與支持向量機(Support Vector Machines,SVM)及BP神經網絡相融合的溶解氧預測模型,分別利用SOA對SVM懲罰因子、核函數參數、不敏感系數以及BP神經網絡權閾值進行優化,建立SOA-SVM、SOA-BP溶解氧預測模型;基于云南省西雙版納州國家重要供水水源地景洪電站2009年1月至2020年9月共141組逐月溶解氧監測數據,通過自相關函數法(autocorrelation function method,AFM)、虛假最鄰近法(false nearest neighbor,FNN)設置4 種方案,利用SOA-SVM、SOA-BP模型對實例4種方案溶解氧進行預測,預測結果與SVM和BP模型進行對比,旨在驗證SOA-SVM、SOA-BP模型用于溶解氧預測的可行性。本文研究意義和價值在于:介紹了新穎的海鷗優化算法(SOA),利用SOA分別優化SVM懲罰因子等關鍵參數和BP神經網絡權閾值,構建SOA-SVM、SOA-BP模型,并將模型用于溶解氧實例預測,不但拓展了SVM、BP模型的優化方法,而且為溶解氧等相關預測研究提供借鑒。
海鷗優化算法(SOA)是Gaurav Dhiman等[8]于2019年提出的一種新型元啟發式優化算法,其靈感來源于自然界海鷗遷徙和攻擊行為。與其他算法相比,SOA收斂速度快、尋優精度高、調節參數少,具有較好的尋優精度和全局搜索能力。
SOA主要基于以下優化策略:①海鷗成群遷徙,為避免彼此碰撞,海鷗初始位置不同;②海鷗向最適合生存的海鷗方向行進,即向具有最佳適應度值的海鷗方向行進;③依據最佳海鷗適應度值更新其他海鷗位置。參考文獻[8],SOA數學描述簡述如下。
a)初始化。與大多數元啟發式算法類似,SOA通過初始化海鷗種群來啟動優化過程,即在搜索空間范圍初始化海鷗位置:
(1)

b)海鷗遷徙策略。SOA通過3個階段完成海鷗遷徙過程,即避免沖突階段、向最佳海鷗飛行階段和保持靠近最佳海鷗階段。
避免沖突階段。海鷗在遷徙過程中為避免與其他海鷗發生碰撞,通過附加變量A來計算新海鷗位置,數學描述如下:
(2)

向最佳海鷗飛行階段。在避免海鷗群體間碰撞后,當前海鷗向著具有最佳適應度值的海鷗方向飛行,數學描述如下:
(3)

保持靠近最佳海鷗階段。遷徙過程中,當前海鷗依據最佳海鷗適應度值更新其位置,數學描述如下:
(4)

c)海鷗攻擊策略。海鷗在遷徙過程中不斷改變攻擊角度和速度,并通過螺旋飛行方式攻擊獵物,位置更新數學描述如下:
(5)
式中x、y、z——平面坐標,其中x=r×cos(k),y=r×sin(k),z=r×k,r=u×ekv;r——螺旋線旋轉半徑;k——[0,2π]內的隨機數;u、v——螺旋形狀常數;e——自然對數底數。
設含有l個訓練樣本的集合為{(xi,yi),i=1,2,…,l},xi(xi∈Rd)為第i個訓練樣本輸入列向量,yi∈R為對應輸出值[9-12]。則SVM在高維特征空間中建立的線性回歸函數為:
f(x)=wΦ(x)+b
(6)
式中Φ(x)——非線性映射函數;w——超平面的法向量;b——超平面的偏移量。
最終回歸函數為:
(7)

選擇徑向基核函數作為SVM核函數,徑向基核函數表達式為:
(8)
式中g>0。
設典型3層BP神經網絡輸入維數為m、隱層為l、輸出維數為1,參考相關文獻[13-16],BP神經網絡完成映射的數學表達式可表示如下:
(9)
式中lj——隱層到輸出層的連接權值;bj——隱層節點的輸出;ε——隱出層的閾值。
采用Sigmoid函數的隱層節點輸出表示如下:
(10)
式中ωij——輸入層至隱層的連接權值;θj——隱層節點的閾值。
步驟一利用SOA優化SVM懲罰因子、核函數參數、不敏感系數以及BP神經網絡權閾值,建立SOA-SVM、SOA-BP預測模型;采用自相關函數法(AFM)、虛假最鄰近法(FNN)構建4 種方案的輸入輸出向量,劃分訓練樣本和預測樣本,利用處理后的訓練樣本對SOA-SVM、SOA-BP模型進行訓練。
步驟二確定待優化適應度函數。本文選用訓練樣本與實測值均方誤差構建適應度函數,描述如下:


(11)

步驟三參數設置。設置海鷗群體規模N、最大迭代次數T、算法終止條件、頻率系數fc=1和SVM關鍵參數和BP神經網絡權閾值搜索范圍,利用式(1)隨機初始化海鷗位置,令當前迭代次數m=0。





景洪電站位于云南省瀾滄江下游河段,西雙版納州景洪市境內,為國家重要供水水源地和景洪市城區主要供水水源。電站壩址以上集水面積14.91萬km2,州內集水面積3 071 km2,多年平均徑流量571億m3,州內庫區水面面積21.75 km2,河長65.5 km,正常蓄水位為602 m,相應庫容8.7億m3,設計供水人口19.6萬人,現狀年供水量約2 000萬m3。景洪電站為云南省重點湖庫水生態監測站,西雙版納州水環境監測分中心于2009年1月起對景洪電站水質進行取樣檢測,年監測 12次,為每月監測。
數據來源于景洪電站2009年1月至2020年9月共141組逐月溶解氧監測成果,利用自相關函數法(AFM)、虛假最鄰近法(FNN)設置4 種方案進行溶解氧預測,具體如下。
a)方案一至方案三。利用AFM法計算該實例延遲時間為1~10的自相關系數分別為0.465、0.435、0.319、0.173、0.154、0.123、0.116、0.180、0.190、0.295。可見,當延遲時間為1~3時自相關系數最大,分別為0.465、0.435、0.319。因此,方案一采用前1 個月的溶解氧預測下1個月的溶解氧;方案二采用前2個月的溶解氧預測下1個月的溶解氧;方案三采用前3個月的溶解氧預測下1個月的溶解氧。
b)方案四。采用AFM和FNN法確定方案四延遲時間為1、嵌入維數為6,即采用前6個月的溶解氧預測下一個月的溶解氧。
對于上述方案一至方案四,本文利用實例2009年1月至2018年12月溶解氧監測數據作為訓練樣本,2019年1月至2020年9月溶解氧監測數據作為預測樣本。
a)SOA-SVM模型。設置SOA最大迭代次數T=100,種群規模N=50,頻率系數fc=1,其他采用SOA默認值;選擇徑向基核函數為RBF,懲罰因子σ、核函數參數γ、不敏感系數ε搜索范圍分別為[0.01,100],[0.1,100],[0.001,0.1],交叉驗證折數V=5,采用[-1,1]對原始數據進行歸一化處理。
b)SOA-BP模型。設置SOA最大迭代次數T=100,種群規模N=50,頻率系數fc=1,其他采用SOA默認值;設置方案一至方案四的BP神經網絡隱層數分別為4、6、8、11,隱含層和輸出層傳遞函數分別采用logsig和purelin,訓練函數采用traingdx,設定期望誤差0.01,最大訓練輪回1 000,采用[-1,1]對原始數據進行歸一化處理。
c)SVM和BP模型。通過試湊法確定SVM模型的懲罰因子σ、核函數參數γ、不敏感系數ε;BP模型的網絡結構、隱含層數、傳遞函數、訓練函數、期望誤差、最大訓練輪回次數均與SOA-BP模型相同;SVM、BP模型均采用[-1,1]對原始數據進行歸一化處理。
建立SOA-SVM、SOA-BP、SVM、BP模型對實例方案一至方案四的溶解氧進行訓練及預測,并選取平均相對誤差絕對值MRE(%)、平均絕對誤差絕對值MAE(mg/L)、最大相對誤差MaxRE(%)作為評價指標。4種模型不同方案的預測結果見表1;4種方案的溶解氧預測相對誤差效果見圖1—4。

表1 方案一至方案四不同模型溶解氧預測結果及其對比

續表1 方案一至方案四不同模型溶解氧預測結果及其對比

圖1 方案一預測結果相對誤差

圖2 方案二預測結果相對誤差

圖3 方案三預測結果相對誤差

圖4 方案四預測結果相對誤差
依據表1及圖1—4可以得出以下結論。
a)SOA-SVM、SOA-BP模型對方案一至方案四溶解氧預測的平均相對誤差絕對值分別在4.07%~4.98%、3.85%~4.83%之間,平均絕對誤差絕對值分別在0.309~0.374、0.294~0.371 mg/L之間,預測精度均優于SVM、BP模型,具有較好的預測效果,表明SOA能有效優化SVM懲罰因子、核函數參數、不敏感系數以及BP神經網絡權閾值,SOA-SVM、SOA-BP模型用于溶解氧預測是可行的。SOA-BP模型的預測精度要優于SOA-SVM模型。
b)對于SOA-SVM和SVM模型,SOA-SVM模型對方案一至方案四溶解氧預測的平均相對誤差絕對值分別為4.07%、4.62%、4.46%、4.98%,預測精度分別較對應方案的SVM模型提高18.9%、16.3%、19.8%、17.1%,表明采用SOA尋優SVM懲罰因子、核函數參數、不敏感系數,不但省去人工試湊的繁瑣,而且大大提高溶解氧的預測精度。
c)對于BP神經網絡結構、隱含層數等完全相同的SOA-BP和BP模型,SOA-BP模型對方案一至方案四溶解氧預測的平均相對誤差絕對值分別為3.85%、4.20%、4.22%、4.83%,預測精度分別較對應方案的BP模型提高21.6%、14.8%、17.4%、13.9%,表明采用SOA尋優BP神經網絡權閾值能有效提高溶解氧的預測精度。
d)不同方案的預測精度為:方案一>方案二>方案三>方案四。對于方案一至方案三,其自相關系數越大,預測精度越高;通過AFM、FNN法確定延遲時間和嵌入維數構建的方案四未能獲得理想的預測效果。
本文將SOA與SVM、BP 神經網絡方法相結合,構建SOA-SVM、SOA-BP溶解氧預測模型。利用云南省西雙版納州國家重要供水水源地景洪電站2009年1月至2020年9月逐月溶解氧監測數據進行模型構建與驗證,并分別采用4種方案對逐月溶解氧進行預測,得出以下結論。
a)SOA-SVM、SOA-BP模型對實例方案一至方案四的溶解氧預測精度均優于SVM、BP模型,具有較好的預測效果和精度;SOA能有效優化SVM關鍵參數和BP神經網絡權閾值,SOA-SVM、SOA-BP模型用于溶解氧預測是可行的。SOA-BP模型預測精度要優于SOA-SVM模型。
b)對于SVM、BP模型,分別采用SOA尋優懲罰因子、核函數參數、不敏感系數以及網絡權閾值,不但省去人工試湊或調試的繁瑣,而且大大提高溶解氧的預測精度,具有一定的實際應用價值。
c)不同方案的預測精度為方案一>方案二>方案三>方案四。