專利名稱:一種木馬事件預(yù)測(cè)方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)安全,尤其涉及木馬事件預(yù)測(cè)方法。
背景技術(shù):
當(dāng)前,隨著信息技術(shù)的高速發(fā)展,互聯(lián)網(wǎng)的網(wǎng)絡(luò)規(guī)模,網(wǎng)絡(luò)信息量以及網(wǎng)絡(luò)應(yīng)用等都在不斷增長(zhǎng)?;ヂ?lián)網(wǎng)在涉及到人們生活的各方面領(lǐng)域,如政治,商業(yè),金融,文教,通信等, 發(fā)揮著越來(lái)越重要的作用。但是互聯(lián)網(wǎng)在帶給人們極大便利的同時(shí),也面臨著越來(lái)越多的網(wǎng)絡(luò)安全事件。網(wǎng)絡(luò)安全事件預(yù)測(cè)技術(shù)是在充分收集當(dāng)前網(wǎng)絡(luò)流量狀況、獲取網(wǎng)絡(luò)歷史安全事件發(fā)生情況的基礎(chǔ)之上進(jìn)行預(yù)測(cè)的一門技術(shù)。由于木馬攻擊在大規(guī)模網(wǎng)絡(luò)下的安全事件中占很大比例,通過(guò)對(duì)未來(lái)時(shí)刻網(wǎng)絡(luò)中木馬事件發(fā)生數(shù)量進(jìn)行預(yù)測(cè),一方面可以方便網(wǎng)絡(luò)管理人員對(duì)整個(gè)網(wǎng)絡(luò)的大體情況有一個(gè)初步的判斷,并根據(jù)判斷的情況制定與之相符的網(wǎng)絡(luò)安全策略,另一方面可以提前預(yù)判將要發(fā)生的網(wǎng)絡(luò)災(zāi)害或者攻擊,并且在災(zāi)害和攻擊發(fā)生之前及時(shí)采取應(yīng)對(duì)措施,把問(wèn)題消滅在萌芽狀態(tài)?,F(xiàn)有的木馬事件預(yù)測(cè)方法有如下幾種線性回歸方法以經(jīng)典的自回歸滑動(dòng)平均模型為代表,這類方法認(rèn)為未來(lái)木馬事件發(fā)生數(shù)量是受以前數(shù)量和噪聲的直接影響,因此預(yù)測(cè)值即是歷史數(shù)據(jù)和噪聲數(shù)據(jù)的加權(quán)求和,表達(dá)式如下
xt = (Pixt-I + 識(shí)Λ—2 +L L +φpxt-p+(Pt-θ2φ,_2 -L L其中ρ為自回歸模型階數(shù),q為滑動(dòng)平均模型階數(shù),χ為歷史觀測(cè)數(shù)據(jù),仍(i = 1, 2,L,p),θ = 1,2,L,q)分別為自回歸參數(shù)和滑動(dòng)平均參數(shù)。其特點(diǎn)是模型簡(jiǎn)單,容易實(shí)現(xiàn),但是其一方面需要用戶正確的配置模型的參數(shù),這需要用戶具備相應(yīng)的領(lǐng)域經(jīng)驗(yàn),限制了算法的使用,另一方面對(duì)該方法對(duì)預(yù)測(cè)函數(shù)的逼近不夠準(zhǔn)確,所以預(yù)測(cè)效果不夠好?;谝?guī)則發(fā)現(xiàn)的方法如時(shí)序規(guī)則發(fā)現(xiàn),這類方法是通過(guò)根據(jù)頻繁項(xiàng)集在時(shí)間上的先后順序,推出它們的時(shí)序關(guān)聯(lián)規(guī)則,并根據(jù)這個(gè)規(guī)則對(duì)后面將要發(fā)生的時(shí)間進(jìn)行預(yù)測(cè)。 這種方法由于不能對(duì)預(yù)測(cè)這種復(fù)雜非線性問(wèn)題建立一個(gè)結(jié)構(gòu)清晰的模型,所以預(yù)測(cè)效果不夠好。
發(fā)明內(nèi)容
因此,本發(fā)明的目的在于針對(duì)網(wǎng)絡(luò)中木馬事件發(fā)生數(shù)量預(yù)測(cè)的問(wèn)題,提供一種基于二叉樹建模的預(yù)測(cè)方法來(lái)滿足網(wǎng)絡(luò)安全對(duì)木馬事件發(fā)生數(shù)量的預(yù)測(cè)準(zhǔn)確度,時(shí)間復(fù)雜性等方面的要求。本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的本發(fā)明提供了一種木馬事件預(yù)測(cè)方法,包括以下步驟步驟1)確定終端集和函數(shù)集,所述終端集包括變量和常數(shù),所述函數(shù)集中的元素則是用來(lái)對(duì)終端集中的元素進(jìn)行操作的運(yùn)算符;步驟2~)根據(jù)終端集和函數(shù)集隨機(jī)生成一系列函數(shù)表達(dá)式,所述函數(shù)表達(dá)式用于計(jì)算當(dāng)前木馬事件發(fā)生數(shù)量,其輸入為歷史時(shí)間段中木馬事件發(fā)生的數(shù)量;步驟幻將每個(gè)函數(shù)表達(dá)式用二叉樹的形式來(lái)表示,所述二叉樹的根節(jié)點(diǎn)在函數(shù)集隨機(jī)選取,中間節(jié)點(diǎn)可在函數(shù)集和終端集中隨機(jī)選擇,葉節(jié)點(diǎn)在終端集中隨機(jī)選擇;步驟4)將整個(gè)二叉樹群體作為初始的父代群體,以根據(jù)所述函數(shù)表達(dá)式所計(jì)算出的當(dāng)前網(wǎng)絡(luò)中木馬數(shù)量與實(shí)際的木馬數(shù)量的差值作為對(duì)適應(yīng)度的評(píng)價(jià)來(lái)對(duì)所述初始的父代群體執(zhí)行遺傳算法;步驟幻利用步驟4)最終生成的最佳個(gè)體所對(duì)應(yīng)的所述差值最小的函數(shù)表達(dá)式來(lái)對(duì)網(wǎng)絡(luò)中將來(lái)的木馬事件的發(fā)生數(shù)量進(jìn)行預(yù)測(cè)。根據(jù)本發(fā)明實(shí)施例的木馬事件預(yù)測(cè)方法,其中,在步驟幻之前還包括對(duì)終端集和函數(shù)集進(jìn)行編碼的步驟對(duì)終端集和函數(shù)集中的每個(gè)的元素以自然數(shù)進(jìn)行編碼。根據(jù)本發(fā)明實(shí)施例的木馬事件預(yù)測(cè)方法,其中,步驟幻中每棵樹的最大深度取 4 6。根據(jù)本發(fā)明實(shí)施例的木馬事件預(yù)測(cè)方法,其中步驟4)包括以下步驟步驟4-1)對(duì)父代群體進(jìn)行適應(yīng)度評(píng)價(jià),從父代群體中選擇要進(jìn)行遺傳操作的子代群體;步驟4- 對(duì)步驟4-1)得到的子代群體執(zhí)行交叉操作和變異操作;步驟4- 將步驟4- 得到的二叉樹群體作為父代群體,重復(fù)執(zhí)行步驟4-1) ,4-2) 和4- ,直到滿足指定的重復(fù)次數(shù)為止。根據(jù)本發(fā)明實(shí)施例的木馬事件預(yù)測(cè)方法,其中步驟4-1)包括以下步驟采用輪盤賭的方法來(lái)從父代群體中選擇適應(yīng)度高的二叉樹群體;對(duì)所選中二叉樹群體中的每顆樹執(zhí)行復(fù)制操作;將所復(fù)制的二叉樹群體作為子代群體。根據(jù)本發(fā)明實(shí)施例的木馬事件預(yù)測(cè)方法,其中,步驟4-2)中交叉概率為0. 9 ;變異概率為0. 05。步驟4-3)中所述的重復(fù)次數(shù)為100次。現(xiàn)有的預(yù)測(cè)方法都需要建立預(yù)測(cè)模型,但是又難以求出預(yù)測(cè)函數(shù)的具體表達(dá)式, 而本發(fā)明所提出的基于二叉樹建模的遺傳算法的木馬事件預(yù)測(cè)方法可以自動(dòng)的搜索合適的模型結(jié)構(gòu),在預(yù)測(cè)過(guò)程中通過(guò)使用一個(gè)目標(biāo)函數(shù)值來(lái)評(píng)估預(yù)測(cè)出來(lái)的木馬事件數(shù)量和實(shí)際木馬事件數(shù)量的差來(lái)評(píng)價(jià)性能;并通過(guò)不斷調(diào)整這個(gè)目標(biāo)函數(shù),使得評(píng)估數(shù)量和實(shí)際數(shù)量越來(lái)越接近,最終達(dá)到對(duì)預(yù)測(cè)函數(shù)的良好逼近,從而達(dá)到了較好的性能指標(biāo),滿足了預(yù)期的需求。
以下參照附圖對(duì)本發(fā)明實(shí)施例作進(jìn)一步說(shuō)明,其中圖1為根據(jù)本發(fā)明一個(gè)實(shí)施例的基于二叉樹建模遺傳算法的木馬事件預(yù)測(cè)方法流程圖;圖2是根據(jù)本發(fā)明實(shí)施例的函數(shù)表達(dá)式編碼后的二叉樹示意圖;圖3是根據(jù)本發(fā)明實(shí)施例的要進(jìn)行遺傳的二叉樹父代群體示意圖;圖4是根據(jù)本發(fā)明實(shí)施例的執(zhí)行選擇操作后得到的子代群體示意圖5是對(duì)圖4所示的子代群體執(zhí)行交叉操作后得到的二叉樹示意圖;圖6是對(duì)圖5所示的子代群體執(zhí)行變異操作后得到的二叉樹示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的,技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖通過(guò)具體實(shí)施例對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明, 并不用于限定本發(fā)明。為了更好地理解本發(fā)明,先對(duì)遺傳算法和基于二叉樹建模遺傳算法的原理進(jìn)行簡(jiǎn)單介紹。遺傳算法一般包括的步驟為1)選擇一個(gè)初始群體;幻評(píng)價(jià)每個(gè)個(gè)體的適應(yīng)度; 3)進(jìn)行選擇操作;4)重復(fù)步驟幻-7)直至滿足結(jié)束條件力)進(jìn)行交叉和變異操作;6)評(píng)價(jià)每個(gè)個(gè)體的適應(yīng)度,7)進(jìn)行選擇操作?;诙鏄浣_z傳算法采用了遺傳算法的思想, 通過(guò)對(duì)種群中個(gè)體的不斷復(fù)制,交叉和變異操作,搜索整個(gè)解空間,以取得最優(yōu)解。其與一般遺傳算法的不同之處是在初始種群的處理上,隨機(jī)產(chǎn)生一系列二叉樹,該樹的節(jié)點(diǎn)值取自兩個(gè)集合,即終端集和函數(shù)集。終端集中的元素是要被操作的數(shù)值,函數(shù)集中的元素則是用來(lái)對(duì)數(shù)值進(jìn)行操作的運(yùn)算符。而遺傳算法操作的對(duì)象就是整個(gè)二叉樹群體。例如復(fù)制操作,則是選中一棵二叉樹,對(duì)其整個(gè)進(jìn)行復(fù)制。交叉操作,則是選中兩棵二叉樹中的節(jié)點(diǎn),對(duì)著兩個(gè)節(jié)點(diǎn)的位置進(jìn)行互換。變異操作,則是選中一棵二叉樹中的一個(gè)節(jié)點(diǎn),以該節(jié)點(diǎn)為根節(jié)點(diǎn)的子二叉樹脫離原所屬二叉樹,形成一棵獨(dú)立的二叉樹。圖1所示的是基于二叉樹建模遺傳算法的木馬事件預(yù)測(cè)方法的一個(gè)實(shí)施例的流程圖。為了使木馬事件預(yù)測(cè)方法滿足使用者的需求,在本發(fā)明的實(shí)施例中采用基于二叉樹建模遺傳算法的思想來(lái)進(jìn)行預(yù)測(cè)。第一步是確立一個(gè)目標(biāo)函數(shù),該目標(biāo)函數(shù)要使計(jì)算出的當(dāng)前網(wǎng)絡(luò)中木馬數(shù)量和實(shí)際的木馬數(shù)量的差值最小,這個(gè)差值也可以稱為適應(yīng)度評(píng)價(jià)。然后算法對(duì)終端集和函數(shù)集元素進(jìn)行編碼,這里進(jìn)行編碼的目的是為了在二叉樹中能夠更好的表示,并利用這兩個(gè)集合初始化二叉樹集合,之后開始演化過(guò)程,在每一次演化過(guò)程中選擇具有良好性能的父代來(lái)進(jìn)行遺傳操作,最終達(dá)到終止條件則算法終止。如圖1所示,首先確定目標(biāo)函數(shù)y = F(xi; X2,……,xk),有k個(gè)自變量和一個(gè)因變量,則自變量為歷史時(shí)間段中木馬事件發(fā)生的數(shù)量X= (X1, χ2,……,xk),因變量y表示計(jì)算出的當(dāng)前木馬事件發(fā)生數(shù)量,1’是當(dāng)前網(wǎng)絡(luò)中實(shí)際的木馬數(shù)量,確定一個(gè)最佳函數(shù)表達(dá)式F(Xl,&,……,xk),使計(jì)算出的當(dāng)前網(wǎng)絡(luò)中木馬數(shù)量和實(shí)際的木馬數(shù)量的差值ε最小, 即有mine = F(xi;x2,……,xk)_y' |成立,上述表達(dá)式也稱為適應(yīng)度函數(shù)。其中F(Xl, X2,……,Xk)為k元函數(shù),Xi為函數(shù)的第i個(gè)自變量,i = 1,2,……,k。差值ε也可以稱為適應(yīng)度評(píng)價(jià)。差值ε越小,代表適應(yīng)度越高,反之,差值ε越大,代表適應(yīng)度越小。具體的目標(biāo)函數(shù)F的表達(dá)式在初始化的階段是隨機(jī)生成的,但是一旦開始遺傳算法的操作以后,就是按照適應(yīng)度值的大小來(lái)進(jìn)行遺傳操作,最后保留適應(yīng)度大的個(gè)體,淘汰適應(yīng)度小的個(gè)體。將要生成的二叉樹的節(jié)點(diǎn)值取自這兩個(gè)集合中的元素。終端集T的元素定為變量 χ和常數(shù)c。函數(shù)集W的元素定為四則運(yùn)算{+,_,*,/}和初等函數(shù)運(yùn)算Isin,tan, log}。 這些函數(shù)運(yùn)算可由人為的指定,可以取現(xiàn)有技術(shù)中的任何函數(shù)運(yùn)算符,但是一般取四則運(yùn)算和初等函數(shù)運(yùn)算,因?yàn)檫@樣既能在解空間內(nèi)進(jìn)行有效地搜索,又不會(huì)跳過(guò)最優(yōu)解。為了在
5程序中能夠更好的進(jìn)行表示和運(yùn)算,還可以對(duì)這兩個(gè)集合中的元素進(jìn)行編碼。具體的編碼方案如表1所示表 1
集合中元素Γ^ Γ^ Γ- Γ^ Γ7 Sin Tan log 編碼值0 2345678其中編碼值為0表明是常數(shù)C,對(duì)應(yīng)地在區(qū)間
上取一隨機(jī)數(shù),例如可以用一個(gè)隨機(jī)數(shù)生成器來(lái)任意取一隨機(jī)數(shù)即可。編碼值為1表明取自變量Xi (i = 1,2, L L L,k) 中的某一個(gè),則目標(biāo)函數(shù)表達(dá)式F(Xl,x2, L L,xk)可以用編碼后的方式來(lái)表達(dá)。假設(shè)目標(biāo)函數(shù)F(Xl,χ2, χ3, χ4) = χι*χ2+ *χ4,則該函數(shù)表達(dá)式的編碼后的二叉樹表達(dá)形式如圖2所示。應(yīng)理解這個(gè)表達(dá)式是隨機(jī)從函數(shù)集和終端集中選取元素生成的,不具有實(shí)際意義,僅僅是為了說(shuō)明圖2中的二叉樹表達(dá)形式。接著,在編碼之后要利用這兩個(gè)集合來(lái)初始化父代群體。父代群體是相對(duì)于子代群體來(lái)說(shuō)的,即是每次被選中進(jìn)行遺傳操作的對(duì)象群體,遺傳操作結(jié)束之后生成的群體稱為子代群體,而這個(gè)子代群體即是下次進(jìn)行遺傳操作的父代群體。遺傳操作具體步驟是產(chǎn)生100棵二叉樹,也即是有100個(gè)目標(biāo)函數(shù)。其中每棵樹的最大深度(層數(shù))取4 6,現(xiàn)有技術(shù)中一般取10以內(nèi),大部分都取4 6即可,以便對(duì)算法搜索到的最優(yōu)函數(shù)表達(dá)式進(jìn)行分析解釋。樹的基本元素構(gòu)建如下在產(chǎn)生初始群體的100棵樹時(shí),每棵樹的根節(jié)點(diǎn)在函數(shù)集W對(duì)應(yīng)的編碼值中隨機(jī)選取,中間節(jié)點(diǎn)可在函數(shù)集W和終端集T對(duì)應(yīng)的編碼值中隨機(jī)選擇,葉節(jié)點(diǎn)在終端集T對(duì)應(yīng)的編碼值中隨機(jī)選擇。為了使得整個(gè)二叉樹群體能夠進(jìn)行合適的遺傳進(jìn)化,同時(shí)又要保證系統(tǒng)計(jì)算的復(fù)雜度不致過(guò)高,這里設(shè)置群體規(guī)模為100。按理說(shuō)群體規(guī)模取任何值均可,但是要考慮機(jī)器性能,運(yùn)算的時(shí)間復(fù)雜度等問(wèn)題,一般種群規(guī)模取100即可。通過(guò)上述步驟構(gòu)建整個(gè)遺傳算法的操作對(duì)象。然后,進(jìn)行適應(yīng)度評(píng)價(jià),根據(jù)適應(yīng)度來(lái)選擇要遺傳操作的對(duì)象。將父代群體中以二叉樹形式表示的每個(gè)個(gè)體按照表1的對(duì)應(yīng)關(guān)系進(jìn)行解碼得出個(gè)體對(duì)應(yīng)的函數(shù)表達(dá)式F,并把F帶入適應(yīng)度函數(shù)mine = F(xi; x2,……,xk)_y' |,從而得相對(duì)應(yīng)的100個(gè)適應(yīng)度值,即f(i),(i = 1,2, L L L,100),該值越小,則表明該個(gè)體的適應(yīng)度越高。假設(shè)此處各自變量的值為=X1 = 10,x2 = 5,X3 = 20,x4 = 2,則計(jì)算出來(lái)的目標(biāo)函數(shù)值為90,網(wǎng)絡(luò)中實(shí)際木馬數(shù)量的值為y' =80,則此時(shí)得到的誤差為ε =10。這個(gè)值即作為適應(yīng)度函數(shù)的評(píng)價(jià)值。其中,自變量的值是從終端集中選取的,無(wú)限制條件。現(xiàn)有的技術(shù)有很多的方式來(lái)選擇進(jìn)行遺傳操作的對(duì)象,這里選擇采用輪盤賭的方
100
式來(lái)選擇進(jìn)行遺傳操作的父代。令Α=/ω/Σ/(/>即第i個(gè)個(gè)體的適應(yīng)度函數(shù)值占總的
i
適應(yīng)度函數(shù)值百分比,積累概率巧生成一個(gè)W,l]區(qū)間的隨機(jī)數(shù)r,r的生成是利
;=1
O
用隨機(jī)數(shù)生成器生成,即指定0到1的這個(gè)范圍,在這個(gè)范圍里面隨機(jī)取一個(gè)數(shù)。這個(gè)取數(shù)的過(guò)程由系統(tǒng)來(lái)確定,不能人為干預(yù)。如果r在區(qū)間[qi_i,qj中,則第i個(gè)個(gè)體被選中。直接把父代個(gè)體復(fù)制為子代個(gè)體。例如,對(duì)于圖3所示的這個(gè)群體,首先要進(jìn)行的是選擇操作。這里通過(guò)上文提到的輪盤賭算法來(lái)進(jìn)行選擇。這里可以假設(shè)這四棵子樹的適應(yīng)度函數(shù)值分別為0.4,0.3,0.2,0. 1,則首先計(jì)算適應(yīng)度函數(shù)值總和為1(這里的數(shù)字僅起示意的作用,不具有實(shí)際含義,只是為了說(shuō)明的方便),然后計(jì)算每棵子樹的適應(yīng)度值在適應(yīng)度值總和中所占的百分比,分別為40^,30^,20%, 10%,則每棵子樹所占的適應(yīng)度值區(qū)間為W, 0.4],
,
,
。選擇兩棵子樹進(jìn)入下一代,則利用隨機(jī)數(shù)生成器, 生成兩次隨機(jī)數(shù),第一次生成0. 3,在第一棵子樹的適應(yīng)度值區(qū)間中,則選擇第一棵子樹,第二次生成0.5,在第二棵子樹的適應(yīng)度區(qū)間中,則選擇第二棵子樹。對(duì)選擇第一棵和第二棵子樹執(zhí)行復(fù)制操作,得到如圖4所示的子代群體。接著對(duì)通過(guò)上述步驟得到的子代群體執(zhí)行遺傳操作,包括交叉和變異操作。例如, 對(duì)于圖4中給出的兩棵樹,交叉操作即是在2棵父代個(gè)體樹上隨機(jī)產(chǎn)生2個(gè)交叉點(diǎn),然后交換以交叉點(diǎn)為根節(jié)點(diǎn)的子樹。按遺傳算法的經(jīng)驗(yàn),這里設(shè)定交叉概率為0.9。這里隨機(jī)產(chǎn)生 2個(gè)交叉點(diǎn)為節(jié)點(diǎn)A和節(jié)點(diǎn)B,以0. 9的概率交換以這兩個(gè)節(jié)點(diǎn)為根節(jié)點(diǎn)的子樹則會(huì)得到如下的圖5的子樹。變異操作即是在選得的個(gè)體中隨機(jī)產(chǎn)生一個(gè)變異點(diǎn),然后將該點(diǎn)作為根節(jié)點(diǎn)初始化一棵子樹,這里設(shè)定變異概率為0. 05,變異概率一般取0. 1之內(nèi),不要太大,不然隨機(jī)性太強(qiáng)不利于解空間的搜索。以0. 05的概率對(duì)圖5所示的第二棵子樹的節(jié)點(diǎn)A進(jìn)行變異操作,這里節(jié)點(diǎn)A是被隨機(jī)選中的。變異后的子樹群體如圖6如示。將經(jīng)過(guò)選擇、交叉和變異后的子樹群體作為新的父代群體,重新進(jìn)行適應(yīng)度評(píng)價(jià)和遺傳操作,如此反復(fù)演化直至進(jìn)化迭代次數(shù)等于或大于100時(shí)結(jié)束算法的運(yùn)行,這里的 100和上文的種群規(guī)模無(wú)關(guān)。本領(lǐng)域的普通技術(shù)人員應(yīng)理解迭代次數(shù)不限于100,在其他實(shí)施例中可以根據(jù)實(shí)際情況和用戶需求來(lái)設(shè)置迭代的次數(shù)。此時(shí)最佳個(gè)體為最終結(jié)果。通過(guò)這樣的遺傳算法可以自動(dòng)的在解空間內(nèi)搜索最優(yōu)解。這時(shí)的最佳個(gè)體即是預(yù)測(cè)出來(lái)的結(jié)果,即網(wǎng)絡(luò)中將要發(fā)生的木馬事件數(shù)量。與現(xiàn)有技術(shù)相比,本發(fā)明有如下兩種優(yōu)點(diǎn)對(duì)木馬事件發(fā)生數(shù)量的預(yù)測(cè)函數(shù)逼近較好基于二叉樹建模的遺傳算法從隨機(jī)產(chǎn)生的初始群體出發(fā),用適應(yīng)值衡量個(gè)體的優(yōu)劣,采用再生、交叉、變異操作,經(jīng)過(guò)若干代的優(yōu)勝劣汰得出最優(yōu)解或次優(yōu)解。并且采用的是樹結(jié)構(gòu)的層次表示,樹的大小規(guī)??勺?。這樣的數(shù)據(jù)表示方式和演化方式適合對(duì)大規(guī)模網(wǎng)絡(luò)中木馬預(yù)測(cè)問(wèn)題進(jìn)行求解,發(fā)現(xiàn)木馬事件發(fā)生數(shù)量的潛在規(guī)律,因此可以很好的逼近木馬事件發(fā)生數(shù)量的函數(shù)。自動(dòng)搜索建立合適的木馬事件發(fā)生數(shù)量預(yù)測(cè)模型由于基于二叉樹建模的遺傳算法采用自動(dòng)程序設(shè)計(jì)的思想,計(jì)算機(jī)可以自動(dòng)的搜索合適的模型結(jié)構(gòu),對(duì)于大規(guī)模網(wǎng)絡(luò)中的木馬預(yù)測(cè)問(wèn)題,該方法可以自動(dòng)構(gòu)造合理的預(yù)測(cè)模型,并且通過(guò)不斷地遺傳演化選擇合適的參數(shù),達(dá)到很好的預(yù)測(cè)效果。 雖然本發(fā)明已經(jīng)通過(guò)優(yōu)選實(shí)施例進(jìn)行了描述,然而本發(fā)明并非局限于這里所描述的實(shí)施例,在不脫離本發(fā)明范圍的情況下還包括所作出的各種改變以及變化。
權(quán)利要求
1.一種木馬事件預(yù)測(cè)方法,包括以下步驟步驟1)確定終端集和函數(shù)集,所述終端集包括變量和常數(shù),所述函數(shù)集中的元素則是用來(lái)對(duì)終端集中的元素進(jìn)行操作的運(yùn)算符;步驟2~)根據(jù)終端集和函數(shù)集隨機(jī)生成一系列函數(shù)表達(dá)式,所述函數(shù)表達(dá)式用于計(jì)算當(dāng)前木馬事件發(fā)生數(shù)量,其輸入為歷史時(shí)間段中木馬事件發(fā)生的數(shù)量;步驟幻將每個(gè)函數(shù)表達(dá)式用二叉樹的形式來(lái)表示,所述二叉樹的根節(jié)點(diǎn)在函數(shù)集隨機(jī)選取,中間節(jié)點(diǎn)可在函數(shù)集和終端集中隨機(jī)選擇,葉節(jié)點(diǎn)在終端集中隨機(jī)選擇;步驟4)將整個(gè)二叉樹群體作為初始的父代群體,以根據(jù)所述函數(shù)表達(dá)式所計(jì)算出的當(dāng)前網(wǎng)絡(luò)中木馬數(shù)量與實(shí)際的木馬數(shù)量的差值作為對(duì)適應(yīng)度的評(píng)價(jià)來(lái)對(duì)所述初始的父代群體執(zhí)行遺傳算法;步驟幻利用步驟4)最終生成的最佳個(gè)體所對(duì)應(yīng)的所述差值最小的函數(shù)表達(dá)式來(lái)對(duì)網(wǎng)絡(luò)中將來(lái)的木馬事件的發(fā)生數(shù)量進(jìn)行預(yù)測(cè)。
2.根據(jù)權(quán)利要求1所述的木馬事件預(yù)測(cè)方法,其中,在步驟幻之前還包括對(duì)終端集和函數(shù)集進(jìn)行編碼的步驟對(duì)終端集和函數(shù)集中的每個(gè)的元素以自然數(shù)進(jìn)行編碼。
3.根據(jù)權(quán)利要求1所述的木馬事件預(yù)測(cè)方法,其中,步驟幻中每棵樹的最大深度取 4 6。
4.根據(jù)權(quán)利要求1所述的木馬事件預(yù)測(cè)方法,其中,步驟4)包括以下步驟步驟4-1)對(duì)父代群體進(jìn)行適應(yīng)度評(píng)價(jià),從父代群體中選擇要進(jìn)行遺傳操作的子代群體;步驟4- 對(duì)步驟4-1)得到的子代群體執(zhí)行交叉操作和變異操作; 步驟4- 將步驟4- 得到的二叉樹群體作為父代群體,重復(fù)執(zhí)行步驟4-1)、4-2)、 4-3),直到滿足指定的重復(fù)次數(shù)為止。
5.根據(jù)權(quán)利要求4所述的木馬事件預(yù)測(cè)方法,其中步驟4-1)包括以下步驟 采用輪盤賭的方法來(lái)從父代群體中選擇適應(yīng)度高的二叉樹群體;對(duì)所選中二叉樹群體中的每顆樹執(zhí)行復(fù)制操作; 將所復(fù)制的二叉樹群體作為子代群體。
6.根據(jù)權(quán)利要求4所述的木馬事件預(yù)測(cè)方法,其中,步驟4-2)中交叉概率為0.9;變異概率為0. 05。
7.根據(jù)權(quán)利要求4所述的木馬事件預(yù)測(cè)方法,其中,步驟4- 中所述重復(fù)次數(shù)為100次。
全文摘要
本發(fā)明提供一種基于二叉樹建模的遺傳算法的木馬事件預(yù)測(cè)方法,可以自動(dòng)的搜索合適的模型結(jié)構(gòu),在預(yù)測(cè)過(guò)程中通過(guò)使用一個(gè)目標(biāo)函數(shù)值來(lái)評(píng)估預(yù)測(cè)出來(lái)的木馬事件數(shù)量和實(shí)際木馬事件數(shù)量的差來(lái)評(píng)價(jià)性能;并通過(guò)不斷調(diào)整這個(gè)目標(biāo)函數(shù),使得評(píng)估數(shù)量和實(shí)際數(shù)量越來(lái)越接近,最終達(dá)到對(duì)預(yù)測(cè)函數(shù)的良好逼近,從而達(dá)到了較好的性能指標(biāo),滿足了預(yù)期的需求。
文檔編號(hào)G06F21/00GK102467635SQ201110183219
公開日2012年5月23日 申請(qǐng)日期2011年7月1日 優(yōu)先權(quán)日2011年7月1日
發(fā)明者劉 東, 劉斐, 周斌, 夏榕澤, 張建鋒, 徐鏡湖, 李遠(yuǎn)征, 楊樹強(qiáng), 王雯霞, 賈焰, 鄭黎明, 韓偉紅 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)