葉藝勇
(五邑大學 經濟管理學院 廣東 江門 529020)
隨著社會經濟的快速發展,各行業對能源的需求大幅度增加.據統計,廣東省2000年的能源消耗量是7 983萬噸標準煤,2013年的能源消耗量上升到25 645萬噸標準煤,是2000年消耗量的3.2倍,其中一次能源消費90%依賴省外,二次能源消費中的電力消費有10%也是依賴省外,據估算,未來10年這個比例將達到30%左右.經濟快速發展所帶來的巨大能源需求與供給不足之間的矛盾越來越嚴重,能源短缺已成為制約廣東省經濟持續發展的關鍵問題,如果不采取有效的措施,將會延緩廣東省產業結構的轉型升級優化,乃至影響全省經濟的穩步增長.系統地分析廣東省能源需求的影響因素,準確地預測廣東省未來能源需求的數量,進而制定科學合理的能源發展戰略,確保廣東省經濟可持續發展,具有非常重要的現實意義.
能源系統是一個復雜的非線性系統,其需求量受到眾多因素的影響.當前很多學者已經對能源需求問題進行了深入的研究,使用的預測方法包括趨勢外推法、消費彈性法、主要消耗部門預測法、回歸分析法預測等[1-3],取得了一定的效果.但在預測精度方面還存在一定的差距,一方面是由于能源系統本身的復雜性、非線性、非確定性的特征導致的,另一方面是因為預測方法本身還存在一些不足之處,不足以完全準確反映預測目標和指標體系之間的數量關系.要解決上述問題,除了需要構建科學的預測指標體系,更關鍵的就是要尋找更加科學有效的預測方法.
鑒于此,部分學者開始研究能源系統的非線性和不確定性等系統特征,如自組織特征、分形特征、混沌特征和模糊性等,并在此基礎上引進非線性方法對能源需求進行預測,如非線性/混沌時間序列方法、遺傳算法、灰色理論、人工神經網絡方法等[4-8],這些方法可以彌補線性模型在預測復雜能源需求時的不足.其中具有代表性的方法是人工神經網絡,它是由大量神經元通過極其豐富和完善的連接而構成的自適應、非線性動態系統,它從結構、實現機理和功能上模擬生物神經網絡,通過并行分布式的處理方法,克服了傳統的基于邏輯符號的人工智能在處理直覺、非結構化信息方面的缺陷,具有自適應、自組織和實時學習的特點[9].它在解決非線性及高維模式識別問題中表現出許多特別的優勢,受到學者的青睞.當前,已有眾多學者將神經網絡及其擴展模型應用于時間序列預測方面,并取得了很好的效果[10-15].
通過對文獻的綜合分析發現,神經網絡及其相關的模型已經被廣泛應用到金融、工業、交通等領域,但是在能源需求預測領域的應用較少.針對廣東省能源需求系統具有非線性和影響因素眾多等特征,建立了基于改進的PSO-BP神經網絡的預測模型,給出了方法的基本原理和具體實現步驟,然后通過對廣東省1985—2013年能源需求歷史數據的建模和仿真,驗證了方法的有效性,最后對廣東省未來5年的能源需求進行預測,為能源管理者提供決策參考的依據.
能源需求受到多方面因素的影響,本文結合其他學者的研究成果[16-18],遵循可獲得性、可比性、實際性、綜合性的原則,從以下幾個方面對影響能源需求的因素進行分析.
①經濟增長.經濟增長是影響能源需求的主要因素,隨著廣東省社會經濟的快速發展和產業結構的持續優化,對能源的需求量將在很長一段時間內保持較高的水平.衡量經濟增長的指標本文采用國內生產總值(GDP).
②產業結構調整.三大產業中,工業的發展對經濟增長的貢獻最大,對能源的需求也最大,第一、第三產業對能源的需求相對較少.工業的快速發展所帶來的負面影響是顯而易見的.近年來,廣東省在產業結構優化和轉型升級方面出臺了一系列的政策措施,隨著我省產業結構的調整,對能源需求數量的必將產生很大的影響.
③能源消費結構.該項指標反映了各種消費能源在消費總量中所占的比例關系,廣東省的能源消費以煤為主,據統計,超過50%的能源來自煤炭燃燒.煤炭為不可再生能源,利用率較低,容易污染環境,政府在大力推行開發可再生能源和清潔能源,改善能源消費結構,降低能耗指數.
④技術進步.首先是通過先進技術的應用,改善生產工藝和流程,提高能源的利用率,節約能源消費;其次是將技術應用于新能源開發,從而改變能源消費結構,進而影響能源消費總量.由于技術進步難以量化,本文使用單位GDP的能耗來表示.
⑤人口和城市化.能源是人類生存和發展的物質前提,人類的衣食住行與能源息息相關,人口基數越大,對能源的需求量就越大,隨著工業化、城鎮化進程的加快,人民生活水平穩步提升,對能源需求的影響更加明顯.
⑥居民生活消費水平.居民生活水平的提高,以及消費觀念和消費行為的變化,會直接導致產業結構的變動,進而影響能源消費的數量,特別是增加對電力、液體和氣體燃料等優質能源的需求.
綜上所述,影響能源需求的主要因素有經濟的增長(廣東省GDP)、產業結構(工業在國民經濟中的比重)、能源消費結構(煤炭的消費比重)、技術進步(單位GDP的能耗)、人口(廣東省人口數量)、城市化(全省城鎮人口所占的比重)、居民人均消費水平,預測對象為廣東省每年的能源消費數量.
BP神經網絡是一種多層前饋神經網絡,該網絡的主要特點是信號向前傳遞,誤差反向傳播.在前向傳遞中,輸入信號從輸入層經過隱含層逐層處理,直至輸出層.每一層的神經元狀態只影響下一層神經元狀態.如果輸出層得不到期望輸出,則轉入反向傳播,根據預測誤差調整網絡權值和閾值,從而使BP神經網絡預測輸出不斷逼近期望輸出[19].BP神經網絡的拓撲結構如圖1所示,BP算法如下.
1)各層權值及閾值的初始化.
2)輸入訓練樣本,并利用訓練樣本對網絡進行訓練,計算各層輸出.
3)求出并記錄各層的反向傳輸誤差.
4)按照權值以及閾值修正公式修正各層的權值和閾值.
5)按照新的權值重復2)和3).
6)若誤差符合預設要求或者達到最大學習次數,則終止學習.
7)使用訓練好的模型對預測樣本進行預測.
粒子群優化算法(Particle Swarm Optimization)源于對鳥類捕食行為的研究,鳥類捕食時,每只鳥找到食物最簡單有效的方法就是搜尋當前距離食物最近的鳥的周圍區域.PSO算法就是從這種生物種群行為特征中得到啟發并用于求解優化問題的.算法中每個粒子代表問題的一個潛在解,每個粒子對應一個由適應度函數決定的適應度值.粒子的速度決定了粒子移動的方向和距離,速度隨自身及其他粒子的移動經驗進行動態調整,從而實現個體在可解空間的尋優[19].

圖1 神經網絡結構圖
假設粒子群的種群規模為Z,搜索空間為Y維,第i個粒子的位置表示為
Xi={xi1,xi2,…,xiY},i=1,2,…,Z,第i個粒子的速度表示為Vi={vi1,vi2,…,viY,第i個粒子的個體極值表示為Pi={pi1,pi2,…,piY,當前的全局極值表示為Pg={pg1,pg2,…,pgY.因此,粒子的速度與位置按下式更新:

其中,ω為慣性權重,是平衡粒子的全局搜索能力和局部搜索能力的參數;c1和c2為加速因子,是調整粒子自身經驗和群體經驗對粒子運動軌跡的影響的參數;r1和r2是在[0,1]區間內均勻分布的兩個隨機數;vmax為粒子的最大速度,是用來限制粒子的速度的參數,vij為第i個粒子在第j維的速度.
標準的粒子群算法雖然具有收斂速度快、通用性強等優點,但由于算法實現過程僅利用了個體最優和全局最優的信息,因此導致種群的多樣性消失過快,出現早熟收斂、后期迭代效率不高、容易陷入局部最優等缺點,增加了尋找全局最優解的難度.要解決上述問題,可以從以下兩方面進行改進.
4.3.1 動態調整慣性權重
慣性權重ω用來控制粒子之前的速度對當前速度的影響,它將影響粒子的全局和局部搜索能力.較大的ω值有利于全局搜索,較小ω值有利于局部搜索,但在標準的PSO算法中,ω的值是固定的,在算法運行過程中,根據實際情況給ω賦予動態變化的值,使得算法能夠平衡全局和局部搜索能力,這樣可以以最少的迭代次數找到最優解.經驗參數是將ω初始值設定為0.9,并使其隨迭代次數的增加線性遞減至0.3,以達到上述期望的優化目的.通過線性轉換來完成上述參數值變化的過程.

其中ωmax,ωmin分別是ω的最大值和最小值,n和N是當前迭代次數和最大迭代次數,在迭代開始時設ω=ωmax,ω在迭代過程中逐漸減小,直到ω=ωmin.
這樣設置使PSO算法能夠更好的控制探索與開發的關系,在開始優化時搜索較大的解空間,找到合適的粒子,然后在后期逐漸收縮到較小的區域進行更精細的搜索以加快收斂速度.
4.3.2 增加粒子的多樣性
在此借鑒遺傳算法中變異的思想,對部分符合條件的粒子以一定的概率重新初始化,目的是通過變異操作來保持種群的多樣性,拓展種群的搜索空間,使得粒子能夠跳出當前局部最優的位置,在更大的空間繼續搜索全局最優值.引入線性動態變異算子:

式中,F(n) 為當前的變異概率;n為當前的迭代次數;N為最大的迭代次數;Fmax,Fmin為最大的變異概率和最小的變異概率.
剛開始迭代時,種群以一個極小的概率發生變異,至迭代后期,變異概率迅速擴大,粒子可以迅速跳出當前的搜索區域,在更大的區域內尋找最優解.
BP神經網絡的學習過程主要是權值和閾值的更新過程,采用的學習算法是以梯度下降為基礎的,但梯度下降法的訓練效果過于依賴初始權值的選擇,且存在訓練時間長、易陷入局部極小等問題.而粒子群算法可以避免梯度下降法中要求函數可微、對函數求導的過程,也避免了遺傳算法中的選擇、交叉等操作,具有收斂速度快、記憶性強和全局搜索能力較強等特點[20],可以將兩種算法結合起來,利用PSO算法中粒子的位置來對應神經網絡網絡中的連接權值和閾值,以神經網絡的輸出誤差作為PSO算法的適應函數,通過PSO算法的優化搜索來訓練神經網絡的權值和閾值,可以彌補BP網絡在學習能力和收斂速度上的不足,既充分發揮了神經網絡的非線性映射能力,還可以縮短神經網絡的訓練時間,提高預測的精度.
PSO優化BP神經網絡的主要步驟如下.
1)初始化.根據BP神經網絡的輸入樣本,建立BP神經網絡的拓撲結構,輸入層節點數,隱含層節點數,輸出層節點數;初始化粒子的位置和速度,以及粒子數、最大迭代次數、慣性權重、學習因子等參數.
2)通過網絡訓練,計算粒子的適應度值,得到粒子的個體最優值與全局最優值.將粒子適應度值與個體最優值和全局最優值相比較,記錄當前粒子所經歷的最好位置.
3)考察每一個粒子的適應度值.若該值優于個體最優,則將當前值置為個體最優,并更新該粒子的個體最優;若粒子中的個體最優優于當前的全局最優,則將個體最優置為全局最優,并更新全局最優值.
4)將經過PSO優化的權值和閾值作為BP神經網絡的初始權值和閾值代入BP網絡,訓練至滿足網絡的性能指標,即均方誤差小于預先設定的誤差要求或達到最大迭代次數時,停止迭代,輸出結果,否則轉到2,繼續迭代直至算法收斂.
5)由訓練和測試樣本完成神經網絡的訓練和測試,輸出預測值.如圖2所示.

圖2 PSO優化BP流程圖
數據來源見表1.

表1 各指標統計數據
為了消除各指標不同量綱的影響,需要對數據進行標準化處理,以解決指標之間的可比性.本文使用離差標準化的方法,對原始數據進行線性變換,使變換后的值映射到[0,1]之間,并保持原本的數量關系,變換公式如(4)式所示.

其中,Yi是樣本i歸一化的值,Xi是樣本i的值,min為樣本最小值,max為樣本最大值.但這個方法有個缺點,當有新的樣本數據加入時,數據的最大值和最小值可能會發生變化,需要重新計算Yi值.
在預測或者評價完成后,再使用反歸一化的方法對數據進行還原處理,得出其真實值,具體的數據處理過程可以直接調用Matlab工具箱里的Mapminmax函數來完成.
就神經網絡的結構而言,預測指標體系越龐大,指標數量越多,模型就越復雜,預測結果的不確定性就越大,相應地,模型的泛化能力會降低,同時也會增加運算的時間.因此有必要對前面確定的影響能源需求的指標進行定量化的分析,在盡量減少信息丟失的前提下減少指標的個數,即完成樣本指標的降維.
主成分分析法就是通過線性變換的方法,把原始變量組合成少數幾個具有代表意義的指標,使得變換后的指標能夠更加集中地反映研究對象特征的一種統計方法[21].對樣本的原始數據進行主成分分析,得到各個主成分的特征值和方差貢獻率,如表2所示.

表2 主成分特征值和方差貢獻率
從表2的數據可知,當抽取的主成分為Y1,Y2時,主成分的累計方差貢獻率已達到93.22%,基本覆蓋了原來7個指標所包含的信息.因此可以把Y1,Y2這2個主成分的數據作為模型的輸入,這樣就大幅度減少了神經網絡的輸入節點數,降低了模型的復雜程度,同時也有利于前期樣本數據的獲取.
根據主成分分析法得出前2個主成分的系數如表3所示.

表3 Y1和Y2的主成分系數
因此得出Y1、Y2與原輸入指標的關系為:

從表達式(5)可以看出,第一主成分Y1與x1、x2、x5、x6、x7均保持了較強的正相關,而與x3,x4呈現出負相關,這個數量關系說明了第一主成分基本反映了上述指標的信息.由于x1、x2、x5、x6、x7是從不同的方面反映了社會經濟發展的水平,而x3和x4反映了能源消費的狀況,因此,第一主成分Y1是綜合反映了經濟發展狀況和能源需求之間的密切關系.
從表達式(6)可以看出,第二主成分Y2與x1、x2、x3、x4相關性較強,其中與x3(能源結構)是高度相關的,說明第二主成分基本反映了這個指標的信息.
神經網絡的結構一般由樣本的輸入和輸出指標數量確定,由于使用PCA做數據降維后,樣本數據的維數為2,輸出數據維數為1,所以確定模型的輸入節點數為2,輸出節點數為1.本文選用的是三層的BP神經網絡模型,關于隱含層數目的確定,目前沒有一個通用的方法,只能根據經驗或者多次試驗來決定.由于隱含層的數量會影響到模型的學習時間、擬合效果以及泛化能力,因此必須確定一個最佳的隱含層單元數,根據相關學者的研究結論,隱含層的數量與問題的要求、輸入、輸出指標的個數都有關系,且其數量關系符合以下的計算公式[21]:

其中R為隱含層單元數,S1、S2分別為輸入層和輸出層的數量,a為[1,10]之間的常數.經過循環比較算法,得出R的值為4時,模型具有較好的學習效果和泛化能力,因此本文確定神經網絡模型的結構為2-4-1,隱層使用sigmoid函數,輸出層使用pureline函數,神經網絡的學習效率取0.1,訓練次數為150,輸出目標值為0.001.粒子群規模為50,迭代次數為100,學習因子c1=1.7,c2=1.5,慣性權重ωmax=0.9,ωmin=0.3,粒子速度最大值為5,最小值為-5.
本文選取前24個樣本數據作為訓練數據,用于確定模型的相關參數,剩余5個樣本作為測試數據,用于檢驗模型的效果.
將訓練數據代入模型進行計算,得到的適應度曲線變化如圖3所示,訓練值與實際值比較如圖4所示,可以看出PSO-BP模型對歷史數據的學習情況非常理想,大部分樣本的訓練值與實際值基本吻合,個別樣本有一定的偏差,但在合理的誤差范圍之內,說明該模型的構建是行之有效的.
將訓練后的模型對5個預測樣本數據進行預測,并把預測值與實際值進行比較,結果如表4所示,預測結果如圖5所示,樣本誤差如圖6所示.可以看到,2009-2013年的預測準確度非常高,平均誤差為2.3%,以2009年為例,預測偏差為2.87%,換算成實際的偏差數量就是552.95萬噸標準煤,準確的預測結果將為能源規劃與實施提供有力的依據.

圖3 適應度變化曲線圖

圖4 訓練值與實際值比較圖

表4 預測值與實際值比較 萬噸標準煤

圖5 預測值與實際值比較

圖6 樣本誤差圖
圖7為神經網絡在訓練、驗證及測試過程中,均方誤差的變化趨勢,可以看到,當訓練次數達到一定的程度,均方誤差將會小于1×10-3,完全符合模型的預設要求.圖8為模型對樣本數據的擬合程度,根據R的取值,結合圖7的均方誤差,可知模型的學習能力及預測能力是非常強的,準確度非常高.

圖7 均方誤差的變化狀態

圖8 訓練、驗證及測試的性能狀態
為了體現PSO-BP神經網絡模型的優勢,本文同時使用未經優化的BP神經網絡對數據進行訓練和預測,并將兩種預測結果進行比較,具體數據見表5所示,比較效果如圖9和圖10所示.

表5 預測值與實際值比較(單位:萬噸標準煤)

圖9 預測結果比較

圖10 預測誤差比較A
由表5可知,PSO-BP模型的預測平均誤差為2.3%,BP模型的平均預測誤差為4.8%,說明經過粒子群算法優化神經網絡參數后,不僅使得模型的收斂速度加快,運算時間減少,同時在預測精度方面也有了很大的提升.
根據上述預測模型和流程,對廣東省未來5年的能源需求進行預測,這里假設未來5年各項樣本指標均保持當前的增長速度,得出的結果見表6.

表6 2014~2018年能源需求量(單位:萬噸標準煤)
從表6可知,未來5年,廣東省的能源需求將持續增長,平均保持5.7%的增長率,并且增長的速度逐步加快,2018年的需求量將達到33 842.34萬噸標準煤.因此,如何針對快速增長的能源需求,采取有效的措施來解決供需不平衡的矛盾,將是決策者需要考慮的問題.根據廣東省發改委2013年底公布的《廣東省能源發展十二五規劃》,在保證全省能源供應能力的前提下,將進一步加快能源消費結構的調整,構建與科學發展要求相適應的安全、穩定、經濟、清潔的現代能源供應保障體系,具體措施是進一步優化能源結構和布局,提升能源利用效率,逐步降低單位GDP能耗,并且爭取在新能源的利用開發方面取得突破性進展,從而為全省經濟社會發展提供強有力的能源保障.
對廣東省的能源需求問題進行了深入的研究,在結合定性和定量分析的基礎上,確定了影響能源需求的主要因素,構建了PSO-BP神經網絡的能源需求預測模型,并對廣東省2014-2018年的能源需求進行了預測.理論分析和實證研究表明,該方法能夠很好的反映廣東省能源需求的特征,預測結果較為準確合理.但就本文所考慮的預測指標體系而言,以定量的指標為主,如何在模型中把政策法規、環境保護等難以定量的影響因素包含進來,構建更為完善的預測指標體系,以及當樣本數量較少的時候,如何保證模型的學習能力和泛化能力,這些問題需要繼續完善解決.
[1]林伯強.中國能源需求的經濟計量分析[J].統計研究,2001(10):34-39.
[2]韓君.中國能源需求的建模與實證分析[D].蘭州商學院,2007.
[3]魏一鳴等.中國能源需求報告(2006):戰略與政策研究[M].北京:科學出版社,2006.
[4]A S WEIGEND.Time series analysis and predicationusing gated experts with application to energy demandforecast[J].Applied Articial Intelligence,1996(6):583-624.
[5]V GEVORGIAN ,M KAISER .Fuel distribution andconsumption simulation in the republic of Armenia[J].Simulation,1998(3):154-167.
[6]張玉春,郭寧,任劍翔.基于組合模型的甘肅省能源需求預測研究[J].生產力研究,2012(11):31-34.
[7]馮亞娟,劉曉愷,張波.基于QGA-LSSVM的能源需求預測[J].科技與經濟,2014(3):56-61.
[8]蘆森.基于組合模型的中國能源需求預測[D].成都:成都理工大學,2010.
[9]李琳娜.基于核主成分分析(KPCA)和神經網絡的單目紅外圖像深度估計[D].上海:東華大學,2013.
[10]張均東,劉澄,孫彬.基于人工神經網絡算法的黃金價格預測問題研究[J].經濟問題,2010(1):45-48.
[11]熊志斌.ARIMA融合神經網絡的人民幣匯率預測模型研究[J].數量經濟技術經濟研究,2011(6):75-81.
[12]龍文,梁昔明,龍祖強,等.基于混合進化算法的RBF神經網絡時間序列預測[J].控制與決策,2012(8):20-25.
[13]王慶榮,張秋余.基于隨機灰色蟻群神經網絡的近期公交客流預測[J].計算機應用研究,2012(6):32-37.
[14]張大斌,李紅燕,劉肖,等.非線性時間序列的小波-模糊神經網絡集成預測方法[J].中國管理科學,2013(2):81-86.
[15]高玉明,張仁津.基于遺傳算法和BP神經網絡的房價預測分析[J].計算機工程,2014(4):187-191.
[16]伍秀君.廣東省能源需求預測分析及能源發展對策研究[D].廣州:暨南大學,2007.
[17]薛黎明.中國能源需求影響因素分析[D].徐州:中國礦業大學,2010.
[18]秦國真.云南能源需求影響因素分析及預測[D].昆明:云南財經大學,2012.
[19]來建波.基于神經網絡的路段行程時間預測研究[D].昆明:云南大學,2011.
[20]潘昊;侯清蘭.基于粒子群優化算法的BP網絡學習研究[J].計算機工程與應用,2006(6):65-69.
[21]郭陽.PSO-BP神經網絡在商業銀行信用風險評估中的應用研究[D].廈門:廈門大學,2009.