李 廬
(安徽財經大學教務處,安徽蚌埠 23303)
當前無線傳感器網絡(Wireless Sensor Networks,WSN)在各領域具有較高的應用價值.因為物聯網中的WSN節點部署環境存在較高的隨機性,并且節點容易產生故障,導致WSN網絡的運行質量降低.因此,尋求有效的物聯網中的WSN網絡中的節點故障定位方法,成為相關人員分析的熱點.伴隨經濟環境的快速發展,國外的基于物聯網的信息化戰略項目發展速度較快,比如說u-Korea、u-Japan[1,2],物聯網也被列入我國戰略性新興產業予以重點扶持,為了構建物聯網,就需要找準網絡節點,快速定位脆弱節點,而國內關于脆弱節點的快速定位方法研究起步較晚,且缺乏技術創新與機制創新,在此類問題研究上,較國外項目仍存在一定差距.不同功能的微型傳感器,以及不同的計算機網絡,所得到的監測效果不盡相同,如何利用有限的計算量實現對目標區域的監測是研究的難點,快速定位計算機網絡中的節點位置,是當前節點研究中的重點問題,本文通過將計算機中的脆弱節點進行定位,使網關連接到Internet,再利用其它網絡基礎設施,實現對目標區域的監測.
在探究計算機網絡中脆弱節點快速定位方法時,首先對計算機網絡中的節點模型進行建立,在模型的基礎上對快速定位方法進行探究.脆弱節點包含已知節點、未知節點,以及待定位節點,實際建立網絡定位的節點數學模型時,需要3個節點同時存在,才能建立出相應的脆弱節點模型.為此設置計算機網絡中共有a個脆弱節點,其中存在一部分未知節點.為了對網絡中的脆弱節點模型進行建立,可以采用斜率值與斜率差進行信息處理.基于斜率值與斜率差,設置已知節點的二維坐標為m;設置未知節點的二維坐標為n,m與n的關系可用下圖1來表示.
圖1 二維節點平面圖Fig.1 2D node plan
在圖1中,空心節點為已知節點,用數字1~6表示,實心節點n為未知節點[3].在圖(a)中,已知節點1、2、3的位置時,能夠求出未知節點n的位置;在圖(b)中,三個已知節點4、5、6除了與未知節點相連,還以平面展開的方式,連接了相近節點,且已知節點間的連線趨近于一條直線,此時很容易產生誤差的測距,進而無法求解出未知節點n.綜上所述,(a)圖所表示的模型建立方式相對完善,便于后續研究,采取此種節點排列方式將模型建立完畢.
在具備節點模型的基礎上,以三個m節點不共線的方式,表示節點間的共存關系,為了減少了脆弱節點的構建成本,以及定位時產生的能量消耗,需要進一步篩選脆弱節點的最優組合.在計算機網絡中,主要選用非測距的定位算法,去計算未知節點與已知節點間的真實距離,路徑覆蓋度的高低,對整體的測量環節有著決定性作用,網絡的整體定位精度也與節點的實際位置存在關系.在出現超過三個已知節點的情況時,需要判斷三個節點是否處于一條直線上,有以下公式:
x=(ms+ns)x+nsu
(1)
根據上述公式(1)判斷三個節點是否處于一條直線上,若在一條直線上將無法對節點位置進一步求解.采用平面幾何中的斜率,對已知節點與未知節點間的位置關系進行推算,確定最優脆弱節點組合,在分析待定位節點的過程中,準確確定未知節點的位置[4].在計算機網絡中,當未知節點接收到已知節點的數據信號時,進而判斷網絡中的節點數量,其中已知節點、未知節點與待定位節點間的分布關系如下圖2所示.
圖2 脆弱節點間分布關系圖Fig.2 Distribution diagram of vulnerable nodes
如圖2所示,各個已知節點不處于一條直線,為了測量待定位節點的位置,需要選取距離未知節點最近的已知節點信息,并以此作為推算過程的參考節點,然后在剩余已知節點中選取兩個其他
節點,并將其作為定位節點[5].構成3個已知節點之后,判斷這3個節點是否存在共線情況,因為在算法的初始化階段,計算機中的數據信息會隨著時間不斷移動跳躍,而在采取斜率判斷法時,通過反復推算3個已知節點是否共線,得到最優的脆弱節點組合,為實現節點間的快速定位打下基礎[6].
在具備節點模型與脆弱節點的最優組合之后,針對計算機網絡中產生的節點位移變化,對其中位置的變化次數進一步求解,將其抽象成求解函數方程的類似問題,在構建節點間非線性方程之后,對相應時間內的脆弱節點間位置變化次數,展開具體推算.在實際網絡中,節點間的位置變化具有迭代效應,可以將其轉化為求解函數方程的過程,此類方程的計算公式為:
f(q)=0
(2)
其中,f(q)為代數多項式,其零點表示為q,在求解脆弱節點位置的變化次數時,可將其表示為變化次數,當其為一元一次函數方程時,求解此方程的過程較為簡單;當其處于物理學領域時,需要將其轉化為非線性方程組,采用非線性的函數求解方式,解決此類問題.選取一個近似值作為節點位置的初始值,采用一個遞推公式對其多次校正,此時遞推公式為:
qn+1=φ(qn),k=0,1,...,n
(3)
在上式(3)中,k為兩個節點間連線的斜率,取值為自然數,采用此迭代法對迭代次數進行求導,可得序列公式為:
(4)
根據公式(4),可以得到在網絡變化下,節點位置的相對次數變化趨勢.
為進一步快速定位計算機網絡中脆弱節點,需要在已知時間與變化次數的基礎上,對定位方程進行構建.在網絡的定位區域中,已知節點的同步運轉,能夠帶動所有節點進行時鐘同步運轉,這種節點的變化方式,使得整體網絡具備統一性效果,在實際定位中,已知節點的數量是有限的,因為已知節點需要帶動未知節點,所以其所具有的能量相對較大,根據兩種節點之間的距離,也會存在不同的信號差,一般來說,在相同時間內,距離越短的兩個節點信號強度越高,相距越遠的兩個節點信號越弱,利用脆弱節點之間的距離,能夠實現對其的快速定位[7].在節點模型中,設已知節點1與未知節點n之間的距離為r1,基于計算機網絡下脆弱節點位置的變化次數,此時r1的計算公式為:
(5)
在上式(5)中,X1為節點1的橫坐標,Y1為節點1的縱坐標;x為未知節點n的橫坐標,y為未知節點n的縱坐標.
同理可得已知節點2與未知節點n之間的距離為r2,此時r2的計算公式為:
(6)
在上式(6)中,X2為節點2的橫坐標,Y2為節點2的縱坐標;x為未知節點n的橫坐標,y為未知節點n的縱坐標.
已知節點3與未知節點n之間的距離為r3,此時r3的計算公式為:
(7)
在上式(7)中,X3為節點3的橫坐標,Y3為節點3的縱坐標;x為未知節點n的橫坐標,y為未知節點n的縱坐標.
在一定時間內,對節點變化所產生的實際運轉距離進行求導,可得推算公式為:
(8)
在上式(8)中,R為節點變化所產生的實際運轉距離,在此基礎上,構建脆弱節點快速定位方程,可將其表示為:
(9)
在公式(9)中,f(x,y)為未知節點n的位置坐標,在已知其它節點坐標,與節點實際運轉距離的基礎上,可以完成對未知節點n快速定位方程的構建,進而實現對其的快速定位[8].
為了分析研究方法在實際定位時能獲得更小的誤差,特將計算機網絡中脆弱節點快速定位方法作為實驗組,選取兩種傳統方法作為實驗對照組,設計仿真實驗研究,驗證在不同方法的應用下,對計算機中的voronoi多邊形進行構建,進而分析不同定位方法下的脆弱節點定位誤差[9].
選取三個相同配置的計算機作為實驗對象,將它們放置在同樣的網絡環境中,進行對比實驗研究.為了更好地驗證設計方法的誤差度,可以采用網絡拓撲結構進行實驗研究,并將其配置在三臺計算機中.選用20 m×20 m的網絡拓撲,進行多邊形區域定位,在計算機網絡的定位空間中,將節點無線射程設置為30 m,在不同的定位區域下,設置錨節點數目分別為5和10,如下圖3所示.對節點定位誤差分析時,當網絡中節點定位誤差結果無限大時,此時產生的定位精度為100%.一切設置妥當無問題后,展開測試實驗.
圖3 定位空間Voronoi多邊形圖形構建Fig.3 Construction of Voronoi polygon in positioning space
通過對定位區域內voronoi多邊形進行構造,將其頂點位置設置成虛擬節點,這些虛擬節點中包含一個錨節點,與一些已知脆弱節點,經過信息交換等操作方式,獲取虛擬節點的序列等級,進而得到voronoi多邊形的定位結果.采用三種方法,展開以上步驟,研究其定位結果,在20 m×20 m的網絡拓撲結構中,可得設計方法的實驗結果如下表1所示.
表1 設計方法節點誤差分析Tab.1 Node error analysis of design method
兩種傳統方法的實驗結果,分別如下表2與下表3所示.
表2 傳統方法一節點誤差分析Tab.2 Node error analysis of Traditional method one
表3 傳統方法二節點誤差分析Tab.3 Node error analysis of Traditional method two
在計算機的網絡定位空間中,構建voronoi多邊形時,其中虛擬節點以隨機分布的方式,廣泛排列在定位空間[9-10].根據上表1、2、3可知,當虛擬節點相同時,定位方法的不同,會影響最終的定位效果,產生出不同的定位誤差.從數據中可以發現,當虛擬節點為(0.83,39.46)(0,0)時,設計方法所產生的誤差此時最小,為0.31 m;同樣條件下,傳統方法一所產生的誤差為4.99 m,傳統方法二所產生的誤差為8.52 m.在三種方法的誤差比較下,設計方法所產生的誤差最小,較傳統方法一小了4.68 m,較傳統方法二小了8.31 m.
在計算機網絡中,節點定位一般處于獨立環境下運行,為用戶提供網絡服務.相較于傳統方法,脆弱節點快速定位方法具有定位誤差小的顯著特點.通過無線網絡傳輸的方式,在存在已知節點的情況下,對計算機應用層與網絡層開展工作,進而實現節點的自我定位,因此,如何利用計算機網絡,處理所得的節點信息,這對相關領域的發展十分重要.通過脆弱節點的快速定位,采集物理方面的節點信息,這種方法適用于很多場合,商業價值較大,這對未來節點的研究,有著巨大的價值和意義.