王永剛
(遼寧對(duì)外經(jīng)貿(mào)學(xué)院,遼寧 大連 116052)
隨著微電子技術(shù)以及傳感器技術(shù)的迅猛發(fā)展和日趨成熟,無線傳感網(wǎng)絡(luò)引起了社會(huì)學(xué)者的廣泛關(guān)注,同時(shí)在各個(gè)領(lǐng)域也有十分廣闊的應(yīng)用[1-2],其中包含軍事領(lǐng)域以及環(huán)境監(jiān)測(cè)領(lǐng)域等。人類對(duì)無線傳感器研究的不斷加深,促使其被廣泛應(yīng)用于人類生活、生產(chǎn)以及辦公等領(lǐng)域中。
由多個(gè)無線傳感器節(jié)點(diǎn)、無線自組織以及多跳的方式建立傳感器,其中感知部署范圍內(nèi)的特定感知信息需要和各個(gè)節(jié)點(diǎn)間需要相互協(xié)作,實(shí)現(xiàn)對(duì)感知數(shù)據(jù)的采集、預(yù)處理以及傳輸?shù)认嚓P(guān)操作,最終完成數(shù)據(jù)上報(bào),為用戶決策提供一定的理論支撐?,F(xiàn)階段,如何實(shí)現(xiàn)無線傳感網(wǎng)絡(luò)入侵檢測(cè)成為當(dāng)前研究的熱點(diǎn)話題。相關(guān)專家針對(duì)該方面的內(nèi)容進(jìn)行了大量的研究,例如封化民等人[3]在預(yù)處理階段使用SMOTE技術(shù),提升少數(shù)樣本數(shù)量,對(duì)多類別樣本進(jìn)行采樣,最后在平衡數(shù)據(jù)集中進(jìn)行GBDT數(shù)據(jù)訓(xùn)練,實(shí)現(xiàn)網(wǎng)絡(luò)入侵檢測(cè)。劉雙等人[4]在傳統(tǒng)的SOM算法中加入核函數(shù)對(duì)數(shù)據(jù)進(jìn)行聚類操作;然后利用SOM聚類算法進(jìn)行神經(jīng)元值提取,同時(shí)對(duì)粒子的原始位置進(jìn)行初始化處理;最后將線性減小權(quán)值方法轉(zhuǎn)換為非線性減小取值方法,實(shí)現(xiàn)網(wǎng)絡(luò)入侵檢測(cè)。以上兩種方法目前已經(jīng)取得了較為滿意的研究成果,但是依舊無法滿足現(xiàn)階段的發(fā)展需求,為此提出一種基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)方法。實(shí)驗(yàn)結(jié)果表明,所提方法能夠有效降低誤檢率和漏檢率。
1.1.1 數(shù)據(jù)降維的目的
無線傳感器網(wǎng)絡(luò)出現(xiàn)在1978年左右,是由美國相關(guān)專家提出的,傳感器存在的主要目的是獲取主要環(huán)境數(shù)據(jù),被廣泛應(yīng)用于各個(gè)研究領(lǐng)域。通常情況,無線傳感器網(wǎng)絡(luò)是在一定范圍和區(qū)域內(nèi),將設(shè)定范圍內(nèi)的節(jié)點(diǎn)通過無線通信方式進(jìn)行組織,確保信號(hào)能夠得到有效監(jiān)測(cè)、傳輸以及預(yù)處理[5-6]等。
通常情況下,無線傳感器是由四個(gè)不同的部分組成,具體結(jié)構(gòu)如圖1所示。
圖1 無線傳感器網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)圖
無線傳感器網(wǎng)絡(luò)四個(gè)組成部分之間相互協(xié)調(diào),以此完成數(shù)據(jù)采集以及監(jiān)測(cè)等任務(wù)。在不同監(jiān)測(cè)區(qū)域內(nèi)的節(jié)點(diǎn),大部分是隨機(jī)進(jìn)行部署的,還有部分是定點(diǎn)進(jìn)行部署的。節(jié)點(diǎn)主要通過被監(jiān)測(cè)對(duì)象對(duì)周圍數(shù)據(jù)進(jìn)行感知,通過多跳路由的方式將感知數(shù)據(jù)傳輸至基站;然后利用通信網(wǎng)絡(luò)傳輸至管理節(jié)點(diǎn),最終實(shí)現(xiàn)數(shù)據(jù)的上傳。當(dāng)用戶進(jìn)行節(jié)點(diǎn)管理時(shí),可以得到傳感器節(jié)點(diǎn)發(fā)送的感知數(shù)據(jù)[7],確保傳感器內(nèi)的各個(gè)節(jié)點(diǎn)都能夠得到有效的監(jiān)測(cè)。
在網(wǎng)絡(luò)中,普通節(jié)點(diǎn)和匯聚節(jié)點(diǎn)具有不同的特性,監(jiān)測(cè)區(qū)域內(nèi)的節(jié)點(diǎn)均為普通節(jié)點(diǎn),主要負(fù)責(zé)數(shù)據(jù)的感知以及傳輸?shù)裙ぷ?。由于?shù)據(jù)量較多,同時(shí)受限于節(jié)點(diǎn)體積以及成本控制,其能量和計(jì)算存儲(chǔ)能源受限。匯聚節(jié)點(diǎn)相對(duì)于普通的傳感器節(jié)點(diǎn)而言,具有更多的計(jì)算存儲(chǔ)資源和電量,主要負(fù)責(zé)處理以及融合對(duì)應(yīng)的感知數(shù)據(jù),將網(wǎng)絡(luò)和管理節(jié)點(diǎn)兩者進(jìn)行連接,實(shí)現(xiàn)不同用戶間的通信。另外,信息的指令發(fā)送以及控制等操作也是通過管理節(jié)點(diǎn)[8-9]和傳感器節(jié)點(diǎn)共同實(shí)現(xiàn)的,當(dāng)傳感器節(jié)點(diǎn)接收到指令后開始進(jìn)行自我調(diào)節(jié)。
無線傳感器的網(wǎng)絡(luò)結(jié)構(gòu)主要?jiǎng)澐譃槠矫娼Y(jié)構(gòu)、分層結(jié)構(gòu)兩個(gè)不同的部分,如圖2所示。
圖2 基于分層結(jié)構(gòu)的無線傳感器網(wǎng)絡(luò)圖
當(dāng)對(duì)大量數(shù)據(jù)進(jìn)行預(yù)處理時(shí),由于大部分的入侵檢測(cè)數(shù)據(jù)均為高維數(shù)據(jù),所以需要其進(jìn)行降維處理,以下給出數(shù)據(jù)降維處理的主要意義。
(1)進(jìn)行數(shù)據(jù)壓縮,能夠有效降低數(shù)據(jù)存儲(chǔ)空間。
(2)刪除數(shù)據(jù)中存在的噪聲,能夠有效提升入侵檢測(cè)結(jié)果的準(zhǔn)確性。
(3)在特征提取的過程中能夠精準(zhǔn)了解數(shù)據(jù)的分布情況。
(4)維度的降低不僅能夠縮減計(jì)算量[10],同時(shí)還能夠減少計(jì)算耗時(shí)。
(5)刪除不必要的冗余特征,提升模型的綜合性能。
1.1.2 基于象群優(yōu)化算法的數(shù)據(jù)降維
以下主要采用象群優(yōu)化算法對(duì)高維的無線傳感網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)進(jìn)行降維處理,具體的操作步驟如下所示。
(1)更新氏族
各個(gè)群體的大象在族長的領(lǐng)導(dǎo)下一起生活,其中女族長是整個(gè)群體中適應(yīng)性最好的大象。各個(gè)大象需要通過自身的位置以及女族長的位置進(jìn)行更新,而族長則通過氏族的中心位置進(jìn)行更新。
將大象種群進(jìn)行初始化處理,同時(shí)將大象劃分為n個(gè)氏族,各個(gè)氏族中含有j個(gè)大象個(gè)體。在每次進(jìn)行迭代的過程中,各個(gè)大象會(huì)隨著氏族中ci族長的移動(dòng)過程進(jìn)行移動(dòng),具體如公式(1)所示。
xnew,ci,j=xci,j+α·(xbest,ci-xci,j)·r
(1)
式(1)中,xnew,ci,j代表氏族中ci族長經(jīng)過更新后的位置;xci,j代表上一代象群的位置;xbest,ci氏族ci中是適應(yīng)度取值最佳的位置;α代表影響因子[11-12];r代表提升象群多樣性的隨機(jī)數(shù)。
其中氏族ci中女族長的位置xbest,ci可以被設(shè)定為:
xnew,ci,j=β×xcenter,ci
(2)
上式中,β代表算法中的參數(shù),通過其控制氏族中心xcenter,ci產(chǎn)生的影響,其中氏族中心可以被設(shè)定為:
(3)
(2)氏族分離
當(dāng)雄性大象長大以后會(huì)離開自己的群體,以達(dá)到增強(qiáng)全局搜索能力和密度的目的。其中種群中性能最差的大象會(huì)被剔除,采用搜索空間進(jìn)行搜索的主要目的是增強(qiáng)整個(gè)算法整體的搜索性能。
在各個(gè)氏族ci中,含有最差適應(yīng)度的大象會(huì)被移動(dòng)到新的位置中,對(duì)應(yīng)的位置能夠被設(shè)定為:
xworst,ci=xmin+(xmax-xmin+1)×rand
(4)
上式中,xmax代表搜索空間對(duì)應(yīng)的上限值;xmin代表搜索空間對(duì)應(yīng)的下限值。
其中使用象群優(yōu)化算法對(duì)無線傳感網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)進(jìn)行降維的基本操作步驟如下所示。
Step1:設(shè)定算法的最大迭代次數(shù),同時(shí)將各個(gè)種群進(jìn)行初始化處理。
Step2:采用適應(yīng)度函數(shù)分別計(jì)算不同大象個(gè)體的適應(yīng)度取值,獲取現(xiàn)階段最優(yōu)個(gè)體。
Step3:對(duì)種群中大象的個(gè)體位置進(jìn)行更新[13],同時(shí)更新目前最優(yōu)個(gè)體的位置。
Step4:經(jīng)過更新后,分別計(jì)算不同大象個(gè)體的適應(yīng)度取值,獲取經(jīng)過更新后最優(yōu)以及最差的大象個(gè)體位置。
Step5:對(duì)最差位置進(jìn)行更新,保留最優(yōu)的解。
Step6:判定是否能夠達(dá)到最大迭代次數(shù),假設(shè)是,則輸出當(dāng)前最優(yōu)個(gè)體的位置以及對(duì)應(yīng)的適應(yīng)度取值;反之,則返回步驟(2),繼續(xù)重復(fù)上述操作。
綜上,最終能夠有效實(shí)現(xiàn)無線傳感網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)降維。
由于基本的象群優(yōu)化算法主要被應(yīng)用于數(shù)據(jù)集優(yōu)化問題,雖然其具有較強(qiáng)的搜索能力,但是卻容易陷入局部最優(yōu)的情況。如果將其應(yīng)用于無線傳感網(wǎng)絡(luò)入侵檢測(cè)中,會(huì)降低算法的分類性能。為了提升檢測(cè)結(jié)果的準(zhǔn)確性,將改進(jìn)的EHO算法應(yīng)用到無線傳感網(wǎng)絡(luò)入侵檢測(cè)。
基本的象群優(yōu)化算法主要表示局部搜索,其中各個(gè)個(gè)體的位置更新主要受最好大象的位置影響。如果現(xiàn)階段最優(yōu)個(gè)體一直被局部值所吸引,則算法將會(huì)過早陷入局部最優(yōu)。以下在象群算法中引入Levy飛行策略,通過飛行模式模擬不同大象的位置更新行為[14],全面使用Levy飛行短距離的局部搜索和偶爾長距離的跳躍式搜索,有效避免算法過早陷入局部最優(yōu)。
經(jīng)過改進(jìn)后的象群算法對(duì)應(yīng)的位置更新式為:
xmew,ci,j=xci,j+Levy{λ}+α·(xbest,ci-xci,j)·r
(5)
在基本的象群優(yōu)化算法中,雄象離開氏族后會(huì)進(jìn)行全局搜索,其中適應(yīng)度的取值則說明搜索范圍也就越大。由于粒子群算法(PSO)具有較強(qiáng)的全局搜索能力,所以可以將PSO算法引入到EHO算法中。以下給出具體的更新策略。
在每次進(jìn)行迭代的過程中,設(shè)定整個(gè)種群中適應(yīng)度最差的雄性大象作為粒子,通過粒子群優(yōu)化策略進(jìn)行優(yōu)化更新,同時(shí)將粒子的慣性進(jìn)行擴(kuò)展空間搜索,分別計(jì)算不同粒子的適應(yīng)度取值,假設(shè)得到理想的適應(yīng)度,則更新xworst,ci;反之,則不進(jìn)行更新,以下給出具體的更新式,如式(6)、式(7)所示。
(6)
(7)
將粒子群優(yōu)化算法和Levy飛行行為兩者結(jié)合,對(duì)基本象群優(yōu)化算法進(jìn)行改進(jìn),同時(shí)將其應(yīng)用到無線傳感網(wǎng)絡(luò)入侵檢測(cè)中,組建基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)模型,完成檢測(cè),具體的操作流程如圖3所示。
圖3 基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)流程圖
Step1:將種群進(jìn)行初始化處理,同時(shí)設(shè)定種群數(shù)量。
Step2:將大象的位置進(jìn)行隨機(jī)初始化處理[15],并且計(jì)算適應(yīng)度取值。
Step3:執(zhí)行氏族更新操作。
Step4:執(zhí)行氏族分離操作。
Step5:獲取局部最優(yōu)位置以及最優(yōu)值。
Step6:滿足終止條件后,更新全局最優(yōu)位置信息和最優(yōu)值;反之,則返回步驟(3)。
在上述基礎(chǔ)上,組建組建基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)模型,通過模型實(shí)現(xiàn)最終的檢測(cè)。
為了驗(yàn)證所提基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)方法的綜合有效性,在Inter(R)Core(TM)i7處理器,主頻6.8GHz,內(nèi)存128GB,操作系統(tǒng)為64位的Windows10下進(jìn)行實(shí)驗(yàn)測(cè)試。
在實(shí)驗(yàn)中需要設(shè)定以下參數(shù),其中種群大小為50,最大迭代次數(shù)為60次,以下實(shí)驗(yàn)測(cè)試主要對(duì)比采用改進(jìn)EHO算法優(yōu)化前后的漏檢率變化情況,具體如圖4所示。
(a)采用改進(jìn)EHO算法優(yōu)化前的漏檢率變化情況
(b)采用改進(jìn)EHO算法優(yōu)化后的漏檢率變化情況圖4 采用改進(jìn)EHO算法優(yōu)化前后的漏檢率對(duì)比結(jié)果
分析圖4中的實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)采用改進(jìn)的EHO算法優(yōu)化后,所提方法的漏檢率得到大幅度降低,最低僅為1%,而未采用改進(jìn)EHO算法進(jìn)行優(yōu)化的方法,漏檢率明顯較高。
為了更進(jìn)一步驗(yàn)證所提方法的有效性,以下實(shí)驗(yàn)測(cè)試對(duì)比所提方法將改進(jìn)EHO算法應(yīng)用在無線傳感網(wǎng)絡(luò)入侵檢測(cè)前后的誤檢率變化情況,具體實(shí)驗(yàn)對(duì)比結(jié)果如表1所示。
表1 采用改進(jìn)EHO算法優(yōu)化前后的誤檢率對(duì)比結(jié)果
分析表1中的實(shí)驗(yàn)數(shù)據(jù)可知,隨著實(shí)驗(yàn)次數(shù)的增加,采用改進(jìn)EHO算法優(yōu)化前后的誤檢率有著十分明顯的變化,但是經(jīng)過優(yōu)化后,誤檢率有了明顯下降,證明所提方法的檢測(cè)精確度得到明顯提升。
針對(duì)傳統(tǒng)的網(wǎng)絡(luò)入侵檢測(cè)方法存在誤檢率和漏檢率較高等情況,結(jié)合改進(jìn)的EHO算法,提出一種基于改進(jìn)EHO算法的無線傳感網(wǎng)絡(luò)入侵檢測(cè)方法。仿真實(shí)驗(yàn)結(jié)果表明,所提方法能夠有效降低誤檢率和漏檢率,獲取較為滿意的檢測(cè)結(jié)果。