陳孟元 徐明輝
①(安徽工程大學(xué)高端裝備先進感知與智能控制教育部重點實驗室 蕪湖 241000)
②(安徽工程大學(xué)電氣工程學(xué)院 蕪湖 241000)
實現(xiàn)移動機器人的高精度定位逐漸成為機器人導(dǎo)航重要的研究方向之一[1,2],也是實現(xiàn)機器人智能化決策和控制的基礎(chǔ)。通過傳感器獲取信息和基于概率的同步定位與地圖構(gòu)建(Simultaneous Localization And Mapping, SLAM)算法是目前機器人自主導(dǎo)航的主要研究方向??茖W(xué)家通過對生物環(huán)境認(rèn)知能力的研究發(fā)現(xiàn),哺乳類動物具有對環(huán)境的自主認(rèn)知能力。O’Keefe等人[3]在對鼠類海馬體椎體神經(jīng)細(xì)胞的放電率進行研究時發(fā)現(xiàn),一些椎體神經(jīng)細(xì)胞的放電活動具有明顯的位置選擇性,即當(dāng)大鼠到達(dá)某一特定位置時,對應(yīng)的神經(jīng)細(xì)胞產(chǎn)生復(fù)雜的尖峰電位,而其余細(xì)胞處于抑制狀態(tài)。O’Keefe等人將具有這種特性的細(xì)胞稱為位置細(xì)胞(Place Cell, PC)。Hafting等人[4]發(fā)現(xiàn)放電形式為六邊形的網(wǎng)格細(xì)胞,多個網(wǎng)格細(xì)胞的關(guān)聯(lián)響應(yīng)可以實現(xiàn)空間導(dǎo)航。在之后的研究中,O’Keefe等人和挪威的Moser等人[5-7]根據(jù)位置細(xì)胞和網(wǎng)格細(xì)胞具有的“定位”屬性,提出了大腦里的“導(dǎo)航系統(tǒng)”概念。文獻(xiàn)[8]對海馬體位置細(xì)胞的功能和特性作出了更加詳細(xì)的說明。更多的研究發(fā)現(xiàn),通過對位置細(xì)胞放電率的計算,結(jié)合路標(biāo)獲取、位置編碼和圖像信息能完成機器人的空間位置估計[9,10]??哲姽こ檀髮W(xué)的李偉龍等人[11]基于位置細(xì)胞的放電機理,提出了位置細(xì)胞表征空間位置的兩種方法,借助環(huán)境路標(biāo)的提取實現(xiàn)了對于機器人空間位置的高精度表征。周牧等人[12]提出一種基于Mann-Whitney秩和檢驗的無線局域網(wǎng)室內(nèi)映射與定位方法,該方法可根據(jù)實際定位精度需求對目標(biāo)區(qū)域進行分段處理,在無需運動傳感器輔助和構(gòu)建位置指紋數(shù)據(jù)庫的條件下,實現(xiàn)更高的映射與定位精度,但存在相同聚類接收信號強度(Received Signal Strength, RSS)樣本冗余等問題導(dǎo)致聚類(即信號空間中的骨干節(jié)點)映射到物理空間中的鄰接性較差。文獻(xiàn)[13]提出的基于RSS非齊性分布特征的半監(jiān)督學(xué)習(xí)室內(nèi)定位指紋庫構(gòu)建算法,實現(xiàn)運用少量標(biāo)記數(shù)據(jù)對大量未標(biāo)記數(shù)據(jù)的位置標(biāo)定,但仍存在高維接收信號強度(RSS)數(shù)據(jù)分布不均勻的影響,缺乏對環(huán)境局部幾何特征的提取性能。Aronov等人[14]在大鼠獎勵實驗中發(fā)現(xiàn),當(dāng)大鼠到達(dá)“獎勵空間”時,位于海馬體的位置細(xì)胞活動速率達(dá)到最大,將這些活動速率變大的位置細(xì)胞的響應(yīng)位置記錄下來,得到一條覆蓋大鼠活動區(qū)域的路徑,即大鼠的運動路徑。Milford等人[15-17]提出了一種通過關(guān)聯(lián)視覺場景細(xì)胞和位姿細(xì)胞建立經(jīng)歷地圖的仿生SLAM算法,這一算法能有效地進行閉環(huán)檢測,更快實現(xiàn)空間地圖構(gòu)建。但也存在定位精度低和處理數(shù)據(jù)速度慢的缺點。
1982年芬蘭科學(xué)家Kohonen[18,19]基于側(cè)抑制現(xiàn)象提出一種自組織圖(Self-Organizing Map,SOM),并引入“贏者通吃”的競爭規(guī)則。這種自組織方法通過學(xué)習(xí)能夠自主繪制出拓?fù)涞貓D,但必須定義其初始網(wǎng)絡(luò)結(jié)構(gòu),無法滿足系統(tǒng)實時性要求。Montazeri等人[20]提出一種將增長自組織特征圖應(yīng)用于強化學(xué)習(xí)的算法,通過兩個增長的自組織映射實現(xiàn)狀態(tài)空間的最佳表征。于乃功等人[21]根據(jù)自組織可增長映射圖(Growing Self-Organizing Map, GSOM)的特性結(jié)合雙目立體視覺視差理論,通過構(gòu)建空間環(huán)境的拓?fù)潢P(guān)系,解決了SOM網(wǎng)絡(luò)需要預(yù)先確定拓?fù)浣Y(jié)構(gòu)的問題。
本文根據(jù)GSOM神經(jīng)網(wǎng)絡(luò)的特性,引入位置細(xì)胞放電機理構(gòu)建空間經(jīng)歷地圖,神經(jīng)網(wǎng)絡(luò)用來建立環(huán)境的拓?fù)涞貓D,位置細(xì)胞使拓?fù)涞貓D的輸出神經(jīng)元具備激活響應(yīng),并應(yīng)用于Milford等人提出的仿生SLAM模型中。
O’Keefe等人[3]通過大鼠的導(dǎo)航細(xì)胞和SLAM導(dǎo)航策略提出的基于局部視圖和位姿感知的同步定位與地圖構(gòu)建(local View and Pose cell - Simultaneous Localization And Mapping, VP-SLAM)模型由局部視圖單元(view cell)、位姿細(xì)胞(pose cell)和經(jīng)歷地圖3部分組成,本文將該算法簡稱為VPSLAM。其位姿細(xì)胞網(wǎng)絡(luò)是頭方向細(xì)胞和位置細(xì)胞合并形成的定位網(wǎng)絡(luò),頭方向細(xì)胞和位置細(xì)胞都具有強烈的空間感知特性,其中頭方向細(xì)胞能感知機器人的方向信息,位置細(xì)胞能感知機器人的位置信息;局部視圖單元是可擴展的單元陣列,每個單元代表環(huán)境中獨特的視覺場景;經(jīng)歷地圖是由位姿感知網(wǎng)絡(luò)和局部視圖單元的活性驅(qū)動產(chǎn)生的多個經(jīng)歷整合而成的相關(guān)地圖。VP-SLAM模型如圖1所示,在VP-SLAM模型中,里程計獲取內(nèi)部感知的自運動信息來估算此刻機器人的位置和方向,局部場景作為外部感知形成局部視圖單元,通過視覺場景學(xué)習(xí)進行重定位,再將位姿細(xì)胞網(wǎng)絡(luò)獲得的位姿信息與局部視圖單元的模板關(guān)聯(lián)生成經(jīng)歷地圖。
連續(xù)吸引子競爭網(wǎng)絡(luò)(Competitive Attractor Network, CAN)模擬位置細(xì)胞和頭方向細(xì)胞的認(rèn)知導(dǎo)航功能,在沒有外部輸入的情況下,CAN模型可以通過對位姿細(xì)胞網(wǎng)絡(luò)注入適當(dāng)?shù)呐d奮或抑制性激勵,保證位姿細(xì)胞的動態(tài)更新,用P表示位姿細(xì)胞的活躍水平。位姿細(xì)胞由位置細(xì)胞和頭方向細(xì)胞組成,其被模型化為一個3維立方體結(jié)構(gòu),如圖2所示。在笛卡兒坐標(biāo)系中,位姿細(xì)胞以離散的形式排列,并以多個位姿細(xì)胞組成的活動包形式表征機器人位姿。該活動包編碼了機器人對其當(dāng)前位姿的最佳內(nèi)部估計。這種動態(tài)的內(nèi)部估計行為是通過局部興奮性、全局抑制和歸一化3個階段實現(xiàn)的。

圖1 VP-SLAM模型

圖2 位姿細(xì)胞模型
頭方向細(xì)胞由一組神經(jīng)元表示,用來表征機器人的方向。當(dāng)頭方向細(xì)胞表征的方向與機器人實際方向一致時,頭方向細(xì)胞被激活。反之,頭方向細(xì)胞的活性降低。當(dāng)機器人學(xué)習(xí)完外部傳感器輸入和方向之間的關(guān)聯(lián)時,可以應(yīng)用這個關(guān)聯(lián)對之前感知的方向進行校正。位置細(xì)胞以一個離散的2維矩陣方式排列,如果機器人處于一個特定的位置,則相應(yīng)單元被激活,所有的位置細(xì)胞之間采用全激勵連接。激勵權(quán)重矩陣δij的2維形式高斯分布如式(1)所示

其中, σ2為激勵權(quán)重高斯分布的方差,u為位置細(xì)胞自關(guān)聯(lián)權(quán)重,保證了每個位置細(xì)胞的活性隨著機器人偏離該位置細(xì)胞所表征的位置而降低。
視覺圖像信息為位姿細(xì)胞模型中位置細(xì)胞的唯一輸入,與頭方向細(xì)胞類似,在環(huán)境中不同位置處的 場景需要與位置細(xì)胞進行關(guān)聯(lián)。
2.1.1 局部興奮性
因為位姿網(wǎng)絡(luò)的3維特性,每個階段均采用3維高斯分布來創(chuàng)建一個興奮性空間權(quán)重矩陣,用這個矩陣來表示圖2中3維位姿感知網(wǎng)絡(luò)對應(yīng)活動包興奮時單個位姿細(xì)胞的映射關(guān)系。該矩陣的3維高斯分布表示為式(2)


其中,sx, sy, sz為位姿細(xì)胞權(quán)值矩陣在( x,y,z)上的維數(shù)。i, j, k分別為從0到 sx-1,sy-1,sz-1的整數(shù)。
由內(nèi)部興奮性動態(tài)估計引起的位姿細(xì)胞活躍水平Δ P的變化表示如式(4)

2.1.2 全局抑制
在整個位姿表征過程中,隨著視覺輸入信息的注入,CAN的抑制作用相對緩慢。通過添加輕微的全局抑制保證在競爭過程中,興奮性位姿細(xì)胞的活動包與抑制性位姿細(xì)胞的活動包同時存在。而不采用傳統(tǒng)的墨西哥帽連接方式。抑制后位姿細(xì)胞活躍水平如式(5)

其中, φ表示抑制參數(shù),調(diào)整位姿細(xì)胞活躍水平為正數(shù)。
2.1.3 歸一化
位姿細(xì)胞通過獲取自運動和視覺輸入信息完成位姿估計,歸一化位姿細(xì)胞的活動水平保持位姿細(xì)胞的總活性不變,更新后如式(6)

局部視圖單元是可擴展的單元陣列,每個單元代表環(huán)境中獨特的視覺場景。當(dāng)機器人看到新的視覺場景時,會創(chuàng)建新的局部視圖單元并將其與該場景中的原始像素數(shù)據(jù)相關(guān)聯(lián)。另外,該局部視圖單元與此時位姿網(wǎng)絡(luò)中的被激活的活動包之間通過興奮鏈接 β進行學(xué)習(xí)。當(dāng)機器人再次看到該場景時,局部視圖單元會再次被激活,并通過增強被激活局部視圖單元和位姿細(xì)胞膜之間的興奮性鏈接 β,將激活的局部視圖單元的活動信息注入到位姿細(xì)胞中。興奮性鏈接β可表示為式(7)

其中, λ為興奮鏈接常數(shù);Li為局部視圖單元的活性;Pxyz為位姿細(xì)胞的活性。活動信息持續(xù)注入到位姿網(wǎng)絡(luò)中將導(dǎo)致重定位,當(dāng)活躍的局部視圖單元將激活與熟悉場景相關(guān)聯(lián)的位姿細(xì)胞的活性時,位姿細(xì)胞的活性變化為式(8)

其中, τ為視覺影響量,決定機器人當(dāng)前感知的位姿 信息與先前關(guān)聯(lián)的感知方向的置信水平。
經(jīng)歷地圖是由許多經(jīng)歷構(gòu)成的細(xì)粒度的拓?fù)涞貓D。每個經(jīng)歷由位姿細(xì)胞的活性P與局部視圖單元的活性Li構(gòu)成,用經(jīng)歷能級Ei表示。
每個經(jīng)歷都有對應(yīng)的( x,y,z)狀態(tài)表示,此狀態(tài)描述了該經(jīng)歷在經(jīng)歷地圖坐標(biāo)系的空間位置。經(jīng)歷地圖坐標(biāo)系不同于連續(xù)吸引子網(wǎng)絡(luò)的笛卡兒坐標(biāo)系和局部視圖單元的空間坐標(biāo)系。在經(jīng)歷地圖坐標(biāo)系中,通常把獲取的第1個經(jīng)歷初始化作為坐標(biāo)系的(0,0,0)位置,后續(xù)經(jīng)歷根據(jù)上一個經(jīng)歷和機器人的運動變化來分配一個位置。具體的坐標(biāo)描述如式(9)

其中,Si為經(jīng)歷地圖中經(jīng)歷的位置。
當(dāng)位姿細(xì)胞和局部視圖單元的當(dāng)前活動狀態(tài)與現(xiàn)有的經(jīng)歷三者沒有高度匹配時,創(chuàng)建新的經(jīng)歷。新的位姿感知細(xì)胞活性、局部視圖單元和經(jīng)歷狀態(tài)三者的匹配程度用度量系數(shù)F 來表示,如式(10)

其中, μp和 μl分 別為位姿細(xì)胞和局部視圖單元的加權(quán)匹配值,且 μp+μl=1。當(dāng)度量系數(shù)F小于設(shè)定的匹配閾值Fmax時,表明此經(jīng)歷是機器人先前遇到的場景。當(dāng)F > Fmax時,創(chuàng)建新的經(jīng)歷Ei。通過兩個經(jīng)歷的位置變化能對機器人位姿做進一步修正。經(jīng)歷位置變化如式(11)

其中, λ為位置校正參數(shù);Na為 經(jīng)歷Ei到其他經(jīng)歷的 鏈接數(shù);Nb為其他經(jīng)歷到經(jīng)歷Ei的鏈接數(shù)。
自組織圖(SOM)是一種無監(jiān)督的競爭網(wǎng)絡(luò),該網(wǎng)絡(luò)通過競爭學(xué)習(xí)規(guī)則調(diào)整連接權(quán)重,實現(xiàn)神經(jīng)元有規(guī)律的形成某種輸入空間的映像。但是必須預(yù)先定義尺寸圖和平面圖結(jié)構(gòu)成為傳統(tǒng)SOM網(wǎng)絡(luò)更進一步發(fā)展的限制。傳統(tǒng)的SOM網(wǎng)絡(luò)在訓(xùn)練初始化之前要進行預(yù)定義結(jié)構(gòu)和學(xué)習(xí)參數(shù)的分配,即訓(xùn)練前必須確定地圖大小(神經(jīng)元數(shù)目)和拓?fù)漤樞?維度和鏈接結(jié)構(gòu))。實際上,生成具有預(yù)定尺寸的多個特征圖十分耗時,并且這種預(yù)先定義的地圖是基于主觀標(biāo)準(zhǔn)評估生成的,這使得SOM網(wǎng)絡(luò)不適合在線學(xué)習(xí)和處理非固定數(shù)據(jù)集。為了解決這個限制,提出了SOM網(wǎng)絡(luò)的動態(tài)變體GSOM。與傳統(tǒng)SOM網(wǎng)絡(luò)不同的是,GSOM不是被限制在一個預(yù)定數(shù)量的神經(jīng)元地圖中,它有著靈活的結(jié)構(gòu),并且相較于原始的SOM其非線性學(xué)習(xí)能力更強,在低維特征空間中映射更少的神經(jīng)元。
3.1.1 GSOM網(wǎng)絡(luò)結(jié)構(gòu)
GSOM的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,不同于一般神經(jīng)網(wǎng)絡(luò),自組織競爭網(wǎng)絡(luò)擁有輸入層、競爭層與輸出層3層結(jié)構(gòu),競爭層被隱藏。因為是增長的自組織網(wǎng)絡(luò),又把輸入層稱為GSOM層。GSOM層通常由4個神經(jīng)元組成矩形點陣,這樣可以保證所有神經(jīng)元在初始化階段具有相似的輸入條件。

圖3 GSOM網(wǎng)絡(luò)結(jié)構(gòu)
輸入單元的個數(shù)等于輸入的維數(shù),為m個,輸出單元的個數(shù)為n個,輸出可以形成1維、2維或多維結(jié)構(gòu)。輸入單元和輸出單元之間的連接權(quán)值表示連接狀態(tài),每個連接權(quán)重的值稱為連接權(quán)值,各連接權(quán)值通過競爭學(xué)習(xí)規(guī)則調(diào)整。為清晰考慮,增長前的連接權(quán)重用實線表示,增長后的連接權(quán)重用虛線表示。其中, xk=[x1,x2,···,xm]為輸入單元。wk=[w1i,w2i,···,wmi](i=1,2,···,n)為 權(quán) 重 向 量,分 別與輸出層各個輸出單元相連。
3.1.2 GSOM學(xué)習(xí)算法
GSOM學(xué)習(xí)算法嚴(yán)格遵守競爭學(xué)習(xí)規(guī)則,在這一競爭過程中,1個時刻只會有1個輸出神經(jīng)元被激活,這個被激活的神經(jīng)元一般稱為競爭獲勝單元或者最佳匹配單元。當(dāng)1個激活神經(jīng)元產(chǎn)生時,其他的神經(jīng)元處于抑制狀態(tài),所以這種競爭學(xué)習(xí)規(guī)則又稱為“贏者通吃”(Winner-Take-All, WTA)。學(xué)習(xí)流程如表1所示。

表1 GSOM學(xué)習(xí)算法
(1)網(wǎng)絡(luò)初始化。
(a)權(quán)重初始化:避免學(xué)習(xí)樣本的輸入信號對學(xué)習(xí)速率的影響,對當(dāng)前網(wǎng)絡(luò)學(xué)習(xí)樣本的輸入模式向量 X和隱藏競爭層中各神經(jīng)元對應(yīng)的權(quán)重向量Wj( 對應(yīng)j 神 經(jīng)元)全部進行歸一化,使得X和Wj模為1。
(b)施加鄰域約束:采用鄰域約束建立一個以獲勝SOM神經(jīng)元為中心的優(yōu)勝拓?fù)溧徲?。落在這個鄰域內(nèi)的所有神經(jīng)元需要重新更新連接權(quán)值。采用高斯函數(shù)來表達(dá)這一鄰域約束,鄰域函數(shù)為式(12)

其中, ri和 rj分 別為輸出單元i和 勝出單元j 的位置;σ為鄰域范圍。
(2)尋找最佳匹配單元。
(a)輸入單元到輸出單元的連接權(quán)重:每一個連接權(quán)重的值稱為權(quán)值,這里采用歐氏距離來判斷對應(yīng)連接權(quán)重的權(quán)值大小,計算公式為式(13)

其中, xi為單元i的 輸入;wij為加權(quán)后單元i到單元j的連接權(quán)重;m 為輸入單元的個數(shù)。
(b)確定最佳匹配單元即勝出單元:采用最小相似性度量來確定勝出的單元,即選定輸出單元j?,使其滿足j?=min dj,即為最佳匹配單元。
(3)調(diào)節(jié)神經(jīng)元權(quán)重。
更新勝出單元 j?的鄰域內(nèi)所有單元的連接權(quán)重:給出更新規(guī)則為式(14)

其中, j∧∈j?的鄰域;η (t) 為學(xué)習(xí)因子;0 ≤i ≤M -1。該更新規(guī)則意味著此方法可以產(chǎn)生由獲勝者表示的典型連接權(quán)重以及與獲勝者相應(yīng)的相鄰權(quán)重。
(4)調(diào)節(jié)鄰域大小。

科學(xué)家在對鼠類海馬體椎體神經(jīng)細(xì)胞的活動率進行研究時發(fā)現(xiàn),存在于海馬體CA1和CA3區(qū)的一些椎體神經(jīng)細(xì)胞具有復(fù)雜的尖峰電位,其放電行為存在明顯的位置選擇性:即當(dāng)大鼠到達(dá)空間中一個特定位置時,海馬體內(nèi)某個神經(jīng)細(xì)胞的活動率會顯著增加,處于一種興奮狀態(tài),到訪其他位置時,會有另外的細(xì)胞顯示興奮狀態(tài)。O’Keefe等人將這種具有明顯 “位置偏好”特性的神經(jīng)細(xì)胞稱為“位置細(xì)胞”(place cell)。這種位置細(xì)胞的位置偏好特性還有著明顯的范圍特征,即大鼠在到達(dá)空間特定位置時,大腦海馬體內(nèi)某個位置細(xì)胞的放電率呈現(xiàn)最大化,而周圍的細(xì)胞沒有或很少有放電活動。位置細(xì)胞對特定位置的放電稱為該細(xì)胞的位置野(place field)或放電野(firing field)。如圖4所示,越靠近中心位置,放電率越高,隨著放電半徑的增大,放電率逐漸降低。

圖4 位置細(xì)胞放電模擬圖
用2維高斯公式表示第n 個位置細(xì)胞在所處空間位置ρ 下的放電率為式(15)

其中,pn是 第n 個 位置細(xì)胞的參考位置,α 是位置細(xì)胞放電率調(diào)整參數(shù)。
在拓?fù)涞貓D中建立環(huán)境路標(biāo),并將位置細(xì)胞的放電模型映射到拓?fù)涞貓D的2維空間中,通過路標(biāo)識別得到經(jīng)過位置編碼后的位置細(xì)胞放電率。移動機器人位于真實空間下第i個位置的放電率如式(16)

其中,( x,y)為 位置細(xì)胞在空間中的真實位置,(xi,yi)為 位置細(xì)胞的參考位置。
通過O’Keefe等人的實驗可以發(fā)現(xiàn),自由活動的大鼠海馬體內(nèi)某些位置細(xì)胞的興奮程度具有很強的位置選擇性,在某個具體位置時,位置細(xì)胞呈現(xiàn)最大的放電率。將多個對應(yīng)位置進行連線可得到機器人在空間中的認(rèn)知路徑,即位置細(xì)胞能夠編碼當(dāng)前對應(yīng)位置的位置信息,多個位置細(xì)胞編碼的位置信息能夠編碼機器人的真實空間軌跡。
基于此,本文提出一種融合GSOM神經(jīng)網(wǎng)絡(luò)和位置細(xì)胞的SLAM算法(后文稱“改進VP-SLAM”),將GSOM映射的環(huán)境信息與位置細(xì)胞表征的位置信息進行關(guān)聯(lián),并將該算法應(yīng)用于VP-SLAM模型中,建立如圖5所示的改進SLAM模型。環(huán)境拓?fù)湫畔⒌慕⑦^程包括以下4個步驟:

(2)將訓(xùn)練樣本輸入至改進GSOM神經(jīng)網(wǎng)絡(luò)進行競爭學(xué)習(xí),輸出與位置細(xì)胞放電率關(guān)聯(lián)的獲勝神經(jīng)元;

圖5 融合GSOM的VP-SLAM模型
(3)計算獲勝神經(jīng)元與GSOM網(wǎng)絡(luò)數(shù)據(jù)集的位置誤差,若小于一定閾值,則當(dāng)前位置細(xì)胞編碼的位置信息與機器人位置一致,否則,記錄當(dāng)前機器人位置坐標(biāo)加入GSOM網(wǎng)絡(luò)數(shù)據(jù)集;
(4)在GSOM網(wǎng)絡(luò)中通過鄰域約束尋找鄰接神經(jīng)元并與其建立鄰接關(guān)系,繪制環(huán)境拓?fù)涞貓D,編碼機器人的真實運動軌跡。
采集一個未知空間區(qū)域的環(huán)境位置信息,以視覺傳感器運動起點在地面的投影點所在位置為坐標(biāo)原點,按20:1比例映射至GSOM網(wǎng)絡(luò)學(xué)習(xí)樣本中,其中學(xué)習(xí)樣本中共有2維區(qū)域π 上1100個樣本點,即GSOM網(wǎng)絡(luò)的輸入個數(shù)為m=1100,可運動區(qū)域大小為10 m×10 m的2維環(huán)境。運動區(qū)域內(nèi)環(huán)境樣本分布如圖6所示,獲得樣本點數(shù)據(jù)后用本文提出的基于GSOM算法建立環(huán)境的拓?fù)涞貓D。通過度量最小歐氏距離確定勝出單元,根據(jù)勝出單元與給定樣本的誤差確定是否增加神經(jīng)元,同時更新勝出單元鄰域內(nèi)所有單元的連接權(quán)重。
樣本的學(xué)習(xí)是一個不斷調(diào)參的過程,通過對神經(jīng)網(wǎng)絡(luò)參數(shù)的調(diào)整,選定合適的參數(shù)(神經(jīng)元連接強度為[0 1],輸出維度為2,步長為10:30:100,學(xué)習(xí)率0.06)重新訓(xùn)練神經(jīng)網(wǎng)絡(luò),得到合適的環(huán)境拓?fù)涞貓D。如圖7所示,圖7中紅色‘·’為GSOM神經(jīng)網(wǎng)絡(luò)映射在2維空間的神經(jīng)元,兩點間的連線代表兩個神經(jīng)元的連接權(quán)重。生成的拓?fù)涞貓D用了342個神經(jīng)元表示了1100個環(huán)境樣本點,在保持樣本數(shù)據(jù)拓?fù)漤樞虻耐瑫r,十分逼近樣本的分布結(jié)構(gòu)。

圖6 環(huán)境樣本分布
在如圖7環(huán)境拓?fù)涞貓D的實驗基礎(chǔ)上,通過給定不同位置細(xì)胞間隔R研究位置細(xì)胞放電模型對機器人定位精度的影響,仿真參數(shù)設(shè)置如下:運動空間為10 m×10 m,定位周期為2 s,定位方向任意,每個定位周期內(nèi)機器人保持勻速運動,不同定位周期內(nèi)機器人運行速度在0.5~2 m/s之間任意選擇。訓(xùn)練時間相同的情況下,分析間隔R對機器人定位效果的影響。圖8為給定不同位置細(xì)胞間隔的情況下得到的位置細(xì)胞對機器人位置定位的結(jié)果。從圖8(a)和圖8(b)的對比可以得知,當(dāng)R越小時,記錄機器人的運動軌跡需要的位置細(xì)胞數(shù)量越多,定 位的精度也越高。

圖7 環(huán)境拓?fù)涞貓D
實驗環(huán)境選取如圖9(a)所示的會議室,大小5 m×7 m,圖9(b)中陰影部分為發(fā)言席、會議桌、椅子等,紅色五角星為起點,紅色圓圈為終點,虛線為機器人漫游軌跡。a, b, c, d分別為機器人在漫游過程中實際到達(dá)的位置。移動機器人硬件平臺如圖10所示,通過相機采集場景信息,將獲取的環(huán)境樣本點信息和機器人自運動信息上傳到上位機進行處理,實現(xiàn)運行過程中數(shù)據(jù)獲取和實時計算,并利用MATLAB進行后續(xù)實驗仿真。其中相機分辨率為640×480,輸出頻率為30 Hz,實驗中移動機器人勻速順時針行駛。

圖8 不同間隔R下的定位軌跡

圖9 實驗環(huán)境

圖10 移動機器人硬件平臺
在保持實驗場景布局不變的情況下,將本文改進算法與文獻(xiàn)[21]算法進行對比。兩種算法的位姿細(xì)胞活性表征如圖11所示,左側(cè)為機器人在不同時刻所處位置獲得的4幅局部場景圖像,中間為原始VP-SLAM模型對應(yīng)機器人4個位置的位姿細(xì)胞活性表征圖,右側(cè)為改進VP-SLAM模型對應(yīng)機器人4個位置的位姿細(xì)胞活性表征圖。對比兩種算法在a,b兩點分別對應(yīng)的位姿細(xì)胞活性表征圖可以發(fā)現(xiàn),當(dāng)機器人從a運行到b過程中,兩種模型均能在一定誤差范圍內(nèi)實現(xiàn)定位,且都能實現(xiàn)由a到b位姿細(xì)胞網(wǎng)絡(luò)活性轉(zhuǎn)移的表征。當(dāng)機器人處于c點時,原始VP-SLAM模型的位姿細(xì)胞網(wǎng)絡(luò)活性表征的位置與實際位置開始產(chǎn)生較大偏差,而改進VP-SLAM模型對于機器人的定位依然在一定誤差范圍內(nèi)。同時隨著兩種模型的持續(xù)運行,機器人從c運行到d時,兩種模型的位姿細(xì)胞網(wǎng)絡(luò)活性轉(zhuǎn)移表征依然能夠體現(xiàn),原有模型的定位誤差進一步增加,相比之下,改進模型產(chǎn)生的定位誤差雖有一定程度增大但仍小于原始模型,驗證改進模型在實驗場景下有效地提高了機器人的定位精度。

圖11 兩種VP-SLAM模型位姿細(xì)胞活性表征過程
基于上述實驗分析中定位誤差的描述,機器人圍繞實驗場景運行10圈,選取10個測試點共獲得20組定位數(shù)據(jù)(數(shù)據(jù)來源為環(huán)境拓?fù)涞貓D的2維數(shù)據(jù))為定位樣本,通過對樣本數(shù)據(jù)進一步分析得到如表2所示的模型定位誤差表。表中對比了兩種模型的最大絕對誤差、平均誤差和模型準(zhǔn)確率,在準(zhǔn)確率方面,融合后的模型雖然最大只有2.82%的提升,但在最大絕對誤差和平均誤差方面,相比于原始VP-SLAM模型,改進后的模型的兩種誤差減少了近1/2。驗證了顯示改進模型的定位性能要優(yōu)于原始VP-SLAM模型。
移動機器人圍繞實驗場景進行6圈場景采集,加入GSOM神經(jīng)網(wǎng)絡(luò)的VP-SLAM模型與原始VP-SLAM模型的性能對比如圖12所示,圖12(a)和圖12(b)分別為原始VP-SLAM模型和本文算法模型的局部場景模板數(shù)。由圖12可以看出,本文算法完成場景認(rèn)知生成的局部場景模板比原始VP-SLAM模型模板數(shù)目要少。由于融合了GSOM算法,使得融合后的模型只需更少的局部場景模板數(shù)目就可以完成對實驗場景的認(rèn)知,驗證了本文提出的融合GSOM的VP-SLAM模型具備更快認(rèn)知實驗場景及進行場景重定位的能力。

表2 兩種模型的定位誤差

圖12 兩種模型的模板匹配
在數(shù)據(jù)處理的實時性上,改進模型與原有模型的對比如圖13所示。藍(lán)色代表改進模型的CPU處理時間,紅色代表原有模型的CPU處理時間。相比于原始VP-SLAM模型,改進后的VP-SLAM模型CPU處理時間更少,處理數(shù)據(jù)的效率更高,這是因為認(rèn)知實驗場景需要的局部場景模板數(shù)目更少,一定程度上降低了計算量,緩解了計算資源,使得改進VP-SLAM模型比原始VP-SLAM模型處理數(shù)據(jù)使用的時間更少。驗證了改進后VP-SLAM模 型更能契合數(shù)據(jù)處理實時和高效的要求。

圖13 兩種模型的CPU處理時間

圖14 兩種模型的軌跡對比圖
原始VP-SLAM模型與改進VP-SLAM模型在實驗場景中構(gòu)建的經(jīng)歷地圖如圖14所示,相比于原始VP-SLAM模型,改進后的VP-SLAM模型構(gòu)建的經(jīng)歷地圖更接近機器人運行的實際路徑,有效地提高了地圖的精確性。從圖14還可以發(fā)現(xiàn),在遇到相同的場景時改進后的模型可以更快地實現(xiàn)閉環(huán)檢測,校正機器人位姿,驗證了改進VP-SLAM模型在實驗場景的魯棒性和快速性。
基于對嚙齒類動物大腦導(dǎo)航機制的認(rèn)識,本文提出一種基于GSOM神經(jīng)網(wǎng)絡(luò)的移動機器人仿生定位算法。本文通過GSOM神經(jīng)網(wǎng)絡(luò)拓?fù)鋽U展特性和自組織增長特性,結(jié)合鼠腦海馬體位置細(xì)胞的放電機理得到移動機器人的位置響應(yīng),并基于位置響應(yīng)特性進行移動機器人的高精度定位研究。實驗結(jié)果表明,相較于原始VP-SLAM模型,改進VP-SLAM模型具有更高效的位置估計能力,使機器人基于環(huán)境認(rèn)知提高對自身所處位置的精度定位。本文提出的算法建立在生物導(dǎo)航的認(rèn)知機理上,增加了生物認(rèn)知地圖在移動機器人定位領(lǐng)域的應(yīng)用。后續(xù)將會在進一步提高定位精度的前提下展開對移動機器人路徑規(guī)劃方面的研究。