夏 宇,劉 偉,羅 嶸,胡順仁
(1.重慶理工大學 電氣與電子工程學院,重慶 400054; 2.清華大學 電子工程系,北京 100084)
無線傳感器網絡是由大量具有參數感知、信息處理和無線通信能力的傳感器節點組成的多跳自組織網絡,目前已被廣泛應用于軍事偵查、環境監測、醫療保健和農業生產等多個領域[1]。無線傳感器節點通常使用廉價的低功率射頻模塊進行通信,對無線信道的變化非常敏感。因此,準確的鏈路質量估計對于上層協議設計至關重要。
使用鏈路質量指示(Link Quality Indicator,LQI)參數對鏈路質量進行估計具有相關性高、反應快、開銷小等優點,但從物理層直接獲取的LQI通常不穩定[2],需要對其進行處理以減小波動。多數鏈路質量估計器采用窗口平均或卡爾曼濾波等方式,但是當使用的時間窗口較小或鏈路本身存在較大波動時,其效果并不理想。此外,現有研究對LQI和收包率(Packet Reception Ratio,PRR)的關系進行建模均是通過對測量數據直接擬合或使用機器學習算法進行訓練來實現,忽略了LQI與PRR間關系的物理意義。鑒于此,本文通過推理LQI和PRR的理論關系,建立更具實際物理意義的雙曲正切模型,在此基礎上,提出一種更為準確的鏈路質量估計方法。該方法通過指數加權卡爾曼濾波獲得更為穩定的LQI估計值,再通過雙曲正切模型對鏈路質量進行定量估計。
由于需要長時間統計才能獲得較為準確的PRR估計值,因此直接使用PRR進行鏈路質量估計的敏捷性較差[3]。使用物理層參數與PRR的映射關系對鏈路質量進行估計可以有效解決這一問題。常用的物理層參數有接收信號強度指示(Received Signal Strength Indicator,RSSI)、LQI和信噪比(Signal-to-Noise Ratio,SNR)等。相比于RSSI和SNR,LQI與PRR有更高的相關性,但其波動也更大,需要對其進行處理以獲得更為穩定的估計值[2,4]。
一些研究使用LQI均值對鏈路進行定性分析。文獻[5]指出相比于RSSI,LQI能較好地區分良好鏈路和中間鏈路。文獻[6]提出的FourBit估計器使用LQI均值快速識別鏈路是否為較高質量。文獻[3]的研究結果表明,良好鏈路的LQI具有較低的方差,中等鏈路和差鏈路的LQI方差則較高,因此,LQI方差可以作為快速判斷鏈路是否良好的指標。文獻[7]指出LQI方差可用于識別良好鏈路,并且所需的樣本個數比使用LQI均值時低一個數量級。文獻[8]通過計算RSSI均值和LQI均值的歐氏距離得到新的鏈路質量估計指標,并根據該指標的大小對鏈路質量進行分類。文獻[9]通過計算LQI均值與SNR均值的歐氏距離,對鏈路質量進行快速分類。文獻[10]使用支持向量機對LQI均值和RSSI均值進行訓練,得到鏈路質量的分類模型。文獻[11]利用隨機森林分類算法構建基于LQI均值等參數的鏈路質量模型,對鏈路質量進行準確分類。
對鏈路質量的定量分析可以通過建立LQI與PRR的映射關系來實現。文獻[4]將LQI映射的PRR作為模糊邏輯的屬性之一,實現流數據的鏈路質量估計。文獻[12]提出的4C估計器使用邏輯回歸學習算法對LQI均值和PRR的歷史數據進行離線訓練,以實現對PRR的有效預測。文獻[13]針對4C離線訓練模型在某些環境下可能不適用的問題,使用隨機梯度下降學習算法在線訓練由LQI和PRR構成的邏輯回歸分類器。文獻[14]提出了鏈路質量估計器LETX,通過LQI均值與PRR的三段線性模型對鏈路質量進行估計。文獻[15]使用Cubic模型對LQI均值與PRR的映射關系進行擬合。文獻[16]使用卡爾曼濾波器對LQI均值進行處理,再使用Cubic模型建立LQI與PRR的映射關系。
為了獲得不同特性的無線鏈路,本文選擇了室外跑道和半封閉走廊2種不同的測試環境。室外跑道環境的信道特性相對簡單,外部干擾較低,半封閉走廊環境的信道特性較為復雜,存在一些外部干擾。考慮到不同時間段的外部干擾存在差異,本文在測試時選擇了多個不同的時間段。使用2個TelosB無線傳感器節點進行測試,一個用作發射設備,另一個用作接收設備。傳感器節點使用TinyOS 2.1操作系統,通過NesC語言進行編程[17]。
為了獲取建立LQI與PRR映射模型的足夠樣本點,在上述環境下通過改變收發節點之間的距離來模擬不同質量的鏈路。每次測試發送500個數據包,通過成功接收的數據包個數計算PRR,同時將成功接收數據包的LQI均值作為此次測試的LQI估計值。此外,為了獲得用于性能比較的數據,在半封閉走廊環境下進行長時間測試,期間存在人員走動、WiFi信號等干擾,在測試過程中,通信信道均設置為26號信道。
圖1所示為基于推理模型和指數加權卡爾曼濾波的鏈路質量估計方法的整體流程。該方法通過指數加權卡爾曼濾波得到更為穩定的LQI估計值,再根據LQI與PRR的雙曲正切模型得到PRR估計值,從而實現對鏈路質量的定量估計。其中,雙曲正切模型通過LQI與PRR關系的實際物理意義推理得到。

圖1 鏈路質量估計方案整體流程
使用卡爾曼濾波對LQI進行處理能在一定程度上降低噪聲[16],但在實際應用中發現,上述過程處理得到的估計值仍存在較多不必要的波動。為了進一步抑制波動,本文采用指數加權平均的卡爾曼濾波對LQI進行處理,以獲得更為穩定、準確的估計值。為了降低噪聲和干擾對LQI實測值的影響,通過卡爾曼濾波構建估計誤差、測量誤差與實測值的方程,具體如下:
xk=xk-1+wk
(1)
zk=xk+vk
(2)
其中,xk和zk分別為LQI的估計值和實測值,wk和vk分別為過程高斯白噪聲和測量高斯白噪聲。根據式(1)、式(2)可得圖1中的更新模型。其中,時間更新方程為:
(3)
(4)
測量更新方程為:
(5)
(6)
(7)

對xk進行指數加權平均濾波,以進一步降低波動,其計算公式為:
(8)
其中,平滑因子λ可以根據實際需求進行調整,其取值范圍為0~1,本文取值為0.4。
對于LQI與PRR的映射關系,文獻[14]采用三段線性模型進行建模,文獻[15-16]則使用Cubic模型進行建模。通過Cubic模型建立的LQI與PRR的關系模型在LQI較低或較高時,會出現PRR小于0或大于1的情況,因此,文獻[15-16]均采用了分段方式對其進行處理。然而,上述模型均是通過對測量數據直接擬合而得到LQI與PRR的關系,忽略了LQI與PRR間關系的實際物理意義。文獻[18]的研究結果表明,LQI與SNR之間存在線性關系,即:
LLQI=aSSNR+b
(9)
其中,a和b為常數,其值可通過對實測數據進行線性擬合得到。對于給定的調制方式,通過SNR可以推導出誤比特率。TelosB節點使用OQPSK調制,其誤比特率為[19]:
(10)
其中,Eb為每比特碼元的能量,n0為噪聲單邊功率譜密度,Q代表Q函數。將SNR記為γ,有:
(11)
其中,Ps為信號功率,Pn為噪聲功率,Rb為數據傳輸速率,W為帶寬。在IEEE 802.15.4協議中,帶寬W為384 kHz,數據傳輸速率Rb為250 kb/s。因此,誤比特率與γ的關系為:
(12)
利用Pb可以得到SNR與PRR的關系:
(13)
其中,Nbit為發送數據包的比特數。結合式(9)和式(13),可得LQI與PRR的關系:
(14)
從式(14)可以看出,LQI與PRR的關系可通過Q函數準確描述。由于Q函數無法用初等函數進行表示,因此需要使用與Q函數近似的初等函數對其進行逼近。雙曲正切函數tanh(x)與Q函數的變化相似,通過擬合可知,函數y=1-Q(x)可由函數y=0.5+0.5tanh(x)逼近,如圖2所示。因此,可采用如下所示的雙曲正切函數對實測數據進行擬合,得到LQI與PRR的映射模型。
PPRR=0.5+0.5tanh(a0LLQI+a1)
(15)

圖2 函數y=1-Q(x)與y=0.5+0.5 tanh(x)的對比
對不同環境下獲得的共計460組LQI與PRR的關系樣本點進行擬合,結果如圖3所示。通過最小二乘法求得參數a0=0.106 0,a1=-8.857 4,LQI與PRR的映射模型如式(16)所示。由圖3可以看出,雙曲正切模型與實測值的變化趨勢非常吻合,該模型的擬合優度為0.806 3,表明使用雙曲正切模型可獲得良好的擬合效果。
PPRR=0.5+0.5tanh(0.106 0×LLQI-8.857 4)
(16)

圖3 使用雙曲正切函數的擬合效果
估計值的穩定性通常使用變異系數來衡量[3]。變異系數(Coefficient of Variation,CV)通過計算估計值之間的標準偏差與平均值的比值得到,如式(17)所示。其中,E(i)為第i個窗口的估計值,n為估計值個數。變異系數值越低,說明處理得到的LQI估計值越穩定。
(17)

(18)
由于不同文獻所使用的估計時間窗口不同,考慮到不同長度的時間窗口會影響估計器的敏捷性,因此本文濾波器與估計器的時間窗口統一設置為5 s。考慮到短時間內統計的PRR不能真實反映鏈路特性[3],因此,本文每隔50 s統計一次PRR作為準確性的評價標準。如果估計器的預測值與通過50 s時間統計得到的PRR值相近,即說明該估計器的預測效果良好。
對于給定的LQI與PRR的映射關系模型,輸入的LQI值波動越大,得到的PRR估計值的波動就越大。PRR估計值的較大波動可能會產生不必要的鏈路切換。由于LQI本身的波動較大,因此需要在保證準確性的前提下盡可能過濾不必要的波動。為了比較LQI的處理效果,本文從實測鏈路中選取了2條時間長度均為300 s的鏈路,分別使用窗口平均、卡爾曼濾波和指數加權卡爾曼濾波進行處理。其中,鏈路1的收包率較差,用以比較收包較少鏈路下的處理效果;鏈路2在130 s之前是穩定的良好鏈路,在130 s之后變成了波動較多的中等鏈路,用其來比較收包較多鏈路下的處理效果。
圖4與圖5所示分別為鏈路1與鏈路2的LQI處理效果。可以看出,對于鏈路2前130 s這種收包較多且穩定的良好鏈路,各種處理方式的效果都很好。然而,對于鏈路1和鏈路2后半段這種波動較大的鏈路,指數加權卡爾曼濾波的效果明顯好于另外2種方式。在鏈路1下,由于此時收包較少且LQI本身的波動較大,窗口平均出現了較大波動,卡爾曼濾波雖然在一定程度上減小了這種波動,但其處理效果不及指數加權卡爾曼濾波。鏈路2的后半段是存在較多波動的中等鏈路,雖然鏈路的收包較多,但LQI實測值的波動較大。在收包較多但波動較大的情況下,窗口平均的LQI估計值波動依然很高,卡爾曼濾波雖然在一定程度上減小了這種波動,但其處理效果依舊不及指數加權卡爾曼濾波。上述結果表明,在不同的鏈路質量下,指數加權卡爾曼濾波的處理效果均為最佳。

圖4 鏈路1下LQI的處理效果

圖5 鏈路2下LQI的處理效果
為了定量地分析估計值的波動程度,圖6給出了估計值的變異系數。可以看出,對于收包較少的鏈路1,指數加權卡爾曼濾波的估計值變異系數明顯低于窗口平均和卡爾曼濾波。對收包較多的鏈路2,窗口平均的估計值變異系數明顯高于指數加權卡爾曼濾波和卡爾曼濾波,而指數加權卡爾曼濾波的估計值變異系數稍低于卡爾曼濾波。該結果表明,指數加權卡爾曼濾波能夠有效過濾不必要的LQI波動,尤其是在收包較少的鏈路下,其效果遠優于其他2種處理方式。

圖6 不同處理方式下估計值的變異系數對比
文獻[14-16]使用與本文相同的射頻芯片CC2420進行測試,因此,LQI與PRR的映射關系在理論上應該一致。然而,文獻[14-16]的映射結果卻存在顯著差異,比如當LQI為85時,根據文獻[14]模型計算得到的PRR為85%,但根據文獻[15-16]模型計算得到的PRR則分別為76.7%和100%。出現上述情況的原因主要有2點:1)上述文獻通過對測量數據直接擬合進行建模,忽略了LQI與PRR關系的實際物理意義;2)如圖7所示,LQI與PRR的關系在過渡區波動較大,而上述文獻使用的過渡區樣本點過少,導致對適用模型產生了錯誤的判斷,沒有使用最恰當的模型對映射關系進行描述。本文分別采用三段線性模型、Cubic模型和雙曲正切模型對LQI與PRR的關系樣本點進行擬合,結果如圖7所示。可以看出,雙曲正切模型更加符合LQI與PRR的映射關系。表1給出了不同擬合模型與實際樣本點的RMSE,可以看出,雙曲正切模型的RMSE最小,表明本文推理模型能夠更為準確地反映LQI與PRR的真實關系。

圖7 不同模型的擬合效果對比

表1 不同擬合模型與實際樣本點的RMSE
文獻[16]的研究結果表明,在通過Cubic擬合模型進行鏈路質量估計時,使用卡爾曼濾波處理LQI的效果優于使用窗口平均的效果。此外,考慮到機器學習算法的計算開銷很大,并不適用于計算能力有限的無線傳感器網絡。因此,本文僅選用文獻[14]提出的估計方法LETX和文獻[16]提出的估計方法K-CCI與本文方法進行對比。
4.4.1 不同鏈路質量下的性能對比
由圖4、圖5可知,鏈路1和鏈路2包含了差鏈路(鏈路1)、中等鏈路(鏈路2后170 s)和好鏈路(鏈路2前130 s)3類不同質量的鏈路,因此,可將鏈路1和鏈路2用于不同鏈路質量下的估計器性能對比。圖8所示為鏈路1和鏈路2下各估計器的性能表現結果。對于鏈路2前130 s的好鏈路,各估計器均給出了較為準確的估計值。然而,對于波動較多的鏈路2后半段,本文方法比另2種估計方法更加穩定、準確。對于收包較少的差鏈路1,得益于更為穩定的LQI估計值和更為準確的映射模型,本文方法明顯優于其他估計器。表2給出了各估計方法估計值與實際PRR的RMSE,可以看出,對于鏈路1和鏈路2,本文方法最接近實際PRR,與其他估計方法相比,本文方法的估計誤差降低了11.21%~52.26%。

圖8 不同質量鏈路下的估計性能對比

表2 不同質量鏈路下各估計器的RMSE對比
4.4.2 突發鏈路下的性能對比
除了波動,實際鏈路還存在突變的情況[20],即周圍環境的突然變化可能會使鏈路從好鏈路突變為差鏈路,或者從差鏈路突變為好鏈路。當鏈路發生突變時,估計器需要快速、準確地做出反應。本文從實測鏈路中選取了2條時間長度均為300 s的鏈路,用于比較各估計器在突發鏈路下的性能,其中,鏈路3代表從好鏈路突變為差鏈路的情況,鏈路4代表從差鏈路突變為好鏈路的情況。圖9所示為突發鏈路下各估計器的性能對比結果。為了更加直觀地對比各估計器的反應速度,在坐標軸上方標記了數據包的接收情況。

圖9 突發鏈路下的估計性能對比
從圖9可以看出,鏈路3發生突變后的一段時間內幾乎沒有收到數據包,因此,估計器缺少足夠的信息來做出反應。LETX的反應最快,但其反應過于劇烈,并且接下來的幾個估計值波動很大,即LETX雖然反應快,但并不可靠。K-CCI與本文估計方法做出反應的時間相同,但K-CCI隨后出現了估計值波動較大的情況。本文方法在做出反應之后的估計值很穩定,從而更為準確地描述了鏈路質量。對于鏈路4,可以看出,在鏈路初期存在較多丟包時,K-CCI與LETX的估計值均不準確,而本文方法能夠給出更為穩定、準確的估計值。在鏈路4發生突變時,LETX的反應依然最快,K-CCI的反應次之。雖然本文方法反應最慢,但與K-CCI相比,也僅差一個窗口的反應時間。
圖10給出了各估計器在鏈路3和鏈路4下估計誤差的時序圖。可以看出,雖然反應時間不同,但鏈路3下各估計器給出準確估計值的時間一致,均為175 s處。鏈路4下LETX與K-CCI給出準確估計值的時間分別為150 s和155 s,本文方法為160 s。雖然與LETX和K-CCI相比,本文方法給出準確估計值的速度稍慢,但其估計準確性更高。為了定量地描述本文方法的準確性,表3給出了突發鏈路下各估計器估計值與實際PRR的RMSE,可以看出,本文方法的估計誤差最小,與其他估計器相比,降低了19.59%~43.23%。

圖10 突發鏈路下各估計器的估計誤差對比

表3 突發鏈路下各估計器的RMSE對比
4.4.3 綜合鏈路下的性能對比
圖11給出了時間長度為1 800 s的綜合鏈路下的估計器性能對比。其中,鏈路既有好鏈路、中等鏈路和差鏈路,又有發生突變的鏈路。從圖11可以看出,在差鏈路和中等鏈路下,K-CCI與LETX無法有效過濾鏈路的不必要波動,因此,兩者產生了較多的錯誤估計值。本文方法能夠有效過濾鏈路的不必要波動,并且在鏈路質量發生突變時也能快速作出反應。圖12給出了綜合鏈路下各估計器估計值的累積概率分布。從圖12可以看出,在中等鏈路和差鏈路下,K-CCI與LETX的估計值與實際PRR相差很大。本文方法的估計值與實際PRR的累積概率分布最為相似,這意味著其最為準確。為了定量地描述本文方法的準確性,表4給出了綜合鏈路下各估計器估計值與實際PRR的RMSE。從表4可以看出,在長時間綜合鏈路下,相比于K-CCI,本文方法的估計誤差降低了25.84%;相比于LETX,本文方法的估計誤差降低了32.07%。

圖11 綜合鏈路下的估計器性能對比

圖12 綜合鏈路下各估計器估計值的累積概率分布對比

表4 綜合鏈路下各估計器的RMSE對比
通過對比各種不同類型的鏈路可以看出,相比于其他估計方法,本文估計方法能夠降低LQI的不必要波動。雖然在鏈路質量發生突變時,本文估計方法比其他估計方法稍慢,但其估計值更準確。更為穩定的LQI數據處理和更為準確的映射關系建模,使本文方法具有與實際PRR最接近的累積概率分布和最小的RMSE,因此,本文方法可以更真實地對鏈路質量進行估計。
無線傳感器網絡的鏈路質量動態變化,為了避免在低質量鏈路上過多重傳導致資源浪費,需要對鏈路質量進行快速準確的估計。使用LQI對鏈路質量進行估計具有相關性高、反應快、開銷小等優點,但現有鏈路質量估計器未能很好地解決LQI波動較多的問題,并且忽略了LQI與PRR間關系的實際物理意義。本文通過推理LQI和PRR的理論關系,建立更具有實際物理意義的雙曲正切模型,降低PRR的映射誤差。同時,使用指數加權卡爾曼濾波對LQI均值進行處理,獲得更為穩定的估計值。在此基礎上,提出一種鏈路質量估計方法。實驗結果表明,該方法能夠獲得與實際PRR相接近的估計值,與同類型的估計方法相比,本文方法在不同質量鏈路下估計誤差降低了11.21%~52.26%,在長時間綜合鏈路下估計誤差降低了25.84%~32.07%。下一步將有效融合多個物理層參數以進行鏈路質量估計,同時將本文鏈路質量估計器集成到現有的無線傳感器網絡協議中。