山西東盟輸配電科技有限公司 李 波
KNN 算法具有易于理解、便于應(yīng)用等特點(diǎn),在故障預(yù)測領(lǐng)域取得廣泛的應(yīng)用。但對于輸變電線路的大規(guī)模數(shù)據(jù),傳統(tǒng)的KNN 算法存在預(yù)測結(jié)果不準(zhǔn)、效率偏低等不足之處,因此亟須在既有KNN 算法的基礎(chǔ)上探索新的預(yù)測方法。本文提出基于模糊KNN 大數(shù)據(jù)分析算法和基于Spark 框架的ISODATA,旨在采用改進(jìn)后的KNN 算法高效預(yù)測輸變電線路故障,獲得準(zhǔn)確的預(yù)測結(jié)果,給輸變電線路的日常管控提供科學(xué)依據(jù)。
KNN 算法在輸變電線路故障預(yù)測中的應(yīng)用效果較好,主要原因在于此算法依靠周圍有限的鄰近樣本確定所屬類別,而非通過判別類別界限的方式實(shí)現(xiàn),即便存在較多重疊和界限交叉的數(shù)據(jù),該算法也仍然能夠取得較好的應(yīng)用效果。但KNN 算法也存在弊端,例如只計(jì)算最鄰近樣本,限制了其對類別界限模糊數(shù)據(jù)的判斷,基于數(shù)據(jù)的預(yù)測結(jié)果缺乏可靠性。模糊理論可解決KNN 算法的弊端,依靠模糊規(guī)則推斷輸入樣本的故障類型,通過隸屬度函數(shù)摸索數(shù)據(jù)的規(guī)律。模糊理論采用的是非線性映射模型,其邏輯與人工神經(jīng)網(wǎng)絡(luò)相似,特殊之處在于對不同類型數(shù)據(jù)的利用水平更高,在輸變電線路故障預(yù)測中具有突出的應(yīng)用價(jià)值。因此,本文提出KNN 算法和模糊理論相結(jié)合的輸變電線路故障預(yù)測方案,引入模糊理論解決KNN 算法的不足之處,確保即便存在類別界限不明顯的數(shù)據(jù)時(shí)也依然可以有效預(yù)測輸變電線路故障,提升KNN 算法在故障預(yù)測領(lǐng)域的適用性。
按照數(shù)據(jù)采集、數(shù)據(jù)訓(xùn)練、數(shù)據(jù)分析、故障預(yù)測的基本流程,分別構(gòu)建相應(yīng)的功能模塊[1]。其中,數(shù)據(jù)采集模塊涵蓋仿真結(jié)果的三相電壓及電流信號(hào)模型、電網(wǎng)實(shí)時(shí)數(shù)據(jù)和歷史數(shù)據(jù),向包含故障類型的集群中映射輸入數(shù)據(jù)矢量。由于輸變電線路故障案例有限,可提供的有用數(shù)據(jù)難以滿足大批量的數(shù)據(jù)使用要求,因此部分故障和非故障的數(shù)據(jù)需要依靠仿真軟件獲取,將此部分?jǐn)?shù)據(jù)和已記錄的數(shù)據(jù)整合至一體,進(jìn)行訓(xùn)練,再用模糊KNN 分類器對整合好的數(shù)據(jù)和數(shù)據(jù)原型進(jìn)行故障分析。
2.2.1 數(shù)據(jù)訓(xùn)練
第一,ISODATA 算法。ISODATA 算法是典型的非監(jiān)督學(xué)習(xí)的聚類分析方法,又稱為迭代自組織數(shù)據(jù)分析法。作為一種以K-means 算法為原型經(jīng)改進(jìn)后產(chǎn)生的新算法,其特點(diǎn)在于增加“分裂”和“合并”操作。根據(jù)最小聚類樣本數(shù)、聚類中心等已經(jīng)設(shè)定好的參數(shù)進(jìn)行迭代處理,最終獲得較為可靠的結(jié)果。
第二,分布式ISODATA 算法?;赟park 的RDD 模型及API 設(shè)計(jì)分布式ISODATA 算法,主要將分布式ISODATA 算法的運(yùn)行流程分為兩步:一是分配、過濾、計(jì)算樣本至中心的距離等數(shù)據(jù);二是匯總各項(xiàng)計(jì)算結(jié)果,判斷是否需分裂、合并,按流程執(zhí)行操作。
2.2.2 數(shù)據(jù)分析
第一,模糊KNN 算法。通過隸屬度函數(shù)描述各因子的模糊界限,采用隸屬度函數(shù)復(fù)合運(yùn)算輸變電線路測試數(shù)據(jù),進(jìn)而預(yù)測故障[2]。相比單一的KNN 算法,結(jié)合模糊理論的KNN 算法能夠有效應(yīng)對類別界限不明顯的問題,基本應(yīng)用原理是:訓(xùn)練后產(chǎn)生聚類中心W,計(jì)算待分類樣本X與之的歐式距離,從各類樣本中篩選出與待分類樣本距離最小的樣本,數(shù)量記為k個(gè),根據(jù)隸屬度函數(shù)判斷模數(shù)樣本xi的類別,用隸屬度函數(shù)uc(xi)表示,如下:
式中,uc(wk)為隸屬度函數(shù),將聚類中心的半徑ρk作為聚類中心wk的uc(wk)的取值,聚類zk中各樣本的類別標(biāo)簽c則為聚類中心的類別標(biāo)簽。uc(wk)的表達(dá)式如下:
式(1)中,分母部分為測試模式樣本k個(gè),則:求和,確定最大隸屬度uc(wk)。
樣本模式xi的隸屬度函數(shù)如下:
不同于單一的KNN 算法,模糊KNN 算法在運(yùn)行中能夠模糊化處理訓(xùn)練后的聚類中心特征數(shù)據(jù)W,結(jié)合公式(2),計(jì)算聚類中心W 隸屬于某類別c的隸屬度,再設(shè)定大小為k的優(yōu)先級隊(duì)列,將計(jì)算結(jié)果和測試樣本xi的距離存入其中。遍歷完訓(xùn)練集群中心W 后,采用隸屬度函數(shù)uc(xi)計(jì)算測試數(shù)據(jù)xi隸屬于類別標(biāo)簽c的隸屬度,在標(biāo)簽的選取方式上,將隸屬度最大聚類集群的類別標(biāo)簽作為xi的類別標(biāo)簽。
第二,模糊分布式KNN 算法。基于park 的RDD 模型和API 設(shè)計(jì)模糊分布式KNN 算法,從ISODATA 應(yīng)用中產(chǎn)生的聚類中心點(diǎn)選取訓(xùn)練集合,供模糊KNN 算法使用,數(shù)據(jù)分發(fā)至各節(jié)點(diǎn)采用的是廣播變量的方式,分類計(jì)算采用RDD 模型的算子進(jìn)行。
本文選取輸變電線路中較為典型的10種故障做預(yù)測分析,具體為兩相短路故障(ABG,ACG,BCG)、三相短路故障(ABC)、單相短路接地故障(AG,BG,CG)、兩相短路接地故障(AB,AC,BC)。實(shí)驗(yàn)中考慮到的關(guān)鍵信息包含:輸變電線路故障前后的三相電壓及三相電流突變量、故障點(diǎn)與線路的位置信息、過渡電阻等。仿真信息見表1,分別進(jìn)行仿真,評估分布式KNN 算法在輸變電線路故障預(yù)測中的應(yīng)用效果。
表1 仿真信息
本次實(shí)驗(yàn)選取9條類型各異的輸變電線路,過渡電阻考慮的是1Ω、3Ω、9Ω、15Ω 四種情況,訓(xùn)練數(shù)據(jù)252條,數(shù)據(jù)總量為252×9=2268條。采用隨機(jī)抽取的方法從總樣本中選擇去標(biāo)簽的1800條數(shù)據(jù),將其作為測試樣本進(jìn)行故障預(yù)測,并與常規(guī)的KNN 算法預(yù)測結(jié)果對比,判斷各自的應(yīng)用效果。故障預(yù)測效率對比方面,考慮單機(jī)版模糊KNN 算法和分布式模糊KNN 算法兩類,用400萬條數(shù)據(jù)進(jìn)行測試,判斷各自的預(yù)測效率,評價(jià)各算法的應(yīng)用效果。
3.2.1 數(shù)據(jù)訓(xùn)練結(jié)果
對比分析Java 單機(jī)和Scala 并行實(shí)現(xiàn)的ISODATA 聚類算法可知,兩者在少量訓(xùn)練數(shù)據(jù)時(shí)的結(jié)果一致。根據(jù)該規(guī)律,進(jìn)行了降維處理,以便分析,繪制出如圖1所示的經(jīng)過故障訓(xùn)練的聚類效果,其中橫軸為集群中的樣本個(gè)數(shù),縱軸為各種故障類型。
圖1 ISODATA 算法故障聚類效果
3.2.2 數(shù)據(jù)訓(xùn)練時(shí)間
以迭代100次為例,分布式ISODATA、單機(jī)版ISODATA 對3600000條訓(xùn)練數(shù)據(jù)的訓(xùn)練耗時(shí)分別為110823ms、211283ms。相比之下,分布式ISODATA 聚類算法的計(jì)算效率較高,在一定程度上緩解了數(shù)據(jù)訓(xùn)練耗時(shí)長的問題,給高效判斷輸變電線路故障提供了有利條件。
3.2.3 實(shí)驗(yàn)結(jié)果的綜合評價(jià)
以常規(guī)的KNN 算法和分布式模糊KNN 算法為例,經(jīng)過實(shí)驗(yàn)后確定各自的故障預(yù)測結(jié)果,故障預(yù)測時(shí)間如圖2所示,故障預(yù)測準(zhǔn)確率如圖3所示。對分布式模糊KNN 算法和單機(jī)版各自的結(jié)果進(jìn)行對比發(fā)現(xiàn),兩者保持一致。K 值取6,在4000樣本時(shí),分布式模糊KNN 算法、單機(jī)版模糊KNN 算法的運(yùn)行耗時(shí)分別為86512ms、132839ms,可以直觀地發(fā)現(xiàn)基于Spark 的模糊KNN 算法的運(yùn)行效率更高,實(shí)驗(yàn)結(jié)果驗(yàn)證了本文提及的分布式模糊KNN 算法在輸變電線路故障預(yù)測中具有高效性的優(yōu)勢。
圖2 故障預(yù)測時(shí)間對比
圖3 故障預(yù)測準(zhǔn)確率對比
根據(jù)圖2和圖3的對比分析結(jié)果可知,分布式模糊KNN 算法在故障預(yù)測效率和結(jié)果準(zhǔn)確性兩方面的應(yīng)用效果均優(yōu)于常規(guī)的KNN 算法,同時(shí)還可提供故障距離參數(shù),為判斷輸變電線路故障發(fā)生部位提供重要的參考信息。
總體來看,分布式模糊KNN 算法突破了常規(guī)KNN 算法在輸變電線路故障預(yù)測中的局限性,引入模糊理論及其他人工智能技術(shù)的新型KNN算法在輸變電線路故障預(yù)測領(lǐng)域的綜合應(yīng)用效果較好。
綜上所述,經(jīng)過對比分析可知,相比單機(jī)版的算法,分布式模糊KNN 算法具有提高預(yù)測結(jié)果的準(zhǔn)確性及提高預(yù)測效率的優(yōu)勢,并構(gòu)建輸變電線路故障預(yù)測模型,將其用于故障預(yù)測,以期全方位地判斷輸變電線路運(yùn)行情況,發(fā)現(xiàn)故障后快速處理。分布式模糊KNN 算法在輸變電線路故障預(yù)測領(lǐng)域仍有較大的進(jìn)步空間,在后續(xù)的研究中,應(yīng)進(jìn)一步優(yōu)化分布式模糊KNN 算法的應(yīng)用策略,例如在ISODATA 動(dòng)態(tài)partition 分配、與主流機(jī)器學(xué)習(xí)算法相結(jié)合等方面尋找突破口,持續(xù)提高輸變電線路故障預(yù)測效率。