張永旺, 歐振國(guó), 鄧珊, 劉海斌, 舒曄, 黃博偉, 彭強(qiáng)
(廣東電網(wǎng)有限責(zé)任公司計(jì)量中心,廣東 廣州 510710)
在現(xiàn)有的電力計(jì)量流水線裝置檢測(cè)研究中,文獻(xiàn)[1]建立了一種3D動(dòng)態(tài)感知監(jiān)控系統(tǒng),并對(duì)3D場(chǎng)景進(jìn)行了優(yōu)化。針對(duì)同步性和處理壓力問(wèn)題,采用了過(guò)程平滑處理和數(shù)據(jù)容錯(cuò)機(jī)制,提出了秒級(jí)生產(chǎn)數(shù)據(jù)同步與分流式處理技術(shù)。通過(guò)3D建模與監(jiān)控,工作人員能夠隨時(shí)掌握流水線的情況,但是人工檢測(cè),難免會(huì)存在一些遺漏。文獻(xiàn)[2]針對(duì)電能表流水線故障檢測(cè),結(jié)合模糊推理提出了一種故障診斷專(zhuān)家系統(tǒng),并對(duì)系統(tǒng)的結(jié)構(gòu)進(jìn)行了設(shè)計(jì)。該方法雖然進(jìn)一步驗(yàn)證診斷結(jié)果,能夠提高故障診斷的準(zhǔn)確度,但是由于故障的類(lèi)型較多和程度不同,無(wú)法了解到故障的具體的形式。
基于以上內(nèi)容,本文提出了一種基于局部異常因子算法(LOF)的表位在線和3D建模相互結(jié)合的檢測(cè)方法。3D建模完成后,對(duì)流水的試驗(yàn)數(shù)據(jù)進(jìn)行采集和特征提取。采用局部異常因子算法(LOF)進(jìn)行檢測(cè),根據(jù)檢定的結(jié)果通過(guò)3D建模來(lái)判斷檢定裝置的問(wèn)題。
本文設(shè)計(jì)出一個(gè)3D動(dòng)態(tài)感知監(jiān)控系統(tǒng)[3],其基本架構(gòu)如圖1所示。
圖1 3D動(dòng)態(tài)感知監(jiān)控系統(tǒng)架構(gòu)
系統(tǒng)可以分成四層:數(shù)據(jù)來(lái)源層、數(shù)據(jù)傳輸層、服務(wù)層和展示層。
電力計(jì)量檢定車(chē)間一般包含倉(cāng)儲(chǔ)系統(tǒng)、封印系統(tǒng)、互感器檢定系統(tǒng)和電能表檢定系統(tǒng)。數(shù)據(jù)源層分為調(diào)度控制系統(tǒng)和設(shè)備系統(tǒng),數(shù)據(jù)的類(lèi)型一般分為調(diào)取數(shù)據(jù)和設(shè)備數(shù)據(jù)[4]。數(shù)據(jù)的采集一般都是通過(guò)傳感器和圖像采集器來(lái)完成。設(shè)備的數(shù)據(jù)分為運(yùn)行參數(shù)數(shù)據(jù)和運(yùn)行過(guò)程數(shù)據(jù),運(yùn)行參數(shù)數(shù)據(jù)一般都是通過(guò)設(shè)備直接傳輸?shù)街鳈C(jī)中,運(yùn)行過(guò)程數(shù)據(jù)主要為設(shè)備的運(yùn)行圖像,通過(guò)圖像采集來(lái)采集圖像傳輸?shù)街鳈C(jī)中[5]。
數(shù)據(jù)傳輸層設(shè)置了兩個(gè)通信協(xié)議:數(shù)據(jù)傳輸和信息交互,其中:TCP和MQ主要負(fù)責(zé)數(shù)據(jù)的傳輸;Web Service負(fù)責(zé)系統(tǒng)之間服務(wù)器的信息交互。數(shù)據(jù)傳輸層主要是數(shù)據(jù)傳輸?shù)慕涌?,即?shù)據(jù)傳輸?shù)墓ぞ摺T跀?shù)據(jù)傳輸過(guò)程中會(huì)產(chǎn)生一些過(guò)程數(shù)據(jù),這些過(guò)程數(shù)據(jù)的也會(huì)被采集傳輸?shù)街鳈C(jī)中[6]。
服務(wù)層主要是根據(jù)這些數(shù)據(jù)通過(guò)計(jì)算機(jī)建模仿真還原電力計(jì)量檢定過(guò)程。首先需要對(duì)場(chǎng)景和其他的配置進(jìn)行緩存,然后結(jié)合傳輸來(lái)的實(shí)時(shí)數(shù)據(jù)對(duì)一些模型進(jìn)行建模并存入模型庫(kù),通過(guò)控制顯示來(lái)實(shí)現(xiàn)檢定過(guò)程的還原。建模采用分層設(shè)計(jì)理念,將建模的過(guò)程分為實(shí)物層、外觀服務(wù)層、動(dòng)作服務(wù)層、仿真算法層和場(chǎng)景搭建層[7-8]。
展示層是3D建模完成后整個(gè)電力計(jì)量檢定過(guò)程的展示,通過(guò)與實(shí)際的過(guò)程進(jìn)行對(duì)比,不斷地優(yōu)化模型組件,來(lái)減小誤差。通過(guò)3D建模來(lái)還原電力計(jì)量檢定過(guò)程,使得工作人員能夠準(zhǔn)確無(wú)誤地觀察整個(gè)過(guò)程,查找故障點(diǎn)。
假設(shè)試驗(yàn)數(shù)據(jù)集為X={x1,x2,…,xn},n為數(shù)據(jù)的大小。對(duì)于其中的任意一個(gè)樣本數(shù)據(jù)點(diǎn)xi∈X,都是形如M=(m1,m2,…,md)的多維數(shù)據(jù),其中d為數(shù)據(jù)的維度。
LOF算法的數(shù)據(jù)處理思想為:對(duì)于數(shù)據(jù)中一個(gè)給定點(diǎn)p,首先計(jì)算其與其他數(shù)據(jù)點(diǎn)之間的歐氏距離,找到距離p點(diǎn)的最近的k個(gè)點(diǎn),進(jìn)而形成點(diǎn)p的k鄰域Nk(p);然后通過(guò)k鄰域中的點(diǎn)來(lái)計(jì)算點(diǎn)p的局部異常因子LOFk(p),根據(jù)LOFk(p)的大小來(lái)判斷異常程度。
對(duì)于集合X中的給定的點(diǎn)p,可以將其他任意一個(gè)點(diǎn)o與點(diǎn)p的歐氏距離記為d(p,o),將距離點(diǎn)p第k近的點(diǎn)與p點(diǎn)的歐氏距離記為dk(p),則點(diǎn)o到點(diǎn)p的第k可達(dá)距離reach_distk(p,o)為:
reach_distk(p,o)=max{dk(o),d(p,o)}
(1)
根據(jù)式(1)可知,點(diǎn)o到點(diǎn)p的第k可達(dá)距離為點(diǎn)o的第k距離和兩點(diǎn)實(shí)際距離中的較大值。當(dāng)點(diǎn)p∈Nk(o),點(diǎn)o到點(diǎn)p的第k可達(dá)距離為dk(o);當(dāng)點(diǎn)p?Nk(o),點(diǎn)o到點(diǎn)p的第k可達(dá)距離為兩點(diǎn)之間的歐氏距離d(p,o)。
根據(jù)可達(dá)距離的概念,提出局部可達(dá)密度lrdk(p)。對(duì)于點(diǎn)p,其局部可達(dá)密度的定義為:
(2)
式中:|Nk(p)|為第k鄰域包含的點(diǎn)的數(shù)量。從式(2)可以得到Nk(p)中的點(diǎn)到點(diǎn)p的平均可達(dá)距離的倒數(shù)。
通過(guò)計(jì)算集合X中所有點(diǎn)的局部可達(dá)密度,與點(diǎn)各自的k鄰域中的點(diǎn)進(jìn)行比較,就可以得到局部異常因子LOFk(p)。因此點(diǎn)p的局部異常因子的計(jì)算公式為:
(3)
通過(guò)式(3)可以得到Nk(p)中的點(diǎn)的局部可達(dá)密度與點(diǎn)p的局部可達(dá)密度的比值的平均值。當(dāng)LOF的數(shù)值越靠近1,表明點(diǎn)p與Nk(p)中的點(diǎn)的密度越接近,說(shuō)明點(diǎn)p不是離群點(diǎn);LOF的數(shù)值越大,則表明點(diǎn)p的密度小于鄰域Nk(p)中的點(diǎn)的密度的平均水平,表明點(diǎn)p為離群點(diǎn)的可能性越大。
基于局部異常因子的檢定流水線檢測(cè)方法步驟為:
(1) 提取數(shù)據(jù)特征向量:選取某一條生產(chǎn)線中的一個(gè)檢定單元作為數(shù)據(jù)來(lái)源,從其所有的試驗(yàn)數(shù)據(jù)中抽取部分作為試驗(yàn)數(shù)據(jù)集X,一共有60個(gè)表位。計(jì)算每個(gè)表位10項(xiàng)試驗(yàn)數(shù)據(jù)的最大值、最小值、期望、方差、偏度和峰度,即形成了60個(gè)特征向量。對(duì)于一個(gè)隨機(jī)的數(shù)據(jù)樣本Xi,其特征向量Ti包含了60個(gè)特征值。
(4)
式中:Max為最大值;Min為最小值;E為期望;D為方差;Skew為偏度;Kurt為峰度。
(2) 特征縮放處理:由于數(shù)據(jù)樣本的數(shù)量較多,會(huì)導(dǎo)致特征值的尺度范圍較大,因此需要將所有的特征值進(jìn)行縮放處理到一個(gè)尺度,從而降低了較大尺度數(shù)據(jù)對(duì)預(yù)測(cè)結(jié)果的影響。特征縮放采用的是標(biāo)準(zhǔn)化特征縮放處理方法,其轉(zhuǎn)換公式為:
(5)
式中:x為待處理的數(shù)據(jù);u為待處理數(shù)據(jù)的期望;S為待處理數(shù)據(jù)的方差;z為經(jīng)過(guò)處理后得到的數(shù)據(jù)。
(3) 數(shù)據(jù)分析:采用LOF算法對(duì)分析數(shù)據(jù),首先調(diào)整參數(shù)k,對(duì)數(shù)據(jù)集X采用算法進(jìn)行分析,通過(guò)式(1)~式(3)計(jì)算得到所有樣本數(shù)據(jù)中的最大局部異常因子數(shù)值,即max{LOFk(p)|p∈X,k_min≤k≤k_max},其中k_min和k_max分別為k取值的最小值和最大值。k值的大小會(huì)影響到LOF數(shù)值的大小。為了保證較為優(yōu)秀的異常檢測(cè)效果,提出一種k值的選取方法:根據(jù)選取的數(shù)據(jù)集,計(jì)算在不同k值情況的對(duì)應(yīng)的LOF數(shù)值,可以得到k值與LOF數(shù)值之間的關(guān)系,如圖2所示。
根據(jù)圖2可以看出LOF值隨k的變化是不斷變化的:當(dāng)k值較小時(shí),LOF值的變動(dòng)范圍較大,此時(shí)預(yù)測(cè)的準(zhǔn)確率會(huì)偏低;當(dāng)k值接近樣本數(shù)量時(shí),LOF數(shù)值大約為1,是因?yàn)閗鄰域的范圍增加后,異常點(diǎn)位置和正常點(diǎn)位置會(huì)在同一個(gè)k鄰域中,此時(shí)算法會(huì)將異常數(shù)據(jù)判斷為正常數(shù)據(jù),從而導(dǎo)致預(yù)測(cè)結(jié)果不準(zhǔn)確。因此本文中k值的選取的范圍是10≤k≤50。在確定最終的k值時(shí),通過(guò)計(jì)算每個(gè)k值下的LOF數(shù)值,選取其中最大LOF值對(duì)應(yīng)的k值即可。
(4) 判定異常LOF數(shù)值:LOF數(shù)值的異常判定采用的是格拉布斯(Grubbs)準(zhǔn)則,并對(duì)異常數(shù)值的表位進(jìn)行標(biāo)記。對(duì)于任意一個(gè)數(shù)據(jù)集,因?yàn)榇蟛糠直砦坏奶卣骰疽恢?,因此LOF數(shù)值會(huì)接近1,數(shù)量較少的異常表位其LOF數(shù)值會(huì)大于1。LOF數(shù)值為單側(cè)分布,而格拉布斯準(zhǔn)則對(duì)單側(cè)分布的數(shù)據(jù)處理效果不佳,因此需要進(jìn)行序列擴(kuò)展。本文將LOF以x=1為對(duì)稱(chēng)軸進(jìn)行擴(kuò)展為雙側(cè)分布。
(6)
圖3 檢測(cè)方法流程圖
將求出的Gn與格拉布斯臨界值G(α,n)進(jìn)行比較,如果Gn>G(α,n),則說(shuō)明其為異常值,并將其標(biāo)記。G(α,n)的大小與置信度α和樣本數(shù)量n有關(guān),當(dāng)檢測(cè)到xn為異常值時(shí),將其從原來(lái)的序列中剔除,得到一個(gè)新的序列{x1,x2,x3,…,xn-1},然后重復(fù)上述的檢測(cè)步驟,直到所有的異常值都被檢測(cè)出來(lái)。
基于以上內(nèi)容,可以得到本文中的電能計(jì)量檢定流水線異常檢測(cè)方法的流程,如圖3所示。
雖然上述的異常檢測(cè)算法能夠完全替代人工檢查,但是算法難免會(huì)出現(xiàn)一些失誤。除此之外智能電能表屬于精密儀器,需最大限度地保證檢定流水線的運(yùn)行正常,因此采用3D建模和人工對(duì)算法的結(jié)果進(jìn)行驗(yàn)證,并查找算法遺漏的問(wèn)題點(diǎn)。
采集某電網(wǎng)公司計(jì)量中心的某條智能電能表檢定流水線的運(yùn)行數(shù)據(jù)作為樣本數(shù)據(jù),數(shù)據(jù)包括檢定數(shù)據(jù)和設(shè)備的外形尺寸運(yùn)行狀況等數(shù)據(jù),采集時(shí)間為2019年6月1日—6月15日,然后在實(shí)驗(yàn)室內(nèi)對(duì)上述檢測(cè)方法進(jìn)行仿真和驗(yàn)證。使用的計(jì)算機(jī)配置CPU為Inter Core i7-5700,運(yùn)行內(nèi)存16G 3 200 MHz,硬盤(pán)大小為512G。
對(duì)采集的數(shù)據(jù)進(jìn)行整理,試驗(yàn)誤差數(shù)據(jù)一共有343 285條,該檢定流水線完成對(duì)34 322個(gè)智能單相電能表的檢測(cè)。根據(jù)上述的采集到數(shù)據(jù)進(jìn)行特征提取,并根據(jù)特征建立相應(yīng)的數(shù)據(jù)集,然后采用LOF算法對(duì)數(shù)據(jù)進(jìn)行分析,成功找到異常表位并進(jìn)行標(biāo)記。由于篇幅的原因,選取了異常表位最多的15號(hào)檢測(cè)單元來(lái)表現(xiàn)算法的性能,采用LOF算法計(jì)算的15號(hào)檢測(cè)單元的60個(gè)表位的LOF數(shù)值如表1所示。
表1 15號(hào)檢測(cè)單元的LOF數(shù)值
根據(jù)表1中的數(shù)據(jù),15號(hào)檢定單元中一共有6個(gè)表位的LOF值異常,分別是11、24、39、46、51和55號(hào)表位,在上表中對(duì)表位號(hào)進(jìn)行了加粗。然后選取置信度α=0.05,采用格拉布斯準(zhǔn)則對(duì)上述6個(gè)異常表位的LOF值進(jìn)行判定,判定的結(jié)果如表2所示。
表2 LOF值判定結(jié)果
根據(jù)表2的數(shù)據(jù)可知:15號(hào)檢定單元中6個(gè)LOF數(shù)值最大的表位被判定為異常表位;51號(hào)表位為G值的臨界值,剩余表位則為正常表位。將上述表位產(chǎn)生的試驗(yàn)數(shù)據(jù)進(jìn)行驗(yàn)證,發(fā)現(xiàn)數(shù)據(jù)全部正常,說(shuō)明異常表位對(duì)電能表的檢測(cè)會(huì)存在一些漏判現(xiàn)象,主要原因是一些機(jī)械裝備的磨損或者腐蝕引起的異常。
將整條生產(chǎn)線進(jìn)行3D建模,人工校準(zhǔn)每個(gè)模型,建模完成后,根據(jù)模型采用單獨(dú)的人工檢測(cè)、單獨(dú)的LOF算法檢測(cè)和兩者結(jié)合的檢測(cè)方法對(duì)生產(chǎn)線的所有表位進(jìn)行異常檢測(cè),記錄整理數(shù)據(jù),可以得到表3的檢測(cè)數(shù)據(jù)。
表3 檢測(cè)對(duì)比數(shù)據(jù)
圖4 三種方法的準(zhǔn)確率對(duì)比
根據(jù)表3數(shù)據(jù)可知:在檢測(cè)任務(wù)相同的情況下,單獨(dú)的人工檢測(cè)方法的檢測(cè)用時(shí)為6 000 s,檢測(cè)出的異常表位24個(gè);單獨(dú)的LOF算法檢測(cè)用時(shí)為2 400 s,檢測(cè)出的異常表位為58個(gè);兩者結(jié)合的檢測(cè)方法用時(shí)為3 000 s,檢測(cè)出的異常表位數(shù)量為63個(gè)。兩者結(jié)合的檢測(cè)方法雖然在檢測(cè)用時(shí)上相比單獨(dú)的LOF算法稍微具有劣勢(shì),但是在檢測(cè)的準(zhǔn)確度上相比單獨(dú)的LOF算法更準(zhǔn)確。
一次檢測(cè)結(jié)果并不能反映出檢測(cè)方法的好壞,將上述步驟重復(fù)十次,記錄每次的檢測(cè)結(jié)果,計(jì)算每次的準(zhǔn)確率,可以得到圖4的準(zhǔn)確率對(duì)比圖。
根據(jù)圖4可以看出:兩者結(jié)合的檢測(cè)方法的準(zhǔn)確度最高,除此之外還具有可以查找異常的具體原因。主要原因是在LOF算法檢測(cè)完成后,人工根據(jù)3D建模對(duì)結(jié)果進(jìn)行校核以及查漏,從而進(jìn)一步提高了檢測(cè)的準(zhǔn)確率。
本文根據(jù)現(xiàn)有電力計(jì)量檢測(cè)數(shù)字化車(chē)間現(xiàn)狀,結(jié)合3D建模和計(jì)算機(jī)仿真技術(shù),對(duì)檢定流水線的異常進(jìn)行檢測(cè),通過(guò)試驗(yàn)和仿真驗(yàn)證了檢測(cè)方法的有效性,在電力計(jì)量檢定領(lǐng)域具有良好的應(yīng)用前景,但是由于試驗(yàn)不充足,可能還會(huì)存在一些問(wèn)題沒(méi)有發(fā)現(xiàn),在后續(xù)的研究中需要進(jìn)一步地改進(jìn)和完善。