李 丹 趙榮陽
(1.北部灣大學電子與信息工程學院,廣西 欽州 535011;2.欽州市物聯(lián)網(wǎng)先進技術(shù)重點實驗室,廣西 欽州 535011)
在海底監(jiān)測等應用的擴展和更新過程中,水聲傳感器網(wǎng)絡(Underwater Acoustic Sensor Networks,UASNs)在設備互連和數(shù)據(jù)通信等方面發(fā)揮了巨大作用。數(shù)據(jù)傳輸作為UASNs的重要功能,使設備從個體轉(zhuǎn)變?yōu)槿后w[1]。水下有線部署成本昂貴,光波和電磁波在海水中衰減嚴重,因此聲波成為海底無線通信的主要載體[2]。海底環(huán)境復雜多變,因此水聲信道具有強噪聲、高延遲、低帶寬和節(jié)點移動等特點[3],如何維護UASNs通信鏈路的穩(wěn)定性是該領(lǐng)域的研究重點之一。錨定節(jié)點的移動現(xiàn)象會影響網(wǎng)絡鏈路的穩(wěn)定性[3-6]。通信鏈路的穩(wěn)定性是路由尋路策略的一個重要指標,對通信鏈路的穩(wěn)定性進行評估,有利于提高UASNs 路由協(xié)議性能。文獻[3]把錨定節(jié)點的移動作為鏈路穩(wěn)定性的影響因素,對鄰節(jié)點偏移行為建立馬科夫模型,判斷節(jié)點是否適合作為數(shù)據(jù)轉(zhuǎn)發(fā)的下一跳節(jié)點。文獻[6]針對指定海域的錨定節(jié)點建立運動模型,通過實驗驗證節(jié)點位移對網(wǎng)絡通信性能的影響。針對節(jié)點位移造成的網(wǎng)絡拓撲不穩(wěn)定問題,本文基于隱馬爾科夫模型(Hidden Markov Model,HMM)對水聲傳感器位置穩(wěn)定性建立評估模型,為路由尋路提供決策依據(jù)。
HMM 是一種隨機概率模型,包含一條隱含狀態(tài)序列和一條觀測序列。在已知的隱含狀態(tài)初始向量π、隱含狀態(tài)轉(zhuǎn)移概率矩陣A和觀測狀態(tài)轉(zhuǎn)移概率矩陣B的基礎上,建立模型λ=(A,B,π),再結(jié)合觀測序列O,利用算法推導出隱含狀態(tài)序列Q,滿足P(O|λ)最大。
當網(wǎng)絡中存在多條通往目的節(jié)點的路由時,轉(zhuǎn)發(fā)節(jié)點穩(wěn)定性是衡量路由鏈路質(zhì)量的一個重要指標。節(jié)點在通信過程中的某些狀態(tài)值可以作為其穩(wěn)定性判斷的依據(jù),例如節(jié)點的休眠頻率或者位置偏移頻率。根據(jù)節(jié)點之間的相對距離來調(diào)整數(shù)據(jù)發(fā)射功率可以減少發(fā)送節(jié)點能耗,并減少網(wǎng)絡信道沖突,因此功率調(diào)節(jié)技術(shù)常被用于解決無線網(wǎng)絡能量優(yōu)化問題。
假設UASNs節(jié)點具有相同的最大數(shù)據(jù)發(fā)射功率且發(fā)射功率可調(diào)節(jié)。節(jié)點向下一跳節(jié)點發(fā)送數(shù)據(jù)后,如果收到反饋報文,則證明數(shù)據(jù)成功發(fā)送;如果等待一段時間后,沒有收到反饋報文,則證明數(shù)據(jù)發(fā)送失敗,節(jié)點將加大發(fā)射功率直到數(shù)據(jù)發(fā)送成功或者達到最大發(fā)射功率。節(jié)點記錄下每次與某個鄰節(jié)點成功通信的發(fā)射功率。當發(fā)射功率減小時,表示鄰節(jié)點向自己靠近;當發(fā)射功率不變時,表示鄰節(jié)點和自己的相對距離保持不變;當發(fā)射功率增大時,表示鄰節(jié)點遠離自己;當無法通信時,表示節(jié)點已不在自己的信號覆蓋范圍內(nèi),具體過程如圖1所示。
圖1 節(jié)點和鄰節(jié)點功率、位置變化圖
圖1 的N0表示發(fā)送節(jié)點,N1表示下一跳鄰節(jié)點。N1_S1、N1_S2和N1_S3分別表示鄰節(jié)點N1的三種位置狀態(tài),其中N1_S1表示N0和N1的相對距離保持不變,N1_S2表示N0和N1的相對距離變大,N1_S3表示N0和N1的相對距離變小。PN1_S1、PN1_S2和PN1_S3分別N0向N1發(fā)送數(shù)據(jù)的功率,PN1_S3 當節(jié)點要評估某鄰節(jié)點的位置偏移情況時,無法直接獲取鄰節(jié)點的位移活動狀態(tài),但是可以觀察與鄰節(jié)點通信時的數(shù)據(jù)發(fā)射功率變化情況。在不考慮信道沖突的情況下,當鄰節(jié)點遠離或者靠近的距離不大時,則數(shù)據(jù)發(fā)射功率不會發(fā)生變化;當鄰節(jié)點位移距離變大時,則數(shù)據(jù)發(fā)射功率會發(fā)生變化。因此發(fā)射功率不變不能表示鄰節(jié)點的位置固定不變,但數(shù)據(jù)發(fā)射功率的變化則表示鄰節(jié)點的位置發(fā)生變化。將某個鄰節(jié)點的位置偏移狀態(tài)變化過程作為隱馬爾科夫模型的隱含狀態(tài)分布,與之通信時使用的數(shù)據(jù)發(fā)射功率變化過程作為觀測狀態(tài)分布。鄰節(jié)點的隱含狀態(tài)集為SQ={sq1,sq2,sq3},其中sq1表示與鄰節(jié)點的距離保持不變,sq2表示鄰節(jié)點在遠離自己,sq3表示鄰節(jié)點在靠近自己。鄰節(jié)點的觀測狀態(tài)集SO={so1,so2,so3},其中so1表示與之通信的數(shù)據(jù)發(fā)射功率保持不變,so2表示與之通信的數(shù)據(jù)發(fā)射功率增大,so3表示與之通信的數(shù)據(jù)發(fā)射功率減小。隱含狀態(tài)初始向量π、觀測序列O和隱含狀態(tài)序列Q分別記為: 在時刻t=i時,πi表示鄰節(jié)點處于隱含狀態(tài)sqi的概率,oi表示鄰節(jié)點的觀測狀態(tài)值,qi表示鄰節(jié)點的隱含狀態(tài)值。隱含狀態(tài)轉(zhuǎn)移概率矩陣A記為: aij表示在時刻t鄰節(jié)點處于隱含狀態(tài)sqi,在時刻t+1鄰節(jié)點處于隱含狀態(tài)sqj的概率,其中i∈[1,2,3],j∈[1,2,3]。觀測狀態(tài)轉(zhuǎn)移概率矩陣B記為: bij表示在時刻t鄰節(jié)點處于隱含狀態(tài)sqi,生成觀測狀態(tài)soj的概率。 在UASNs的實際運行過程中,觀測序列O是已知的,隱馬爾科夫模型λ=(A,B,π)是未知的。使用Baum-Welch算法對參數(shù)A、B和π 進行推導[7],使得生成觀測序列O的概率P(O|λ)最大。Baum-Welch 算法用長度為T 的觀測序列O作為條件,用聯(lián)合分布P(O,Q;λ)作為輔助,使用期望最大化(Expectation-Maximum,EM)算法進行迭代,最終得到一個收斂的λ。聯(lián)合分布P(O,Q;λ)記為: π 的計算過程記為: 從UASNs節(jié)點中提取某鄰節(jié)點的數(shù)據(jù)發(fā)射功率變化序列,作為觀測序列O,再用式(9)、(10)和(11)推導出HMM 模型λ。在觀測序列O和HMM 模型λ的基礎上,利用Viterbi算法計算最可能的隱含狀態(tài)序列Q。 定義變量δt(i),用于表示t時刻的觀測序列O和qt=sqi的所有路徑中最大概率,其計算過程為: 其中,i∈[1,N],t∈[1,T]。在式(12)中引入前向概率at(i)和后向概率βt(i),變?yōu)椋?/p> 定義變量φi(i),用于表示t時刻狀態(tài)為qt的所有單個路徑中概率最大的第t-1個節(jié)點,其計算過程為: 在i∈[1,N],t∈[1,T] 范圍內(nèi)求出δt(i) 的最大值,再對t=t-1,t-2,……,1進行最優(yōu)路徑回溯,計算qt,過程是: 最終得到觀測序列O和HMM模型λ下的最佳隱含狀態(tài)序列Q。統(tǒng)計隱含狀態(tài)序列Q中狀態(tài)sq1,sq2和sq3分別出現(xiàn)的概率,判斷鄰節(jié)點在觀測期間位置偏移的情況。當出現(xiàn)狀態(tài)sq1的概率最大時,說明鄰節(jié)點位置沒有發(fā)生偏移,能夠穩(wěn)定轉(zhuǎn)發(fā)數(shù)據(jù);當出現(xiàn)狀態(tài)sq2的概率最大時,說明鄰節(jié)點在不斷遠離源節(jié)點,該鄰節(jié)點不適合作為轉(zhuǎn)發(fā)節(jié)點;當出現(xiàn)狀態(tài)sq3的概率最大時,說明鄰節(jié)點在不斷靠近源節(jié)點,能夠作為備用轉(zhuǎn)發(fā)節(jié)點。 在北部灣海域水聲傳感器網(wǎng)絡動態(tài)拓撲仿真實驗[6]的基礎上,修改Vector based Void Avoidance(VBVA)路由協(xié)議,在數(shù)據(jù)轉(zhuǎn)發(fā)過程中,基于HMM模型評估下一跳節(jié)點的穩(wěn)定性,選擇位置穩(wěn)定的節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)。在文獻[6]實驗環(huán)境的基礎上,把原來所有節(jié)點做規(guī)律的擺錘運動改為隨機挑選若干節(jié)點進行擺錘運動,保證在實驗環(huán)境中存在位置不變和改變的節(jié)點,實驗環(huán)境參數(shù)見表1。 表1 實驗環(huán)境參數(shù)[6] 實驗采用分組對照的方式,分別模擬網(wǎng)絡在VBVA協(xié)議和加入HMM 模型評估后的HMM_VBVA 協(xié)議下,節(jié)點低速運動網(wǎng)絡和節(jié)點高速運動網(wǎng)絡分組投遞率的變化情況。采用文獻[6]的數(shù)據(jù)處理方法計算每個周期內(nèi)的分組投遞率。圖2是VBVA協(xié)議和HMM_VBVA協(xié)議在節(jié)點低速運動網(wǎng)絡中的分組投遞率對比圖,從圖中可以發(fā)現(xiàn),HMM_VBVA 路由協(xié)議能夠提高網(wǎng)絡的分組投遞率。 圖2 節(jié)點低速運動網(wǎng)絡分組投遞率對比圖 圖3是VBVA協(xié)議和HMM_VBVA協(xié)議在節(jié)點高速運動網(wǎng)絡中的分組投遞率對比圖,從圖中可以發(fā)現(xiàn),HMM_VBVA路由協(xié)議能夠有效提高網(wǎng)絡的分組投遞率。 圖3 節(jié)點高速運動網(wǎng)絡分組投遞率對比圖 圖4是HMM_VBVA協(xié)議在節(jié)點低速運動網(wǎng)絡和高速運動網(wǎng)絡中的分組投遞率對比圖,從圖中可以發(fā)現(xiàn),在節(jié)點運動速度加快的情況下,分組投遞率沒有大幅度下降,這說明HMM_VBVA 路由協(xié)議能夠有效避免因節(jié)點偏移帶來路由鏈路不穩(wěn)定的問題。 圖4 HMM_VBVA在節(jié)點低速和高速運動網(wǎng)絡的分組投遞率對比圖 在環(huán)境多變的UASNs 中,由節(jié)點偏移帶來的路由鏈路不穩(wěn)定問題,會造成數(shù)據(jù)轉(zhuǎn)發(fā)性能下降,增加數(shù)據(jù)重傳次數(shù),造成網(wǎng)絡能量浪費。利用節(jié)點數(shù)據(jù)發(fā)射功率的變化過程提取觀測值序列,基于HMM對鄰節(jié)點進行位置穩(wěn)定性建模,使用Baum-Welch 算法和Viterbi 算法對模型進行求解,評估鄰節(jié)點位置穩(wěn)定性,在數(shù)據(jù)轉(zhuǎn)發(fā)時從鄰節(jié)點集合中選擇位置最穩(wěn)定的節(jié)點作為轉(zhuǎn)發(fā)節(jié)點,提高路由鏈路的穩(wěn)定性。通過實驗證明,基于HMM的路由協(xié)議改進,能夠降低節(jié)點偏移對路由鏈路的負面影響,提高網(wǎng)絡數(shù)據(jù)轉(zhuǎn)發(fā)性能。2.3 模型定義
2.4 模型求解
3 鄰節(jié)點位置穩(wěn)定性評估方法
4 仿真實驗
5 結(jié)語