,,,
(1.西南科技大學(xué) 制造科學(xué)與工程學(xué)院,四川 綿陽 621010;2.南京大學(xué) 工程管理學(xué)院 控制與系統(tǒng)工程系,江蘇 南京 210093)
足式機器人具有較多自由度,能夠在復(fù)雜的非結(jié)構(gòu)環(huán)境中工作[1-2]。六足機器人擁有足式機器人許多優(yōu)良特性,多個冗余自由度使其越障能力大幅提高,在災(zāi)害救援、資源開采、反恐防爆、核工業(yè)、軍事運輸以及星球探測等領(lǐng)域有著十分廣闊的前景。針對不同非結(jié)構(gòu)環(huán)境采用相應(yīng)的優(yōu)化步態(tài)可提高六足機器人的運行效率、增強其平穩(wěn)性[3]。傳統(tǒng)的六足機器人主要依靠操作人員自身經(jīng)驗遠(yuǎn)程遙控切換步態(tài)以實現(xiàn)攀爬樓梯、跨越溝壑、越障、避障等操作。然而,該方法對操作人員操作能力的要求高、依賴性強,在很大程度上限制了六足機器人的實際應(yīng)用。因此迫切需要一種能夠識別并適應(yīng)未知環(huán)境的方法。
事實上環(huán)境識別是移動機器人在實際應(yīng)用中需解決的基本問題之一。在環(huán)境信息已知情況下,機器人可執(zhí)行導(dǎo)航、定位、運動規(guī)劃、避障、目標(biāo)跟蹤等操作。近年來隨著人工智能的發(fā)展,神經(jīng)網(wǎng)絡(luò)因具備很強的自學(xué)習(xí)能力、自組織性、容錯性、魯棒性等優(yōu)點,逐漸成為環(huán)境識別領(lǐng)域的研究熱點。目前國內(nèi)外在利用神經(jīng)網(wǎng)絡(luò)實現(xiàn)機器人進行運動規(guī)劃、避障、目標(biāo)跟蹤等有諸多研究[4-5]。具有代表性的有Guzik等人[6]提出的利用神經(jīng)網(wǎng)絡(luò)在二維環(huán)境中對車輛進行運動規(guī)劃設(shè)計的方法,該方法能夠在不確定條件下高效完成車輛本地導(dǎo)航任務(wù)。Syed等人[7]提出的一種改進脈沖耦合神經(jīng)網(wǎng)絡(luò)(MPCNN)用于移動機器人路徑規(guī)劃,基于動態(tài)閾值引入定向自動波控制加速神經(jīng)元激發(fā),從而保證路徑規(guī)劃的魯棒性與實時性。
本文利用在機器學(xué)習(xí)領(lǐng)域有著卓越表現(xiàn)的卷積神經(jīng)網(wǎng)絡(luò)對環(huán)境進行在線識別。六足機器人通過機載攝像頭讀取環(huán)境數(shù)據(jù),可自行判斷所處環(huán)境類型,并主動切換步態(tài)對環(huán)境加以適應(yīng)。研究結(jié)果表明,具有環(huán)境自適應(yīng)能力的六足機器人能在消耗較少能量的基礎(chǔ)上獲得更高的速度與平穩(wěn)性。
卷積神經(jīng)網(wǎng)絡(luò)是受生物學(xué)上感受野(Receptive Field)的機制而提出的一種前饋神經(jīng)網(wǎng)絡(luò)。由于其對幾何變換、形變、光照具有一定程度的不變性[8],可以用較小的計算代價掃描整幅待檢測圖像,近年來廣泛應(yīng)用于模式識別、圖像處理等領(lǐng)域。
圖1為典型的卷積神經(jīng)網(wǎng)絡(luò)模型,主要由輸入層(Input Layer)、卷積層(Convolution Layer)、池化層(Pooling Layer)、全連接層(Full Connected Layer)和輸出層(Output Layer)組成。網(wǎng)絡(luò)訓(xùn)練部分可分為前向傳播和反向傳播兩個階段。
圖1 卷積層結(jié)構(gòu)
前向傳播可理解為將輸入加權(quán)求和后再加上偏置值b,最后施加一個函數(shù)f,即:
a(l)=f(Wlal-1+bl)
(1)
其中:al為當(dāng)前層的輸出,al-1為上一層的輸出,Wl為當(dāng)前層的權(quán)值,bl為當(dāng)前層的偏置,f為激活函數(shù),用來加入非線性因素,使得神經(jīng)網(wǎng)絡(luò)能夠更好地解決較為復(fù)雜的問題,常用的激活函數(shù)有式(2)所示的Sigmoid函數(shù),式(3)所示的TanH函數(shù)和式(4)所示的ReLU函數(shù)。
(2)
(3)
ReLU(x)=max(0,x)
(4)
前向傳播的卷積層主要實現(xiàn)對圖像特征進行提取,上一層的特征圖被一個可學(xué)習(xí)的卷積核進行卷積,然后通過一個激活函數(shù),就可以得到輸出特征圖。每一個輸出圖可能是組合卷積多個輸入圖的值。卷積操作的權(quán)值共享特性可減小計算量。卷積層計算如下:
(5)
池化層往往緊隨卷積層之后。通過平均池化(Average Pooling)或最大池化(Max Pooling)的方法將之前卷積層得到的特征圖進行聚合統(tǒng)計。其平移不變性(translation invariant)增強了網(wǎng)絡(luò)模型的魯棒性并在一定程度上防止過擬合的現(xiàn)象發(fā)生。池化層計算如下:
(6)
全連接層是一種特殊的卷積層,與卷積層不同的是其卷積核大小和輸入特征圖大小相同,可以將學(xué)到的分布式特征表示映射到樣本標(biāo)記空間,在整個卷積神經(jīng)網(wǎng)絡(luò)中主要起到分類器的作用。
反向傳播通過最小化殘差來調(diào)整權(quán)值和偏置,一般使用式(7)所示的誤差平方和損失函數(shù)對誤差進行計算。
(7)
本文所設(shè)計的卷積神經(jīng)網(wǎng)絡(luò)共九層。其中第一層為輸入層,輸入圖像大小為32×32×3(32×32為圖像分辨率大小,3為圖像通道數(shù));第二層、第四層和第六層為卷積層,卷積核大小設(shè)置為5×5,步長為1,為了加快網(wǎng)絡(luò)損失函數(shù)的收斂速度,提高模型訓(xùn)練效率,卷積神經(jīng)網(wǎng)絡(luò)的激活函數(shù)選用ReLU函數(shù);第三層、第五層和第七層為池化層,定義池化方法為最大池化,其步長為2;第八層為全連接層;第九層為輸出層,本文使用softmax分類器并設(shè)置10個輸出節(jié)點。
圖2 環(huán)境分類
為了識別不同環(huán)境,本文把環(huán)境類型分為冰面、草地、道路、廢墟、溝壑、河流、石灘、沙漠、山地、沼澤10類,如圖2所示。每類環(huán)境包括240張RBG圖像,部分圖像通過平移、旋轉(zhuǎn)、縮放、變形操作得到,構(gòu)成一個包含2400幅圖像的環(huán)境樣本庫,并將這2400幅圖片分為兩大類,其中1800幅作為訓(xùn)練樣本和600幅作為測試樣本。
通過對訓(xùn)練樣本進行5000次的訓(xùn)練,得到訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)環(huán)境識別模型,然后在測試樣本中進行測試,最終該環(huán)境識別模型的誤識率大約為12%。
自然界的六足昆蟲如果蠅、螳螂等大都以三足步態(tài)或四足步態(tài)行進[9-10]。在不考慮負(fù)載的情況下,四足步態(tài)能在平坦的路面上獲得較大速度,三足步態(tài)在崎嶇路面和粘滯力的路面上能獲得較大平穩(wěn)性[11-13]。
圖3 尺寸參數(shù)
實驗使用的六足機器人每條腿有三個自由度,其尺寸參數(shù)如圖3,機器人臀部長30 mm,大腿長84 mm,小腿長150 mm。圖4為機器人樣機,L1、L2、L3分別表示左邊1、2、3號腿,R1、R2、R3分別表示右邊1、2、3號腿。機器人前方搭載的攝像頭可實時采集環(huán)境信息。
圖4 六足機器人樣機
實驗中,我們將步態(tài)特征量分為五個維度,分別是步態(tài)種類、舵機轉(zhuǎn)速、步長、抬腿上限和落腿下限。其中,令六足機器人足端距離機身垂直高度為100 mm時作為零點,足端向上移動為正,向下移動為負(fù),抬腿上限表示足端垂直向上移動的最大距離,落腿下限表示足端垂直向下移動的最大距離。固定舵機轉(zhuǎn)速為2.09 rad/s、步長為20 mm,改變步態(tài)種類并在足端空間范圍內(nèi)對另外兩個特征量等梯度變換如表1所示,并對這些參數(shù)進行組合,如步態(tài)種類:三足步態(tài)、落腿下限:0 mm、抬腿上限:30 mm為一組步態(tài)參數(shù),這樣便形成了18組步態(tài)參數(shù)。
表1 步態(tài)參數(shù)
本文在環(huán)境樣本庫中隨機選取4類,分別為草地、沙漠、山地和石灘,并根據(jù)這4類環(huán)境的主要特征搭建如圖5的環(huán)境模型。該模型由四塊600 mm×600 mm(長×寬)的小模型拼接而成。
圖5 環(huán)境模型
應(yīng)用18組步態(tài)參數(shù)分別在4類環(huán)境中重復(fù)進行3次測試,以最大化平均速度為評價基準(zhǔn),選取出4類環(huán)境所對應(yīng)的最優(yōu)步態(tài)參數(shù)。如圖6所示,橫坐標(biāo)為步態(tài)種類,縱坐標(biāo)為平均速度,以圖中○為例,其對應(yīng)的步態(tài)參數(shù)為落腿下限:0 mm、抬腿上限:30 mm。圖6(a)為草地環(huán)境中機器人在不同步態(tài)參數(shù)下行走的平均速度對比,可以看出此環(huán)境中的最優(yōu)步態(tài)參數(shù)為步態(tài)種類:四足步態(tài)、落腿下限:0 mm、抬腿上限:30 mm。同理,圖6(b)、圖6(c)、圖6(d)分別為沙漠環(huán)境、山地環(huán)境和石灘環(huán)境中不同步態(tài)參數(shù)下行走的平均速度對比。沙漠環(huán)境中最優(yōu)步態(tài)參數(shù)分別為步態(tài)種類:四足步態(tài)、落腿下限:0 mm、抬腿上限:30 mm;山地環(huán)境中最優(yōu)步態(tài)為步態(tài)種類:四足步態(tài)、落腿下限:-10 mm、抬腿上限:30 mm;石灘環(huán)境中最優(yōu)步態(tài)為步態(tài)種類:四足步態(tài)、落腿下限:-10 mm、抬腿上限:60 mm。
圖6 不同環(huán)境中的平均速度
六足機器人在實際應(yīng)用中往往要面臨各種復(fù)雜的環(huán)境類型。單一的行走步態(tài)在與之相對應(yīng)的環(huán)境中能表現(xiàn)優(yōu)越,但在面對另外一些差異較大的環(huán)境時,由于該步態(tài)與環(huán)境不匹配,會造成六足機器人移動效率下降,能耗增加。
圖7為環(huán)境自適應(yīng)六足機器人的運行框圖。通過搭載彩色攝像頭,機器人能夠時刻采集環(huán)境信息,并將這些信息通過2.4G無線通信模塊傳輸給上位機;上位機將接收到的環(huán)境信息輸入到訓(xùn)練好的環(huán)境識別模型中得出環(huán)境類型;機器人搭載下位機,接收到當(dāng)前環(huán)境類型并主動調(diào)整步態(tài)參數(shù)驅(qū)動電機響應(yīng);最后下位機驅(qū)動攝像頭進行新一輪的數(shù)據(jù)采集工作。以此循環(huán)進而可實現(xiàn)六足機器人自我感知環(huán)境變化并采取相應(yīng)步態(tài)參數(shù)適應(yīng)環(huán)境的功能。
圖7 運行框圖
為了對比說明采用卷積神經(jīng)網(wǎng)絡(luò)環(huán)境自適算法的六足機器人的優(yōu)越性,我們將選取出的4種最優(yōu)步態(tài)與之對比,分別在4類環(huán)境中進行測試。六足機器人通過機載攝像頭讀取環(huán)境數(shù)據(jù),利用環(huán)境識別模型對環(huán)境進行自動識別,并根據(jù)識別的環(huán)境選取相應(yīng)的最優(yōu)步態(tài),以此實現(xiàn)環(huán)境自適應(yīng)。表2為機器人采用5種步態(tài)類型分別在4類環(huán)境中測試的平均速度。圖8為機器人采用不同步態(tài)類型分別在4類環(huán)境中測試的平均速度曲線圖,其中橫坐標(biāo)為環(huán)境種類,縱坐標(biāo)為平均速度,以使用草地最優(yōu)步態(tài)參數(shù)為例,機器人使用該步態(tài)參數(shù)在草地環(huán)境中行進的平均速度約為38.7 mm/s,在沙漠環(huán)境中行進的平均速度約為30.8 mm/s,由于使用該步態(tài)參數(shù)機器人抬腿高度過低,無法在山地與石灘環(huán)境中行進。由圖8可以看出,采用單一的步態(tài)類型雖然能夠在各自對應(yīng)的環(huán)境中表現(xiàn)良好,但在面對其它環(huán)境時運行效率急劇降低。其中,機器人采用草地最優(yōu)步態(tài)和沙漠最優(yōu)步態(tài)無法在山地與石灘環(huán)境中前行。而采用環(huán)境自適應(yīng)方法則可使機器人的運行效率始終處于較高水平。圖9為機器人在包含上述4類環(huán)境的混合環(huán)境中(參照圖5)采用不同步態(tài)類型的平均速度測試結(jié)果,橫坐標(biāo)代表環(huán)境類型,縱坐標(biāo)代表平均速度,每種步態(tài)重復(fù)測試5次。實驗結(jié)果表明,采用環(huán)境自適應(yīng)方法的六足機器人在混合環(huán)境中能始終與外部環(huán)境相匹配,表現(xiàn)出更快的行進速度。
圖8 單個環(huán)境中的平均速度
表2 不同環(huán)境中測試的平均速度(mm/s)
圖9 混合環(huán)境中的平均速度
由于受外力或者環(huán)境地形的影響,六足機器人行走過程中的平穩(wěn)性會受到干擾[14]。為判斷機器人在運行過程中的平穩(wěn)性,我們使用機器人運行時機身的俯仰角(pitch)與滾轉(zhuǎn)角(roll)絕對值之和作為平穩(wěn)性判斷依據(jù),絕對值之和越小,機器人越平穩(wěn)。如圖10為采用不同步態(tài)類型行走時機器人的機身俯仰角(pitch)與滾轉(zhuǎn)角(roll)絕對值之和的曲線圖。通過對比可以看出,采用環(huán)境自適應(yīng)方法的機器人機身傾角變化幅度較小,其平穩(wěn)性更高。
圖10 混合環(huán)境中的機身偏轉(zhuǎn)角度
實際應(yīng)用中,六足機器人的性能除了要考慮行進速度與平穩(wěn)性,其能耗大小也是一個十分重要的因素,決定著機器人的續(xù)航能力。為了對六足機器人運行過程中的能量消耗進行估測[15],本文建立了六足機器人能量消耗模型。六足機器人的能量主要由腿部每個關(guān)節(jié)處直流電機的運行所消耗,其在一段時間T內(nèi)消耗的能量由下式給出:
(8)
其中:ua為施加電壓,ia為電樞電流。
直流電機的性能可用其轉(zhuǎn)矩和電壓方程來表示:
τm=Ktia
(9)
(10)
(11)
其中:τm為轉(zhuǎn)子的轉(zhuǎn)矩,Kt為1轉(zhuǎn)矩常數(shù),ue為電樞繞組中與施加電壓相反的感應(yīng)電壓,Kv為電壓常數(shù),θm為轉(zhuǎn)子角速度,Ra為電樞電阻,La為電樞電感。
τ=τmGs
(12)
(13)
其中:Gs為減速電機的減速比。
繞組的電感通常被忽略,因此式(8)可寫為:
(14)
其中:第一項為機械能,第二項為熱損耗。當(dāng)?shù)谝豁棡樨?fù)值時,機械能表示由外力提供的能量增益,但直流電機無法儲存該能量。因此,直流電機在時間T內(nèi)消耗的能量由下式給出:
(15)
其中:
因此,六足機器人第i條腿的第j個關(guān)節(jié)在時間T內(nèi)消耗的能量可表示如下:
(16)
因此,六足機器人在時間T內(nèi)消耗能量總和可表示為:
(17)
圖11 混合環(huán)境中的能量消耗
圖11為混合環(huán)境中六足機器人走完全部路程的能量消耗總和的對比。其中,采用山地最優(yōu)步態(tài)走完全程耗能約38 kJ,采用石灘最優(yōu)步態(tài)走完全程耗能約42 kJ,采用環(huán)境自適應(yīng)步態(tài)走完全程耗能約34 kJ。應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)環(huán)境自適應(yīng)方法的六足機器人消耗能量總和要比采用單一最優(yōu)步態(tài)少10%~20%。
本文提出利用卷積神經(jīng)網(wǎng)絡(luò)識別環(huán)境,六足機器人調(diào)整步態(tài)參數(shù)自適應(yīng)當(dāng)前環(huán)境的方法。建立10種典型環(huán)境共2400幅環(huán)境圖片的環(huán)境樣本庫。在隨機選取的4類環(huán)境中,應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)環(huán)境自適應(yīng)方法的六足機器人能夠表現(xiàn)出高速度、高平穩(wěn)性、低能耗的優(yōu)點,能夠較好地自適應(yīng)不同環(huán)境,為六足機器人的實際應(yīng)用打下了良好的基礎(chǔ)。
[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.