,,,
(1.西南科技大學 制造科學與工程學院,四川 綿陽 621010;2.南京大學 工程管理學院 控制與系統工程系,江蘇 南京 210093)
足式機器人具有較多自由度,能夠在復雜的非結構環境中工作[1-2]。六足機器人擁有足式機器人許多優良特性,多個冗余自由度使其越障能力大幅提高,在災害救援、資源開采、反恐防爆、核工業、軍事運輸以及星球探測等領域有著十分廣闊的前景。針對不同非結構環境采用相應的優化步態可提高六足機器人的運行效率、增強其平穩性[3]。傳統的六足機器人主要依靠操作人員自身經驗遠程遙控切換步態以實現攀爬樓梯、跨越溝壑、越障、避障等操作。然而,該方法對操作人員操作能力的要求高、依賴性強,在很大程度上限制了六足機器人的實際應用。因此迫切需要一種能夠識別并適應未知環境的方法。
事實上環境識別是移動機器人在實際應用中需解決的基本問題之一。在環境信息已知情況下,機器人可執行導航、定位、運動規劃、避障、目標跟蹤等操作。近年來隨著人工智能的發展,神經網絡因具備很強的自學習能力、自組織性、容錯性、魯棒性等優點,逐漸成為環境識別領域的研究熱點。目前國內外在利用神經網絡實現機器人進行運動規劃、避障、目標跟蹤等有諸多研究[4-5]。具有代表性的有Guzik等人[6]提出的利用神經網絡在二維環境中對車輛進行運動規劃設計的方法,該方法能夠在不確定條件下高效完成車輛本地導航任務。Syed等人[7]提出的一種改進脈沖耦合神經網絡(MPCNN)用于移動機器人路徑規劃,基于動態閾值引入定向自動波控制加速神經元激發,從而保證路徑規劃的魯棒性與實時性。
本文利用在機器學習領域有著卓越表現的卷積神經網絡對環境進行在線識別。六足機器人通過機載攝像頭讀取環境數據,可自行判斷所處環境類型,并主動切換步態對環境加以適應。研究結果表明,具有環境自適應能力的六足機器人能在消耗較少能量的基礎上獲得更高的速度與平穩性。
卷積神經網絡是受生物學上感受野(Receptive Field)的機制而提出的一種前饋神經網絡。由于其對幾何變換、形變、光照具有一定程度的不變性[8],可以用較小的計算代價掃描整幅待檢測圖像,近年來廣泛應用于模式識別、圖像處理等領域。
圖1為典型的卷積神經網絡模型,主要由輸入層(Input Layer)、卷積層(Convolution Layer)、池化層(Pooling Layer)、全連接層(Full Connected Layer)和輸出層(Output Layer)組成。網絡訓練部分可分為前向傳播和反向傳播兩個階段。

圖1 卷積層結構
前向傳播可理解為將輸入加權求和后再加上偏置值b,最后施加一個函數f,即:
a(l)=f(Wlal-1+bl)
(1)
其中:al為當前層的輸出,al-1為上一層的輸出,Wl為當前層的權值,bl為當前層的偏置,f為激活函數,用來加入非線性因素,使得神經網絡能夠更好地解決較為復雜的問題,常用的激活函數有式(2)所示的Sigmoid函數,式(3)所示的TanH函數和式(4)所示的ReLU函數。
(2)
(3)
ReLU(x)=max(0,x)
(4)
前向傳播的卷積層主要實現對圖像特征進行提取,上一層的特征圖被一個可學習的卷積核進行卷積,然后通過一個激活函數,就可以得到輸出特征圖。每一個輸出圖可能是組合卷積多個輸入圖的值。卷積操作的權值共享特性可減小計算量。卷積層計算如下:
(5)

池化層往往緊隨卷積層之后。通過平均池化(Average Pooling)或最大池化(Max Pooling)的方法將之前卷積層得到的特征圖進行聚合統計。其平移不變性(translation invariant)增強了網絡模型的魯棒性并在一定程度上防止過擬合的現象發生。池化層計算如下:
(6)

全連接層是一種特殊的卷積層,與卷積層不同的是其卷積核大小和輸入特征圖大小相同,可以將學到的分布式特征表示映射到樣本標記空間,在整個卷積神經網絡中主要起到分類器的作用。
反向傳播通過最小化殘差來調整權值和偏置,一般使用式(7)所示的誤差平方和損失函數對誤差進行計算。
(7)

本文所設計的卷積神經網絡共九層。其中第一層為輸入層,輸入圖像大小為32×32×3(32×32為圖像分辨率大小,3為圖像通道數);第二層、第四層和第六層為卷積層,卷積核大小設置為5×5,步長為1,為了加快網絡損失函數的收斂速度,提高模型訓練效率,卷積神經網絡的激活函數選用ReLU函數;第三層、第五層和第七層為池化層,定義池化方法為最大池化,其步長為2;第八層為全連接層;第九層為輸出層,本文使用softmax分類器并設置10個輸出節點。

圖2 環境分類
為了識別不同環境,本文把環境類型分為冰面、草地、道路、廢墟、溝壑、河流、石灘、沙漠、山地、沼澤10類,如圖2所示。每類環境包括240張RBG圖像,部分圖像通過平移、旋轉、縮放、變形操作得到,構成一個包含2400幅圖像的環境樣本庫,并將這2400幅圖片分為兩大類,其中1800幅作為訓練樣本和600幅作為測試樣本。
通過對訓練樣本進行5000次的訓練,得到訓練好的卷積神經網絡環境識別模型,然后在測試樣本中進行測試,最終該環境識別模型的誤識率大約為12%。
自然界的六足昆蟲如果蠅、螳螂等大都以三足步態或四足步態行進[9-10]。在不考慮負載的情況下,四足步態能在平坦的路面上獲得較大速度,三足步態在崎嶇路面和粘滯力的路面上能獲得較大平穩性[11-13]。

圖3 尺寸參數
實驗使用的六足機器人每條腿有三個自由度,其尺寸參數如圖3,機器人臀部長30 mm,大腿長84 mm,小腿長150 mm。圖4為機器人樣機,L1、L2、L3分別表示左邊1、2、3號腿,R1、R2、R3分別表示右邊1、2、3號腿。機器人前方搭載的攝像頭可實時采集環境信息。

圖4 六足機器人樣機
實驗中,我們將步態特征量分為五個維度,分別是步態種類、舵機轉速、步長、抬腿上限和落腿下限。其中,令六足機器人足端距離機身垂直高度為100 mm時作為零點,足端向上移動為正,向下移動為負,抬腿上限表示足端垂直向上移動的最大距離,落腿下限表示足端垂直向下移動的最大距離。固定舵機轉速為2.09 rad/s、步長為20 mm,改變步態種類并在足端空間范圍內對另外兩個特征量等梯度變換如表1所示,并對這些參數進行組合,如步態種類:三足步態、落腿下限:0 mm、抬腿上限:30 mm為一組步態參數,這樣便形成了18組步態參數。

表1 步態參數
本文在環境樣本庫中隨機選取4類,分別為草地、沙漠、山地和石灘,并根據這4類環境的主要特征搭建如圖5的環境模型。該模型由四塊600 mm×600 mm(長×寬)的小模型拼接而成。

圖5 環境模型
應用18組步態參數分別在4類環境中重復進行3次測試,以最大化平均速度為評價基準,選取出4類環境所對應的最優步態參數。如圖6所示,橫坐標為步態種類,縱坐標為平均速度,以圖中○為例,其對應的步態參數為落腿下限:0 mm、抬腿上限:30 mm。圖6(a)為草地環境中機器人在不同步態參數下行走的平均速度對比,可以看出此環境中的最優步態參數為步態種類:四足步態、落腿下限:0 mm、抬腿上限:30 mm。同理,圖6(b)、圖6(c)、圖6(d)分別為沙漠環境、山地環境和石灘環境中不同步態參數下行走的平均速度對比。沙漠環境中最優步態參數分別為步態種類:四足步態、落腿下限:0 mm、抬腿上限:30 mm;山地環境中最優步態為步態種類:四足步態、落腿下限:-10 mm、抬腿上限:30 mm;石灘環境中最優步態為步態種類:四足步態、落腿下限:-10 mm、抬腿上限:60 mm。

圖6 不同環境中的平均速度
六足機器人在實際應用中往往要面臨各種復雜的環境類型。單一的行走步態在與之相對應的環境中能表現優越,但在面對另外一些差異較大的環境時,由于該步態與環境不匹配,會造成六足機器人移動效率下降,能耗增加。
圖7為環境自適應六足機器人的運行框圖。通過搭載彩色攝像頭,機器人能夠時刻采集環境信息,并將這些信息通過2.4G無線通信模塊傳輸給上位機;上位機將接收到的環境信息輸入到訓練好的環境識別模型中得出環境類型;機器人搭載下位機,接收到當前環境類型并主動調整步態參數驅動電機響應;最后下位機驅動攝像頭進行新一輪的數據采集工作。以此循環進而可實現六足機器人自我感知環境變化并采取相應步態參數適應環境的功能。

圖7 運行框圖
為了對比說明采用卷積神經網絡環境自適算法的六足機器人的優越性,我們將選取出的4種最優步態與之對比,分別在4類環境中進行測試。六足機器人通過機載攝像頭讀取環境數據,利用環境識別模型對環境進行自動識別,并根據識別的環境選取相應的最優步態,以此實現環境自適應。表2為機器人采用5種步態類型分別在4類環境中測試的平均速度。圖8為機器人采用不同步態類型分別在4類環境中測試的平均速度曲線圖,其中橫坐標為環境種類,縱坐標為平均速度,以使用草地最優步態參數為例,機器人使用該步態參數在草地環境中行進的平均速度約為38.7 mm/s,在沙漠環境中行進的平均速度約為30.8 mm/s,由于使用該步態參數機器人抬腿高度過低,無法在山地與石灘環境中行進。由圖8可以看出,采用單一的步態類型雖然能夠在各自對應的環境中表現良好,但在面對其它環境時運行效率急劇降低。其中,機器人采用草地最優步態和沙漠最優步態無法在山地與石灘環境中前行。而采用環境自適應方法則可使機器人的運行效率始終處于較高水平。圖9為機器人在包含上述4類環境的混合環境中(參照圖5)采用不同步態類型的平均速度測試結果,橫坐標代表環境類型,縱坐標代表平均速度,每種步態重復測試5次。實驗結果表明,采用環境自適應方法的六足機器人在混合環境中能始終與外部環境相匹配,表現出更快的行進速度。

圖8 單個環境中的平均速度

表2 不同環境中測試的平均速度(mm/s)

圖9 混合環境中的平均速度
由于受外力或者環境地形的影響,六足機器人行走過程中的平穩性會受到干擾[14]。為判斷機器人在運行過程中的平穩性,我們使用機器人運行時機身的俯仰角(pitch)與滾轉角(roll)絕對值之和作為平穩性判斷依據,絕對值之和越小,機器人越平穩。如圖10為采用不同步態類型行走時機器人的機身俯仰角(pitch)與滾轉角(roll)絕對值之和的曲線圖。通過對比可以看出,采用環境自適應方法的機器人機身傾角變化幅度較小,其平穩性更高。

圖10 混合環境中的機身偏轉角度
實際應用中,六足機器人的性能除了要考慮行進速度與平穩性,其能耗大小也是一個十分重要的因素,決定著機器人的續航能力。為了對六足機器人運行過程中的能量消耗進行估測[15],本文建立了六足機器人能量消耗模型。六足機器人的能量主要由腿部每個關節處直流電機的運行所消耗,其在一段時間T內消耗的能量由下式給出:
(8)
其中:ua為施加電壓,ia為電樞電流。
直流電機的性能可用其轉矩和電壓方程來表示:
τm=Ktia
(9)
(10)
(11)
其中:τm為轉子的轉矩,Kt為1轉矩常數,ue為電樞繞組中與施加電壓相反的感應電壓,Kv為電壓常數,θm為轉子角速度,Ra為電樞電阻,La為電樞電感。

τ=τmGs
(12)
(13)
其中:Gs為減速電機的減速比。
繞組的電感通常被忽略,因此式(8)可寫為:
(14)
其中:第一項為機械能,第二項為熱損耗。當第一項為負值時,機械能表示由外力提供的能量增益,但直流電機無法儲存該能量。因此,直流電機在時間T內消耗的能量由下式給出:
(15)
其中:

因此,六足機器人第i條腿的第j個關節在時間T內消耗的能量可表示如下:
(16)
因此,六足機器人在時間T內消耗能量總和可表示為:
(17)

圖11 混合環境中的能量消耗
圖11為混合環境中六足機器人走完全部路程的能量消耗總和的對比。其中,采用山地最優步態走完全程耗能約38 kJ,采用石灘最優步態走完全程耗能約42 kJ,采用環境自適應步態走完全程耗能約34 kJ。應用卷積神經網絡環境自適應方法的六足機器人消耗能量總和要比采用單一最優步態少10%~20%。
本文提出利用卷積神經網絡識別環境,六足機器人調整步態參數自適應當前環境的方法。建立10種典型環境共2400幅環境圖片的環境樣本庫。在隨機選取的4類環境中,應用卷積神經網絡環境自適應方法的六足機器人能夠表現出高速度、高平穩性、低能耗的優點,能夠較好地自適應不同環境,為六足機器人的實際應用打下了良好的基礎。
[1] HE J,GAO F.Type synthesis for bionic quadruped walking robots[J].Journal of Bionic Engineering,2015,12(4):527-538.
[3] ZHU Y,GUO T,LIU Q,et al.A study of arbitrary gait pattern generation for turning of a bio-inspired hexapod robot[J].Robotics and Autonomous Systems,2017,97:125-135.
[4] DUGULEANA M,MOGAN G.Neural networks based reinforcement learning for mobile robots obstacle avoidance[J].Expert Systems with Applications,2016,62:104-115.
[5] PANG S,DEL COZ J J,YU Z,et al.Deep learning to frame objects for visual target tracking[J].Engineering Applications of Artificial Intelligence,2017,65:406-420.
[6] GUZIK V,PYAVCHENKO A,PEREVERZEV V,et al.Neural networking path planning based on neural-like structures[J].Path Planning for Vehicles Operating in Uncertain 2D Environments,2017:25-96.
[7] SYED U A,KUNWAR F,IQBAL M.Guided Autowave Pulse Coupled Neural Network(GAPCNN)based real time path planning and an obstacle avoidance scheme for mobile robots[J].Robotics and autonomous systems,2014,62(4):474-486.
[8] BATAINEH M,MARLER T.Neural network for regression problems with reduced training sets[J].Neural Networks,2017,95:1-9.
[9] WOSNITZA A,BOCKEMüHL T,DüBBERT M,et al.Inter-leg coordination in the control of walking speed in Drosophila[J].Journal of experimental biology,2013,216(3):480-491.
[10] BENDER J A,SIMPSON E M,TIETZ B R,et al.Kinematic and behavioral evidence for a distinction between trotting and ambling gaits in the cockroach Blaberus discoidalis[J].Journal of Experimental Biology,2011,214(12):2057-2064.
[11] HAUSER K K,BRETL T,LATOMBE J C,et al.Motion planning for legged robots on varied terrain[J].International Journal of Robotics Research,2008,27(11):1325-1349.
[12] RAMDYA P,THANDIACKAL R,CHERNEY R,et al.Climbing favours the tripod gait over alternative faster insect gaits[J].Nature Communications,2017,8:14494.
[13] SOYGUDER S,ALLI H.Kinematic and dynamic analysis of a hexapod walking-running-bounding gaits robot and control actions[J].Computers & Electrical Engineering,2012,38(2):444-458.
[14] AGHELI M,NESTINGER S S.Force-based stability margin for multi-legged robots[J].Robotics and Autonomous Systems,2016,83:138-149.
[15] ROY S S,PRATIHAR D K.Dynamic modeling,stability and energy consumption analysis of a realistic six-legged walking robot[J].Robotics and Computer-Integrated Manufacturing,2013,29(2):400-416.