劉文宇, 劉璐,劉馨然,崔赫,李運澤
(國網遼寧省電力有限公司營銷服務中心, 沈陽 110000)
智能電能表是配電網臺區中重要的電能計量設備,是智能配電網的重要組成部分[1-3]。智能電能表運行的準確性直接影響到電網公司與用電用戶之間的電能交易與結算過程的真實性和公平性。同時電網公司對于保障智能電網準確運行也關系著防止漏電、竊電等不正當行為的檢測,直接影響到電網公司運營的經濟指標[4-5]。然而傳統的對智能電能表運行誤差檢測由于缺乏有效的智能手段,只能采用定期上門抽檢的形式,這樣的方式面臨著檢測效率低下,檢測范圍覆蓋面低,檢測成本高等缺點。
隨著包括高級量測技術(Advanced Metering Infrastructure,AMI)在內的智能技術發展,配電網近年來也正經歷著智能化升級和改造的過程,這使得對智能電能表運行誤差的檢驗手段不斷升級[6-7]。在這樣的情形下,電網公司一方面實現了對智能電能表運行狀態的遠程采集和分析,另一方面也積累了海量的智能電網運行數據。如何從這些數據中提取出智能電網運行的關鍵信息,判斷其運行誤差的合理性,對于電網公司實現全面漏電,竊電的檢測以及智能電能表的更新有著重要的作用。
在這方面目前已有較多文獻進行了智能電能表誤差估計方法的建模。比如文獻[8]提出了基于限定記憶遞推最小二乘算法的智能電能表運行誤差估計模型,該模型能夠有效提升評估的覆蓋范圍,同時評估的實時性得到了顯著提升,為電網公司及時發現異常智能電能表提供了技術支撐。文獻[9]首先建立智能電能表運行誤差估計的多元線性評估方程,基于改進經典吉洪諾夫正則化算法進行模型求解,有效提升了評估的精準性。文獻[10]計及了用戶用電水平,智能電能表安裝數量和位置等因素建立了一套智能電能表運行誤差估計模型,實現了對智能電能表誤差狀態的準確檢測。文獻[11]通過將讀數矩陣進行分解的方式對所建立的智能電能表運行誤差方程進行求解,并計及了廣義能量守恒方程。此外,還有一些文獻則是將灰色關聯分析法[12-13]、局部異常因子算法[14],支持向量機算法[15]等方法用于構建智能電能表運行誤差估計模型。然而目前還很少有文獻基于智能算法優化神經網絡法構建智能電能表運行誤差估計模型。
BP 神經網絡是用于前向多層網絡的學習算法[16-17],智能電能表運行誤差估計作為一個面向海量歷史數據的問題,通過對BP神經網絡的訓練能夠獲得較優的評估網絡,并將該網絡應用于對測試數據的評估。而傳統BP神經網絡隱含層節點數一般采用經驗公式設定,缺乏合理的靈活性,對BP神經網絡中引入對隱含層節點數的粒子群算法優化過程,能夠提升網絡的性能。
本文提出了一種基于粒子群優化BP神經網絡提出智能電能表誤差估計方法。該方法首先分析了訓練數量的搜集過程以及對歷史數據的預處理,剔除不合理的數據。接著通過對BP神經網絡中隱含層節點數引入粒子群算法進行優化,得到基于粒子群優化BP神經網絡的智能電能表誤差估計流程。最后通過一個算例驗證了所提出模型的有效性和合理性。
采用BP神經網絡進行智能電能表誤差估計需要確定網絡的輸入層數據和輸出層數據。其中輸入層數據選取為智能電能表的用電信息數據和電量計量數據。用電信息數據包括用戶編號、智能電能表型號、負載率、供電半徑、用戶類型;電量計量數據為該智能電能表采集到的歷史電量數據,通過高級量測體系(Advanced Metering Infrastructure,AMI)采集得到,采樣頻率為15 min/次。而輸出數據即為智能電能表的誤差百分比參數。
然而由于歷史上對智能電能表的傳統檢測方法采用抽樣檢測進行,因此所有誤差數據的輸出數據中只有一部分智能電能表具有準確的誤差數據。對于歷史檢測智能電能表采用誤差檢測結果作為其誤差數據。而對于其他電能表采用總智能電能表的誤差作為其誤差數據??傠娔鼙砗推渌娔鼙淼木W絡關系如圖1所示。

圖1 配電臺區總電能表和分電能表分布示意圖
式中y0(t)為總電能表在t時段的讀數;ξ0(t)為總電能表的相對誤差;N為配電網中分電能表的數量;yi(t)為第i個分電能表在t時段的讀數;ξi(t)為第i個分電能表在t時段相對誤差;yloss(t)為t時段配電網實際網損功率。
由于總電能表和分電能表的讀數在歷史運行經驗上存在如式(2)所示的近似關系,可以推導得到如式(3)所示的總電能表和分電能表相對誤差關系。
式(3)說明對于訓練數據中未進行歷史檢驗的智能電能表采用總智能表的相對誤差數據即可有效進行表征。從而彌補了部分智能電能表歷史運行數據缺失的問題。
智能電能表的運行誤差受到其負載率的影響較大。當智能電能表負載率較低時,由于智能電能表本身存在的潛供電流以及電壓互感器非線性區間的影響,導致智能電能表的運行誤差較大。
因此在神經網絡訓練之前需要對負載率較低的智能電能表數據進行剔除。智能電能表運行負載率的定義如式(4)所示。
式中θi(t)為第i個分電能表在t時段的負載率;Ii(t)為第i個分電能表在t時段的檢測負載電流;IN,i為第i個分電能表的額定電流。
對于負載率在10%以下的智能電能表電量數據從訓練樣本中進行剔除。
基本BP神經網絡包括兩個方面:信號的前向傳播和誤差的反向傳播[18]。BP神經網絡的結構如圖2所示。
BP神經網絡算法的執行步驟如下:
(1)對權系數Wij置初值。其中Wi,n+1=-θ。
(2)輸入一個樣本X=(X1,X2,…Xn,1),以及對應期望輸出Y=(Y1,Y2,…,Yn)。
(3)對于第k層第i個神經元的輸出Xik,基于如式(5)所示的過程。
(4)求各層的學習誤差對于輸出層有k=m,則有式(6)。
對于其他各層則有如式(7)所示的計算。
(5)修正權系數Wij和閥值θ。使用權值修正公式如式(8)所示。
(6)當求出了各層各個權系數之后,可按給定指標判別是否滿足要求,模型中采用期望誤差指標的收斂精度作為判別指標。
如果滿足要求,則算法結束;如果未滿足要求,則返回步驟(3)執行。以上過程針對任意Xp=(Xp1,Xp2,…,Xpn,1)和Yp=(Yp1,Yp2,…,Ypn,1)進行。

圖2 單隱含層的BP網絡基本結構圖
一般來說,BP神經網絡的隱含層采用單層的形式,這主要是因為單隱含層的BP神經網絡足以模擬任何非線性映射關系,達到對輸入層和輸出層的數據關系訓練效果。隱含層節點數的確定通常采用經驗公式進行確定,然而這樣的隱含層節點數量制定方式存在諸多的局限性。一方面如果節點數量過少,將無法有效模擬輸入層和輸出層之間的關系,而當節點數量過多時,盡管對輸入層和輸出層關系的擬合效果很好,但很可能會出現過擬合的現象,過擬合將導致對新的輸入數據進行神經網絡求解時出現偏差較大的情況。
因此本節針對BP神經網絡隱含層節點數基于訓練數據對采用粒子群算法進行優化,得到最優的隱含層節點數量作為神經網絡的參數,進而對數據進行再次訓練得到所需要的神經網絡結構。粒子群算法速度和位置的更新方法如式(9)和式(10)所示[19-20]。
式中i為粒序號,i=1,2,…,Np,Np為粒子種群數目;s為迭代代數;為第i個粒子s代的個體極值點;gbests為種群到s代的全局極值點;和分別為第i個粒子在第s+1代和第s代的速度;和分別為第i個粒子在第s+1代和第s代的位置;c1、c2為學習因子;r1、r2為[0,1]之間的均勻分布隨機數。
則可以得到基于粒子群算法的BP神經網絡隱含層節點優化流程如下:
(1)制定粒子群算法參數,包括種群個數、粒子位置維數、學習因子、慣性權重、最大迭代數。令當前迭代次數為零。
(2)按照如式(11)所示的神經網絡隱含層節點數的經驗公式,以初始節點數數據作為粒子位置初始化得到L=[L(i)],其中L為以L0為均值,以n2為方差的正態分布進行隨機模擬并取整得到。
L0=2n+1
(11)
式中n為輸入層節點數、根據輸入數據種類:用戶編號、智能電能表型號、負載率、供電半徑、用戶類型、電量計量數據制定,n取6,則L0取13。
(3)基于訓練樣本數據針對每個粒子的L(i)進行訓練,對每個隱含層神經元的權系數進行訓練,得到第i個粒子的期望誤差信號ζ(i)。
(4)以期望誤差信號的倒數1/ζ(i)作為粒子適應度函數,適應度函數最大的粒子xgbest作為當前最優解,記錄每個粒子的歷史最優解,基于式進行粒子位置和速度的更新,更新全局歷史最優解和個體歷史最優解。
(5)判斷迭代次數是否達到了最大迭代次數,如果是則算法結束,輸出當前全局最優粒子的隱含層節點數,否則令迭代次數加1。返回步驟(3)。
基于所建立的智能電能表誤差估計模型以及粒子群優化BP神經網絡,可以得到智能電能表誤差估計步驟流程圖如圖3所示。

圖3 基于粒子群優化BP神經網絡的智能電能表誤差估計流程圖
針對某地區典型配電網臺區中智能電網運行誤差估計問題,采用本文所建立的方法進行評估。該配電網臺區配置了一臺總智能電能表以及163臺分智能電能表。訓練數據采用2020年1月到5月的智能電能表歷史運行數據,包括輸入數據用戶編號、智能電能表型號、負載率、供電半徑、用戶類型、電量計量數據以及輸出數據運行誤差百分比,采樣頻率為15min/次;樣本測驗數據采用2020年6月1日到15日的智能電網運行輸入數據。分別針對AFPM型和PZ型兩種型號的智能電能表進行運行誤差評估,以上兩種智能電能表已經廣泛應用與居民負荷以及商業負荷的電能計量領域。
同時構建一個多層BP神經網絡,該網絡具有一個輸入層,一個輸出層,一個隱含層,其中輸入層節點數為6,輸出層節點數為1,隱含層節點數采用粒子群算法進行優化。設定第一層隱層神經元的閥值函數為logsig函數,設定第二層隱層神經元的閥值函數為purelin函數。設置BP神經網絡最大迭代次數為200代,訓練的誤差要求為0.000 1。粒子群算法優化中,隱含層節點數初始值為13,算法最大迭代次數為180代,兩個學習因子均為0.8,慣性權重系數為0.5,最優隱含層節點數訓練數據采用2020年1月智能電能表運行數據。
首先運行包含BP神經網絡訓練過程的隱含層節點數粒子群算法優化過程,得到最優隱含層節點數的收斂曲線如圖4所示。同時得到隨著隱含層節點數的變化,神經網絡的誤差指標收斂值的收斂曲線如圖5所示。

圖4 基于粒子群優化算法的BP神經網絡隱含層節點數收斂曲線

圖5 基于粒子群優化算法的BP神經網絡誤差指標收斂值變化曲線
從圖4和圖5中可以看出,BP神經網絡隱含層節點數從初始設置的經驗值13個逐漸收斂到了18個,同時BP神經網絡誤差收斂值從0.007535%逐漸下降到了0.002241%,因此將隱含層節點數設置為18個。
采用訓練完成的BP神經網絡對測試樣本進行評估,任取2020年6月1日到15日內某一個采樣時刻,將智能電能表運行誤差情況針對電能表編號進行統計得到圖6。

圖6 某采樣時刻配電臺區智能電能表誤差分布情況
事實上,依據BP神經網絡對測驗數據的評估結果該配電網臺區內智能電能表誤差具體情況如表1所示。

從表1可以看出,編號為26號,74號和153號智能電能表運行發生了負超差,可能是因為電能表發生了故障或者向其他用戶實行了竊電行為;而編號為68號,118號的智能電能表發生了正超差,可能是因為電能表發生了故障或者該用戶被漏電和竊電。
以AFPM型智能電能表為例,為了驗證粒子群優化BP神經網絡相比于傳統的BP神經網絡在智能電能表運行誤差估計中的優勢,針對同樣的訓練數據和測驗數據,分別采用傳統BP神經網絡以及本文粒子群優化BP神經網絡進行運行誤差評估,形成運行指標對比如表2所示。
從表2中可以看出,基于傳統BP神經網絡的誤差在第16代達到了收斂目標,而基于粒子群優化BP神經網絡的誤差在第9代即達到了收斂目標,說明了改進的有效性。

本文提出了基于粒子群優化BP神經網絡的智能電能表運行誤差估計方法,該方法通過對BP神經網絡中隱含層節點數引入粒子群算法進行優化,并基于優化后的BP神經網絡對智能電能表歷史運行數據進行訓練,得到BP神經網絡,對測試項目進行測試,從而對智能電能表運行誤差進行評估,發現臺區中運行異常的智能電能表。通過基于粒子群優化BP神經網絡的智能電能表運行誤差估計方法能夠為配電網臺區中智能電能表的故障檢測、漏電竊電事件發掘提供指導。相比于傳統BP神經網絡,本文粒子群優化BP神經網絡在收斂性能上更優,有助于提升智能電能表運行誤差估計的實時性。