張 蕊,楊 冬,沈永旺,李鐵軍
(河北工業(yè)大學(xué) 機(jī)械工程學(xué)院,天津 300132)
隨著機(jī)器人技術(shù)研究與應(yīng)用領(lǐng)域的不斷發(fā)展與進(jìn)步,以視覺、聽覺、觸覺等為交互信息的人機(jī)交互方式近年來受到眾多學(xué)者和技術(shù)人員的廣泛關(guān)注[1]。其中,以觸覺為交互信息的人機(jī)協(xié)作(接觸式人機(jī)協(xié)作)作為一個快速發(fā)展的領(lǐng)域,已成為一個新的研究熱點(diǎn)[2]。
接觸式人機(jī)協(xié)作在軍事、航天、工業(yè)、康復(fù)醫(yī)療、助老助殘等領(lǐng)域均有廣泛的應(yīng)用價值。軍事方面,外骨骼機(jī)器人采用人體的力信息驅(qū)動機(jī)器人運(yùn)動,實(shí)現(xiàn)力的放大,幫助戰(zhàn)士在負(fù)重較大的武器裝備時實(shí)現(xiàn)快速移動[3-4]。在航天領(lǐng)域,宇航員通過力的交互方式與機(jī)器人協(xié)作實(shí)現(xiàn)太空艙的保養(yǎng)與維修等工作[5]。除此以外,人機(jī)搬運(yùn)也是接觸式人機(jī)協(xié)作的一類研究熱點(diǎn),合作者與機(jī)器人直接通過物體進(jìn)行接觸力傳遞,實(shí)現(xiàn)共同搬運(yùn)任務(wù)[6-7]。接觸式人機(jī)協(xié)作還包括一些穿戴裝置的研究,如康復(fù)訓(xùn)練機(jī)器人[8]和助老助殘機(jī)器人[9]。
雖然接觸式人機(jī)協(xié)作得到了學(xué)術(shù)界和應(yīng)用界的廣泛關(guān)注,也取得了一定的研究成果,但至今仍然存在環(huán)境感知與協(xié)作意圖理解能力差、關(guān)節(jié)臂接觸信息難以估計(jì)、運(yùn)動柔順性差、協(xié)作效率低等問題。為此,本文針對接觸式人機(jī)協(xié)作中的意圖理解問題,提出了一種基于GA-BP神經(jīng)網(wǎng)絡(luò)的意圖理解方法,并通過實(shí)驗(yàn)驗(yàn)證了該方法在減小合作者作用力與提升人機(jī)協(xié)作的運(yùn)動同步性方面的有效性。
為了防止驗(yàn)證設(shè)備過于復(fù)雜和多自由度運(yùn)動控制耦合對實(shí)驗(yàn)產(chǎn)生的影響,實(shí)驗(yàn)采用單自由度平移機(jī)器人系統(tǒng)與人協(xié)作共同完成既定任務(wù),交互系統(tǒng)原理圖及實(shí)物圖如圖1所示,系統(tǒng)參數(shù)如表1所示。本文只提取滑臺運(yùn)動方向的一維力信息。
圖1 人機(jī)協(xié)作系統(tǒng)原理圖及實(shí)物圖
名稱參數(shù)名稱參數(shù)工業(yè)控制計(jì)算機(jī)研華IPC-610六維力傳感器ATI-SI125機(jī)器人控制器凌華PCI-8258伺服電機(jī)及驅(qū)動器安川交流伺服驅(qū)動器400W,電機(jī)額定扭矩1.27N.m
為了采集機(jī)器人當(dāng)前的末端位置和速度,本文中采用伺服電機(jī)編碼器的返回值,再由關(guān)節(jié)空間和笛卡爾空間的轉(zhuǎn)換關(guān)系得到。基于以上實(shí)驗(yàn)設(shè)備,具體任務(wù)表現(xiàn)為:實(shí)現(xiàn)機(jī)器人的末端(滑臺)位置與握于力傳感器的手的運(yùn)動同步。
合作者將其意圖由大腦通過神經(jīng)信號傳遞給上肢,上肢接收運(yùn)動命令后,按照意圖執(zhí)行相應(yīng)運(yùn)動。近年來,研究人機(jī)協(xié)作常以上肢動態(tài)模型切入,但人體上肢的運(yùn)動過程復(fù)雜多變,因此,建立一個精確、時變的人體上肢動力學(xué)模型是非常困難的,甚至不可能實(shí)現(xiàn)[10]。為了簡化人體上肢模型,以二階質(zhì)量-彈簧-阻尼系統(tǒng)近似人體上肢動力學(xué)模型的方式普遍被研究者所接受[11-12]。
基于以上分析,本文建立了人體上肢與機(jī)器人的協(xié)作模型,如圖2所示。
圖2 人體上肢與機(jī)器人協(xié)作模型
機(jī)器人:
(1)
合作者:
(2)
圖3 人體上肢動力學(xué)模型估計(jì)操作者意圖原理圖
然而,在實(shí)際工作中,人的意圖是根據(jù)人機(jī)協(xié)作場景、任務(wù)狀態(tài)、協(xié)作雙方的條件、目標(biāo)的改變等一系列影響因素不斷發(fā)生變化的。因此,通過人體上肢動力學(xué)模型估計(jì)人的意圖的方法存在諸多不合理假設(shè),實(shí)際估計(jì)的人的意圖并不理想[15]。
本文以只有一層隱含層的三層BP神經(jīng)網(wǎng)絡(luò)為例,如圖4所示。
圖4 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)原理圖
BP算法的基本思想是把學(xué)習(xí)過程分為正向傳播與誤差反傳兩個階段,通過不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,直至網(wǎng)絡(luò)的實(shí)際輸出值和期望輸出值的誤差達(dá)到預(yù)期精度要求。
根據(jù)本文采用的三層BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),設(shè)輸入層、隱含層和輸出層節(jié)點(diǎn)數(shù)分別為n、q、m,輸入樣本總數(shù)為P,xpi為第p個樣本的第i個輸入值,隱含層第k個節(jié)點(diǎn)的輸出為:
(3)
輸出層第j個節(jié)點(diǎn)的輸出為:
j=0,1,…,m
(4)
神經(jīng)元激勵函數(shù)g(·)主要有線性函數(shù)、閾值函數(shù)和Sigmoid函數(shù)(又稱S函數(shù)),由于S函數(shù)光滑可微,在分類時比線性函數(shù)更精確,容錯性更好,因此選用標(biāo)準(zhǔn)的S函數(shù)g(x)=1/1+e-x作為神經(jīng)元的激勵函數(shù),其導(dǎo)數(shù)滿足:
g′=g(1-g)
(5)
定義誤差函數(shù):
(6)
(1)隱含層權(quán)值調(diào)整
定義誤差信號:
其中第1項(xiàng)為:
第2項(xiàng)為:
則誤差信號為:
(7)
綜上可知,隱含層神經(jīng)網(wǎng)絡(luò)的權(quán)值調(diào)整公式為:
(8)
其中,η稱為學(xué)習(xí)率,一般取值范圍為0.1~0.3。
(2)輸出層權(quán)值調(diào)整
定義誤差信號為:
其中第1項(xiàng)為:
第2項(xiàng)為:
則誤差信號為:
δpj=(dpj-ypj)ypj(1-ypj)
(9)
綜上可知,輸出層神經(jīng)網(wǎng)絡(luò)的權(quán)值調(diào)整公式為:
(10)
BP神經(jīng)網(wǎng)絡(luò)作為目前應(yīng)用最多的一種神經(jīng)網(wǎng)絡(luò)形式之一, 具有強(qiáng)大的非線性映射能力、自學(xué)習(xí)與自適應(yīng)能力、泛化及容錯能力[16]。然而,隨著對神經(jīng)網(wǎng)絡(luò)研究的不斷深入,BP神經(jīng)網(wǎng)絡(luò)也逐漸顯現(xiàn)出自身的不足,如:全局搜索能力差、易陷入局部極值、收斂速度慢、容易出現(xiàn)“過擬合”現(xiàn)象[17-18]。因此,本文采用遺傳算法同時優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的權(quán)值、閾值和拓?fù)浣Y(jié)構(gòu),來彌補(bǔ)BP神經(jīng)網(wǎng)絡(luò)的缺陷。
GA+BP算法的適應(yīng)度函數(shù)建立在BP神經(jīng)網(wǎng)絡(luò)總誤差基礎(chǔ)上,設(shè)每條染色體的適應(yīng)度函數(shù)為:
(11)
GA-BP神經(jīng)網(wǎng)絡(luò)操作流程如圖5所示。
圖5 GA-BP神經(jīng)網(wǎng)絡(luò)操作流程圖
為了獲取BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),采用自適應(yīng)阻抗控制方法對數(shù)據(jù)進(jìn)行采集,采集的數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù)。自適應(yīng)阻抗控制器如圖6所示。自適應(yīng)阻抗控制器:
(12)
式中,Ω為速度補(bǔ)償項(xiàng),fh、fd表示實(shí)際作用力與期望交互力;fd=[-t,t],t為正向趨近于0的常數(shù)。
速度補(bǔ)償項(xiàng):
(13)
其中,λ為控制器采樣周期,η為更新率,b為常數(shù)。
圖6 自適應(yīng)阻抗控制原理圖
基于上文單自由度人機(jī)協(xié)作系統(tǒng),建立了如圖7所示的數(shù)據(jù)采集流程圖。
在數(shù)據(jù)采集階段,為了使采集到的數(shù)據(jù)最大程度的覆蓋人機(jī)協(xié)作空間數(shù)據(jù),使訓(xùn)練的樣本更具有代表性,需要合作者在數(shù)據(jù)采集的過程中盡量以多個速度在機(jī)器人的運(yùn)動空間內(nèi)移動。設(shè)定實(shí)驗(yàn)裝置的運(yùn)行頻率為1kHz,采樣頻率為100Hz,整個采集過程持續(xù)6s,重復(fù)采樣過程3次。
圖7 數(shù)據(jù)采集流程圖
根據(jù)以上實(shí)驗(yàn),最終獲3×100×6=1800組訓(xùn)練數(shù)據(jù)樣本,從每次采樣過程中得到的數(shù)據(jù)(100×3=300)中隨機(jī)抽取100組數(shù)據(jù)作為檢驗(yàn)數(shù)據(jù),共300組檢驗(yàn)數(shù)據(jù)。
3.2.1 BP神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置
(1)輸入層與輸出層參數(shù)設(shè)置
(2)步長取值
步長取值的大小影響著整個神經(jīng)網(wǎng)絡(luò)的結(jié)果的好壞。經(jīng)過測試,本文將步長設(shè)定為 0.05。實(shí)驗(yàn)結(jié)果見表2。
表2 訓(xùn)練步長對系統(tǒng)的影響
(3)隱含層節(jié)點(diǎn)數(shù)量設(shè)置
根據(jù)經(jīng)驗(yàn)公式,隱含層節(jié)點(diǎn)的數(shù)量:
(14)
其中,q、n、m分別為隱含層、輸入層和輸出層節(jié)點(diǎn)數(shù)目,a為1~10之間的調(diào)節(jié)常數(shù)。經(jīng)過實(shí)驗(yàn)反復(fù)測試,本文將BP神經(jīng)網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)數(shù)設(shè)定為15。實(shí)驗(yàn)結(jié)果見表3。
表3 隱含層節(jié)點(diǎn)數(shù)量對系統(tǒng)的影響
3.2.2 遺傳算法的參數(shù)設(shè)計(jì)
(1)種群規(guī)模
種群規(guī)模(S)的大小對于遺傳算法收斂的速度以及能否達(dá)到預(yù)期優(yōu)化結(jié)果有很大影響。根據(jù)實(shí)際情況,本文將種群規(guī)模設(shè)定為100。
(2)迭代次數(shù)
遺傳算法的終止條件為:在限定的迭代次數(shù)中達(dá)到期望值或在沒有達(dá)到收斂精度的情況下,達(dá)到了迭代次數(shù)上限。本文根據(jù)實(shí)際情況將迭代次數(shù)設(shè)為500。
圖8為種群的平均適應(yīng)度值和最優(yōu)適應(yīng)度值得變化曲線。由圖可知,隨著進(jìn)化代數(shù)的增加,最優(yōu)個體的適應(yīng)度值一直在增加,體現(xiàn)了種群的最好個體在逐代進(jìn)化的過程。同時,種群個體的平均適應(yīng)度值逐漸向最優(yōu)適應(yīng)度值靠近,說明了將適應(yīng)度值高的個體保留并且進(jìn)化,最終獲得平均適應(yīng)度值較高的種群。適應(yīng)度值變化曲線說明了遺傳算法對BP神經(jīng)網(wǎng)絡(luò)確實(shí)進(jìn)行了優(yōu)化,得到了較好的網(wǎng)絡(luò)參數(shù)。
由于BP神經(jīng)網(wǎng)絡(luò)選擇的激勵函數(shù)為單極性Sigmoid函數(shù),值域有限,需將初始數(shù)據(jù)映射到激勵函數(shù)的值域內(nèi)。因此對初始數(shù)據(jù)進(jìn)行歸一化處理,轉(zhuǎn)換為[0,1]之間的處理數(shù)據(jù)。歸一化公式如下所示:
(15)
其中,輸入向量為x,max、min分別表示x的最大值與最小值,歸一化后的輸出向量為y。
綜上所述,在接觸式人機(jī)協(xié)作過程中,人的意圖體現(xiàn)于系統(tǒng)的動態(tài)表現(xiàn),因此可以通過系統(tǒng)的外在表現(xiàn)信息對人的意圖進(jìn)行估計(jì)。因此,本文提出了一種基于遺傳算法優(yōu)化改進(jìn)BP神經(jīng)網(wǎng)絡(luò)(簡稱GA-BP神經(jīng)網(wǎng)絡(luò))的合作者意圖理解方法,其原理如圖9所示。
圖9 GA-BP神經(jīng)網(wǎng)絡(luò)的合作者意圖理解原理圖
為檢驗(yàn)本文建立的GA-BP神經(jīng)網(wǎng)絡(luò)的預(yù)測效果,采用在3.1節(jié)中基于自適應(yīng)阻抗控制采集的檢驗(yàn)樣本進(jìn)行檢測。通過300組檢驗(yàn)數(shù)據(jù),得到如圖10所示的GA-BP神經(jīng)網(wǎng)絡(luò)的合作者意圖的預(yù)測值與真實(shí)值數(shù)據(jù)。
圖10 GA-BP神經(jīng)網(wǎng)絡(luò)的合作者意圖的預(yù)測值與真實(shí)值
為了驗(yàn)證本文所提GA-BP神經(jīng)網(wǎng)絡(luò)識別合作者意圖的方法具有更優(yōu)異的人機(jī)運(yùn)動同步性,可降低交互力,采用自適應(yīng)阻抗控制與本文方法進(jìn)行了對比實(shí)驗(yàn)。
基于本文實(shí)驗(yàn)裝置,分別采用自適應(yīng)阻抗控制方法和GA-BP神經(jīng)網(wǎng)絡(luò)的方法進(jìn)行實(shí)驗(yàn),分別繪制兩種方法的速度跟蹤曲線,如圖11和圖12所示。
圖11 自適應(yīng)阻抗控制方法速度跟蹤曲線圖
由圖11可知,在采用自適應(yīng)阻抗控制的方法實(shí)現(xiàn)接觸式人機(jī)協(xié)作過程中,實(shí)際機(jī)器人的跟蹤速度明顯滯后于合作者的期望速度,這一阻抗控制固有的延時特性限制了接觸式人機(jī)協(xié)作過程中對于人機(jī)同步性的要求,機(jī)器人一直處于被動跟隨狀態(tài)。
圖12 GA-BP神經(jīng)網(wǎng)絡(luò)方法的速度跟蹤曲線圖
由圖12可知,相比自適應(yīng)阻抗控制方法,本文提出的GA-BP神經(jīng)網(wǎng)絡(luò)的合作者意圖識別方法,消除了自適應(yīng)阻抗控制方法帶給系統(tǒng)的延時,實(shí)現(xiàn)了接觸式人機(jī)協(xié)作中機(jī)器人與合作者運(yùn)動同步。
為了進(jìn)一步說明本文提出的意圖理解方法能夠減小合作者交互力,使其能夠更加輕松完成合作任務(wù),分別采用自適應(yīng)阻抗控制和GA-BP神經(jīng)網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn),交互過程中,合作者在兩次實(shí)驗(yàn)中,盡力將機(jī)器人末端速度和運(yùn)行軌跡保持一致,提取合作者的交互力信息,如圖13所示。
圖13 自適應(yīng)阻抗控制方法與GA-BP神經(jīng)網(wǎng)絡(luò)方法交互力對比曲線圖
對比兩種控制方法,由圖13可知,相比于自適應(yīng)阻抗控制方法,GA-BP神經(jīng)網(wǎng)絡(luò)的意圖理解方法能夠很大程度上減小合作者對系統(tǒng)的作用力,效果明顯。
本文采用了機(jī)器學(xué)習(xí)的方法(GA-BP神經(jīng)網(wǎng)絡(luò)模型)實(shí)現(xiàn)了對接觸式人機(jī)協(xié)作中合作者意圖的識別。實(shí)驗(yàn)結(jié)果表明,GA-BP神經(jīng)網(wǎng)絡(luò)能夠準(zhǔn)確的理解合作者的意圖,改善了接觸式人機(jī)協(xié)作中運(yùn)動同步性,有效減小了交互過程中合作者作用力,降低了合作者的努力程度,使接觸式人機(jī)協(xié)作變得更加柔順,提高了機(jī)器人的智能化水平,為接觸式人機(jī)協(xié)作中合作者意圖理解等后續(xù)研究奠定了基礎(chǔ)。