物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊

粒子群神經(jīng)網(wǎng)絡(luò)算法的RFID定位應(yīng)用研究

作者:周蕾蕾、劉成友、馬俊、秦航、蔣紅兵
來源:RFID世界網(wǎng)
日期:2018-07-06 13:49:05
摘要:將粒子群算法( Particle Swarm Optimization,PSO)優(yōu)化 BP( Back Propagation)網(wǎng)絡(luò)的學(xué)習(xí)算法應(yīng)用于射頻定位。搭建實驗平臺,采集樣本數(shù)據(jù) ;在此基礎(chǔ)上,進行訓(xùn)練學(xué)習(xí),求得 RFID 讀寫器與標(biāo)簽之間“信號強度—坐標(biāo)” 的映射關(guān)系 ;并對其進行測試,探討粒子群神經(jīng)網(wǎng)絡(luò)算法在 RFID 定位中應(yīng)用的優(yōu)勢。

  醫(yī)院醫(yī)療設(shè)備的使用和管理情況反映了醫(yī)院的現(xiàn)代化程度。醫(yī)療設(shè)備數(shù)量的增多,精細(xì)度的提高,使得醫(yī)療設(shè)備的信息化管理成為一種趨勢。射頻識別技術(shù)( Radio Frequency Identifcation, RFID),是一種非接觸式的自動識別技術(shù),通過射頻信號自動識別目標(biāo)對象并獲取相關(guān)數(shù)據(jù),具有精度高、適應(yīng)環(huán)境能力強等優(yōu)點 [1]。 RFID 在醫(yī)療設(shè)備管理中的應(yīng)用正在逐漸興起,使得設(shè)備閑置、流失、重復(fù)購置等問題的解決成為可能 [2]。

  精確定位是醫(yī)療設(shè)備管理的基本要求, RFID 讀寫器和標(biāo)簽的分布情況,以及定位算法優(yōu)劣直接影響定位的精確度。經(jīng)典的無線定位( Time of Arrival, TOA) [3] 算法,基于信號到達(dá)角度的定位算法( Angle of Arrival,AOA) [4] 算法,射 頻 標(biāo) 簽 信 號 強 度( Received Signal Strength Indication,RSSI) [5-6] 算法等定位算法有各自的特點,但面對醫(yī)院復(fù)雜的環(huán)境有一定的局限性。

  本文將粒子群算法( Particle Swarm Optimization,PSO)優(yōu)化 BP( Back Propagation)網(wǎng)絡(luò)的學(xué)習(xí)算法應(yīng)用于射頻定位。搭建實驗平臺,采集樣本數(shù)據(jù) ;在此基礎(chǔ)上,進行訓(xùn)練學(xué)習(xí),求得 RFID 讀寫器與標(biāo)簽之間“信號強度—坐標(biāo)” 的映射關(guān)系 ;并對其進行測試,探討粒子群神經(jīng)網(wǎng)絡(luò)算法在 RFID 定位中應(yīng)用的優(yōu)勢。

  粒子群神經(jīng)網(wǎng)絡(luò)原理

  1.1 BP神經(jīng)網(wǎng)絡(luò)算法

  BP 神經(jīng)網(wǎng)絡(luò)用到的算法是向量乘法,并且廣泛采用符號函數(shù)及其各種逼近。對于輸入層的信號,要先向前傳播到隱藏層,經(jīng)過作用函數(shù)后,再信息傳播到輸出層節(jié)點,最后輸出結(jié)果,見圖 1。神經(jīng)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò) [7],是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一??梢詫崿F(xiàn)自我學(xué)習(xí)、自我組織、自我適應(yīng)等特性,也是神經(jīng)網(wǎng)絡(luò)計算方法與傳統(tǒng)方法的區(qū)別所在。它的學(xué)習(xí)規(guī)則是最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小 [8]。

1

  1.2 粒子群算法

  粒子群算法同模擬退火算法相似一樣,是一種進化算法。該算法的優(yōu)點在于它可以從隨機解出發(fā),通過迭代尋找最優(yōu)途徑 [9-10]。設(shè)在 D 維搜索空間中,共有 M 個粒子組成一個群體,記第 i 個粒子空間位置為 xi 是優(yōu)化問題的潛在最優(yōu)解,粒子的速度記為 vi,當(dāng)代最佳位置記作 pibest,歷史最佳位置記作 pbest,第 n 代粒子,進化到第 n+1 代的速度和位置方程為 :

1

  其中, u 為慣性權(quán)值, u 的引入使 PSO 可以調(diào)節(jié)算法的全局與局部尋優(yōu)能力,一般使用線性慣性權(quán)值 ; c1 和 c2 為加速系數(shù), 取正值 ; r1 和 r2 為兩個在 [0,1] 內(nèi)變化的隨機數(shù) [11]。

  1.3 粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法

  BP 神經(jīng)網(wǎng)絡(luò)算法是一種能夠?qū)?yōu)的黑盒子算法,然而實驗表明, BP 神經(jīng)網(wǎng)絡(luò)算法易陷入局部極值,從而難以保證收斂到全局極小點 [12]。此外,神經(jīng)網(wǎng)絡(luò)是基于反向傳播的梯度下降算法,其收斂速度慢,學(xué)習(xí)效果難以令人滿意本。因而本文使用粒子群算法對BP神經(jīng)網(wǎng)絡(luò)算法進行優(yōu)化,實現(xiàn)流程見圖 2。

1

  RFID室內(nèi)定位系統(tǒng)

  2.1 RFID定位系統(tǒng)

  一套完整的RFID系統(tǒng)包括射頻電子標(biāo)簽、射頻讀寫器、PC 移動終端機、附屬設(shè)備等 [13]。射頻讀寫器通過天線可以激發(fā)射頻標(biāo)簽,并獲取接收的信號強度 RSSI 等信息。

  本文構(gòu)建的 RFID 定位系統(tǒng)由 KL9201B 射頻讀寫器,18000-6C 無源不粘膠貼片標(biāo)簽(無源標(biāo)簽貼于卡片表面,模擬實際醫(yī)療工件,每個標(biāo)簽分配唯一設(shè)備編碼),使用上位機軟件為 UHFReader188B,射頻讀寫器與 PC 端使用RS232 傳輸數(shù)據(jù)。根據(jù) RSSI 強度信息、構(gòu)建神經(jīng)網(wǎng)絡(luò)進行定位, PSO-BP 神經(jīng)網(wǎng)絡(luò)的室內(nèi)定位模型,見圖 3。

1

  2.2 試驗布局及方法

  本文通過移動卡片位置來改變標(biāo)簽坐標(biāo),射頻讀寫器讀取標(biāo)簽信號強度與兩者之間的距離有關(guān)。因此可以根據(jù)3 點天線讀取的標(biāo)簽信號強度來確定標(biāo)簽位置。實驗分布圖,見圖 4。

1

  所使用實驗面板為 10 dm× 10 dm,實驗單為 1 dm× 1 dm。為了方便說明數(shù)據(jù)采集過程與計算結(jié)果分析,本文以該正方形的一個頂點作為坐標(biāo)原點 O(0,0),以相交于該原點的兩條邊作為橫縱坐標(biāo)軸( x 軸和 y 軸),形成平面直角坐標(biāo)系。正方形檢測區(qū)域,見圖 4, 3 個 RFID信號讀寫器被放置在該正方形區(qū)域的 3 個定點上,即坐標(biāo)原點 O(0,0),頂點 (0,10),頂點 (10,0),為了使讀寫器檢測到的范圍盡可能大且信號強度呈現(xiàn)一定的對稱性,所有讀寫器擺放角度為 45° 角。

  將整個正方形區(qū)域分別以平行于 x 軸與 y 軸的方向按照相等間距劃分,間隔距離為 1 dm,形成 100 塊相等大小的小正方形。由于檢測區(qū)域中接近正方形邊界處信號強度受傳感器角度影響極大,會對后續(xù)的神經(jīng)網(wǎng)絡(luò)的定位學(xué)習(xí)產(chǎn)生干擾 [14],因此本實驗中沒有考慮在檢測區(qū)域邊界處的RFID 信號接收情況,即坐標(biāo)點 (1,1)(9,1)(1,9)(9,9) 所圍成的范圍內(nèi)放置 RFID 電子標(biāo)簽,在檢測區(qū)域所劃定網(wǎng)格的每個交點上均放置一個 RFID 電子標(biāo)簽。圖中虛線表示平行于 x 軸或 y 軸的方向的若干條劃分線,在所有劃分線的交點上的圓點表示 RFID 電子標(biāo)簽所在位置。

  2.3 PSO-BP神經(jīng)網(wǎng)絡(luò)的構(gòu)建

  BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型拓?fù)浣Y(jié)構(gòu)包括輸入層、隱含層和輸出層,因為在實驗過程中使用 3 個天線對射頻標(biāo)簽 RSSI值進行測量,因此輸入層的輸入變量為 3 個。為簡化定位模型,輸出層選取平面坐標(biāo),即有 2 個輸出量。由于本實驗節(jié)點和輸出節(jié)點相對較少,本文選用隱含層個數(shù)為 2 層。綜上所述,本文構(gòu)建 PSO-BP 神經(jīng)網(wǎng)絡(luò)模型采用 3:16:2:2的網(wǎng)絡(luò)結(jié)構(gòu)。

  在數(shù)據(jù)計算時,將測量數(shù)據(jù)分為兩個子集 :第一個子集為訓(xùn)練數(shù)據(jù)集,數(shù)據(jù)量為 66 組數(shù)據(jù),其中包括 198 輸入變量和 132 輸出量,該子集數(shù)據(jù)用于訓(xùn)練 PSO-BP 模型 ;第二個子集為測試集,數(shù)據(jù)量為 15 組,使用訓(xùn)練后的PSO-BP 模型預(yù)測測試子集數(shù)據(jù)的頻標(biāo)簽的坐標(biāo),以衡量PSO-BP 神經(jīng)網(wǎng)絡(luò)模型的優(yōu)劣性。

  結(jié)果

  在信號采集部分,首先記錄了 81 個電子標(biāo)簽所在檢測區(qū)域中的坐標(biāo)信息,然后分別用 3 個讀寫器來采集 81 個電子標(biāo)簽的 RSSI 數(shù)據(jù)。由于信號強度受環(huán)境影響較大,計算機終端上的信號采集軟件中顯示的數(shù)據(jù)會有較頻繁的波動,因此在采集每個電子標(biāo)簽的 RSSI 數(shù)據(jù)時,重復(fù)讀取10 次并對其進行平均處理得到更為合理的 RSSI 數(shù)值 [15]。為了更直觀表示檢測區(qū)域內(nèi) RSSI 的分布狀況,本研究利用MATLAB 分別繪制了 RSSI 值分布圖,見圖 5。

1

  由于實驗客觀條件限制,過多的電子標(biāo)簽個數(shù)相互之間會產(chǎn)生干擾,并且大大提高了實驗的復(fù)雜性。本研究所獲得的 RSSI 數(shù)據(jù)是離散的。為了能夠盡可能還原出實際的RSSI信號的分布,在繪制 RSSI 分布圖時使用了線性插值。顏色變化和曲面高度與 RSSI 數(shù)值對應(yīng),見圖 5。紅色對應(yīng) RSSI 高值,藍(lán)色對應(yīng) RSSI 低值,黃色為 RSSI 值由高到低的過渡值。讀寫器放置在 3 種位置下的檢測結(jié)果 RSSI 分布趨勢均相同,即RSSI 值隨著到讀寫器的距離增加而減小,讀寫器(讀寫器和天線為一體封裝式)是平板狀且為 45° 擺放狀態(tài),所以采集的數(shù)據(jù)呈現(xiàn)中值—邊緣效應(yīng),即靠近檢測區(qū)域邊緣處的 RSSI 值下降較快。

  為減少 POS-BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練時間,本文將讀寫器獲取的 81 組數(shù)據(jù)進行無量綱、歸一化處理,并使用經(jīng)預(yù)處理的數(shù)據(jù)對 POS-BP 神經(jīng)網(wǎng)絡(luò)進行學(xué)習(xí)測試。設(shè)置 POS-BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) :輸入層節(jié)點數(shù)為 3,對應(yīng) 3 個讀寫器接收的 RSSI 值 ;輸出層節(jié)點為 2,對應(yīng)坐標(biāo)值 ;隱藏層選用兩層結(jié)構(gòu),節(jié)點個數(shù)選擇 16× 2 ;訓(xùn)練步長選擇 0.05,訓(xùn)練目標(biāo)的最小誤差為 0.0007 ;從 81 組數(shù)據(jù)中隨機選擇 66組數(shù)據(jù)作為訓(xùn)練集數(shù)據(jù),訓(xùn)練結(jié)果見圖 6 ;

1

  訓(xùn)練結(jié)束后使用訓(xùn)練后的 POS-BP 神經(jīng)網(wǎng)絡(luò)對余下的 15 組數(shù)據(jù)進行測試,綠色圓圈標(biāo)注剩余的 15 個電子標(biāo)簽所在位置,紅色叉號標(biāo)注由 RSSI 數(shù)據(jù)運用 PSO-BP 算法恢復(fù)出的坐標(biāo)位置,測試結(jié)果位置與真實值誤差為 5.31 mm,測試結(jié)果見圖 7。

  結(jié)論

  將 RFID 技術(shù)應(yīng)用于醫(yī)院醫(yī)療設(shè)備的精細(xì)化管理是目前數(shù)字化醫(yī)院研究的重點。特別是室內(nèi)定位識別技術(shù),各種定位技術(shù)之間沒有通用的標(biāo)準(zhǔn)。未來定位技術(shù)的發(fā)展,對系統(tǒng)的精確度、標(biāo)準(zhǔn)化、實用性等提出了更高的要求。多種定位算法的融合,以及實現(xiàn) 3D 定位將成為發(fā)展趨勢,對于 RFID 技術(shù)的研究還有很長的路需要去探討。

  傳統(tǒng)的基于 RSSI 定位算法,多采用射頻標(biāo)簽信號傳遞經(jīng)驗?zāi)P停瑢?RSSI 值轉(zhuǎn)化為距離信息,通過三圓幾何交點關(guān)系可以快速計算射頻標(biāo)簽位置信息 [16]。在實際應(yīng)用中,RSSI 值受室內(nèi)環(huán)境影響,波動很大, RSSI 經(jīng)驗?zāi)P偷玫降木嚯x誤差較大,精度較低,穩(wěn)定性差 [17]。

  在本文工作中我們不難發(fā)現(xiàn), RSSI 值的大小不僅與標(biāo)簽到讀寫器的距離有關(guān),同時還與射頻讀寫器矢狀面夾角有一定的關(guān)系。分析可知,對于獲取相同距離的射頻標(biāo)簽 RSSI 值,夾角越大, RSSI 值衰減越快。本文提出的PSO-BP 算法,可以直接使用 RSSI 值進行定位,定位過程分為兩段,即模型訓(xùn)練和模型的測試,該算法能兼具有粒子群算法和神經(jīng)網(wǎng)絡(luò)模型的優(yōu)點,粒子群算法能夠為神經(jīng)網(wǎng)絡(luò)模型提供最優(yōu)的初始值,減少神經(jīng)網(wǎng)絡(luò)模型過度訓(xùn)練和局部收斂的幾率。

  PSO-BP 模型訓(xùn)練的過程其本質(zhì)為對歷史數(shù)據(jù)的記憶過程,模型測試(預(yù)測)過程本質(zhì)為在歷史數(shù)據(jù)中尋找最優(yōu)位置信息,當(dāng)訓(xùn)練位置信息越多,訓(xùn)練精度越高,測試精度也越精確。在室內(nèi)環(huán)境下,本算法可使用“隱式”、“黑匣子” 將 RSSI 值與位置信息關(guān)聯(lián)起來,因而規(guī)避了 RSSI值轉(zhuǎn)化距離時參數(shù)值(受室內(nèi)環(huán)境因素較大)的估計,可在一定程度上提高室內(nèi)定位的精度。然而,實驗中使用試驗臺為 1 m× 1 m,接下來我們將擴大實驗區(qū)域進行進一步探討。此外,實驗過程中還有擺位等誤差的存在使得本算法具有一定的局限性,可以說基于射頻標(biāo)簽的定位技術(shù)仍需不斷的努力。