錢 夔 宋愛國 章華濤 熊鵬文
(東南大學儀器科學與工程學院,南京210096)
在機器人研究中,反應式導航是提高移動機器人在未知環(huán)境中的實時性與靈活性的重要手段.目前已提出了基于模糊控制[1-2]、神經(jīng)網(wǎng)絡(luò)[3-4]的移動機器人反應式導航方法來構(gòu)建移動機器人的反應式導航控制器.神經(jīng)網(wǎng)絡(luò)因容錯性強與具有自適應學習的特點,可以更好地在非結(jié)構(gòu)化環(huán)境下進行感知信息的分析與融合[5],而模糊控制具有邏輯推理能力,對處理結(jié)構(gòu)化知識更為有效.
然而反應式導航缺乏對環(huán)境的全局認識,易使機器人陷入局部陷阱而無法到達終點.針對這一問題,目前提出的有效方法有行為融合、虛目標[6]、沿輪廓跟蹤[7]等方法.但行為融合方法需要計算各行為的權(quán)值,增加了系統(tǒng)復雜度; 沿輪廓跟蹤方法受障礙物形狀、大小影響較大; 虛目標在復雜環(huán)境下不易去除虛擬子目標及易產(chǎn)生冗余路徑.文獻[8]采用改進的虛目標方法解決復雜陷阱區(qū)域中路徑往復及路徑冗余問題,但其虛目標去除條件計算仍極為復雜.
本文將神經(jīng)網(wǎng)絡(luò)與模糊控制的優(yōu)點相結(jié)合,融合神經(jīng)網(wǎng)絡(luò)[9]的自學習能力與模糊控制的模糊推理能力,提出基于自適應模糊神經(jīng)網(wǎng)絡(luò)的機器人導航控制器.另外,為解決反應式導航中的復雜陷阱問題,提出了一種改進型虛目標方法,該方法在較好地完成了未知環(huán)境下的移動機器人路徑規(guī)劃的同時,有效減少了虛目標計算的復雜性.
本文使用美國ActivMedia Robotics 公司開發(fā)的Pioneer3 機器人為實驗平臺,配置16 路超聲傳感器檢測障礙物距離,傳感器均勻分布于機器人本體周圍(見圖1).為避免各傳感器相互干擾,超聲傳感器分組依次循環(huán)啟動,任何緊密相鄰的傳感器不會同時工作.在不考慮機器人后退運動的情況下,本文僅使用機器人前端8 路傳感器信息.為避免鏡面反射造成的測量誤差,這些傳感器被分為左(0~3 號傳感器)、右(4~7 號傳感器)2 組,每組中取最小測量值作為這一方向的障礙物距離.
圖1 超聲傳感器分布圖
機器人的當前坐標為(xr,yr)[10],目標點的坐標為(xt,yt).如圖2所示,E 是機器人(xr,yr)指向目標點(xt,yt)的矢量,矢量E 的模與方向角分別為
式中,En為機器人在目標距離勢場中的勢能;φn為當前機器人與目標點的夾角,根據(jù)機器人當前位置不斷修正,始終指向目標位置;下標n 為時刻.
圖2 移動機器人運動學模型
在反應式導航[11]中,移動機器人根據(jù)傳感器信息進行局部路徑規(guī)劃.一般分為趨向目標行為與避障行為.在行進中,若周圍沒有障礙物,機器人朝目標點以φ 角度前進.當前方有障礙物時,則需人為加入一個擾動噪聲δ,機器人需無碰撞趨向目標,由此建立如下等式:
式中,φn為移動機器人預瞄準方向;k 為比例系數(shù);δn為加入的擾動噪聲大小,其值由自適應模糊神經(jīng)網(wǎng)絡(luò)控制器根據(jù)機器人當前所處的環(huán)境確定.
當δn=0 時,機器人朝向目標位置前進; 當δn≠0 時,移動機器人將按照附加擾動偏移后的目標方向前進.
移動機器人在導航任務中的速度由機器人本體與周圍障礙物之間的距離決定.當在空闊地行駛時,機器人全速前進,當遇到障礙物時減速行駛.其計算公式如下:
式中,v 為機器人速度;d1為機器人距障礙物距離;d2為機器人緊急停止距離; β 為速度比例系數(shù);maxV 為設(shè)定的機器人最大行駛速度.
本文利用神經(jīng)網(wǎng)絡(luò)引入學習機制,為模糊控制器自動提取模糊規(guī)則及模糊隸屬函數(shù),使整個系統(tǒng)成為自適應模糊神經(jīng)網(wǎng)絡(luò)系統(tǒng).其樣本數(shù)據(jù)是基于實際訓練的數(shù)據(jù),客觀地反映了輸入?yún)?shù)與待預測變量的非線性關(guān)系,減少了邏輯推理工作量.采用的自適應模糊神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)為5 層ANFIS 網(wǎng)絡(luò),構(gòu)建Takagi-Sugeno 型模糊推理系統(tǒng).其結(jié)構(gòu)如圖3所示.為降低系統(tǒng)復雜性,本文選擇2 輸入1輸出系統(tǒng),輸入數(shù)據(jù)為移動機器人左右兩邊傳感器采集到的障礙物距離信息,輸出為根據(jù)當前機器人所處環(huán)境增加的擾動角度,值域為[-20°,20°].5 層ANFIS 網(wǎng)絡(luò)具體結(jié)構(gòu)如圖3所示.
圖3 自適應模糊神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)
第1 層為輸入層,該層各個節(jié)點直接與輸入向量的各分量xi連接,將輸入值x={x1,x2}T傳送到下一層.本文中節(jié)點數(shù)為2.
第2 層中的每個節(jié)點代表一個語言變量值,該層用來計算各輸入分量屬于各語言變量值模糊集合的隸屬函數(shù)uji,為了提高平滑度,本文選取高斯函數(shù)作為隸屬度函數(shù).以u11點為例,u11 =exp(-(x1-c11)2/σ211),c11,σ11分別為隸屬函數(shù)的中心和寬度.
第3 層中的每一個節(jié)點代表一條模糊規(guī)則,以匹配模糊規(guī)則的前件,該層將計算出每條規(guī)則的適用度.
第4 層主要是歸一化計算:
第5 層為輸出層,完成去模糊化.去模糊化方法一般有平均最大隸屬度法、中位數(shù)法、加權(quán)平均法等,這里選用加權(quán)平均法去模糊化.輸出量為對機器人增加的擾動角度.
模糊神經(jīng)網(wǎng)絡(luò)系統(tǒng)利用BP 反向傳播算法和最小二乘法來完成對輸入/輸出數(shù)據(jù)對的建模.該方法能夠從數(shù)據(jù)集中提取相應信息(模糊規(guī)則),使得生成出來的Takagi-Sugeno 型模糊推理系統(tǒng)能夠更好地模擬出希望或是實際的輸入/輸出關(guān)系.模糊神經(jīng)系統(tǒng)在學習時,根據(jù)系統(tǒng)實際輸出值與期望輸出值可以計算出學習誤差,再通過誤差反向傳播對系統(tǒng)參數(shù)進行調(diào)整.其調(diào)整的系統(tǒng)參數(shù)主要為權(quán)值w、高斯函數(shù)中心c 與寬度σ.設(shè)學習誤差函數(shù)為
式中,ti與yi分別為期望輸出與實際輸出.
學習過程中對參數(shù)的調(diào)整方法為
式中,k 為迭代次數(shù); λ >0 為學習速率,本文中λ取0.1.
由于反向傳播算法需要用到各個神經(jīng)元[12]傳輸函數(shù)的梯度信息,當神經(jīng)元的輸入太大時,相應的該點自變量梯度值就過小,無法順利實現(xiàn)權(quán)值和閾值的調(diào)整.因此在進行訓練前,需要對輸入?yún)?shù)進行歸一化處理,以保證收斂性.
本文訓練的自適應神經(jīng)模糊系統(tǒng)2 輸入隸屬度函數(shù)均為高斯函數(shù),其輸入隸屬度函數(shù)個數(shù)均為5,訓練次數(shù)為400.
如圖4所示,機器人距左邊障礙物距離取分布在機器人前端的超聲傳感器0~3 號中最小測量值.機器人距右邊障礙物距離取分布在機器人前端的超聲傳感器4~7 號中最小測量值.圖4(b)為訓練后的隸屬函數(shù).輸出結(jié)果為根據(jù)當前機器人所處環(huán)境增加的擾動角度,值域為[-20°,20°],是模糊量,非量化值.
圖5為神經(jīng)網(wǎng)絡(luò)訓練誤差,在訓練400 次后,誤差值已降至0.073°以下.
圖4 訓練前后輸入隸屬度函數(shù)
圖5 訓練誤差
反應式導航可根據(jù)機器人當前的環(huán)境信息采取相應的動作,提高了機器人在未知環(huán)境下的實時性與靈活性.但反應式導航只能達到局部最優(yōu),不能累積達到全局最優(yōu),因而在復雜環(huán)境下易陷入路徑循環(huán)反復狀態(tài),即陷阱狀態(tài).機器人在朝目標點移動時,經(jīng)常遇到的障礙物情況有4 種,如圖6所示.在導航過程中,機器人所處環(huán)境都可以由以上4 種狀態(tài)組合構(gòu)成.
圖6 機器人導航任務中的幾種典型環(huán)境
以圖6(b)為例,機器人朝右上方目標移動,根據(jù)式(3)確定移動機器人預瞄準方向.其中δn是本文構(gòu)建的自適應模糊神經(jīng)網(wǎng)絡(luò)系統(tǒng)輸出,值域為[-20°,20°],負數(shù)表示機器人向右邊擾動量的增加,正數(shù)表示機器人向左邊擾動量的增加.機器人越靠近障礙物,δn絕對值越大.當前方?jīng)]有障礙物時,δn=0,移動機器人預瞄準方向φn=φn,當機器人逐漸接近障礙物時,φn隨之減小,在距障礙物某一距離時φn減小為0,即機器人沿著障礙物行進;當機器人運動至目標的右下方時,φn值域為[90°,180°),本文中k 取9 時,沿φn方向仍能繼續(xù)前進.可以得出機器人只要在前進方向上不同時被2 個方向的障礙物阻擋時,總能到達目標點,這種情況下無需建立虛目標.
為減小傳統(tǒng)虛目標方法可能會造成的路徑冗余問題及復雜的條件計算,本文提出虛目標遞變的方法.即虛目標坐標根據(jù)移動機器人當前所處位置進行小范圍調(diào)整,以期能擺脫陷阱狀態(tài),當在朝虛目標行進方向受阻時,再對虛目標進行調(diào)整,最終完成對目標點的導航.本方法優(yōu)勢在于只要在機器人行進方向上不同時出現(xiàn)2 個方向的障礙阻擋,機器人都能沿φn=φn+kδn方向通過,若同時出現(xiàn)2個方向的墻體障礙物阻擋,根據(jù)機器人當前所在位置決定虛目標的坐標,無需使用傳統(tǒng)方法進行角度換算及去除虛目標等復雜運算,給設(shè)計人員減輕了負擔,其中δn需要自適應模糊神經(jīng)網(wǎng)絡(luò)控制器輸出.
本文中虛目標的建立以優(yōu)先選擇機器人可能逃脫陷阱狀態(tài)的路徑為原則.如圖7所示,當機器人向目標點運動時,如果前方不同時出現(xiàn)2 個方向上的墻體障礙物,機器人能自行調(diào)整角度無碰撞趨向目標點.當前方出現(xiàn)2 個方向上的墻體障礙物,機器人應盡量越過其中一個障礙物,且方向與目標點方位不同.以圖7(a)為例,目標點在機器人右上方,機器人朝右上方移動,當右前方同時出現(xiàn)墻體障礙物后,機器人優(yōu)先選擇可能逃脫陷阱狀態(tài)的路徑,即越過右方墻體障礙物,則虛目標建立在機器人右下方.圖7(b)表示目標點在機器人右下方時,虛目標建立在機器人左下方,以此類推得到機器人建立虛目標規(guī)則.
圖7 虛目標建立規(guī)則
本文使用美國ActivMedia Robotics 公司開發(fā)的Pioneer3 機器人為實驗平臺,搭建測試環(huán)境(見圖8).
圖8 實驗環(huán)境
圖9 多U 形墻體障礙物環(huán)境
如圖9所示,當移動機器人從起點向目標移動時,面對第1 堵墻壁時沿φn方向前進,遇到第2 堵墻時,通過建立虛目標方式,引導機器人朝可能存在出路的方向前進,以此類推,直至機器人成功到達目標點.
圖10為更加復雜的多U 形障礙物環(huán)境,移動機器人根據(jù)自適應模糊神經(jīng)網(wǎng)絡(luò)控制器的輸出實時調(diào)節(jié)機器人預瞄準方向,并成功到達目標點.
圖10 復雜多U 形墻體障礙物環(huán)境
文獻[6]提出基于目標切換的方法來解決反應式導航中的陷阱問題,設(shè)定陷阱狀態(tài)檢測條件和脫離條件,當檢測條件滿足時,引入虛擬子目標代替實際目標進行局部路徑規(guī)劃,直到脫離條件滿足并恢復實際目標.但在復雜環(huán)境如多U 形區(qū)域,多次引入虛目標后,最終的虛目標與實際目標重合,文獻[6]中的脫離條件“發(fā)現(xiàn)開放點”會導致實際目標沒有在正確的位置恢復,從而無法真正脫離陷阱區(qū)域.文獻[8]采用目標方向變化作為虛目標引入、去除條件,并建立目標棧判斷陷阱區(qū)域,從而在合理的位置恢復實際目標,使機器人有效脫離復雜陷阱,但引入條件與去除條件由多規(guī)則限定.以圖10為例,機器人在復雜多U 形障礙物環(huán)境中導航,文獻[8]對于復雜多U 形陷阱環(huán)境,虛目標引入條件多次出現(xiàn),在原有虛目標未去除之前,新的虛目標產(chǎn)生,形成先入后出的目標棧,棧底為實際目標.機器人需不斷計算虛目標建立次數(shù)及建立條件,根據(jù)棧的狀態(tài)得到機器人當前位置信息,計算復雜.
本文優(yōu)勢在于只要在機器人行進方向上不同時出現(xiàn)2 個方向的障礙物阻擋,機器人都能沿φn方向趨向目標點.如圖9、圖10所示,若出現(xiàn)2 個方向的阻擋,根據(jù)機器人優(yōu)先選擇可能逃脫陷阱狀態(tài)的路徑為原則決定虛目標的坐標,無需使用傳統(tǒng)方法進行角度換算及去除虛目標等復雜運算,給設(shè)計人員減輕了負擔,且總能沿著可能到達目標點的方向移動,有效避免了路徑冗余.
由圖9、圖10可見,該方法可以幫助機器人在全局信息未知的復雜環(huán)境中導航,趨近目標點的過程中能有效避障,無冗余路徑產(chǎn)生,且軌跡平滑,具有實用性.
本文將神經(jīng)網(wǎng)絡(luò)與模糊控制的優(yōu)點相結(jié)合,融合神經(jīng)網(wǎng)絡(luò)的自學習能力與模糊控制的模糊推理能力,提出基于自適應模糊神經(jīng)網(wǎng)絡(luò)的機器人導航控制器,構(gòu)成2 輸入1 輸出的Takagi-Sugeno 型模糊推理系統(tǒng),減少了邏輯推理工作量.輸入為機器人距左右兩邊障礙物距離信息,輸出為機器人的擾動角度.同時,為了解決傳統(tǒng)反應式導航中的復雜陷阱問題,提出了一種改進型虛目標方法,機器人能沿φn方向趨向目標點,利用簡單的虛目標建立規(guī)則使機器人能夠擺脫陷阱狀態(tài),降低了計算復雜度.
References)
[1]Chiu S L.Fuzzy model identification based on duster estimation[J].Journal of Intelligent and Fuzzy systems,1994,2(3): 267-278.
[2]Wang M,Liu J N K.Fuzzy logic-based real-time robot navigation in unkown environment with dead ends[J].Robotics and Autonomous Systems,2008,56(7):625-643.
[3]喬俊飛,樊瑞元,韓紅桂,等.機器人動態(tài)神經(jīng)網(wǎng)絡(luò)導航算法的研究和實現(xiàn)[J].控制理論與應用,2010,27(1): 111-115.
Qiao Junfei,F(xiàn)an Ruiyuan,Han Honggui,et al.Research and realization of dynamic neural network navigation algorithm for mobile robot[J].Control Theory and Application,2010,27(1): 111-115.(in Chinese)
[4]Er M J,Gao Y.Robust adaptive control of robot manipulators using generalized fuzzy neural networks[J].IEEE Transactions on Industrial Electronics,2003,50(3): 620-628.
[5]Wang J S,Lee C S G.Structure and learning in selfadaptive neural fuzzy inference systems[J].International Journal of Fuzzy Systems,2000,2(1): 12-22.
[6]Xu W,Tso S.Sensor-based fuzzy reactive navigation of a mobile robot through local target switching [J].IEEE Transactions on Systems,Man and Cybernetics,1999,29(3): 451-459.
[7]Toibero J M,Roberti F,Carelli R.Stable contour-following control of wheeled mobile robot[J].Robotica,2009,27(1): 1-12.
[8]劉宏林,羅楊宇,李成榮.基于模糊控制器的未知環(huán)境下移動機器人導航[J].計算機仿真,2011,28(1):201-205.
Liu Honglin,Luo Yangyu,Li Chengrong.Fuzzy controller for mobile robot navigation under unknown environments[J].Computer Simulation,2011,28(1):201-205.(in Chinese)
[9]István E,Gábor H.Artificial neural network based mobile robot navigation[C]//Proceedings of 6th IEEE International Symposium on Intelligent Signal Processing.Budapest,Hungary,2009: 241-246.
[10]張惠娣,劉士榮,俞金壽.基于動力學系統(tǒng)方法的自主移動機器人行為設(shè)計[J].華東理工大學學報: 自然科學版,2008,34(6): 843-849.
Zhang Huidi,Liu Shirong,Yu Jinshou.Designing behaviors of autonomous mobile robots based on dynamical system approach[J].Journal of East China University of Science and Technology: Natural Science Edition,2008,34(6):843-849.(in Chinese)
[11]蔡自興,賀漢根,陳虹.未知環(huán)境中移動機器人導航控制研究的若干問題[J].控制與決策,2002,17(4):385-390.
Cai Zixing,He Hangen,Chen Hong.Some issues for mobile robots navigation under unknown environments[J].Control and Decision,2002,17(4): 385-390.(in Chinese)
[12]王永駿,涂鍵.神經(jīng)元網(wǎng)絡(luò)控制[M].北京:機械工業(yè)出版社,1998:204-207.