李 文
(安徽機電職業技術學院,安徽 蕪湖 241000)
基于Elman神經網絡算法的電力負荷預測模型研究
李 文
(安徽機電職業技術學院,安徽 蕪湖 241000)
隨著社會經濟的發展,也為電力負荷系統帶來極大的考驗.如何才能夠讓電力保持平穩、高質量的輸送,使客戶的用電需求得到用力保證,避免因為斷電給客戶造成極大的經濟損失,這我們需要不斷思索的問題.隨著依托于人工神經系統的新預測技術出現,對電力負荷的預測越來越準確,在保障電力順利平穩輸送的同時,也減少可人工成本的支出.本文通過Elman型神經網絡,對電力負荷預測進行研究,并通過Matlab進行仿真.
神經網絡;電力負荷;仿真
前饋型網絡是構成神經網絡的主要類型之一,另外一種非常重要構成類型則是反饋型網絡,這主要是根據信號在神經網絡中的走向來看區分的.相比而言,前者是所有神經網絡中最早被提出的,也是公認的最簡單的一種神經網絡,它的工作原理是神經元信號從輸入層開始,只能不停地向前流動,一直到輸出層為止,如同我們交通道路中的不能掉頭的單行道一般.我們通常講的回歸網絡,其實就是說反饋型神經網絡,這種網絡算法比前饋神經網絡更為繁雜難算,換而言之,發聵神經網絡型就是指神經元信號在從輸入層到輸出層輸送的過程中,可以進行反向輸送.因為發聵型神經網絡具有十分明顯的延遲、發聵等的特征.
這就相當于生活中人們最常用的Elman神經網絡,還有Boltzmann神經網絡也都算于反饋型神經網絡.其中Elman神經網絡最有代表性,是Elman在1990年時率先提出的.
首先是輸入這個層面,其次是隱含,還有承接和輸出,共同組成了Elman型神經網絡的最主要流程.如圖23-1示,如果將其中輸入、隱含以及輸出這三個層次進行相連的話,就會形成一種前饋式網絡.
輸入層的功能就是對信號進行輸送,而輸出層的功能就是對信號進行線性加權.隱含層的功能就是進行線性或者非線性函數的傳送,可以認為是一個一步延時算子,起到一個承上啟下的作用,它主要是對隱含層的傳輸的信號進行記錄以后,并將其傳輸給輸入層.
Elman神經網絡有兩大突出優勢:第一,利用承接層的延遲以及存儲排除隱匿層,其可以自動連接到隱含層的進入.上述自動連接的突進能夠將過去狀態的數據非常靈活,再加上融入了內部反饋網絡能夠將網絡自身處理信息的能力提升,最終建立動態數字模型.第二,它可以任何一個精確度接近任何一個非線性映射,忽視外部噪聲對系統的影響,進而建立數字模型.

下面就是23_1,Elman網絡的非線性狀態空間數學計算方式:
y(k)=g(w3x(k))
x(k)=f(w1xc(k)+w2(u(k-1)))
xc(k)=x(k-1)
式中,y為m維輸結點向量;x為n維中間層結點單元向量;u維r維輸入向量;x為n維反饋狀態向量;w3為中間層到輸出層連接權值;w2為輸入層到中間層連接權值;w1為承接層到中間層連接權值;上式當中,g(*)則代表的是排出神經元傳導這個函數,即線性組合用的中間層;f(*)則代表了傳導中間層神經元這個函數,我們還會用S來替代.
與此同時,Elman神線網絡也使用BP算法.式中,yk(w)為目標輸入向量.
發電系統、電網以及用電客戶三者統一構成了整個電力系統,不間斷地滿足廣大客戶的生產、生活用電需求是電力系統的主要職能.由于電是一種無色無形的能量,具有極大的危險性,再加上存儲技術上的限制,電在生產過程的中,很難被大量儲存下來.同時,客戶對電能的消耗也不是一成不變的,而是隨機性發生變化,忽高忽低,這對電力負荷系統帶來極大的考驗.如何才能夠讓電力保持平穩、高質量的輸送,使客戶的用電需求得到用力保證,避免因為斷電給客戶造成極大的經濟損失,這是電力部門正不斷思索的問題.隨著依托于人工神經系統的新預測技術出現,對電力負荷的預測越來越準確,在保障電力順利平穩輸送的同時,也減少可人工成本的支出.
與傳統的預測方法有所不同的是,新的負荷預測方法是運用人工神經網絡中的一種非數學模型預測法而建立起來的.而傳統的負荷預測方法,先將以往的負荷數據進行人工統計,然后利用數學方程式,建立一個數學模型,其特點就是計算速度十分快,這種預測方法十分適用于對小范圍內的電力負荷進行預測.但隨著我國社會日新月異,生產、生活用電量與日俱增,在更多的電力系統建設的同時,其電力負荷變化更是越來越復雜.因為傳統的預測方法自身也存在著嚴重的不足,預測范圍小,對環境的變化十分不適應,已經滿足不了電力部門逐漸增加的需求,因此對新的預測技術進行開發進行改進,成為一個擺在電路部門面前,不得不解決的一個大難題.因為負荷會隨著時間的變化而不時發生變化,很難用數學模型來表現清楚,隨著一種建立人工神經網絡基礎上的非數學模型預測法,推動了新的負荷預測方法的出現.
與傳統的預測方法有所不同的是,新的預測方法是利用人工神經網絡中的一種非數學模型預測法而進行建立的.而傳統的負荷預測方法,先將以往的負荷數據進行人工統計,然后利用數學方程式,建立一個數學模型,其特點就是計算速度十分快,這種預測方法十分適用于對小范圍內的電力負荷進行預測.但隨著我國社會日新月異,生產因為傳統的預測方法自身也存在著嚴重的不足,預測范圍小,對環境的變化十分不適應,已經滿足不了電力部門逐漸增加的需求,因此對新的的預測技術進行開發進行改進,成為一個擺在電路部門面前,不得不解決的一個大難題.因為負荷會隨著時間的變化而不時發生變化,很難用數學模型來表現清楚,隨著一種建立人工神經網絡基礎上的非數學模型預測法的出現,推動了新的負荷預測方法的出現.
隨著社會經濟的發展,我國的生活、生產用電將人工神經網絡和預測方法有機結合起來,并運用二者的突出優勢,打造一個數據模型.在所有的人工神經網絡中,只有輸入延遲的反饋式神經網絡,非常適用于網絡模型的建立.在網絡模型建立后,通過對以往的電力負荷數據和預測數據進行全面比較分析,對電力系統負荷運行的規律進行探索,并對未來的某個時段的電力負荷情況進行預測,為該時段的電力負荷管控提供依據.
通常來講,每天的9點到19點,是電力系統當天負荷高峰時期.下表是對每天9點到19點電力負荷數據的統計,作者將用這些數據進行一個網絡預測,看預測的結果是否和實際數據相一致.

表1 電力系統負荷數據表
本例中用到的關鍵函數為newelm(),其作用為創建一個Elman網絡,其調用格式如下:
net=newelm(PR,[S1 S2SN1],{TF1 TF2TFN1},BTF,BLF,PF,IPF,OPF)
在上述公式中,R版塊中要素的具體值是P;T為SN*Q2的具有SN個元素的輸出矩陣;Si為第i層的長度;Tfi為第i層的傳遞函數,默認值:隱藏層為’tansig’,輸出層為’purelin’;BTF具體指神經網絡反向傳達,通常用’trainlm’來表示;BLF具體指神經網絡權值指反向傳達,一般表示為’learngdm’;PF 為性能函數,默認值為’mse’;IPF 為輸入處理函數,默認值為:’{’fixunknowns’,’removeconstantrows’,’mapminmax’}’;OPF 為輸出處理函數,默認值為’{ ‘removeconstantrows’,’mapminmax’}’
MATLAB實現代碼如下:
% 建立在,Elman神經網絡基礎上的電力負荷預測模型研究
%% 清空環境變量
clc;
clear all
close all
nntwarn off;
%% 數據載入
load data;
a=data;
%% 選取訓練數據和測試數據
for i=1:6
p(i,:)=[a(i,:),a(i+1,:),a(i+2,:)];
end
% 訓練數據輸入
p_train=p(1:5,:);
% 訓練數據輸出
t_train=a(4:8,:);
% 測試數據輸入
p_test=p(6,:);
% 測試數據輸出
t_test=a(9,:);
% 為適應網絡結構做轉置
p_train=p_train';
t_train=t_train';
p_test=p_test';
%% 網絡的建立和訓練
% 采用輪回使用,將各個隱藏層神經元的數量進行建立
nn=[7 11 14 18];
for i=1:4
threshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1];% 進行Elman神經網的構建看不到的層是nn(i)個神經元
net=newelm(threshold,[nn(i),3],{'tansig','purelin'});
% 設置網絡訓練參數
net.trainparam.epochs=1000;
net.trainparam.show=20;
% 初始化網絡
net=init(net);
% Elman網絡訓練
net=train(net,p_train,t_train);
% 預測數據
y=sim(net,p_test);
% 計算誤差
error(i,:)=y'-t_test;
end
%%;利用作圖的方式查看具體隱藏層神經元的數量,得到的網絡的預料結果
plot(1:1:3,error(1,:),'-ro','linewidth',2);
hold on;
plot(1:1:3,error(2,:),'b:x','linewidth',2);
hold on;
plot(1:1:3,error(3,:),'k-.s','linewidth',2);
hold on;
plot(1:1:3,error(4,:),'c--d','linewidth',2);
title('Elman預測誤差圖')
set(gca,'Xtick',[1:3])
legend('7','11','14','18','location','best')
xlabel('時間點')
ylabel('誤差')
hold off;
預測結果如下圖所示:

我們可以從上圖看出,在這次預測的誤差是非常小的,簡直可以忽略不計.只有出現7個神經元的時候,存在著較大的誤差,這可能和操作不當有關.在出現18個神經元時,誤差變成了最小,其波動幅度十分的小,可見18個神經元才是本次負荷預測中最準確的.
其實現在能夠準確對電力負荷進行預測的技術其實有很多,每一種的正確率都很高.但是隨著電力行業迅速發展,其系統更加龐雜,如何讓電力負荷預測能夠跟上電力行業的發展步伐,仍需要電力部門進行探索研究.本案例為時間序列類型數據預測提供了依據和思路.但是建立一個電力負荷預測,只有以往的預測數據是遠遠不夠的,畢竟歷史不能代表現在,這需要對各個方面進行綜合考慮,如電力基礎數據、天氣情況,工作日和節假日的不同用電量等等.本例由于篇幅有限,對預測模型做了簡單化處理,但這并不影響Elman預測功能的演示.
〔1〕邰曉紅,王麗娜.基于模糊控制修正Elman神經網絡的電力負荷短期動態預測[J].世界科技研究與發展,2016(04).
〔2〕陳冬灃,肖建華,馬留洋,孟安波.基于縱橫交叉算法與Elman神經網絡的短期負荷預測研究 [J].貴州電力技術,2016(11).
〔3〕郭姣姣.基于改進Elman神經網絡的短期電力負荷預測[D].遼寧工業大學.
〔4〕趙銘揚,陳亞,李萍.改進的Elman神經網絡在短期電力負荷預測中的應用[J].寧夏工程技術,2016(06).
TP183;TM715
A
1673-260X(2017)11-0038-03
2017-08-07
安徽高校自然科學研究重點項目(KJ2016A141)