基于RSS的多目標(biāo)節(jié)點(diǎn)定位算法
MTL-GMM算法
本文引用地址:http://www.ex-cimer.com/article/164387.htmMTL-GMM算法將定位區(qū)域劃分成大小相同的網(wǎng)格,首先粗略定位傳感器節(jié)點(diǎn)所在的網(wǎng)格,根據(jù)粗略定位結(jié)果縮小定位區(qū)域和網(wǎng)格尺寸,迭代運(yùn)行GridL(Grid Localization)算法,實(shí)現(xiàn)精確定位。具體步驟如下:
Step1:初始化定位區(qū)域;
Step2:定義網(wǎng)格尺寸;
Step3:運(yùn)行GridL算法,若定位誤差<=閾值,輸出結(jié)果,若定位誤差>閾值,轉(zhuǎn)step4;
Step4:調(diào)整定位區(qū)域,轉(zhuǎn)step2;
定位區(qū)域的計(jì)算
1)定位區(qū)域初始化
算法根據(jù)RC的路徑坐標(biāo)序列
GridL算法描述
圖1給出了GridL算法的偽代碼。表1給出了GridL算法使用的符號(hào)及其解釋。MT-GMM算法嵌套了內(nèi)外兩層循環(huán)。外層循環(huán)即算法第4行到第29行,用來估計(jì)節(jié)點(diǎn)數(shù)量。假設(shè)節(jié)點(diǎn)數(shù)量M從1開始取值,并隨循環(huán)逐次遞增,根據(jù)(M-1)個(gè)節(jié)點(diǎn)坐標(biāo)估計(jì)第M個(gè)節(jié)點(diǎn)坐標(biāo)。當(dāng)節(jié)點(diǎn)數(shù)量增加,但模型BIC取值不增加時(shí),算法結(jié)束。內(nèi)層循環(huán)即算法第11行到第20行,用來調(diào)整外層循環(huán)確定的M個(gè)節(jié)點(diǎn)的位置坐標(biāo)。當(dāng)模型BIC取值最大時(shí),獲得節(jié)點(diǎn)數(shù)量為M時(shí)的位置坐標(biāo)。
算法第13行的函數(shù)findBIC(R,j)根據(jù)前j個(gè)節(jié)點(diǎn)的位置坐標(biāo),估計(jì)第(j+1)個(gè)節(jié)點(diǎn)的位置坐標(biāo)。該函數(shù)分別假設(shè)第(j+1)個(gè)節(jié)點(diǎn)在定位區(qū)域內(nèi)的每個(gè)網(wǎng)格中,并分別計(jì)算相應(yīng)的BIC取值,BIC取值最大時(shí)對(duì)應(yīng)的網(wǎng)格坐標(biāo)就是第(j+1)個(gè)節(jié)點(diǎn)的坐標(biāo)。
實(shí)驗(yàn)
本文用仿真實(shí)驗(yàn)和實(shí)測(cè)實(shí)驗(yàn)分別驗(yàn)證算法的有效性和準(zhǔn)確性,使用Matlab 7.0來實(shí)現(xiàn)MTL-GMM算法。
實(shí)驗(yàn)使用的信道傳播模型的參數(shù)取值如表2所示。實(shí)驗(yàn)用平均定位誤差衡量算法的性能,如公式(6)所示。
仿真實(shí)驗(yàn)
我們用NCTUns v5.0[14]模擬實(shí)驗(yàn)場(chǎng)景,將8個(gè)傳感器分別放置在180m×300m的區(qū)域里,將一個(gè)可移動(dòng)的傳感器做為信標(biāo)節(jié)點(diǎn)RC,如圖2所示。圖中叉號(hào)表示傳感器節(jié)點(diǎn)所在的位置,曲線表示RC的移動(dòng)路徑,圓圈表示估計(jì)的傳感器位置。傳感器節(jié)點(diǎn)的通信半徑設(shè)為100米。RC采集的RSS序列長度為300。
評(píng)論