劉春霞,李 軍,黨偉超,白尚旺,王學斌
1(太原科技大學 計算機科學與技術學院,太原 030024)
2(精英數智科技股份有限公司 戰略管理部,太原 030012)
近年來,隨著經濟的日益快速發展,人口數量的不斷增加,能源的消耗也在持續增長.在這種形勢下,清潔能源逐漸進入了人們的視線,天然氣作為一種綠色清潔能源,漸漸展現了優勢[1].中國的能源需求正在不斷增長.自2005年至2018年,我國天然氣年消費量從467.63 億m3增長到2800 億m3,增長率達到498.76%.天然氣負荷預測是城市燃氣系統的設計與調度的重要依據,同時也是確定燃氣工程項目中經濟可行性的理論依據.只有合理科學準確地預測城市燃氣的負荷,才能夠提高經濟運行效率、提高資源利用率,提高城市空氣質量.
目前,負荷預測的相關研究在天然氣領域的應用正在不斷的改進和發展.文獻[2]建立了一種自適應模糊推理系統的神經網絡,可在復雜環境下進行天然氣負荷預測.文獻[3]把天然氣和溫度模型進行結合,推演出了不同溫度條件下天然氣的消耗分布,通過利用某城市的歷史溫度和天然氣負荷數據,對天然氣的日負荷量進行了預測.文獻[4]提出了一種具有可變結構的自適應智能灰色預測模型,該模型可以根據實際數據的特征對模型參數進行自動優化,并且通過實驗證明該模型的預測精度優于傳統灰色模型.文獻[5]通過對杭州市天然氣負荷與氣象因子之間的關系研究,建立了支持向量機的預測模型,將杭州市天然氣負荷數據輸入模型中,對模型預測值和期望值進行比對.文獻[6]利用果蠅算法對支持向量機參數進行優化,采用可Kmeans 聚類算法對負荷序列做了離群點分析,通過對預測數據和期望數據的誤差分析對模型進行檢驗,實驗結果表明優化后的輸出要優于單一的SVM 方法.
綜上所述,目前對天然氣負荷的預測并沒有形成成熟的體系.當前的研究大多使用基于神經網絡或者SVM 的預測方法,存在以下普遍的缺陷:SVM 對大規模的數據訓練比較困難,而負荷預測需要大量數據對模型進行訓練;傳統的神經網絡預測容易出現局部最優問題,而且神經網絡算法的收斂速度也慢,使得算法效率低下.因此,本文提出了一種基于遺傳算法優化小波神經網絡的預測方法GA-WNNs (Genetic Algorithm-Wavelet Neural Network).該方法使用遺傳算法優化小波神經網絡,利用遺傳算法的尋優全局性克服小波神經網絡容易出現的局部極小、過早收斂問題,提高了預測模型的準確性.
小波分析是從傅里葉分析演化而來的,為時間序列提供多分辨率分析.在信號處理相關領域經常會使用到傅里葉分析,它可以對信號的成分進行分析,同時也能將這些成分合成相應的信號.但是,它有一個嚴重的不足,就是不能在時間序列上刻畫信號的局部特性,對于一些突變信號和非平穩信號效果不好.使用小波去噪的方法能夠改善傅里葉變換去噪的這個缺點[7].
小波函數是通過母小波函數進行平移和伸縮變化得到的,小波分析是將信號分解成小波函數的疊加.小波變換指的是把一個基本的小波函數ψ (t)平移b 以后,再在不同的尺度a 下與待分析的信號 x (t)做內積.

式(1)等效的時域表達式為:

式中,a 和b 是式中的參數,a 代表平移因子,b 是伸縮因子.從上式中可以看出小波分析能夠通過小波基函數的變換進而對信號的局部特征進行分析,在二維情況下具有信號方向選擇性能力.
小波神經網絡(WNN)模型是一種由小波分析和人工神經網絡相結合的復雜模型.它主要用于時間序列的預測.WNN 模型的結構通常由以下部分組成:離散小波分析,小波系數重構,人工神經網絡預測和數據序列重構.首先,利用小波分解函數對時間序列進行離散小波分析,提取出一系列高頻和低頻小波系數.通過重新分解低頻系列,可以計算出任何比例的高頻和低頻小波系數.其次,利用小波重構函數,重構了高頻和低頻小波系數.通過分析重建的高頻序列和低頻序列,可以粗略地檢測時間序列的變化特征和趨勢[8].第三,利用人工神經網絡模型,預測了高頻和低頻小波系數的重構序列.其拓撲結構如圖1 所示.

圖1 小波神經網絡拓撲結構圖
圖1 中各個值代表的含義如下:X1,X2,···,Xi表示輸入數據;ωj,k代表輸入層和隱含層之間的權值參數;ωi,j表 示從隱含層到輸出層之間的權值參數;y1,y2,···,yi表示輸出層數據.ψa,b(x)代表小波函數,本文采用的是Morlet 函數,該函數在時間與頻率的局部化之間有很好的的平衡,而且包含更多的振動信息,表達式如下:

式中的a、b 分別代表小波函數的平移因子和伸縮因子.
為了使小波神經網絡結構穩定,需要借助數據對網絡進行訓練,其次要借助測試數據集對訓練好的網絡進行驗證.算法步驟如下:
步驟1.網絡參數初始化.隨機初始化小波函數的平移因子、伸縮因子以及網絡連接權重 ωj,k,ωi,j,設置網絡學習速率η.
步驟2.數據分類.將收集到的數據分成訓練集和測試集兩類,將訓練集數據輸入到網絡對模型進行訓練,測試集用來對訓練好的網絡進行精度測試.
步驟3.預測輸出.通過輸入數據對神經網絡訓練得到預測輸出數據,結合期望值和預測輸出計算誤差e.
步驟4.參數修正.根據上一步的誤差不斷調整網絡權值和小波神經網絡的參數,使預測輸出值與期望值的誤差減小.
步驟5.判斷算法是否滿足結束條件,若不滿足則返回步驟3.
小波神經網絡采用梯度下降法修正網絡的權值和小波函數的參數,使得小波神經網絡的預測輸出值更加接近真實值.對小波神經網絡的修正步驟如下:
(1)網絡預測誤差值

其中,y n(k)表示真實值,y (k)表示小波神經網絡的預測輸出值.
(2)根據預測誤差e 修正小波神經網絡的權值和小波函數的參數


上式中η 為網絡的學習速率.
遺傳算法(Genetic Algorithms,GA)是由John Holland等人創建的著名進化算法.在20 世紀60年代,Rechenberg在一本名為“進化策略”的書中介紹了進化計算的理念.繼人工神經網絡之后,開始對遺傳算法進行了初步的研究.這兩個領域都是受到生物系統的啟發,作為一種新型計算模型.遺傳算法是一種迭代算法,具有高度并行、隨機和自適應的特點,可以在迭代過程中不斷的改進解,每個解稱為一個染色體[9].經過不斷的循環遺傳操作,種群逐漸往好的方向進化,最終得到最優解.但是基本遺傳算法存在收斂速度慢、易陷入局部極值等缺點,導致小波神經網絡的閾值以及網絡連接權值未收斂至最優值.本文采用的遺傳算法是通過對選擇算子進行改進,在最優保存策略的基礎上將每代種群按照計算的適應度值升序排序,平均分成前中后三段,并按照一定的比例進行選擇.從末段中隨機選取個體補充由于選擇操作而損失的個體,這樣既利用了最優保存策略的全局收斂特性同時也保持了種群的多樣性[10].
遺傳算法中的遺傳操作時算法的核心,目的是通過逐代優化從而找到問題的最優解.其中包括3 個遺傳操作:選擇,交叉和變異[11].
選擇操作,選擇操作應用比較廣泛的是比例選擇操作和最優保存策略,比例選擇操作由于選擇的隨機性會存在誤差,但其簡單實用仍被廣泛實用.本文采用了新的選擇操作算法,可以在種群中有效選擇出較優的個體,從而克服了最優保存策略只考慮保存種群中最優個體忽視了其余個體,破壞種群多樣性,造成陷入局部極值.
交叉操作,同生物界中染色體交叉相似,染色體通過交換部分基因,產生新的染色體.
變異操作,是指種群中任意選取一個染色體,選擇染色體中的一點進行變異,變異操作可以保持群體多樣性,防止早熟現象產生.
通過使用遺傳算法對神經網絡的權值進行優化并且結合神經網絡函數的較好的逼近能力,可以對短期的天然氣負荷量預測進行建模,該算法克服了傳統小波神經網絡容易陷入局部最優的缺點.GA-WNN算法原理如圖2 所示.

圖2 GA-WNN算法流程圖
基本的步驟如下:
步驟1.設置種群大小為M,隨機生成初始種群N.
步驟2.用步驟1 中的種群N 進行訓練,此時初始化獲得小波神經網絡平移因子和伸縮因子.
步驟3.根據適應度函數計算個體的適應度值.適應度值達到規定值直接到步驟6,不滿足進行下一步.
步驟4.選擇一部分適應度大的個體繼承給下一代,遺傳操作后產生的適應度最低的個體由父代適應度值最大的個體代替.
步驟5.將當前群體進行交叉變異操作,生成新的種群,轉到步驟3.
步驟6.結束循環,將群體中的最優個體解碼值作為小波神經網絡的初始參數.
步驟7.采用上述步驟獲得最優參數進行建模.
通過SCADA 數據采集系統采集了某市2016年1月1日到2018年4月19日共計840 天的天然氣日負荷量數據.并通過當地氣象局采集到每一天的日最高溫度,日最低溫度,日平均溫度數據,降雨量,風速以及相對濕度的數據.選取數據集共588 條數據作為訓練集,剩余的252 條數據作為測試集.將收集到的數據通過Matlab 繪制圖如圖3.

圖3 天然氣日負荷量與溫度關系
從圖3 可以看出天然氣負荷量存在隨機性與周期性變化規律,而且負荷量的變化趨勢與溫度的變化趨勢呈現出一定的相關性.當溫度較低時,天然氣負荷處于較高水平;當溫度較高時,天然氣負荷處于低水平.天然氣負荷變化隨溫度變化趨勢明顯,所以溫度是負荷預測的一個重要影響因素.而降雨量,風速以及相對濕度這3 個數據通過Matlab 繪制圖像發現其變化規律與負荷量之間沒有很直觀的相關性,為了進一步確認這3 個因素對于天然氣負荷影響程度,本文進行了相關性系數的計算.計算公式如下:

其中,C ov(X,Y)表 示變量X 和Y 的協方差,V ar[X]表示變量X 的方差,V ar[Y]表示變量Y 的方差.由式(11)我們可以計算得到天然氣與各因素之間的相關性系數,如 表1 給出.

表1 天然氣負荷值與各因素相關系數
由表1 可以看出,溫度是影響負荷量的主要因素,其他幾項對于負荷量影響非常弱,可以忽略不計.
通過企業調研以及對收集的數據分析發現,城市燃氣用戶在平常日和節假日用氣量有明顯差異,所以要將這種差異考慮進去作為影響因素,本文采用權重系數,平常日權重系數為0.9,節假日權重系數為0.3.
為了評價GA-WNN算法的性能,實驗以傳統BP 神經網絡、WNN 神經網絡、LSTM 神經網絡作為對比模型,以決定系數(R2)、均方誤差(MSE)、平均絕對誤差(MAE)、平均絕對百分比誤差(MAPE)作為評價指標.計算公式如下:

實驗中遺傳算法的迭代次數為200 次,交叉概率0.9,個體數目為40 個,最大遺傳代數設置為100.神經網絡模型參數設置,學習率為0.05,訓練次數100 次.圖4 和圖5 是實驗在Matlab 環境下仿真結果,表2 為不同神經網絡模型的各項評價指標.

圖4 預測誤差值圖

圖5 不同預測模型與GA-WNN 對比圖

表2 不同預測模型與GA-WNN 性能對比
由圖4 可知預測誤差值波動在0.1 到0.2 之間,圖5 繪制了不同預測模型的預測結果與GAWNN 的對比,通過圖像我們不難看出雖然各個神經網絡整體上都能反映出天然氣日負荷量的變化趨勢,但是GAWNN的擬合效果明顯優于其他幾種預測模型.如表2 所示,GAWNN 的R2值比其他項更接近1,擬合度好,參考價值高.而其他幾項誤差評價指標GA-WNN 均低于其他預測模型,充分表明GA-WNN 預測模型對短期天然氣日負荷量有更高的預測精度.通過Matlab 實驗證明,未經優化的小波神經網絡需要56 次才能達到目標精度,遺傳算法優化后的小波神經網絡僅需25 次就達到了目標精度,在總的運行時間上后者比前者減少9.467 102 s.運行時間的減少一方面是由于改進選擇操作后計算量相對減少,另一方面改進以后的遺傳算法搜索出較優的初始權值使得小波神經網絡進一步尋找最優解節省時間.將本文方法應用到不同地區門站進行預測都得到較好的預測結果.
綜上所述,本文提出的基于遺傳算法優化小波神經網絡的預測模型對于短期天然氣負荷預測具有很好的預測精度,且能夠較好的反映出負荷量的趨勢,具有一定的工程應用價值.
本文通過研究天然氣負荷數據與每日溫度之間的關系,建立了小波神經網絡預測模型,并通過遺傳算法對小波神經網絡出現的易陷入局部最優以及收斂速度緩慢等問題進行改進.通過與不同模型進行比對試驗,最后仿真結果表明,經過遺傳算法優化后的小波模型針對天然氣負荷預測具有學習速率快,有較強的逼近能力以及全局尋優等有點,能夠大大的提高燃氣負荷預測的精度,對燃氣企業有較大的幫助.