耿志強(qiáng),曾榮甫,徐圓,韓永明,顧祥柏,3
(1 北京化工大學(xué)信息科學(xué)與技術(shù)學(xué)院,北京100029; 2 智能過程系統(tǒng)工程教育部工程研究中心,北京100029;3 中石化煉化工程(集團(tuán))股份有限公司,北京100029)
近幾年來,信息化浪潮席卷全球,信息通信技術(shù)與制造技術(shù)兩方面交叉融合。在工業(yè)方面,隨著信息化和工業(yè)化的融合互補(bǔ),工業(yè)控制系統(tǒng)逐漸地使用標(biāo)準(zhǔn)化的網(wǎng)絡(luò)協(xié)議和公開化的應(yīng)用軟件,這給了不法分子可乘之機(jī),也為入侵檢測(cè)和故障診斷帶來了新挑戰(zhàn)[1-4]。以伊朗爆發(fā)的“震網(wǎng)(Stuxnet)”病毒為例,各國(guó)或多或少地出現(xiàn)了工業(yè)控制系統(tǒng)遭到破壞的情況[5-6];因而入侵檢測(cè)技術(shù)開始成為工控信息安全防護(hù)技術(shù)的重要構(gòu)成之一,為國(guó)內(nèi)外研究人員所重視[7]。在對(duì)入侵進(jìn)行檢測(cè)的過程中,檢測(cè)算法往往要面對(duì)體量大、維度高的數(shù)據(jù)集,因而檢測(cè)出不正常數(shù)據(jù)的過程往往伴隨著較大的計(jì)算復(fù)雜度,并需要較大的硬件容量[8]。然而并不是所有數(shù)據(jù)特征對(duì)檢測(cè)都是有幫助的,因此對(duì)數(shù)據(jù)特征進(jìn)行選擇是一種提高檢測(cè)效率的有效方法[9-11]。優(yōu)化算法常被用于解決特征選擇問題。常用的優(yōu)化算法有遺傳(genetic algorithm, GA)算法[12-13]、二進(jìn)制粒子群優(yōu)化(binary particle swarm optimization, BPSO)算 法[14]、蟻群優(yōu)化(ant colony optimization, ACO)算法[15]、飛蛾撲火優(yōu)化(moth-flame optimization, MFO)算法[16]等。但這些算法在特征選取中隨機(jī)性較大或者容易陷入局部最優(yōu)[17]。
灰狼優(yōu)化(grey wolf optimization,GWO)算法是由Mirjalili 等[18]在2014 年提出的一種元啟發(fā)式生物智能算法,通過模擬狼群捕食機(jī)制對(duì)最優(yōu)值進(jìn)行求解。在實(shí)際應(yīng)用中,由于尋優(yōu)種群的各個(gè)候選解是根據(jù)3 匹頭狼的位置進(jìn)行確定,所以會(huì)出現(xiàn)陷入局部最優(yōu)的情況。為解決這個(gè)問題,Zhou 等[19]使用差分進(jìn)化算法對(duì)GWO 算法的種群進(jìn)行初始化,通過增強(qiáng)初始種群多樣性來加強(qiáng)算法的局部搜索能力。Li等[20]通過融合非線性收斂因子和自適應(yīng)位置更新策略,對(duì)GWO 算法的位置更新過程進(jìn)行優(yōu)化,擴(kuò)大了GWO 算法的搜索范圍。Wu等[21]引進(jìn)了精英對(duì)抗學(xué)習(xí)策略來避免GWO 算法的過早收斂,使GWO 算法的性能得到了提升,這些方法在實(shí)際應(yīng)用中還是有點(diǎn)不足。
因而,本文提出了一種融合隨機(jī)黑洞策略的灰狼優(yōu)化(grey wolf optimization integrated random black hole, RBHGWO)算法,通過隨機(jī)黑洞策略對(duì)種群的候選解的擾動(dòng),使灰狼優(yōu)化算法跳出局部最優(yōu)解的能力得到加強(qiáng)。然后通過標(biāo)準(zhǔn)測(cè)試函數(shù)驗(yàn)證,與粒子群優(yōu)化(particle swarm optimization, PSO)算法、隨機(jī)黑洞粒子群優(yōu)化(particle swarm optimization integrated random black hole,RBHPSO)算法、GWO 算法和優(yōu)勝劣汰的灰狼優(yōu)化(survival of fitness grey wolf optimization, SFGWO)算法對(duì)比,收斂速度較快和尋優(yōu)精度較好。算法應(yīng)用于工控系統(tǒng)入侵檢測(cè)過程中,通過對(duì)檢測(cè)數(shù)據(jù)特征的優(yōu)化選擇,以提高工控系統(tǒng)入侵檢測(cè)的效率。
2008 年,Zhang 等[22]基于黑洞模型提出了隨機(jī)黑洞(random black hole,RBH)策略,并將其應(yīng)用于粒子群優(yōu)化算法,使其得到了更好的優(yōu)化效果。RBH策略模擬自然界的黑洞對(duì)周圍物質(zhì)的吸引過程,依據(jù)自然界的黑洞模型,種群中的粒子有可能會(huì)被黑洞吸引,同時(shí)也具備一定的概率從黑洞中逃逸;在搜索種群中,將當(dāng)前全局最優(yōu)粒子周圍的一個(gè)粒子當(dāng)作黑洞,其他粒子則被當(dāng)作相對(duì)應(yīng)的星體,這些粒子的適應(yīng)度被視為相對(duì)應(yīng)的引力。黑洞模型如圖1所示。
圖1 隨機(jī)黑洞模型Fig.1 Random black hole model
其中,r 為黑洞的半徑;X(t)為當(dāng)前搜索粒子;X(t+1)為下一代搜索粒子;XgB為當(dāng)前全局最優(yōu)粒子;l為區(qū)間[0,1]的隨機(jī)數(shù);s為粒子距離黑洞的距離;p為人為設(shè)置的區(qū)間[0,1]的常數(shù)閾值,表示黑洞吸引X(t+1)的概率,通常設(shè)置為0.1 或0.3 能夠得到較好的結(jié)果[22]。在每一次的迭代過程中,以XgB作為中心形成黑洞,如果l≤p,則該粒子被黑洞吸引,反之則按照原來的方式進(jìn)行更新。當(dāng)粒子被黑洞吸引時(shí),位置更新公式如下
其中,X(t+1)為更新后的粒子位置向量;Xbest為當(dāng)前全局最優(yōu)粒子位置向量;r1為一個(gè)[0,1]的隨機(jī)數(shù),用于控制更新粒子的位置。
GWO 算法模擬了自然界里灰狼種群面對(duì)獵物時(shí)的捕獵機(jī)制和領(lǐng)導(dǎo)等級(jí)制。在一個(gè)灰狼種群中,根據(jù)嚴(yán)格的等級(jí)制度將灰狼種群分為4部分:α、β、δ和γ。同時(shí),整個(gè)灰狼種群狩獵過程分為3 個(gè)階段:搜尋獵物、圍捕獵物和攻擊獵物。
在灰狼種群的狩獵過程中,根據(jù)上述等級(jí)制度建立對(duì)應(yīng)的算法數(shù)學(xué)模型,選定α狼為狼群最優(yōu)解,β 狼和δ 狼分別為次優(yōu)解和季優(yōu)解,而γ 狼設(shè)定為灰狼種群的候選解。在表現(xiàn)最好的3 匹狼α、β 和δ(通常稱為頭狼)的領(lǐng)導(dǎo)下,候選解γ 狼向最優(yōu)區(qū)域逼近并搜索最優(yōu)解。每輪迭代中,不斷通過α、β 和δ 這3個(gè)解來更新候選解γ 的位置,從而預(yù)測(cè)最優(yōu)解可能存在的位置。搜索獵物過程中,灰狼種群追逐位置更新如下
其中,Xp表示當(dāng)前獵物的位置向量;X 表示灰狼的位置向量;A 是隨著系數(shù)a 變化的隨機(jī)變量,用于控制灰狼種群的擴(kuò)大與縮??;C 表示更新位置時(shí)對(duì)獵物(最優(yōu)解)預(yù)測(cè)位置的擾動(dòng)系數(shù),表達(dá)公式如下
其中,r2和r3是在[0,1]范圍內(nèi)的隨機(jī)數(shù);系數(shù)a是在[0,2]范圍內(nèi)隨著迭代次數(shù)增加而線性遞減的控制系數(shù);l 為當(dāng)前迭代次數(shù);maxiter 為最大迭代次數(shù)。
在GWO 算法開始階段,以式(2)~式(5)為基礎(chǔ),首先對(duì)3 匹頭狼的位置進(jìn)行更新。3 匹頭狼的位置在算法模型中被視為當(dāng)前最有可能成為獵物位置,也就是狼群搜索中的最好解。每次迭代過程中,通過更新3 匹頭狼的位置,并求解3 匹頭狼與剩下的γ狼之間的相對(duì)距離,對(duì)剩下的γ狼的位置進(jìn)行調(diào)整。相對(duì)位置的求解公式如下
其中,Xα、Xβ和Xδ分別是指3 匹頭狼當(dāng)前的位置;dα、dβ和dδ分別是通過求解得到的當(dāng)前γ 狼(當(dāng)前解)位置向3 匹頭狼(當(dāng)前最好解)位置趨近的近似距離。通過該距離可以進(jìn)一步得到當(dāng)前解更新后的位置,求解公式如下
其中,t 為當(dāng)前迭代次數(shù)。式(12)通過當(dāng)前表現(xiàn)最好的3 匹頭狼所在的位置來估計(jì)獵物所在的區(qū)域,即在算法模型中通過當(dāng)前的3 個(gè)最好解的值來預(yù)測(cè)最優(yōu)解的值。和其他元啟發(fā)式生物智能算法相比,3 匹頭狼的綜合考慮要比單個(gè)粒子的估計(jì)要好,這在很大程度上有效地降低了種群在前期陷入局部極值的可能性。
特征選擇是為了盡可能減少冗余特征和噪音對(duì)結(jié)果的影響,從而達(dá)到既提升算法的速度又提升算法的準(zhǔn)確率的目的。傳統(tǒng)方法通常直接使用準(zhǔn)確率accuracy 作為適應(yīng)度值,這缺乏對(duì)特征個(gè)數(shù)的探究。當(dāng)使用優(yōu)化算法對(duì)特征進(jìn)行選擇時(shí),有可能出現(xiàn)由于函數(shù)維度的原因,只出現(xiàn)個(gè)位數(shù)甚至只有一個(gè)特征的結(jié)果;這種結(jié)果在進(jìn)行入侵檢測(cè)的仿真實(shí)驗(yàn)中,顯然是不符合實(shí)際的。本文第二部分實(shí)驗(yàn)使用文獻(xiàn)[23]的方法構(gòu)造了一個(gè)適應(yīng)度函數(shù),同時(shí)反映特征個(gè)數(shù)和準(zhǔn)確率之間的關(guān)系,具體公式如下
其中,fitness 表示適應(yīng)度函數(shù)的結(jié)果,λ 表示分類算法使用的特征個(gè)數(shù)。
RBHGWO算法的流程描述如下。
(1)初始化灰狼種群。根據(jù)式(4)、式(5)初始化系數(shù)向量a、A和C,隨機(jī)生成灰狼種群位置。
(2)計(jì)算種群的適應(yīng)度值,選擇當(dāng)前適應(yīng)度值相對(duì)較小的3匹狼作為α、β和δ狼。
(3)融合RBH策略更新狼群位置。使用式(6)~式(11)計(jì)算各參數(shù)的值,根據(jù)計(jì)算得到進(jìn)入隨機(jī)黑洞的概率,通過式(1)或式(12)更新γ狼的位置。
(4)更新GWO算法的參數(shù)系數(shù)向量a、A和C。
(5)判斷算法是否達(dá)到迭代終止條件。如果達(dá)到終止條件,結(jié)束搜索并將α狼作為最優(yōu)解輸出;反之返回步驟(2)繼續(xù)搜索。
為驗(yàn)證本文提出的RBHGWO 算法的優(yōu)化性能,首先選擇了6個(gè)經(jīng)典的單多峰測(cè)試函數(shù),對(duì)該算法進(jìn)行測(cè)試實(shí)驗(yàn)并將實(shí)驗(yàn)結(jié)果和PSO 算法、RBHPSO 算 法、GWO 算 法 和SFGWO 算 法 相 比 較。表1 列出了用于實(shí)驗(yàn)的測(cè)試函數(shù),f1、f2和f3是單峰標(biāo)準(zhǔn)測(cè)試函數(shù),f4、f5、f6是多峰標(biāo)準(zhǔn)測(cè)試函數(shù)。
表1 測(cè)試函數(shù)參數(shù)表Table 1 Test function parameter table
用于實(shí)驗(yàn)的5種智能種群優(yōu)化算法的初始種群數(shù)量均為30,測(cè)試函數(shù)的維度均為30,PSO 算法的參數(shù)參考文獻(xiàn)[24]。表2 列出了用于仿真實(shí)驗(yàn)各算法的參數(shù)設(shè)置,其中SFGWO 算法狼群優(yōu)劣的邊界Bound=0.618;本文提出的RBHGWO 算法的黑洞吸引概率p=0.1,黑洞半徑R=0.01。
依照上述初始條件對(duì)6種測(cè)試函數(shù)進(jìn)行仿真實(shí)驗(yàn),5 種優(yōu)化算法互不干擾地迭代500 次,實(shí)驗(yàn)結(jié)果如圖2 所示。從圖2 可以看出,與PSO、RBHPSO、GWO 和SFGWO 算法相比,本文提出的RBHGWO 算法能夠達(dá)到最優(yōu)的迭代精度,并表現(xiàn)出了更快的收斂速度。其中在多峰二次的Rastrigin函數(shù)和具有大量局部最優(yōu)值的多峰Griewank 函數(shù)測(cè)試中,RBHGWO 算法分別在200代和130代左右便收斂到實(shí)際最優(yōu)值,體現(xiàn)了其優(yōu)越性。
表2 算法參數(shù)表Table 2 Algorithm parameter table
為得到更加易于對(duì)比的數(shù)值結(jié)果,將上述實(shí)驗(yàn)重復(fù)進(jìn)行30次,對(duì)實(shí)驗(yàn)結(jié)果求平均值和標(biāo)準(zhǔn)差。表3 和表4 分別展示了5 種優(yōu)化算法迭代結(jié)果的平均值和標(biāo)準(zhǔn)差。從表中實(shí)驗(yàn)結(jié)果可以看出,本文提出的RBHGWO 算法可以使測(cè)試函數(shù)尋優(yōu)的精度提高。在測(cè)試函數(shù)維度為30 的前提下,對(duì)f1函數(shù)的測(cè)試平均值要優(yōu)于GWO 算法26 個(gè)數(shù)量級(jí),對(duì)f2函數(shù)的測(cè)試平均值要優(yōu)于GWO算法14個(gè)數(shù)量級(jí),對(duì)f6函數(shù)的測(cè)試平均值要優(yōu)于GWO 算法3 個(gè)數(shù)量級(jí)。尤其在對(duì)多峰函數(shù)f4和f6的實(shí)驗(yàn)中,RBHGWO 算法的結(jié)果很快收斂于0。實(shí)驗(yàn)結(jié)果說明,本文提出的RBHGWO 算法有著較好的收斂精度和穩(wěn)定性,并且具有跳出局部最優(yōu)解的能力。
田納西-伊斯曼(Tennessee-Eastman,TE)過程由Downs等[25]在1993年提出并創(chuàng)建。其原型為一個(gè)真實(shí)的化工流程,過程中的主要部件包括分析器、反應(yīng)器、冷凝器、汽提塔、壓縮機(jī)和氣液分離器等。各個(gè)部件之間的反應(yīng)和協(xié)同工作包含12個(gè)操縱變量,并產(chǎn)生41 個(gè)測(cè)量變量,這也導(dǎo)致TE 過程是一個(gè)多變量,數(shù)據(jù)維度高的復(fù)雜控制系統(tǒng)。本實(shí)驗(yàn)使用的是由Ricker 提出的MATLAB 仿真模型[26],控制策略按照文獻(xiàn)[27]的描述進(jìn)行。仿真數(shù)據(jù)由SIMULINK模塊產(chǎn)生,仿真時(shí)間設(shè)為50 h,每小時(shí)產(chǎn)生100 組數(shù)據(jù),共5000 組數(shù)據(jù)。TE 過程具體的工藝流程如圖3所示。
表3 實(shí)驗(yàn)結(jié)果平均值Table 3 Average of experimental results
圖2 優(yōu)化函數(shù)迭代結(jié)果Fig.2 Iterative results of optimization algorithm
表4 實(shí)驗(yàn)結(jié)果標(biāo)準(zhǔn)差Table 4 Standard deviation of experimental results
圖3 TE過程工藝流程圖Fig.3 TE process flow chart
本文實(shí)驗(yàn)使用的隱蔽攻擊方式來自文獻(xiàn)[28]使用的隱蔽攻擊模型,如
其中,c 為常數(shù),說明偏置注入的程度;si(t)為t時(shí)間段的狀態(tài),類型為偏置注入的隱蔽攻擊模型在SIMULINK 中實(shí)現(xiàn)。為了模擬隱蔽攻擊,在反應(yīng)器溫度控制回路中添加了一個(gè)時(shí)間設(shè)置為20 h 的延時(shí)模塊,并選用c=1 時(shí)的反應(yīng)器溫度變化作為測(cè)試數(shù)據(jù)。在運(yùn)行到20 h 時(shí),反應(yīng)器遭到了來自偏置注入信號(hào)的攻擊,溫度從123℃左右突然降至122℃左右,隨后穩(wěn)定在122℃左右繼續(xù)進(jìn)行反應(yīng),變化過程如圖4 所示。模擬上述偏置注入攻擊后,隨著反應(yīng)器溫度的變化,其他測(cè)量變量也隨之變化,由此得到了對(duì)應(yīng)的仿真實(shí)驗(yàn)數(shù)據(jù)集。
圖4 反應(yīng)器溫度變化的過程Fig.4 Process of reactor temperature change
用于仿真實(shí)驗(yàn)的各優(yōu)化算法參數(shù)設(shè)置見表2,5種智能種群優(yōu)化算法的初始種群數(shù)量均為10,互不干擾地迭代50 次。實(shí)驗(yàn)選用了常用的機(jī)器學(xué)習(xí)算法作為檢測(cè)異常的分類器:KNN[29]、NBC[30]和DT[31],表5~表7 分別記錄著5 種優(yōu)化算法對(duì)3 種分類器進(jìn)行特征選擇后的實(shí)驗(yàn)結(jié)果,仿真實(shí)驗(yàn)進(jìn)行的次數(shù)為20次。
表5 KNN分類器的實(shí)驗(yàn)結(jié)果Table 5 Experimental results of KNN classifier
表6 NBC分類器的實(shí)驗(yàn)結(jié)果Table 6 Experimental results of NBC classifier
表7 DT分類器的實(shí)驗(yàn)結(jié)果Table 7 Experimental results of DT classifier
本文第一部分實(shí)驗(yàn)使用PSO、RBHPSO、GWO、SFGWO、RBHGWO 共5 種優(yōu)化算法,通過對(duì)6 種測(cè)試函數(shù)進(jìn)行測(cè)試。實(shí)驗(yàn)結(jié)果表明,本文提出RBHGWO 算法在保持GWO 算法較快的收斂速度的同時(shí),又能跳出局部最優(yōu)解的陷阱,具有較好的收斂精度和全局搜索能力。
第二部分實(shí)驗(yàn)使用上述5 種優(yōu)化算法,分別采用KNN、NBC、DT三種分類器,利用模擬隱蔽攻擊的入侵檢測(cè)數(shù)據(jù)集進(jìn)行仿真實(shí)驗(yàn)。實(shí)驗(yàn)證明了RBHGWO 算法相對(duì)于傳統(tǒng)的PSO 算法,能夠大幅度縮短運(yùn)行時(shí)間。而對(duì)于GWO 算法而言,在采用DT 分類器進(jìn)行實(shí)驗(yàn)時(shí),雖然RBHGWO 算法的運(yùn)行時(shí)間略長(zhǎng)于GWO 算法,但求解效果卻要好于GWO算法,因而,改進(jìn)算法具有較好的收斂精度和穩(wěn)定性。
文本提出了一種融合隨機(jī)黑洞策略的灰狼優(yōu)化算法,通過隨機(jī)黑洞策略對(duì)每一次種群位置更新進(jìn)行擾動(dòng),增強(qiáng)了迭代過程中的種群多樣性,彌補(bǔ)了GWO 算法在迭代過程中缺乏全局搜索能力、易早熟而收斂于局部最優(yōu)解的缺點(diǎn)。結(jié)合工控系統(tǒng)入侵檢測(cè)的仿真實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果也表明RBHGWO算法在收斂精度、穩(wěn)定性和運(yùn)行效率上具有較好的效果。因此本文提出的RBHGWO 算法在工控系統(tǒng)入侵檢測(cè)中具有較好的實(shí)用性和有效性。