梁嘉文, 嚴(yán)貝峰, 景楷楠, 李婷婷, 屈志原, 王偉寧
(國(guó)網(wǎng)甘肅省電力公司甘南供電公司,甘肅 甘南 747000)
分布式光伏為分散建設(shè),可減少對(duì)公共電網(wǎng)的影響和危害[1-4]。但隨著分布式光伏數(shù)量的增加,大量的線損情況也同時(shí)出現(xiàn),對(duì)分布式光伏的使用產(chǎn)生很大影響。若無(wú)法及時(shí)發(fā)現(xiàn)故障則會(huì)導(dǎo)致更多的問(wèn)題,影響電網(wǎng)的穩(wěn)定性、安全性。因此分布式臺(tái)區(qū)線損異常程度感知對(duì)分布式光伏穩(wěn)定運(yùn)行有重要作用。
眾多相關(guān)學(xué)者已對(duì)此展開(kāi)大量研究,如陳洪濤等[5]根據(jù)K-Means聚類(lèi)算法判斷線損異常,但該方法無(wú)法剔除影響線損異常的孤立點(diǎn),且存在應(yīng)用過(guò)程復(fù)雜的問(wèn)題。張?jiān)5萚6]結(jié)合多元線性回歸和K-Means聚類(lèi)算法進(jìn)行了臺(tái)區(qū)線損數(shù)據(jù)異常的檢測(cè),此方法運(yùn)算簡(jiǎn)單,容易實(shí)現(xiàn),可收縮性高,但運(yùn)算開(kāi)銷(xiāo)比較大。
K-Medoids聚類(lèi)是K-Means的改進(jìn)算法,可更精準(zhǔn)地進(jìn)行數(shù)據(jù)檢測(cè)。因此本文提出基于K-Medoids聚類(lèi)的分布式光伏臺(tái)區(qū)線損異常感知算法,完成對(duì)分布式光伏線損異常數(shù)據(jù)的檢測(cè)。
采用K-Means聚類(lèi)算法聚類(lèi)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)時(shí),會(huì)出現(xiàn)聚類(lèi)線損結(jié)果差異小的情況,且對(duì)噪聲和孤立點(diǎn)比較敏感[7]。因此提出用中心點(diǎn)對(duì)象替換K-Means聚類(lèi)算法中重心點(diǎn)的K-Medoids聚類(lèi)算法。
K-Medoids聚類(lèi)算法的核心是已知分布式光伏臺(tái)區(qū)線損數(shù)據(jù)集包括n個(gè)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象,將這些數(shù)據(jù)集分為k個(gè)聚類(lèi),將Oi作為原始簇中心,隨機(jī)獲取差異數(shù)據(jù)對(duì)象時(shí),應(yīng)在k聚類(lèi)內(nèi)完成。為了給與各數(shù)據(jù)對(duì)象距離最近的簇中分配合理的對(duì)象[8],需要基于這些數(shù)據(jù)對(duì)象到Oi的距離進(jìn)行分配。順序采集非簇中心點(diǎn)的數(shù)據(jù)對(duì)象Otmp的工作,需要在各簇中完成。Etmp為消耗代價(jià),用于描述Oi被Otmp代替過(guò)程所產(chǎn)生的分布式光伏臺(tái)區(qū)線損數(shù)據(jù)聚類(lèi)成本。Ei是線損數(shù)據(jù)聚類(lèi)采用Oi過(guò)程中形成的聚類(lèi)成本。對(duì)比Etmp和Ei兩種聚類(lèi)成本,獲取聚類(lèi)準(zhǔn)則函數(shù)為若Etmp 為了使簇內(nèi)以及簇間的數(shù)據(jù)對(duì)象盡可能地相似以及不相似,需要對(duì)聚類(lèi)準(zhǔn)則函數(shù)可否收斂進(jìn)行判斷。 K-Medoids聚類(lèi)算法利用歐氏距離權(quán)衡類(lèi)內(nèi)相似性,用下式描述該距離d(x,y): (1) 式中:x=(x1,x2,…,xp)與y=(y1,y2,…,yp)分別為數(shù)據(jù)集中兩個(gè)p維的數(shù)據(jù)對(duì)象。 通過(guò)目標(biāo)函數(shù)(誤差平方和準(zhǔn)則函數(shù))E評(píng)價(jià)K-Medoids的劃分聚類(lèi)效果[9],則有: (2) 式中:k為聚類(lèi)數(shù)量;|xj-oi|2與oi分別為歐氏距離與簇類(lèi)Ci的中心點(diǎn);E為數(shù)據(jù)對(duì)象與其所在簇類(lèi)的中心點(diǎn)誤差平方和。 假定待聚類(lèi)數(shù)據(jù)集是n個(gè)臺(tái)區(qū)線損數(shù)據(jù)對(duì)象構(gòu)建的數(shù)據(jù)集合X=(x1,x2,…,xn),p維數(shù)據(jù)對(duì)象用xi=(xi1,xi2,…,xip)描述。為了得到數(shù)值最小化的目標(biāo)函數(shù)E,需要得到X的一個(gè)劃分?jǐn)?shù)據(jù)對(duì)象Pk={C1,C2,...,Ck},確保式(2)值最小化。 K-Medoids聚類(lèi)算法模型為,輸入:分布式光伏臺(tái)區(qū)線損數(shù)據(jù)集X,其由n個(gè)線損數(shù)據(jù)對(duì)象組成,待劃分的聚類(lèi)數(shù)為k;輸出:k個(gè)聚類(lèi)簇Ci,確保聚類(lèi)準(zhǔn)則函數(shù)E值最小化。具體步驟如下: (1) 設(shè)置初始簇中心Oi時(shí),需要有n個(gè)數(shù)據(jù)對(duì)象組成數(shù)據(jù)集,將這些數(shù)據(jù)集分為k個(gè)聚類(lèi),在k聚類(lèi)中隨意選擇不同的數(shù)據(jù)對(duì)象; (2) 重復(fù)迭代; (3) 為了向各數(shù)據(jù)對(duì)象距離最近的簇中分配合理的對(duì)象,需要根據(jù)式(1)計(jì)算獲取的數(shù)據(jù)對(duì)象到Oi的距離進(jìn)行分配; (4) 根據(jù)式(2)計(jì)算得出聚類(lèi)成本Ei; (5) 為了計(jì)算數(shù)據(jù)對(duì)象Otmp的消耗代價(jià)Etmp,需要順序采集非簇中心點(diǎn)的數(shù)據(jù)對(duì)象Otmp,并在各簇中完成; (6) 若Etmp (7) 直到E值保持穩(wěn)定。 本文采用K-Medoids聚類(lèi)算法逐個(gè)聚類(lèi)光伏臺(tái)區(qū)線損數(shù)據(jù),過(guò)程中設(shè)置聚類(lèi)簇?cái)?shù)為1個(gè)。 聚類(lèi)中心點(diǎn)和歐氏距離對(duì)分布式光伏臺(tái)區(qū)線損異常感知起著重要的作用。首先孤立點(diǎn)對(duì)分布式光伏臺(tái)區(qū)線損聚類(lèi)中心點(diǎn)的干擾,可以通過(guò)K-Medoids聚類(lèi)算法解決,但孤立點(diǎn)對(duì)歐式距離的干擾不能用K-Medoids描述。因此要在挑選和去除分布式光伏臺(tái)區(qū)線損異常數(shù)據(jù)之后,再進(jìn)行分布式光伏臺(tái)區(qū)數(shù)據(jù)聚類(lèi),異常數(shù)據(jù)即為上文的孤立點(diǎn)。為了正確篩選出分布式光伏臺(tái)區(qū)異常數(shù)據(jù)[10],本文采用了局部異常因子(LOF)算法。 1.2.1 定義局部光伏臺(tái)區(qū)異常 取分布式光伏臺(tái)區(qū)線損數(shù)據(jù)隨意自然數(shù)K,在數(shù)據(jù)對(duì)象xa具備以下條件時(shí),可以用數(shù)據(jù)對(duì)象xb與數(shù)據(jù)對(duì)象xa之間的距離描述xb的K-距離,即K-distance(xb)。 (1) 最少有K個(gè)對(duì)象x′a∈D{xb},滿(mǎn)足d(xb,x′a)≤d(xb,xa),d代表距離; (2) 最多有K-1個(gè)對(duì)象x′a∈D{xb},滿(mǎn)足d(xb,x′a) 數(shù)據(jù)對(duì)象xb的K-距離鄰域可描述為 Nk-distance(xb)={q|d(xb,q)≤K-distance(xb)} (3) 即所有數(shù)據(jù)對(duì)象與xb的距離對(duì)比,為小于等于K-distance(xb)。 xb對(duì)于對(duì)象xa的可達(dá)距離表達(dá)為 reach-distk(xb,xa)=max{k-distance(xb),d(xb,xa)} (4) 對(duì)象xb與其MinPts-領(lǐng)域的平均可達(dá)距離的倒數(shù)為對(duì)象xb的局部可達(dá)密度,即: (5) 根據(jù)式(3)描述出分布式光伏線損LOF為 (6) 以上算法說(shuō)明分布式光伏臺(tái)區(qū)線損LOF與數(shù)據(jù)異常的可能性成正比,分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象xb異常的程度可以用數(shù)據(jù)對(duì)象xb的異常因子描述。 1.2.2 LOF計(jì)算 n個(gè)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象組成分布式光伏臺(tái)區(qū)線損數(shù)據(jù)庫(kù)X,用鄰域中數(shù)據(jù)對(duì)象的最小個(gè)數(shù)MinPts來(lái)計(jì)算所有分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象的LOF值[11-12],此計(jì)算有兩步。 (1) 為了得到各個(gè)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象的MinPts-鄰域到各個(gè)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象的距離,需要使分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象的MinPts-鄰域在分布式光伏臺(tái)區(qū)線損數(shù)據(jù)庫(kù)中構(gòu)成,在物化數(shù)據(jù)庫(kù)導(dǎo)入計(jì)算結(jié)果,且使用的方法隨差異維數(shù)而變化。 (2) 對(duì)不同數(shù)據(jù)對(duì)象的局部可達(dá)密度以及LOF進(jìn)行運(yùn)算,將各個(gè)分布式光伏臺(tái)區(qū)線損數(shù)據(jù)對(duì)象的LOF值根據(jù)物化數(shù)據(jù)庫(kù)M來(lái)描述。 用下式描述對(duì)象xb的局部可達(dá)密度: (7) 式中:dist(xb,xa)與|N(xb)|分別為xb和xa的n維歐式距離與xb的鄰域中鄰居的數(shù)目。 為了得到xb的局部偏離指數(shù),需要滿(mǎn)足|N(xb)| (8) LOF算法分析數(shù)據(jù)異常的標(biāo)準(zhǔn)是數(shù)據(jù)對(duì)象全部鄰居的局部可達(dá)密度均值。 本文所提方法先由LOF算法對(duì)分布式光伏每日線損率的數(shù)據(jù)進(jìn)行選擇,再由K-Medoids聚類(lèi)算法聚類(lèi)處理后的線損數(shù)據(jù),完成分布式光伏臺(tái)區(qū)線損異常感知。分布式光伏臺(tái)區(qū)線損率分為正常、高損和負(fù)損。正常的線損率值在0%~9%之間,高損的線損率值大于9%,負(fù)損的線損率值小于0%。分布式光伏線損的電量和數(shù)據(jù)的采集必須在智能表100%覆蓋的臺(tái)區(qū)進(jìn)行,才能精準(zhǔn)判斷日線損率,在非智能表下的光伏臺(tái)區(qū)采集數(shù)據(jù)是無(wú)效的。根據(jù)本文所提方法的思想得到了如圖1所示的分布式光伏臺(tái)區(qū)線損異常感知的流程圖。 圖1 K-Medoids算法分布式光伏臺(tái)區(qū)線損異常感知流程圖 導(dǎo)入分布式光伏臺(tái)區(qū)線損數(shù)據(jù),用LOF算法挑選和去除分布式光伏線損異常數(shù)據(jù)后,利用K-Medoids算法對(duì)LOF算法處理后的分布式光伏臺(tái)區(qū)線損率數(shù)據(jù)進(jìn)行聚類(lèi)。在聚類(lèi)時(shí),影響分布式光伏臺(tái)區(qū)線損異常的因素有兩個(gè)[13],分別是聚類(lèi)中心點(diǎn)和歐氏距離,其分別代表分布式臺(tái)區(qū)線損異常的程度以及每日線損率的上下幅度。為了準(zhǔn)確判定分布式光伏臺(tái)區(qū)線損,采用光伏臺(tái)區(qū)日線損率總個(gè)數(shù)與歐式距離結(jié)果的倒數(shù)描述測(cè)驗(yàn)中的歐氏距離數(shù)據(jù)差異。如果分布式光伏臺(tái)區(qū)線損出現(xiàn)異常[14-15],說(shuō)明日線損率上下幅度大,且歐氏距離比閾值大;反之分布式光伏臺(tái)區(qū)線損正常,日線損率上下幅度較平穩(wěn),且數(shù)值在聚類(lèi)中心點(diǎn)區(qū)間內(nèi)。 利用K-Medoids算法進(jìn)行光伏臺(tái)區(qū)線損數(shù)據(jù)聚類(lèi)分析,某種程度上可以理解為在全部可能的粒度集內(nèi)得出最佳粒度值。因此為了達(dá)到K-Medoids算法的最佳數(shù)據(jù)聚類(lèi)效果,引入粒度計(jì)算。 論域U以及屬性集合A構(gòu)成聚類(lèi)空間,聚類(lèi)空間T=(U,A)的相似度F(xi,xj)用下式描述: (9) 式中:|A|以及xil,xjl分別為聚類(lèi)屬性集合個(gè)數(shù)以及xi,xj的第l屬性值;wi為聚類(lèi)屬性分辨能力,如式(10)所示: (10) 式中:|U|與e分別為數(shù)據(jù)對(duì)象的總數(shù)與劃分塊數(shù)。 區(qū)間塊{x1,x2,…,xe}由屬性l值分割獲取,利用xi進(jìn)行區(qū)間分割獲取的數(shù)據(jù)對(duì)象個(gè)數(shù)為|xi|,h為數(shù)據(jù)對(duì)象數(shù),對(duì)象平均相似度如下: (11) 在論域里分割h個(gè)粒子得到{X1,X2,…,Xh},第i個(gè)區(qū)間中的數(shù)據(jù)對(duì)象數(shù)目為|Xi|,Xi粒子的密度如下: (12) 該粒子h的平均密度為 (13) 設(shè)置有H個(gè)數(shù)據(jù)對(duì)象在第i個(gè)粒子中,用xi1,xi2,…,xin表示,粒子中心點(diǎn)Di用下式描述: (14) 粒計(jì)算的運(yùn)算過(guò)程如下。 (1) 線損數(shù)據(jù)對(duì)象間相似度及平均相似度,由式(9)和式(11)運(yùn)算。 (3) 獲取各對(duì)象類(lèi)似對(duì)象序號(hào)的過(guò)程,即為依據(jù)M(i,j)處理各對(duì)象獲取其粗粒集G的過(guò)程,粒子即為對(duì)象及其所有類(lèi)似對(duì)象構(gòu)成的集合。 (4) 各個(gè)粒子的密度以及G的平均密度由式(12)和式(13)描述,有效粒子集I包含gd(xi)≥GD的有效粒子。 (5)I內(nèi)各個(gè)粒子的中心根據(jù)式(14)運(yùn)算,在X中錄入兩個(gè)隨意粒子間的歐式距離。 (6) 首個(gè)聚類(lèi)中心點(diǎn)o1是I內(nèi)最大密度粒子Q1的中心點(diǎn),第二個(gè)聚類(lèi)中心點(diǎn)o2是與Q1最遠(yuǎn)的密度最大粒子Q2的中心點(diǎn),由X對(duì)其余粒子的中心點(diǎn)到o1,o2,…,on的距離進(jìn)行運(yùn)算,得di1,di2,…,din,取其di最小值,求di最大值,粒子Qi的中心是oi,同理粒子Qk的中心是ok。 以簇的數(shù)量K以及n個(gè)對(duì)象的數(shù)據(jù)集為輸入,得到K個(gè)簇類(lèi)中心和聚類(lèi)準(zhǔn)確度。粒計(jì)算算法模型如下。 (1) 記錄中心點(diǎn)對(duì)應(yīng)的粒子是Q1,Q2,…,Qk,且K個(gè)簇類(lèi)中心o1,o2,…,ok通過(guò)粒計(jì)算改進(jìn)的K-Medoids聚類(lèi)算法被初始化。 (2) 為距離數(shù)據(jù)對(duì)象最近的中心點(diǎn)的簇分配其余數(shù)據(jù)對(duì)象,并將該簇記作w,對(duì)S(w)進(jìn)行運(yùn)算。 (3) 分別選取在Q1,Q2,…,Qk里的非代表對(duì)象orandom,將oi用orandom替換,再更新各個(gè)簇內(nèi)中心點(diǎn)并重新聚類(lèi),將新的簇記作w′,運(yùn)算S(w′)。 (4) 運(yùn)算ΔS=S(w′)-S(w),如果ΔS>0,則oi、w被orandom、w′替換,反之保持不變。 (5) 反復(fù)運(yùn)算步驟(3)和步驟(4),當(dāng)簇集合中對(duì)象保持穩(wěn)定時(shí),運(yùn)算結(jié)束。 以某地區(qū)689個(gè)分布式光伏臺(tái)區(qū)的線損數(shù)據(jù)為試驗(yàn)對(duì)象,驗(yàn)證本文所提算法的有效性。本文采用LOF算法檢測(cè)和去除分布式線損異常數(shù)據(jù),統(tǒng)計(jì)LOF算法不同取值下的分布式臺(tái)區(qū)線損數(shù)據(jù)分布圖,結(jié)果如圖2和圖3所示。 圖2 LOF=0.4時(shí)分布式臺(tái)區(qū)線損數(shù)據(jù)分布圖 圖3 LOF=1時(shí)分布式臺(tái)區(qū)線損數(shù)據(jù)分布圖 圖2和圖3中,圓圈代表分布式光伏臺(tái)區(qū)線損正常數(shù)據(jù),星號(hào)代表分布式光伏異常數(shù)據(jù)。當(dāng)LOF值為0.4時(shí),分布式光伏線損的異常數(shù)據(jù)數(shù)量很多,當(dāng)LOF值為1時(shí),分布式光伏線損的異常數(shù)據(jù)大幅減少。由此說(shuō)明,LOF值越大對(duì)由孤立點(diǎn)導(dǎo)致的分布式光伏臺(tái)區(qū)暫態(tài)異常數(shù)據(jù)的挑選和去除效果越好,能夠更精準(zhǔn)地衡量數(shù)據(jù)的異常程度,為應(yīng)用K-Medoids算法進(jìn)行分布式光伏臺(tái)區(qū)線損異常數(shù)據(jù)感知提供更好數(shù)據(jù)基礎(chǔ)。 利用K-Medoids算法對(duì)分布式光伏臺(tái)區(qū)線損率進(jìn)行聚類(lèi),設(shè)置歐氏距離的閾值為9。本文從689個(gè)分布式光伏臺(tái)區(qū)中,選取4個(gè)光伏臺(tái)區(qū)15天內(nèi)的每日線損率,如表1所示。 表1 4個(gè)分布式光伏臺(tái)區(qū)每日線損率 % 將以上分布式臺(tái)區(qū)線損率,分別通過(guò)K-Medoids聚類(lèi)算法、本文算法進(jìn)行線損異常感知,得到如表2所示的統(tǒng)計(jì)結(jié)果。 表2 線損數(shù)據(jù)感知結(jié)果對(duì)比 由表2可知,K-Medoids算法將正常光伏臺(tái)區(qū)數(shù)據(jù)判定為異常光伏臺(tái)區(qū),存在判定錯(cuò)誤的缺點(diǎn)。本文所提算法有效結(jié)合了LOF算法和K-Medoids聚類(lèi)算法,合理地避免了由孤立點(diǎn)導(dǎo)致的分布式光伏臺(tái)區(qū)出現(xiàn)暫態(tài)異常數(shù)據(jù)對(duì)異常感知結(jié)果的影響,可以準(zhǔn)確感知分布式光伏臺(tái)區(qū)線損異常。 通過(guò)本文所提算法進(jìn)行分布式光伏臺(tái)區(qū)的異常線損感知。先由LOF算法對(duì)分布式光伏每日線損率的數(shù)據(jù)進(jìn)行選擇,如圖4(a)所示;再由K-Medoids聚類(lèi)算法聚類(lèi)處理后的線損數(shù)據(jù),如圖4(b)所示,最終完成分布式光伏臺(tái)區(qū)線損異常感知。 圖4 異常線損感知效果圖 圖4(a)中分布式光伏臺(tái)區(qū)線損的正常數(shù)據(jù)、高損數(shù)據(jù)、負(fù)損數(shù)據(jù)、正常線損數(shù)據(jù)每個(gè)類(lèi)別比較分散,無(wú)法準(zhǔn)確對(duì)數(shù)據(jù)進(jìn)行感知,而在圖4(b)中能清楚看到,每個(gè)數(shù)據(jù)都被聚類(lèi)在各個(gè)數(shù)據(jù)的類(lèi)別里,說(shuō)明本文所提算法可有效、準(zhǔn)確地解決分布式光伏臺(tái)區(qū)線損異常感知的問(wèn)題。 本文所提算法將LOF與K-Medoids算法結(jié)合,根據(jù)分布式光伏臺(tái)區(qū)線損異常的情況,對(duì)光伏臺(tái)區(qū)數(shù)據(jù)進(jìn)行采樣、篩選、識(shí)別,將異常數(shù)據(jù)進(jìn)行聚類(lèi),保證算法能夠準(zhǔn)確地感知分布式光伏臺(tái)區(qū)異常數(shù)據(jù),并將分布式光伏的異常情況進(jìn)行聚類(lèi)。創(chuàng)新性地引入粒度計(jì)算優(yōu)化K-Medoids算法,在全部可能粒度集內(nèi)得出最佳粒度值,以此達(dá)到K-Medoids算法的最佳數(shù)據(jù)聚類(lèi)效果,確保分布式光伏臺(tái)區(qū)異常數(shù)據(jù)感知的精準(zhǔn)性、可靠性。1.2 異常數(shù)據(jù)挑選和去除
1.3 分布式光伏臺(tái)區(qū)線損異常感知流程
1.4 引入粒度計(jì)算的K-Medoids算法優(yōu)化
2 試驗(yàn)分析
3 結(jié) 語(yǔ)