《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 一種基于BP-GA的室內(nèi)定位模型
一種基于BP-GA的室內(nèi)定位模型
來源:微型機與應(yīng)用2013年第22期
王立輝1,,王佳斌2
(1.華僑大學 信息科學與工程學院,,福建 廈門361021; 2.華僑大學 工學院,,福建 泉州362
摘要: 使用BP-GA算法相結(jié)合的方法來作為室內(nèi)定位模型的主要定位算法,在得到初始坐標后利用泰勒級數(shù)定位算法優(yōu)化得到最終待測點坐標,。該算法很好地減弱了室內(nèi)環(huán)境對定位精度的影響,,并且具有較高的精度。仿真實驗驗證了該模型的有效性,。
Abstract:
Key words :

摘  要: 使用BP-GA算法相結(jié)合的方法來作為室內(nèi)定位模型的主要定位算法,,在得到初始坐標后利用泰勒級數(shù)定位算法優(yōu)化得到最終待測點坐標。該算法很好地減弱了室內(nèi)環(huán)境對定位精度的影響,,并且具有較高的精度,。仿真實驗驗證了該模型的有效性。
關(guān)鍵詞: 室內(nèi)定位,;BP算法,;GA算法;泰勒級數(shù)定位算法

    室內(nèi)定位技術(shù)按所借助的手段不同可以分為[1-2]基于無線電信號的定位技術(shù),、基于紅外線的定位技術(shù),、基于超聲波的定位技術(shù)、基于藍牙的定位技術(shù),、基于激光的定位技術(shù),、基于射頻識別技術(shù)的定位技術(shù)以及基于WiFi的定位技術(shù)等,。由于室內(nèi)環(huán)境存在非視距、多徑,、干擾多變等因素, 同時考慮到設(shè)備費用和實現(xiàn)的復雜程度等,本文選擇了利用ZigBee技術(shù)基于RSSI值的定位算法,。
    當前,廣泛使用的ZigBee技術(shù)無線定位系統(tǒng)主要通過測量節(jié)點間的距離來實現(xiàn)[3],?;赗SSI的測距是無線傳感網(wǎng)絡(luò)定位技術(shù)中較常采用的方法,該類方法大多數(shù)通過設(shè)置已知參考節(jié)點,。首先利用待定位節(jié)點接收到的RSSI值計算出該節(jié)點到各個參考節(jié)點的距離,,再通過各類定位算法推導出目標點的坐標。傳統(tǒng)的基于RSSI的室內(nèi)定位技術(shù)基本上都是以無線信號傳播模型為基礎(chǔ)的,,在不同的定位環(huán)境中,,通過擬合或直接根據(jù)經(jīng)驗得出無線信號傳播模型中未知參數(shù)A和n,再根據(jù)一些位置距離算法來最終實現(xiàn)定位,。但這些算法過于依賴一些經(jīng)驗?zāi)P?,對于不同的環(huán)境的適應(yīng)性不強,在一些室內(nèi)情況復雜的條件下會有很大的誤差,。本文在基于ZigBee組成的網(wǎng)絡(luò)的基礎(chǔ)上,,使用BP神經(jīng)網(wǎng)絡(luò)和GA算法融合來初步算出待定位物體的位置,再融入泰勒級數(shù)定位算法來算出最終待定位物體的位置,。
  

    由此可以看出,,A和n為值直接影響到了根據(jù)RSSI值得到的距離,進一步影響到定位的精度,。無論是理想環(huán)境還是室內(nèi)環(huán)境下,,傳輸信號與傳輸距離之間有一定的關(guān)系,在實際環(huán)境下RSSI值的變化有一定的規(guī)律可循,,RSSI值與距離d之間是一個連續(xù)的非線性關(guān)系,,而Kolmogorov定理也已經(jīng)證明[5-6],,任意一連續(xù)函數(shù)可由一個3層BP網(wǎng)絡(luò)來實現(xiàn),,所以可由一個3層的BP網(wǎng)絡(luò)來代替RSSI經(jīng)驗公式來得到RSSI值與d之間的關(guān)系,并且可以直接由BP網(wǎng)絡(luò)直接得到待測節(jié)點的坐標值,。
2 BP神經(jīng)網(wǎng)絡(luò)模型的確定
    根據(jù)RSSI與坐標值之間的一一對應(yīng)關(guān)系,,本系統(tǒng)設(shè)計由4個參考節(jié)點確定一個盲節(jié)點位置,所以BP神經(jīng)網(wǎng)絡(luò)的輸入有4個(即4個參考節(jié)點到盲節(jié)點的RSSI值),,輸出有2個(x,,y)(即盲節(jié)點的坐標值),對于隱含層層數(shù)和神經(jīng)元數(shù)的選擇是一個難點,,目前還沒有理論上的指導,,只有經(jīng)過大量的實驗來選擇最佳的隱含層層數(shù),。
    本文采用4:35:2結(jié)構(gòu)的BP神經(jīng)網(wǎng)絡(luò),如圖1所示,。使用相似的方法可以確定出計算RSSI值與d之間關(guān)系的BP網(wǎng)絡(luò)結(jié)構(gòu)圖,與圖1結(jié)構(gòu)相似,,采用1:20:1的結(jié)構(gòu)。傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)[6-7]算法確定權(quán)重時所采用的學習算法是基于梯度下降的,,不可避免地存在著訓練時間長,、收斂速度慢、易陷于局部極小值以及完全不能訓練等問題,。所以本文結(jié)合使用遺傳算法來優(yōu)化BP神經(jīng)網(wǎng)絡(luò),,改善BP神經(jīng)網(wǎng)絡(luò)的缺陷,使算法避免陷入局部極小值,、收斂速度慢等問題,。

3 BP-GA算法
    在GA每一代進行遺傳操作之前,對群體中的最優(yōu)個體進行次數(shù)較多的BP訓練[8-10],,使最優(yōu)個體得到足夠的訓練后目標誤差能很快地下降,,作為混合學習算法指導誤差下降的主導搜索方向,然后將經(jīng)BP訓練后的最優(yōu)個體與群體中的其他個體逐一進行啟發(fā)式的交叉式算法,,能在最優(yōu)個體與群體的其他個體所形成的尋優(yōu)空間中并行尋優(yōu),,再從交叉子代和經(jīng)BP訓練后的原最優(yōu)個體中選出當代最優(yōu)個體進行下一次的BP訓練。
4 泰勒級數(shù)定位算法
    泰勒級數(shù)定位方法[11-12]是一種基于泰勒級數(shù)展開的加權(quán)最小二乘估計迭代算法,。它適用于所有的定位系統(tǒng),,并利用所有的測量參量來改善定位精度。該方法的核心思想為:(1)在目標位置的初始估計點利用泰勒級數(shù)展開,,并忽略二次及以上項,,將非線性方程變?yōu)榫€性方程,并采用最小二乘算法對偏移量進行估計,;(2)利用估計的偏移量修正估計的目標位置,,并不斷迭代,使估計的目標位置逼近真實位置,,從而得到對目標位置的最優(yōu)估計,。
5 ZigBee定位系統(tǒng)模型
    本系統(tǒng)設(shè)計的這套二維室內(nèi)無線定位系統(tǒng)主要由主機、網(wǎng)關(guān),、定位節(jié)點,、參考節(jié)點4個部分組成。主機是一臺筆記本電腦,,負責處理網(wǎng)關(guān)發(fā)送的信息,,計算出盲節(jié)點坐標和顯示盲節(jié)點位置等。網(wǎng)關(guān)由CC3430組成,,負責網(wǎng)絡(luò)的組建,、節(jié)點地址的分配和負責主機與參考節(jié)點,、盲節(jié)點之間的通信等,參考節(jié)點由CC2430組成,,是位置已知且固定不動的節(jié)點,。盲節(jié)點由CC2431組成,是位置未知的移動節(jié)點,。
5.1 系統(tǒng)模型定位流程圖
    系統(tǒng)總體流程圖如圖2所示,。首先建立ZigBee網(wǎng)絡(luò),然后待測節(jié)點收到各個參考節(jié)點的RSSI值,,將RSSI值發(fā)送到網(wǎng)關(guān),,由網(wǎng)關(guān)送入主機中的BP-GA算法計算得到待測節(jié)點的初始坐標,將此坐標值確定為送入泰勒級數(shù)定位算法的初始值,,進行循環(huán)泰勒級數(shù)展開,,泰勒級數(shù)定位算法的計算達到要求的精度值后,輸出最終待測節(jié)點坐標,,發(fā)送到監(jiān)控軟件界面顯示,。

5.2 實驗仿真結(jié)果分析
    由ZigBee網(wǎng)絡(luò)中盲節(jié)點收集到的各個參考節(jié)點到其RSSI值送入到算法網(wǎng)絡(luò)中作為輸入,該RSSI值所在節(jié)點的實際坐標為輸出標準進行訓練,將得到的初始坐標值送入泰勒級數(shù)定位算法中進行二次優(yōu)化得到最終的盲節(jié)點坐標,。
    首先,,選用4個參考節(jié)點a、b,、c,、d,其坐標(0,,0),、(0,13),、(7,,13)、(7,,0)組成一個實驗環(huán)境,,其中每格為30 cm。在其中隨機選取20個點作為測試點,,將這些值分別送入BP算法,、BP-GA算法和本文算法,得到盲節(jié)點的坐標如圖3所示,。
    由圖3、圖4,、圖5可以看出在本文算法用于定位優(yōu)于單獨使用BP算法或是使用BP-GA算法進行定位,。使用本文算法所得到的盲節(jié)點坐標值與盲節(jié)點的實際坐標值非常接近,,較好地克服了定位時環(huán)境中的各種干擾因素的影響。

 

 

    本文通過在ZigBee組成網(wǎng)絡(luò)基礎(chǔ)上,,通過使用BP-GA算法和泰勒級數(shù)定位算法相結(jié)合的定位方法,,并且通過引入BP網(wǎng)絡(luò)來代替RSSI經(jīng)驗公式來得到RSSI值與d之間的關(guān)系,避免了對環(huán)境中復雜參數(shù)A和n的擬合,,很好地減弱了環(huán)境因素對定位精度的影響,,且通過上面的仿真可以發(fā)現(xiàn),只要在一個室內(nèi)環(huán)境中采集足夠多的RSSI值,,利用該算法就能夠達到很好的定位精度,,誤差能夠控制在30 cm內(nèi)。
參考文獻
[1] Yu Kengen,,SHARP L,,GUO Y J.Ground-based wireless positioning[M].Wiley-IEEE Press,2009.
[2] 萬群,,郭賢生,,陳章鑫.室內(nèi)定位理論、方法和應(yīng)用[M].北京:電子工業(yè)出版社,,2012.
[3] 呂源,,李軍.基于CC2431的室內(nèi)定位系統(tǒng)[J].現(xiàn)代電子技術(shù),2009(2):95-101.
[4] 朱明輝,,張會清.基于RSSI的室內(nèi)測距模型的研究[J].傳感器與為系統(tǒng),,2010,29(8):19-22.
[5] KHOSHGOFTAAR T M,,PANDYA A S,,LANNING D L. Applicationof neural networks for predicting defects[J].An nals of Software Engineering,1995,,1(1):141-154.
[6] HAYKIN S.Neural Networks[M].Prentice Hall,,1998.
[7] 陸瓊瑜,童學鋒.BP算法改進研究[J].計算機工程與設(shè)計,,2007,,28(3):648-649.
[8] 陳永龍,何國良,,徐宗昌.基于BP-GA的融合算法實現(xiàn)[J].裝備指揮技術(shù)學報,,2007,18(4):107-110.
[9] Lu Chun,,Shi Bingxue,,Chen Lu.Hybrid BP-GA for multilayer feedforward neural network[J].ICECS 2000,2002(2):958-961.
[10] Li Jianping,BALAZS M E,,PARKS G T,,et al.A speciesconserving genetic algorithm for multimodal function optimization[J].Evol Comput.,2002,,10(3):207-234.
[11] 張會清,,石曉偉,鄧貴華,,等.基于BP神經(jīng)網(wǎng)絡(luò)和泰勒級數(shù)的室內(nèi)定位算法研究[J].電子學報,,2012,40(9):1876-1879.
[12] 田孝華,,周義建.無線電定位理論與技術(shù)[M].北京:國防工業(yè)出版社,,2011.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。