張雪梅,張起貴
(1.山西職業(yè)技術學院電子與通信工程系,山西 太原 030006;2.太原理工大學信息與計算機學院,山西 晉中 030600)
由于節(jié)點在無線傳感網(wǎng)絡中是隨機安置的[1-2],導致無線傳感網(wǎng)絡中覆蓋的節(jié)點較少。 在這種情況下,節(jié)點在無線傳感網(wǎng)絡中也會呈現(xiàn)出覆蓋冗余的問題,因為節(jié)點在拋灑時位置是固定不變的,所以需要隨機調(diào)整節(jié)點子集,即可實現(xiàn)覆蓋優(yōu)化[3]。 這種節(jié)點拋灑效果存在節(jié)點能量浪費、節(jié)點與信號發(fā)生沖突的缺陷,因此,為了解決該問題,需要利用節(jié)點調(diào)度最優(yōu)策略,安排節(jié)點能夠輪流工作,降低網(wǎng)絡節(jié)點冗余,為此,需要對無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化方法展開詳細研究。
王毅等[4]提出基于水波優(yōu)化算法的無線傳感器網(wǎng)絡覆蓋研究方法,該方法首先獲取了節(jié)點在傳感網(wǎng)絡中的坐標集,基于各類坐標點獲取結果對網(wǎng)絡節(jié)點的區(qū)域覆蓋率開展詳細計算,并將計算結果用作適應度函數(shù),利用建立的水波優(yōu)化(Water Wave Optimization,WWO)算法模型把節(jié)點坐標集輸入到模型內(nèi),同時求解出節(jié)點適應度最優(yōu)解,經(jīng)不斷收斂,節(jié)點覆蓋率達到設定的閾值后,輸出最優(yōu)節(jié)點個體,實現(xiàn)網(wǎng)絡節(jié)點覆蓋優(yōu)化,該方法的區(qū)域覆蓋率計算結果存有誤差,導致該方法存在覆蓋性能差的問題。 Zhang 等[5]提出一種基于多目標自適應遞減元編碼遺傳算法的無線傳感器網(wǎng)絡節(jié)點布局優(yōu)化方法。 本文對編碼方法進行了改進,將遞減進制編碼進一步推廣到多目標優(yōu)化問題。 通過對N元編碼算法實驗結果的分析,提出了元數(shù)的自適應變化規(guī)律。 采用自適應遞減進制編碼方法的多目標優(yōu)化算法,對無線傳感器網(wǎng)絡中的節(jié)點布局進行了優(yōu)化。該方法可以提高搜索效率。 但該方法存在無線傳感網(wǎng)絡節(jié)點覆蓋率較低的問題。 劉俠等[6]提出基于虛擬力的遠距離無線電(Long Range Radio,LoRa)浮標網(wǎng)絡覆蓋優(yōu)化算法,以初始虛擬力算法為基礎,該方法構建出無線傳感網(wǎng)絡節(jié)點區(qū)域及節(jié)點之間的受力模型,并利用圓形覆蓋模型進一步優(yōu)化無線傳感網(wǎng)絡節(jié)點,經(jīng)實驗仿真驗證,該算法能夠快速地完成網(wǎng)絡節(jié)點全部部署,同時在無線傳感網(wǎng)絡中消耗的能量最低,以此完成網(wǎng)絡節(jié)點覆蓋優(yōu)化,該方法的優(yōu)化效果不完善,存在節(jié)點收斂性低的問題。
為了解決上述方法中存在的問題,提出基于鄰居信息的無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化方法。 利用鄰居信息,判斷無線傳感網(wǎng)絡節(jié)點冗余信息。 依據(jù)無線傳感網(wǎng)絡節(jié)點冗余信息的判斷及處理,構建無線傳感網(wǎng)絡覆蓋模型。 采用粒子群算法,優(yōu)化構建覆蓋模型,實現(xiàn)網(wǎng)絡節(jié)點覆蓋優(yōu)化,從而有效提升無線傳感網(wǎng)絡節(jié)點覆蓋效果。
為了有效實現(xiàn)無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化,首先敘述無線傳感網(wǎng)絡的相關內(nèi)容,然后利用鄰居信息,定義無線傳感網(wǎng)絡感知節(jié)點和通信節(jié)點,完成節(jié)點和網(wǎng)絡感知重疊,獲取無線傳感網(wǎng)絡節(jié)點覆蓋區(qū)域和覆蓋率,判斷無線傳感網(wǎng)絡節(jié)點是否存在冗余信息。
無線傳感網(wǎng)絡是一種利用無線通信技術,將成千上萬個傳感器節(jié)點自由地組合在一起的分布式傳感網(wǎng)絡[7]。 無線傳感網(wǎng)絡中的傳感器是以無線方式進行通信的,所以可以靈活地設定網(wǎng)路,能夠隨時改變設備的位置,也可以與網(wǎng)路進行有線或無線連接。
無線傳感網(wǎng)絡包括節(jié)點、傳感網(wǎng)絡和使用者三個方面。 其中,節(jié)點通常是以特定的方式將節(jié)點覆蓋在某一特定的區(qū)域內(nèi),使整個區(qū)域達到一定的監(jiān)控范圍;傳感網(wǎng)絡具有數(shù)據(jù)采集、處理和傳輸三大功能,通過協(xié)作的方式,感知、采集、處理和傳輸網(wǎng)絡覆蓋范圍內(nèi)的目標,最后將其傳遞到網(wǎng)絡使用者。 而節(jié)點在該網(wǎng)絡中被隨機部署,部署后它的位置處于固定狀態(tài),不具備移動性。
根據(jù)以上條件,設定網(wǎng)絡通信節(jié)點半徑是感知半徑的兩倍,為此基于鄰居信息對無線傳感網(wǎng)絡節(jié)點是否存有冗余進行判斷。
采用鄰居信息定義無線傳感網(wǎng)絡各個節(jié)點,判斷無線傳感網(wǎng)絡節(jié)點是否存有冗余信息。 詳情如下所示:
①基于鄰居信息的感知節(jié)點
利用鄰居信息對無線傳感網(wǎng)絡感知節(jié)點集合進行定義,設置網(wǎng)絡節(jié)點為i,那么它在網(wǎng)絡中的感知鄰居集合方程表達式為:
式中:ix定義為節(jié)點i在坐標x中的位置,iy表示節(jié)點位置,Rs代表感知半徑最大值,j標記網(wǎng)絡節(jié)點,Ci表示感知鄰居節(jié)點集合。
②基于鄰居信息的通信節(jié)點
利用鄰居信息對節(jié)點i的通信鄰居集合進行定義,該方程表達式定義如下:
式中:Di代表通信鄰居節(jié)點集合,Rc代表節(jié)點在無線傳感網(wǎng)絡中的通信距離最大值,并滿足Rc=2Rs的條件。
③基于鄰居信息的節(jié)點感知重疊
一般情況下無線傳感網(wǎng)絡中存在節(jié)點i及通信鄰居節(jié)點j兩種,網(wǎng)絡中這兩個節(jié)點會根據(jù)自身感知區(qū)域組成一個圓,圓形周邊會有兩個相交的點,設置兩點P、Q表示如下。 無線傳感網(wǎng)絡節(jié)點感知覆蓋如圖1 所示。
圖1 無線傳感網(wǎng)絡節(jié)點感知覆蓋示意圖
從圖1 可知,圖中重疊的區(qū)域就是節(jié)點i與節(jié)點j的感知重疊區(qū)域,當無線傳感網(wǎng)絡節(jié)點的覆蓋率設定為ε時,兩個節(jié)點的感知重疊區(qū)域面積要低于設定的ε值時,就需要對網(wǎng)絡節(jié)點i開展休眠處理。
④基于鄰居信息的網(wǎng)絡感知重疊圓心角
設置無線傳感網(wǎng)絡感知鄰居節(jié)點j對網(wǎng)絡節(jié)點i的重疊區(qū)域部分有一個圓心角,設置該角由β定義而成,那么該角的角度值通過下述方程標記:β=2arccosr/2R。 式中,r為半徑。
⑤獲取無線傳感網(wǎng)絡節(jié)點覆蓋區(qū)域
若在網(wǎng)絡節(jié)點感知圓中存在任一節(jié)點,該點就會自動形成一個弧度值,因此,當與y軸相交的直線與圓周節(jié)點相交時,所對應的弧度值為0。
基于上述分析,取得節(jié)點之間的覆蓋位置,標記為[q,p],該區(qū)間中q代表相交點Q的弧度值,而p則表示相交點P的弧度值。 而點Q與點P均為網(wǎng)絡節(jié)點圓周交點。
⑥網(wǎng)絡節(jié)點被覆蓋率
采用鄰居信息[8-9]對網(wǎng)絡節(jié)點i在無線傳感網(wǎng)絡感知鄰居節(jié)點中的覆蓋區(qū)間集合開展詳細表示,該集合定義為式中,U為覆蓋區(qū)間。
感知鄰居節(jié)點占據(jù)了大部分感知區(qū)域,所以在圓心中沒有被節(jié)點i覆蓋的位置就是圓心角中的銳角,而剩余區(qū)域則全部被節(jié)點覆蓋,在這種情況下無線傳感網(wǎng)絡被節(jié)點i覆蓋區(qū)域的被覆蓋率就定義如下:
式中:η代表被覆蓋率。
⑦獲取無線傳感網(wǎng)絡節(jié)點覆蓋率
基于以上獲取的無線傳感網(wǎng)絡節(jié)點被覆蓋率,得出無線傳感網(wǎng)絡節(jié)點覆蓋率,該方程表達式定義為:
式中:ξ為覆蓋率,Sall_node為感知區(qū)域面積,Sarea為無線傳感網(wǎng)絡的總面積。
通過獲取的節(jié)點與鄰居節(jié)點的距離、能量、覆蓋率判斷無線傳感網(wǎng)絡節(jié)點是否存有冗余情況,如果有冗余問題,則需實施休眠處理,令網(wǎng)絡中消耗的能量最小化。
在上述無線傳感網(wǎng)絡節(jié)點冗余信息的判斷和處理的基礎上,構建無線傳感網(wǎng)絡覆蓋模型。 將無線傳感網(wǎng)絡節(jié)點覆蓋率和節(jié)點冗余信息作為優(yōu)化目標,采用粒子群算法,優(yōu)化構建的無線傳感網(wǎng)絡覆蓋模型,實現(xiàn)無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化。
依據(jù)無線傳感網(wǎng)絡節(jié)點冗余信息的判斷及處理,構建無線傳感網(wǎng)絡覆蓋模型。
假設在無線傳感網(wǎng)絡中的監(jiān)測區(qū)域為矩形R1×R2,對像素點m×n實施離散化處理,而m×n的面積標定為1。 無線傳感網(wǎng)絡由多個節(jié)點S1,S2,…,Sn組建而成,當節(jié)點Si在像素點(x,y)中發(fā)生事件時,該事件E(x,y)感知函數(shù)即可定義為:f(x,y,Si)。
設置網(wǎng)絡節(jié)點信號閾值為δ,當f(x,y,Si)≥δ時,節(jié)點事件E就會被Si感知到。 因此選取“0-1”模型用作無線傳感網(wǎng)絡節(jié)點感知模型,而δ則滿足[0,1]范圍內(nèi)。 此時節(jié)點Si的歐氏距離定義如下:
式中:‖·‖標記歐氏距離。
因此設置Si的感知區(qū)域為Ai,同時與節(jié)點Si相對應的節(jié)點集合標記為C={S1,S2,…,Sn},該感知區(qū)域定義如下:
式中:A定義為感知區(qū)域,Δx、Δy均標記為所屬節(jié)點集覆蓋,n與m均定義為常數(shù)。
那么與其相對應的網(wǎng)絡區(qū)域覆蓋率[10-11],即構建的無線傳感網(wǎng)絡節(jié)點覆蓋模型如下所示:
式中:R(C)為建立的模型。
基于建立的覆蓋模型,采用粒子群算法對該模型進行優(yōu)化處理,以此實現(xiàn)無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化。
以網(wǎng)絡節(jié)點覆蓋率、節(jié)點冗余信息用作粒子群算法[12]優(yōu)化目標,優(yōu)化構建的覆蓋模型。
①適應度函數(shù)
在無線傳感網(wǎng)絡區(qū)域中選取活躍的節(jié)點部署在網(wǎng)絡區(qū)域中,使能源消耗具有平衡性,同時減少了網(wǎng)絡重疊的區(qū)域。 將節(jié)點剩余能量、節(jié)點過載區(qū)域、信息冗余程度用作考慮條件,得出節(jié)點適應度函數(shù)[13],定義為:
式中:a、b、c均代表權重系數(shù),同時滿足a+b+c=1 的條件,代表t時刻粒子i所處狀態(tài)。 該粒子狀態(tài)會在傳感網(wǎng)絡區(qū)域內(nèi)體現(xiàn)。f()定義適應度函數(shù),f1()表示能量比值,當比值較小時,表明能量在網(wǎng)絡余下的能量越多,驗證了該網(wǎng)絡性能好,反之則差。f2()代表標準差距離,取值越小說明節(jié)點覆蓋率越均勻。f3()標記節(jié)點冗余程度。
②更新粒子位置及速度
選取遺傳算法[14-15]中的變異算子對粒子的位置更新及速度更新進行替代,其替代結果如下所示:
式中:M標記為變異算子,標記t-1 代粒子,r1標記為隨機數(shù),ω定義權重。Fi代表粒子更新,標記為替代函數(shù)。
令局部搜索與全局搜索之間保持平衡性,優(yōu)化的網(wǎng)絡搜索區(qū)域表示為:
式中:ωmin代表最終值,全局搜索時提升了搜索能力,fi定義為粒子函數(shù),fgd屬于全局最優(yōu)值,fid屬于個體最優(yōu)值。
利用交叉算子對粒子更新后的位置及速度表示如下:
式中:Cp和Cg均代表交叉算子函數(shù)。 利用第一個方程表達式交叉處理,從中得出粒子最優(yōu)解。 再采用第二個方程對開展交叉處理,得出優(yōu)化后的全局粒子。 隨機數(shù)通過r代表,c表示為累積參數(shù)。
基于以上流程得出最新粒子更新表達式:
由于三種變量值是相互影響的,所以每一輪更新中都會出現(xiàn)一個新的交叉算子,以此提升粒子的多樣性。 最終通過該方程表達式實現(xiàn)無線傳感網(wǎng)絡節(jié)點覆蓋模型的優(yōu)化,完成基于鄰居信息的無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化。
為了驗證基于鄰居信息的無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化方法的有效性,需要對該方法開展實驗對比測試。 將MATLAB 仿真軟件作為測試平臺,對無線傳感網(wǎng)絡節(jié)點覆蓋性能展開詳細測試。 設置本次實驗參數(shù),無線傳感網(wǎng)絡區(qū)域范圍為100 m×100 m,選取100 個網(wǎng)絡節(jié)點部署在無線傳感網(wǎng)絡中。 采用所提方法、文獻[4]方法和文獻[5]方法進行對比測試。
基于上述設置實驗參數(shù),利用所提方法開展覆蓋優(yōu)化前后節(jié)點部署個數(shù)對比測試,其測試結果如圖2 所示。
圖2 覆蓋優(yōu)化前后的節(jié)點部署測試
分析圖2 可以看出,無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化前,節(jié)點部署數(shù)量較少,說明未能將節(jié)點有效部署在網(wǎng)絡中。 而利用所提方法對無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化后,能夠有效實現(xiàn)網(wǎng)絡節(jié)點部署,確保無線傳感網(wǎng)絡節(jié)點覆蓋效果。 這主要是因為所提方法利用粒子群算法對建立的無線傳感網(wǎng)絡覆蓋模型進行優(yōu)化,使粒子可以不斷迭代更新自身位置及速度,最大化網(wǎng)絡節(jié)點后,令節(jié)點達到均勻部署的目的。
為了進一步驗證所提方法的節(jié)點覆蓋率,利用所提方法、文獻[4]方法和文獻[5]方法對無線傳感網(wǎng)絡節(jié)點覆蓋率進行對比測試,測試結果如圖3所示。
圖3 無線傳感網(wǎng)絡節(jié)點覆蓋率對比測試
分析圖3 中的數(shù)據(jù)可知,隨著網(wǎng)絡節(jié)點數(shù)量的增加,不同方法的無線傳感網(wǎng)絡節(jié)點覆蓋率隨之降低。 當網(wǎng)絡節(jié)點為100 個時,文獻[4]方法和文獻[5]方法的無線傳感網(wǎng)絡節(jié)點覆蓋率分別為93%和90%。 而所提方法的無線傳感網(wǎng)絡節(jié)點覆蓋率高達97%。 由此可知,所提方法的無線傳感網(wǎng)絡節(jié)點覆蓋率較高。
無線傳感網(wǎng)絡節(jié)點的收斂性夠體現(xiàn)出網(wǎng)絡節(jié)點覆蓋能力及搜索能力。 節(jié)點收斂性越高,說明該方法的搜索能力及覆蓋能力越強;反之,節(jié)點收斂性越低,說明該方法的搜索能力及覆蓋能力越弱。 采用所提方法、文獻[4]方法和文獻[5]方法分別對無線傳感網(wǎng)絡節(jié)點的收斂性開展對比測試,具體測試結果如圖4 所示。
圖4 無線傳感網(wǎng)絡節(jié)點收斂性對比測試
通過圖4 中的數(shù)據(jù)可知,隨著網(wǎng)絡節(jié)點數(shù)量的增加,不同方法的無線傳感網(wǎng)絡節(jié)點收斂性隨之增加。 當網(wǎng)絡節(jié)點為100 個時,文獻[4]方法和文獻[5]方法的無線傳感網(wǎng)絡節(jié)點收斂性分別為92%和94%。 而所提方法的無線傳感網(wǎng)絡節(jié)點收斂性高達98.4%。 由此可知,所提方法的無線傳感網(wǎng)絡節(jié)點收斂性較高,表明所提方法的搜索能力及覆蓋能力較強。
無線傳感網(wǎng)絡節(jié)點的隨機性會使節(jié)點部署效果差,導致節(jié)點覆蓋能力較弱,針對這一問題,提出基于鄰居信息的無線傳感網(wǎng)絡節(jié)點覆蓋優(yōu)化方法。 該方法基于鄰居信息判斷了無線傳感網(wǎng)絡節(jié)點是否存有冗余問題,若存在則對節(jié)點實施相對應的處理方法。 根據(jù)判斷結果構建無線傳感網(wǎng)絡節(jié)點覆蓋模型,并采用粒子群算法優(yōu)化建立的模型,實現(xiàn)最終覆蓋優(yōu)化。 實驗結果如下:
①使用所提方法對無線傳感網(wǎng)絡節(jié)點覆蓋進行優(yōu)化后,無線傳感網(wǎng)絡節(jié)點部署數(shù)量可達到100 個,具有較好的無線傳感網(wǎng)絡節(jié)點覆蓋效果。
②所提方法的無線傳感網(wǎng)絡節(jié)點覆蓋率高達97%,能夠有效提高無線傳感網(wǎng)絡節(jié)點覆蓋率。
③所提方法的無線傳感網(wǎng)絡節(jié)點收斂性高達98.4%,可以有效提升無線傳感網(wǎng)絡節(jié)點收斂性,增強搜索能力及覆蓋能力。