張麗娟 ,保富
(云南電網(wǎng)有限責任公司信息中心,昆明 650217)
隨著我國雙碳目標的提出,智能電網(wǎng)朝著智能碳減技術(shù)發(fā)展[1]。同時,一些用戶存在竊電行為,嚴重影響了電力企業(yè)的效益和供電質(zhì)量,危及電網(wǎng)安全。據(jù)不完全統(tǒng)計,這一行為導(dǎo)致電力企業(yè)每年損失約為200億元[2]。因此,充分利用海量的用電數(shù)據(jù),及時發(fā)現(xiàn)這一行為,對智能電網(wǎng)的發(fā)展具有重要意義。
目前,國內(nèi)外對用戶異常用電行為的檢測主要集中在設(shè)備檢測和數(shù)據(jù)分析兩個方面。文中主要研究數(shù)據(jù)分析方法[3-4]。在文獻[5]中,提出了一種結(jié)合Bagging二次加權(quán)集成和孤立森林的異常用電檢測算法。結(jié)果表明,該方法的孤立特征序列優(yōu)化策略能有效改善無標簽和類不平衡情況下異常用電的檢測效果,二次加權(quán)集成策略能有效提高不平衡數(shù)據(jù)分布的檢測效果。在文獻[6]中,提出了一種用于電力用戶異常用電行為檢測的改進支持向量機。結(jié)果表明。所提方法可以有效地檢測電力用戶的異常用電行為,可以較好地挖掘用戶用電規(guī)律。在文獻[7]中,提出了一種用于電力用戶異常用電行為檢測的雙向長短時記憶神經(jīng)網(wǎng)絡(luò)。結(jié)果表明,與傳統(tǒng)的異常檢測方法相比,該方法具有良好的檢測性能,在實際應(yīng)用中具有較高的精度和穩(wěn)定性。在文獻[8]中,將改進的極限學(xué)習(xí)機用于電力用戶異常用電行為檢測。結(jié)果表明,該方法能夠有效地檢測異常用電行為,更好地挖掘異常用電的特征。然而,上述方法對電力用戶異常檢測的準確性還不夠高,檢測的準確性還需要進一步提高。
基于上述研究,提出了一種改進的蟻獅優(yōu)化(Ant Loin Optimization, ALO)算法結(jié)合改進的支持向量機(SupportVectorMachine,SVM)來檢測電力用戶的異常用電行為。采用改進的ALO算法對改進的SVM參數(shù)(懲罰因子和高斯徑向基函數(shù)參數(shù))進行優(yōu)化,并用改進的SVM對其逐一分類。通過試驗驗證了該方法的優(yōu)越性。
隨著智能配電網(wǎng)和測量系統(tǒng)的不斷發(fā)展,配電網(wǎng)的電力數(shù)據(jù)逐漸呈現(xiàn)出數(shù)據(jù)量大、類型多、增長快的特點[9]。然而,受設(shè)備故障、通信故障、電網(wǎng)波動等因素的影響,這些數(shù)據(jù)中含有大量異常用電數(shù)據(jù)[10]。常見的異常用電行為如下:
(1)欠壓法。
改變電能表電壓回路接線或破壞回路,導(dǎo)致電能表電壓丟失或接收到的電壓降低,導(dǎo)致電量降低[11]。
(2)欠流法。
改變電能表電流回路的接線或破壞回路,導(dǎo)致電能表無電流或一部分電流,從而減少電能計量[12]。
(3)移相法。
通過多種方式改變電度表的正常接線方式,或者通過連接與正常測量無關(guān)的電流和電壓,并使用特定的電感或電容連接方式來改變正常的相位關(guān)系,從而電能表少計或倒計[13]。
(4)擴差法。
通過多種手段改變電能表內(nèi)部結(jié)構(gòu)和性能,改變誤差,通過電流或機械力損壞電能表,使電能表少計或不計[14]。
(1) 缺失值處理技術(shù)。
部分電力負荷數(shù)據(jù)電存在為零或為空現(xiàn)象,影響用電數(shù)據(jù)分析[15]。文中通過拉格朗日插值法對這些數(shù)據(jù)進行補充。
提取缺失點前后各5個數(shù)據(jù),采用式(1)和式(2)進行補充[16],即:
(1)
li(r)=
(2)
式中r為缺失負荷數(shù)據(jù)對應(yīng)的下標序列號;ri為非缺失數(shù)據(jù)yi的下標序列號;Ln(r)為補充數(shù)據(jù);li(r)為拉格朗日多項式。
(2) 數(shù)據(jù)歸一化。
因為各數(shù)據(jù)特征的比例不一樣,有必要對數(shù)據(jù)進行標準化。數(shù)據(jù)歸一化處理如式(3)所示[17]:
(3)
式中x和x′分別為原始負荷數(shù)據(jù)的實際值和歸一化數(shù)據(jù);xmax和xmin分別為原始負荷數(shù)據(jù)的最大值和最小值。
SVM是文獻[18]提出的一種機器學(xué)習(xí)方法,用于解決小樣本和非線性問題。其基本思想是在線性可分的條件下,找到完全分離兩個樣本的最優(yōu)超平面[19]。對于非線性問題,利用該方法將其轉(zhuǎn)化為線性可分問題。
異常電檢測的樣本數(shù)據(jù)是雜亂無章的,具有非線性和不可分割性。對于線性可分樣本,用式(4)的約束條件求解最優(yōu)超平面[20]。
(4)
式中C為控制誤差的懲罰程度;ξi為松弛變量;ω為權(quán)重向量;b為偏置;yi是介于[-1,1]之間的輸出類別。
引入拉格朗日乘數(shù)αi,將式(4)轉(zhuǎn)化為對偶問題,如式(5)所示[21]:
(5)
可以得到帶邊界的最優(yōu)分類超平面,如式(6)所示:
(6)
式中m為支持向量的數(shù)量;K(x,xi)為核函數(shù)(使用RBF核函數(shù))。
傳統(tǒng)的SVM僅適用于二分類,文中研究的異常用電數(shù)據(jù)是一個多分類問題。如果將SVM應(yīng)用于多分類問題,則需要對其進行優(yōu)化并擴展到多分類SVM[22]。文中提出了一種基于二叉樹的多級SVM分類器來檢測異常用電數(shù)據(jù)。
二叉樹SVM多級分類算法是二叉樹和SVM相結(jié)合。該算法的思想是將所有樣本類別劃分為兩個子類別,再將子類別劃分為兩個子類別[23]。這種循環(huán)一直持續(xù)到只剩下一個類別為止。然后在每個非葉節(jié)點上訓(xùn)練SVM分類器。異常電檢測方法的結(jié)構(gòu)如圖1所示。
圖1 異常用電檢測方法結(jié)構(gòu)
ALO算法是一種模擬蟻獅捕食螞蟻過程的智能優(yōu)化算法,具有較好全局優(yōu)化能力,但存在收斂速度慢和局部優(yōu)化等問題[24]。針對以上問題,文中進行了兩方面的改進。采用邊界收縮系數(shù)和位置更新動態(tài)加權(quán)系數(shù)。邊界收縮系數(shù)使得求解空間搜索更加全面,提高了收斂速度。位置更新的動態(tài)權(quán)重系數(shù)防止了算法陷入局部優(yōu)化。改進算法的步驟如下:
步驟 1:初始化蟻獅和蟻群的初始方向,設(shè)定兩個種群的數(shù)量都為N,利用適應(yīng)度函數(shù)求出各蟻獅的適應(yīng)度。適應(yīng)度大的被定義為精蟻獅;
步驟2:螞蟻在搜索空間中隨機行走,位置如式(7)所示:
X(t)={0,cumsum[2r(t1)-1],…,cumsum[
2r(t2)-1],...,cumsum[2r(tmax)-1]}
(7)
式中cumsum為累計位置數(shù);t為當前的迭代次數(shù);tmax為最大迭代次數(shù);r(t)為0或1的隨機數(shù);
步驟3:蟻獅設(shè)下陷阱捕捉螞蟻。聰明的蟻獅會不斷縮小螞蟻行走的空間,讓螞蟻只能靠近陷阱。在迭代的過程中,螞蟻能夠行走的區(qū)域越來越小。文中提出了邊界收縮系數(shù),會隨著算法迭代快速持續(xù)增加,螞蟻行走的邊界更新方法如式(8)所示[25]:
(8)
式中dt和ct為t次循環(huán)后螞蟻方向變化的上下限;γ為收縮調(diào)整系數(shù);λ為比例因子;
步驟4:根據(jù)適應(yīng)度選擇新的精英蟻獅,根據(jù)新選擇的蟻獅重建陷阱。其定義如式(9)所示[26]:
(9)
螞蟻一般更喜歡在精英蟻獅周圍行走,這削弱了普通蟻獅的作用,使其更容易受到局部優(yōu)化的影響,如式(10)所示:
(10)
為了解決上述問題,文中引入了位置更新的動態(tài)加權(quán)系數(shù),如式(11)所示[27]:
(11)
式中rand為0~1之間的隨機數(shù);ω1和ω2為權(quán)重因子,ω1取值范圍為[0.1,2)。在迭代開始時,ω1值較大,越靠近普通蟻獅。此時,算法進行全局搜索。經(jīng)過多次迭代,ω2值將逐漸增加。此時,越靠近精英蟻獅,發(fā)揮其局部優(yōu)化能力;
步驟5:確定是否滿足迭代終止要求。滿足則退出,否則返回步驟2。
文中的數(shù)據(jù)量非常大,僅采用二叉樹SVM多級分類檢測時間非常長。文中利用改進的ALO算法優(yōu)化了改進的SVM參數(shù),縮短了訓(xùn)練時間,提高了檢測精度[28]。步驟如下:
步驟1:初始化ALO算法和SVM的參數(shù);
步驟2:使用改進的ALO算法優(yōu)化改進的SVM參數(shù);
步驟3:計算螞蟻和蟻獅的適應(yīng)度,并保留精英蟻獅;
步驟4:找到最優(yōu)的蟻獅,計算它的適合度和位置;
步驟5:確定是否滿足終止要求。滿足則退出,否則轉(zhuǎn)至步驟3;
步驟6:完成優(yōu)化,得到最優(yōu)參數(shù)(C,g),并用最優(yōu)參數(shù)建立模型;
步驟7:將測試集輸入模型進行分類,并輸出分類結(jié)果。
文中所提方法的流程如圖2所示。
圖2 算法流程
為了測試文中用戶異常檢測方法的性能,仿真設(shè)備為華為PC,第11代核心i7 CPU,主頻為2.5 GHz,內(nèi)存為16 GB,仿真平臺為用于數(shù)據(jù)分析的仿真軟件。文中利用某電力公司發(fā)布的2019年~2020年連續(xù)450天(采樣頻率1 h)共3 000個用戶用電量數(shù)據(jù)。從3 000個用戶中選擇1 200個用戶作為竊電用戶,對其數(shù)據(jù)進行替換。即,將普通用戶數(shù)據(jù)轉(zhuǎn)換為竊聽用戶,模擬4種實際竊電方法(欠流法1、欠流法2、移相法3、擴差法4),每種情況300個用戶。ALO算法的參數(shù)設(shè)置如下:螞蟻和蟻獅種群各為 40,最大迭代次數(shù)為100、收縮調(diào)整系數(shù)為400、比例因子為20。權(quán)值系數(shù)ω1的取值范圍為[0.1,2);SVM參數(shù):參數(shù)C和g取值范圍分別為(0, 10]和(0, 1]。
應(yīng)根據(jù)以下四種竊電方法之一修改選定的每周用電量記錄,修改后將正常用戶數(shù)據(jù)與竊電后數(shù)據(jù)混合,分為訓(xùn)練集和測試集,訓(xùn)練集:測試集=2:1。如圖3所示正常數(shù)據(jù)曲線和轉(zhuǎn)換后的竊電數(shù)據(jù)曲線對比。
圖3 不同竊電方式的用電數(shù)據(jù)
在圖3中,圖3(a)是第一種竊電方式欠壓法竊電前后數(shù)據(jù)。其原理是將用戶的原始用電數(shù)據(jù)乘以0.1~0.8的固定系數(shù)。與正常曲線幅度相比,竊電曲線各點的下降振幅相同。圖3(b)是第二種竊電方式欠流法竊電前后數(shù)據(jù)。其原理是將用戶的某一部分用電數(shù)據(jù)置0。與正常曲線振幅相比,竊電曲線除某一段為0外,其余各點幅度相同,通過開關(guān)切除電能表的計量電流。圖3(c)是第三種竊電方式移相法竊電前后數(shù)據(jù)。其原理是將用戶的原始用電數(shù)據(jù)各點隨機乘以系數(shù)0.1~0.8。與正常曲線振幅相比,竊電曲線各點的下降幅度不同。圖3(d)是第四種竊電方式擴差法竊電前后數(shù)據(jù)。其原理是將用戶用電的平均值乘以系數(shù)0.1~0.8。與正常曲線振幅相比,竊電曲線的幅度變化各不相同。
為了驗證文中所提用戶異常用電行為檢測方法的優(yōu)越性,將該方法與傳統(tǒng)的DT-SVM和PSO-SVM檢測方法進行了比較分析。通過訓(xùn)練集對DT-SVM和PSO-SVM和文中方法進行訓(xùn)練,并在測試集中測試不同方法的分類效果。其結(jié)果如圖4所示。
圖4 不同檢測方法檢測結(jié)果對比
在圖4中,用戶分為正常用戶、竊電用戶1、竊電用戶2、竊電用戶3和竊電用戶4,分別用0、1、2、3和4表示。從圖4可以看出,文中所提方法的檢測效果優(yōu)于DT-SVM方法和PSO-SVM方法。
為了測試該方法的準確性,對不同的方法進行了20次測試取平均值。表1為用電數(shù)據(jù)的測試結(jié)果。
表1 不同方法的檢測結(jié)果
從表1可以看出,文中所提方法在檢測異常用戶行為方面具有最高的檢測精度,達到98.4%,優(yōu)于DT-SVM檢測方法12.2%,優(yōu)于PSO-SVM檢測方法8.3%。同時,所提方法的訓(xùn)練時間也最短,提高了訓(xùn)練效率。訓(xùn)練時間為18.12 s,優(yōu)于DT-SVM檢測方法33.97 s,優(yōu)于PSO-SVM檢測方法26.00 s。驗證了文中所提方法的優(yōu)越性。
提出了一種將改進SVM和改進ALO算法相結(jié)合用于檢測電力用戶異常用電行為。利用改進的ALO算法對改進SVM的參數(shù)進行了優(yōu)化,并通過改進后的SVM進行逐一分類。結(jié)果表明,與 DT-SVM和PSO-SVM檢測方法相比,該方法能更有效地檢測電力用戶的異常用電行為,提高檢測精度和降低訓(xùn)練時間。檢測準確率優(yōu)于DT-SVM檢測方法12.2%,優(yōu)于PSO-SVM檢測方法8.3%,達到98.4%,平均訓(xùn)練時間優(yōu)于DT-SVM檢測方法33.97 s,優(yōu)于PSO-SVM檢測方法26.00 s,達到18.12 s。但仍有不足之處和改進提升的空間。根據(jù)現(xiàn)有數(shù)據(jù),如何實時檢測用戶用電數(shù)據(jù)的異常,從根本上杜絕用戶竊電,下一步的工作重點是不斷提高和完善所提方法的性能。