李燕香 曹小鳳



摘? 要:近年來,隨著對健康醫療水平的重視,體域網迅速發展起來。但是由于無線電作為傳輸介質傳輸能耗較高,并且穿戴在人體的傳感器節點往往較小,這都導致網絡生存周期較短。此外,體域網中各節點的相對位置會隨著用戶不同行為模式及姿態而發生變化。如何針對動態拓撲結構選擇路由,保證最大化網絡的生存周期,是本文的主要研究內容。本文提出一種基于卡爾曼濾波的動態路由算法,來自適應變化的網絡拓撲,并同時達到延長網絡生存周期的目的。
關鍵詞:體域網;動態路由算法;網絡生存周期
中圖分類號:TP393? ? ?文獻標識碼:A
Research on Energy-Saving Dynamic Routing Algorithm for Body Area Network
LI Yanxiang,CAO Xiaofeng
(Department of Computer Engineering,Taiyuan Institute of Technology,Taiyuan 030008,China)
Abstract:In recent years,with the emphasis on health care,body area network has developed rapidly.However,due to the high energy consumption of radio transmission as a transmission medium and the small numbers of sensor nodes worn on human body,the network lifetime is shorter.In addition,the relative position of each node in the body area network will change with user's different behavior patterns and gestures.How to select routing for dynamic topology to maximize the lifetime of the network is the main content of this paper.In this paper,a dynamic routing algorithm based on Kalman Filtering is proposed,which adapts to the changing network topology and prolongs the network lifetime.
Keywords:body area network;Dynamic Routing Algorithm;network lifetime
1? ?引言(Introduction)
近年來,隨著集成電路和可穿戴設備的迅速發展,一種用于檢測人體生理數據的無線傳感器網絡——無線體域網(Wireless Body Area Network,WBAN)應運而生[1]。無線體域網的網絡實體結構如圖1所示。
圖1 無線體域網的網絡實體結構圖
Fig.1 Network physical structure of wireless body areanetwork
為了避免對人體正常行為活動帶來的不便,體域網中的傳感器節點往往體積較小,因此攜帶的能量也較小。此外,實時變化的網絡拓撲結構,也為數據傳輸的能量消耗帶來額外開銷。頻繁更換傳感器必然不是最好的選擇,因此如何節約能量,盡可能延長網絡生存周期,是WBAN研究的重要課題之一。
盧先領、彭能明等提出一種基于壓縮感知理論的數據壓縮節能策略[2];周岳斌、陳家順等提出一種利用節點轉發來平衡網絡能耗的分簇路由算法以延長網絡生存周期[3];彭能明、金智明提出一種利用臨時節點富余能量,平衡網絡節點間能量損耗以延長網絡生存周期的算法[4];劉漢春、劉靜等提出一種優化網絡拓撲模型,通過動態調整數據到匯聚節點的路由及中繼節點在網絡中的數量和位置,延長網絡生存周期[5]。
本文通過卡爾曼濾波預測節點剩余能量,在路由選擇時選擇預測剩余能量最大的節點作為路由的后繼節點,保證整個網絡的剩余能量始終最大,從而延長網絡生存周期。
2? ?網絡模型及算法(Network model and algorithms)
2.1? ?網絡模型
部署在人體的傳感器種類繁多,圖2是體域網的一種傳感器部署策略。
圖2 體域網傳感器部署舉例
Fig.2 Examples of sensor deployment in body area network
本文體域網的拓撲結構如圖3所示是一種以匯聚節點為中心的星型拓撲和網狀拓撲相結合的網絡結構[6,7]。
本文中根據與匯聚節點(sink)之間的歐式距離進行分層:距離匯聚節點越近的節點層次越低,否則反之。為了消息最終都定向傳輸到匯聚節點,高層次的節點只能向低層次節點發送數據消息,低層次節點只能向高層次節點發送命令消息。
匯聚節點為0層,上層節點的節點層數為下層節點的節點層數加1:節點X的層數為1,節點Y的層數為2。
圖3 BAN內部網絡拓撲示意圖
Fig.3 Topology diagram of BAN internal network
2.2? ?基于卡爾曼濾波動態路由算法描述
本文用表示節點i的位置信息,用Ei記錄節點i的剩余能量,用Pt表示節點在t時刻的能量損耗,表示t時刻消息傳輸的距離,表示傳播角度,消息定向傳輸[8],則存在如下關系:
用Sit表示節點i在t時刻發送的消息,Sit.Energy表示節點i在t時刻的剩余能量,用表示節點i在t時刻的能量開銷:
用了一個簡化的卡爾曼濾波器來預測時間間隔[t,t+1]及之后的能量消耗,假設t時刻節點i的能量開銷預測為,則t+1時刻節點i的能量開銷為:
其中,α是一個常系數,取值范圍[0,1]。
則節點i的預測生存周期為:
考慮整個網絡的生存周期,則問題變為求解最大化最小值問題:
用Lij表示節點i到j的距離,用Aijk表示節點i、j和k之間以j為頂點的傳輸角度,節點j把信息同時傳遞給i和k的能耗為:
同時,節點預測的總能耗必須小于節點的剩余能量
算法用循環遍歷每一個節點,并搜索每一個節點所有可能的后繼節點,每一個節點將數據信息冗余發送給兩個后繼節點,如果這三個節點的最小生存周期能夠提升,則將滿足條件的這兩個節點作為路由的可行解。
2.3? ?網絡數據包格式
在數據傳輸時,除了傳輸傳感器數據之外,還需要一些其他標識字段,完整的數據包格式如表1所示。
表1 路由算法數據包格式
Tab.1 Routing algorithm packet formatSID Energy Coordinate Level Data
SID字段:用來唯一標識傳感器。來源于不同傳感器的數據包中該字段不同。
Energy字段:用來記錄當前節點的剩余能量。一個節點的剩余能量,等于其初始能量減去監測能量、通信能量、電量損耗等。當節點的剩余能量較少時,該節點只能作為一個傳感器節點接收數據而不能轉發數據,以此保證整個網絡剩余能量盡可能最大。
Coordinate字段:用來標識傳感器節點的位置信息。由于體域網的網絡拓撲是隨著人體行為活動和姿態的改變而變化的,因此,以此字段來獲取傳感器節點當前相對于人體的位置。從而能夠確定節點位于網絡拓撲中的第幾層,以便信息的定向傳輸。
Level字段:用來標識當前傳感器節點的層次信息。與Coordinate字段結合,共同確定節點位于網絡拓撲中的層數,以此來確保數據只能從高層次節點向低層次節點傳輸。
Data字段:用來記錄傳感器節點檢測到的實時用戶數據。
3? ?實驗分析(Experimental analysis)
3.1? ?實驗設置
本次實驗,采用在一個1.5m*2m的平面隨機分布20個節點來模擬人體隨時變化的網絡拓撲[9]。每一個節點的初識能量為100。
節點的能耗為:
其中,Size表示數據包的大小,At傳輸角度是一個離散值,本文中令At=2。
本文用兩個常用的路由算法作為對比算法,分別是:
Comparing Algorithm 1:使用與本文網絡相應的隨機游走算法。
Comparing Algorithm 2:Dijkstra最短路徑算法。
3.2? ?實驗結果分析
網絡生存周期隨網絡層數的變化曲線如圖4所示。
圖4 網絡生存周期隨級別個數變化圖
Fig.4 Network lifetime changes with the number of levels
圖4中,當Level=1時,表示體域網中所有傳感器節點不需要通過中繼節點轉發數據,而是直接將數據傳輸給匯聚節點。因此,這時的傳感器能量損耗都是由通信產生,三種路由算法基本相同;當Level數量不斷增加時,Comparing Algorithm 1的網絡生存周期最短。這是由于隨機游走算法的中繼節點是隨機選擇的,這可能帶來的結果是其路由選擇不僅不是能量最優也不是路徑最優;Comparing Algorithm 2較Comparing Algorithm 1略有提升。這是由于最短路徑算法的傳輸路徑較短,因此能量損耗較小,網絡生存周期有所改善;本文提出的動態路由算法,基于節點剩余能量選擇中繼路由,因此能夠在層數逐漸變大時,消除最外層傳感器節點由于長距離傳輸而導致的生存周期瓶頸,同時,減少了內層節點的能量消耗,顯著地提升了網絡生存周期。
當傳感器節點數量增加時,網絡的生存周期與節點密度關系如圖5所示。
令Level=2,調整網絡中節點數目。
圖5 網絡生存周期隨網絡規模變化圖
Fig.5 Network lifetime changes with network scale
圖5中,隨著網絡節點數目增多,層次數較高的節點會承擔更遠距離的數據傳輸,而層次數較低的節點會承擔更大的數據流量,數據的通信和轉發開銷都增大,因此生存周期減少。但相對于Comparing Algorithm 1隨機游走算法和Comparing Algorithm 2最短路徑算法,本文提出的動態路由算法,由于是基于節點剩余能量選擇中繼路由,因此對網絡生存周期有較為明顯的改善。
4? ?結論(Conclusion)
本文以改善體域網網絡生存周期為目的,提出了一種基于卡爾曼濾波的動態路由算法算法。通過與隨機游走路由算法和最短路徑路由算法對比,在不同的網絡層次及不同網絡規模(密度)的條件下對比網絡生存周期,驗證了本文提出的算法對生存周期有一定的改善。基于不同姿態自適應路由將是進一步的研究方向。
參考文獻(References)
[1] 豐惠.無線體域網中可靠高效數據傳輸策略研究[D].中國科學技術大學,2014.
[2] 盧先領,彭能明,徐保國.無線體域網中能量高效且可靠的自適應路由協議[J].電子與信息學報,2013(6):1520-1524.
[3] 周岳斌,陳家順,馬賀賀,等.無線體域網節點數據壓縮節能方法[J].傳感器與微系統,2017,36(11):10-13.
[4] 彭能明,金智明.基于轉發節點的無線體域網節能策略研究[J].杭州電子科技大學學報,2011,31(06):103-106.
[5] 劉漢春,劉靜,徐友云,等.基于臨時節點的無線體域網高效節能路由算法[J].信息技術,2010,34(06):1-5;28.
[6] 梁正友,姚玉梅.IEEE 802.15.6中能量有效的無線體域網拓撲結構優化研究[J].通信學報,2016,37(06):1-10.
[7] 顧正強,彭浩,吳援明.無線體域網中的人體通信關鍵技術研究[J].通信技術,2017,50(09):1968-1975.
[8] 沈羽翔.無線體域網的節能策略技術研究[J].通訊世界,2017(23):75-76.
[9] 李燕香.基于網絡編碼的BAN數據可靠通信方法研究[D].吉林大學,2016.
作者簡介:
李燕香(1994-),女,碩士,助教.研究領域:無線體域網.
曹小鳳(1989-),女,碩士,講師.研究領域:人工智能,數據挖掘.