《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 粒子群離散算法在無(wú)線傳感網(wǎng)絡(luò)中的應(yīng)用
粒子群離散算法在無(wú)線傳感網(wǎng)絡(luò)中的應(yīng)用
2014年微型機(jī)與應(yīng)用第12期
李 鋒
廣東交通職業(yè)技術(shù)學(xué)院,廣東 廣州
摘要: 無(wú)線傳感器網(wǎng)絡(luò)通過(guò)少數(shù)確定錨節(jié)點(diǎn)計(jì)算到其他節(jié)點(diǎn)距離,確定節(jié)點(diǎn)坐標(biāo)。其中DV-Hop定位算法通過(guò)最小二乘法求解坐標(biāo),累計(jì)誤差隨節(jié)點(diǎn)平均距離誤差呈指數(shù)增長(zhǎng),定位精度較低。提出了用粒子群PSO離散算法替代DV-Hop中的最小二乘法, 既發(fā)揮PSO全局搜索能力,又避免標(biāo)準(zhǔn)PSO算法過(guò)早收斂的問(wèn)題。實(shí)驗(yàn)結(jié)果表明,新算法定位精度很高,受距離誤差影響不大,能很好地應(yīng)用于無(wú)線傳感器網(wǎng)絡(luò)的定位過(guò)程。
Abstract:
Key words :

  摘  要無(wú)線傳感器網(wǎng)絡(luò)通過(guò)少數(shù)確定錨節(jié)點(diǎn)計(jì)算到其他節(jié)點(diǎn)距離,確定節(jié)點(diǎn)坐標(biāo)。其中DV-Hop定位算法通過(guò)最小二乘法求解坐標(biāo),累計(jì)誤差隨節(jié)點(diǎn)平均距離誤差呈指數(shù)增長(zhǎng),定位精度較低。提出了用粒子群PSO離散算法替代DV-Hop中的最小二乘法, 既發(fā)揮PSO全局搜索能力,又避免標(biāo)準(zhǔn)PSO算法過(guò)早收斂的問(wèn)題。實(shí)驗(yàn)結(jié)果表明,新算法定位精度很高,受距離誤差影響不大,能很好地應(yīng)用于無(wú)線傳感器網(wǎng)絡(luò)的定位過(guò)程。

  關(guān)鍵詞: 無(wú)線傳感器網(wǎng)絡(luò);粒子群;DV-Hop定位算法;離散算法

  無(wú)線傳感器網(wǎng)絡(luò)WSN(Wireless Sensor Networks)由大量傳感節(jié)點(diǎn)以多跳自組織方式構(gòu)成,通過(guò)數(shù)據(jù)采集、協(xié)調(diào)感知完成信息搜集和管理任務(wù)。無(wú)線傳感器網(wǎng)絡(luò)一般應(yīng)用于惡劣環(huán)境或是人無(wú)法抵達(dá)區(qū)域,受鋪設(shè)成本和能源供給限制,只有少數(shù)匯聚節(jié)點(diǎn)配備GPS定位裝置,通過(guò)與網(wǎng)絡(luò)其他傳感器節(jié)點(diǎn)接力通信完成對(duì)其定位過(guò)程。典型的WSN由傳感器節(jié)點(diǎn)、匯聚節(jié)點(diǎn)和管理節(jié)點(diǎn)組成,如圖1所示。傳感器節(jié)點(diǎn)感知目標(biāo)信息后以多跳接力方式傳給匯聚節(jié)點(diǎn),匯聚節(jié)點(diǎn)對(duì)附近傳感器節(jié)點(diǎn)信息匯總后通過(guò)衛(wèi)星基站、互聯(lián)網(wǎng)傳送給管理用戶[1]。由于傳感器節(jié)點(diǎn)一般可移動(dòng)部署以適應(yīng)環(huán)境變化,如何精確定位傳感器節(jié)點(diǎn)坐標(biāo)成為WSN研究的熱點(diǎn)和難點(diǎn)。

001.jpg

  1 WSN定位算法分類

  無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法分為基于測(cè)距和無(wú)需測(cè)距算法兩類[2]。對(duì)于大部分傳感節(jié)點(diǎn)而言,當(dāng)定位誤差小于節(jié)點(diǎn)通信半徑的40%時(shí),定位誤差對(duì)節(jié)點(diǎn)精確度的影響不大[2]。若使用測(cè)距定位不僅要配備額外硬件設(shè)備,增加節(jié)點(diǎn)成本,還會(huì)加重電源補(bǔ)給負(fù)荷。無(wú)需測(cè)距算法通過(guò)節(jié)點(diǎn)之間通信估算彼此之間距離、定位節(jié)點(diǎn)坐標(biāo),簡(jiǎn)單方便,得到廣泛應(yīng)用。其中最為經(jīng)典的是DV-Hop算法。

  2 DV-Hop算法

  DV-Hop稱為距離向量跳段定位算法,用網(wǎng)絡(luò)平均跳距和節(jié)點(diǎn)間最短跳數(shù)乘積表示節(jié)點(diǎn)之間距離,再利用大量冗余信息節(jié)點(diǎn)實(shí)現(xiàn)定位。整個(gè)過(guò)程分為3個(gè)階段:

  (1)計(jì)算抵達(dá)鄰居節(jié)點(diǎn)跳數(shù)。傳感節(jié)點(diǎn)定期向鄰居節(jié)點(diǎn)交換抵達(dá)網(wǎng)絡(luò)中其他節(jié)點(diǎn)距離,以跳數(shù)為單位。最終每個(gè)傳感節(jié)點(diǎn){xi,yi}都獲得自身參考節(jié)點(diǎn)跳數(shù)hi及參考坐標(biāo){xi,yi,hi}。

  (2)每個(gè)傳感節(jié)點(diǎn)使用式(1)計(jì)算到達(dá)其他參考節(jié)點(diǎn)的距離。

  1.png

  (3)傳感節(jié)點(diǎn)得到與其他參考節(jié)點(diǎn)距離后,通過(guò)三角或多邊測(cè)量建立方程組,最后利用最小二乘法求解方程組獲得節(jié)點(diǎn)坐標(biāo)。

  DV-Hop實(shí)現(xiàn)簡(jiǎn)單、方便快捷,但算法中的距離通過(guò)節(jié)點(diǎn)跳數(shù)乘以網(wǎng)絡(luò)平均跳距得出[3],不可避免地存在誤差,加上最小二乘法求解精度依賴于網(wǎng)絡(luò)跳距初始參數(shù),導(dǎo)致產(chǎn)生的誤差呈指數(shù)增長(zhǎng)、定位精度不高,并且節(jié)點(diǎn)密度越低,拓?fù)湓讲灰?guī)則,誤差越大。

  3 基于粒子群定位算法思想

  傳感節(jié)點(diǎn)記為P1(x1,y1),P2(x2,y2),…,Pn(xn,yn),根據(jù)DV-Hop前兩階段估算的抵達(dá)網(wǎng)絡(luò)其他節(jié)點(diǎn)距離分別是d1,d2…,dn,估算距離與真實(shí)距離之間差值分別為ε1,ε2,…,εn,得以下方程組:

  2.png

  傳感節(jié)點(diǎn)坐標(biāo)應(yīng)同時(shí)滿足式(2)方程組要求,若|ε1|+|ε2|+…+|εn|和越小,則節(jié)點(diǎn)坐標(biāo)越優(yōu)、定位越精確,從而可利用最小二乘法求解過(guò)程轉(zhuǎn)換為使用粒子群算法求解全局最小最優(yōu)解的問(wèn)題,如式(3)所示。

  3.png

  本文提出將粒子群(PSO)離散算法替代DV-Hop中的最小二乘法,用于求解節(jié)點(diǎn)最優(yōu)坐標(biāo),既可以發(fā)揮PSO全局搜索能力,又可以避免標(biāo)準(zhǔn)PSO算法中過(guò)早收斂問(wèn)題,由此減小網(wǎng)絡(luò)跳距誤差對(duì)定位精度的影響范圍。

  4 標(biāo)準(zhǔn)粒子群算法

  粒子群算法是基于鳥(niǎo)類群體行為研究的模擬算法。鳥(niǎo)群在封閉空間隨機(jī)搜索食物,并且在這個(gè)空間只有一個(gè)全局最優(yōu)值[4]。假如所有鳥(niǎo)只都知道當(dāng)前位置與搜索食物之間的距離,那么找到全局最優(yōu)解的最優(yōu)方案就是從身邊最近的鳥(niǎo)周圍區(qū)域進(jìn)行搜尋[5]。在粒子群算法中,尋找最優(yōu)問(wèn)題的每個(gè)解對(duì)應(yīng)搜索空間的每只鳥(niǎo),稱為粒子。每個(gè)粒子的初始化向量代表鳥(niǎo)的飛行位置和速率,每個(gè)粒子通過(guò)尋找附近粒子迭代搜尋最優(yōu)解,具體算法如下:

  假設(shè)在一個(gè)d維搜索空間中,有n個(gè)粒子組成的粒子群X=(X1,X2,…,Xn)T,其中第i個(gè)粒子位置為Xi=(Xi1,Xi2,…,XiD)T,速率為Vi=(Vi1,Vi2,…,Vid)T,極值為Pi=(Pi1,Pi2,…,Pid)T,種群全局極值為Pg=(Pg1,Pg2,…,Pgd)T,每個(gè)粒子找到下一粒子后按以下公式更新當(dāng)前位置和速率[6]:

  

456.png

  其中,k表示迭代次數(shù),c1、c2為加速系數(shù),rand是[0,1]區(qū)間選取的隨機(jī)數(shù),p是第i個(gè)粒子的個(gè)體極值在第d維的分量,p是群體全局極值在第d維的分量,x、v分別是第i個(gè)粒子經(jīng)k次迭代后的第d維位置和速率,w是粒子保持運(yùn)動(dòng)慣性權(quán)重。粒子通過(guò)不斷更新當(dāng)前位置和速率最終找到全局最優(yōu)解,完成搜索過(guò)程。

  5 新算法定位模型

  5.1 離散粒子群算法

  粒子群算法前期收斂速率快,但容易出現(xiàn)前期局部最優(yōu)、后期收斂緩慢的問(wèn)題。改進(jìn)離散粒子群算法在于更新粒子當(dāng)前位置和速率前引入離散運(yùn)動(dòng)方程式:

  7.jpg

  d維分量。粒子的位置只有“0”、“1”兩種狀態(tài),速率越小,粒子取“0”幾率越大,反之取“1”。改進(jìn)離散粒子群算法使得函數(shù)sig(V)不會(huì)過(guò)于接近“0”或“1”,保證算法以一定概率從一種狀態(tài)躍遷到另一種狀態(tài),從而避免算法過(guò)早收斂,出現(xiàn)局部最優(yōu)現(xiàn)象。

  5.2 新算法適應(yīng)度值選擇

  新算法通過(guò)估計(jì)的距離與真實(shí)距離之間的差值ε1+ε2+…+εn之和判斷粒子所處位置優(yōu)劣,以此確定是否符合全局最優(yōu)解要求。差值之和越小,適應(yīng)度值越大。求解適應(yīng)度公式為:

  8.png

  其中,n為傳感節(jié)點(diǎn)數(shù)量;hi為傳感節(jié)點(diǎn)抵達(dá)網(wǎng)絡(luò)其他節(jié)點(diǎn)跳數(shù),由DV-Hop算法第一階段獲得。由于傳感節(jié)點(diǎn)跳數(shù)越多,誤差累積越大,因此在計(jì)算適應(yīng)度時(shí)加入權(quán)重,hi越大的傳感節(jié)點(diǎn)對(duì)適應(yīng)值影響越小。

  5.3 新算法粒子聚集度

  在標(biāo)準(zhǔn)PSO算法中,兩個(gè)粒子之間的距離表示其相似程度大小,距離越近相似度越高。新算法用s(i,j)表示粒子i和粒子j之間的相似度,滿足以下條件:

  9.png

  其中,d(i,j)為粒子i和粒子j之間的距離,dmin、dmax表示所有粒子之間距離的最小值和最大值。隨著迭代次數(shù)增多,粒子適應(yīng)度越大,與最優(yōu)粒子相似度越高,位置越趨于全局最優(yōu)解,最終聚集在一起。新算法聚集度為:

  10.png

  其中,C(t)是粒子群經(jīng)t次迭代的聚集度,m為種群規(guī)模。種群聚集度最密的粒子群收斂于當(dāng)前全局最優(yōu)解。

  5.4 新算法定位流程

  新算法采用改進(jìn)PSO離散算法替代DV-Hop算法中第3階段的最小二乘法,利用離散PSO迭代求解避免網(wǎng)絡(luò)跳距誤差對(duì)定位精度帶來(lái)的影響,并得到3個(gè)全局體極值的幾何質(zhì)心解,最后計(jì)算傳感節(jié)點(diǎn)坐標(biāo)。具體步驟如下。

  (1)基于DV-Hop算法第1階段和第2階段,傳感節(jié)點(diǎn)間通過(guò)與鄰居節(jié)點(diǎn)通信獲得自身參考坐標(biāo){xi,yi,hi},并計(jì)算抵達(dá)網(wǎng)絡(luò)其他節(jié)點(diǎn)距離。

  (2)根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)規(guī)模和區(qū)域大小初始化種群,計(jì)算每個(gè)粒子適應(yīng)度,每個(gè)粒子位置都是節(jié)點(diǎn)定位坐標(biāo)的可行解。

  (3)根據(jù)適應(yīng)度大小更新粒子個(gè)體極值,同時(shí)找出全局適應(yīng)度最好的3個(gè)個(gè)體極值保存在近優(yōu)解集合中。

  (4)根據(jù)粒子速率利用離散運(yùn)動(dòng)方程式(7)對(duì)粒子群狀態(tài)進(jìn)行躍遷,避免算法過(guò)早收斂。

  (5)根據(jù)式(4)重新計(jì)算粒子當(dāng)前位置和速率。

  (6)根據(jù)式(9)計(jì)算每個(gè)粒子與全局近優(yōu)解相似度,并根據(jù)式(10)計(jì)算當(dāng)前迭代種群的聚集度。

  (7)判斷是否滿足結(jié)束條件(達(dá)到最大迭代次數(shù)或保存近優(yōu)數(shù)組中的3個(gè)個(gè)體極值都達(dá)到最優(yōu)要求),結(jié)束迭代循環(huán),獲得3個(gè)全局體極值坐標(biāo),否則跳到步驟(3)。

  (8)通過(guò)極值幾何質(zhì)心坐標(biāo)計(jì)算定位傳感節(jié)點(diǎn)位置。

  6 仿真測(cè)試

  6.1 仿真環(huán)境

  仿真環(huán)境設(shè)為100 m×100 m二維區(qū)域,節(jié)點(diǎn)通信半徑為20 m,傳感節(jié)點(diǎn)比例為80%,初始化粒子群規(guī)模200,最大迭代次數(shù)500,慣性權(quán)重Wmax=0.9,Wmin=0.4,平均定位誤差評(píng)價(jià)為:

  6.2 定位誤差分析

  新算法用PSO離散(DPSO)算法替代DV-Hop中的最小二乘法以計(jì)算節(jié)點(diǎn)坐標(biāo),減小DV-Hop網(wǎng)絡(luò)跳距誤差對(duì)定位精度的影響。在相同網(wǎng)絡(luò)環(huán)境下,新算法在測(cè)距誤差為 20%的定位誤差明顯小于DV-Hop算法,如圖2所示。

002.jpg

  6.3 標(biāo)準(zhǔn)偏差分析

  在測(cè)距誤差逐漸增加時(shí),開(kāi)始兩種算法定位標(biāo)準(zhǔn)偏差都有所增長(zhǎng),但新算法相比DV-Hop中的標(biāo)準(zhǔn)偏差增長(zhǎng)更為緩慢,如圖3所示。因?yàn)樾滤惴ㄕ`差增長(zhǎng)受節(jié)點(diǎn)平均距離誤差影響,而DV-Hop算法誤差激增是由于最小二乘法對(duì)節(jié)點(diǎn)平均距離誤差放大的結(jié)果。當(dāng)新算法測(cè)距誤差增長(zhǎng)到10%時(shí),標(biāo)準(zhǔn)偏差開(kāi)始降低,這是由于在計(jì)算適應(yīng)度時(shí)加入權(quán)重,hi越大的傳感節(jié)點(diǎn)對(duì)適應(yīng)值影響越小,節(jié)點(diǎn)平均距離誤差隨節(jié)點(diǎn)距離增長(zhǎng)影響越弱,最大測(cè)距標(biāo)準(zhǔn)偏差收斂于2 m以內(nèi),可見(jiàn)新算法在定位平均測(cè)距誤差較大的情況下更具優(yōu)勢(shì)。

004.jpg

  6.4 收斂性分析

  與標(biāo)準(zhǔn)PSO算法相比,兩種算法定位誤差都隨迭代次數(shù)增多而減小,如圖4所示。在迭代次數(shù)較少時(shí)兩種算法誤差較大,這是因?yàn)榱W尤撼跏蓟^(guò)程中粒子分布隨機(jī)性造成的。標(biāo)準(zhǔn)PSO算法在迭代次數(shù)達(dá)到100時(shí),曲線趨于平穩(wěn),定位誤差起伏不大,算法開(kāi)始收斂,但定位誤差明顯大于新算法,由此推斷算法過(guò)早收斂陷入局部最優(yōu)解。而新算法在迭代次數(shù)達(dá)到120時(shí),定位誤差才接近最優(yōu)解,最終定位誤差收斂于2 m以內(nèi),這與圖3實(shí)驗(yàn)數(shù)據(jù)一致。

004.jpg

  本文采用粒子群離散算法替代DV-Hop算法中的最小二乘法,避免網(wǎng)絡(luò)跳距估計(jì)誤差對(duì)定位精度帶來(lái)的影響。接下來(lái)的工作將著眼于減少算法復(fù)雜度,降低無(wú)線傳感網(wǎng)絡(luò)能耗問(wèn)題,以減少實(shí)際部署中對(duì)環(huán)境的依賴程度。

  參考文獻(xiàn)

  [1] NICULESCU D.Localized positioning in ad-hoc networks[J].IEEE International Workshop on Sensor Network Protocols and Applications,2003,1(2):42-50.

  [2] PATWARI N.Relative location estimation in wireless sensor networks[J].IEEE Transactions on Signal Processing,2003,51(8):2137-2148.

  [3] RANDOLPH.A self-localization method for wireless sensor networks[J].EURASIP Journal on Applied Signal Processing,2003(4):348-358.

  [4] LANGENDOEN K.Distributed localization in wireless sensornetworks[J].Computer Networks.2003,43(4):499-518.

  [5] GUSTAFSSON F.Mobile positioning using wireless networks[J].IEEE Signal Processing Magazine,2005,22(4):41-53.

  [6] YEDAVALLI K.Sequence-based localization in wireless sensor networks[J].IEEE Transactions on Mobile Computing,2008,7(1):81-94.


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