李欣,易柳含,劉晨凱,楊澤國(guó),郭攀鋒
(1.三峽大學(xué)電氣與新能源學(xué)院,湖北宜昌 443002;2.國(guó)網(wǎng)湖北省襄陽(yáng)供電公司,湖北襄陽(yáng) 441000;3.國(guó)網(wǎng)甘肅省白銀供電公司,甘肅白銀 730900)
隨著信息技術(shù)及先進(jìn)通信設(shè)備的發(fā)展,電力系統(tǒng)逐漸發(fā)展成物理系統(tǒng)和信息系統(tǒng)深度聯(lián)合的電力信息物理系統(tǒng)[1]。由于2 種系統(tǒng)的深度集成,傳輸?shù)膶?shí)時(shí)數(shù)據(jù)更容易受到網(wǎng)絡(luò)攻擊,危及物理系統(tǒng)的安全穩(wěn)定。2015 年烏克蘭多個(gè)變電站曾遭遇協(xié)同網(wǎng)絡(luò)攻擊,致使約22.5 萬(wàn)用戶(hù)的電力供應(yīng)被切斷數(shù)小時(shí)[2]。虛假數(shù)據(jù)注入攻擊(False Data Injection Attacks,F(xiàn)DIA)是對(duì)電力系統(tǒng)安全性最具挑戰(zhàn)的威脅之一,成功的FDIA 可以向監(jiān)測(cè)儀表注入虛假數(shù)據(jù)使其繞過(guò)壞數(shù)據(jù)檢測(cè)(Bad Data Detection,BDD)[3],降低狀態(tài)估計(jì)算法的性能,從而擾亂或誤導(dǎo)控制中心的決策,嚴(yán)重影響智能電網(wǎng)的安全穩(wěn)定運(yùn)行[4]。因此FDIA 的檢測(cè)對(duì)于保障電力系統(tǒng)安全運(yùn)行具有重要意義。
自FDIA 被提出以后,現(xiàn)有工作都致力于研究其攻擊和防御機(jī)制。從攻擊者的角度來(lái)看,構(gòu)造出不可檢測(cè)的錯(cuò)誤數(shù)據(jù)就可能給電力系統(tǒng)帶來(lái)嚴(yán)重后果,如級(jí)聯(lián)故障、線路過(guò)載等[5-9]。從防御者的角度看,可以通過(guò)建立多智能體系統(tǒng)對(duì)攻擊行為與系統(tǒng)正常行為進(jìn)行區(qū)分[10]或者基于卡爾曼濾波對(duì)攻擊信號(hào)進(jìn)行估計(jì),找出FDIA 的行為特點(diǎn)[10-13]。
近年來(lái),隨著收集數(shù)據(jù)的計(jì)量基礎(chǔ)設(shè)施的發(fā)展,各種基于人工智能的FDIA 檢測(cè)技術(shù)層出不窮[14-15]。由于FDIA 檢測(cè)是二元分類(lèi)問(wèn)題,機(jī)器學(xué)習(xí)在處理分類(lèi)問(wèn)題有較好表現(xiàn)[16],極端梯度提升法(Extreme Gradient Boosting,XGBoost)作為一種前沿的機(jī)器學(xué)習(xí)技術(shù),有良好的分類(lèi)和預(yù)測(cè)性能[17-18],除此之外,該算法在模型訓(xùn)練過(guò)程中生成的特征重要性排序能直觀解釋FDIA 的主要攻擊對(duì)象,有助于輔助決策,因此作為本文FDIA 檢測(cè)的分類(lèi)器。然而單一分類(lèi)器在無(wú)參數(shù)調(diào)整的情況下魯棒性較差,貝葉斯優(yōu)化(Bayesian Optimization,BO)相較其他超參數(shù)尋優(yōu)模型能降低尋優(yōu)速度、提升模型精度[19],因此本文基于BO 改進(jìn)的XGBoost 模型構(gòu)建基礎(chǔ)分類(lèi)器BOXGBoost,對(duì)當(dāng)前電力系統(tǒng)運(yùn)行狀態(tài)快速初篩以區(qū)分正?;騀DIA 狀態(tài)。
另外,人工智能方法在辨識(shí)FDIA 數(shù)據(jù)的分類(lèi)任務(wù)時(shí)有一定概率產(chǎn)生2 類(lèi)誤報(bào)情形:(1)將正常運(yùn)行狀態(tài)誤報(bào)為攻擊。此時(shí)出現(xiàn)攻擊報(bào)警后僅需對(duì)信息系統(tǒng)進(jìn)行檢查;(2)將攻擊誤報(bào)為正常運(yùn)行狀態(tài)。此情景相比(1)代價(jià)更大,這是由于FDIA 具有隱蔽性強(qiáng)、潛伏時(shí)間長(zhǎng)等特點(diǎn),能削弱甚至破壞二次系統(tǒng)的正常功能,達(dá)到類(lèi)似物理攻擊的效果[20]。當(dāng)前研究普遍采用改善算法及模型結(jié)構(gòu)的方式來(lái)降低誤報(bào)率[21],但無(wú)法解決系統(tǒng)拓?fù)涓淖兒笮柚匦掠?xùn)練模型的問(wèn)題。最大互信息系數(shù)(Maximal Information Coefficient,MIC)的計(jì)算不受系統(tǒng)拓?fù)渥兓绊?,具有較強(qiáng)的處理海量數(shù)據(jù)的能力,并能發(fā)掘電力系統(tǒng)中廣泛存在的非線性數(shù)據(jù)關(guān)系[22]。對(duì)于擁有較強(qiáng)互聯(lián)關(guān)系的2 個(gè)節(jié)點(diǎn),節(jié)點(diǎn)間的數(shù)據(jù)會(huì)產(chǎn)生良好的映射關(guān)系,若節(jié)點(diǎn)遭受到了FDIA,則攻擊前后的MIC 會(huì)出現(xiàn)較大的差異性。因此為避免情景(2)的發(fā)生,本文提出了一種基于BO-XGBoost和MIC 的聯(lián)合機(jī)制對(duì)FDIA 進(jìn)行二階段檢測(cè)。當(dāng)一階段的BO-XGBoost 基分類(lèi)器判斷當(dāng)前系統(tǒng)狀態(tài)為正常時(shí),二階段的MIC 校驗(yàn)器通過(guò)節(jié)點(diǎn)間相關(guān)性的變化對(duì)其進(jìn)行后校驗(yàn),以糾正被誤報(bào)的潛在FDIA。該機(jī)制不需要建立復(fù)雜的數(shù)學(xué)模型完善了基于單一機(jī)器學(xué)習(xí)模型的FDIA 檢測(cè)方式。
FDIA 通過(guò)干擾系統(tǒng)的狀態(tài)估計(jì)對(duì)電力系統(tǒng)造成物理或經(jīng)濟(jì)上的影響。狀態(tài)估計(jì)可用于電力調(diào)度、事故分析及潮流分析等,是協(xié)助智能電網(wǎng)安全可靠運(yùn)行的重要基礎(chǔ)[3],其量測(cè)方程如下:
式中:H為測(cè)量向量和狀態(tài)向量之間的函數(shù)依賴(lài)關(guān)系,由網(wǎng)絡(luò)結(jié)構(gòu)和線路參數(shù)決定;z為測(cè)量向量,包括所有母線和分支上的總電壓;x為系統(tǒng)狀態(tài)量,其估計(jì)值用表示;e為均值為0 且符合高斯分布的隨機(jī)測(cè)量誤差向量。
黑客在獲取電網(wǎng)參數(shù)和電網(wǎng)拓?fù)浣Y(jié)構(gòu)的前提下,可以生成虛假數(shù)據(jù)攻擊向量。該攻擊向量不同于系統(tǒng)在采集傳輸過(guò)程中產(chǎn)生的量測(cè)誤差,不會(huì)引起殘差的顯著變化,可以達(dá)到躲避壞數(shù)據(jù)檢測(cè)器的目的。最大標(biāo)準(zhǔn)化殘差檢驗(yàn)是BDD 的經(jīng)典方法,其通過(guò)計(jì)算殘差的2-范數(shù)來(lái)檢查是否存在不良測(cè)量值,即:
式中:閾值ε為某個(gè)預(yù)先確定的顯著性水平,為了簡(jiǎn)化符號(hào),在本文其余部分使用r表示最大標(biāo)準(zhǔn)化殘差,即
假設(shè)攻擊向量a為注入到測(cè)量向量z中的非零向量,令c表示由攻擊向量引起的狀態(tài)變量估計(jì)的偏差向量,則遭受攻擊后的殘差值rbad可計(jì)算為:
如果a=Hc,則rbad=r,稱(chēng)其為完美型FDIA,此時(shí)攻擊者在儀表測(cè)量中注入錯(cuò)誤數(shù)據(jù)時(shí)能保持測(cè)量殘差不變;如果a≠Hc,但是rbad<ε,稱(chēng)其為非完美型FDIA,此時(shí)攻擊者仍然可以利用狀態(tài)估計(jì)算法允許的微小測(cè)量誤差來(lái)繞過(guò)BDD。
XGBoost 模型是基于決策樹(shù)的集成機(jī)器學(xué)習(xí)算法[23]。本文用XGBoost 區(qū)分正常運(yùn)行數(shù)據(jù)和FDIA,其目標(biāo)函數(shù)如下:
式中:oi和為第i個(gè)數(shù)據(jù)的真實(shí)值和預(yù)測(cè)值;l為衡量真實(shí)值和預(yù)測(cè)值差異的損失函數(shù);ft為第t棵樹(shù)代表的函數(shù);vi為輸入的第i個(gè)數(shù)據(jù);Ω(ft)為懲罰項(xiàng),用于控制模型復(fù)雜程度,防止過(guò)擬合;T為葉節(jié)點(diǎn)的數(shù)量;為葉節(jié)點(diǎn)權(quán)重模的平方;γ和λ為懲罰力度系數(shù)。
為了降低計(jì)算復(fù)雜度,采用泰勒展開(kāi)法逼近原目標(biāo)函數(shù)(4),并基于Cart 理論將式(4)重寫(xiě)為:
式中:L為左葉節(jié)點(diǎn);R為右葉節(jié)點(diǎn)。
最終,找到最優(yōu)分裂節(jié)點(diǎn),得到分類(lèi)模型。此外,簡(jiǎn)單的數(shù)據(jù)分割可能會(huì)導(dǎo)致檢測(cè)精度低或存在過(guò)擬合的風(fēng)險(xiǎn),因此利用交叉驗(yàn)證充分利用數(shù)據(jù)集以減少隨機(jī)誤差。
無(wú)參數(shù)調(diào)整的單一XGBoost 分類(lèi)器在檢測(cè)精度上易受限制,貝葉斯優(yōu)化(BO)作為序列模型的全局優(yōu)化方法能夠進(jìn)行穩(wěn)定且高效的參數(shù)尋優(yōu)[19],以提高基分類(lèi)器性能。BO 技術(shù)由2 個(gè)主要部分組成:(1)高斯回歸:用于建立目標(biāo)函數(shù)的替代項(xiàng);(2)采集函數(shù):用于探索狀態(tài)空間并決定下一次迭代中的采樣位置。BO-XGBoost 算法的過(guò)程如圖1 所示。
圖1 貝葉斯參數(shù)優(yōu)化算法的過(guò)程Fig.1 Procedure of BO-XGBoost algorithm
單純基于機(jī)器學(xué)習(xí)的攻擊檢測(cè)無(wú)法兼顧檢測(cè)率和誤報(bào)率的問(wèn)題,本文使用MIC 對(duì)BO-XGBoost判斷為正常的場(chǎng)景進(jìn)行后校驗(yàn),以提高檢測(cè)精度。MIC 是衡量2 個(gè)變量間關(guān)系相關(guān)性的一種方法,它能夠挖掘一對(duì)變量間的隱含關(guān)系[22]。一旦某條母線遭受攻擊,其與相鄰線路的特征相關(guān)性便會(huì)在一定程度上解耦,因此可用MIC 將這類(lèi)變化量化為具體數(shù)值作為二階段校驗(yàn),發(fā)現(xiàn)測(cè)量?jī)x表中潛在的FDIA。其基本思想是:給定集合D(X,Y)={(xi,yi),i=1,2,…,n},其中n為樣本數(shù)量,假設(shè)坐標(biāo)軸被劃分為x行y列的網(wǎng)格G,將D(X,Y)中的特征組依次落入網(wǎng)格G中,獲得相應(yīng)的概率分布D|G。保持網(wǎng)格的數(shù)量不變,不同的網(wǎng)格劃分會(huì)導(dǎo)致不同的D|G分布,求取不同劃分下互信息的最大值作為最終的MIC(量值記為CMI)。對(duì)于樣本數(shù)量為n的數(shù)據(jù)集D,特征X和Y的MIC 得分?jǐn)?shù)CMI(D)見(jiàn)式(9):
式中:I(D,x,y)為變量X和Y之間的互信息;B(n)為網(wǎng)絡(luò)規(guī)格約束,根據(jù)經(jīng)驗(yàn)通常設(shè)置為n0.6。
其中,CMI為MIC 取值,其范圍為[0,1],越接近1表明變量間相關(guān)性越強(qiáng)。
基于BO-XGBoost 聯(lián)合MIC 的二階段FDIA 檢測(cè)機(jī)制如圖2 所示,其中,傳感器的測(cè)量值和已知的電網(wǎng)拓?fù)湫畔⑹紫冉?jīng)過(guò)狀態(tài)估計(jì),估計(jì)的狀態(tài)量經(jīng)由壞數(shù)據(jù)檢測(cè)器進(jìn)行檢測(cè),以剔除不滿(mǎn)足電路規(guī)律的測(cè)量值。在傳統(tǒng)的狀態(tài)估計(jì)過(guò)程后,本文提出的FDIA 二階段檢測(cè)機(jī)制進(jìn)一步分析是否存在網(wǎng)絡(luò)攻擊。
圖2 基于BO-XGBoost聯(lián)合MIC二階段FDIA檢測(cè)機(jī)制Fig.2 Two stage FDIA detection mechanism based on joint method of BO-XGBoost and MIC
圖2 所示機(jī)制主要分為2 個(gè)部分:離線訓(xùn)練和在線檢測(cè)。離線訓(xùn)練時(shí),需要構(gòu)造包含正常和FDIA 2 種類(lèi)型的歷史數(shù)據(jù)集,在一階段經(jīng)過(guò)m次尋優(yōu),得到參數(shù)性能最佳的BO-XGBoost 基分類(lèi)器,該分類(lèi)器訓(xùn)練過(guò)程中,假設(shè)有M個(gè)樣本,N個(gè)類(lèi)別,則數(shù)據(jù)集表示為為第i個(gè)樣本對(duì)第N類(lèi)的預(yù)測(cè)得分值,輸出為0 和1 的分類(lèi)結(jié)果,分別表示正常和受到網(wǎng)絡(luò)攻擊的系統(tǒng)狀態(tài),由式(10)給出;與此同時(shí),該歷史數(shù)據(jù)集經(jīng)二階段MIC 模型計(jì)算正常和攻擊狀態(tài)下g個(gè)節(jié)點(diǎn)之間的相關(guān)性,得到典型的相關(guān)性數(shù)值,用于后續(xù)對(duì)FDIA 的校驗(yàn)。
在線檢測(cè)時(shí),首先將BDD 識(shí)別為正常的數(shù)據(jù)輸入給BO-XGBoost 基分類(lèi)器,基分類(lèi)器在識(shí)別到異常數(shù)據(jù)時(shí)將觸發(fā)報(bào)警模塊。由于在分類(lèi)過(guò)程中可能將FDIA 誤報(bào)為正常的運(yùn)行狀態(tài),因此需要繼續(xù)使用MIC 校驗(yàn)器檢驗(yàn)是否存在潛在的FDIA,此時(shí)若存在非完美型的FDIA,二節(jié)點(diǎn)的相關(guān)性會(huì)大幅降低。這是因?yàn)镕DIA 篡改的數(shù)據(jù)無(wú)法通過(guò)潮流調(diào)度使其穩(wěn)定,且由于數(shù)據(jù)不是自然變化(如負(fù)荷波動(dòng)或故障等),MIC 對(duì)于此類(lèi)變化的捕捉較為敏感。與傳統(tǒng)的最大標(biāo)準(zhǔn)化殘差檢測(cè)方法相比,本文的檢測(cè)機(jī)制是數(shù)據(jù)驅(qū)動(dòng)的,不需要拓?fù)渲R(shí)和參數(shù)知識(shí)。
本文提出的基于BO-XGBoost 聯(lián)合MIC 二階段檢測(cè)機(jī)制在IEEE 39 節(jié)點(diǎn)系統(tǒng)上進(jìn)行測(cè)試。系統(tǒng)如圖3 所示。其中,G1—G10 為發(fā)電機(jī),1—39 為母線節(jié)點(diǎn),該系統(tǒng)共有46 對(duì)節(jié)點(diǎn),節(jié)點(diǎn)14 作為仿真算例中的受攻擊母線。發(fā)電機(jī)的4 階模型和負(fù)載的恒定阻抗模型是固定的,所有發(fā)電機(jī)均采用4 階模型和4 階勵(lì)磁系統(tǒng)。
數(shù)據(jù)集由正常運(yùn)行數(shù)據(jù)和FDIA 數(shù)據(jù)構(gòu)成。正常運(yùn)行樣本由電力系統(tǒng)時(shí)域仿真生成,將系統(tǒng)中隨機(jī)選擇的負(fù)載更改為新的值,發(fā)電機(jī)的功率隨負(fù)荷的變化而變化,發(fā)電量和負(fù)載水平在標(biāo)準(zhǔn)工作點(diǎn)的80%~120%之間隨機(jī)變化。仿真在PSSE 工具中進(jìn)行,系統(tǒng)頻率為60 Hz。
在FDIA 樣本中,由于入侵者只需截獲并收集攻擊區(qū)域內(nèi)母線的電壓測(cè)量值即可推算出其余變量,因此在構(gòu)造數(shù)據(jù)集時(shí)僅對(duì)母線電壓測(cè)量值進(jìn)行攻擊。假設(shè)黑客可以破壞的最大測(cè)量值為K,并將攻擊稀疏矩陣表示為為未知攻擊向量,且0<k<K,本文的攻擊向量模擬了k=1 時(shí)對(duì)系統(tǒng)電壓幅值的方差σ2=0.05 增量攻擊[24]。最后,將攻擊向量在不同場(chǎng)景下分別注入到各個(gè)節(jié)點(diǎn)中,構(gòu)建不同運(yùn)行狀態(tài)下的FDIA 案例,結(jié)合正常樣本生成了80 000 個(gè)BO-XGBoost 分類(lèi)器的訓(xùn)練和測(cè)試數(shù)據(jù)集。
為了證明所構(gòu)建的數(shù)據(jù)能夠成功規(guī)避控制中心的壞數(shù)據(jù)檢測(cè),39 節(jié)點(diǎn)系統(tǒng)攻擊前后最大歸一化殘差如圖4 所示。
圖4 IEEE 39節(jié)點(diǎn)攻擊前后的最大標(biāo)準(zhǔn)化殘差Fig.4 The largest normalized residuals for IEEE 39-bus system before and after attack
從圖4 可知,無(wú)論是攻擊前還是攻擊后的殘差,其數(shù)量級(jí)都在0.2 以下,小于通常選擇的99.7%置信水平的壞數(shù)據(jù)檢測(cè)閾值[25]。這意味著電力系統(tǒng)存在隱蔽網(wǎng)絡(luò)攻擊時(shí)不能產(chǎn)生任何可識(shí)別的殘差,因此無(wú)法通過(guò)傳統(tǒng)的殘差測(cè)試來(lái)檢測(cè)FDIA。
1)評(píng)價(jià)指標(biāo)的構(gòu)建。以總準(zhǔn)確率、平均召回率、平均準(zhǔn)確率和F1分?jǐn)?shù)作為評(píng)價(jià)FDIA 檢測(cè)模型的性能指標(biāo)。每個(gè)指標(biāo)的影響描述如下:(1)準(zhǔn)確率A:測(cè)量在測(cè)試集中被正確分類(lèi)的所有樣本的比例;(2)精確率P:衡量測(cè)量結(jié)果為正的樣本有多少為真正的正樣本;(3)召回率R:測(cè)量正確分類(lèi)的樣本中陽(yáng)性樣本所占的比例;(4)F1分?jǐn)?shù):精確率與召回率的調(diào)和均值。評(píng)價(jià)指標(biāo)見(jiàn)表1。
表1 評(píng)價(jià)指標(biāo)Table 1 Evaluating indicator
其中,TP/TN表示被正確分類(lèi)為正/負(fù)樣本數(shù),F(xiàn)N表示被錯(cuò)誤分類(lèi)為負(fù)的正樣本FP表示被錯(cuò)誤分類(lèi)為正的負(fù)樣本,多數(shù)情況下,F(xiàn)1分?jǐn)?shù)中的α=1。
2)檢測(cè)性能分析。BO-XGBoost 分類(lèi)器的輸入是測(cè)量向量,輸出為正常狀態(tài)和網(wǎng)絡(luò)攻擊的分類(lèi)結(jié)果。采用10 倍交叉驗(yàn)證將整個(gè)數(shù)據(jù)集以7:3 的比例隨機(jī)分為訓(xùn)練和測(cè)試數(shù)據(jù)集[14],訓(xùn)練集用于訓(xùn)練BO-XGBoost 模型,測(cè)試集用于評(píng)估攻擊檢測(cè)的準(zhǔn)確性。為使模型性能達(dá)到最佳,利用BO 算法尋找超參數(shù)“樹(shù)深度”和“迭代次數(shù)”的最優(yōu)值,并參考文獻(xiàn)[26]對(duì)超參數(shù)上下界作如下考慮:對(duì)于樹(shù)深度,設(shè)置過(guò)大可能導(dǎo)致過(guò)擬合,設(shè)置過(guò)小可能導(dǎo)致欠擬合,因此將該參數(shù)的上下限設(shè)置為(15,25);對(duì)于迭代次數(shù),設(shè)置過(guò)大需要占用大量?jī)?nèi)存,過(guò)小可能影響預(yù)測(cè)精度,因此將該參數(shù)的上下限設(shè)置為(4 500,5 500)。貝葉斯優(yōu)化算法最大迭代次數(shù)設(shè)置為300次,如果每次迭代的損失沒(méi)有明顯減少,則模型提前停止迭代。對(duì)于本文的訓(xùn)練數(shù)據(jù)集,超參數(shù)尋優(yōu)結(jié)果為:樹(shù)深度=24.71,迭代次數(shù)=4 997.39,取整為25 和4 997。
為了清晰地反映BO-XGBoost 分類(lèi)器的性能,根據(jù)表1 的評(píng)價(jià)指標(biāo),對(duì)比BO-XGBoost 和人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,ANN)、支持向量機(jī)(Support Vector Machines,SVM)、隨機(jī)森林(Random Forest,RF)和XGBoost 4 種機(jī)器學(xué)習(xí)模型,結(jié)果如表2 所示。從表2 可知,BO-XGBoost 在FDIA 的檢測(cè)中準(zhǔn)確率達(dá)93.27%。盡管ANN 的準(zhǔn)確率接近BOXGBoost,但前者的計(jì)算時(shí)間更長(zhǎng),因?yàn)闄?quán)重值的修改需經(jīng)過(guò)數(shù)次調(diào)試才可獲得所標(biāo)注的評(píng)估精度。相比默認(rèn)參數(shù)下的XGBoost,BO-XGBoost 能自主尋得最優(yōu)參數(shù),從而提升了分類(lèi)效果。同為集成學(xué)習(xí)的RF 對(duì)于有一定噪聲的數(shù)據(jù)集容易過(guò)擬合也是影響其準(zhǔn)確率的原因,而B(niǎo)O-XGBoost 經(jīng)貝葉斯優(yōu)化的參數(shù)提高了其泛化能力,避免了過(guò)擬合。由平均測(cè)試時(shí)間可知,訓(xùn)練完成的BO-XGBoost 模型對(duì)于分類(lèi)的判斷較為迅速,并且由于同步相量測(cè)量裝置的對(duì)數(shù)據(jù)的實(shí)時(shí)采集使得該分類(lèi)器可以看作實(shí)時(shí)分類(lèi)器,符合電力系統(tǒng)對(duì)穩(wěn)定的要求。
表2 不同模型的評(píng)估結(jié)果Table 2 Assessment results of different models
考慮到數(shù)據(jù)規(guī)模對(duì)模型精度有一定影響,5 種模型在不同規(guī)模下的檢測(cè)準(zhǔn)確率變化如圖5 所示。結(jié)果表明,SVM 和RF 在數(shù)據(jù)量較少時(shí)表現(xiàn)相對(duì)較好,但電力系統(tǒng)的數(shù)據(jù)是一個(gè)龐大的動(dòng)態(tài)集,小規(guī)模樣本訓(xùn)練的模型不能滿(mǎn)足對(duì)大數(shù)據(jù)集的實(shí)時(shí)分析需求。在數(shù)據(jù)量較多時(shí),盡管ANN 的準(zhǔn)確率和BO-XGBoost 相近,但由于前者復(fù)雜的運(yùn)算方式,可解釋性較弱。
圖5 不同數(shù)據(jù)規(guī)模下各模型的準(zhǔn)確率Fig.5 Model accuracy with different data sizes
根據(jù)Boosting 算法創(chuàng)建提升樹(shù)的過(guò)程,可根據(jù)每個(gè)屬性的重要性得分得到特征重要性排序,該分?jǐn)?shù)衡量了特征在決策樹(shù)構(gòu)建中的價(jià)值,當(dāng)某個(gè)特征越多地被用來(lái)構(gòu)建決策樹(shù),得分就越高。最終39節(jié)點(diǎn)系統(tǒng)的前18 位特征重要性排序見(jiàn)圖6。其中,f為特征,下標(biāo)為節(jié)點(diǎn)編號(hào),特征量包括節(jié)點(diǎn)電壓U,注入功率P和電壓相角θ。前5 位特征f0,f56,f37,f9,f18分別代表U1,U29,U19,P5,U13,這些特征對(duì)于識(shí)別正常和攻擊的靈敏度較高。由于3.1 節(jié)中注入的攻擊特征為母線電壓,因此在這18 位特征排序結(jié)果中,電壓占比超過(guò)77.78%,相比之下,特征f4代表的θ4并不是重要的特征。綜上所述,當(dāng)系統(tǒng)遭受攻擊時(shí),模型能夠通過(guò)重點(diǎn)關(guān)注前幾位特征的變化更靈敏地識(shí)別FDIA,排名較高特征用于后續(xù)相關(guān)性校驗(yàn)。相比于神經(jīng)網(wǎng)絡(luò)的“黑箱”模型,特征重要性得分排序從側(cè)面反映了該模型的可解釋性較強(qiáng)。
圖6 特征重要性得分排序Fig.6 Ranking of feature importance scores
3.3.1 MIC校驗(yàn)性能分析
由于機(jī)器學(xué)習(xí)有一定誤報(bào)率,因此本節(jié)提出使用MIC 對(duì)BO-XGBoost 的判定為正常的結(jié)果進(jìn)行后校驗(yàn)。正常時(shí)的節(jié)點(diǎn)與其相鄰節(jié)點(diǎn)的相關(guān)性得分較高。由于攻擊者很難獲取電力系統(tǒng)的全部信息,因此在遭受網(wǎng)絡(luò)攻擊時(shí),節(jié)點(diǎn)間相關(guān)性會(huì)發(fā)生較大改變。該差異可用于對(duì)當(dāng)前系統(tǒng)的真實(shí)狀態(tài)進(jìn)行校驗(yàn)。
假定此時(shí)BO-XGBoost 將網(wǎng)絡(luò)攻擊誤報(bào)為正常狀態(tài),即未發(fā)現(xiàn)潛在的FDIA,根據(jù)3.1 節(jié)攻擊方式并結(jié)合特征重要性排序結(jié)果,偽造對(duì)節(jié)點(diǎn)14 的電壓攻擊,如圖3 虛線區(qū)域內(nèi)所示。取3 600 周期(60 s)U13和U14的正常波動(dòng)和攻擊數(shù)據(jù)。從圖7(a)可知,在正常波動(dòng)情況下,改變負(fù)載分布并由發(fā)電機(jī)平衡時(shí),U13集中在1.02 左右,U14集中在1.04 左右,此時(shí)兩者呈類(lèi)線性相關(guān),根據(jù)2.2 節(jié)的計(jì)算方式可得CMI為0.81。由圖7(b)可知,在節(jié)點(diǎn)14 遭受FDIA 攻擊后,2 個(gè)特征間沒(méi)有明顯關(guān)系,呈無(wú)序狀態(tài),此時(shí)CMI為0.075,低于0.1,這是由于當(dāng)給電壓施加方差σ2=0.05 的增量攻擊時(shí),CMI對(duì)于2 個(gè)變量間的微小變化敏感,而基于決策樹(shù)模型的算法對(duì)于該樣本靈敏度較低,故BO-XGBoost 基分類(lèi)器可能誤認(rèn)為其為系統(tǒng)的正常波動(dòng)。
圖7 攻擊前后的U13與U14 關(guān)系表示Fig.7 Distribution of U13 and U14 before and after attack
為了更直觀表示節(jié)點(diǎn)間相關(guān)性受攻擊數(shù)據(jù)的影響,將MIC 用熱力圖進(jìn)行可視化,如圖8 所示。仍然以節(jié)點(diǎn)14 為例,用N 代表節(jié)點(diǎn)(Node),正常波動(dòng)的時(shí)候,該節(jié)點(diǎn)與其相鄰節(jié)點(diǎn)N4,N13,N15 的電壓相關(guān)性大于0.8,顏色梯度表示節(jié)點(diǎn)對(duì)之間的相關(guān)程度,顏色越深則表明2 個(gè)節(jié)點(diǎn)間有較高的MIC得分。在N14 遭受FDIA 之后的1 800 個(gè)周期(30 s)內(nèi),其相關(guān)性降低至0.1 以下,其余節(jié)點(diǎn)之間的MIC值沒(méi)有變化。由此可得,低成本的局部區(qū)域攻擊會(huì)因其無(wú)法兼顧所有節(jié)點(diǎn)使得節(jié)點(diǎn)間相關(guān)性呈現(xiàn)不正常數(shù)值。
圖8 攻擊前后節(jié)點(diǎn)14與其相鄰節(jié)點(diǎn)的MIC熱力圖Fig.8 Heat map of MIC for node 14 and its neighboring nodes before and after attack
3.3.2 對(duì)比分析
收集節(jié)點(diǎn)14 在3 600 周期(60 s)的攻擊前后數(shù)據(jù),用MIC 與皮爾森相關(guān)系數(shù)(Pearson Correlation Coefficient,PCC)(量值記為CPC)及斯皮爾曼相關(guān)系數(shù)(Spearman Correlation Coefficient,SCC)(量值記為CSC)進(jìn)行對(duì)比分析,如表3 和表4 所示。由攻擊前后相關(guān)性對(duì)比分析可知,未遭受攻擊時(shí)節(jié)點(diǎn)對(duì)的MIC 值最高,這是由于電力系統(tǒng)為典型的非線性系統(tǒng),MIC 的“網(wǎng)格化”方法使其更易捕捉節(jié)點(diǎn)間的非線性相關(guān)關(guān)系,因此相關(guān)性在受攻擊后變化更為敏感。為了比較不同相關(guān)性方法對(duì)FDIA 的區(qū)分度,將均差值(∑|x-x′|)/d定義為性能指標(biāo),該指標(biāo)量化了攻擊前后該區(qū)域所有節(jié)點(diǎn)之間的分離程度,其中x和x' 分別代表每對(duì)節(jié)點(diǎn)受攻擊前后的相關(guān)性系數(shù),d代表節(jié)點(diǎn)對(duì)個(gè)數(shù),均差值越大表明對(duì)FDIA 的區(qū)分度越高。MIC,PCC 以及SCC 均差值分別計(jì)算為0.7827,0.0733,0.2933,比較均差值可知,MIC 的均差值最大,表明對(duì)FDIA 的區(qū)分度更高;PCC 均差值最低,表明其對(duì)非線性關(guān)系的區(qū)分度較差;SCC 基于等級(jí)梯度的原理分析相關(guān)性,更適用于具有單調(diào)關(guān)系的非線性相關(guān)關(guān)系,因此其均差值也低于MIC。
表3 攻擊前的MIC,PCC,SCC值Table 3 Values of MIC,PCC and SCC before attack
表4 攻擊后的MIC,PCC,SCC值Table 4 Values of MIC,PCC and SCC after attack
除此之外,本文將算例擴(kuò)展至39 節(jié)點(diǎn)系統(tǒng)的46對(duì)節(jié)點(diǎn),對(duì)比測(cè)試了MIC 和PCC 受攻擊前后的區(qū)別,其中PCC 取絕對(duì)值。求出在80%,90%,100%,110%,120%,130%6 種負(fù)載情況下相鄰節(jié)點(diǎn)之間的MIC 和PCC 的相關(guān)系數(shù)值,圖9 展示整體相關(guān)性。
圖9 46對(duì)節(jié)點(diǎn)受攻擊前后的MIC和PCC值Fig.9 Values of MIC and PCC for 46 pairs of nodes before and after attack
由圖9 可知,正常運(yùn)行狀態(tài)下,節(jié)點(diǎn)對(duì)的CMI從0.6~1 不等,而遭受FDIA 后所有節(jié)點(diǎn)對(duì)的CMI僅在0.065~0.075 之間,量級(jí)遠(yuǎn)遠(yuǎn)低于正常運(yùn)行狀態(tài);從PCC 攻擊前后相關(guān)性可知,第4,16,24,39,40,43個(gè)節(jié)點(diǎn)對(duì)攻擊前的數(shù)值與攻擊后的相關(guān)性重疊,甚至比攻擊后更低,因此無(wú)法正確區(qū)分FDIA。CMI和CPC的均差值分別計(jì)算為0.758 1 和0.186 6,由此可以得出,MIC 對(duì)于FDIA 的區(qū)分度顯著高于PCC。
為了量化攻擊信號(hào)對(duì)系統(tǒng)的相關(guān)系數(shù)的影響,引入最小相關(guān)偏差(Min Correlation Deviation,MCD)(量值記為DMC)[27]來(lái)界定MIC 的降低程度,該指標(biāo)衡量了正常狀態(tài)下節(jié)點(diǎn)間相關(guān)系數(shù)和遭受FDIA 后節(jié)點(diǎn)間相關(guān)系數(shù)最小差異,按元素間的歐幾里得距離計(jì)算。其表達(dá)式見(jiàn)式(11):
計(jì)算IEEE 39 系統(tǒng)46 節(jié)點(diǎn)對(duì)在MIC 上的最小相關(guān)偏差,得到DMC=0.559。該最小值作為界定MIC是否能明顯區(qū)分EEE 39 節(jié)點(diǎn)系統(tǒng)攻擊的臨界值,需離線訓(xùn)練時(shí)提前計(jì)算。當(dāng)系統(tǒng)在線檢測(cè)時(shí),將實(shí)時(shí)計(jì)算的CMI與遭受FDIA 前的CMI做差值得到ΔCMI,若ΔCMI<DMC則認(rèn)為系統(tǒng)未遭受FDIA,表明BO-XGBoost 基分類(lèi)器判斷正確;若ΔCMI≥DMC則發(fā)出警報(bào),表明BO-XGBoost 出現(xiàn)誤判,此時(shí)可能有FDIA 潛藏于電力物理信息系統(tǒng)內(nèi),需要操作人員進(jìn)一步對(duì)其采取必要行動(dòng)。注意,該臨界值只適用于文中的測(cè)試系統(tǒng),由于不同系統(tǒng)節(jié)點(diǎn)間的電氣聯(lián)系的差異會(huì)導(dǎo)致各系統(tǒng)的MCD 有所不同,因此需要在離線訓(xùn)練時(shí)計(jì)算系統(tǒng)相應(yīng)的MCD。
本文提出了基于BO-XGBoost 聯(lián)合MIC 二階段防御機(jī)制檢測(cè)電力系統(tǒng)中的虛假數(shù)據(jù)注入攻擊。該機(jī)制將BO-XGBoost 算法作為FDIA 檢測(cè)的基分類(lèi)器區(qū)分正常和攻擊狀態(tài),隨后聯(lián)合MIC 相關(guān)性對(duì)判斷為正常的運(yùn)行狀態(tài)進(jìn)行校驗(yàn),辨識(shí)未被發(fā)現(xiàn)的FDIA。所提出的防御機(jī)制的可行性在新英格蘭IEEE 39 測(cè)試系統(tǒng)上得到驗(yàn)證。從仿真結(jié)果可以得出如下結(jié)論:
1)經(jīng)貝葉斯優(yōu)化改進(jìn)的XGBoost 基分類(lèi)器具有較快的判定速度,且該算法特有的樹(shù)結(jié)構(gòu)能對(duì)特征打分并排序,使其可解釋性較強(qiáng),更好地反應(yīng)不同電力系統(tǒng)變量對(duì)FDIA 的靈敏度,并為后續(xù)MIC的特征選擇提供了依據(jù)。
2)聯(lián)立的MIC 校驗(yàn)器屬于非算法層面結(jié)合,其獨(dú)立于機(jī)器學(xué)習(xí)模型,能夠重新挖掘數(shù)據(jù)間聯(lián)系。在攻擊者只能構(gòu)造非完美攻擊時(shí),通過(guò)節(jié)點(diǎn)間相關(guān)性的變化檢測(cè)出潛藏在儀表中的攻擊向量,這對(duì)分類(lèi)器的誤報(bào)有更準(zhǔn)確的校驗(yàn)作用。這些結(jié)果揭示了電力系統(tǒng)的脆弱性,并進(jìn)一步表明探索有效的FDIA 檢測(cè)方法的必要性。