, ,
(1.華東理工大學(xué)化工過(guò)程先進(jìn)控制和優(yōu)化技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,上海 200237; 2.中國(guó)信息安全測(cè)評(píng)中心,北京 100085)
基于改進(jìn)蝙蝠算法的工業(yè)控制系統(tǒng)入侵檢測(cè)
李金樂1,王華忠1,陳冬青2
(1.華東理工大學(xué)化工過(guò)程先進(jìn)控制和優(yōu)化技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,上海200237;2.中國(guó)信息安全測(cè)評(píng)中心,北京100085)
針對(duì)蝙蝠算法(BA)易陷入局部極小的缺點(diǎn),提出了兩點(diǎn)改進(jìn):(1)在蝙蝠位置更新時(shí)考慮了當(dāng)前局部最優(yōu)解分布對(duì)算法的影響;(2)將差分進(jìn)化算法(DE)中的變異操作遷移到蝙蝠算法中,采用隨機(jī)性變異的方式增加了種群多樣性,提升了算法局部搜索能力,并通過(guò)典型測(cè)試函數(shù)驗(yàn)證了本文算法的優(yōu)越性。將該算法用于工業(yè)控制系統(tǒng)(ICS)入侵檢測(cè)中支持向量機(jī)(SVM)分類器的參數(shù)優(yōu)化,使用工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行仿真研究。結(jié)果表明,與DE、粒子群算法(PSO)和遺傳算法(GA)等優(yōu)化算法相比,其優(yōu)化的SVM入侵檢測(cè)模型在檢測(cè)率、漏報(bào)率和誤報(bào)率等指標(biāo)上都有顯著提升。
改進(jìn)蝙蝠算法; 最優(yōu)解分布; 差分進(jìn)化算法; 支持向量機(jī); 工業(yè)控制系統(tǒng); 入侵檢測(cè)
“震網(wǎng)”病毒[1]敲響了工業(yè)控制系統(tǒng)(Industry Control System,ICS)信息安全的警鐘。2016年11月3日工信部下發(fā)了《工業(yè)控制系統(tǒng)信息安全防護(hù)指南》,強(qiáng)調(diào)了構(gòu)建ICS信息安全防御體系的重要性。工業(yè)防火墻因其無(wú)法抵擋來(lái)自局域網(wǎng)內(nèi)部的攻擊,使得防御顯得被動(dòng)。入侵檢測(cè)作為繼防火墻之后的第2道防線[2],能夠起到主動(dòng)防御的作用,因此,研究ICS入侵檢測(cè)技術(shù)成為信息安全領(lǐng)域的一個(gè)熱點(diǎn)[3-5]。
入侵檢測(cè)在本質(zhì)上可以歸類為模式識(shí)別中的分類問(wèn)題[4],常用的入侵檢測(cè)分類算法有神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)(SVM)、決策樹等[6]。其中,SVM作為一種統(tǒng)計(jì)學(xué)習(xí)方法,以其優(yōu)越的分類性能被廣泛應(yīng)用于入侵檢測(cè)系統(tǒng)的構(gòu)建,但其分類性能主要依賴于懲罰常數(shù)C和核函數(shù)參數(shù)g的選擇[3],參數(shù)選取的適當(dāng)與否直接關(guān)系到入侵檢測(cè)分類效果的優(yōu)劣。因此,SVM入侵檢測(cè)分類器參數(shù)C和g的優(yōu)化成為研究的重點(diǎn)和難點(diǎn)。隨著智能優(yōu)化算法的迅猛發(fā)展,一些隨機(jī)優(yōu)化算法如遺傳算法(GA)、粒子群算法(PSO)等[7]被應(yīng)用于工業(yè)控制系統(tǒng)入侵檢測(cè)領(lǐng)域并發(fā)揮了重要作用。王華忠等[7]應(yīng)用改進(jìn)的PSO算法優(yōu)化SVM入侵檢測(cè)分類器的參數(shù),構(gòu)建了PSO-SVM工控入侵檢測(cè)框架并取得了良好的效果。尚文利等[8]使用PSO對(duì)單類支持向量機(jī)(OCSVM)的參數(shù)進(jìn)行優(yōu)化,提出了PSO-OCSVM的工業(yè)控制系統(tǒng)入侵檢測(cè)算法,通過(guò)仿真驗(yàn)證了算法的有效性。
蝙蝠算法[9](BA)是通過(guò)模擬蝙蝠利用回聲定位進(jìn)行搜索和捕食的特性模擬出的一種實(shí)數(shù)編碼型全局隨機(jī)搜索算法。BA算法模型簡(jiǎn)單,需要調(diào)節(jié)的參數(shù)少且在低維空間尋優(yōu)效果好,因此特別適合用于SVM入侵檢測(cè)分類器的參數(shù)尋優(yōu)。BA與其他隨機(jī)優(yōu)化算法一樣也容易陷入局部極小[10],因此本文對(duì)基本蝙蝠算法提出了兩點(diǎn)改進(jìn):(1)不僅考慮當(dāng)前全局最優(yōu)解在算法中的作用,也考慮當(dāng)前局部最優(yōu)解的分布對(duì)算法的影響,使得算法向潛在的全局最優(yōu)方向搜索;(2)因BA缺乏變異機(jī)制,故將差分進(jìn)化算法 (DE)[11]的變異引入BA,采用隨機(jī)性變異的方法增加算法的種群多樣性,增強(qiáng)了算法的局部搜索能力。將改進(jìn)蝙蝠算法(IBA)用于工業(yè)系統(tǒng)入侵檢測(cè)中對(duì)SVM分類器參數(shù)進(jìn)行尋優(yōu),使用密西西比州立大學(xué)(MSU)工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集[2]進(jìn)行驗(yàn)證,在MATLAB平臺(tái)下進(jìn)行仿真測(cè)試,結(jié)果驗(yàn)證了本文算法的有效性。
1.1基本蝙蝠算法
fi=fmin+(fmax-fmin)β
(1)
(2)
(3)
其中:fi為第i只蝙蝠的脈沖發(fā)射頻率;fmin和fmax分別為脈沖發(fā)射頻率的最大和最小值;β為[0,1]的隨機(jī)數(shù);x*為當(dāng)前全局最優(yōu)解?;掘鹚惴ㄍㄟ^(guò)從最優(yōu)解集中隨機(jī)選取一個(gè)解然后施加隨機(jī)擾動(dòng)來(lái)獲得一個(gè)新的解,如式(4)所示。
xnew=xold+εAt
(4)
其中:At是當(dāng)前蝙蝠種群響度的平均值;ε是在[-1,1]上服從均勻分布的隨機(jī)值。
響度Ai和脈沖速率Ri的更新公式分別為式(5)和式(6):
(5)
(6)
其中α∈(0,1) ,γ>0。由公式可知,在迭代過(guò)程中Ai逐步遞減,Ri逐漸遞增。
基本蝙蝠算法的迭代過(guò)程如下:
Step 1 對(duì)算法參數(shù)fmin、fmax、γ、最大響度A、響度衰減因子α、最大脈沖頻率R0、最大迭代次數(shù)IterMax等參數(shù)初始化,種群速度和位置進(jìn)行初始化并計(jì)算機(jī)每個(gè)個(gè)體的適應(yīng)度得到初始化的最優(yōu)解x*。
Step 5 算法是否達(dá)到終止條件或者最大迭代步數(shù),如果是,則算法結(jié)束;若否,則返回Step 2繼續(xù)迭代。
1.2改進(jìn)的蝙蝠算法
蝙蝠算法和其他優(yōu)化算法一樣都易于陷入局部極小而導(dǎo)致算法的優(yōu)化性能下降,改進(jìn)的蝙蝠算法(IBA)主要包括以下兩點(diǎn):
(1) 針對(duì)算法的全局和局部搜索能力進(jìn)行改進(jìn),考慮了當(dāng)前局部極值點(diǎn)的分布對(duì)算法搜索的影響。
(7)
令λ1+λ2=1且λ1>0,λ2≥0。
圖1 局部極小值分布曲線Fig.1 Local minimum distribution curve
我們期望算法在迭代早期具有較強(qiáng)的全局搜索能力能夠跳出局部極小,而在迭代后期以當(dāng)前全局最優(yōu)為主進(jìn)行局部搜索。可以令
(8)
λ1=1-λ2
(9)
(10)
其中:Iter是當(dāng)前迭代次數(shù);ξ是[0,1]的1個(gè)實(shí)數(shù)。可以分析出隨著迭代次數(shù)的增大,λ2線性遞減,而λ1則從1-ξ線性遞增到1。λ1和λ2的變化規(guī)律符合預(yù)期設(shè)想:即迭代初期考慮局部最優(yōu)解的分布對(duì)算法的
影響增強(qiáng)全局搜索能力;迭代后期,以當(dāng)前全局最優(yōu)解為主導(dǎo)進(jìn)行局部搜索,使得算法具有自適應(yīng)性。同時(shí)對(duì)速度更新公式采用線性權(quán)重遞減策略(式(10)),ωmax和ωmin分別為慣性權(quán)重的最大和最小值。
(2) 考慮到蝙蝠算法因缺乏變異機(jī)制而導(dǎo)致局部搜索能力不強(qiáng)的缺陷,將DE中的變異機(jī)制引入BA中,使用隨機(jī)性變異策略增強(qiáng)種群多樣性,提升算法局部搜索能力。本文采用標(biāo)準(zhǔn)DE/rand/1/bin[11]進(jìn)行變異操作,公式如下:
η=e1-IterMax/(IterMax-Iter+1)
(11)
F=F0×2η
(12)
xnew=xr1+F(xr2-xr3)
(13)
其中:η為變異算子;F為縮放因子;F0為縮放因子的初始值;xr1,xr2,xr3是從當(dāng)前最優(yōu)解集中隨機(jī)選出的3個(gè)解。針對(duì)這一改進(jìn),則將1.1節(jié)算法流程中Step 3變更如下:
在改進(jìn)算法中,無(wú)論條件rand1>Ri是否滿足,總有新解xnew的產(chǎn)生,增強(qiáng)了種群多樣性,進(jìn)而強(qiáng)化了算法的局部搜索能力,提升了算法的優(yōu)化效果。
1.3改進(jìn)蝙蝠算法的驗(yàn)證測(cè)試
通過(guò)比較改進(jìn)蝙蝠算法(IBA)與DE、PSO和基本BA算法對(duì)標(biāo)準(zhǔn)測(cè)試函數(shù)的優(yōu)化效果,驗(yàn)證了改進(jìn)算法的有效性,測(cè)試函數(shù)見表1。上述幾種算法的種群數(shù)量均為50,迭代次數(shù)為500,其中IBA和BA的參數(shù)取值均相同。由于篇幅限制,本文僅給出Girewank函數(shù)和Rosenbrock函數(shù)[12]在維度為30時(shí)的仿真結(jié)果,分別如圖2和圖3所示。從仿真結(jié)果可以看出,IBA的函數(shù)優(yōu)化性能遠(yuǎn)好于基本BA,且IBA的總體優(yōu)化效果也優(yōu)于PSO、DE等算法。
表1 測(cè)試函數(shù)
圖2 Girewank函數(shù)優(yōu)化效果Fig.2 Girewank function optimization results
圖3 Rosenbrock函數(shù)優(yōu)化效果Fig.3 Rosenbrock function optimization results
2.1SVM算法原理
SVM[3]算法的核心思想是使用VC維理論和結(jié)構(gòu)化風(fēng)險(xiǎn)最小化原理[6],在有限數(shù)量的樣本上獲取具有最佳泛化能力的模型。通過(guò)將低維空間的樣本數(shù)據(jù)映射到高維空間進(jìn)而求解最優(yōu)分類超平面。SVM通過(guò)使用核函數(shù)方法,能夠有效避免在高維空間的運(yùn)算,把求解高維空間最優(yōu)超平面問(wèn)題簡(jiǎn)化為原樣本空間上的凸二次型尋優(yōu)問(wèn)題。SVM有效地解決了樣本特征的維數(shù)問(wèn)題且算法的復(fù)雜度與維數(shù)無(wú)關(guān)。
假設(shè)樣本空間為{(x1,y1),(x2,y2),…,(xm,ym)},其中輸入xi∈Rn,類標(biāo)簽yi∈{-1,1},m為樣本數(shù)量,n為輸入特征維數(shù)。使用SVM進(jìn)行分類,目標(biāo)函數(shù)以及約束如下:
(14)
(15)
其中:k(xi,xj)為核函數(shù);αi為拉格朗日乘子,最終得到分類結(jié)果為
(16)
SVM可選用多種核函數(shù)包括多項(xiàng)式核、線性核、高斯核以及傅里葉核等[3]。本文使用高斯核函數(shù),即
(17)
本文使用IBA算法對(duì)參數(shù)C和g進(jìn)行優(yōu)化。此外,傳統(tǒng)SVM分類器只針對(duì)兩分類問(wèn)題進(jìn)行求解,本文需對(duì)多種入侵形式進(jìn)行識(shí)別,故用一對(duì)一方式(one-versus-one,1-v-1 SVMS)構(gòu)造k(k-1)/2個(gè) SVM分類器(k為分類類別數(shù)目),采用最大贏投票法(Max-Wins Voting)實(shí)現(xiàn)ICS網(wǎng)絡(luò)攻擊形式的多類分類。
2.2基于IBA-SVM的工控入侵檢測(cè)算法
采用離線訓(xùn)練的方式構(gòu)建IBA-SVM入侵檢測(cè)算法模型,應(yīng)用工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行仿真研究,在訓(xùn)練過(guò)程中使用IBA算法搜索SVM入侵檢測(cè)分類器的最優(yōu)懲罰常數(shù)C和最優(yōu)高斯核函數(shù)參數(shù)g,然后使用訓(xùn)練好的SVM入侵檢測(cè)模型在測(cè)試集上進(jìn)行測(cè)試評(píng)估,以驗(yàn)證IBA對(duì)入侵檢測(cè)算法模型的參數(shù)優(yōu)化的有效性。IBA-SVM入侵檢測(cè)模型構(gòu)建流程如圖4所示。算法描述如下:
Step 1 將仿真數(shù)據(jù)劃分為測(cè)試數(shù)據(jù)和訓(xùn)練數(shù)據(jù),并進(jìn)行歸一化處理。
Step 2 初始化IBA算法的相關(guān)參數(shù)(迭代次數(shù)、慣性權(quán)重最大最小值、搜索邊界值、縮放因子初始F0、ξ、γ、頻率fmin和fmax、響度衰減因子α、響度A和脈沖速率R)。
Step 3 將SVM參數(shù)C和g作為優(yōu)化對(duì)象,使用訓(xùn)練集對(duì)SVM模型進(jìn)行訓(xùn)練,取5折交叉驗(yàn)證意義下的分類精度的相反數(shù)作為適應(yīng)度。
Step 4 根據(jù)適應(yīng)度最小準(zhǔn)則,使用IBA算法進(jìn)行迭代搜索并進(jìn)行必要的越界處理,找出各個(gè)蝙蝠個(gè)體的最優(yōu)解和當(dāng)前種群的全局最優(yōu)解。
Step 5 判斷是否滿足算法終止條件。若迭代已達(dá)到最大迭代次數(shù),或者個(gè)體的最佳適應(yīng)度已經(jīng)達(dá)到指定精度,算法結(jié)束迭代,轉(zhuǎn)至Step 6;否則返回Step 3循環(huán)進(jìn)行迭代。
Step 6 選擇全局適應(yīng)度最佳的參數(shù)C-best和g-best建立SVM分類器模型,最終得到基于IBA-SVM的ICS網(wǎng)絡(luò)入侵檢測(cè)模型。
圖4 IBA-SVM入侵檢測(cè)算法流程圖Fig.4 Flowchart of IBA-SVM intrusion detection algorithm
3.1數(shù)據(jù)集和預(yù)處理
本文使用的數(shù)據(jù)集是由MSU基礎(chǔ)設(shè)施保護(hù)中心于2014年建立的工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集[2],數(shù)據(jù)源為天然氣管道ICS網(wǎng)絡(luò)層數(shù)據(jù),數(shù)據(jù)經(jīng)過(guò)數(shù)值化處理,共包含4種類別的攻擊:命令注入攻擊(Command Injection)、響應(yīng)注入攻擊(Response Injection)、拒絕服務(wù)攻擊(Denial of Service,DoS)、偵察攻擊(Reconnaissance)。這4種攻擊類別分別對(duì)應(yīng)不同的攻擊形式。X=(x1,x2,…,xn,y)為數(shù)據(jù)集中每一條數(shù)據(jù)記錄的存儲(chǔ)形式,其中x1,x2,…,xn為每條數(shù)據(jù)的n個(gè)特征,y為攻擊類別標(biāo)簽值。數(shù)據(jù)集中每條數(shù)據(jù)包含26個(gè)特征和1個(gè)標(biāo)簽值。攻擊形式和對(duì)應(yīng)的分類標(biāo)簽如表2所示。
表2 攻擊形式及仿真分類標(biāo)簽
3.2仿真參數(shù)設(shè)置
所有算法都由MATLAB語(yǔ)言編程實(shí)現(xiàn),仿真平臺(tái):Intel i7-4720 CPU,內(nèi)存8 GB,Win10 64位操作系統(tǒng)。首先將入侵檢測(cè)數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,從6 000組數(shù)據(jù)中抽取4 000組作為訓(xùn)練集,余下2 000組作為測(cè)試集。IBA算法群初始化:種群大小設(shè)置為20,最大迭代次數(shù)IterMax=50,搜索維數(shù)d=2,F0=0.5,ξ=0.6,fmin=0,fmax=10,γ=0.85,A=5,α=0.95,R0=1,ωmax和ωmin分別為0.9和0.2。本文中PSO、DE、GA等算法迭代次數(shù)和種群數(shù)量和IBA算法相同。
使用IBA對(duì)SVM懲罰常數(shù)C和核函數(shù)參數(shù)g進(jìn)行迭代尋優(yōu),C和g采用實(shí)數(shù)編碼且尋優(yōu)范圍都是0.000 01~10 000。取SVM分類器對(duì)4 000組訓(xùn)練數(shù)據(jù)在5折交叉驗(yàn)證意義下得到的準(zhǔn)確率的相反數(shù)作為適應(yīng)度,選取訓(xùn)練過(guò)程適應(yīng)度最優(yōu)(最小)的SVM入侵檢測(cè)模型對(duì)2 000組測(cè)試數(shù)據(jù)進(jìn)行分類,評(píng)價(jià)算法的尋優(yōu)效果。
3.3仿真結(jié)果
3.3.1 訓(xùn)練結(jié)果分析 為比較算法的優(yōu)化效果,除了對(duì)基本BA和IBA進(jìn)行仿真以外,也對(duì)DE、PSO及GA的SVM參數(shù)尋優(yōu)進(jìn)行了評(píng)估,種群數(shù)量和迭代次數(shù)都與IBA算法相同。選擇每種算法每代的最佳適應(yīng)度個(gè)體作為當(dāng)前全局最優(yōu)解,則迭代尋優(yōu)過(guò)程中,各代最優(yōu)適應(yīng)度曲線如圖5所示,算法的運(yùn)行時(shí)間和最終的優(yōu)化精度如表3所示。
圖5 不同算法訓(xùn)練精度曲線圖Fig.5 Training accuracy curves of each algorithm
表3 訓(xùn)練時(shí)間和訓(xùn)練精度
從表3和圖5可以看出,IBA算法對(duì)SVM訓(xùn)練參數(shù)的尋優(yōu)精度最高為96.84%,GA的尋優(yōu)能力最弱,訓(xùn)練精度僅為93.20%,PSO和DE尋優(yōu)精度相當(dāng)。從算法的收斂速度上看,BA的收斂速度最快,第5代左右就收斂到最優(yōu),IBA的收斂代數(shù)僅次于BA,但I(xiàn)BA在訓(xùn)練精度上占據(jù)絕對(duì)優(yōu)勢(shì)。
從表3可看出,雖然IBA每一代都會(huì)有xnew產(chǎn)生,但是對(duì)IBA算法的運(yùn)行時(shí)間影響并不是很大,IBA-SVM訓(xùn)練用時(shí)比BA-SVM僅增加了0.87% (11 s),因此在算法運(yùn)行時(shí)間層面上并不會(huì)影響IBA算法的正常應(yīng)用,并且IBA與DE、PSO等算法的運(yùn)行時(shí)間基本保持在同一水平上。GA-SVM的訓(xùn)練時(shí)間比本文所列的其他算法都要長(zhǎng)許多。
3.3.2 測(cè)試結(jié)果分析
(1) 總體檢測(cè)效果分析。檢測(cè)率、誤報(bào)率、漏報(bào)率是評(píng)價(jià)入侵檢測(cè)分類器性能的主要指標(biāo)[10],基于訓(xùn)練過(guò)程中優(yōu)化得到的SVM的訓(xùn)練參數(shù)構(gòu)建的SVM入侵檢測(cè)分類器,用2 000組數(shù)據(jù)進(jìn)行測(cè)試,得到整體的檢測(cè)率、漏報(bào)率、誤報(bào)率如表4所示。
表4 總體入侵檢測(cè)結(jié)果
IBA-SVM的檢測(cè)率為97.2%,在所有算法中檢測(cè)率最高,而BA-SVM的檢測(cè)率僅為94.6%;同時(shí),IBA-SVM的誤報(bào)率僅為0.26%,漏報(bào)率也僅為1.74%,遠(yuǎn)遠(yuǎn)低于其他算法的誤報(bào)率和漏報(bào)率。結(jié)合表3可以發(fā)現(xiàn),IBA優(yōu)化的SVM具有很好的泛化性能,而GA的泛化能力最差,訓(xùn)練精度為93.20%,測(cè)試精度僅為88.3%。同時(shí)本文也比較了其他算法對(duì)該數(shù)據(jù)集的評(píng)估結(jié)果,如Naive Bayes算法[7]和標(biāo)準(zhǔn)SVM算法[13]。
(2) 各攻擊類別檢測(cè)效果分析。MSU工控入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集[2]包含4種類別、7種形式的攻擊,針對(duì)上述算法的仿真結(jié)果統(tǒng)計(jì)出各個(gè)算法在4種攻擊類別上的識(shí)別準(zhǔn)確率如圖6所示。
圖6 各個(gè)攻擊類別的檢測(cè)率曲線Fig.6 Detection rate curves for each attack category
從圖6可以非常明顯地看出IBA算法的優(yōu)越性,IBA-SVM在響應(yīng)注入攻擊、命令注入攻擊、拒絕服務(wù)攻擊和偵察攻擊4個(gè)方面檢測(cè)效果都明顯高于BA、PSO、DE、GA算法,尤其在命令注入攻擊和拒絕服務(wù)攻擊的檢測(cè)上性能提升尤為顯著。
各個(gè)算法針對(duì)8種攻擊形式(包括正常數(shù)據(jù))的檢測(cè)準(zhǔn)確率如圖7所示。從整體來(lái)看,IBA-SVM針對(duì)每種攻擊形式的檢測(cè)率基本上都是最高的,尤其是在NMRI、MFCI、DoS這3種攻擊檢測(cè)性能上,IBA較之于其他幾種優(yōu)化算法優(yōu)化的SVM入侵檢測(cè)模型,分類性能提升十分顯著。同時(shí)也可以看出,各個(gè)算法對(duì)Normal、CMRI、RECO等類別的數(shù)據(jù)檢測(cè)率都非常高,尤其是對(duì)RECO,各算法對(duì)該攻擊都有接近100%的檢測(cè)率。
圖7 各個(gè)攻擊形式的檢測(cè)率曲線Fig.7 Detection rate curves for each attack form
圖8所示為IBA-SVM入侵檢測(cè)模型對(duì)測(cè)試集中2 000組數(shù)據(jù)的實(shí)際分類結(jié)果和理論分類結(jié)果的對(duì)比結(jié)果,從圖中可以直接觀察出測(cè)試集數(shù)據(jù)的分布和錯(cuò)誤分類數(shù)據(jù)的分布情況。
圖8 IBA-SVM測(cè)試數(shù)據(jù)分類結(jié)果Fig.8 IBA-SVM classification results of test data
蝙蝠算法是一種新興的全局隨機(jī)搜索算法,但具有易陷入局部最優(yōu)、局部深度搜索能力弱、優(yōu)化精度低等缺陷。本文針對(duì)這些缺陷,提出了2點(diǎn)改進(jìn)。首先考慮隨機(jī)局部最優(yōu)點(diǎn)對(duì)算法搜索的影響,在速度更新公式加入隨機(jī)局部最優(yōu)解的作用,讓算法具有自適應(yīng)性:即在迭代初期考慮全局性,迭代后期專注于局部深度搜索。其次是將差分變異引入BA算法中,采用DE/rand/1/bin模式進(jìn)行變異操作,增加了種群多樣性和局部深度搜索能力,從而提高了算法的優(yōu)化精度?;贗BA,本文建立了基于IBA-SVM的ICS入侵檢測(cè)模型,用IBA算法對(duì)SVM的參數(shù)C和g進(jìn)行尋優(yōu)。使用MSU的ICS入侵檢測(cè)標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行仿真研究,結(jié)果表明:IBA-SVM入侵檢測(cè)精度最高,且誤報(bào)率、漏報(bào)率等各項(xiàng)指標(biāo)均優(yōu)于經(jīng)BA、PSO、DE及GA等算法優(yōu)化的SVM入侵檢測(cè)模型,驗(yàn)證了IBA在實(shí)際工程應(yīng)用場(chǎng)景中的有效性,拓展了IBA的應(yīng)用領(lǐng)域。
[1] JIANG J,YASAKETHU L.Anomaly detection via one class svm for protection of scada systems[C]// 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (Cyber C).USA:IEEE,2013:82-88.
[2] NADER P,HONEINE P,BEAUSEROY P.One-class classification for intrusion detection in SCADA systems [J].IEEE Transactions on Industrial Informatics,2014,10(4):2308-2317.
[3] YOO H,SHON T.Novel approach for detecting network anomalies for substation automation based on IEC 61850[J].Multimedia Tools and Applications,2015,74(1):303-318.
[4] BERE M,MUYINGI H.Initial investigation of industrial control system (ICS) security using artifiicial inmue system (AIS)[C]//Internation Conference on Emerging Trends in Networks and Computer Communication.USA:IEEE,2015:79-84.
[5] GAO W,MORRIS T,REAVES B,etal.On SCADA control system command and response injection and intrusion detection[C]//eCrime Researchers Summit (eCrime),2010.USA:IEEE,2010:1-9.
[6] BEAVER J M,BORGES-HINK R C,BUCKNER M A.An evaluation of machine learning methods to detect malicious SCADA communications[C]//International Conference on Machine Learning and Applications.USA:IEEE,2013:54-59.
[7] 王華忠,楊智慧,顏秉勇,等.融合PCA和PSO-SVM方法在工控入侵檢測(cè)中的應(yīng)用[J].科技通報(bào),2016(1):80-85.
[8] 尚文利,李琳,萬(wàn)明,等.基于優(yōu)化單類支持向量機(jī)的工業(yè)控制系統(tǒng)入侵檢測(cè)算法[J].信息與控制,2015,44(6):678-684.
[9] 鄭云水,岳小雪,林俊亭.帶有高斯變異的混合蛙跳蝙蝠算法[J].計(jì)算機(jī)應(yīng)用研究,2015,32(12):3629-3633.
[10] 劉羿.蝙蝠算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)入侵檢測(cè)[J].計(jì)算機(jī)仿真,2015,32(2):311-314.
[11] 肖輝輝,段艷明.基于DE算法改進(jìn)的蝙蝠算法的研究及應(yīng)用[J].計(jì)算機(jī)仿真,2014,31(1):272-277.
[12] 龍文,張文專.求解約束優(yōu)化問(wèn)題的改進(jìn)蝙蝠算法[J].計(jì)算機(jī)應(yīng)用研究,2014,31(8):2350-2353.
[13] GAO W.Cyberthreats attacks and intrusion detection in supervisory control and data acquistion networks[M].[s.l.]:Dissertations & Theses-Gradworks,2013.
IntrusionDetectionofIndustrialControlSystemBasedonImprovedBatAlgorithm
LIJin-le1,WANGHua-zhong1,CHENDong-qing2
(1.KeyLaboratoryofAdvancedControlandOptimizationforChemicalProcesses,MinistryofEducation,EastChinaUniversityofScienceandTechnology,Shanghai200237,China;2.ChinaInformationTechnologySecurityEvaluationCenter,Beijing100085,China)
Aiming at the local minima problem of the standard bat algorithm (BA),this paper makes two improvements.Firstly,the current local optimal solution distribution is considered during the updating of bats’ positions.Secondly,the random variation operation in differential evolution (DE) algorithm is introduced into BA to increase the diversity of the population and enhance the local search ability of the BA algorithm.Besides,the superiority of the proposed algorithm is illustrated by means of typical test functions.Moreover,the proposed algorithm is applied to the parameters optimization of support vector machine (SVM) classifier in industrial control system (ICS) intrusion detection model.The simulation results from the standard dataset for industrial system intrusion detection show that,compared with DE,particle swarm optimization (PSO) and genetic algorithm (GA),the optimized SVM intrusion detection model via the proposed algorithm can effectively improve the detection rate,false negative rate,and false alarm rate.
improved bat algorithm; optimal solution distribution; DE; SVM; ICS; intrusion detection
TP309
A
1006-3080(2017)05-0662-07
10.14135/j.cnki.1006-3080.2017.05.010
2016-11-15
李金樂(1990-),男,安徽滁州人,碩士生,主要研究方向?yàn)楣I(yè)系統(tǒng)信息安全。E-mail:1148523890@qq.com
王華忠,E-mail:hzwang@ecust.edu.cn