無線傳感器網(wǎng)絡(luò)中基于RSSI的節(jié)點(diǎn)距離預(yù)測
3 BP網(wǎng)絡(luò)模型的建立
以限幅濾波后的數(shù)據(jù)作為訓(xùn)練樣本。以RSSI作為輸入,以距離作為輸出,一般的預(yù)測問題通過單隱層的BP網(wǎng)絡(luò)實(shí)現(xiàn),這里也是單隱層。
(1)數(shù)據(jù)歸一化處理
為了在Matlab中計(jì)算方便,需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理。這里根據(jù)現(xiàn)有的數(shù)據(jù)情況,分別對(duì)輸入和輸出量進(jìn)行歸一化處理。歸一化的代碼如下:
[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t)
其中p為輸入變量,t為輸出變量。
(2)BP網(wǎng)絡(luò)訓(xùn)練
網(wǎng)絡(luò)中間層的神經(jīng)元傳遞函數(shù)采用S型的正切函數(shù)logsig,輸出層神經(jīng)元傳遞函數(shù)采用線性函數(shù)purelin,采用traingdx函數(shù)進(jìn)行訓(xùn)練,當(dāng)訓(xùn)練141次后達(dá)到0.01的誤差要求。
4 模型預(yù)測結(jié)果及與經(jīng)驗(yàn)公式值的比較
為了驗(yàn)證測試結(jié)果的可靠性,根據(jù)網(wǎng)絡(luò)訓(xùn)練的結(jié)果,把測試結(jié)果與真實(shí)值進(jìn)行對(duì)比。為了突出該方法的優(yōu)越性,與經(jīng)驗(yàn)公式計(jì)算出來的距離值進(jìn)行比較。表1為模型預(yù)測值、經(jīng)驗(yàn)公式值與真實(shí)值的比較。本文引用地址:http://2s4d.com/article/161414.htm
由表1可以得出,由BP神經(jīng)網(wǎng)絡(luò)模型預(yù)測的距離值與經(jīng)驗(yàn)公式計(jì)算出來的距離值相比,整體誤差較小。經(jīng)驗(yàn)公式計(jì)算的距離誤差最大為2.7351m,最小誤差為0.5338m,而由模型預(yù)測的距離誤差最大為0.7976m,最小誤差為0.0232m,測距的精度明顯提高了很多。
5 結(jié)論
BP神經(jīng)網(wǎng)絡(luò)具有很強(qiáng)的自學(xué)習(xí)、自組織及自適應(yīng)能力,具有高度非線性函數(shù)映射功能,通過對(duì)樣本的預(yù)處理,可以提高訓(xùn)練結(jié)果的精度。因此,樣本的好壞直接影響訓(xùn)練結(jié)果。節(jié)點(diǎn)RSSI值的隨機(jī)性較大,會(huì)隨著環(huán)境及其他干擾的影響發(fā)生突變。因此先對(duì)RSSI值進(jìn)行濾波處理,濾掉突變的數(shù)據(jù)再進(jìn)行網(wǎng)絡(luò)的訓(xùn)練,預(yù)測結(jié)果就能達(dá)到較理想的水平。這適用于不同的場合,提高了測距精度,從而進(jìn)行精確定位。
評(píng)論