鄧 昀,朱 彥,楊逸夫,程小輝,李朝慶1(廣西嵌入式技術(shù)與智能系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,廣西桂林541004)
2(桂林理工大學(xué)信息科學(xué)與工程學(xué)院,廣西桂林541004)
3(湖南商學(xué)院新零售虛擬現(xiàn)實(shí)技術(shù)湖南省重點(diǎn)實(shí)驗(yàn)室,長沙410205)
E-mail:woshidengyun@sina.com
日常生活中,定位系統(tǒng)越來越重要,無線定位技術(shù)已然成為了當(dāng)前研究的重點(diǎn).在室外定位環(huán)境中,例如GPS全球定位系統(tǒng),有著非常突出的優(yōu)勢,其定位準(zhǔn)確率高,并且能實(shí)現(xiàn)實(shí)時(shí)定位,為人們的出行提供了很大便捷.但是在室內(nèi)環(huán)境中[1],GPS所需要的衛(wèi)星信號(hào)會(huì)被建筑物等障礙物影響,導(dǎo)致其信號(hào)會(huì)變得極其微弱,甚至?xí)煌耆诒?,其定位性能遠(yuǎn)不能滿足需求.因此,室內(nèi)定位技術(shù)的研究有著重大的現(xiàn)實(shí)意義.目前常見的室內(nèi)定位技術(shù)包括:無線局域網(wǎng),超聲波技術(shù),紅外線技術(shù),以及射頻識(shí)別技術(shù)(RFID)[2].在這幾種定位技術(shù)中,RFID技術(shù)有著低成本、非視距、非接觸、高精度等優(yōu)點(diǎn),被廣泛的應(yīng)用在室內(nèi)定位技術(shù)中[3-6].因此,在最近幾年中,RFID室內(nèi)定位研究已經(jīng)成為了一個(gè)熱點(diǎn)問題.
本文算法使用了基于nRF24LE1芯片的有源RFID標(biāo)簽來實(shí)現(xiàn)定位,標(biāo)簽工作原理是基于功率射頻信號(hào)值,其提供4種離散的功率值,分別為-18dbm,12dbm,6dbm和0dbm,為了表述方便,本文將其定義為 P1,P2,P3,P4檔,根據(jù)實(shí)驗(yàn)測量的結(jié)果,它們分別對(duì)應(yīng)于最大的傳輸距離為4.5m,5m,5.5m,6m.因此在空曠的環(huán)境下,部署一個(gè)4m*6m的矩形定位區(qū)域用于本文的算法研究.取10個(gè)RFID標(biāo)簽作為參考標(biāo)簽,并將其按間隔2m的距離部署在矩形的邊緣區(qū)域,一個(gè)目標(biāo)標(biāo)簽用于傳輸數(shù)據(jù),一個(gè)閱讀器用于接收信號(hào),一個(gè)便攜式電腦用于數(shù)據(jù)的收集和存儲(chǔ).根據(jù)4個(gè)離散功率射頻信號(hào)值最遠(yuǎn)傳輸距離間隔大約為0.5m的特點(diǎn),將4m*6m的定位區(qū)域劃分為96個(gè)小大相同、整齊排列的正方形網(wǎng)格,每個(gè)小正方形的邊長為0.5m.如圖1所示.
圖1 數(shù)據(jù)采集和實(shí)驗(yàn)部署圖Fig.1 Data acquisition and experiment deployment diagram
由虛線分隔而成的正方形網(wǎng)格為數(shù)據(jù)采集區(qū)域,取正方形的中心位置作為該正方形網(wǎng)格的計(jì)算坐標(biāo)位置,用于計(jì)算本文算法的均方根誤差.參考標(biāo)簽每隔2S為一個(gè)周期,廣播其當(dāng)前的功率射頻信號(hào)值和自身的身份ID,其功能經(jīng)初始化后定期將-18dBm、-12dBm、-6dBm和0dBm的功率射頻信號(hào)值發(fā)送給目標(biāo)標(biāo)簽,其廣播順序?yàn)?P1,P2,P3,P4,P1,….
基于BP神經(jīng)網(wǎng)絡(luò)的RFID室內(nèi)定位算法分為兩個(gè)步驟進(jìn)行,其中第一步為采集數(shù)據(jù),建立模型[7-9].首先按照?qǐng)D1所示,部署實(shí)驗(yàn)測試環(huán)境,接著將目標(biāo)標(biāo)簽放置在每一個(gè)正方形網(wǎng)格內(nèi)采集多條數(shù)據(jù),經(jīng)過篩選,得到每個(gè)正方形網(wǎng)格內(nèi)的指紋數(shù)據(jù),最終形成96組指紋數(shù)據(jù).收集96組指紋數(shù)據(jù)所對(duì)應(yīng)的坐標(biāo)位置.然后對(duì)指紋數(shù)據(jù)進(jìn)行歸一化處理,再使用kmeans聚類算法對(duì)4m*6m的定位區(qū)域劃分為K個(gè)宏區(qū)域,得出每一個(gè)正方形網(wǎng)格所屬宏區(qū)域的類標(biāo)簽.將由每一個(gè)正方形網(wǎng)格內(nèi)收集到的指紋數(shù)據(jù)以及指紋數(shù)據(jù)所對(duì)應(yīng)的類標(biāo)簽作為輸入數(shù)據(jù),進(jìn)行SVM分類訓(xùn)練,建立最優(yōu)的SVM多分類模型.針對(duì)具有相同類標(biāo)簽的正方形網(wǎng)格,利用BP神經(jīng)網(wǎng)絡(luò)算法,將屬于相同類標(biāo)簽的指紋數(shù)據(jù)作為BP神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù),將每條指紋數(shù)據(jù)所對(duì)應(yīng)的坐標(biāo)位置作為BP神經(jīng)網(wǎng)絡(luò)的目標(biāo)數(shù)據(jù),進(jìn)行BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練,建立最佳的BP神經(jīng)網(wǎng)絡(luò)模型.其流程如圖2所示.
基于BP神經(jīng)網(wǎng)絡(luò)的RFID室內(nèi)定位算法的第二步為使用模型,實(shí)驗(yàn)仿真.首先在定位區(qū)域內(nèi)放置待定位標(biāo)簽,采集待定位標(biāo)簽發(fā)送的數(shù)據(jù),記錄每條數(shù)據(jù)所對(duì)應(yīng)的坐標(biāo)位置,即其實(shí)際位置.對(duì)于采集到的數(shù)據(jù)進(jìn)行歸一化處理,將處理過后的數(shù)據(jù)作為輸入數(shù)據(jù),利用已經(jīng)建立好的SVM分類器,得出每條數(shù)據(jù)所屬的類標(biāo)簽.提取具有相同類標(biāo)簽的數(shù)據(jù),并將其作為BP神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù),利用已經(jīng)建立好的BP神經(jīng)網(wǎng)絡(luò)模型,預(yù)測出每條數(shù)據(jù)所對(duì)應(yīng)的坐標(biāo)位置.根據(jù)BP神經(jīng)網(wǎng)絡(luò)預(yù)測出的坐標(biāo)位置和實(shí)際位置作比較,得出該算法的均方根誤差,最后再畫出誤差累積概率分布圖.
圖2 建立模型流程圖Fig.2 Establish model flow chart
3.1.1 建立指紋數(shù)據(jù)庫
本文對(duì)于4m*6m的區(qū)域劃分了96個(gè)大小相等邊長為0.5m的正方形網(wǎng)格.對(duì)該區(qū)域建立坐標(biāo)系,橫縱坐標(biāo)代表的是每個(gè)正方形網(wǎng)格的坐標(biāo)位置,對(duì)于每一個(gè)正方形網(wǎng)格,定義數(shù)據(jù)DG=(Pj1,Pj2,…,Pji),為在該區(qū)域內(nèi)收集到的指紋數(shù)據(jù),其中i=1,2,…,10表示參考標(biāo)簽的身份ID,本文中參考標(biāo)簽數(shù)量為10 個(gè),則 i最大為 10,j=8,10,12,14,16 表示收到標(biāo)簽i發(fā)出的功率值,為了實(shí)驗(yàn)的方便,易于數(shù)據(jù)的處理和管理,不和丟失值0沖突,本文把功率值為-18dbm,-12dbm,-6dbm和0dbm的數(shù)據(jù)做轉(zhuǎn)換處理,其分別對(duì)應(yīng)為8dbm,10dbm,12dbm,14dbm,對(duì)于沒有接收到參考標(biāo)簽發(fā)送的功率值,即丟失值0,將其轉(zhuǎn)換為16dbm,方便畫圖和管理數(shù)據(jù).
令 G={(x1,y1),(x1,y2),…,(xa,yb)}表示正方形網(wǎng)格的坐標(biāo),令珟G={(珓x1,珓y1),(珓x1,珓y2),…,(珓xa,珓yb)}為本文收集數(shù)據(jù)和實(shí)驗(yàn)仿真的計(jì)算坐標(biāo),計(jì)算坐標(biāo)為每一個(gè)小正方形的中心點(diǎn),網(wǎng)格坐標(biāo)表示的是指紋數(shù)據(jù)對(duì)應(yīng)的網(wǎng)格位置,計(jì)算坐標(biāo)表示的是目標(biāo)標(biāo)簽的實(shí)際坐標(biāo),則用于計(jì)算實(shí)驗(yàn)的均方根誤差,其中 a=1,2,…,12,b=1,2,…,8.網(wǎng)格坐標(biāo)和其對(duì)應(yīng)的計(jì)算坐標(biāo)的轉(zhuǎn)換公式如下:
即:
用一個(gè)正方形網(wǎng)格來舉例,例如本文在(10,6)位置共收集到80組數(shù)據(jù),每個(gè)標(biāo)簽發(fā)送的功率檔值的次數(shù)如表1所示.
16dbm代表在該位置沒有收到參考標(biāo)簽發(fā)出的功率檔,由
3.1.2 數(shù)據(jù)歸一化
定義數(shù)據(jù)集F={D1,D2,…,DG}為本文所建立的指紋數(shù)據(jù)庫,其中G=1,…,96表示正方形網(wǎng)格,對(duì)于每一個(gè)正方形網(wǎng)格有一條數(shù)據(jù)DG=.首先找出數(shù)據(jù)DG當(dāng)中的最大值和最小值,然后把這些值規(guī)范到范圍[0;1]內(nèi).定義:MAX={M1,M2,…,MG},MIN={m1,m2,…,mG}分別為數(shù)據(jù)集F的最大值和最小值.對(duì)于每一個(gè)數(shù)據(jù)PGi表示的是在第G個(gè)正方形網(wǎng)格收到來自第i個(gè)參考標(biāo)簽發(fā)出的功率檔,并按照公式(2)進(jìn)行歸一化處理.
表1 (10,6)坐標(biāo)位置數(shù)據(jù)Table 1 (10,6)Coordinate position data
本文則采用K-means算法將96個(gè)正方形網(wǎng)格定位宏區(qū)域劃分為若干個(gè)宏區(qū)域,聚類過后每個(gè)網(wǎng)格都有一個(gè)類標(biāo)簽,從而使得指紋數(shù)據(jù)庫建立得更為精確.
K-means算法總體思路如下:首先,由用戶確定所要聚類的準(zhǔn)確數(shù)目k,從n個(gè)數(shù)據(jù)樣本{x1,x2,…,xn}中隨機(jī)的選擇K個(gè)點(diǎn){c1,c2,…,ck}作為初始聚類中心,每個(gè)樣本代表一個(gè)簇(類)的中心或均值,計(jì)算剩余樣本到K個(gè)聚類中心的距離,根據(jù)距離相似原則對(duì)樣本進(jìn)行聚類,對(duì)剩余的每個(gè)樣本,根據(jù)其與各簇中心的距離將它賦給最近的簇,然后重新計(jì)算每個(gè)簇內(nèi)對(duì)象的平均值形成新的聚類中心,再繼續(xù)聚類,這個(gè)過程重復(fù)進(jìn)行,直到當(dāng)前均值向量不再變化為止,即樣本中每個(gè)數(shù)據(jù)點(diǎn)與它最近的聚類中心的距離平方和最小,最終得到基于 K-means算法的簇劃分[10].
本文K-means算法采用迭代更新的方法:在每一輪迭代中,都將樣本中所有的點(diǎn)依據(jù)距離相近原則,劃分為K個(gè)類,再重新計(jì)算每個(gè)聚類中所有樣本點(diǎn)的平均值,并將其作為下一輪迭代的聚類中心.具體算法處理步驟如下:
輸入:聚類數(shù)目K,96組指紋數(shù)據(jù)作為樣本數(shù)據(jù).
輸出:K個(gè)聚類,每組數(shù)據(jù)所對(duì)應(yīng)的類標(biāo)簽.
1)從96個(gè)數(shù)據(jù)樣本中隨機(jī)選擇K個(gè)樣本作為初始的聚類中心;
2)根據(jù)歐式距離相似準(zhǔn)則,分別計(jì)算剩余每個(gè)樣本到各個(gè)聚類中心的距離,并將每個(gè)樣本分配到距離最近的類中;
3)當(dāng)所有樣本分配完成之后,再更新K個(gè)簇的均值或者中心點(diǎn);
4)與前一次計(jì)算得到的K個(gè)聚類中心進(jìn)行比較,如果聚類中心發(fā)生變化,則重新執(zhí)行步驟2).如果K個(gè)聚類中心不再變化,且準(zhǔn)則函數(shù)收斂,則執(zhí)行步驟5);
5)輸出聚類結(jié)果,得出每組數(shù)據(jù)所屬的類標(biāo)簽.
將歸一化后的96組指紋數(shù)據(jù)珘F={珟D1,珟D2,…,珟DG}作為輸入樣本,然后用K-means算法進(jìn)行聚類,得出的輸出結(jié)果為每條數(shù)據(jù)的類標(biāo)簽DLG以及所屬正方形網(wǎng)格G的類標(biāo)簽,即:
這里將96個(gè)正方形網(wǎng)格,分別聚成2類宏區(qū)域,3類宏區(qū)域和4類宏區(qū)域.即K的取值為K=2,3,4.圖3為K-means聚類過后劃分3類宏區(qū)域圖形.
圖3 劃分為3類宏區(qū)域Fig.3 Divided into 3 types of macro regions
通過劃分的宏區(qū)域可以看到,正方形網(wǎng)格的分布極不規(guī)則,則需要通過建立SVM分類模型,進(jìn)一步規(guī)范分類結(jié)果.
通過K-means算法得出K個(gè)宏區(qū)域之后,根據(jù)其輸出結(jié)果得出的96個(gè)類標(biāo)簽,和其對(duì)應(yīng)的指紋數(shù)據(jù)用LIBSVM算法[11]進(jìn)行模型的建立.建立多分類模型的步驟如下:
輸入:96組指紋數(shù)據(jù)以及每組數(shù)據(jù)對(duì)應(yīng)的類標(biāo)簽
輸出:參數(shù) c,g
1)將歸一化后的96組指紋數(shù)據(jù)及其相對(duì)應(yīng)的坐標(biāo)位置作為SVM分類器的輸入數(shù)據(jù);
2)選用高斯核作為SVM算法的核函數(shù);
3)采用網(wǎng)格搜索交叉驗(yàn)證方法得出最佳參數(shù)c和g;
4)利用選擇好的參數(shù)對(duì)整個(gè)訓(xùn)練集進(jìn)行訓(xùn)練,測試分類模型的準(zhǔn)確率;
5)保存多分類模型.
具體流程圖如圖4所示.
圖4 建立SVM多分類模型的流程圖Fig.4 Establishing the flow chart of SVM multi classification model
使用SVM算法時(shí),關(guān)鍵是找到最佳參數(shù),本文使用RBF核作為核函數(shù),RBF核中有2個(gè)參數(shù):c和g.本文使用Grid Search(網(wǎng)格搜索)交叉驗(yàn)證方法,查找樣本數(shù)據(jù)的最佳參數(shù)c和g,并得出分類的準(zhǔn)確率.本文算法中使用了k折交叉驗(yàn)證法,將原始數(shù)據(jù)集按固定比例分為訓(xùn)練集與測試集,使用測試集來評(píng)估模型的好壞,并重復(fù)這個(gè)過程k次并使得數(shù)據(jù)集中所有數(shù)據(jù)都被劃分為訓(xùn)練集與測試集.最后對(duì)k次驗(yàn)證結(jié)果求取平均值.在網(wǎng)格搜索算法中,是通過遍歷所有的c和g的參數(shù)組合并進(jìn)行k折交叉驗(yàn)證,從而得出最優(yōu)的參數(shù)組合[12].
當(dāng)進(jìn)行SVM模型建立的時(shí)候,需要訓(xùn)練和測試SVM分類器,本文把建立好的96組指紋數(shù)據(jù)分為80組訓(xùn)練數(shù)據(jù)和16組測試數(shù)據(jù).每條訓(xùn)練數(shù)據(jù)和其對(duì)應(yīng)的類標(biāo)簽作為SVM的輸入數(shù)據(jù),訓(xùn)練SVM分類器.測試數(shù)據(jù)則是用來測試SVM分類器的準(zhǔn)確率,當(dāng)輸入一條數(shù)據(jù)時(shí),SVM分類器輸出結(jié)果為對(duì)應(yīng)于這條數(shù)據(jù)的標(biāo)簽GL.當(dāng)96個(gè)正方形網(wǎng)格被劃分為2類,3類,4類宏區(qū)域之后,利用網(wǎng)格交叉驗(yàn)證方法得出來的最優(yōu)參數(shù)和分類模型的準(zhǔn)確率如表2所示,這里k折交叉驗(yàn)證法中,k=10.
表2 SVM分類模型參數(shù)取值和分類準(zhǔn)確率Table 2 SVM classification model parameters and classification accuracy
3.4.1 確定K個(gè)BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
當(dāng)數(shù)據(jù)被K-means算法聚成K類之后,則需要建立K個(gè)BP神經(jīng)網(wǎng)絡(luò)來建立學(xué)習(xí)模型.將所有具有相同類標(biāo)簽DLG的數(shù)據(jù)分類提取出來,并作為L類BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的輸入數(shù)據(jù),其對(duì)應(yīng)的計(jì)算坐標(biāo)(xˇ,珓y)則作為目標(biāo)輸出數(shù)據(jù).
BP網(wǎng)絡(luò)輸入層的神經(jīng)元數(shù)由輸入向量的維數(shù)決定,輸出層神經(jīng)元數(shù)由輸出向量的維數(shù)決定.本文把歸一化后指紋數(shù)據(jù)珟Dx,y=(P珘1,P珘2,…,P珘i)作為輸入數(shù)據(jù),其對(duì)應(yīng)的坐標(biāo)位置作為目標(biāo)輸出數(shù)據(jù),因此本文構(gòu)建BP神經(jīng)網(wǎng)絡(luò)時(shí),其輸入層神經(jīng)元數(shù)為10個(gè),輸出層神經(jīng)元是為2個(gè).由于三層神經(jīng)網(wǎng)絡(luò)具有很好的泛化性以及非線性能力,網(wǎng)絡(luò)訓(xùn)練的效率也更快,并且在對(duì)BP神經(jīng)網(wǎng)絡(luò)調(diào)節(jié)仿真效果時(shí),發(fā)現(xiàn)只有一層隱含層的神經(jīng)網(wǎng)絡(luò)就有著良好的擬合效果,滿足本文實(shí)驗(yàn)的需求,因此本文使用隱含層層數(shù)為1的三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),然后逐步調(diào)節(jié)隱含層的神經(jīng)元個(gè)數(shù),觀察其神經(jīng)元個(gè)數(shù)從10逐漸增加時(shí)的擬合效果,經(jīng)過多次實(shí)驗(yàn)和觀察,得到在不同宏區(qū)域建立BP神經(jīng)網(wǎng)絡(luò)所對(duì)應(yīng)的最佳隱含層神經(jīng)元個(gè)數(shù).如表3所示,為3類宏區(qū)域BP神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元.
表3 3類宏區(qū)域BP神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元Table 3 3 kinds of macro region BPneural network hidden layer neurons
圖5 3類宏區(qū)域BP1神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果圖Fig.5 3 kinds of macro area BP1 neural network training effect diagram
圖6 3類宏區(qū)域BP2神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果圖Fig.6 3 kinds of macro area BP2 neural network training effect diagram
圖7 3類宏區(qū)域BP3神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果圖Fig.7 3 kinds of macro area BP3 neural network training effect diagram
BP神經(jīng)網(wǎng)絡(luò)定位算法主要部分如算法1中描述.
算法1.BP神經(jīng)網(wǎng)絡(luò)定位算法
通過以上過程建立的模型,用實(shí)例來驗(yàn)證算法的可行性.仿真過程如下:
4)將具有相同類標(biāo)簽GL的數(shù)據(jù)提取出來,作為L類BP神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù).
5)利用已經(jīng)建立好的K個(gè)宏區(qū)域BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行坐標(biāo)位置的預(yù)測,輸出結(jié)果為預(yù)測的坐標(biāo)位置
6)使用均方根(RMSE)誤差E來衡量本文算法的好壞.E計(jì)算如公式(6)所示.
表4 不同宏區(qū)域的預(yù)測坐標(biāo)位置Table 4 Location of predicted coordinates in different macro regions
即累計(jì)所有待定位標(biāo)簽的計(jì)算坐標(biāo)和預(yù)測坐標(biāo),計(jì)算誤差平均值.從119組數(shù)據(jù)中隨機(jī)取20組數(shù)據(jù),來進(jìn)行算法的分析,20組數(shù)據(jù)的網(wǎng)格坐標(biāo)及其計(jì)算坐標(biāo)以及實(shí)驗(yàn)仿真后的預(yù)測坐標(biāo)如表4所示,隨機(jī)取得的20組數(shù)據(jù)可見,3類宏區(qū)域目標(biāo)標(biāo)簽的預(yù)測值與目標(biāo)標(biāo)簽的真實(shí)值較為接近.則由119組數(shù)據(jù)和公式(6)得出當(dāng)劃分不同宏區(qū)域時(shí)的均方根誤差如表5所示.
表5 不同宏區(qū)域的均方根誤差Table 5 Root mean square error in different macro regions
由表5可知,當(dāng)將定位區(qū)域劃分為3類宏區(qū)域時(shí),其定位的準(zhǔn)確率要高于其他兩類,基本滿足本文室內(nèi)定位需求.
7)使用誤差累積分布函數(shù)劃出均方根誤差的分布情況,如圖8所示,劃分2類宏區(qū)域時(shí),均方根誤差在1m以內(nèi)的分布概率為60.5%,劃分3類宏區(qū)域時(shí),均方根誤差在1m以內(nèi)的分布概率為68.2%,劃分4類宏區(qū)域時(shí),均方根誤差在1m以內(nèi)的分布概率為59.6%.可見當(dāng)劃分為3類宏區(qū)域時(shí),其均方根誤差在1m以內(nèi)的概率分布要明顯高于其他兩類,即其定位的準(zhǔn)確率也明顯高于其他兩類.
圖8 均方根誤差累計(jì)分布圖Fig.8 Root mean square error cumulative distribution map
傳統(tǒng)的位置指紋定位算法僅采用BP神經(jīng)網(wǎng)絡(luò)作為匹配規(guī)則.本文將建立的指紋數(shù)據(jù)以及數(shù)據(jù)所對(duì)應(yīng)的位置作為輸入數(shù)據(jù),建立BP神經(jīng)網(wǎng)絡(luò),利用仿真階段收集到的119組數(shù)據(jù),進(jìn)行傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)算法的仿真,得出來的均方根誤差為1.094m,如表6所示,可以看出本文的定位算法優(yōu)于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)定位算法.
表6 不同宏區(qū)域的均方根誤差Table 6 Root mean square error in different macro regions
本文針對(duì)一種基于廉價(jià)nRF24l01芯片的RFID設(shè)備,將K-means算法,SVM算法和BP神經(jīng)網(wǎng)絡(luò)算法引入定位研究的計(jì)算當(dāng)中,通過實(shí)驗(yàn)仿真,對(duì)比劃分為2類,3類,4類宏區(qū)域所得出對(duì)應(yīng)的均方根誤差和誤差累積分布函數(shù),對(duì)定位區(qū)域劃分為3類宏區(qū)域時(shí),所得的均方根誤差為0.9265m,其誤差在1m以內(nèi)的累積分布概率為67.2%.明顯高于其它2類,達(dá)到了預(yù)期的實(shí)驗(yàn)?zāi)繕?biāo).隨后將本文算法和傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)定位算法進(jìn)行比較,得出傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)算法的均方根誤差為1.094m,通過比較可知,本文的算法明顯優(yōu)于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)定位算法,對(duì)促進(jìn)實(shí)用且低成本的無線定位系統(tǒng)具有較重要的理論意義和研究價(jià)值.