摘要: 電力系統的短期負荷預測是電力系統保證穩定運行的重要環節,也是區域配電調度的重要依據。為了提高短期負荷預測的精準度與穩定性,本文提出一種基于粒子群算法與遺傳算法共同優化BP神經網絡的負荷預測方法。針對BP神經網絡存在的權值取值不確定、收斂速度慢等問題,將粒子的維度空間與人工神經網絡的權值建立映射關系,使得神經網絡的均方誤差作為粒子群的適應函數,同時,引入遺傳算法對其迭代過程進行優化,利用遺傳算法全局搜索能力對極值進行搜索,并對粒子的適應度進行分類。最后通過實例分析,證明了該方法的有效性。
關鍵詞: 短期負荷預測; BP神經網絡; 粒子群算法; 遺傳算法
1 引言
我國是一個能源消費大國,電力產業的穩定運行是國家深化改革的有力保障,是實現兩個一百年的重要基石。電力的發展往往預示著國家經濟的發展水平,中國經濟的持續高速增長使得全社會的用電量也保持了較快的增長趨勢,然而快速增長的供電需求給電力部門帶來了壓力,加之電煤供應吃緊、水利供電不足等問題的影響,因此如何保障電力系統的平衡供應已經成為一個至關重要的問題[1]。
電力系統負荷預測是指從需求供給側出發,基于電網負荷的歷史數據,結合現有的重要因素,預測接下來某段時間某地區的用電負荷值。由于現實中電能無法進行大量存儲,且發電、供電、用電過程都是同時進行的,因此為了保障電力系統的穩定性和經濟性,所以對地區的電力負荷預測十分重要。
2 BP神經網絡
BP神經網絡是一種誤差反向傳播的網絡模型,它是由D.E.Rummelhart 以及 J.L.Ma Clelland于1986年提出的概念,也是當前應用最廣泛的神經網絡[2]。
2.1 BP預測模型設計
(1)網絡層數:BP神經網絡由一個輸入層和一個輸出層,以及一個以上的隱含層組成。對一般問題來說,只要增加適量的神經元節點數,單隱含層結構的神經網絡就能夠滿足絕大多數問題的需求。
(2)輸入層節點數:輸入層節點數是由實際問題和所擁有的數據集決定的,它取決于輸入向量的維數,比如歷史負荷數據、天氣、溫度、節假日類型等等。
(3)隱含層節點數:一般來說,隱含層節點數越多,網絡的性能就越好,就越能滿足負荷預測的需求,但網絡結構的復雜化,也會使得訓練時間變長,因此如何選擇既能滿足網絡性能也能保證收斂速度的最優節點數,是神經網絡模型搭建過程中至關重要的問題。在實際的操作中,通常采用以下公式來選擇最優隱含層節點數:
(4)輸出層節點數:輸出層節點數是有具體問題的需求而確定的,對于一般的負荷預測,1個節點數即預測數值就可以滿足預測需求。
(5)傳遞函數:輸出層均選用線性函數作為傳遞函數,而輸入層和隱層的傳遞函數選用S型函數,如下式所示:
(6)訓練方法:在訓練開始前,確定初始值作為迭代調整的起點,并用迭代調整的方式確定權值,接著對歷史負荷數據進行訓練。
3 粒子群算法
粒子群優化算法是科學家通過觀察鳥群捕食過程研究而來的仿生學方法,是基于種群的隨機優化技術的一種非常典型的尋優算法,于1995年由Eberhart和Kennedy提出。
BP算法的缺點在于隱含層節點難確定、易限入局部極小值、收斂速度慢等問題。BP神經網絡能否達到預期目前,與算法的選擇、網絡的確定、訓練樣本的大小都有很大關系。而粒子群算法通過概率全局搜索最優,其具有收斂速度快,魯棒性好等優點,而神經網絡模型具有一定的自學習能力。將粒子群算法與神經網絡結合,利用粒子群算法來選擇神經網絡的權值,不但能夠發揮粒子群算法的優點,還能夠提高神經網絡的收斂速度和學習能力[3]。
3.1 粒子群優化步驟
利用粒子算法對神經網絡進行優化的主要工作為:將粒子維度空間與神經網絡的權值建立映射關系,神經網絡權值的個數對應著粒子群的個數;使粒子群的適應函數作為神經網絡的均方誤差。在算法的設計過程中,首先對神經網絡權值進行編碼,表示粒子群的個體,再按照粒子群算法進行迭代,把新生成的個體向量還原成神經網絡權值,最后將輸出結果用于計算樣本點的均方誤差,如果誤差小于系統指定的誤差精度,則停止訓練[4]。同時,訓練過程中產生的均方誤差作為評價個體的適應函數,訓練的目的是使均方誤差指標達到最小,即:
其中n,c分別表示樣本的個數與神經網絡的輸出個數,tk,p為p個樣本的k個理想輸出,Yk,p為第p個樣本的第k個實際輸出。當均方誤差的適應度函數達到最小時,神經網絡的權值與閾值就確定了。
具體過程如下:(1)首先確定網絡規模、最大速度、搜索范圍、最大迭代步數以及精度要求等。(2)其次根據粒子群的規模和權值個數確定種群。(3)計算各粒子的適應值。(4)將當前每個粒子的適應度與全局適應度值進行比較,確定每個粒子最優適應度。(5)檢驗迭代次數和誤差要求,判斷是否符合預定條件。(6)更新每個粒子的速度和位置。(7)返回步驟(3)繼續迭代至結束。
4 遺傳算法
遺傳算法是模擬達爾文進化論的自然選擇和遺傳機理的生物進化計算模型,是一種具有適者生存、自然淘汰的一種優化算法,它能夠把求解問題表示成染色體,通過編碼的形式表示成字符串。在利用遺傳算法求解問題時,首先要確定問題的目標函數和變量,然后對變量進行編碼,這樣做主要是因為在遺傳算法中,問題的解是用數字串來表示的,而且遺傳算子也是直接對串進行操作,編碼方式可以分為二進制編碼和實數編碼[5]。隨著遺傳算法的迭代,品質優良的特征值會被逐漸被保留,并且重新組合產生新的個體。遺傳操作包括三個基本的遺傳算子,即選擇、交叉、變異,選擇和交叉能夠完成大部分搜索功能,而變異則可以最大限度逼近最優解。
遺傳算法的特點是:適應度函數采用目標函數;很強的全局優化能力和搜索能力;采用啟發式搜索,而不是完全的隨機測試。
4.1 遺傳算法優化步驟
將粒子群算法與遺傳算法結合,對BP神經網絡做優化,不僅具有粒子群算法收斂速度快的優點,而且也有遺傳算法的全局收斂的優點。優化的具體過程為:
(1)初始化種群以及設定粒子群相關參數,如最大迭代次數以及誤差精度等,其中,每個粒子都對應著BP神經網絡的權值。
vi (t+1)=θ1 × vi (t)+(1-θ1)vj (t)vj (t+1)=(1-θ1)× vi (t)+θ1× vj (t)
對粒子之間的位置交叉公式操作實現如下:
xi (t+1)=θ2 × xi (t)+(1-θ2)xj (t)xj (t+1)=(1-θ2)× xi (t)+θ2× xj (t)
式中的θ為一個范圍在[0,1]之間的隨機數,比較交叉后粒子的適應度值,保留適應度值較大的粒子進入下一次迭代,剩下的部分則進行變異操作。
(4)更新個體和群體的全局極值,經過遺傳算法的處理后,再對粒子的當前適應度值與個體極值做比較,判斷是否需要更新個體極值pbest與全局極值gbest。
(5)重復以上步驟,直到迭代數達到上限或者達到目標函數的收斂精度。
(6)將得到的全局最優解賦值于BP神經網絡的權值和閾值,通過BP神經網絡再進行學習訓練,得到負荷預測的網絡模型。
5 實例分析
本文基于某縣供電站的歷史負荷數據,訓練樣本采集了2012年1月1日至2012年6月28日共180天的負荷數據。對于該負荷預測的步驟數據處理如下:
(1)對負荷數據進行預處理,修補異常數據及缺失數據。然后對樣本數據的歸一化處理,將數據壓縮到[0,1]或者[-1,1]區間內。
(2)確定BP神經網絡的隱藏層節點數、學習率、訓練目標、迭代次數等。對于BP神經網絡其學習率為0.01,誤差訓練的目標值為0.0001,迭代次數上限為300次。
推薦閱讀:《廣西電力建設科技信息》以馬列主義、毛澤東思想、鄧小平理論和“三個代表”重要思想為指導,全面貫徹黨的教育方針和“雙百方針”,理論聯系實際,開展教育科學研究和學科基礎理論研究,交流科技成果,促進學院教學、科研工作的發展,為教育改革和社會主義現代化建設做出貢獻。
論文指導 >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >