賈銀山 曾帥斌 王 璟
1(遼寧石油化工大學(xué)計算機與通信工程學(xué)院 遼寧 撫順 113001) 2(遼寧石油化工大學(xué)馬克思主義學(xué)院 遼寧 撫順 113001)
一種基于優(yōu)化RSSI精度的加權(quán)質(zhì)心定位算法
賈銀山1曾帥斌1王 璟2
1(遼寧石油化工大學(xué)計算機與通信工程學(xué)院 遼寧 撫順 113001)2(遼寧石油化工大學(xué)馬克思主義學(xué)院 遼寧 撫順 113001)
針對無線傳感器網(wǎng)絡(luò)中傳感器節(jié)點接收信號強度的誤差影響,在利用信號強度的比值作為加權(quán)因子的基礎(chǔ)上提出一種基于優(yōu)化信號強度、精度的加權(quán)質(zhì)心定位算法。首先對信號強度(RSSI)值進行了修正:為每個RSSI值求得一個加權(quán)系數(shù),用加權(quán)后的信號強度值進行運算;然后用修正后的信號強度的比值的倒數(shù)之和作為此算法的權(quán)重因子。實驗結(jié)果表明,算法的定位準(zhǔn)確度比傳統(tǒng)質(zhì)心算法提高了61.5%~87.3%,比RR-WCL算法提高了32.7%~46.4%。
無線傳感器網(wǎng)絡(luò) 信號強度(RSSI) 加權(quán)質(zhì)心算法 精度
獲取節(jié)點的位置信息的重要性是毋庸置疑的,實時獲取事件發(fā)生的地址是傳感器網(wǎng)絡(luò)的主要功能之一。若是丟失對位置信息的監(jiān)測,傳感器網(wǎng)絡(luò)就變得沒有意義。無線傳感器網(wǎng)絡(luò)最為基礎(chǔ)的技術(shù)之一就是節(jié)點定位技術(shù)[1-2]。節(jié)點定位技術(shù),具體而言,就是通過一些科學(xué)技術(shù)方法獲取節(jié)點位置信息的過程。在定位過程中,通常把網(wǎng)絡(luò)內(nèi)的節(jié)點分為已知的信標(biāo)節(jié)點和未知的未知節(jié)點。
當(dāng)前,無線傳感器定位算法根據(jù)距離有關(guān)與否分為兩大類:基于測距和非基于測距[3]。非基于測距的定位算法也叫距離無關(guān)算法,是通過節(jié)點間的連通性和多跳路由來對距離進行計算,主要有質(zhì)心算法、DV-Hop算法[4]等。非基于測距算法固然對于節(jié)點的硬件要求較低,可是定位的誤差較大。測量節(jié)點間的角度或者距離,再經(jīng)過計算,最終獲得節(jié)點的位置的方法叫做基于測量距離的定位算法,比如RSSI[5]、AOA[6]、TOA、TDOA等[7]。與非基于測距的算法對比,固然基于測距算法計算量較大,但精確度需求較高,只實用于定位精度要求較高的場合。
鄧克巖[8]提出基于RSSI的加權(quán)質(zhì)心算法的改進算法,原理是:未知節(jié)點會接收到不同信標(biāo)節(jié)點的RSSI值,并把這些信號作為確定權(quán)值的依據(jù)??墒撬]有考慮反射、多徑傳播等成分的影響。楊新宇等[9]提出了基于信號強度比值的加權(quán)質(zhì)心算法。該算法的優(yōu)點是不僅有效緩解了環(huán)境對路徑衰減因子的影響,而且減小了由于方向不同帶來的信號誤差,缺點是沒有思量天線增益等問題會對RSSI值產(chǎn)生較大的誤差。施偉等[10]首先將信號強度值用高斯理論模型進行濾波處理,利用窗口函數(shù)濾去偏離較大的信號值。然后再運用校正過的RSSI測距技術(shù)優(yōu)選信標(biāo)節(jié)點。該算法的優(yōu)點是盡可能利用RSSI數(shù)據(jù),提高了數(shù)據(jù)利用度,且對硬件的要求不高。呂振等[11]和CH Genitha等[12]利用倒數(shù)函數(shù),把未知節(jié)點和信標(biāo)節(jié)點間的距離作倒數(shù)運算,將倒數(shù)進行相加,并把它當(dāng)作權(quán)值進行計算。這樣,可以避免數(shù)據(jù)利用度相同,并進行了系數(shù)的修正。趙寶峰等[13]將四邊形拆分成兩個三角形,在三邊測距的基礎(chǔ)上分別對這兩個三角形求質(zhì)心。該算法的優(yōu)點是在不增添信標(biāo)節(jié)點的前提下,避免了四個信標(biāo)節(jié)點組成凹形圖所帶來的誤差。缺點是隨著信標(biāo)節(jié)點占的比例越大,就需要再額外增加節(jié)點或者切換原始算法來計算,但這樣算法的改進就變得沒有意義。
為了克服信標(biāo)節(jié)點位置分布不合理造成的少數(shù)節(jié)點無法定位,彌補信號強度由于非人為因素而對算法結(jié)果產(chǎn)生誤差的缺陷,提高信號強度的完整性與準(zhǔn)確率,本文基于對文獻[9]提出的RR-WCL算法的研究,對RSSI數(shù)據(jù)處理方法的漏洞進行了修正,給出一種優(yōu)化算法對RSSI值進行加權(quán)處理的方法, 來修正RSSI數(shù)據(jù)產(chǎn)生的誤差。本文提出將RSSI值進行加權(quán)處理的方法與RR-WCL算法結(jié)合,用歸一化方法為每個信標(biāo)節(jié)點的信號強度求權(quán)重系數(shù),使修正后的算法不僅使得數(shù)據(jù)信息的運用更充分,而且還在選取權(quán)值的過程中合理地安排了信息的權(quán)重。并基于加權(quán)質(zhì)心算法理論,將兩種方法結(jié)合。相比于現(xiàn)有的基于單一加權(quán)方法,本算法提高了信號強度值的準(zhǔn)確率。
1.1 無線電傳播路徑損耗模型
由于多條路徑形成的反射、障礙物阻隔等非人為因素的影響,往往會導(dǎo)致無線信號在傳播的時候存在一定的損耗。而這種耗損很可能會導(dǎo)致算法結(jié)果出現(xiàn)偏差,路徑損耗是無法避免的,但是我們通過研究發(fā)現(xiàn),不同環(huán)境下選擇不同的損耗模型對于實現(xiàn)精確的定位效果是非常關(guān)鍵的。實際中,主要有三種模型:自由空間傳播模型、對數(shù)距離路徑損耗模型、對數(shù)-常態(tài)分布模型。針對實際的應(yīng)用環(huán)境,選取自由空間傳播模型與對數(shù)-常態(tài)分布模型[14]。
自由空間傳播模型:
P(d0)=32.44+10nlg(d0)+10nlg(f)
(1)
其中:P(d0)是路徑損耗,d0是接收端到發(fā)射端的距離(KM),n是路徑損耗系數(shù),取值范圍為2~5,f是無線電傳播的頻率(MHz)。
對數(shù)-常態(tài)分布模型:
(2)
其中:P(d)是經(jīng)過d距離后的路徑損耗(dB),P(d0)無線電信號傳輸d0距離后的路徑損耗,d0是參考距離,取d0=1 m;通過式(1)計算可得P(d0)。Xσ是均值為0、方差為μ的高斯隨機變量。由式(1)、式(2)可以得到各未知節(jié)點接收信號強度:RSSI=Psend+Pampligy-P(d),其中,RSSI是接收到的功率,Psend是發(fā)射功率,Pampligy是天線的增益,P(d)是路徑損耗。
1.2 傳統(tǒng)質(zhì)心算法
質(zhì)心算法的核心思路是:未知節(jié)點把所有與其通信的信標(biāo)節(jié)點的質(zhì)心位置當(dāng)成自身的預(yù)測位置。具體定位過程為:信標(biāo)節(jié)點定期廣播發(fā)送周圍節(jié)點能夠接收的信標(biāo),信標(biāo)節(jié)點自身的ID和位置信息都包含在該信標(biāo)中,所以周圍未知節(jié)點接收到信標(biāo)時,就能以此判斷自身位置。當(dāng)未知節(jié)點在一定時限內(nèi)接收到的信標(biāo)數(shù)量超過某一事先設(shè)定的閾值時,該節(jié)點就把與之聯(lián)通的信標(biāo)節(jié)點多邊形的質(zhì)心確定為自身的位置。定位算法第一要確定未知節(jié)點所能感知的信標(biāo)節(jié)點,這些信標(biāo)節(jié)點構(gòu)成一個多邊形地域,第二要計算這個多邊形所有節(jié)點坐標(biāo)的平均值,就是所求的質(zhì)心坐標(biāo)[15]。如圖1所示。
圖1 質(zhì)心定位原理示意圖
多邊形ABCD的頂點分別為A(x1,y1)、B(x2,y2)、C(x3,y3)、D(x4,y4),則多邊形質(zhì)心公式為:
(3)
1.3 加權(quán)質(zhì)心算法
加權(quán)質(zhì)心算法核心思路是:在傳統(tǒng)質(zhì)心算法的構(gòu)思基礎(chǔ)上,基于每個信標(biāo)節(jié)點和未知節(jié)點之間的信號強度作為依據(jù),計算每個固定信標(biāo)節(jié)點的權(quán)值。信標(biāo)節(jié)點對質(zhì)心位置的影響是通過權(quán)值大小來判斷的。假定(xj,yj)、(xi,yi)分別為未知節(jié)點和信標(biāo)節(jié)點的坐標(biāo),則:
(4)
其中:wi為權(quán)值。通常,權(quán)值是未知節(jié)點到信標(biāo)節(jié)點距離的函數(shù),要是未知節(jié)點不能與信標(biāo)節(jié)點通信,那么wi的值為0。n為信標(biāo)節(jié)點的個數(shù)。
由于相同的信號強度對于同一拓?fù)浣Y(jié)構(gòu)中的不同節(jié)點來說,代表的距離是不同的,所以必須賦予不同的權(quán)值加以區(qū)分。若是僅僅考慮未知節(jié)點到任意一個信標(biāo)節(jié)點的信號強度值,顯然對未知節(jié)點的位置計算起不到明顯的效果。針對這一問題,有必要加入另外的RSSI修正方式。
2.1 RSSI值修正
針對RSSI值進行修正:給RSSI值求得一個歸一化系數(shù),通過式(7)為RSSI值求得一個加權(quán)系數(shù),用加權(quán)后的RSSI值代替原始RSSI值。
具體改進算法的計算步驟如下:
對于n個信標(biāo)節(jié)點Be1(x1,y1),Be2(x2,y2),Be3(x3,y3),…,Ben(xn,yn),未知節(jié)點U(x0,y0)接收到各信標(biāo)節(jié)點的信號強度分別為S1,S2,S3,…,Sn。
步驟1假設(shè)有n個信標(biāo)節(jié)點,且未知節(jié)點能收到這n個信標(biāo)節(jié)點的信息。按照式(5)求得未知節(jié)點從信標(biāo)節(jié)點接收到的信號強度的平均值RSSIAVG。
(5)
步驟2對于來自n個信標(biāo)節(jié)點的信號強度,RSSIAVG與Si相差較大的話,給予一個相對小的權(quán)值,反之則給予一個相對大的權(quán)值。根據(jù)式(6)求得權(quán)重因子δi,根據(jù)式(7)對δi作歸一化處理得到加權(quán)系數(shù)Ci。
(6)
(7)
步驟3根據(jù)式(8)求得修正后的RSSI值。
(8)
2.2 位置計算
定義未知節(jié)點M從信標(biāo)節(jié)點Bej、Bei分別接收到的信號強度比值為Sji,即:
(9)
定義權(quán)值為:
(10)
最終得到的加權(quán)質(zhì)心計算公式為:
(11)
(12)
利用MATLAB在100 m×100 m的仿真區(qū)域內(nèi),對傳統(tǒng)質(zhì)心算法、文獻[9]提到的算法、本文的優(yōu)化算法進行比較。信標(biāo)節(jié)點和未知節(jié)點隨機分布在仿真地域中。待定位目標(biāo)點數(shù)為50個,仿真測試中,全部的數(shù)據(jù)點代表50次試驗結(jié)果的平均值。仿真結(jié)果如圖2和圖3所示。
圖2為三種算法的未知節(jié)點到質(zhì)心距離誤差的比較。在同一條件下,優(yōu)化后的距離誤差明顯比另外兩種小得多,這說明優(yōu)化后的定位算法精度提高了。
圖2 平均誤差曲線
圖3 通信半徑對誤差的影響
從實驗結(jié)果可明顯看出,在信標(biāo)節(jié)點數(shù)相同而通信半徑不斷增加的情況下,本文優(yōu)化算法的定位精度得到了顯著提高。隨著通信半徑的增加,本文算法的定位準(zhǔn)確度比質(zhì)心算法提高了61.5%~87.3%,比文獻[9]算法提高了32.7%~46.4%。
針對傳統(tǒng)質(zhì)心算法和加權(quán)質(zhì)心算法的缺點,本文算法將傳統(tǒng)質(zhì)心算法和加權(quán)質(zhì)心算法的核心思想相結(jié)合,并在信號強度值的優(yōu)化方法上提出創(chuàng)新,具有明顯的優(yōu)勢。通過仿真表明:在直接將信號強度比值作為算法加權(quán)系數(shù)的前提下,先把信號強度進行一次求權(quán)值運算,其定位精度會高出很多。尤其當(dāng)通信半徑適當(dāng)增大的情況下,該算法比另外兩種算法的定位誤差下降將越發(fā)明顯,證明了該算法的優(yōu)異性。
[1] 劉雪蘭,王宜懷,陸全華,等.無線傳感器網(wǎng)絡(luò)RSSI定位算法改進[J].計算機應(yīng)用與軟件,2013,30(11):87-89,141.
[2] 李建中,高宏.無線傳感器網(wǎng)絡(luò)的研究進展[J].計算機研究與發(fā)展,2008,45(1):1-15.
[3] 孫利民,李建中,陳渝.無線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2005.
[4] 林金朝,劉海波,李國軍,等.無線傳感器網(wǎng)絡(luò)中DV-Hop節(jié)點定位改進算法研究[J].計算機應(yīng)用研究,2009,26(4):1272-1275.
[5] 陳維克,李文鋒,首珩,等.基于RSSI的無線傳感器網(wǎng)絡(luò)加權(quán)質(zhì)心定位算法[J].武漢理工大學(xué)學(xué)報,2006,28(4):265-271.
[6] Niculescu D,Nath B.Ad hoc positioning system (APS) using AOA[J].Proceedings-IEEE INFOCOM,2003,3(2):1734-1743.
[7] Akyildiz I F,Su W,Sankarasubramaniam Y,et al.A survey on sensor networks[J].Communications Magazine IEEE,2002,40(8):102-114.
[8] 鄧克巖.一種基于RSSI的加權(quán)質(zhì)心算法的改進算法[J].自動化與儀器儀表,2012,34(3):136-137.
[9] 楊新宇,孔慶茹,戴湘軍.一種改進的加權(quán)質(zhì)心定位算法[J].西安交通大學(xué)學(xué)報,2010,44(8):1-4.
[10] 施偉,高軍.無線傳感器網(wǎng)絡(luò)中基于RSSI的改進加權(quán)質(zhì)心定位算法[J].計算機應(yīng)用與軟件,2015,32(12):68-70,104.
[11] 呂振,趙鵬飛.一種改進的無線傳感器網(wǎng)絡(luò)加權(quán)質(zhì)心定位算法[J].計算機測量與控制,2013,21(4):1102-1104.
[12] Genitha C H,Vani K.Classification of satellite images using new Fuzzy cluster centroid for unsupervised classification algorithm[C]//Information & Communication Technologies.IEEE,2013:203-207.
[13] 趙寶峰,趙棟棟,趙菊敏,等.基于四邊形分解的質(zhì)心定位算法[J].傳感器與微系統(tǒng),2013,32(6):139-142.
[14] 劉運杰,金明錄,崔承毅.基于RSSI的無線傳感器網(wǎng)絡(luò)修正加權(quán)質(zhì)心定位算法[J].傳感技術(shù)學(xué)報,2010,23(5):717-721.
[15] 彭泓,趙陽,夏天鵬.基于優(yōu)化RSSI精度的WSN加權(quán)質(zhì)心定位算法[J].計算機工程與應(yīng)用,2015,51(21):88-91.
[16] 鄒佳順,張永勝.無線傳感器網(wǎng)絡(luò)中關(guān)于DV-Hop定位算法的改進[J].計算機應(yīng)用與軟件,2016,33(3):147-150.
[17] 呂淑芳,馮秀芳,肖忠義.基于TDOA的無線傳感器網(wǎng)絡(luò)四面體質(zhì)心定位算法研究[J].計算機應(yīng)用與軟件,2014,31(9):125-128.
[18] 曾子維,張超.一種質(zhì)心與DV-Hop算法相結(jié)合的WSN節(jié)點定位算法[J].計算機應(yīng)用與軟件,2015,32(11):130-133.
AWEIGHTEDCENTROIDLOCALIZATIONALGORITHMBASEDONOPTIMIZEDRSSIPRECISION
Jia Yinshan1Zeng Shuaibin1Wang Jing2
1(SchoolofComputerandCommunicationEngineering,LiaoningShihuaUniversity,Fushun113001,Liaoning,China)2(SchoolofMarxism,LiaoningShihuaUniversity,Fushun113001,Liaoning,China)
Aiming at the influence of the
signal strength error in wireless sensor networks, on the basis of using the ratio of signal strength as the weighting factor, a weighted centroid localization algorithm based on optimized signal strength precision is proposed. First, the algorithm modified the signal strength (RSSI) value. A weighted factor of each RSSI value was counted, and the original RSSI values were replaced with weighted RSSI values. Then, the sum of the reciprocal of the ratio of the modified signal strength was used as the weighting factor of the algorithm. The experimental results show that the localization accuracy of our algorithm is improved by 61.5%~87.3% than that of the traditional centroid algorithm, and 32.7% ~ 46.4% higher than the RR-WCL algorithm.
Wireless sensor networks Received signal strength (RSSI) Weighted centroid algorithm Precision
2016-12-02。遼寧省教育廳科學(xué)研究項目(L2016011)。賈銀山,教授,主研領(lǐng)域:智能信息處理。曾帥斌,碩士生。王璟,碩士生。
TP3
A
10.3969/j.issn.1000-386x.2017.11.030