陳龍新,曾 翔,吳鴻敏,廖亞軍,銀江濤
(1.廣東工業(yè)大學 機電工程學院,廣東 廣州 510006; 2.廣東嶺南職業(yè)技術學院 數(shù)控教研室,廣東 廣州 510663)
機器人應用領域的不斷擴張和對機器人智能化要求的不斷提高,促使人機協(xié)作成為機器人領域的熱門話題與研究方向。人機協(xié)作可以讓機器人更好地與人配合,提高生產(chǎn)效率,更好地適應當前大規(guī)模“個性定制”的生產(chǎn)需求。從20世紀90年代開始人們對協(xié)作機器人的本體設計進行了十分深入的研究,然而針對協(xié)作型機器人開發(fā)的協(xié)作系統(tǒng)的研究卻鮮有成熟的商業(yè)產(chǎn)品,這不利于協(xié)作型機器人的應用與推廣。近年來,有越來越多的學者投入到人機協(xié)作的研究中來[1],人機協(xié)作水平將成為衡量機器人優(yōu)劣的重要指標。
模仿學習是指模仿者通過“觀察”示教的運動行為,學習運動控制策略,進而獲取運動技能[2]。基于模仿學習的人機協(xié)作,通過簡單地示范機器人如何協(xié)作人完成任務,同時記錄人和機器人的狀態(tài)數(shù)據(jù)用于對交互概率模型進行訓練,從而描述任務過程中狀態(tài)的時空差異性。本文提出了一種基于模仿學習的方法來實現(xiàn)人機協(xié)作任務,并以協(xié)作型機器人Baxter作為實驗平臺,結合交互概率模型搭建人機協(xié)作系統(tǒng),通過實驗驗證模型的可行性。
本文搭建人機協(xié)作機器人系統(tǒng)開展研究,其主要硬件如圖1所示。以協(xié)作型機器人Baxter作為實驗平臺開展研究,該機器人在零力拖動模式下可拖動機器人末端到任意的可達空間進行任務的示范。同時,我們需要記錄人機協(xié)作任務示范過程中人的狀態(tài)[3-6]。本文中,我們采用體感相機Xtion,通過ROS(Robot Operating System)的程序包openni_tracker實現(xiàn)對人體骨架的跟蹤,以此針對人機協(xié)作任務對人和機器人的運動進行建模。

圖1 人機協(xié)作機器人系統(tǒng)的主要硬件設備
僅通過人的運動狀態(tài)來推測任務是有明顯缺陷的。假設以下情形:人手持不同物體執(zhí)行著不同的任務,而運動軌跡卻十分相似。在這種情況下,誤識別的可能性大大增加。由于當手持不同物體時,人手的肌肉信號是有所不同的,故肌電信號在人的任務識別中起著十分關鍵的作用。本文提出結合人的肌電信號輔助任務識別,采用加拿大Thalmic Labs公司推出的Myo腕帶,其配備的肌電信號傳感器可探測佩戴者對應的8處肌肉產(chǎn)生的電活動。
本文中通過對任務進行示范的方式,使機器人學習不同任務的協(xié)作技能,以協(xié)作人類完成任務。本文中記錄機器人的末端位姿和人的位姿及肌電信號,并以此作為交互概率模型的訓練樣本,其中人機協(xié)作的不同任務示范如圖2所示。
由于在人機協(xié)作任務中,人和機器人在每次的協(xié)作中其運動不總是一成不變的,所以如果要對協(xié)作任務進行一般性的描述,則需要捕獲任務過程中兩者運動的時空差異性。下文對運動的空間差異性和時間差異性進行建模,并將其統(tǒng)一到交互概率模型中,以對人機協(xié)作任務進行描述。在人機協(xié)作的任務中,通過對人的狀態(tài)的觀測,對任務的類型進行識別,并基于訓練得到的交互概率模型生成機器人的運動軌跡。為了提高任務的識別率,本文將肌電信號融入到該模型中,避免了錯誤的任務識別而造成的失敗的機器人運動生成。

圖2 人機協(xié)作的任務示范

采用線性回歸對單個訓練樣本進行描述,本文采用高斯基函數(shù)作為基函數(shù),則其回歸得到的概率形式的表達式為:
(1)
其中:Ht為時間步t的基函數(shù)矩陣,本文采用高斯基函數(shù)作為基函數(shù);ω是對應的權重向量;Σy為零均值高斯噪聲的協(xié)方差矩陣。
線性回歸實質(zhì)上是對運動軌跡進行參數(shù)化的過程,為了捕獲運動的空間差異性,假設有:
p(ω|θ)=N(ω|μω,Σω).
(2)
其中:θ={μω,Σω}為權重向量ω的概率分布參數(shù),μω和Σω分別為ω的高斯分布的均值和協(xié)方差矩陣。
基于yt的概率分布p(yt|ω)依賴于ω,而ω的概率分布p(ω|θ)又依賴于θ,由此可知,通過若干訓練樣本得到的時間步t上的運動分布p(yt|θ)符合層次貝葉斯模型(Hierarchical Bayesian Model,HBM),如圖3所示。
由于每次任務示范中人手運動速度的不確定性,每個示范數(shù)據(jù)的時間長度是不盡相同的,因此有必要對運動進行時間上的對齊,并對時間差異性進行建模。

圖3 層次貝葉斯模型
本文對所有訓練樣本在時間維度上進行線性縮放,使得所有訓練樣本的時長都為固定的名義時長Tnorm,從而使所有新的訓練樣本均完成了時間上的對齊。對于時長為T的訓練樣本,定義時長因子為:
α=T/Tnorm.
(3)
通過α的概率分布p(α)來描述運動的時間差異性,本文假設α服從高斯分布,即有:
(4)

對于時長為α的訓練樣本,為實現(xiàn)將其在時間維度上進行線性縮放,在時間步上對基函數(shù)矩陣做時間維度的線性縮放得到新的基函數(shù)矩陣At,它與公式(1)中基函數(shù)矩陣Ht的關系為:
At=Hαt.
(5)
其中:Hαt表示時間步(αt)的基函數(shù)矩陣。
圖4為交互概率模型。

圖4 交互概率模型
圖4中,線性回歸得到的參數(shù)ω的概率分布是對運動的空間差異性進行建模,時長因子α的概率分布是對運動的時間差異性進行建模,而對時間依賴的基函數(shù)矩陣A將時間和空間的差異性統(tǒng)一到一個概率模型中。
又由于p(yt|θ)符合HBM,故可通過邊緣化ω得到時間t步下的運動狀態(tài)y的概率分布:
(6)
其中:p(yt|ω,α)為yt在權重向量ω、時長因子α下的似然概率分布,且p(yt|ω,α)=N(yt|Atω,Σy)=N(yt|Hatω,Σy)。

在K個任務的人機協(xié)作場景中,對所有任務模型分別估計其時長因子。具體的方法是通過最大后驗估計,得到任務的時長因子為:
(7)


(8)


將y中表示機器人運動狀態(tài)的部分取出,可得到機器人的運動軌跡,機器人通過執(zhí)行該軌跡即可輔助人完成對應的任務。
當人的運動在各個人機協(xié)作任務中的運動相似時,單純地通過人的運動進行任務識別將會失效,而肌電信號對于人手持不同物體的場景十分地具有區(qū)分度。上述的模型對機器人和人的運動進行建模,本質(zhì)上該模型討論的是時間序列,故可把人的肌電信號級聯(lián)到原來的狀態(tài)向量中為:
(9)
其中:符號(·)EMG表示該數(shù)值屬于測得的肌電信號。

本文設置人機協(xié)作任務的實驗,利用每個任務的示范獲得若干的訓練樣本,對交互概率模型進行訓練。在人機協(xié)作的測試場景中,采集人的運動和肌電信號,通過交互概率模型識別任務,并生成相應的機器人運動軌跡。
實驗中,設置了3個不同的人機協(xié)作任務實驗,如圖2所示。在任務的示范過程中,利用ROS采集 Baxter機器人末端夾持器的運動,通過Xtion相機捕捉人手腕部的運動,以及用Myo腕帶對人手腕部肌電信號進行讀取,示范中記錄得到的上述數(shù)據(jù)作為交互概率模型的訓練樣本。
通過設置對比實驗分析肌電信號在人機協(xié)作任務中的重要性。在沒有肌電信號的情況下,任務的平均識別率為49.2%,而在有肌電信號的情況下任務的平均識別率為85.8%。因此在任務的識別中,肌電信號起著十分顯著的作用。
在完成任務識別后,通過若干人的運動狀態(tài)的觀測點,可生成機器人的運動軌跡,如圖5所示。該軌跡與真實值基本吻合,證明了該模型下機器人軌跡泛化性能。

圖5 機器人運動軌跡的生成
本文介紹了一種基于模仿學習的人機協(xié)作的任務建模方法,通過人工示范的方式,獲得各個任務的訓練樣本。利用訓練樣本對交互概率模型進行訓練,進而實現(xiàn)任務識別和機器人運動軌跡生成。本文將肌電信號級聯(lián)到原來的運動狀態(tài)向量中,大大地提高了任務的識別率,為后續(xù)的機器人運動軌跡生成奠定了基礎。也證明利用交互概率模型對任務的時空差異性建模,具有十分強的泛化能力。