基于三角形判別的無線傳感器網絡邊緣節(jié)點識別方法
【技術領域】
[0001] 本發(fā)明設及一種基于=角形判別的無線傳感器網絡邊緣節(jié)點識別方法,屬于無線 傳感器網絡技術領域。
【背景技術】
[0002] 在微電子機械系統(tǒng)和無線通信技術的驅動下,現(xiàn)代無線傳感器節(jié)點具有制造成本 低、使用功耗低、體積小和進行短距離通信的特點,其能夠感知多種物理環(huán)境,在軍事和民 用領域具有極大的潛在應用價值。無線傳感器網絡是由數量眾多的傳感器節(jié)點組成的能進 行多跳通信的自組織型網絡,通常采用機載拋灑的方式部署于危險或無人堅守的區(qū)域執(zhí)行 監(jiān)測任務。
[0003] 衡量無線傳感器網絡服務質量的一個重要因素是網絡覆蓋,然而由于無線傳感器 網絡部署方式的限制,節(jié)點拋灑不均勻所形成的覆蓋空桐成為制約其服務質量的一個重要 因素,而且無人值守的工作方式是傳感器節(jié)點非常容易遭受外力破壞和節(jié)點能源耗竭而失 效從而產生更多更大的覆蓋空桐。覆蓋空桐的產生不僅制約了無線傳感器網絡的服務質量 導致監(jiān)測失敗,監(jiān)測數據無法傳送或傳送錯誤。因而覆蓋空桐是無線傳感器網絡研究和應 用中不可回避的問題。
[0004] 針對覆蓋空桐問題,現(xiàn)有的研究中提出一些相應的解決方案,現(xiàn)有的邊緣節(jié)點識 別方法分為=類:基于節(jié)點地理位置信息、基于統(tǒng)計方法和基于拓撲的方法。然而目前的方 案中存在對網絡節(jié)點度要求高,能耗高和識別精度低的問題。
【發(fā)明內容】
[000引為了解決現(xiàn)有技術的不足,本發(fā)明提供了一種基于=角形判別的無線傳感器網絡 邊緣節(jié)點識別方法,實現(xiàn)了基于節(jié)點地理位置信息和基于基于節(jié)點距離信息的無線傳感器 網絡的網絡邊緣和覆蓋空桐的邊緣節(jié)點識別,W-種自適應可變換的方式擴展了無線傳感 器網絡邊界節(jié)點識別,算法復雜度低,節(jié)省了運行時間,僅需2跳節(jié)點信息技能完成對邊緣 節(jié)點的精確識別,識別精度達到90% W上。
[0006] 本發(fā)明為解決其技術問題所采用的技術方案是:提供了一種基于=角形判別的無 線傳感器網絡邊緣節(jié)點識別方法,包括W下步驟:
[0007] (1)確認無線傳感器網絡中各節(jié)點的1跳鄰居節(jié)點和2跳鄰居節(jié)點,設當前傳感器 節(jié)點為Srn,其鄰居集合表示為化,2(Srn);
[000引(2)捜索當前節(jié)點Srn的Ni,2(Srn)中的鄰居節(jié)點,確定Ni,2(Srn)中的鄰居節(jié)點在W當 前節(jié)點為圓屯、的相對坐標中的絕對角;對于Ni,2(Srn)中的鄰居節(jié)點Si,用ZabS(Si)表示其 絕對角;
[0009] (3)對化,2 ( Srn)中的鄰居節(jié)點按照絕對角升序方式排序,將Z abs (Si )< 90°的鄰居 節(jié)點置于集合化,90°<Zabs(Si) < 180°的鄰居節(jié)點置于集合Q2,180°<Zabs(Si) < 270° 的鄰居節(jié)點置于集合化,其他鄰居節(jié)點置于集合化;
[0010] (4)分別求出集合Qi、Q2、Q3和Q沖所含元素的個數L(Qi)、L(Q2)、LW3WPL(Q4);
[0011] (5)比較化U Q沸化U化元素個數的多少,在化U Q2和化U化運兩個并集中含元素較 少的并集里選擇一個最接近90°或最接近270°的鄰居節(jié)點作為A點;
[001引(5a)如果A點在化U Q2中,則比較Q3和Q坑素個數的多少,在跑和Q進兩個集合中W 最接近225°或最接近315°的鄰居節(jié)點作為B點;將化,2(Srn)\{A,B}作為C點的候選集合并依 次選中其中一點作為C點,分別計算S角形A ABC、A RNAB、A RNBC和A RNAC的面積Saabc、 Sa謂AB、Sarnbc和Sar直,若C點的候選集合中有一個C點滿足Saabc = Sarnab+Sarbbc+Sarnac,則當前 節(jié)點為內部節(jié)點;否則若C點的候選集合中所有的點滿足Saabc辛SARNAB+SARNBC+SARNAC,則當前 節(jié)點為邊緣節(jié)點;
[001引師)如果A點在化U Q沖,則比較Qi和Q2元素個數的多少,在Qi和Q汲兩個集合中W 最接近45°或最接近135°的鄰居節(jié)點作為B點;將化,2(Srn)\{A,B}作為C點的候選集合并依次 選中其中一點作為C點,分別計算S角形A ABC、A RNAB、A RNBC和A RNAC的面積Saabc、 Sa謂AB、Sarnbc和Sar直,若C點的候選集合中有一個C點滿足Saabc = Sarnab+Sarnbc+Sarbac,則當前 節(jié)點為內部節(jié)點;否則若C點的候選集合中所有的點滿足Saabc辛SARNAB+SARNBC+SARNAC,則當前 節(jié)點為邊緣節(jié)點;
[0014] (6)重復步驟(2)至步驟(5)直到無線傳感器網絡中每個節(jié)點判斷完畢。
[0015] 步驟(1)中,通過W下步驟確認無線傳感器網絡中各節(jié)點的1跳鄰居節(jié)點和2跳鄰 居節(jié)點:無線傳感器網絡中各節(jié)點通過廣播發(fā)送包含自身ID和剩余能量的請求報文,該發(fā) 送請求報文的節(jié)點為廣播節(jié)點;鄰近節(jié)點如能收到該廣播節(jié)點的請求報文,則鄰近節(jié)點在 廣播節(jié)點的通信范圍內,鄰近節(jié)點將自己設為廣播節(jié)點的1跳鄰居節(jié)點,向其返回包含自身 ID和剩余能量的應答報文;廣播節(jié)點收到應答報文后檢查鄰近節(jié)點是否存在于自己的1跳 鄰居表內,如果不存在則將鄰近節(jié)點添加至1跳鄰居表;經過設置的闊值時間后廣播節(jié)點不 再接收應答報文,而向其所有1跳鄰居節(jié)點發(fā)送交換報文;鄰居節(jié)點收到交換報文后向廣播 節(jié)點發(fā)送自己的1跳鄰居表,廣播節(jié)點根據該1跳鄰居表確定其2跳鄰居節(jié)點。
[0016] 廣播節(jié)點根據該1跳鄰居表通過W下公式計算其2跳鄰居節(jié)點:
[0017] 城) = {Js?城,口。.并(S")-N 八S腳)-巧腳a)
[0018] 其中,Srn表示廣播節(jié)點,Su表示Srn的I跳鄰居鄰居節(jié)點,Ni(Srn)表示Srn的I跳鄰居 節(jié)點集,化(Srn)表示Srn的2跳鄰居節(jié)點集,Ni(Su)表示Su的1跳鄰居節(jié)點集,由1跳鄰居表獲 得。
[0019]步驟(2)中,通過W下過程確定Ni,2(Srn)中的鄰居節(jié)點在W當前節(jié)點為圓屯、的相對 坐標中的絕對角:
[0020] (2a)若鄰居節(jié)點向當前節(jié)點返回的報文中包含位置信息,則用批,.,成,)表示鄰居 節(jié)點Si的位置坐標,用片,。,>',。)表示當前節(jié)點的位置坐標,鄰居節(jié)點Si的絕對角ZabS(Si)采 用W下公式確認:
[0022] (2b)若鄰居節(jié)點向當前節(jié)點返回的報文中包含距離信息,則利用多維尺度分析方 法將距離信息轉換為虛擬坐標,用表示鄰居節(jié)點Si的虛擬坐標,用切表示 當前節(jié)點的虛擬坐標,鄰居節(jié)點Si的絕對角Zabs(Si)采用W下公式確認:;
[0024] 步驟(5)通過W下公式計算S角形面積:
[0026] 其中,a、b和C分別為=角形的邊長,通過各節(jié)點的位置坐標計算或由測距方法直 接獲得。
[0027] 本發(fā)明基于其技術方案所具有的有益效果在于:
[0028] (1)本發(fā)明同時實現(xiàn)了基于節(jié)點地理位置信息和基于基于節(jié)點距離信息的無線傳 感器網絡的網絡邊緣和覆蓋空桐的邊緣節(jié)點識別,W-種自適應可變換的方式擴展了無線 傳感器網絡邊界節(jié)點識別;
[0029] (2)本發(fā)明基于MDS技術的節(jié)點距離坐標轉換方式可有效拓展其應用范圍,例如地 下等無法獲取節(jié)點位置信息的環(huán)境;
[0030] (3)本發(fā)明可解決在節(jié)點GPS定位裝置失效或使配備GPS的節(jié)點W-種節(jié)能的方式 自動識別網絡的邊界和覆蓋空桐的邊緣,有效降低了節(jié)點由于定位帶來的高能耗問題;
[0031] (5)本發(fā)明算法復雜度低,節(jié)省了運行時間,僅需2跳節(jié)點信息技能完成對邊緣節(jié) 點的精確識別,識別精度達到90% W上。
【附圖說明】
[0032] 圖1是網絡結構示意圖。
[0033] 圖2是當前節(jié)點2跳鄰居環(huán)示意圖,灰色節(jié)點為2跳鄰居節(jié)點,白色節(jié)點為1跳鄰居 節(jié)點。
[0034] 圖3是A點、B點和C點選擇示意圖。
【具體實施方式】
[0035] 下面結合附圖和實施例對本發(fā)明作進一步說明。
[0036] 本發(fā)明提供了一種基于=角形判別的無線傳感器網絡邊緣節(jié)點識別方法,包括W 下步驟:
[0037] (1)確認無線傳感器網絡中各節(jié)點的1跳鄰居節(jié)點和2跳鄰居節(jié)點,設當前傳感器 節(jié)點為Srn,其鄰居集合表示為化,2(Srn);
[0038] 可W通過W下步驟確認無線傳感器網絡中各節(jié)點的1跳鄰居節(jié)點和2跳鄰居節(jié)點: 無線傳感器網絡中各節(jié)點通過廣播發(fā)送包含自身ID和剩余能量的請求報文,該發(fā)送請求報 文的節(jié)點為廣播節(jié)點;鄰近節(jié)點如能收到該廣播節(jié)點的請求報文,則鄰近節(jié)點在廣播節(jié)點 的通信范圍內,鄰近節(jié)點將自己設為廣播節(jié)點的1跳鄰居節(jié)點,向其返回包含自身ID和剩余 能量的應答報文;廣播節(jié)點收到應答報文后檢查鄰近節(jié)點是否存在于自己的1跳鄰居表內, 如果不存在則將鄰近節(jié)點添加至I跳鄰居表;經過設置的闊值時間后廣播節(jié)點不再接收應 答報文,而向其所有1跳鄰居節(jié)點發(fā)送交換報文;鄰居節(jié)點收到交換報文后向廣播節(jié)點發(fā)送 自己的1跳鄰居表,廣播節(jié)點根據該1跳鄰居表確定其2跳鄰居節(jié)點。
[0039] 廣播節(jié)點根據該1跳鄰居表通過W下公式計算其2跳鄰居節(jié)點:
[0040] 琴腳)=心化,,職)-/V,佑W)-口化v} ... U )
[00川其中,Srn表不廣播節(jié)點,Su表不Srn的1跳鄰居鄰居節(jié)點,Ni(Srn)表不Srn的1跳令居 節(jié)點集,化(Srn)表示Srn的2跳鄰居節(jié)點集,Ni(Su)表示Su的1跳鄰居節(jié)點集,由1跳鄰居表獲 得。
[0042] (2)捜索當前節(jié)點Srn的化,2 ( Srn)中的鄰居節(jié)點,確定化,2 ( Srn)中的鄰居節(jié)點在W當 前節(jié)點為圓屯、的相對坐標中的絕對角;對于化,2( Srn)中的鄰居節(jié)點Si,用Z abs (Si)表示其 絕對角;
[0043] (2a)若鄰居節(jié)點向當前節(jié)點返回的報文中包含位置信息(位置信息由GPS或其他 定位服務),則用h,)'、席示鄰居節(jié)點Si的位置坐標,用(?成。)表示當前節(jié)點的位置坐標, 鄰居節(jié)點Si的絕對角Zab