1.一種基于時(shí)間分層的復(fù)雜網(wǎng)絡(luò)傳播源點(diǎn)定位方法,其特征在于以下步驟,
步驟1,部署網(wǎng)絡(luò)觀察節(jié)點(diǎn)
在網(wǎng)絡(luò)G(V,E)中預(yù)先選擇若干節(jié)點(diǎn)作為觀察點(diǎn),記為O={o1,o2,..ok},其中V為節(jié)點(diǎn)集合,E為邊集合;當(dāng)觀察點(diǎn)o在首次收到消息m時(shí),記錄了收到消息的時(shí)間t和方向v,表示觀察節(jié)點(diǎn)o從節(jié)點(diǎn)v在時(shí)間t收到消息m;
步驟2,建立分層觀察節(jié)點(diǎn)
首先找出網(wǎng)絡(luò)中所有被感染的觀察節(jié)點(diǎn),根據(jù)其感染時(shí)間找出最先被感染的節(jié)點(diǎn)o1及感染時(shí)間t1,最后被感染的觀察節(jié)點(diǎn)ok及其感染時(shí)間tk,計(jì)算感染事件窗口長度t=tk-t1;
設(shè)定分層閾值θ,從t=t1開始,統(tǒng)計(jì)該時(shí)刻中的觀察點(diǎn)數(shù)目,如果小于θ,則將該時(shí)刻中的觀察點(diǎn)與下一時(shí)刻中的觀察點(diǎn)合并構(gòu)成一個(gè)新的分層,然后繼續(xù)統(tǒng)計(jì)該新分層中觀察點(diǎn)的數(shù)目,如果大于等于θ,則第一層確定;如果新分層中觀察點(diǎn)的數(shù)目如果依然小于θ,則繼續(xù)合并下一個(gè)時(shí)刻的觀察點(diǎn),直至新分層中的觀察點(diǎn)數(shù)目大于等于θ,第一分層確定;之后按照上述方法構(gòu)建接下來的分層,直到將所有被感染的觀察點(diǎn)均分層完畢,最終產(chǎn)生m個(gè)分層;
步驟3,基于分層的源點(diǎn)定位
對(duì)m個(gè)分層分別進(jìn)行源點(diǎn)定位;每一層的定位方法如下:
Step1:令候選源點(diǎn)集Λ為除觀察點(diǎn)外所有節(jié)點(diǎn),計(jì)算候選源點(diǎn)集Λ中的每個(gè)候選源點(diǎn)到當(dāng)前分層中所有觀察點(diǎn)的有效距離Deff;
Step2:計(jì)算每個(gè)候選源點(diǎn)的有效距離的均值avg_eff和方差var_eff,并取均值和方差的和作為該候選源點(diǎn)的定位比較值L=avg_eff+var_eff
Step3:比較所有候選源點(diǎn)的定位比較值,按照定位比較值從小到大的順序選出前k個(gè)節(jié)點(diǎn),得到該層的定位結(jié)果序列;
步驟4,分層定位結(jié)果集成
令分層i得到的結(jié)果序列為Li={n1,n2..,nk},為Li中的節(jié)點(diǎn)分配權(quán)值{k-1,k-2,…,0},即權(quán)值Li(n1)=k-1,Li(n2)=k-2,以此類推;計(jì)算所有分層結(jié)果序列中節(jié)點(diǎn)的得分其中i={1,…,m}為分層數(shù),pi為第i層觀察點(diǎn)占總觀察點(diǎn)的比例;得分最高的節(jié)點(diǎn)即為傳播源頭節(jié)點(diǎn)。