摘? 要:室內(nèi)人員定位對于校園公共安全至關(guān)重要。文章根據(jù)室內(nèi)無線接入點的關(guān)聯(lián)性,提出一種基于粒子群優(yōu)化算法(PSO)和Elman神經(jīng)網(wǎng)絡(luò)的算法。采用接入點(AP)和未知節(jié)點的質(zhì)心信息與跳數(shù)信息作為Elman神經(jīng)網(wǎng)絡(luò)的輸入值,通過Elman神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,最終得到未知節(jié)點的預(yù)測位置。仿真結(jié)果表明,該算法的定位誤差明顯小于傳統(tǒng)的TOA、AOA、RSSI等定位方法,定位精度得以大幅提升。
關(guān)鍵詞:人員定位;粒子群優(yōu)化算法;Elman神經(jīng)網(wǎng)絡(luò);WSN
中圖分類號:TP18? 文獻標(biāo)識碼:A? 文章編號:2096-4706(2023)06-0057-04
Research on the Indoor Positioning Technology for Campus Personnel Based on PSO-Elman Algorithm
LIANG Qiao
(Xuzhou Economic and Trade Branch of Jiangsu Union Technical Institute, Xuzhou? 221004, China)
Abstract: Indoor personnel positioning is crucial to campus public safety. According to the relevance of indoor wireless access points, this paper proposes an algorithm based on Particle Swarm Optimization (PSO) and Elman neural network. The centroid information and hop number information of the Access Point (AP) and the unknown node are used as the input values of the Elman neural network. The training is carried out by Elman neural network to obtain the predicted position of the unknown node finally. The simulation results show that the positioning error of this algorithm is significantly smaller than that of traditional TOA, AOA, RSSI and other positioning methods, and the positioning accuracy is greatly improved.
Keywords: personnel positioning; Particle Swarm Optimization; ELman neural network; WSN
0? 引? 言
校園是一個人員非常密集的公共場所,隨著社會的進步,校園安全問題日漸引起全社會各級人員的關(guān)注。尤其是信息化教室和宿舍內(nèi)環(huán)境十分復(fù)雜,再加上室內(nèi)網(wǎng)絡(luò)安全監(jiān)控技術(shù)不成熟,室內(nèi)安全事故時有發(fā)生,有些甚至?xí)o學(xué)校造成極其惡劣的社會影響。當(dāng)下,物聯(lián)網(wǎng)技術(shù)的快速發(fā)展給校園安全提出了新階段的要求,人員目標(biāo)的精確定位精度對于校園安全的預(yù)防與規(guī)劃十分重要,不僅可以幫助管理人員動態(tài)審核人員信息和實時監(jiān)測人員出勤情況,而且在面對緊急事故時,對于人員快速救援也能夠提供方案依據(jù),及時減少損失[1]。
由于校園室內(nèi)的環(huán)境復(fù)雜、布線困難,其他領(lǐng)域的定位算法無法直接應(yīng)用于室內(nèi)定位。針對室內(nèi)人員定位問題,大量的研究機構(gòu)進行了深入、廣泛的研究,當(dāng)前有許多室內(nèi)人員定位技術(shù)。經(jīng)典的室內(nèi)無線人員定位方法主要包括基于TOA、AOA、RSSI等距離相關(guān)算法和以基于FP、DV-Hop、APIT等距離無關(guān)這兩類算法[1,2]。此外,還有一些其他算法及改進算法等都有不錯的定位效果,比如:趙青杉等人提出了基于粒子群優(yōu)化算法(PSO)的節(jié)點定位算法[3];杜士懷等人提出了一種改進的質(zhì)心定位及誤差校正算法[4]。
校園可分為室內(nèi)區(qū)域和室外區(qū)域。教室和宿舍外圍的公共空間安裝了電線和光纖通信線路。而室內(nèi)往往沒有這些設(shè)備,并且狹窄、環(huán)境復(fù)雜。以光纖骨干網(wǎng)為基礎(chǔ)的設(shè)備大多分布于校園建筑物外圍的公共區(qū)域。有線設(shè)備很難實現(xiàn)室內(nèi)全部區(qū)域人員監(jiān)測和定位。如圖1所示。
近年來,人工智能相關(guān)算法的不斷出現(xiàn)和深入融合,促進了諸多技術(shù)與領(lǐng)域的協(xié)同發(fā)展,在定位問題上,也有比較多的應(yīng)用。徐奇基于BP神經(jīng)網(wǎng)絡(luò)和RSSI提出了一種定位算法[5];宋慧敏等人基于徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)和節(jié)點跳數(shù)提出了一種定位算法[6];閆俊伢等人提出了基于多徑距離和神經(jīng)網(wǎng)絡(luò)的節(jié)點定位算法[7];孫凱等人提出了一種基于虛擬節(jié)點的BP節(jié)點定位算法[8]。
為了提高室內(nèi)工作人員的定位效果,本文主要采用Elman神經(jīng)網(wǎng)絡(luò)來協(xié)同規(guī)劃這一問題,Elman作為一個典型的動態(tài)神經(jīng)網(wǎng)絡(luò),廣泛應(yīng)用于各大領(lǐng)域,適應(yīng)性和計算能力出眾,屬于回歸神經(jīng)網(wǎng)絡(luò)(RNN)的一種模型[9]。在結(jié)合神經(jīng)網(wǎng)絡(luò)算法的同時,需要考慮神經(jīng)網(wǎng)絡(luò)中的權(quán)重對整體效果的影響。本文利用PSO來優(yōu)化初始權(quán)重,結(jié)合Elman神經(jīng)網(wǎng)絡(luò)進行定位,仿真實驗結(jié)果表明,該結(jié)合算法可以有效減少定位誤差,提高人員定位精度。
1? 室內(nèi)人員相關(guān)信息的提取
室內(nèi)人員所攜帶的無線通信裝置相當(dāng)于一個節(jié)點,本文采用Elman神經(jīng)網(wǎng)絡(luò)定位人員位置,需要選取人員節(jié)點的相關(guān)信息作為Elman神經(jīng)網(wǎng)絡(luò)的輸入值。人員節(jié)點的相關(guān)信息主要包含接入點(AP)和人員的質(zhì)心信息與跳數(shù)信息,選取后,將AP節(jié)點和未知人員節(jié)點的相關(guān)信息分別作為Elman神經(jīng)網(wǎng)絡(luò)的訓(xùn)練參數(shù)和測試參數(shù)。
1.1? 質(zhì)心信息
質(zhì)心信息確定方法如下:假設(shè)某區(qū)域內(nèi)一共存在N個節(jié)點,其中AP有M個,未知人員節(jié)點有(N-M)個,這N個節(jié)點的位置用坐標(biāo)(xi, yi)表示,其中,i=1, 2,…, N。在通信半徑d的范圍內(nèi),各AP周期性地向周圍AP廣播含自身位置的分組信息,當(dāng)某AP接收到一定量信息后,計算由接收到的AP組成的多邊形的質(zhì)心,用坐標(biāo)(, )表示,該坐標(biāo)也即該AP預(yù)測位置的坐標(biāo)。然后各AP再周期性地向周圍未知人員節(jié)點廣播含自身位置的分組信息,同理,其質(zhì)心坐標(biāo)用(, )表示,該坐標(biāo)也即該未知人員節(jié)點預(yù)測位置的坐標(biāo)。
1.2? 跳數(shù)信息
跳數(shù)信息確定方法為:在通信半徑d的范圍內(nèi),各AP周期性地向周圍AP廣播含自身位置以及初始值為0的跳數(shù)的分組信息,得到這M個AP之間的最小跳數(shù),用Hkj表示,其中,k=1, 2,…, M;j=1, 2,…, M。因此,AP之間的跳數(shù)信息一共有M×M個。然后各AP再周期性地向周圍未知人員節(jié)點廣播含自身位置以及初始值為0的跳數(shù)的分組信息,同理,得到這M個AP和(N-M)個未知人員節(jié)點之間的最小跳數(shù),用hkl表示,其中,k=1, 2,…, M;l=1, 2,…, N-M。因此,AP和未知人員節(jié)點之間的跳數(shù)信息一共有M×(N-M)個。
2? 模型與方法
2.1? Elman神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型
Elman是一種典型的局部回歸神經(jīng)網(wǎng)絡(luò)模型,它的結(jié)構(gòu)模型可劃分為:輸入層、隱含層、聯(lián)系單元層以及輸出層這四層。如圖2所示,輸入層和隱含層的中所包含的各個節(jié)點、隱含層和聯(lián)系單元層中所包含的各個節(jié)點、隱含層和輸出層中所包含的各個節(jié)點都有相應(yīng)的權(quán)值所相連,分別為W1、W2和W3。與傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)不同的是,Elman所獨有的聯(lián)系單元層可以組合在一起構(gòu)成局部反饋模型,并且可以將反饋的信號信息在隱含層中得以表現(xiàn)出來,從而保存節(jié)點狀態(tài)信息,進一步構(gòu)成了Elman神經(jīng)網(wǎng)絡(luò)良好的對動態(tài)信息的處理能力和強勁的動態(tài)記憶能力。
其中,U(i-1)表示輸入層的輸入值,Xc(i)表示聯(lián)系單元層的輸出值,X(i)表示隱含層的輸出值,Y(i)表示輸出層的輸出值,k∈[0, 1]表示增益因子,f1和f2分別表示隱含層和輸出層的節(jié)點函數(shù)。因此,Elman神經(jīng)網(wǎng)絡(luò)通??珊喪鰹橐韵碌臄?shù)學(xué)模型:
Xc(i)=kXc(i-1)+X(i-1)? ? ? ? ? ? ? ? ? ? ? ? (1)
X(i)=f1(W1U(i-1)+W2 Xc(i))? ? ? ? ? ? ? ? ? ? ?(2)
Y(i)=f2(W3 X(i))? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (3)
2.2? PSO結(jié)構(gòu)模型
PSO是通過模仿鳥類等動物的集群行為,不斷進行迭代、更新、優(yōu)化過程來尋覓食物,最終得到最優(yōu)策略的一種尋優(yōu)算法。
如圖3所示,PSO結(jié)構(gòu)主要包括初始化粒子群、計算適應(yīng)度、尋找極值、更新信息、輸出最優(yōu)解等部分。粒子群的初始化主要針對部分為位置和速度,在計算每個粒子適應(yīng)度過程中,再分別與自身尋覓的最佳位置best1、當(dāng)前全局最佳位置best2相比。如果該粒子的適應(yīng)度優(yōu)于最佳位置best1,則將該粒子的適應(yīng)度作為best1的值;如果該粒子的適應(yīng)度優(yōu)于最佳位置best2,則將該粒子的適應(yīng)度作為best2的值。若滿足終止條件則輸出最優(yōu)解結(jié)束程序,終止條件一般情況下可選取達到最大迭代次數(shù)或是相鄰兩代間的差值滿足某個閾值等;否則,需要對粒子的速度與和位置進行更新,再次開始計算粒子的適應(yīng)度,直至滿足終止條件。
對于更新粒子的速度與和位置所用到的計算公式為:
S1=c1r1(best1-X(i-1))? ? ? ? ? ? ? ? ? ? ? ? ? (4)
S2=c2r2(best2-X(i-1))? ? ? ? ? ? ? ? ? ? ? ? ? (5)
V(i)=WV(i-1)+S1+S2? ? ? ? ? ? ? ? ? ? ? ? ? (6)
X(i)=X(i-1)+V(i)? ? ? ? ? ? ? ? ? ? ? ? ? ? (7)
其中,c1和c2表示學(xué)習(xí)因子,r1和r2表示在0~1間的隨機數(shù),best1和best2分別表示粒子自身尋覓的最佳位置和當(dāng)前全局最佳位置,W表示權(quán)重,V(i)和X(i)分別表示粒子的速度和位置。
2.3? PSO-Elman神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法
為了解決Elman神經(jīng)網(wǎng)絡(luò)初始權(quán)重隨機化等問題,本文提出的結(jié)合PSO的優(yōu)化方法如下:
(1)粒子群初始化:將神經(jīng)網(wǎng)絡(luò)中的權(quán)值和閾值進行編碼。假設(shè)Elman神經(jīng)網(wǎng)絡(luò)的輸入層有a個節(jié)點,隱含層有b個節(jié)點,輸出層有c個節(jié)點,那么權(quán)值共有(ab+bc)個,閾值共有(b+c)個,可得到一個長度為1行(ab+bc+b+c)列的粒子。
(2)將AP的質(zhì)心信息和跳數(shù)信息作為Elman神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入值,AP的真實坐標(biāo)作為訓(xùn)練輸出值。將未知節(jié)點的質(zhì)心信息和跳數(shù)信息作為Elman神經(jīng)網(wǎng)絡(luò)的測試輸入值,然后進行未知節(jié)點的位置預(yù)測。
(3)確定粒子適應(yīng)度:將預(yù)測得到的未知人員節(jié)點的橫、縱坐標(biāo)與真實的未知人員節(jié)點的橫、縱坐標(biāo)差的絕對值作為PSO的粒子適應(yīng)度。
(4)計算得到個體最佳位置best1以及全局最佳位置best2。
(5)判斷是否達到PSO的終止條件,若達到,則輸出最優(yōu)解,轉(zhuǎn)到(7);否則轉(zhuǎn)到(6)。
(6)更新粒子位置與速度并轉(zhuǎn)到(3)。
(7)將PSO最優(yōu)解對應(yīng)的粒子進行解碼,并作為Elman神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值。
(8)重新訓(xùn)練、測試Elman神經(jīng)網(wǎng)絡(luò),最終得到未知人員節(jié)點的預(yù)測位置。
該結(jié)合算法的具體流程圖如圖4所示。
3? 實驗仿真與分析
3.1? 仿真實驗
本文實驗采用Matlab平臺對算法進行實驗仿真,綜合對比分析了傳統(tǒng)的質(zhì)心定位算法、Elman神經(jīng)網(wǎng)絡(luò)算法和PSO-Elman神經(jīng)網(wǎng)絡(luò)算法的定位性能。本定位實驗?zāi)M了室內(nèi)走廊、房屋的實際情況,設(shè)定一個長1 000 m、寬5 m、高5 m的狹長區(qū)域,該區(qū)域隨機分布著25個AP和50個未知人員節(jié)點。
本文實驗的目的是盡可能地減少人員節(jié)點定位誤差,增強定位能力。分別就不同算法定位后的橫、縱坐標(biāo)誤差進行對比分析,然后分析了PSO-Elman神經(jīng)網(wǎng)絡(luò)算法中粒子種群對適應(yīng)度的影響,最后綜合對比分析了不同算法的定位誤差。
3.2? 仿真結(jié)果與分析
本文所涉及的PSO和Elman神經(jīng)網(wǎng)絡(luò)算法需要設(shè)置某些關(guān)鍵參數(shù),如表1和表2所示。
圖5和圖6分別表示在質(zhì)心算法、Elman神經(jīng)網(wǎng)絡(luò)算法、PSO-Elman神經(jīng)網(wǎng)絡(luò)算法下未知人員節(jié)點的橫、縱坐標(biāo)與真實橫、縱坐標(biāo)的對比情況。由圖可知,這些算法的坐標(biāo)與真實坐標(biāo)吻合程度較高,還需通過具體計算量化誤差,比較其結(jié)果。
主要采用了各算法的坐標(biāo)預(yù)測值(x1, y1)與坐標(biāo)真實值(x0, y0)的歐氏距離作為WSN的定位誤差Error,具體計算方法為:
Error=[(x1-x0)2+(y1-y0)2]1/2? ? ? ? ? ? ? ? ? ?(8)
經(jīng)過計算分析這些算法的定位誤差可知:PSO-Elman神經(jīng)網(wǎng)絡(luò)算法的定位誤差最小,此外Elman神經(jīng)網(wǎng)絡(luò)算法優(yōu)于質(zhì)心算法。
在本文中,將小適應(yīng)度作為優(yōu)秀粒子評價指標(biāo),也即適應(yīng)度越小越好。由圖7可知,隨著PSO迭代次數(shù)的增加,對應(yīng)不同種群規(guī)模下的適應(yīng)度均在不斷減小,直至趨于平穩(wěn)。另外,通過不斷改變種群規(guī)模,分別設(shè)置種群數(shù)為5、10、20,可以得到:種群規(guī)模越大,最終PSO粒子的適應(yīng)度越小,定位誤差越小,算法不斷得以優(yōu)化,如圖8所示。
圖8表示了質(zhì)心算法、Elman神經(jīng)網(wǎng)絡(luò)算法、種群數(shù)為5的PSO-Elman結(jié)合算法、種群數(shù)為10的PSO-Elman結(jié)合算法和種群數(shù)為20的PSO-Elman結(jié)合算法的定位誤差對比情況。圖中結(jié)果表明,PSO-Elman結(jié)合算法的定位誤差明顯小于傳統(tǒng)的質(zhì)心定位方法,定位準(zhǔn)確度不斷提高。
4? 結(jié)? 論
本文針對校園特定的地理和通信環(huán)境,提出了一種PSO和Elman神經(jīng)網(wǎng)絡(luò)的結(jié)合算法,來定位室內(nèi)未知人員位置,利用PSO來優(yōu)化Elman神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,并將人員節(jié)點的質(zhì)心信息和跳數(shù)信息作為Elman神經(jīng)網(wǎng)絡(luò)的輸入值訓(xùn)練網(wǎng)絡(luò)。仿真實驗結(jié)果表明,該結(jié)合算法有著比較好的定位效果,其定位誤差明顯小于傳統(tǒng)的定位算法,增強了人員定位的準(zhǔn)確程度。此外,定位精度還與PSO和Elman神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置有關(guān),在深度實驗與研究應(yīng)用中,還需要不斷進行調(diào)整改進,以求達到更好的訓(xùn)練和測試效果。
參考文獻:
[1] 蔣志鑫.室內(nèi)無線定位技術(shù)研究 [D].成都:電子科技大學(xué),2021.
[2] 劉文,趙旭,李連鵬,等.基于TL-LFL的UWB室內(nèi)定位算法 [J].儀表技術(shù)與傳感器,2022(11):82-87.
[3] 趙青杉,胡玉蘭.基于PSO的無線傳感網(wǎng)絡(luò)節(jié)點定位算法 [J].計算機仿真,2012,29(5):174-177.
[4] 杜士懷,宋杰.一種改進的質(zhì)心定位及誤差校正算法 [J].計算機應(yīng)用與軟件,2017,34(5):115-118+194.
[5] 徐奇.一種基于人工神經(jīng)網(wǎng)絡(luò)的無線傳感器網(wǎng)絡(luò)定位算法 [J].新鄉(xiāng)學(xué)院學(xué)報:自然科學(xué)版,2013,30(3):202-204.
[6] 宋慧敏,楊社堂,趙棟棟.基于人工神經(jīng)網(wǎng)絡(luò)的無線傳感器定位算法 [J].計算機測量與控制,2014,22(2):473-475+502.
[7] 閆俊伢,錢宇華,李華鋒,等.WSN中基于多徑距離和神經(jīng)網(wǎng)絡(luò)的節(jié)點定位 [J].計算機科學(xué),2017,44(8):71-75.
[8] 孫凱,劉潤杰,申金媛.基于虛擬節(jié)點的BP無線傳感器網(wǎng)絡(luò)定位算法 [J].傳感器與微系統(tǒng),2010,29(9):122-124+134.
[9] 朱群雄,孫鋒.RNN神經(jīng)網(wǎng)絡(luò)的應(yīng)用研究 [J].北京化工大學(xué)學(xué)報:自然科學(xué)版,1998,25(1):86-90.
作者簡介:梁俏(1995—),女,漢族,江蘇徐州人,助教,碩士研究生,研究方向:人工智能、室內(nèi)定位技術(shù)。收稿日期:2022-10-25