朱文灝 郭其一
(1.同濟(jì)大學(xué)電子與信息工程學(xué)院,上海 201804;2.上海施耐德低壓終端電器有限公司,上海 201109)
在電力電子和現(xiàn)代控制理論的發(fā)展背景下,微電網(wǎng)第一次被R.H.Lasseter 教授于2001年提出[1]。這是一種新型的基于信息網(wǎng)絡(luò)的能量供應(yīng)和管理技術(shù),有利于能源可持續(xù)發(fā)展、需求側(cè)管理和各種能源最大限度地使用[2]。計(jì)算機(jī)憑其快速的計(jì)算能力被廣泛用作微網(wǎng)故障分析,它能快速的、準(zhǔn)確的給出分析結(jié)果,并為調(diào)度決策提供合理的操作參考[3]。
微網(wǎng)系統(tǒng)故障往往具有復(fù)雜性,傳統(tǒng)的數(shù)學(xué)方法不能描述具有多重故障類(lèi)型的模型[4]。隨著人工智能技術(shù)的發(fā)展,尤其是在仿真人類(lèi)處理各種問(wèn)題的能力方面的發(fā)展,使其被許多學(xué)者廣泛接受,并成功應(yīng)用于電力系統(tǒng)故障檢測(cè)領(lǐng)域。C.A.Petri 發(fā)展了Petri 網(wǎng)絡(luò)數(shù)學(xué)模型,這個(gè)模型適用與小范圍內(nèi)具有穩(wěn)定結(jié)構(gòu)電網(wǎng)的故障檢測(cè)[5]。但同時(shí),這個(gè)模型在設(shè)備數(shù)量經(jīng)常變化的大范圍電網(wǎng)應(yīng)用上存在許多局限性。為了減少故障樣本記錄和無(wú)價(jià)值的條件特征,Z.Pawlak 將粗糙集理論應(yīng)用于電網(wǎng)故障檢測(cè)[6]。LA Zadeh 提出了一種基于模糊理論的電網(wǎng)故障檢測(cè)模型,來(lái)處理非確定性問(wèn)題[7]。但當(dāng)存在許多不確定性因素時(shí),問(wèn)題仍很難求解。Pitts 將人工神經(jīng)網(wǎng)絡(luò)應(yīng)用到故障檢測(cè)中,該方法便于將故障類(lèi)型和故障信號(hào)的邏輯關(guān)系分清楚[8]。但人工神經(jīng)網(wǎng)絡(luò)在應(yīng)用前需要進(jìn)行訓(xùn)練,此訓(xùn)練的收斂速度緩慢。該方法只有在系統(tǒng)結(jié)構(gòu)不變的情況下適用。Lee 提出一種基于貝葉斯網(wǎng)絡(luò)的模型[9],和傳統(tǒng)故障檢測(cè)方法相比,這個(gè)模型具有清晰的邏輯和快速的處理速度,以及強(qiáng)壯的學(xué)習(xí)能力和良好的容錯(cuò)性。但它也存在缺點(diǎn),比如,每個(gè)節(jié)點(diǎn)的條件概率分布不是由貝葉斯網(wǎng)絡(luò)定義,而是由來(lái)自經(jīng)驗(yàn)的統(tǒng)計(jì)分析技巧所決定。在傳統(tǒng)故障檢測(cè)方法的基礎(chǔ)上,本文提出了一種基于貝葉斯網(wǎng)絡(luò)的關(guān)聯(lián)規(guī)則挖掘和頻繁項(xiàng)集優(yōu)化的算法。
Apriori 算法是一種用于搜索頻繁項(xiàng)集的基本算法,該算法采用逐層搜索的迭代方法,也就是用k-項(xiàng)集搜索(k+ 1)-項(xiàng)集[10]。該算法通過(guò)頻繁項(xiàng)集屬性中的先驗(yàn)知識(shí),首先生成頻率1-項(xiàng)集L1,然后生成頻率2-項(xiàng)集,直到生成某頻率的r項(xiàng)集Lr為空。
在第k次循環(huán)中,候選的k-項(xiàng)集第一次生成了Ck集。每個(gè)候選項(xiàng)由一個(gè)(k- 2)-節(jié)點(diǎn)生成,此節(jié)點(diǎn)處在兩個(gè)只有一個(gè)不同項(xiàng)(此項(xiàng)屬于Lk-1)的頻繁項(xiàng)集中。在Ck中的項(xiàng)集就是頻繁項(xiàng)集的候選項(xiàng),并且最后的頻繁項(xiàng)集Lk一定是Ck的子集。為了決定其是否可加入Lk,須在數(shù)據(jù)庫(kù)事務(wù)中核實(shí)每個(gè)元素,該算法由于存在可觀(guān)的輸入、輸出計(jì)算量,因而其性能得到限制。
Apriori 算法基本步驟是:首先,迭代識(shí)別所有的頻繁項(xiàng)目集,要求頻繁項(xiàng)集的支持率不低于用戶(hù)設(shè)定的最低值;其次,從頻繁項(xiàng)集中構(gòu)造支持度和可信度不低于用戶(hù)設(shè)定的最低值的強(qiáng)關(guān)聯(lián)規(guī)則。
在生成項(xiàng)集Ck的每步前,Apriori 算法有賴(lài)于相應(yīng)頻繁k- 1項(xiàng)集,并搜索數(shù)據(jù)庫(kù)來(lái)計(jì)算每個(gè)候選項(xiàng)集的支持度,以便生成頻繁項(xiàng)集,這需要花費(fèi)許多時(shí)間和空間。因此,生成很小的候選項(xiàng)集的過(guò)程在提高頻繁項(xiàng)集搜索效率方面起到重要的作用。而且,在A(yíng)priori 算法中,候選集Ck和Lk-1會(huì)在Ck具有很大可能性的地方同步生成。Hash 技術(shù)能去除那些不需要的候選項(xiàng)來(lái)降低Ck的可能性,因而可以降低時(shí)間和空間消耗并增強(qiáng)算法的效率。
在A(yíng)priori 算法中,當(dāng)在D中的事務(wù)和在I中的項(xiàng)目數(shù)據(jù)量很大時(shí),在L1中的項(xiàng)目數(shù)也會(huì)變的很大,假設(shè)為m,那么聯(lián)合生成的候選2-項(xiàng)集C2生成數(shù)為因此,支持度的計(jì)算量會(huì)變得十分巨大。
運(yùn)用Hash 技術(shù)的主要目的是解決這個(gè)沖突。本文采用二維Hash(散列)函數(shù)來(lái)避免這個(gè)沖突。在項(xiàng)目集I= {I1,I2,… ,Ik,… ,Im}中的每個(gè)項(xiàng)目I k(k= 1,2,… ,m)具有一個(gè)順序值:1,2,… ,k,… ,m。order(x)和order(y)表示為在候選項(xiàng)集2-中的項(xiàng)目x和y的順序值。則二維散列函數(shù)為,
此處,
p1≠p2,且其是相對(duì)質(zhì)數(shù)。
若p1和p2的值很大,散列表能覆蓋更多空間;若它們很小,則會(huì)導(dǎo)致沖突。因而,p1和p2須根據(jù)項(xiàng)目數(shù)調(diào)整并定義最小支持度。
h1(x,y)和h2(x,y)為H(x,y)下標(biāo)。當(dāng)散列數(shù)映射出1 個(gè)單位,則計(jì)數(shù)值增加1。
在掃描數(shù)據(jù)庫(kù)和生成L1的同時(shí),每個(gè)2-項(xiàng)目集在每項(xiàng)事務(wù)中被二維散列函數(shù)計(jì)數(shù)。在數(shù)據(jù)庫(kù)掃描完后,L1和二維散列表均被獲得,且表內(nèi)每個(gè)單位的值是一個(gè)事項(xiàng)的累積值。如果事項(xiàng)數(shù)值等于或大于最小minsup,則2-項(xiàng)目集屬于L2,否則它不為2-頻繁項(xiàng)集。
若有一個(gè)新的訓(xùn)練樣本,則能在現(xiàn)有樣本數(shù)據(jù)集中學(xué)習(xí)并將新數(shù)據(jù)歸類(lèi)。此貝葉斯理論和本文的任務(wù)需求一致。
此公式能表達(dá)成貝葉斯等式。
可以通過(guò)式(6),根據(jù)訓(xùn)練數(shù)據(jù)得到估計(jì)值。其實(shí),預(yù)測(cè)出每個(gè)P(si)較容易,只要從訓(xùn)練數(shù)據(jù)中計(jì)算每個(gè)目標(biāo)值si的頻率即可。然而,如果沒(méi)有收集相當(dāng)大數(shù)量的訓(xùn)練數(shù)據(jù),則不能通過(guò)此方法預(yù)測(cè) 不同的因?yàn)榇隧?xiàng)數(shù)量等于可 能的例子數(shù)和可能的目標(biāo)值的乘積,此方法需要大量的訓(xùn)練項(xiàng)集。為了獲得合理的估計(jì),每個(gè)樣本須在樣本空間出現(xiàn)多次。
貝葉斯算法有一個(gè)簡(jiǎn)單假設(shè):若給定樣本的目標(biāo)值,則x1,x2,… ,xn的共同概率等于每個(gè)單一屬性的概率乘積。
將此式代入式(6),則可得在貝葉斯算法中的公式
此處sNB是從貝葉斯算法計(jì)算得到的目標(biāo)值。在貝葉斯算法中,從訓(xùn)練數(shù)據(jù)中估計(jì)得出的不同的的項(xiàng)目數(shù)只是不同的目標(biāo)數(shù)和特征值的乘 積,這個(gè)數(shù)比的總數(shù)小很多。
如果用此方法計(jì)算的某一條件概率為0,則無(wú)論其它特征概率值為多少,其值始終為0。這些特征是獨(dú)立的,所以目標(biāo)值會(huì)被它們的連續(xù)乘積所影響。為避免在有限樣本中存在的概率為0 的問(wèn)題,采用m-估計(jì)法進(jìn)行優(yōu)化,以便使得分類(lèi)更精確。m-估計(jì)定義如下:
此處,v表示為分類(lèi)ni中樣本數(shù),vx表示為mi的樣本數(shù)(同分類(lèi)ni樣本相似);u表示為與樣本相關(guān)的特征;p為測(cè)試器指定的參數(shù)。如果訓(xùn)練集為 0,則因而,在分類(lèi)ni中特征mi的先 驗(yàn)概率為p。樣本的等價(jià)值決定了概率p和v x/v之間的關(guān)系。
本文采用基于關(guān)聯(lián)規(guī)則挖掘和貝葉斯網(wǎng)絡(luò)算法的微網(wǎng)故障檢測(cè)方法,同時(shí)考慮早期故障數(shù)據(jù)冗余和由于微網(wǎng)故障檢測(cè)不確定性導(dǎo)致的偏差。具體流程如圖1所示。
圖1 微網(wǎng)故障檢測(cè)流程圖
根據(jù)此流程圖,具體算法如下:
1)從保護(hù)器或斷路器處采集的動(dòng)作信息作為條件特征,故障元件作為決策特征,選取訓(xùn)練樣本集,并根據(jù)過(guò)去的故障樣本建立初始決策表S;將其輸入輸入數(shù)據(jù)庫(kù),以生成關(guān)聯(lián)規(guī)則挖掘目標(biāo)的數(shù)據(jù)資源。
2)運(yùn)用關(guān)聯(lián)規(guī)則交互挖掘初始決策表,減少多余目標(biāo)和特征。應(yīng)注意到,當(dāng)支持度和可信度門(mén)限值低時(shí),會(huì)生成大量的弱關(guān)聯(lián)規(guī)則并且挖掘時(shí)間會(huì)變長(zhǎng)。反之,則一些有價(jià)值的關(guān)聯(lián)規(guī)會(huì)被忽略。實(shí)際上,可采用較小的樣本數(shù)量進(jìn)行交互挖掘迭代,通過(guò)不斷地調(diào)節(jié)門(mén)限值來(lái)確定合適的門(mén)限值。然后,將此方法用于以支持度和可信度為目標(biāo)的大數(shù)據(jù)處理。
3)貝葉斯網(wǎng)絡(luò)初始化。
4)采用改進(jìn)后的Apriori 算法對(duì)新生成的特征集進(jìn)行數(shù)據(jù)挖掘,得到符合支持度限值的頻繁項(xiàng)集;對(duì)每個(gè)頻繁項(xiàng)集建立關(guān)聯(lián)規(guī)則,并選取其最小可信度和關(guān)聯(lián)度大于1 的強(qiáng)壯項(xiàng)集。忽略支持度小于最小值的項(xiàng)集,從而減少搜索空間。
5)建立基于步驟(2)關(guān)聯(lián)規(guī)則的貝葉斯模型:
對(duì)于每條規(guī)則,X?C并且從NewRules中依次提??;提取與X相應(yīng)的可信度,并將X?C加入貝葉斯網(wǎng)絡(luò)。
6)將故障區(qū)域值C(c1,c2,… ,cn)(指決策表內(nèi)的決策特征)作為貝葉斯網(wǎng)絡(luò)的父節(jié)點(diǎn),并將已減 少的關(guān)聯(lián)規(guī)則組Rmai(x1,x2,… ,xn)中的條件特征作 為子節(jié)點(diǎn),建立貝葉斯網(wǎng)絡(luò)。
7)訓(xùn)練每個(gè)節(jié)點(diǎn),并計(jì)算每個(gè)父節(jié)點(diǎn)的先驗(yàn)概率和每個(gè)子節(jié)點(diǎn)的條件概率。
8)實(shí)時(shí)故障檢測(cè)。
給出的實(shí)時(shí)故障檢測(cè)信息為X(x1,x2,...,xn),包 括完整的信息、非完整的信息、甚至錯(cuò)誤的信息。采用已訓(xùn)練的貝葉斯網(wǎng)絡(luò),對(duì)這些信息進(jìn)行診斷,并計(jì)算可能的故障區(qū)域的概率。
最后,對(duì)得到的可能的故障區(qū)域概率進(jìn)行篩選,并將最大概率的故障區(qū)域Ck作為最終診斷結(jié)果輸出。
為驗(yàn)證此改進(jìn)算法的有效性,本文進(jìn)行了仿真實(shí)驗(yàn)。實(shí)驗(yàn)選用7 個(gè)電網(wǎng)故障樣本,此樣本分別具有條件特征:斷路器B1、B2、B3;過(guò)電流保護(hù)C1、C2、C3;距離保護(hù)R1。每個(gè)特征值為0 或1,分別代表斷路器的合和分狀態(tài)。決策特征為故障區(qū)域,通常表示為線(xiàn)路S1、S2、S3,見(jiàn)表1。
表1 初始微網(wǎng)故障檢測(cè)決策表
上述故障信息經(jīng)基于貝葉斯網(wǎng)絡(luò)和關(guān)聯(lián)規(guī)則的檢測(cè)模型進(jìn)行數(shù)據(jù)挖掘后,得到的結(jié)果見(jiàn)表2。
表2 微網(wǎng)故障檢測(cè)結(jié)果表
圖2記錄了當(dāng)前模型檢測(cè)結(jié)果和實(shí)際結(jié)果之間的誤差。
從表2和圖2可見(jiàn),基于貝葉斯網(wǎng)絡(luò)和關(guān)聯(lián)數(shù)據(jù)挖掘的檢測(cè)模型能較好地應(yīng)用于微網(wǎng)故障檢測(cè),并且檢測(cè)誤差遠(yuǎn)遠(yuǎn)低于A(yíng)priori 算法和貝葉斯算法。
圖2 診斷誤差的統(tǒng)計(jì)結(jié)果比較
微網(wǎng)具有電流雙向貫通和局部短路承受能力低的特點(diǎn),傳統(tǒng)的配電網(wǎng)技術(shù)不再適用于微網(wǎng)的發(fā)展。鑒于此,本文提出了一種改進(jìn)的基于貝葉斯模型和關(guān)聯(lián)規(guī)則挖掘的檢測(cè)模型。仿真實(shí)驗(yàn)結(jié)果表明此模型能有效地且大量地減少傳統(tǒng)算法在配電網(wǎng)故障檢測(cè)中產(chǎn)生的誤差。
[1] 周建萍,朱建萍,徐司聰.微網(wǎng)孤島運(yùn)行時(shí)短路故障檢測(cè)的仿真研究[J].中國(guó)電力,2014,47(3): 85-89.
[2] 杜敏杰,馬善釗,王建國(guó),等.基于核密度估計(jì)的實(shí)時(shí)SVDD 算法與電路故障檢測(cè)應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2014,22(4): 1039-1041,1045.
[3] 張哲軍.引入推理模型的大型電網(wǎng)設(shè)備的故障檢測(cè)方法[J].科技通報(bào),2014,30(2): 111-113,135.
[4] 杜華.基于關(guān)聯(lián)規(guī)則的船舶供電系統(tǒng)故障檢測(cè)方法研究[J].計(jì)算機(jī)測(cè)量與控制,2014,22(1): 233-235.
[5] 張咪.一種遠(yuǎn)端故障檢測(cè)方案的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2013,39(12): 126-128,131.
[6] 張海濤,高錦宏,吳國(guó)新,等.蟻群優(yōu)化算法在風(fēng)電偏航故障檢測(cè)中的應(yīng)用[J].可再生能源,2013,31(11): 48-50,55.
[7] 原艷紅.大型煤炭機(jī)電設(shè)備的故障檢測(cè)方法研究[J].計(jì)算機(jī)仿真,2013,30(8): 380-383.
[8] 鄭樹(shù)松,李紅梅.電動(dòng)汽車(chē)PMSM 驅(qū)動(dòng)系統(tǒng)的故障檢測(cè)[J].微電機(jī),2013,46(8): 55-59.
[9] 王娟,張瑾.高壓電力計(jì)量系統(tǒng)故障診斷與應(yīng)用研究[J].科學(xué)技術(shù)與工程,2013,13(19): 5617-5620.
[10] 杜敏杰,蔡金燕.基于樣本約簡(jiǎn)的實(shí)時(shí)SVDD 算法與電路故障檢測(cè)應(yīng)用[J].微電子學(xué)與計(jì)算機(jī),2013,30(7): 86-90.