曹宇杰,鄧本再,詹一佳
(長沙理工大學 電氣與信息工程學院,湖南 長沙 410114)
足球機器人是目前機器人研究的熱點領域之一。由于計算的復雜性、控制的實時性要求、環境的不確定因素,尤其是在包含多個障礙的復雜環境中,路徑規劃一直以來都是機器人運動控制中的難點[1],國內外在機器人動態路徑規劃方面已經做了大量的研究工作[2-3]。路徑規劃就是在有障礙物的環境下找到一條由給定點到達目標點的最優路徑,使機器人能夠繞過障礙物,不與障礙物相碰撞[4]。常用的路徑規劃方法可分為傳統方法,如柵格法,自由空間法和人工勢場法[5]等,以及智能方法,如遺傳算法,模糊邏輯和神經網絡等[6-7]。針對Robocup比賽中足球機器人的碰撞情況復雜,障礙物包括本方和對方的足球機器人的情況[8],提出了一種針對Robocup中型組比賽中處于持球狀態機器人的基于模糊神經網絡的局部路徑規劃方法。
如圖1所示,機器人從給定的絕對位置PV以速度VV向給定的目標絕對位置Pr移動,而障礙物從絕對位置p(Obs)開始,以V(Obs)速度移動。不斷更新機器人的直角坐標系T中機器人的位置與目標的位置,并將P(Obs)與V(Obs)轉換為機器人極坐標系中的相對位置S(Obs)與相對速度U(Obs)。機器人通過模糊推斷來判斷其與敵方機器人之間的靜態危險等級α(Obs)以及動態危險等級β(Obs)。然后機器人根據決策表中的規則來確定避障方向O(Obs),最終導向矢量M是由矢量O與T組成的。算法的決策框圖如圖2所示。

圖1 機器人避障模型Fig.1 Robot obstacle avoidance model

圖2 程序決策框圖Fig.2 The decision algorithm block diagram
機器人通過全景攝像機獲取周圍環境數據,然后對圖像進行識別,并將其前方范圍均勻劃分為11個區域。當一個敵方機器人只出現在單一區域中時,我們選擇其外殼上相對本方機器人最近的點為P1,最右側點為P2,最左側點為P3,當某一敵方機器人出現在超過一個區域時,需要將障礙物按照區域分割,并在每個區域中都確定3個點。P1,P2,P3這3個點就構成了機器人認知中的障礙物,在進行避障時只需避免與這3個點發生碰撞。
靜態障礙物的危險等級取決于機器人與障礙物之間的相對位置矢量So(S(Obs)。

其中φ為機器人直角坐標系上的方向角,θS和LS分別為機器人極坐標系上的方向角與距離。將機器人正前方位置定義為0°,加值為右,減值為左。將對障礙物的探測區域限定在[-90°,+90°]內,方向角 θS的隸屬度函數如圖 3(a)所示,其模糊量分為 4 個等級,分別為左大(LL),左?。↙S),右?。≧S),右大(RL)。
假定機器人對150 cm范圍內的障礙物進行探測,距離的隸屬度函數如圖3(b)所示,其模糊量分為3個等級,分別為近(N),中(M),遠(F)。
靜態障礙物危險等級α(Obs)的隸屬度函數如圖3(c)所示,其模糊量分為8個等級,分別為左側危險性大(LDL),左側危險性小(LDS),左側安全性小(LSS),左側安全性大(LSL),右側危險性大(RDL),右側危險性小(RDS),右側安全性小(RSS),右側安全性大(RSL)。

圖3 隸屬度函數Fig.3 Membership functions
FNN1采用5層結構,如圖4所示,其輸入矢量為XS=。
根據經驗和大量的實驗對的判定設定了以下模糊規則:


圖4 FNN1結構圖Fig.4 FNN1 structure diagram

第4層具有8個與輸出函數對應的節點,用于執行加操作,其輸出函數 f如式(7)所示,α1,α2,α3,α4,α5,α6,α7分別與LDL,LDS,LSS,LSL,RSL,RSS,RDS,RDL 對應。

第1層為輸入層,有兩個節點,其將對應的隸屬度函數輸入給下一層。
第2層為隸屬度函數層,實現輸入變量的模糊化,節點的個數是各個輸入變量的模糊子集的和,每個節點代表一個語言變量值,其作用是計算各輸入分量屬于各語言變量模糊集合的隸屬度函數值,節點數為7個。
第3層為模糊推理層,具有12個節點,每個節點代表一條模糊規則,它是用來匹配模糊規則的前件,計算每條規則的適用度。節點由MIN操作激活,輸出函數f如式(6)所示。
第5層為輸出層,通過MAX操作實現去模糊化得到α(Obs),輸出權重為1。
在FNN1的訓練過程中,W1jp和W2pk的隨機初始權重范圍為[-1,+1],學習效率η1=0.40,在經過K1=75次訓練后能夠收斂到公差Eα1=0.01。
障礙物的動態危險等級β(Obs)取決于通過式(3)的R矩陣轉換得到的機器人與障礙物之間的相對速度矢量UO:

當Y軸方向與障礙物方向相同時,將變換為機器人直角坐標系上的相對速度矢量。

將機器人極坐標系中的速度方向和速度分別定義為ΦU和WU,將障礙物的方向定義為0°,向右加值,向左減值。

ΦU的值域為[-180°,+180°],其隸屬度函數如圖 4(d)所示。ΦU的模糊量分 6個等級,分別為左大(LL),左中(LM),左小(LS),右?。≧S),右中(RM),右大(RL)。的值域為,其隸屬度函數如圖4(e)所示。WU的模糊量分為慢(S)與快(F)2個等級。
根據經驗和大量的實驗對的判定設定了以下模糊規則:


FNN2的5層結構與FNN1類似,如圖5所示,其中輸入向量為。在FNN2的訓練過程中,W1jp和W2pk的隨機初始權重范圍為 [-1,+1],學習效率η2=0.30,在經過K2=55次訓練后能夠收斂到公差Eα2=0.01。

圖5 FNN2結構圖Fig.5 FNN2 structure diagram
將機器人正前方位置定義為0,對應0°,右側依次為+1,+2,+3,+4,+5,分別對應 15°,30°,45°,60°,75°,左側依次為-1,-2,-3,-4,-5,分別對應-15°,-30°,-45°,-60°,-75°。控制器根據決策表圖6通過NN3來確定避障方向O(obs)。

圖6 O(0bs)決策表Fig.6 O(0bs)decision table
將輸入α(Obs)和β(Obs)分別編碼為7位二進制代碼α和β:
X0=[Xα1,…,Xα7,Xβ1,…,Xβ7]T
NN3的結構如圖7所示。

圖7 NN3結構圖Fig.7 NN3 structure diagram
第1層為輸入層,具有14個節點 ,用于將輸入值傳遞到下一層。
第2層為隱藏層,具有7個節點,輸出函數如式(13)所示:

第3層為輸出層,具有11個節點,輸出函數如式(14)所示:

Oj的極值即 O(Obs)。
在NN3的訓練過程中,W1jp和W2pk的隨機初始權重范圍為[-1,+1],學習效率η3=0.40,經過K3=100次訓練能夠收斂到公差 Eα3=0.01。
機器人的避障方向需要排除有障礙物的方向,最終機器人的避障方向取決于通過NN3獲得的基于機器人直角坐標系的單位向量O。而避障動作完成后機器人的目標點T和轉向向量M分別如式(15)和(16)所示:

用MATLAB對本文所述的路徑規劃算法進行了仿真,通過MATLAB的Anfis工具和genfis()函數對實驗測得的樣本數據進行計算產生隸屬度函數的初值。設定機器人初始坐標為(0,0),目標點坐標為(15,13),障礙物 1、2、3 的初始坐標分別為(4.5,7)、(11,6)、(9,12),初始速度分別為(-0.3,-0.6)、(-0.7,-0.3)、(0.5,-0.5),仿真結果如圖8所示,粗實線為機器人的運動軌跡,細實線分別為障礙物1、2、3的運動軌跡,黑色圓點為目標點。

圖8 仿真結果Fig.8 Emulation result
本方法的主要特點是定義了障礙物的動態與靜態危險等級,并應用模糊神經網絡對其進行判斷,并以此來確定避障方向。實驗結果顯示使用本方法在面對多個不同方向、速度的障礙物的情況下,能夠根據障礙物的不同狀態,做出較為準確的判斷,并且具有較好的實時性,能夠實現較為合理的局部路徑規劃。
[1]陳波,楊宜民.關于足球機器人避障控制的研究[J].機器人,2004,26(2):111-113.
[2]Li H,Yang,Siomon X,Biletskiy Y.Neural network based path planning for a multi-robot system with moving obstacles(J).IEEE Transcation on Automation Science and Enginerring,1991,40(3):654-662.
[3]Fierro R,Lewis F L.Control of a nonholonomic mobile robot using neural networks[J].IEEE Tracsation on Neural Networks,1998,9(4):589-600.
[4]霍迎輝,張連明.一種移動機器人的路徑規劃算法[J].自動化技術與應用,2003,22(5):8-10.
[5]李 實,徐旭明,葉榛.國際機器人足球比賽及其相關技術[J].機器人,2000,9(22):420-426.
[6]徐秀娜,賴汝.移動機器人路徑規劃技術的現狀與發展[J].計算機仿真,2006,23(10):1-4.
[7]孟 蕊,蘇維均,連曉峰.基于動態模糊人工勢場法的移動機器人路徑規劃[J].計算機工程與設計,2010,31(7):1558-1561.
[8]常健,吳成東,李 斌.移動機器人避障方法綜述[J].儀器儀表學報,2010,31(8):439-442.