楊 云 楊繼海
(長安大學信息工程學院 西安 710064)
水質預測是水污染防治的有效手段,但是水質因子與水質間是復雜的不確定的非線性關系,實際應用中存在預測結果與實際值偏差較大的難題。
目前主要水質預測方法有時間序列法、回歸分析法和神經網絡法。時間序列法基于數理統計理論,分析水質指標中的某個檢測值的時間序列數據,通過加權平均等數學方法推測未來水質變化趨勢。該類方法優點是數學基礎完善,但是算法復雜而且預測準確性不高。回歸分析法研究部分或全部影響水質變化的因素,建立一元或多元回歸模型,常采用最小二乘法估計參數建立回歸方程,再用實際變量驗證回歸方程。該類方法應用較為廣泛,在樣本量足夠大的情況下,可以得到較為準確的預測結果。神經網絡法抽象人的推理模式,不需要預先描述輸入和輸出的數學映射,在未知系統內部復雜機制的情況下,通過對輸入樣本的訓練學習,獲得可靠輸出[1~4]。與傳統水質預測方法比較,神經網絡法更適合處理復雜多變和非線性的水環境系統。但是神經網絡存在易陷入局部極值和收斂速度慢的不足,所以可以采用遺傳算法等全局優化算法改進BP 網絡性能,可有效提高收斂速度和預測精度[5~6],以及最新的深度模型[7~10]。本文引入一種新的全局優化算法,類電磁機制算法[11~13],根據傳感器邊緣計算資源有限不適合深度網絡和復雜優化算法的特點,改進類電磁機制算法,優化神經網絡模型,有效降低水質因子與水質之間關系模型復雜度的同時提升了預測的精度,研究結果可指導該流域水污染防治和水資源保護。
神經網絡模型采用誤差逆向傳播的多層前饋式神經網絡,拓撲結構三層:輸入層、隱含層和輸出層。典型網絡模型如圖1 所示。其中網絡有m個輸入X,n個輸出Y,j個隱含層神經元,其中1 ≤i≤m,其中1 ≤k≤n,wij為輸入層與隱含層神經元連接權值,wjk為隱含層與輸出層神經元之間的連接權值。信息通過輸入層傳遞到隱含層,在隱含層變換處理后,到達輸出層輸出結果,則一次正向學習完成,當模型輸出與期望輸出誤差未達到要求,則神經網絡按照誤差梯度下降的方法反向修正各層權值,即為誤差反向傳播過程,重復直至誤差達到要求或學習超過最大次數閾值結束。

圖1 神經網絡模型圖
類電磁機制算法(Electromagnetislike Mechanism,EM)是S.I.Birbil 和S.C.FANG 在2003 年提出的,一種新的基于種群的元啟發全局優化算法[12~14]。EM 算法模擬電磁場中電粒子吸引和排斥機制,把初始種群看作空間中的電粒子群,待優化目標函數的值看作電粒子的電荷量,由電荷量決定粒子受到其他粒子的吸引力和排斥力的大小,即目標函數值越小,粒子的吸引力越大。然后通過計算電粒子帶電量和合力計算出粒子的移動更新規則,若干次迭代后得到全局最優解。EM原理三個粒子簡化圖如圖2所示。

圖2 EM算法原理簡化示意圖
在圖2 中有三個電粒子,1 號的函數值大于2號,3 號的函數值小于2 號,所以1 號對2 號粒子表現為排斥力F12,3 號對2 號表現為吸引力F32,2 號受到的合力為F2,指向2 號粒子移動的方向。EM算法的收斂性已經得到充分證明,即迭代數次后,種群中至少有一個粒子會以概率1 移動到全局最優解的位置。
EM 算法簡單有效,一般分四個步驟:初始化、局部搜索、電荷量與合力計算和粒子移動。EM 算法的實現偽代碼如算法1所示。

經典類電磁機制算法為通用計算平臺設計,針對水質預測傳感器端計算平臺資源的約束,在初始化階段,改進算法采用歸一化方法,具體為最大最小歸一化,縮小了計算數值的范圍,從而有效地降低了運算復雜度。在計算合力階段,引入一個合力計算修正因子,減小距離對預測結果的影響,可讓網絡模型避免出現早熟現象。具體改進公式如下。
1)歸一化方法采用最大最小歸一化(Min-Max normalization),公式表示如下:

最大最小歸一化是對原始數據的一種線性變換,可以把結果映射到[0,1]之間。
2)將EM 算法計算兩個不同粒子間合力的公式改進為

其中k為修正因子,通過對兩個不同粒子的距離修正,強化粒子之間的作用力的強度,該參數可通過模型迭代學習獲得。
對多層網絡模型,全局優化算法采用本文提出的改進EM算法,其流程如圖3所示。
黃河蘭州段西起八盤峽,東至烏金峽,穿過蘭州市區,是蘭州工業用水和居民飲用水的唯一地表水源。每年由蘭州市排入黃河的污水量約1 億噸,其中生活污水為60%左右,主要污染物為揮發酚、氨氮、石油類、高錳酸鹽[15]。近年來由于蘭州市區沿黃河快速擴張,取水量和排污量增大,徑流入水量天然減少,水體自凈能力降低,導致黃河蘭州段水污染問題非常嚴峻。黃河蘭州段有5 個水質監測斷面,從西至東斷面名稱與編號分別為1 號扶河橋(入境),2號湟水橋(支流),3號新城橋,4號包蘭橋,5號什川橋(出境)。其中2號為省級斷面,其余4 個為國家級斷面,每個斷面設置左中右三個采樣點。黃河蘭州段水域如圖4(a)所示,水質監測斷面概化圖如圖4(b)所示。

圖4 蘭州黃河段水系概化圖
本文水質預測的研究區域為黃河蘭州段,數據源自中國國家環境監測數據中心和甘肅省環境監測數據中心。選擇國家級檢測斷面蘭州新城橋監測點2011年~2014年水質監測數據,每兩周記錄一次,共計177組。其中前154組數據為訓練樣本,其余23 組數據為測試樣本。水質DO 值反映水質有機物污染的程度,是水生物主要的生存條件之一,也是衡量水質綜合指標之一,與其他水質參數如PH 值,溫度(T,攝氏度),總磷(TP,mg/L),總氮(TN,mg/L),總氨(T-Am,mg/L),總堿度(T-Alk,mg/L)等相關。所以本文以預測溶解氧(DO,mg/L)含量為例,其他水質指標與其預測原理類似。水質數據存儲在Excle 中,在Matlab 中讀取水質參數程序源碼為

數據歸一化Matlab程序源碼如下:

其中x 為變換前水質數據,y 為變換后數據,要求x 是有限實數值而且矩陣每行不全為0,變換后的數據在[0,1]區間內。仿真結束后,將網絡輸出變換為水質數據,Matlab程序源碼如下:

根據所建立的多層網絡預測模型,網絡結構實現的Matlab程序源碼為

優化類電磁機制算法的參數設置,多次試驗結果綜合考慮全局最優解和迭代時間,種群規模選擇10,進化代數選擇5,根據網絡結構計算出種群中每個粒子的長度為51,EM算法參數初始化為

EM 算法主程序部分根據圖4 寫出,考慮測試樣本數量,為縮短迭代次數,可以選擇不帶局部搜索的EM 算法,所以定義局部搜索次數為零。算法還包括初始化,計算移動和計算合力三個函數。
采用經典反向傳播多層網絡(BP)、遺傳算法優化多層網絡(GA-BP)和改進類電磁機制算法優化多層網絡(EM-BP),對黃河蘭州段新城橋監測斷面水質數據進行預測,網絡結構保持一致,預測溶解氧量,仿真結果均方誤差曲線如圖5 所示,訓練結果曲線如圖6所示,預測結果如圖7所示。

圖5 均方誤差曲線圖

圖6 訓練結果曲線圖

圖7 測試結果曲線圖
從圖中可以看出BP 網絡的均方誤差較大,GA-BP 和EM-BP 的均方誤差較小,在20 次循環后EM-BP 模型可以獲得更小的均方誤差和更好的誤差穩定性。 為進一步證實EM-BP 模型的優越性,對GA-BP 和EM-BP 兩個模型分別導入2014 年新城橋監測斷面第14 周次至第23 周次的10 組水質數據進行仿真,仿真得到誤差值如表1所示。

表1 EM-BP與GA-BP誤差對比
分析表中數據得到,EM-BP模型相對誤差8次小于GA-BP 模型相對誤差,而且EM-BP 最大相對誤差為0.0732,最小為0.0019,GA-BP 最大相對誤差為0.2197,最小為0.0068,所以,EM-BP 模型的預測值相對更準確,相對誤差較穩定,更適合水質預測。
本文將改進后的類電磁機制算法與多層神經網絡結合建立水質預測模型,將求解網絡的各層權值和閾值轉化為類電磁機制算法中粒子的吸引力和排斥力的計算,并以黃河蘭州段監測斷面水質數據為訓練和測試樣本,與經典BP 網絡和GA-BP 網絡對比仿真,在網絡一致性前提下,三種方法均得到可靠預測結果。分析實驗結果表明,引入改進EM 算法優化多層神經網絡建立的水質預測模型,與傳統方法相比,具有預測誤差較小,誤差較穩定和預測精度較高的特點。水環境是一個非常復雜的非線性系統,水質除了受到自然環境影響外,還會受到經濟社會發展的影響,這使得水質預測存在很大的不確定性。而黃河蘭州段因其特殊的地理和人文環境,水質的發展趨勢與居民生活息息相關,因此,盡可能地接近未來水質的真實狀況,需要更加成熟的預測模型。