

摘 要:傳統的基于接收信號強度指示RSSI的定位算法通過對數正態陰影模型來構建測距模型,其中的參數通常是憑經驗選擇的,因此對環境的影響很敏感。文章提出了一種基于麻雀搜索算法SSA和反向傳播BP神經網絡的室內定位方法來構建測距模型。在所提出的SSA-BP方法中,收集的RSSI值首先經過高斯濾波處理,然后輸入到SSA-BP神經網絡中,以構建測距模型,該模型可以輸出目標節點TN和錨節點之間的距離值。最后,可以通過使用最大似然估計MLE方法來估計TN-s位置。仿真結果表明與現有的BP算法和遺傳算法GA相比,所提出的SSA-BP算法具有更快的收斂速度和更高的定位精度。
關鍵刺:WSN;RSI;SSA;MLE
一、引言
作為物聯網IoT和無線傳感器網絡WSN的關鍵技術之一,室內定位最近引起了廣泛關注。室內定位算法根據是否進行距離測量可分為基于測距和基于測距。前者通過獲得目標節點TN和每個錨節點AN之間的距離來估計目標節點TN的位置。后者通過使用無線鏈路的整體連接性來估計TN的位置。與非測距定位算法相比,基于測距的定位算法通常具有更高的定位精度。典型的基于測距的定位算法如下:到達時間TOA、到達時間差TDOA、到達角AOA和接收信號強度指標RSSI。其中,基于RSSI的定位算法具有實現簡單、成本低、覆蓋范圍廣的優點。
在大多數現有的基于RSSI的定位算法中,TN和an之間的距離是通過對數正態陰影模型計算的。然而,這些算法通常會受到環境的影響。由環境引起的測量誤差,導致測量的RSSI值的精度下降。因此,最近提出了各種方法來解決這個問題。使用改進的無跡卡爾曼濾波器對接收到的RSSI信號進行預處理,以提高定位精度。提出了一種加權方法來減少RSSI值的測量誤差。提出了基于加權移動平均和反饋平均濾波器的RSSI平滑技術,以減少接收信號的波動和噪聲。
另一方面,機器學習方法由于其良好的準確性性能也被用于室內定位。例如反向傳播BP神經網絡具有良好的非線性擬合能力和容錯性。更具體地說BP神經網絡的非線性擬合能力可以與卷積神經網絡CNN和遞歸神經網絡RNN相媲美。因此,可以利用BP神經網絡的非線性擬合能力來構建測距模型。提出了一種基于BP神經網絡的室內定位算法來估計TN和an之間的距離值用于室內定位。提出了遺傳算法GA-BP算法來構建測距模型。然而,GA-BP算法實現起來很復雜,其性能在很大程度上取決于參數的選擇。
麻雀搜索算法SSA的仿生優化方法。與現有的其他仿生優化方法(如遺傳算法)相比,SSA方法具有更好的全局搜索能力、更好的魯棒性和更少的參數。基于以上討論,在所提出的SSA-BP定位算法中,利用SSA方法對BP神經網絡的初始權值和閾值進行了優化,以提高定位精度。
二、用于室內定位的無線信號傳播模型
對數正態陰影模型廣泛用于室內定位場景,可以描述為:
其中PL(d)和PL(d0)分別表示距離發射機d米和d0米處的路徑損耗,通常為d0 1m。X是陰影衰落,其遵循均值為零且方差為2的高斯分布。是路徑損耗因素。
BP神經網絡的基本思想就是通過使用梯度下降方法來最小化期望輸出值和實際輸出值之間的均方誤差。使用的BP神經網絡包含一個三層結構模型,包括輸入層、隱藏層和輸出層。BP神經網絡主要包括兩個過程:信號正向傳播和誤差反向傳播。信號的前向傳播是以收集到的RSSI值作為輸入向量,將該向量乘以相應的權重,并將其與相應的閾值相加。
麻雀種群形態可分為生產者和覓食者。在使用SSA優化參數時,我們傾向于將整個過程模擬為麻雀尋找食物,而個體麻雀代表了需要優化的參數。在SSA中,麻雀種群的初始位置是:SSA模擬麻雀種群的覓食行為和反捕食行為。麻雀種群形態可分為生產者和覓食者。在使用SSA優化參數時,我們傾向于將整個過程模擬為麻雀尋找食物,而個體麻雀代表了需要優化的參數。
三、SSA-BP定位算法
在BP神經網絡的testing階段,通過隨機選擇來獲得BP神經網絡的初始權值和threshold。由于初始權值和threshold會直接影響BP神經網絡的性能,因此可以采用SSA方法對BP神經網絡初始權值和threshold進行優化,以提高BP神經網絡的收斂速度和魯棒性,避免陷入局部最優化。SSA-BP神經網絡的訓練過程如下:
步驟1:初始化BP神經網絡的參數,如學習率Lr、隱層神經元數量H、輸入層神經元數量N和輸出層神經元數量S。將最大iterm次數設置為100。
步驟2:設定麻雀的初始種群規模m 20,其中80%是生產者,20%是覓食者。將最大iterm設置為100。
步驟3:將fitness確定為:
其中tsim(i)是實際輸出值。yi是預期的輸出值。
步驟4:初始化麻雀位置,選擇-0.5、0.5之間的隨機數作為初始位置X。當前全局最優位置分配給Xb,全局最優適應度值分配給fg。當前全局最差位置分配給Xw,全局最差適應度值指定給fw。
步驟5:根據(7)-(9)更新人口位置。
步驟6:計算當前位置的fitness,選擇其中最優適應度函數。如果其滿足終止條件,則輸出最優解并停止迭代。否則,請轉到下一步。
步驟7:將當前最優fitness對應的位置作為下一次迭代的種群初始位置,返回步驟5。而在距離估計階段,首先通過Gaussian filter處理在參考節點處收集到的RSSI值。然后將處理后的數據分為Training Sets和Testing Sets來訓練SSA-BP神經網絡。對于TN,其RSSI值也會被收集并通過Gaussian filter進行處理。處理后的數據會被送到經過訓練的SSA-BP神經網絡中,從而獲得估計的距離值。而在坐標估計階段,基于SSA-BP神經網絡獲得的距離值,是使用MLE方法計算TN的坐標。
四、結語
通過Matlab軟件仿真對所提出的SSA-BP算法的性能進行了評估。在模擬中,有四個錨點節點。參考節點在(0,0)到(10,5)的范圍內每隔0.1m選擇一次。一些重要的模擬參數如表1所示。
隨機選擇98個點作為目標節點來測試所提出的SSA-BP算法的性能。定位誤差是通過計算目標節點和估計的目標節點之間的歐幾里得距離來顯示定位算法性能的方法。在SSA-BP算法中,其中97%的定位誤差小于0.8m,而60%的定位誤差則低于0.4m。
針對RSSI信號容易受到測量噪聲影響的問題,提出了SSA-BP定位算法。在所提出的SSA-BP算法中,將SSA引入BP神經網絡以獲得更準確的距離值,然后通過MLE方法計算TN-s位置的坐標。所提出的SSA-BP算法避免了傳統BP神經網絡容易陷入局部最優的問題。同時,與現有的BP和GA-BP算法相比,所提出的SSA-BP算法的平均定位誤差分別降低了28%和16%。因此,可以被認為是一個很有前途的室內定位方案。
參考文獻:
[1] 余學帆.基于RSSI的無線傳感器網絡定位改進優化算法研究[D].長春工業大學,2021.
[2] 李朋朋.基于無線傳感器網絡的車輛追蹤復合定位技術研究[D].蘭州交通大學,2021.
[3] 吉灤巒,謝宏.重心反向粒子群優化算法在無線傳感器定位優化中的應用[J].傳感器與微系統,2021,40(02):154-156+160.
[4] 印雷,顧德,劉飛.基于改進麻雀搜索算法優化的DV-Hop定位算法[J].傳感技術學報,2021,34(05):670-675.
[5] 宋玲,黃達勝.一種 基于狼群優化的改進DV-Hop定位算法[J].計算機工程與科學,2021,43(07):1210-1218.
[6] 胡光輝.基于混合粒子群優化算法的WSN網絡覆蓋優化控制研究[D].安徽理工大學,2021.
作者簡介:吳文平(1987—),女,講師,主要研究方向為無線傳感器網絡室內定位算法。
項目:
1、橫向研究項目(項目編號:2022xhx112,項目名稱:基于無線傳感網的大數據異常預測與安全分析系統研究)
2、橫向研究項目(項目編號:2022xhx059,項目名稱:面向智能工廠的無線傳感器網絡定位技術研究)
3、宿州學院線上課程(項目編號:szxy2022xskc07,項目名稱:無線傳感器網絡)
4、宿州學院質量工程項目szxy2020ksjy07
5、安徽省教育廳自然科學研究項目,編號:2022AH051371
6、軟件工程專業卓越工程師培養創新項目,項目號2020zyrc163