邵豪 王倫文 鄧健
摘 要:傳統(tǒng)K-shell網(wǎng)絡(luò)重要節(jié)點(diǎn)識別方法迭代時需網(wǎng)絡(luò)全局拓?fù)湫畔?,而且難以應(yīng)用于動態(tài)網(wǎng)絡(luò)。為解決該問題,提出基于鄰域優(yōu)先異步H運(yùn)算的動態(tài)網(wǎng)絡(luò)重要節(jié)點(diǎn)識別方法。首先,證明該算法收斂于Ks(K-shell)值,其次以各節(jié)點(diǎn)的度作為h指數(shù)初始值;然后,通過節(jié)點(diǎn)h指數(shù)排序和鄰居節(jié)點(diǎn)h指數(shù)變化選擇更新節(jié)點(diǎn),同時針對動態(tài)網(wǎng)絡(luò)節(jié)點(diǎn)的增減數(shù)目和最大度,修改h指數(shù)適應(yīng)拓?fù)渥兓敝了惴ㄊ諗坎⒄业街匾?jié)點(diǎn)。仿真實(shí)驗(yàn)結(jié)果表明,該方法通過鄰居節(jié)點(diǎn)局部信息且以更高效率找到動態(tài)網(wǎng)絡(luò)的重要節(jié)點(diǎn),收斂時間在靜態(tài)網(wǎng)絡(luò)中較隨機(jī)選擇更新節(jié)點(diǎn)法與變化鄰居選點(diǎn)法分別下降77.4%和28.3%,在網(wǎng)絡(luò)拓?fù)渥兓蠓謩e下降84.3%和38.8%。
關(guān)鍵詞:動態(tài)網(wǎng)絡(luò);重要節(jié)點(diǎn);h指數(shù);H運(yùn)算;K-shell;鄰居節(jié)點(diǎn)
中圖分類號:TP393
文獻(xiàn)標(biāo)志碼:A
Important node identification method for dynamic networks based on H operation
SHAO Hao1, WANG Lunwen1*, DENG Jian2
1.Institute of Electronic Countermeasure, National University of Defense Technology, Hefei Anhui 230037, China;
2.Second Department, Shijiazhuang Campus, Army Engineering University, Shijiazhuang Hebei 050003, China
Abstract:
Focused on the issue that the traditional important node identification method for K-shell networks needs global topology during iteration and cannot be used in dynamic networks, a neighborhood priority asynchronous H operation based an important node identification method for dynamic networks based on neighborhood priority asynchronous H operation was proposed. Firstly, the algorithm was proved to converge to Ks (K-shell) value; then the degree of each node was taken as the initial value of h-index, and the nodes to be updated were selected by the h-index ranking of the node and the h-index change of the neighbor nodes; meanwhile the h-index was modified to adapt to the topology change according to the number change and maximum degree of the dynamic network nodes, finally the algorithm converged to the Ks and the important nodes were found. The simulation results show that the algorithm can find important nodes effectively by local information of neighbor nodes with less convergence time. Compared with the random selection algorithm and the neighborhood-variety selection algorithm, the convergence time of the proposed algorithm decreases by 77.4% and 28.3% respectively in static networks and 84.3% and 38.8% respectively in dynamic networks.
Key words:
dynamic network; important node; h-index; H operation; K-shell; neighbor node
0 引言
隨著科技的發(fā)展,各種網(wǎng)絡(luò)滲透到人們?nèi)粘I钪校W(wǎng)絡(luò)在國民經(jīng)濟(jì)、軍事斗爭等領(lǐng)域發(fā)揮越來越大的作用。網(wǎng)絡(luò)中不同的節(jié)點(diǎn)在結(jié)構(gòu)和功能上發(fā)揮的作用截然不同[1],因此識別網(wǎng)絡(luò)中的重要節(jié)點(diǎn)具有十分重要意義。比如在社交網(wǎng)絡(luò)中,幾個重要用戶的微博信息能迅速傳遍整個網(wǎng)絡(luò)[2];戰(zhàn)場無線通信網(wǎng)中重要節(jié)點(diǎn)傳輸重要情報(bào),為作戰(zhàn)指揮提供信息保障[3];對重要節(jié)點(diǎn)的保護(hù)有助于防范網(wǎng)絡(luò)病毒攻擊[4]。
傳統(tǒng)的網(wǎng)絡(luò)重要節(jié)點(diǎn)識別方法通常利用節(jié)點(diǎn)的某一屬性,例如將圖論中的度[5]、最短路徑[6]、最小生成樹[7]等概念與現(xiàn)實(shí)問題背景相結(jié)合。近年來提出了一些新的識別方法,例如文獻(xiàn)[8]考慮社交網(wǎng)絡(luò)節(jié)點(diǎn)交互特征,將節(jié)點(diǎn)權(quán)值作為阻尼系數(shù)提高PageRank算法的識別精度;文獻(xiàn)[9]通過拓?fù)涮卣骱蛣恿W(xué)特性的集成,提出動態(tài)敏感中心,計(jì)算包含傳播速率和傳播時間且終止于目標(biāo)節(jié)點(diǎn)的加權(quán)步行總數(shù),以此作為節(jié)點(diǎn)重要性標(biāo)準(zhǔn)。文獻(xiàn)[10]提出利用節(jié)點(diǎn)鄰居的拓?fù)渲丿B系數(shù)來衡量節(jié)點(diǎn)層間關(guān)系,從而判斷時序網(wǎng)絡(luò)的重要節(jié)點(diǎn)。文獻(xiàn)[11]通過考慮節(jié)點(diǎn)的近鄰數(shù)目和聚類系數(shù)[12]而提出了聚類等級的概念。一般來說,在相同的鄰居數(shù)目下,節(jié)點(diǎn)的聚類系數(shù)越大,其影響力越小。此外,韓忠明等[13]通過研究節(jié)點(diǎn)間的三角結(jié)構(gòu)與鄰居節(jié)點(diǎn)的數(shù)目作為節(jié)點(diǎn)影響力度量指標(biāo)。Kitsak等[14]提出K-shell方法,通過依次剝離度數(shù)不符合條件的節(jié)點(diǎn)來給予其Ks(K-shell)值,以此來尋找網(wǎng)絡(luò)的核心,且Ks值越高的節(jié)點(diǎn),信息傳播能力越強(qiáng)[15]。但是,以上方法的缺點(diǎn)是運(yùn)算時都需要網(wǎng)絡(luò)全局的拓?fù)湫畔?,不適用于動態(tài)網(wǎng)絡(luò)以及分布計(jì)算。
為解決這一問題,呂琳媛在《Nature Communications》提出并證明網(wǎng)絡(luò)節(jié)點(diǎn)的h指數(shù)經(jīng)H運(yùn)算迭代收斂于Ks值[16],且H運(yùn)算的迭代使用節(jié)點(diǎn)鄰居局部信息,支持異步運(yùn)算。在原始算法中,節(jié)點(diǎn)的選擇策略是隨機(jī)的。因此隨著算法的進(jìn)行,已經(jīng)收斂的h指數(shù)對應(yīng)的節(jié)點(diǎn)個數(shù)增加,隨機(jī)選擇到已收斂節(jié)點(diǎn)的概率也會增加,導(dǎo)致一次迭代后h指數(shù)不發(fā)生改變,造成本次迭代浪費(fèi)[16]。隨機(jī)選擇節(jié)點(diǎn)的方式使算法在后期收
斂速度和性能明顯下降,為解決這一問題,Lee等[17] 考慮H運(yùn)算使用節(jié)點(diǎn)鄰居局部信息,提出變化鄰居選點(diǎn)法,優(yōu)先選擇鄰居h指數(shù)變化的節(jié)點(diǎn)進(jìn)行迭代,從而提高原始算法的后期收斂速度。但這兩種算法都沒有考慮值的固有屬性以及度大小對算法性能的影響。此外,兩種算法只考慮靜態(tài)網(wǎng)絡(luò),未考慮網(wǎng)絡(luò)節(jié)點(diǎn)鏈接發(fā)生變化的情況。
針對上述存在問題,本文提出一種基于H運(yùn)算的動態(tài)網(wǎng)絡(luò)重要節(jié)點(diǎn)識別方法。該算法改進(jìn)隨機(jī)選擇更新節(jié)點(diǎn)法[16]與變化鄰居選點(diǎn)法[17]的節(jié)點(diǎn)選擇策略,以及網(wǎng)絡(luò)變化后h指數(shù)的更新策略。通過鄰域優(yōu)先與h指數(shù)排序的方法選擇更新節(jié)點(diǎn),根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)變化數(shù)目修改h指數(shù)迭代值進(jìn)行運(yùn)算。通過理論與實(shí)驗(yàn)分別證明,本文算法與原始算法都收斂至Ks值,以判斷節(jié)點(diǎn)重要性,且收斂速度大大加快。
1 相關(guān)知識
1.1 網(wǎng)絡(luò)表示
G(N,M)表示由N個節(jié)點(diǎn)、M條鏈路組成的無權(quán)向網(wǎng)絡(luò)。鄰接矩陣A來表示網(wǎng)絡(luò)節(jié)點(diǎn)連接,矩陣元素aij定義如下:
aij=0, 節(jié)點(diǎn)i, j之間無鏈接
1,節(jié)點(diǎn)i, j有間無鏈接 (1)
節(jié)點(diǎn)度ki是節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)的個數(shù),即ki=∑Nj=1aij。
1.2 基于K-shell 的重要節(jié)點(diǎn)識別方法
K-shell的思想[14]如下:剔除網(wǎng)絡(luò)中孤立節(jié)點(diǎn)后,先刪除網(wǎng)絡(luò)中度為1的節(jié)點(diǎn)及其邊,之后刪除新產(chǎn)生的度為1的節(jié)點(diǎn)及其邊。重復(fù)上述操作,直到網(wǎng)絡(luò)中不存在度為1的節(jié)點(diǎn),將所有被刪除的節(jié)點(diǎn)賦予1-shell,即Ks值為1。隨后重復(fù)刪除度為2的節(jié)點(diǎn),得到Ks值為2的節(jié)點(diǎn)。依此類推,直到網(wǎng)絡(luò)中所有節(jié)點(diǎn)都被賦予Ks值。節(jié)點(diǎn)Ks值越高,表示節(jié)點(diǎn)位于網(wǎng)絡(luò)更核心位置,重要性越高[15]。
1.3 h指數(shù)與H算法
h-index[18]作為一個混合量化指標(biāo),其目的是量化科研人員作為獨(dú)立個體的研究成果。其原始定義是,一名科研人員的h-index等于h,意味著其總共發(fā)表的N篇論文中,有h篇論文被引用至少h次。目前,h-index也被用于社交網(wǎng)絡(luò)用戶影響力的排名[19]等領(lǐng)域。
與原始定義類似,本文將h-index定義擴(kuò)展至網(wǎng)絡(luò)拓?fù)洌粤炕?jié)點(diǎn)在其網(wǎng)絡(luò)中的重要性。定義H運(yùn)算如下:
g=H(g1,g2,…,gj)(2)
其中g(shù)1,g2,…,gj是任意j個非負(fù)整數(shù)。式(2)表示在這j個非負(fù)整數(shù)中,至少有g(shù)個整數(shù)的值不小于g,g取最大值。例如,在集合(2,2,3,3,4,5)中,至少有3個數(shù)的值不小于3命題成立,4個數(shù)的值不小于4命題不成立,因此,H(2,2,3,3,4,5)=3。此外,即節(jié)點(diǎn)的Ks值,等于其鄰居節(jié)點(diǎn)Ks值經(jīng)過H運(yùn)算后的值[16]。
針對網(wǎng)絡(luò)G(N,M),每個節(jié)點(diǎn)的h指數(shù)初始值是該節(jié)點(diǎn)的度,即h(0)i=ki。依據(jù)前文定義的H運(yùn)算,更新網(wǎng)絡(luò)中節(jié)點(diǎn)i的h指數(shù):
hi=H(hi1,hi2,…,hiki)(3)
其中,hi1,hi2,…,hiki為節(jié)點(diǎn)i的ki個鄰居的h指數(shù)。
當(dāng)網(wǎng)絡(luò)的H運(yùn)算迭代收斂時,每個節(jié)點(diǎn)的h指數(shù)都到達(dá)穩(wěn)態(tài)不發(fā)生變化。文獻(xiàn)[16]證明節(jié)點(diǎn)h指數(shù)到達(dá)穩(wěn)態(tài)時等于Ks值。在式(3)迭代中,h指數(shù)值沒有時間上標(biāo),也就是說 hi1,hi2,…,hiki的值可能位于不同時間階段,有的更新已數(shù)十次,有的從未更新,這樣的異步運(yùn)算為動態(tài)網(wǎng)絡(luò)與分布計(jì)算邁出了重要一步。
2 基于H運(yùn)算的重要節(jié)點(diǎn)識別方法
在實(shí)際中,節(jié)點(diǎn)的移動或者狀態(tài)變化會導(dǎo)致拓?fù)浣Y(jié)構(gòu)的變化。通過獲取新的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),重新初始化相關(guān)數(shù)值,重新進(jìn)行H算法迭代獲得節(jié)點(diǎn)的Ks值以判斷節(jié)點(diǎn)重要性是可行的,但這并不適合動態(tài)網(wǎng)絡(luò)的實(shí)際。本文考慮修改節(jié)點(diǎn)在變化前最新的h指數(shù)值以適應(yīng)拓?fù)渥兓?,避免重新迭代,并保證收斂時間不大于重新迭代的收斂時間。
2.1 動態(tài)網(wǎng)絡(luò)算法收斂性定理及證明
原始算法中h指數(shù)的收斂過程,是從節(jié)點(diǎn)度收斂至Ks值的單調(diào)非遞增過程[16]。在本文中,動態(tài)網(wǎng)絡(luò)結(jié)構(gòu)變化后,節(jié)點(diǎn)h指數(shù)初始值不是節(jié)點(diǎn)的度,而是一個更接近于收斂值Ks的數(shù),從而提高算法效率。以下給出定理并證明在本方法中,初始值雖然不是度,但依舊與原始算法一樣可以收斂至Ks值。
定理1 在網(wǎng)絡(luò)G(N,M)中,任意節(jié)點(diǎn)i的h指數(shù)的初始值h(0)i 不小于Ksi,通過H運(yùn)算,h(∞)i=Ksi。
證明 首先,證明任意節(jié)點(diǎn)i在任意時刻t,皆滿足h(t)i≥Ksi。采用反證法,因?yàn)楣?jié)點(diǎn)h指數(shù)初始值h(0)i=Ksi。隨著迭代的進(jìn)行,若存在某時刻t1,此時刻首次出現(xiàn)某一個節(jié)點(diǎn)j∈N,h(t1)j 其次,證明網(wǎng)絡(luò)中度最小的節(jié)點(diǎn)滿足h(∞)i=Ksi。對于ki值最小的節(jié)點(diǎn)i,依據(jù)K-shell性質(zhì),ki=Ksi;根據(jù)H運(yùn)算定義,h(∞)i≤ki,之前已用反證法證明h(∞)i≥Ksi。綜合得:Ksi≤h(∞)i≤ki=Ksi,故h(∞)i=Ksi。 然后,類似K-shell,將網(wǎng)絡(luò)中度最小的節(jié)點(diǎn)i剝離后,證明剩下所有節(jié)點(diǎn)中,度最小的節(jié)點(diǎn)j依舊滿足h(∞)j=Ksj。此時,節(jié)點(diǎn)j的情況分兩種情況討論: ① 節(jié)點(diǎn)j不與已剝離節(jié)點(diǎn)相連,與前文證明類似,可得kj=Ksj,h(∞)j≤kj ;綜合得h(∞)j=Ksj。 ② 節(jié)點(diǎn)j與已剝離節(jié)點(diǎn)相連。據(jù)K-shell的性質(zhì),Ksj≥Ksi。h(∞)j=H(h(∞)j1,h(∞)j2,…,h(∞)jkj),在節(jié)點(diǎn)的kj個鄰居中,已被的剝離節(jié)點(diǎn)個數(shù)為kj-Ksj,且滿足h(∞)i=Ksi≤Ksj;剩余未剝離節(jié)點(diǎn)的個數(shù)為Ksj,且滿足h(∞)≥Ksj,h(∞)j=H(h(∞)j1,h(∞)j2,…,h(∞)jkj)=Ksj。 重復(fù)剝離步驟,同理,網(wǎng)絡(luò)中最小度節(jié)點(diǎn)仍滿足h(∞)=Ks。最終所有節(jié)點(diǎn)被剝離,皆滿足h(∞)i=Ksi。定理1得證。 通過理論證明,本文算法與文獻(xiàn)[16]、文獻(xiàn)[17]的收斂值相同,即Ks值。1.2節(jié)介紹節(jié)點(diǎn)Ks值作為網(wǎng)絡(luò)核心位置的評判標(biāo)準(zhǔn),基于相同的評價指標(biāo),本文算法與原始算法相比,收斂后得到相同的網(wǎng)絡(luò)重要節(jié)點(diǎn)排序,有效地判斷網(wǎng)絡(luò)節(jié)點(diǎn)的重要性。 2.2 動態(tài)網(wǎng)絡(luò)重要節(jié)點(diǎn)識別策略與速度改進(jìn) 定理1證明,只要保證節(jié)點(diǎn)的h指數(shù)初始值大于其Ks值,H運(yùn)算也能夠收斂至Ks值。本文把網(wǎng)絡(luò)節(jié)點(diǎn)的變化,等效為同時增加m個節(jié)點(diǎn)和減少n個節(jié)點(diǎn)。網(wǎng)絡(luò)拓?fù)溆?10101010變化為011101110,可視作為網(wǎng)絡(luò)減少1個度為1的節(jié)點(diǎn),增加1個度為2的節(jié)點(diǎn)。假設(shè)變化前算法最新迭代至H=(h1,h2,…,hv)。以下,分別討論增加m個節(jié)點(diǎn)和減少n個節(jié)點(diǎn)時,如何改變h指數(shù),保證定理1成立。 1)網(wǎng)絡(luò)中增加m個節(jié)點(diǎn)。根據(jù)K-shell性質(zhì),每新增1個節(jié)點(diǎn),其余節(jié)點(diǎn)的Ks值至多加1。因此,將hi+m和k(new)i的較小值作為節(jié)點(diǎn)變化后的h指數(shù)初始值,算法依舊能收斂至Ks值。 2)網(wǎng)絡(luò)中減少n個節(jié)點(diǎn)。因?yàn)楣?jié)點(diǎn)與鏈路的減少,可能會導(dǎo)致節(jié)點(diǎn)的Ks值降低。節(jié)點(diǎn)的h指數(shù)的更新迭代依舊是非增的過程,依據(jù)定理1,算法依舊能收斂至Ks值。因此只需刪去減少節(jié)點(diǎn)的h指數(shù),其余之前更新到的h指數(shù)都可以繼續(xù)使用。 網(wǎng)絡(luò)變化后,原算法只能用新的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)重新迭代,hi初始值是k(new)i。本算法的hi初始值是hi+m和k(new)i的較小值,不大于k(new)i,從而提高算法速度并適應(yīng)網(wǎng)絡(luò)動態(tài)變化。 此外,為提升收斂速度,本文算法中,節(jié)點(diǎn)的選擇策略不再是隨機(jī)的,選擇策略考慮以下兩個方面: 1)一個節(jié)點(diǎn)的h指數(shù)更新過程,是從ki到Ks值的單調(diào)非增變化過程(ki≥hi≥Ksi)[16]。實(shí)際上,節(jié)點(diǎn)的度越高,其H運(yùn)算后其變化的概率越大,這對于度分布不均勻的網(wǎng)絡(luò)更加明顯。例如,如圖1的星型拓?fù)浣Y(jié)構(gòu)中,中心節(jié)點(diǎn)的度為8,周圍節(jié)點(diǎn)的度為1。優(yōu)先選擇度大的中心節(jié)點(diǎn)進(jìn)行H運(yùn)算,其值能迅速收斂至Ks值;若優(yōu)先選擇度小的周圍節(jié)點(diǎn),則會浪費(fèi)迭代次數(shù)。 對于hi=1的節(jié)點(diǎn),h指數(shù)已經(jīng)收斂,在接下去的算法選擇迭代節(jié)點(diǎn)時,跳過這些已收斂的節(jié)點(diǎn),提高收斂速度。 2)根據(jù)H運(yùn)算的定義,節(jié)點(diǎn)h指數(shù)只與其鄰居節(jié)點(diǎn)的h指數(shù)有關(guān),節(jié)點(diǎn)h指數(shù)定義為其有最多hi個鄰居節(jié)點(diǎn)的h指數(shù)不小于hi。由此可得,若某個節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)j經(jīng)過H運(yùn)算后滿足h原j>hi>h現(xiàn)j ,則hi經(jīng)過H運(yùn)算可能會發(fā)生變化。因此,在下步迭代中,優(yōu)先選擇節(jié)點(diǎn)i進(jìn)行H運(yùn)算以提高收斂速度。 綜上:為提高收斂速度,本文改進(jìn)原始算法更新節(jié)點(diǎn)的選擇策略以及網(wǎng)絡(luò)變化時h指數(shù)迭代值。一方面,基于鄰域優(yōu)先和度排列的方式,優(yōu)先選擇可能會發(fā)生變化的節(jié)點(diǎn)作為更新節(jié)點(diǎn),并跳過已收斂節(jié)點(diǎn),避免每步迭代時,節(jié)點(diǎn)的h指數(shù)未發(fā)生變化從而導(dǎo)致迭代浪費(fèi);另一方面,考慮到節(jié)點(diǎn)h指數(shù)的非遞增變化,盡可能縮小h指數(shù)的初始值以加快收斂速度。 2.3 基于H運(yùn)算的重要節(jié)點(diǎn)識別算法 基于2.2節(jié)介紹的改進(jìn)思想,提出基于鄰域優(yōu)先的H運(yùn)算的動態(tài)網(wǎng)絡(luò)重要節(jié)點(diǎn)識別方法,算法具體流程如下: 步驟1 對于無權(quán)向網(wǎng)絡(luò),獲取其節(jié)點(diǎn)鄰居拓?fù)湫畔?。初始化?jié)點(diǎn)集合V,運(yùn)算節(jié)點(diǎn)集合VC;集合HV記錄對應(yīng)節(jié)點(diǎn)的h指數(shù)。其中,集合V以節(jié)點(diǎn)度降序排列,初始hi=ki,VC為空集。 步驟2 若VC為空,取集合V中第一個節(jié)點(diǎn)v1,判斷其h=1是否為真。若為真,從集合V中刪除v1,取第二個節(jié)點(diǎn)進(jìn)行判斷,直至不為真。將不為真的節(jié)點(diǎn)加入集合VC中,并將該節(jié)點(diǎn)移至集合V最后。若VC不為空,直接進(jìn)行步驟3。 步驟3 將VC中的第一個節(jié)點(diǎn)vi按式(3)更新其hi值,并在VC中刪除該節(jié)點(diǎn)。 步驟4 比較步驟3中節(jié)點(diǎn)vi的鄰居vj的hj、hi和hi原。若hi原≥hj≥hi為真,將節(jié)點(diǎn)vj放入集合VC最首;否則,直接進(jìn)行步驟5。在本步驟中,如果滿足條件的節(jié)點(diǎn)vj不唯一,以hj值降序排列。 步驟5 更新節(jié)點(diǎn)鄰居拓?fù)湫畔⒉⑴c之前比較,若拓?fù)浒l(fā)生變化,進(jìn)行步驟6;否則,返回步驟2。 步驟6 獲取增加和減少的節(jié)點(diǎn)個數(shù)為分別為m、n,增加節(jié)點(diǎn)中最大的度為kadmax。 步驟7 將減少的節(jié)點(diǎn)從集合V、VC、HV中刪除,對于減少節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)j,若hj≤hi,則將節(jié)點(diǎn)vj放入集合VC最首;否則,直接進(jìn)行步驟8。 步驟8 將增加節(jié)點(diǎn)按度遞減排列放至集合VC首位。集合HV中滿足hi 直到節(jié)點(diǎn)h指數(shù)集合HV=(h1,h2,…,hV)收斂且網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不發(fā)生變化,算法終止。 2.4 算法復(fù)雜度分析 對于一個N個節(jié)點(diǎn)、M條鏈路的網(wǎng)絡(luò),文獻(xiàn)[17]證明,隨機(jī)選擇更新節(jié)點(diǎn)法[16]與變化鄰居選點(diǎn)法[17]空間復(fù)雜度均為O(N+M)。與原始算法類似,本文算法的輸入是節(jié)點(diǎn)數(shù)及各節(jié)點(diǎn)鄰居信息,空間復(fù)雜度同為O(N+M),較原始算法未增加。靜態(tài)網(wǎng)絡(luò)中,文獻(xiàn)[16]隨機(jī)選擇節(jié)點(diǎn)更新其h指數(shù)。可能會一直選擇經(jīng)過式(3)運(yùn)算后,h指數(shù)不變的節(jié)點(diǎn),因此最壞時間復(fù)雜度為無窮大;N次選擇后,平均每個節(jié)點(diǎn)被選擇一次進(jìn)行h運(yùn)算,一個節(jié)點(diǎn)的h指數(shù)是非遞增序列(最大值不大于N-1,最小值不小于1),因此平均時間復(fù)雜度為O(N2)。文獻(xiàn)[17]對所有節(jié)點(diǎn)進(jìn)行鄰居變化對比,時間復(fù)雜度為O(N2)。本文算法中,根據(jù)步驟2可得,運(yùn)算集合VC中節(jié)點(diǎn)來源于滿足條件的集合V,節(jié)點(diǎn)個數(shù)小于N,因此其時間復(fù)雜度小于O(N2)。若已收斂的網(wǎng)絡(luò)有n個節(jié)點(diǎn)的結(jié)構(gòu)發(fā)生變化,文獻(xiàn)[16-17]算法需重新賦值迭代,時間復(fù)雜度與靜態(tài)網(wǎng)絡(luò)相同。本文算法根據(jù)步驟7、8改變節(jié)點(diǎn)的初始賦值,Ks的變化不高于n-1,其時間復(fù)雜度變?yōu)镺(nN)。綜上,本文算法相比原始算法,在相同的空間復(fù)雜度的前提下,有更低的時間復(fù)雜度。 3 實(shí)驗(yàn)分析 本文采用美國航空網(wǎng)絡(luò)(Air)[20]、政治博客網(wǎng)絡(luò)(PB)[21]、海豚網(wǎng)絡(luò)(Dolphin)[16]、社團(tuán)網(wǎng)絡(luò)(Zachary)、無標(biāo)度網(wǎng)絡(luò)(BA)[22]網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)進(jìn)行實(shí)驗(yàn)分析。Air、PB、Dolphin網(wǎng)絡(luò)是無權(quán)重的有向網(wǎng)絡(luò),在實(shí)驗(yàn)前將網(wǎng)絡(luò)中定向的鏈接轉(zhuǎn)換為非定向[11]。五種網(wǎng)絡(luò)的參數(shù)性質(zhì)如表1。 實(shí)驗(yàn)中算法評價標(biāo)準(zhǔn)PT,其定義為迭代到T步時,h指數(shù)已收斂的節(jié)點(diǎn)數(shù)目比例。根據(jù)定義,PT∈[0,1]且單調(diào)非減。若PT=1成立,表示算法可以收斂至Ks值;若PT上升速度越快,表示收斂時間越短,算法的收斂速度越快。 本實(shí)驗(yàn)使用Matlab程序,首先對實(shí)驗(yàn)網(wǎng)絡(luò)使用本文提出的基于鄰域優(yōu)先與排序的H算法、文獻(xiàn)[16]的隨機(jī)選擇更新節(jié)點(diǎn)法和文獻(xiàn)[17]的鄰居變化選擇法,輸出評價標(biāo)準(zhǔn)PT以分析本文算法在靜態(tài)網(wǎng)絡(luò)上的性能及收斂速度。其次,隨機(jī)在不同時刻t1、t2,模擬網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)變化,隨機(jī)改變網(wǎng)絡(luò)中m個節(jié)點(diǎn)與其余節(jié)點(diǎn)的鏈接情況(m=10%*V),輸出評價標(biāo)準(zhǔn)PT,以分析動態(tài)網(wǎng)絡(luò)中三種算法的性能及收斂速度。在實(shí)驗(yàn)結(jié)果中,方法1表示文獻(xiàn)[16]算法,方法2表示文獻(xiàn)[17]算法。 圖2表示不同網(wǎng)絡(luò)中,不同方法收斂過程(PT);表2表示在不同網(wǎng)絡(luò)中,三種方法的收斂迭代次數(shù)。 由圖2及表2可得,無論是靜態(tài)網(wǎng)絡(luò)還是動態(tài)網(wǎng)絡(luò),本文提出的算法與文獻(xiàn)[16-17]算法相同,最終都收斂至Ks值(PT=1),證明本文算法能與原始算法一樣有效判斷重要節(jié)點(diǎn)。在靜態(tài)網(wǎng)絡(luò)中,三種算法在迭代初期性能差別不大,這是因?yàn)樵诔跗诠?jié)點(diǎn)h指數(shù)普遍大于其Ks值,三種算法節(jié)點(diǎn)經(jīng)過H運(yùn)算后h指數(shù)大概率能發(fā)生變化。隨著迭代進(jìn)行,因?yàn)楸疚乃惴ɑ卩徲蜃兓椭笖?shù)排序的方法選擇更新節(jié)點(diǎn),迭代后h指數(shù)發(fā)生變化的概依舊較高。而文獻(xiàn)[16]和文獻(xiàn)[17]算法選擇到h指數(shù)不會變化的節(jié)點(diǎn)概率大大增加,性能下降。最終,本文算法收斂時間較文獻(xiàn)[16]、[17]算法平均下降77.4%、28.3%。 在動態(tài)網(wǎng)絡(luò)中,在實(shí)驗(yàn)中t1,t2時刻,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)發(fā)生變化,導(dǎo)致節(jié)點(diǎn)的h指數(shù)和Ks值都發(fā)生變化,三種算法的PT都發(fā)生下降。拓?fù)渥兓?,本文算法h指數(shù)初始值比重新迭代的原算法值更低,更接近于收斂值,從而加快了收斂速度。比較網(wǎng)絡(luò)拓?fù)渥兓瘯r刻到算法收斂時刻間的迭代次數(shù),可得網(wǎng)絡(luò)變化后本文方法的收斂時間較文獻(xiàn)[16]和文獻(xiàn)[17]下降了84.3%和38.8%。 綜上:經(jīng)實(shí)驗(yàn)表明,在靜態(tài)網(wǎng)絡(luò)中,本文算法相較于原始兩種算法分別減少77.4%和28.3%的收斂時間。當(dāng)網(wǎng)絡(luò)10%節(jié)點(diǎn)變化后,本文算法分別減少84.3%和38.8%的收斂時間。這證明本文提出的算法不僅能夠最終收斂至Ks值以判斷節(jié)點(diǎn)重要性,而且有效地提升了收斂速度,這極大地促進(jìn)K-shell在動態(tài)網(wǎng)絡(luò)中的應(yīng)用。 4 結(jié)語 本文改進(jìn)隨機(jī)選擇更新節(jié)點(diǎn)法與變化鄰居節(jié)點(diǎn)選擇法的節(jié)點(diǎn)更新策略與鏈接變化時的初始化策略,提出基于鄰域優(yōu)先異步H運(yùn)算的重要節(jié)點(diǎn)識別方法。一方面,比較節(jié)點(diǎn)h指數(shù)大小和鄰居h指數(shù)變化情況來選擇更新節(jié)點(diǎn)進(jìn)行H運(yùn)算;另一方面,根據(jù)變化節(jié)點(diǎn)的參數(shù)修改迭代值,避免拓?fù)渥兓瘜?dǎo)致重新迭代。通過理論和實(shí)驗(yàn)證明,本文算法在保證相同的識別結(jié)果和空間復(fù)雜度的基礎(chǔ)上,較原算法降低了時間復(fù)雜度,更快速地找到網(wǎng)絡(luò)中重要節(jié)點(diǎn),且適應(yīng)拓?fù)渥兓?。下一步,將考慮基于h運(yùn)算的分布式并行計(jì)算網(wǎng)絡(luò)重要節(jié)點(diǎn)方法。 參考文獻(xiàn) [1]高壯良,呂雁飛,張鴻.基于Graphlab的網(wǎng)絡(luò)圖關(guān)鍵節(jié)點(diǎn)發(fā)現(xiàn)算法研究[J].通信學(xué)報(bào),2016,37(3):182-189.(GAO Z L, LYU Y F, ZHANG H. Key nodes discovery in network graph based on Graphlab [J]. Journal on Communications, 2016, 37(3): 182-189.) [2]ARINGHIERI R, GROSSO A, HOSTEINS P, et al. Local search metaheuristics for the critical node problem [J]. Networks, 2016, 67(3): 209-221. [3]ROSATO V, ISSACHAROFF L, TIRITICCO F, et al. Modelling interdependent infrastructures using interacting dynamical models [J]. International Journal of Critical Infrastructures, 2016, 4(1): 63-79. [4]楊雄,黃德才,張子柯.推薦重要節(jié)點(diǎn)部署防御策略的優(yōu)化模型[J].物理學(xué)報(bào),2015,64(5):502-505.(YANG X, HUANG D C, ZHANG Z K. Recommendation of important nodes in deployment optimization model of defense strategy [J]. Acta Physica Sinica, 2015, 64(5): 502-505.) [5]任曉龍,呂琳媛.網(wǎng)絡(luò)重要節(jié)點(diǎn)排序方法綜述[J].科學(xué)通報(bào),2014,59(13):1175-1197.(REN X L, LYU L Y. Review of ranking nodes in complex networks [J]. Chinese Science Bulletin, 2014, 59(13): 1175-1197.) [6]VENTRESCA M, ALEMAN D. Efficiently identifying critical nodes in large complex networks [J]. Computational Social Networks, 2015, 2: 6-22. [7]GHOSH R, LERMAN K. Rethinking centrality: the role of dynamical processes in social network analysis [J]. Discrete and Continuous Dynamical Systems Series B, 2017, 19(5): 1355-1372. GHOSH R, LERMAN K. Rethinking centrality: the role of dynamical processes in social network analysis [EB/OL]. [2018-12-21]. https://arxiv.org/pdf/1209.4616v1.pdf. [8]王班,馬潤年,王剛,等.改進(jìn)的加權(quán)網(wǎng)絡(luò)節(jié)點(diǎn)重要性評估的互信息方法[J].計(jì)算機(jī)應(yīng)用,2015,35(7):1820-1823.(WANG B, MA R N, WANG G, et al. Improved evaluation method for node importance based on mutual information in weighted networks [J]. Journal of Computer Applications, 2015, 35(7): 1820-1823.) [9]HUANG D-W, YU Z-G. Dynamic-sensitive centrality of nodes in temporal networks [J]. Scientific Reports, 2017, 7: 41454. [10]楊劍楠,劉建國,郭強(qiáng).基于層間相似性的時序網(wǎng)絡(luò)節(jié)點(diǎn)重要性研究[J].物理學(xué)報(bào),2018,67(4):272-280.(YANG J N, LIU J G, GUO Q. Node importance idenfication for temporal network based on inter-layer similarity [J]. Acta Physica Sinica, 2018, 67(4): 272-280.) [11]ZHANG J-X, CHEN D-B, DONG Q, et al. Identifying a set of influential spreaders in complex networks [J]. Scientific Reports, 2016, 6: Article No. 27823. [12]WANG Y, VASILAKOS A V, MA J. VPEF: a simple and effective incentive mechanism in community-based autonomous networks [J]. IEEE Transactions on Network and Service Management, 2015, 12(1): 75-86. [13]韓忠明,陳炎,李夢琪.一種有效的基于三角結(jié)構(gòu)的復(fù)雜網(wǎng)絡(luò)節(jié)點(diǎn)影響力度量模型[J].物理學(xué)報(bào),2016,65(16):285-296.(HAN Z M, CHEN Y, LI M Q. An efficient node influence metric based on triangle in complex networks [J]. Acta Physica Sinica, 2016, 65(16): 285-296.) [14]KITSAK M, GALLOS L K, HAVLIN S, et al. Identification of influential spreaders in complex networks [J]. Nature Physics, 2010, 6(11): 888-893. [15]FAN Y, ZHANG R, ZHAO Y, et al. Identifying the most influential spreaders in complex networks by an Extended Local K-Shell Sum [J]. International Journal of Modern Physics C, 2017, 28(1): 925-936. [16]LL, ZHOU T, ZHANG Q-M, et al. The h-index of a network node and its relation to degree and coreness [J]. Nature Communications, 2016, 7(2): 10-16. [17]LEE Y-L, ZHOU T. Fast asynchronous updating algorithms for k-shell indices [J]. Physica A: Statistical Mechanics and its Applications, 2016, 482(1): 524-531. [18]van BEVERN R, KOMUSIEWICZ C,? NIEDERMEIER R, et al. H-index manipulation by merging articles: models, theory, and experiments [C]// IJCAI ‘15: Proceedings of the 24th International Conference on Artificial Intelligence. Menlo Park, CA: AAAI Press, 2015: 808-814. [19]賈沖沖,王名揚(yáng),車鑫.基于HRank的微博用戶影響力評價[J].計(jì)算機(jī)應(yīng)用,2015,35(4):1017-1020.(JIA C C, WANG M Y, CHE X. Evaluation of microblog users influence based on HRank [J]. Journal of Computer Applications, 2015, 35(4): 1017-1020.) [20]WANG C, NING H, BAI Y, et al. A method of network topology optimization design considering application process characteristic [J]. Modern Physics Letters B, 2018, 32(7): 85-91. [21]NEDIC A, OLSHEVSKY A, RABBAT M G. Network topology and communication-computation tradeoffs in decentralized optimization [J]. Proceedings of the IEEE, 2018, 106(5): 953-976. [22]SCHIEBER T A, CARPI L, DAZ-GUILERA A, et al. Quantification of network structural dissimilarities [J]. Nature Communications, 2017, 8(1): 13-28. This work is partially supported by Science and Technology Innovation Special Zone Project of Military (17-H863-01-ZT-003-204-03). SHAO Hao, born in 1995, M. S. candidate. His research interests include network topology recognition, network behavior analysis. WANG Lunwen, born in 1966, Ph. D., professor. His research interests include machine learning, data mining and intelligent information processing. DENG Jian, born in 1997. His research interests include electronic information processing.