李 孟 魯慶賓
(南陽理工學(xué)院 南陽 473000)
隨著無線傳感器網(wǎng)絡(luò)與物聯(lián)網(wǎng)技術(shù)的發(fā)展,移動節(jié)點(diǎn)的引入一方面解決了靜態(tài)節(jié)點(diǎn)能源不足和靈活性差等缺點(diǎn),另一方面也帶來了技術(shù)上新的挑戰(zhàn)[1]。隨著對定位系統(tǒng)定位精度要求的不斷提高,固定的靜態(tài)傳感器節(jié)點(diǎn)已經(jīng)無法滿足新增應(yīng)用的需求。在此情況下,如何有效地在無線傳感器網(wǎng)絡(luò)中引入移動節(jié)點(diǎn)參與定位,成為定位技術(shù)領(lǐng)域的又一研究熱點(diǎn)[2~3]。文獻(xiàn)[4]針對DV-Hop算法加入移動節(jié)點(diǎn),使用最小二乘校正信標(biāo)節(jié)點(diǎn)的平均跳距,使定位精度更高。但需要更多的節(jié)點(diǎn)個數(shù)參與定位系統(tǒng),增加了系統(tǒng)成本。文獻(xiàn)[5]提出一種基于接收信號強(qiáng)度的指示測距的網(wǎng)絡(luò)中移動節(jié)點(diǎn)快速精確定位算法,通過采用牛頓差值理論預(yù)測移動節(jié)點(diǎn)運(yùn)動軌跡從而實(shí)現(xiàn)加權(quán)處理獲得節(jié)點(diǎn)的最優(yōu)位置。但該方法的計(jì)算量太大,實(shí)時性較低。文獻(xiàn)[6]采用粒子群優(yōu)化定位系統(tǒng)中的移動節(jié)點(diǎn),利用罰函數(shù)將網(wǎng)絡(luò)中未知節(jié)點(diǎn)定位問題轉(zhuǎn)化為無約束問題進(jìn)行求解,計(jì)算定位系統(tǒng)中移動節(jié)點(diǎn)位置誤差,獲得當(dāng)前的全局最優(yōu)值。但是在優(yōu)化過程中計(jì)算量的增加影響了節(jié)點(diǎn)的生存周期。
基于測向交叉算法的無線傳感器網(wǎng)絡(luò)定位系統(tǒng)的定位誤差主要來自兩個方面:第一是測量誤差,例如角度估計(jì)誤差、自身定位誤差等;第二是由于聲源與傳感器節(jié)點(diǎn)的空間部署相對關(guān)系對定位造成的影響。其中,節(jié)點(diǎn)的空間布局對系統(tǒng)性能的影響較大[7]。本文將研究如何通過對移動節(jié)點(diǎn)部署的優(yōu)化,降低測向交叉算法定位系統(tǒng)的定位誤差。
相比固定節(jié)點(diǎn)的測向交叉定位系統(tǒng),在移動節(jié)點(diǎn)組成的無線傳感器網(wǎng)絡(luò)定位系統(tǒng)中,各個節(jié)點(diǎn)具備移動能力,使得調(diào)整定位系統(tǒng)的節(jié)點(diǎn)部署成為可能。采用均方根誤差(RMSE)對算法性能進(jìn)行衡量[7],RMSE能夠通過下式進(jìn)行表示:
其中目標(biāo)的真實(shí)位置為(x ,y),估計(jì)位置為(X ,Y)。可知系統(tǒng)在待測區(qū)域某一點(diǎn)處的定位均方根誤差(RMSE)與以該點(diǎn)為中心一定范圍區(qū)域的誤差近似接近,考慮到初始探測到的目標(biāo)位置雖然與真實(shí)位置存在一定誤差,但在較大概率上其定位均方根誤差(RMSE)理論上是接近的。于是本文提出以系統(tǒng)初始探測到的聲源位置為參考點(diǎn),通過節(jié)點(diǎn)布局的優(yōu)化,提升對該參考點(diǎn)及其周圍區(qū)域的定位性能,間接實(shí)現(xiàn)對真實(shí)聲源目標(biāo)定位性能的提升。
假設(shè)平面內(nèi)有一個靜止的連續(xù)發(fā)聲的聲源,由N個傳感器節(jié)點(diǎn)組成的無線傳感器網(wǎng)絡(luò)定位系統(tǒng)的各個節(jié)點(diǎn)在當(dāng)前時刻位于二維平面內(nèi)的處,上標(biāo)k表示系統(tǒng)處于第k個布局狀態(tài)下。系統(tǒng)采用測向交叉算法得到聲源目標(biāo)的初始定位結(jié)果為P0(x0,y0)。
通過仿真統(tǒng)計(jì)獲得的系統(tǒng)在當(dāng)前節(jié)點(diǎn)部署方案下對平面內(nèi)任意點(diǎn)(x,y)的定位均方根誤差(RMSE)為Δ(k)(x,y),則在當(dāng)前節(jié)點(diǎn)布局下,系統(tǒng)在P0(x0,y0)處的定位均方根誤差(RMSE)為Δ(k)(x0,y0)。定義λ為已知系統(tǒng)期望的定位均方根誤差(RMSE)門限,假設(shè)聲源為靜止目標(biāo),若
成立,則系統(tǒng)當(dāng)前定位誤差滿足期望,各個節(jié)點(diǎn)保持當(dāng)前位置不變,若式(2)不成立,則系統(tǒng)當(dāng)前定位誤差過大,為了提升系統(tǒng)在聲源目標(biāo)初始探測點(diǎn)P0(x0,y0)處的定位性能,系統(tǒng)動態(tài)調(diào)整各個節(jié)點(diǎn)的位置。
其中,si為各個節(jié)點(diǎn)的移動距離,假設(shè)系統(tǒng)中各個節(jié)點(diǎn)在調(diào)整時的速度勻速相等且均沿直線直接達(dá)到調(diào)整后的位置,則si可表示為
其中,i=1,2,…N,表示各個節(jié)點(diǎn)的序號。
針對上述模型,本文提出了一種移動節(jié)點(diǎn)優(yōu)化部署的方法,具體原理和步驟如下。
1)計(jì)算初始目標(biāo)位置P0(x0,y0)處的誤差
系統(tǒng)在當(dāng)前節(jié)點(diǎn)部署狀態(tài)下對監(jiān)測區(qū)域平面內(nèi)任意點(diǎn) (x,y)的定位誤差(RMSE),記為Δ(k)(x,y),則系統(tǒng)在初始探測到的聲源目標(biāo)位置P0(x0,y0)處的定位均方根誤差(RMSE)為Δ(k)(x0,y0)。
2)判斷Δ(k)(x0,y0)與期望定位誤差門限λ的大小關(guān)系
若式(2)成立,則系統(tǒng)當(dāng)前定位誤差滿足要求,節(jié)點(diǎn)保持現(xiàn)有狀態(tài)不做調(diào)整,直接輸出定位結(jié)果。若式(2)不成立,則系統(tǒng)當(dāng)前定位誤差不滿足系統(tǒng)要求,執(zhí)行步驟3)進(jìn)行優(yōu)化。
3)優(yōu)化布局點(diǎn)坐標(biāo)計(jì)算
以式(3)為優(yōu)化目標(biāo)函數(shù),采用自適應(yīng)遺傳算法,計(jì)算N個節(jié)點(diǎn)調(diào)整后的坐標(biāo)S(p(k+1),q(k+1)),111,使得在點(diǎn)P(x,y)000處的 Δ(k+1)(x0,y0)≤λ。
遺傳算法的主要遺傳算子如下。
1)種群初始化
設(shè)種群規(guī)模為M ,節(jié)點(diǎn)坐標(biāo)向量ε=[p1,q1,p2,q2,…,pN,qN]作為染色體向量。采用浮點(diǎn)數(shù)編碼方式,產(chǎn)生位于測試區(qū)域內(nèi)的M組隨機(jī)向量作為初始種群。
2)計(jì)算并評估適應(yīng)度值
由于式(3)是求最小值,將1)中所產(chǎn)生的M 組染色體向量分別帶入式(3),取其倒數(shù)作為適應(yīng)度值參與評估。
3)遺傳操作
(1)選擇:為了保證適應(yīng)度值較高的染色體向量被選中,本文采用基于上限的確定式采樣選擇策略[39]。
(2)交叉:為了產(chǎn)生更加優(yōu)秀的個體,需要對被選中的染色體中兩個染色體進(jìn)行交叉操作。為防止早熟現(xiàn)象提高收斂速度,采用自適應(yīng)交叉算子產(chǎn)生后代染色體[40]。
(3)變異:為了增加種群多樣性,變異概率根據(jù)待變異個體的適應(yīng)度值進(jìn)行重構(gòu)。
(4)精英保留策略:為了將最好的個體傳播到下一代,創(chuàng)建一個精英文件保留每一代中的精英個體,并不斷與新的個體進(jìn)行比較,更新。
4)具體計(jì)算流程
(1)確定個體的組成和長度。
(2)初始化進(jìn)化代數(shù)t=0,設(shè)定需要執(zhí)行的最大進(jìn)化代數(shù)T,隨機(jī)生成M個個體,生成初始種群M(0),每個個體即為問題的潛在解。
(3)對個體評價,得到種群M(t)中個體的適應(yīng)度值U(m),并對其評價優(yōu)劣。
(4)執(zhí)行遺傳操作,產(chǎn)后后代C(t),并繼續(xù)對后代評價優(yōu)劣,從父代與子代中選擇優(yōu)秀個體組成新種群M(t+1)。
(5)終止條件,算法收斂,求出解。若t≤T,則t=t+1,返回繼續(xù)步驟(3)和(4)。若超過設(shè)置的最大進(jìn)化代數(shù)即t>T,則認(rèn)為運(yùn)算中適應(yīng)度值最大的個體為最優(yōu)解。
1)仿真條件和參數(shù)設(shè)置
(1)傳感器節(jié)點(diǎn):數(shù)目N為3,測角誤差的標(biāo)準(zhǔn)差 σ=1.0°
(2)測試區(qū)域:邊長L=200m的正方形,如圖1所示。
(3)自適應(yīng)遺傳算法:種群規(guī)模200,最大迭代次數(shù)為1000次,初始交叉概率 pc1=0.9,pc2=0.6,變異概率 pm1=0.1,pm2=0.01。
(4)系統(tǒng)期望的均方根定位誤差(RMSE)的門限 λ=1m。
(5)機(jī)器人節(jié)點(diǎn)在狀態(tài)k時依次位于(0,0)、(10,0)、(0,10)位置,初始探測到的聲源目標(biāo)位于(-40,40),真實(shí)位置位于(-35,35),單位為m。
2)仿真結(jié)果
如圖1為系統(tǒng)節(jié)點(diǎn)在探測到聲源目標(biāo)初始化位置和機(jī)器人節(jié)點(diǎn)的優(yōu)化前狀態(tài)k時的位置,圖2反映了系統(tǒng)在圖3布局下的定位均方根誤差(RMSE)的分布情況,可以看到初始聲源位置(-40,40)處的定位均方根誤差(RMSE)約為6.98m,遠(yuǎn)大于系統(tǒng)期望誤差門限λ。
圖3 所示為計(jì)算得到的優(yōu)化后節(jié)點(diǎn)布局示意圖,其中機(jī)器人1的優(yōu)化后坐標(biāo)為(-20.3,5.1),機(jī)器人2的優(yōu)化后坐標(biāo)為(0.5,0.3),機(jī)器人3的優(yōu)化后坐標(biāo)為(-10.2,30.6)。圖4為優(yōu)化節(jié)點(diǎn)布局后的系統(tǒng)定位均方根誤差(RMSE)的分布情況,可以看到在初始聲源位置(-40,40)處的定位誤差約為0.92m,小于門限λ,滿足系統(tǒng)優(yōu)化的要求。此時,系統(tǒng)各個機(jī)器人節(jié)點(diǎn)的優(yōu)化移動距離分別為s1約為20.9m,s2約為9.5m,s3約為23.0m。則機(jī)器人編隊(duì)的優(yōu)化移動最小距離Lmin約為23.0m。此時認(rèn)為系統(tǒng)布局優(yōu)化后的定位結(jié)果是滿足要求的,重新進(jìn)行聲源目標(biāo)定位得到定位結(jié)果為(-35.8,36.1),趨近于真實(shí)值,說明通過優(yōu)化布局后,系統(tǒng)對聲源目標(biāo)的定位精度得到了提升。
本文首先介紹了一種基于移動節(jié)點(diǎn)的優(yōu)化部署方法。在定位系統(tǒng)的定位誤差過大的情況下,以提升系統(tǒng)的聲源目標(biāo)初始探測點(diǎn)處的定位性能,將待測目標(biāo)的定位均方根誤差為優(yōu)化目標(biāo),對移動節(jié)點(diǎn)的位置進(jìn)行調(diào)整,從而達(dá)到將降低系統(tǒng)誤差的目的。通過優(yōu)化移動節(jié)點(diǎn)的部署方法,實(shí)現(xiàn)系統(tǒng)定位性能的提升,仿真結(jié)果表明該方法一定程度上提升了系統(tǒng)的定位精度。