黃荷, 湯怡乾, 蔣代興, 陳琳, 蔡立孔
(1. 國網(wǎng)福建省電力有限公司, 福建, 福州 350001;2. 國網(wǎng)信通億力科技有限責任公司, 福建, 福州 350001)
隨著泛在電力物聯(lián)網(wǎng)的快速發(fā)展建設(shè),電力物聯(lián)網(wǎng)的源、網(wǎng)、荷、儲之間的信息共享,相互服務的功能成為了當前網(wǎng)絡建設(shè)的主要目標[1-4]。如何提高泛在電力物聯(lián)網(wǎng)中網(wǎng)絡抗攻擊能力,對于降低電網(wǎng)的安全事故具有重要意義。
針對如何提高電網(wǎng)識別,檢測和抵御惡意網(wǎng)絡攻擊的問題,越來越多的學者進行了研究。文獻[5]提出虛假數(shù)據(jù)攻擊會威脅到電網(wǎng)的狀態(tài)估計,為此設(shè)計了一種虛假數(shù)據(jù)注入攻擊方法,采用主成分分析方法將數(shù)據(jù)轉(zhuǎn)換到高維空間,獲取電網(wǎng)的近似結(jié)構(gòu)矩陣,然后構(gòu)造在線攻擊,相比于傳統(tǒng)的檢測方法,該方法具有更好的檢測精度。文獻[6]提出了電網(wǎng)虛假數(shù)據(jù)注入攻擊的非線性分析模型,在GAMS上編程,采用BARON求解,能夠有效檢測到注入的虛假惡意數(shù)據(jù)。文獻[7]針對存在異常值的時候,采用基于魯棒主成分分析的盲攻擊方法,獲取系統(tǒng)的攻擊向量,注入的虛假數(shù)據(jù)仍然能被檢測到。文獻[8]基于狀態(tài)估計方法,采用虛假數(shù)據(jù)注入攻擊雙層非線性優(yōu)化模型,采用KKT(Karush-Kuhn-Tucker)方法將其轉(zhuǎn)換成單層非線性問題,該方法可以提高狀態(tài)估計的可靠性。本文提出了采用機器學習方法對虛假數(shù)據(jù)注入進行攻擊檢測的方法。
泛在電力物聯(lián)網(wǎng)指的是數(shù)采集的數(shù)據(jù)來源廣泛存在于電力網(wǎng)絡當中,通過末端感知節(jié)點[9-10],將電網(wǎng)中的用戶數(shù)據(jù)、電力企業(yè)的數(shù)據(jù)、天氣情況、電力市場價格等眾多信息上傳給上位系統(tǒng)[11-12]。泛在電力物聯(lián)網(wǎng)的結(jié)構(gòu)[13-15]如圖1所示。
圖1 泛在電力物聯(lián)網(wǎng)基本架構(gòu)
在對直流系統(tǒng)進行狀態(tài)估計的時候,令x為待估計狀態(tài)變量,e為測量誤差,則狀態(tài)估計模型表示為式(1):
z=h(x)+e,z=[z1,z2,…,zn]T
(1)
式中,h(x)表示z和x為非線性關(guān)系。當忽略電阻,電壓幅值為1的時候,式(1)可以寫成式(2):
z=Hx+e
(2)
其中,H是m×n的雅可比矩陣,z是測量值。根據(jù)式(3)的目標函數(shù),求取使目標函數(shù)最小的x。
minf(x)=j(x)=(z-Hx)TW-1(z-Hx)
(3)
其中,W是測量誤差對角矩陣。當采用最小二乘法求取式(3)的時候,存在式(4):
(4)
根據(jù)殘差檢測不良數(shù)據(jù),殘差r根據(jù)式(5)求?。?/p>
(5)
虛假數(shù)據(jù)攻擊(FDIAs)的過程表示為設(shè)攻擊向量為b,注入b之后得到的測量值zb如式(6):
b=[b1,b2,…,bm]T,zb=z+b
(6)
設(shè)c是攻擊后對系統(tǒng)的干擾值,則殘差表示為式(7):
(7)
從式(7)可以看出,當b=Hc的時候,式(3)的求解結(jié)果為式(8):
(8)
則不良數(shù)據(jù)檢測的參數(shù)如式(9):
(9)
當b=Hc的時候,篡改后的數(shù)據(jù)能使原本檢測方法失效。當b=Hc的時候存在無數(shù)個解,增加了檢測難度,則攻擊者就可以隨意改動電網(wǎng)數(shù)據(jù)。若攻擊者能夠控制H的時候,對電網(wǎng)的安全運行具有重大威脅。
采用主成分分析(PCA)方法提取測量數(shù)據(jù)的主要特征。
設(shè)有N個樣本,每個樣本包含n個參數(shù),表示為X=(xij)N×n。
(1) 對X進行標準化處理。
(2) 構(gòu)建相關(guān)系數(shù)陣:R=(rij)n×n=X′X。
(3) 求取R的特征根和特征向量,λ1≥λ2≥…≥λn,則有
(10)
(4) 寫出主成分,取m個參數(shù)代替原始數(shù)據(jù)(m Fi=a1iX1+a2iX2+…+aniXn(i=1,2,…,n) (11) XPCA=[F1,F2,…,Fm]=X[a1,a2,…,am] (12) (5) 計算每個參數(shù)主成分的貢獻率: (13) 設(shè)數(shù)據(jù)樣本為N,D={(x1,y1),(x2,y2),…,(xN,yN)},y∈{-1,1}。其中,X={x1,x2,…,xN}是攻擊特征集,y是類標簽。本文的目標是采用GBDT方法找到使x映射到y(tǒng)的損失函數(shù)L(y,F(x))最小,從而判斷出系統(tǒng)是否受到虛假數(shù)據(jù)攻擊[16]。 初始化基學習器F0(x)。攻擊檢測特征訓練集D,損失函數(shù)L(y,F(x)),則使損失函數(shù)最小化的常數(shù)值β如式(14), (14) 定義損失函數(shù)為L(y,F(x))=log(1+exp(-2yF(x)))。 GBDT的過程如圖2所示。 本文的虛假數(shù)據(jù)注入概率過程如下: (1) 令最大迭代次數(shù)為m。假設(shè)上一次循環(huán)損失函數(shù)極小值方向的殘差為rim,則有 (15) (2) 殘差作為決策樹的輸入。求取M棵決策樹的葉節(jié)點區(qū)域Rnm,n=1,2,…,N,則有 圖2 GBDT框圖 (16) (3) 采用式(17)的方法確定最優(yōu)步長βnm,極小化損失函數(shù), (17) (4) 建立分類器Fboost(x),v∈(0,1],則有 (18) (5) 最終的梯度提升決策樹模型表示為式(19): (19) Fboost(x)使虛假數(shù)據(jù)注入攻擊檢測模塊,則數(shù)據(jù)受到虛假數(shù)據(jù)虛假數(shù)據(jù)攻擊的概率及未受到攻擊的概率表示為式(20): (20) 由于GBDT的參數(shù)會影響檢測的精度,所以提出了采用三維自適應果蠅優(yōu)化算法(Three-dimensional adaptive drosophila optimization algorithm, TDADOA)優(yōu)化GBDT的網(wǎng)絡參數(shù)。TDADOA的過程如下所述(見圖3)。 (1) 設(shè)置最大迭代次數(shù)為Mg。果蠅群體數(shù)量Sp。初始位置X_axis,Y_axis,Z_axis。 適應度方差閾值μ,混沌迭代次數(shù)T。 (2) 果蠅尋找食物的公式如式(21)。其中,RandomValue為隨機距離。 (21) (3) 果蠅與原點的距離為Disti,果蠅的味道濃度為Si,則有 (22) (4) 設(shè)適應度函數(shù)為Function(),味道濃度為Smelli,則有 Smelli=Function(Si) (23) (5) 將味道濃度最大的作為最優(yōu)個體: [bestSmell,bestindex]=max(smelli) (24) (6) 求取味道濃度最大的果蠅位置,其他果蠅朝著該果蠅飛行: (25) (7) 求取平均味道濃度Smellavg、方差σ2: (26) (27) (8) 若σ2<μ且T>0, 混沌方程表示為式(28): xt+1=ωxt(1-xt) (28) 式中,xt∈(0,1] ,t是迭代次數(shù)?;煦缢阉靼词?29)進行: Cxt+1=4Cxt(1-Cxt) (29) 式中,Cxt∈[0,1]且Cxt≠{0.12,0.5,0.75}, (30) 將果蠅的位置Xi、Yi、Zi轉(zhuǎn)換成混沌變量CXi、CYi、CZi。令T=T-1,且轉(zhuǎn)至步驟(3)。 若不滿足σ2<μ且T>0,則轉(zhuǎn)步驟(9)。 (9) 執(zhí)行步驟(2)~(8),直到達到最大迭代次數(shù)Maxgen,停止。 圖3 算法流程 采用TDADOA-GBDT,線性支持向量機Linear-SVM,傳統(tǒng)的GBDT和隨機森林RF方法建立虛假數(shù)據(jù)注入攻擊檢測模型。硬件環(huán)境為Intel Core i7-7700HQ CPU,2.8 GHz,內(nèi)存8G,64位操作系統(tǒng),MATLAB 2017b。首先采用PCA方法提取電力量測數(shù)據(jù)的特征。然后采用TDADOA-GBDT方法在IEEE118-bus節(jié)點進行攻擊檢測。圖4是采用PCA算法提取的特征數(shù)與查準率之間的關(guān)系圖。 從圖4可以看出,當采用PCA方法提取的特征維度為16的時候,檢測精度最大,所以本文選取的特征維度為前16個指標。 分別采用LinearSVM、GBDT、RF和TDADOA-GBDT方法對IEEE-14系統(tǒng)和IEEE-118系統(tǒng)的量測數(shù)據(jù)進行攻擊檢測。IEEE-14系統(tǒng)的檢測對比結(jié)果如表1所示。相應算法的ROC曲線對比圖如圖5所示。IEEE-118系統(tǒng)的檢測對比結(jié)果如表2所示。相應算法的ROC曲線對比圖如圖6所示。 圖4 不同維度下攻擊檢測精度 表1 IEEE-14系統(tǒng)檢測結(jié)果對比 表2 IEEE-118系統(tǒng)檢測結(jié)果對比 圖5 IEEE-14系統(tǒng)ROC對比曲線 圖6 IEEE-118系統(tǒng)ROC對比曲線 從圖5和圖6可以看出,在IEEE-14系統(tǒng)和IEEE-118系統(tǒng)中,在誤檢率相等的情況下,本文所提的TDADOA-GBDT的查全率均高于Linear-SVM、RF、GBDT算法,驗證了本文所提方法具有更高的檢測精度。 為了提高泛在電力物聯(lián)網(wǎng)中的網(wǎng)絡通信安全水平,提出了采用PCA方法獲取影響數(shù)據(jù)攻擊檢測精度的主要特征元素,然后采用三維自適應果蠅優(yōu)化算法對梯度提升決策樹方法進行參數(shù)優(yōu)化,采用改進后的算法對提取的量測數(shù)據(jù)進行分類處理,確定出攻擊數(shù)據(jù)。相比于其他傳統(tǒng)算法,本研究所提方法更適用于提高泛在網(wǎng)聯(lián)網(wǎng)的通信安全水平,所提的TDADOA-GBDT方法由于存在算法優(yōu)化過程,增加了計算時間,未來可以對算法的執(zhí)行時間進行優(yōu)化研究。2.3 基于梯度提升決策樹的攻擊檢測模型
2.4 三維自適應果蠅優(yōu)化算法
3 算例仿真
4 總結(jié)