基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法
【專利摘要】本發(fā)明提供基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,包括以下步驟:步驟一:無線傳感網(wǎng)絡(luò)初始化,得到每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的最小跳數(shù)、未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù),利用每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的已知距離和獲得的最小跳數(shù)算出每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的每跳跳距;步驟二:小波神經(jīng)網(wǎng)絡(luò)初始化,得到適用于整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距;步驟三:利用步驟一中得到的未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù)乘以步驟二中得到的整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距,得出未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離;步驟四:根據(jù)步驟三中得到的未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離,利用最小二乘法和三邊測(cè)量法來求得未知節(jié)點(diǎn)的坐標(biāo),從而完成定位。實(shí)時(shí)性好,定位誤差小,定位精度高,網(wǎng)絡(luò)適用性強(qiáng)。
【專利說明】基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及無線傳感器網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,具體涉及基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法。
【背景技術(shù)】
[0002]無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network, WSN)定位技術(shù)是無線傳感器網(wǎng)絡(luò)的主要支撐技術(shù)之一,定位的過程是利用少數(shù)位置已知的節(jié)點(diǎn),按照某種算法或者某種機(jī)制確定未知節(jié)點(diǎn)的位置。在這些算法中,一類是基于硬件測(cè)距的定位算法,這類算法需要RSSI, AOA、TOA或TDOA等技術(shù)測(cè)量節(jié)點(diǎn)間點(diǎn)到點(diǎn)的距離或者角度信息,然后再使用三邊測(cè)量、三角測(cè)量或最大似然估計(jì)法等方法來計(jì)算節(jié)點(diǎn)的位置;另一類是不需要額外硬件測(cè)距技術(shù)支持的定位算法,只需根據(jù)網(wǎng)絡(luò)的連通性等信息對(duì)節(jié)點(diǎn)進(jìn)行定位,常用的定位技術(shù)有Centroid、CONVEXPROGRAMMING, APIT和DV-Hop等?;跍y(cè)距的定位算法,雖然能夠獲得相對(duì)較高的定位準(zhǔn)確度,但硬件測(cè)距需要增加額外的、復(fù)雜的硬件,而且也增加了傳感器節(jié)點(diǎn)自身以及整個(gè)傳感器網(wǎng)絡(luò)的能量消耗,并不適合低成本、低功耗、軟硬件資源受限的無線傳感器網(wǎng)絡(luò),這就使得在能量、可擴(kuò)張性等方面與距離無關(guān)的定位算法受到工業(yè)界和學(xué)術(shù)界普遍的關(guān)注,這其中NIQJLESQJ等人提出的DV-Hop (Distance Vector Hop)算法是目前研究和應(yīng)用最為廣泛的無需額外硬件測(cè)距的定位算法,DV-Hop算法是利用距離矢量路由和GPS定位結(jié)合的原理提出來的一種無需硬件輔助測(cè)距的定位算法,算法的核心是利用節(jié)點(diǎn)間的估計(jì)距離代替實(shí)際測(cè)量距離,而估計(jì)距離是通過未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間跳數(shù)和每跳跳距的乘積來得到,之后通過節(jié)點(diǎn)間的估計(jì)距離與錨節(jié)點(diǎn)的坐標(biāo)計(jì)算未知節(jié)點(diǎn)的定位坐標(biāo)。DV-Hop定位算法的優(yōu)勢(shì)在于計(jì)算過程簡(jiǎn)單,硬件要求低,但同時(shí)也存在比較大的缺點(diǎn),通過分析研究,誤差產(chǎn)生的來源主要在于:傳統(tǒng)算法算得的平均每跳跳距不適用于實(shí)際整個(gè)無線傳感網(wǎng)絡(luò)。無線傳感器網(wǎng)絡(luò)中,節(jié)點(diǎn)隨機(jī)分布,各節(jié)點(diǎn)之間的距離長(zhǎng)短不一,節(jié)點(diǎn)密度分布也稀疏不同,而DV-Hop算法中將用平均法估算得到的每跳跳距值作為整個(gè)網(wǎng)絡(luò)的每跳跳距值,顯然這種估算出來的距離將會(huì)與真實(shí)距離存在較大的誤差,從而導(dǎo)致DV-Hop算法的定位誤差較大,定位精度低。
【發(fā)明內(nèi)容】
[0003]本發(fā)明所要解決的技術(shù)問題在于提供基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,實(shí)時(shí)性好,定位誤差小,定位精度高,網(wǎng)絡(luò)適用性強(qiáng)。
[0004]為解決上述現(xiàn)有的技術(shù)問題,本發(fā)明采用如下方案:基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法(簡(jiǎn)稱WNNDV-Hop算法),包括以下步驟:
[0005]步驟一:無線傳感器網(wǎng)絡(luò)初始化,得到每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的最小跳數(shù)、未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù),利用每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的已知距離和獲得的最小跳數(shù)算出每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的每跳跳距;
[0006]步驟二:小波神經(jīng)網(wǎng)絡(luò)初始化,對(duì)步驟一中的每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的每跳跳距進(jìn)行數(shù)據(jù)處理,得到適用于整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距;
[0007]步驟三:利用步驟一中得到的未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù)乘以步驟二中得到的整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距,得出未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離;
[0008]步驟四:根據(jù)步驟三中得到的未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離,利用最小
[0009]二乘法和三邊測(cè)量法來求得未知節(jié)點(diǎn)的坐標(biāo),從而完成定位。
[0010]作為優(yōu)選,所述步驟一中無線傳感網(wǎng)絡(luò)初始化的具體步驟為:首先錨節(jié)點(diǎn)向它的每個(gè)鄰居節(jié)點(diǎn)廣播自身位置信息的分組,并將其跳數(shù)初始化為0,接收節(jié)點(diǎn)記錄到每個(gè)錨節(jié)點(diǎn)的最小跳數(shù),同時(shí)忽略來自同一個(gè)錨節(jié)點(diǎn)的較大跳數(shù)的分組,然后將其跳數(shù)值加I并轉(zhuǎn)發(fā)給鄰居節(jié)點(diǎn),從而得出每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的最小跳數(shù)、未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳
數(shù);然后根據(jù)公式
【權(quán)利要求】
1.基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,其特征在于:包括以下步驟: 步驟一:無線傳感網(wǎng)絡(luò)初始化,得到每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的最小跳數(shù)、未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù),利用每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的已知距離和獲得的最小跳數(shù)算出每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的每跳跳距; 步驟二:小波神經(jīng)網(wǎng)絡(luò)初始化,對(duì)步驟一中的每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的每跳跳距進(jìn)行數(shù)據(jù)處理,得到適用于整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距; 步驟三:利用步驟一中得到的未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù)乘以步驟二中得到的整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距,得出未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離; 步驟四:根據(jù)步驟三中得到的未知節(jié)點(diǎn)到錨節(jié)點(diǎn)之間的距離,利用最小二乘法和三邊測(cè)量法來求得未知節(jié)點(diǎn)的坐標(biāo),從而完成定位。
2.根據(jù)權(quán)利要求1所述的基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,其特征在于:所述步驟一中無線傳感網(wǎng)絡(luò)初始化的具體步驟為:首先錨節(jié)點(diǎn)向它的每個(gè)鄰居節(jié)點(diǎn)廣播自身位置信息的分組,并將其跳數(shù)初始化為0,接收節(jié)點(diǎn)記錄到每個(gè)錨節(jié)點(diǎn)的最小跳數(shù),同時(shí)忽略來自同一個(gè)錨節(jié)點(diǎn)的較大跳數(shù)的分組,然后將其跳數(shù)值加I并轉(zhuǎn)發(fā)給鄰居節(jié)點(diǎn),從而得出每?jī)蓚€(gè)錨節(jié)點(diǎn)之間的最小跳數(shù)、未知節(jié)點(diǎn)與錨節(jié)點(diǎn)之間的最小跳數(shù);然后根據(jù)公式
3.根據(jù)權(quán)利要求1所述的基于小波神經(jīng)的DV-Hop無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位方法,其特征在于:所述步驟二中小波神經(jīng)網(wǎng)絡(luò)初始化的具體步驟為:將步驟一中得到的每?jī)蓚€(gè)錨節(jié)點(diǎn)間的每跳跳距作為小波神經(jīng)訓(xùn)練網(wǎng)絡(luò)的輸入數(shù)據(jù),并對(duì)輸入數(shù)據(jù)采取間隔分組和移窗式選取的方式進(jìn)行處理,再對(duì)輸入數(shù)據(jù)和目標(biāo)向量進(jìn)行歸一化處理;然后將小波函數(shù)Mallet作為隱含層的傳遞函數(shù)求得隱含層的輸出值,輸出層運(yùn)用的是在Sigmoid函數(shù)的基礎(chǔ)上添加一個(gè)伸縮因子c來求得輸出值;同時(shí)引入動(dòng)量因子aerfa對(duì)各權(quán)值系數(shù)、閾值系數(shù)進(jìn)行修正;最后用Err_NetOut判斷所有樣本是否計(jì)算完全;Err_NetOut表示輸出值與目標(biāo)值的平方和的誤差,用Err_NetOUt和count作為小波神經(jīng)網(wǎng)絡(luò)算法收斂的閾值,得到整個(gè)無線傳感器網(wǎng)絡(luò)的每跳跳距。
【文檔編號(hào)】H04W84/18GK103929810SQ201410193590
【公開日】2014年7月16日 申請(qǐng)日期:2014年5月9日 優(yōu)先權(quán)日:2014年5月9日
【發(fā)明者】蔣敏蘭, 胡娟 申請(qǐng)人:浙江師范大學(xué)