殷聰聰,張秋菊+
1.江南大學(xué) 機(jī)械工程學(xué)院,江蘇 無(wú)錫 214122
2.江蘇省食品先進(jìn)制造裝備技術(shù)重點(diǎn)實(shí)驗(yàn)室,江蘇 無(wú)錫 214122
近年來(lái)機(jī)器人產(chǎn)業(yè)發(fā)展迅猛,2019 年全球機(jī)器人市場(chǎng)規(guī)模預(yù)計(jì)將達(dá)到294.1億美元,2014—2019年的平均增長(zhǎng)率約為12.3%[1]。從統(tǒng)計(jì)數(shù)據(jù)中可以看出無(wú)論工業(yè)機(jī)器人還是服務(wù)機(jī)器人,產(chǎn)業(yè)規(guī)模都在快速增長(zhǎng)。
工業(yè)機(jī)器人在制造業(yè)中的應(yīng)用越來(lái)越廣泛,從最初的汽車(chē)制造業(yè),到近年來(lái)快速發(fā)展的3C 電子產(chǎn)品制造業(yè),工業(yè)機(jī)器人在其中都發(fā)揮著重要作用。然而,隨著社會(huì)經(jīng)濟(jì)的快速發(fā)展,工業(yè)產(chǎn)品逐步呈現(xiàn)出多品種、小批量、短周期的特點(diǎn)[2],這對(duì)機(jī)器人編程的便捷性和快速性提出了更高的要求。傳統(tǒng)工業(yè)機(jī)器人的編程方式對(duì)從業(yè)人員的編程水平有著較高的要求,并且編程周期較長(zhǎng),針對(duì)一種新的產(chǎn)品,機(jī)器人編程調(diào)試可能要花費(fèi)數(shù)天,甚至數(shù)周的時(shí)間,難以滿(mǎn)足產(chǎn)品多品種、小批量、短周期的生產(chǎn)需求。服務(wù)機(jī)器人近年來(lái)也取得了快速發(fā)展,尤其家庭服務(wù)機(jī)器人,已逐步走進(jìn)日常生活。與工業(yè)機(jī)器人相比,服務(wù)機(jī)器人主要針對(duì)的是非專(zhuān)業(yè)用戶(hù),這對(duì)機(jī)器人編程的人機(jī)交互體驗(yàn)提出了更高的要求。
下一代智能機(jī)器人有望實(shí)現(xiàn)和人類(lèi)協(xié)作共同完成任務(wù)。這就需要機(jī)器人能夠在非結(jié)構(gòu)化環(huán)境中靈活、安全、可靠地與人類(lèi)互動(dòng)。其中需要解決的兩個(gè)重要問(wèn)題是:機(jī)器人如何理解人類(lèi)動(dòng)作以及如何執(zhí)行所學(xué)的任務(wù)。
針對(duì)上述情況,基于演示學(xué)習(xí)(learning from de-monstration,LfD)的機(jī)器人編程技術(shù)的研究逐漸興起。演示學(xué)習(xí)編程技術(shù)是通過(guò)人的示范行為向機(jī)器人傳遞知識(shí)的一種新方式,不需要專(zhuān)業(yè)人員通過(guò)編程語(yǔ)言來(lái)告訴機(jī)器人應(yīng)該怎么做,而是讓機(jī)器人具備識(shí)別并理解操作人員示范行為中的有效信息,并能夠?qū)⑦@些信息轉(zhuǎn)換成機(jī)器人的執(zhí)行文件,進(jìn)而重現(xiàn)操作人員的示范行為,完成相應(yīng)任務(wù)的能力[3]。該技術(shù)不僅可以大幅降低工業(yè)機(jī)器人的編程難度,還可以大幅提高工業(yè)機(jī)器人的編程效率,可推廣應(yīng)用到家庭服務(wù)機(jī)器人、特種機(jī)器人等領(lǐng)域,對(duì)提高機(jī)器人智能化水平,提高制造業(yè)生產(chǎn)效率以及提升服務(wù)機(jī)器人的人機(jī)交互體驗(yàn)都具有重要意義。
歐美國(guó)家在機(jī)器人演示學(xué)習(xí)方面的研究起步較早。20世紀(jì)90年代已有學(xué)者提出基于隱馬爾可夫模型的人體演示技能獲取方法[4]。2008年,Billard等人[5]指出機(jī)器人演示編程(programming by demonstration,PbD)是一種很有前途的方法,它可以使繁瑣的機(jī)器人手工編程自動(dòng)化,降低工廠(chǎng)中機(jī)器人開(kāi)發(fā)和維護(hù)的成本。同時(shí)提出,PbD 也可以稱(chēng)為機(jī)器人模仿學(xué)習(xí)。2011 年,Aksoy 等人[6]提出采用語(yǔ)義事件鏈(se-mantic event chain,SEC)來(lái)描述演示操作過(guò)程中對(duì)象關(guān)系的變化,以便于機(jī)器人在新的場(chǎng)景中重現(xiàn)演示任務(wù)。2015 年,Cubek 等人[7]使用概念空間讓機(jī)器人在更高的概念抽象級(jí)別上解釋人類(lèi)演示的抓取和放置動(dòng)作。近年來(lái),在工業(yè)機(jī)器人領(lǐng)域的機(jī)器人演示編程研究逐漸增多。2017年,Ramirez-Amaro等人[8-9]開(kāi)發(fā)了一種可快速部署的工業(yè)機(jī)器人演示編程系統(tǒng)。該系統(tǒng)借助一種電子皮膚和深度相機(jī)來(lái)獲取人類(lèi)的演示信息,使非專(zhuān)業(yè)的操作者能夠?qū)I(yè)機(jī)器人進(jìn)行新的任務(wù)編程。2018 年,Kyrarini 等人[10]提出一種機(jī)器人學(xué)習(xí)框架,通過(guò)演示讓機(jī)器人學(xué)習(xí)裝配任務(wù)的動(dòng)作順序,而不需要預(yù)先編程。
國(guó)內(nèi)雖然對(duì)機(jī)器人演示學(xué)習(xí)的研究起步較晚,但近年來(lái)也取得了一些重要成果,值得后續(xù)的研究者們借鑒學(xué)習(xí)。2014 年,深圳機(jī)器人學(xué)院的Gu 等人[11]為了通過(guò)人體演示使機(jī)器人獲得裝配技能,利用RGB-D 攝像機(jī),建立了一個(gè)可識(shí)別零件/工具、動(dòng)作和裝配狀態(tài)的便攜式裝配演示系統(tǒng),該系統(tǒng)能夠生成裝配腳本,具有良好的目標(biāo)識(shí)別、動(dòng)作識(shí)別和裝配狀態(tài)估計(jì)精度。東南大學(xué)馬旭東教授等人[12-13]對(duì)服務(wù)機(jī)器人的演示學(xué)習(xí)進(jìn)行了深入研究,將服務(wù)機(jī)器人的任務(wù)分為聯(lián)動(dòng)任務(wù)和非聯(lián)動(dòng)任務(wù),并分別設(shè)計(jì)不同的學(xué)習(xí)方法。浙江大學(xué)的熊蓉教授等人[14-16]針對(duì)工業(yè)裝配任務(wù)的演示編程進(jìn)行了廣泛的研究。開(kāi)發(fā)了基于概率圖的空間裝配關(guān)系推理系統(tǒng),著重研究了演示過(guò)程中動(dòng)作識(shí)別與物體跟蹤方法,建立了一個(gè)機(jī)器人裝配任務(wù)自動(dòng)編程框架。
國(guó)內(nèi)外研究者都對(duì)機(jī)器人演示編程(PbD)開(kāi)展了廣泛的研究。本文針對(duì)不同的演示學(xué)習(xí)方式,對(duì)近年來(lái)較為典型的研究工作進(jìn)行綜述,探討現(xiàn)階段機(jī)器人演示學(xué)習(xí)面臨的挑戰(zhàn),并指明其發(fā)展趨勢(shì)。
LfD編程技術(shù)按照傳感器的類(lèi)型分為:動(dòng)覺(jué)演示編程[17-18]、視覺(jué)演示編程[19-21]、遙操作演示編程[22]。按照其學(xué)習(xí)信息的邏輯層次可以分為:基于運(yùn)動(dòng)的演示學(xué)習(xí)[17-18,20,23]和基于任務(wù)的演示學(xué)習(xí)[19,21,24-25]。本文采用按照其學(xué)習(xí)信息的邏輯層次進(jìn)行分類(lèi)闡述,如圖1所示。
Fig.1 Classification of robot learning from demonstration圖1 機(jī)器人演示學(xué)習(xí)分類(lèi)
基于任務(wù)的演示學(xué)習(xí)和基于運(yùn)動(dòng)的演示學(xué)習(xí)在行為表達(dá)上分別對(duì)應(yīng)于語(yǔ)義符號(hào)層面和運(yùn)動(dòng)軌跡層面[26]。也有的研究工作中這兩種演示學(xué)習(xí)方法同時(shí)被采用,以應(yīng)對(duì)不同類(lèi)型的演示學(xué)習(xí)編程任務(wù)[26-27]?;谌蝿?wù)的演示學(xué)習(xí)將機(jī)器人觀察到的人類(lèi)的示范行為和人類(lèi)與場(chǎng)景中物體的交互行為采用符號(hào)基元進(jìn)行描述,整個(gè)示范行為由一個(gè)語(yǔ)義符號(hào)描述序列來(lái)表達(dá);基于運(yùn)動(dòng)的演示學(xué)習(xí)則直接記錄人類(lèi)示范行為的運(yùn)動(dòng)軌跡,用傳感器記錄的軌跡和運(yùn)動(dòng)規(guī)劃器所規(guī)劃的軌跡之間的非線(xiàn)性映射關(guān)系來(lái)描述人類(lèi)的示范行為。
與傳統(tǒng)的機(jī)器人示教編程技術(shù)不同的是,演示學(xué)習(xí)編程技術(shù)不是簡(jiǎn)單重復(fù)人類(lèi)的演示動(dòng)作,而是要從示范行為數(shù)據(jù)中提取到有效信息,生成相應(yīng)的運(yùn)動(dòng)模型,并能夠?qū)⑵鋺?yīng)用到新的任務(wù)場(chǎng)景中,具備一定的軌跡泛化和任務(wù)泛化能力,能夠根據(jù)學(xué)習(xí)到的技能在新的場(chǎng)景下完成相應(yīng)的任務(wù)。因此,演示學(xué)習(xí)編程技術(shù)可以分為演示和執(zhí)行兩個(gè)階段:在演示階段,機(jī)器人需要識(shí)別人類(lèi)的示范行為,并且能夠?qū)π袨橹械淖觿?dòng)作進(jìn)行分割,由此建立運(yùn)動(dòng)基元庫(kù);在執(zhí)行階段,需要根據(jù)行為的抽象表示和運(yùn)動(dòng)基元建立具有泛化能力的運(yùn)動(dòng)模型,以滿(mǎn)足新場(chǎng)景下完成任務(wù)的要求。
基于運(yùn)動(dòng)的演示學(xué)習(xí)根據(jù)是否需要關(guān)節(jié)或者末端映射可以分為映射方式和非映射方式。其中,映射方式又分為關(guān)節(jié)映射和末端映射兩種。
映射學(xué)習(xí)方式通常采用視覺(jué)識(shí)別或數(shù)據(jù)手套等方式來(lái)提取人的示范行為中關(guān)節(jié)或手末端的運(yùn)動(dòng)軌跡信息,并將處理后的軌跡信息映射到機(jī)器人空間,使機(jī)器人能夠重現(xiàn)操作人員的演示動(dòng)作。
若僅識(shí)別提取人手末端或者人手所持的工具的運(yùn)動(dòng)軌跡信息,稱(chēng)之為末端映射方式。Huang等[20]提出了一種基于視覺(jué)的多機(jī)器人操作演示學(xué)習(xí)。操作人員首先演示如何使用工具執(zhí)行任務(wù),同時(shí)使用視覺(jué)系統(tǒng)觀察工具的運(yùn)動(dòng)。然后使用統(tǒng)計(jì)模型對(duì)演示進(jìn)行編碼,以生成參考運(yùn)動(dòng)軌跡。機(jī)器人使用相同的工具和學(xué)習(xí)模型,在視覺(jué)的引導(dǎo)下完成任務(wù)。如圖2所示,該方法為了快速精確地跟蹤手持工具的運(yùn)動(dòng)軌跡,在工具上設(shè)置了一個(gè)五面體二維碼以確保任何一個(gè)角度下相機(jī)都可以看到兩個(gè)不平行平面上的二維碼,用于估算工具末端位姿。
Fig.2 Pentahedral QR code used to estimate terminal pose圖2 用于估算末端位姿的五面體二維碼
如圖3所示,張思倫[28]利用二維碼作為人手末端位姿軌跡估計(jì)的標(biāo)記,并提出在動(dòng)態(tài)運(yùn)動(dòng)基元(dyna-mic movement primitives,DMPS)中加入運(yùn)動(dòng)特征與障礙物的耦合項(xiàng)因子,拓展為具備避障功能的運(yùn)動(dòng)規(guī)劃系統(tǒng),使得機(jī)器人能夠從操作人員多次演示軌跡中根據(jù)實(shí)際場(chǎng)景中障礙物的約束自主泛化出新的軌跡。
Fig.3 Estimation of human hand end pose trajectory using QR code圖3 利用二維碼估算人手末端位姿軌跡
除了利用多面體二維碼或者平面二維碼作為運(yùn)動(dòng)軌跡和位姿的標(biāo)記外,還有的研究者針對(duì)具體的工作場(chǎng)景,設(shè)計(jì)了專(zhuān)門(mén)的標(biāo)記物。Ferreira 等[29]針對(duì)噴漆等作業(yè)條件較為惡劣的應(yīng)用場(chǎng)景,設(shè)計(jì)了一個(gè)帶有多個(gè)高強(qiáng)度led 發(fā)光標(biāo)記的20 面體結(jié)構(gòu)(如圖4所示)。其優(yōu)點(diǎn)是,結(jié)構(gòu)緊湊,方便安裝,對(duì)作業(yè)環(huán)境的光線(xiàn)沒(méi)有要求,使機(jī)器人能夠快速根據(jù)演示行為自主編程。Lin 等[30]設(shè)計(jì)了一種示教筆(如圖5 所示),利用運(yùn)動(dòng)捕捉系統(tǒng)捕捉示教筆上的標(biāo)記點(diǎn)位置,計(jì)算出示教筆的姿態(tài)。通過(guò)記錄示教筆的軌跡,并將其映射到機(jī)器人的末端來(lái)實(shí)現(xiàn)工業(yè)機(jī)器人的自動(dòng)編程。
Fig.4 Icosahedral structure with luminescent mark圖4 有發(fā)光標(biāo)記的20面體結(jié)構(gòu)
Fig.5 Schematic diagram of teaching pen teaching system圖5 示教筆示教系統(tǒng)示意圖
目前針對(duì)末端軌跡的學(xué)習(xí)映射方式多采用上述設(shè)置固定標(biāo)記特征點(diǎn)的方案,這類(lèi)方案的優(yōu)點(diǎn)可以較為精確地估算出工具末端的姿態(tài)和精確地記錄末端軌跡。由于設(shè)置有特殊的標(biāo)記點(diǎn),特征提取速度很快,軌跡跟蹤可以做到很高的幀率,可以滿(mǎn)足較高的實(shí)時(shí)性要求。然而,此類(lèi)方法的缺點(diǎn)也較為明顯,尤其是在一些需要徒手操作的場(chǎng)景下,人手不可能在持有特殊標(biāo)記物的情況下再執(zhí)行其他任務(wù)。固定標(biāo)記物只是解決了某個(gè)點(diǎn)的軌跡跟蹤問(wèn)題,對(duì)于某些需要人手多指配合,甚至是雙手配合完成的工作,此類(lèi)方法基本是無(wú)效的。因此,如何快速高精度地跟蹤記錄徒手操作的運(yùn)動(dòng)軌跡,或者設(shè)計(jì)一種不影響徒手操作的標(biāo)記物等問(wèn)題還有待于進(jìn)一步研究。
與末端映射相對(duì)應(yīng)的是關(guān)節(jié)映射。王朝陽(yáng)[31]采用Kinect相機(jī)獲取人臂特征點(diǎn)的位置數(shù)據(jù),提出并推導(dǎo)了一種基于肘部約束的冗余七自由度逆運(yùn)動(dòng)學(xué)解法來(lái)獲得人臂關(guān)節(jié)角度數(shù)據(jù),建立了人機(jī)7-DOF 關(guān)節(jié)映射將人臂運(yùn)動(dòng)傳遞給機(jī)械臂。如圖6所示,該方法實(shí)現(xiàn)了基于視覺(jué)的人體手臂對(duì)機(jī)械臂的直接示教。與此類(lèi)似,Jha 等[32]利用人手臂和機(jī)器人的運(yùn)動(dòng)學(xué)模型以及基于Kinect 的運(yùn)動(dòng)傳感系統(tǒng)實(shí)現(xiàn)對(duì)機(jī)器人的視覺(jué)示教。如圖7所示,與王朝陽(yáng)的工作不同之處在于Jha等采用了多臺(tái)相機(jī)從不同角度采集人體姿態(tài)數(shù)據(jù),并加以互補(bǔ)融合得到更為精確的軌跡數(shù)據(jù)。
Fig.6 Teaching of manipulator based on vision圖6 基于視覺(jué)的機(jī)械臂示教
Fig.7 Teaching system of manipulator with multiple Kinects圖7 采用多臺(tái)Kinect的機(jī)械臂示教系統(tǒng)
Sander等[33]提出一種基于遺傳算法(genetic algo-rithm,GA)和主成分分析(principal components ana-lysis,PCA)技術(shù)相結(jié)合的學(xué)習(xí)算法,用于仿人機(jī)器人模擬人自舉動(dòng)作。如圖8 所示,在這項(xiàng)工作中,視覺(jué)引導(dǎo)技術(shù)成功地應(yīng)用于學(xué)習(xí)捕捉人體姿勢(shì)。
Fig.8 Humanoid robot simulating human self lifting action圖8 仿人機(jī)器人模擬人自舉動(dòng)作
從上述工作中可以看出,關(guān)節(jié)映射方式適用于仿人機(jī)器人或者結(jié)構(gòu)與人體類(lèi)似的機(jī)械臂,能夠讓機(jī)器人做出更類(lèi)似于人的動(dòng)作。但是,因?yàn)槿耸直圩杂啥容^多,將其映射到結(jié)構(gòu)差異較大的機(jī)器人空間中非常困難。而末端映射方式的使用場(chǎng)景較為廣泛,無(wú)需考慮機(jī)器人結(jié)構(gòu)上的差異,只需要關(guān)注機(jī)器人末端軌跡,機(jī)器人其他關(guān)節(jié)的運(yùn)動(dòng)可采用其他算法根據(jù)實(shí)際情況進(jìn)行規(guī)劃。
非映射方式是指從機(jī)器人本體的運(yùn)動(dòng)數(shù)據(jù)中學(xué)習(xí),通常通過(guò)牽引或者遙操作來(lái)控制機(jī)器人進(jìn)行示范運(yùn)動(dòng)[34]。
Chen等[35]利用KUKA LBR iiwa機(jī)器人的拖動(dòng)演示的功能,針對(duì)指定任務(wù)進(jìn)行多次拖動(dòng)示教,然后利用高斯混合回歸對(duì)人的示范動(dòng)作進(jìn)行粗略建模,接著基于李雅普諾夫穩(wěn)定性定理,建立了一個(gè)約束非線(xiàn)性?xún)?yōu)化模型,并對(duì)之前的微分方程進(jìn)行了迭代求解,最后得到機(jī)器人在動(dòng)態(tài)場(chǎng)景下的動(dòng)作泛化能力。如圖9 所示,即使每次瓶子所放置的位置不一樣,機(jī)器人依然可以通過(guò)軌跡泛化來(lái)得到新的運(yùn)動(dòng)路徑去完成抓取瓶子的任務(wù)。
Fig.9 Completing dynamic tasks through teaching and learning圖9 通過(guò)示教學(xué)習(xí)完成動(dòng)態(tài)任務(wù)
采用拖動(dòng)示教的機(jī)器人通常在末端設(shè)置有一個(gè)六維力傳感器或者機(jī)器人關(guān)節(jié)中配置有力矩傳感器。因此機(jī)器人不僅僅可以獲取示教過(guò)程中的軌跡信息,還可以獲取在演示過(guò)程中的交互力信息。Duan等[36]提出了一個(gè)新的學(xué)習(xí)框架,該框架采用序貫學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)對(duì)機(jī)器人運(yùn)動(dòng)進(jìn)行編碼,并采用一種新的基于力的變阻抗學(xué)習(xí)方法來(lái)估計(jì)三個(gè)方向的變化阻尼和剛度矩陣。通過(guò)多次拖動(dòng)演示記錄軌跡和力信息(如圖10 所示),演示結(jié)束后,無(wú)需手動(dòng)編碼,可以自動(dòng)獲得統(tǒng)一的控制策略。該項(xiàng)研究中機(jī)器人從演示動(dòng)作中不僅學(xué)習(xí)到了軌跡信息,還學(xué)習(xí)到了示范行為中的柔順性。
Fig.10 Obtaining interaction information from demonstration圖10 從演示中獲取交互力信息
采用拖動(dòng)演示的方式,往往存在一些冗余動(dòng)作,不能充分利用機(jī)器人的自由度。針對(duì)這個(gè)問(wèn)題,Koc等[37]提出一種演示參數(shù)稀疏學(xué)習(xí)算法(learning sparse demonstration parameters,LSDP),來(lái)實(shí)現(xiàn)關(guān)節(jié)空間參數(shù)的稀疏性,該方法將多任務(wù)彈性網(wǎng)絡(luò)回歸與非線(xiàn)性?xún)?yōu)化交替進(jìn)行。彈性網(wǎng)絡(luò)將解投射到稀疏特征集上,而在非線(xiàn)性?xún)?yōu)化過(guò)程中,這些特征(基函數(shù))在二次優(yōu)化中與數(shù)據(jù)相適應(yīng)。如圖11 所示,該方法可以成功地在較少參數(shù)的情況下捕捉到動(dòng)作的風(fēng)格,減少冗余運(yùn)動(dòng)的產(chǎn)生。
Fig.11 Learning action style from demonstration圖11 從演示中學(xué)習(xí)動(dòng)作風(fēng)格
從已有的研究工作中可以看出,非映射學(xué)習(xí)方式需要機(jī)器人本身具備相應(yīng)的功能,而且對(duì)于小而精的任務(wù)難以通過(guò)拖動(dòng)示教的方式進(jìn)行學(xué)習(xí),無(wú)法對(duì)于需要雙手完成的工作進(jìn)行演示。而映射方式,尤其是末端映射學(xué)習(xí)方式,可以借助外部傳感器,進(jìn)行非接觸式自然學(xué)習(xí)。特別是近年來(lái)發(fā)展迅速的視覺(jué)傳感器在末端映射學(xué)習(xí)中應(yīng)用越來(lái)越廣泛。
基于運(yùn)動(dòng)的演示學(xué)習(xí)主要是學(xué)習(xí)示范行為中動(dòng)作的軌跡信息與交互力信息,然后根據(jù)所提取的有效信息建立相應(yīng)的運(yùn)動(dòng)控制模型,來(lái)提高機(jī)器人對(duì)工作場(chǎng)景變化后的自適應(yīng)性。而基于任務(wù)的演示學(xué)習(xí)則注重對(duì)任務(wù)語(yǔ)義層次的學(xué)習(xí),需要對(duì)獲取的信息進(jìn)行理解和推理,并能夠?qū)⑵鋺?yīng)用到相應(yīng)的任務(wù)中。與基于運(yùn)動(dòng)的演示學(xué)習(xí)相比,基于任務(wù)的演示學(xué)習(xí)能更好地適應(yīng)任務(wù)環(huán)境的變動(dòng)。因此,基于任務(wù)的演示學(xué)習(xí)引起了很多研究者的關(guān)注,逐漸成為研究熱點(diǎn)。按照不同類(lèi)型的任務(wù)語(yǔ)義,基于任務(wù)的演示學(xué)習(xí)可以分為基于物體位姿變化的語(yǔ)義學(xué)習(xí)、基于行為動(dòng)作的語(yǔ)義學(xué)習(xí)、基于操作規(guī)則的語(yǔ)義學(xué)習(xí)三類(lèi)。
基于物體位姿變化的語(yǔ)義學(xué)習(xí)是指通過(guò)識(shí)別判斷物體在被操作前后的位姿空間關(guān)系來(lái)推理出操作行為的語(yǔ)義信息。如圖12 所示,Dantam 等[38]通過(guò)演示中的物體間的裝配邏輯,將人類(lèi)裝配演示行為離散化為語(yǔ)義上相關(guān)的對(duì)象連接操作序列。然后,從一組任務(wù)演示中推斷出表示任務(wù)語(yǔ)義信息的機(jī)器人動(dòng)作語(yǔ)法。最后,將任務(wù)語(yǔ)義與機(jī)器人的動(dòng)作語(yǔ)法結(jié)合起來(lái),在仿真中展示了機(jī)器人執(zhí)行所演示的裝配任務(wù)。該工作實(shí)現(xiàn)了裝配任務(wù)從人到機(jī)器人的自動(dòng)轉(zhuǎn)移。
Fig.12 Learning assembly sequence from demonstration圖12 從演示中學(xué)習(xí)裝配序列
Ahmadzadeh等[39]提出了一種融合模仿學(xué)習(xí)(imita-tion learning,IL)、視覺(jué)空間技能學(xué)習(xí)(visuospatial skill learning,VSL)和傳統(tǒng)規(guī)劃方法的機(jī)器人學(xué)習(xí)方法。該方法能夠通過(guò)觀察演示來(lái)學(xué)習(xí)連續(xù)的任務(wù)。利用IL 學(xué)習(xí)基于軌跡的原始動(dòng)作,VSL 通過(guò)視覺(jué)感知學(xué)習(xí)操作的順序。如圖13 所示,通過(guò)判斷物塊的空間位置來(lái)學(xué)習(xí)演示動(dòng)作中的推拉語(yǔ)義信息。
Fig.13 Inferring operation semantics according to change of location of object block圖13 根據(jù)物塊的位置變化推理操作語(yǔ)義
Ahmadzadeh 的研究中沒(méi)有涉及到多個(gè)物體之間的位置關(guān)系,當(dāng)任務(wù)中存在多個(gè)被操作物體時(shí),問(wèn)題將會(huì)變得復(fù)雜。如圖14所示,Das等[40]提出一種基于符號(hào)編碼的技能學(xué)習(xí)方法,針對(duì)任務(wù)中的多個(gè)物體,分別提取它們的絕對(duì)位置變化(absolute position change,APC)、相對(duì)位置變化(relative position change,RPC)、絕對(duì)方向變化(absolute orientation change,AOC)、相對(duì)方向變化(relative orientation change,ROC)以及各物體間的鄰近關(guān)系推理出演示動(dòng)作的序列關(guān)系。最后調(diào)用規(guī)劃模塊來(lái)讓機(jī)器人執(zhí)行用戶(hù)想要放置的對(duì)象的動(dòng)作序列。
Fig.14 Operation sequence reasoning圖14 操作序列推理
在有些場(chǎng)景中,不僅包含被操作物本身,還包含不同類(lèi)型的操作工具。Gu等[41]建立了一個(gè)便攜式裝配演示(portable assembly demonstration,PAD)系統(tǒng),該系統(tǒng)能夠自動(dòng)識(shí)別所涉及的對(duì)象(部件/工具)、所進(jìn)行的動(dòng)作以及表征部件間空間關(guān)系的裝配狀態(tài)。如圖15所示,為了方便表征部件的識(shí)別定位,該系統(tǒng)在部件上貼有二維碼,并通過(guò)工具與物體之間的交互行為來(lái)推理裝配關(guān)系。
Fig.15 Inferring assembly relationship through interaction between tool and object圖15 通過(guò)工具與物體的交互推理裝配關(guān)系
基于物體位姿變化的語(yǔ)義學(xué)習(xí)注重的是物體間的空間關(guān)系,避免直接識(shí)別較為復(fù)雜的手勢(shì)動(dòng)作,適合物體種類(lèi)固定的且操作邏輯簡(jiǎn)單的場(chǎng)景,例如:分揀、抓取等。然而有些場(chǎng)景下,物體被操作前后沒(méi)有明顯的位置變化。例如裝配任務(wù)中的按壓操作、擰緊操作對(duì)工件的空間位置變化影響很小,難以被察覺(jué)。因此,在需要對(duì)物體進(jìn)行精細(xì)化操作的場(chǎng)景中,僅通過(guò)物體位姿變化難以提取動(dòng)作的語(yǔ)義信息。
基于行為動(dòng)作的語(yǔ)義學(xué)習(xí)是指通過(guò)對(duì)示范行為的識(shí)別分割,根據(jù)前后動(dòng)作的邏輯關(guān)系推理出任務(wù)的語(yǔ)義信息。Lambrecht等[42]設(shè)計(jì)了一種基于無(wú)標(biāo)記手勢(shì)識(shí)別和移動(dòng)增強(qiáng)現(xiàn)實(shí)技術(shù)的工業(yè)機(jī)器人編程系統(tǒng)。用戶(hù)可以在三維空間中通過(guò)手勢(shì)與真實(shí)或虛擬對(duì)象進(jìn)行自然交互,程序員可以在機(jī)器人工作空間的一張桌子上移動(dòng)和旋轉(zhuǎn)他面前的虛擬物體,根據(jù)變化自動(dòng)調(diào)整機(jī)器人程序。研究中通過(guò)對(duì)pick-and-place 任務(wù)編程的演示,展示了該系統(tǒng)任務(wù)級(jí)編程的能力。該系統(tǒng)可以使非專(zhuān)業(yè)人員在沒(méi)有廣泛實(shí)踐和經(jīng)驗(yàn)的情況下定義、評(píng)估和操作機(jī)器人任務(wù)。如圖16所示,與其他研究中多采用固定相機(jī)的方式不同,該系統(tǒng)中除了配置有固定相機(jī),還配置有一個(gè)手持相機(jī)設(shè)備用于輔助識(shí)別人的操作手勢(shì)。通過(guò)這種方式可以在一定程度上減弱視線(xiàn)遮擋對(duì)手勢(shì)識(shí)別的影響。但是利用現(xiàn)有移動(dòng)設(shè)備上的相機(jī)作為輔助相機(jī),影響人操作的靈活性,并且只能單手操作。如圖17所示,Chen 等[43]設(shè)計(jì)了一種可穿戴的手勢(shì)視覺(jué)識(shí)別設(shè)備,通過(guò)手腕處的相機(jī)采集手勢(shì)圖像,較好地解決了常規(guī)固定相機(jī)存在的視線(xiàn)遮擋問(wèn)題,便于演示人員靈活操作。
Fig.16 Hand camera assisting gesture recognition圖16 手持相機(jī)輔助手勢(shì)識(shí)別
Fig.17 Wearable camera equipment圖17 可穿戴相機(jī)設(shè)備
Ramirez-Amaro等[44]提出一種結(jié)合手部運(yùn)動(dòng)信息和兩種物體屬性來(lái)提取人類(lèi)演示行為意義的方法。該方法通過(guò)在演示學(xué)習(xí)過(guò)程中采集的人的運(yùn)動(dòng)信息(move,not move,tool use)和物體狀態(tài)屬性(object acted on,object in hand)來(lái)構(gòu)建知識(shí)庫(kù)。如圖18 所示,機(jī)器人利用知識(shí)庫(kù)中的信息推理出新任務(wù)中的動(dòng)作序列。
Lin等[45]提出一種卷積神經(jīng)網(wǎng)絡(luò)用來(lái)識(shí)別演示動(dòng)作中的手勢(shì)并生成動(dòng)作序列,在機(jī)器人控制模塊中實(shí)現(xiàn)相應(yīng)的運(yùn)動(dòng)原語(yǔ),最后基于可擴(kuò)展代理行為規(guī)范語(yǔ)言(extensible agent behavior specification language,XABSL)在機(jī)器人上實(shí)現(xiàn)拾取和放置任務(wù)。該系統(tǒng)的特點(diǎn)是將基于手勢(shì)識(shí)別系統(tǒng)與基于行為的編程平臺(tái)結(jié)合,前者為后者提供高層次的任務(wù)序列輸入,來(lái)完成人工演示中的取放任務(wù)。如圖19所示,該系統(tǒng)通過(guò)基于XABSL的平臺(tái)實(shí)現(xiàn)了一個(gè)立方體的堆積任務(wù)。
相對(duì)于“拿-放”操作任務(wù)的示范學(xué)習(xí),對(duì)動(dòng)作精細(xì)化要求較高的裝配作業(yè)任務(wù)的示范學(xué)習(xí)要困難很多。因?yàn)橄嗤氖謩?shì)可能出現(xiàn)在不同的裝配環(huán)節(jié),代表了不同的裝配任務(wù),例如擰緊操作,其手勢(shì)姿態(tài)與拿取操作沒(méi)有明顯區(qū)別。這對(duì)動(dòng)作的精確識(shí)別分割提出了較高的要求。Wang等[46]提出了結(jié)合滑動(dòng)窗口的分割點(diǎn)檢測(cè)和基于迭代動(dòng)態(tài)規(guī)劃的識(shí)別優(yōu)化的方法以實(shí)現(xiàn)連續(xù)裝配動(dòng)作分割與識(shí)別。如圖20 所示,該方法成功從演示動(dòng)作中識(shí)別分割出不同的裝配動(dòng)作。
Fig.18 Inferring action sequence圖18 推理動(dòng)作序列
Fig.19 Cube stacking task圖19 立方體堆積任務(wù)
Fig.20 Recognition and segmentation of assembly action圖20 識(shí)別分割裝配動(dòng)作
基于行為動(dòng)作的語(yǔ)義學(xué)習(xí)主要研究如何從人連續(xù)的演示動(dòng)作中提取語(yǔ)義信息,有些研究工作中也同時(shí)考慮了物體的屬性[44],且這些屬性的變化通常是由操作行為引起的,這與基于物體位姿變化的語(yǔ)義學(xué)習(xí)中單純考慮物體屬性不同。由于基于行為動(dòng)作的語(yǔ)義學(xué)習(xí)不依賴(lài)于特定的操作對(duì)象,因此方法通用性強(qiáng),具有廣闊的應(yīng)用前景。但是,對(duì)連續(xù)操作動(dòng)作進(jìn)行實(shí)時(shí)識(shí)別分割很具有挑戰(zhàn)性。目前大部分研究工作主要針對(duì)較為簡(jiǎn)單的連續(xù)動(dòng)作進(jìn)行識(shí)別分割,如何提高對(duì)復(fù)雜且持續(xù)時(shí)間較長(zhǎng)的連續(xù)動(dòng)作進(jìn)行識(shí)別分割的精度和穩(wěn)定性還有待于進(jìn)一步研究。
基于操作規(guī)則的語(yǔ)義學(xué)習(xí)是指從示范行為和物體位姿的相互關(guān)系中提取完成相應(yīng)任務(wù)所需要的規(guī)則約束,根據(jù)所獲取的約束條件來(lái)完成同類(lèi)型任務(wù)。Lee等[47]提出了一種模仿學(xué)習(xí)的句法方法,這種方法在有噪聲的情況下從相當(dāng)少的樣本中以概率激活語(yǔ)法的形式捕獲重要的任務(wù)結(jié)構(gòu)。這些學(xué)習(xí)到的語(yǔ)法可以用于幫助識(shí)別不可預(yù)見(jiàn)的、共享底層結(jié)構(gòu)的更復(fù)雜的任務(wù)。如圖21 所示,利用該方法從演示視頻中學(xué)習(xí)推理出解決漢諾塔問(wèn)題的規(guī)則,并利用這些規(guī)則解決更大規(guī)模的漢諾塔問(wèn)題。該方法適用于具有相同底層規(guī)則的任務(wù),通過(guò)對(duì)小規(guī)模問(wèn)題的演示學(xué)習(xí),來(lái)解決大規(guī)模問(wèn)題。
Fig.21 Solving Hanoi Tower problem by learning rules圖21 通過(guò)學(xué)習(xí)規(guī)則解決漢諾塔問(wèn)題
陳世佳等[48]提出一種基于對(duì)比示范的演示學(xué)習(xí)方法,通過(guò)動(dòng)作識(shí)別和狀態(tài)檢測(cè)將信息抽象成符號(hào)形式,然后經(jīng)過(guò)認(rèn)知推理得到演示任務(wù)的執(zhí)行決策和約束條件,并通過(guò)動(dòng)作共享指導(dǎo)機(jī)器人重現(xiàn)任務(wù)。如圖22 所示,演示者分別演示先拿懸空的杯子和先拿桌子上的杯子,通過(guò)不同的取杯順序告訴機(jī)器人任務(wù)的約束條件是先拿懸空的杯子,否則懸空的杯子會(huì)摔落。
Fig.22 Extracting task constraints from comparative demonstration圖22 從對(duì)比示范中提取任務(wù)約束
在各種演示學(xué)習(xí)的研究中,基于操作規(guī)則的語(yǔ)義學(xué)習(xí)相對(duì)較少。在針對(duì)具體的生產(chǎn)生活中包含的規(guī)則種類(lèi)不多的場(chǎng)景中,可以利用機(jī)器人來(lái)學(xué)習(xí)相關(guān)的基礎(chǔ)規(guī)則,使機(jī)器人能夠根據(jù)這些基礎(chǔ)規(guī)則推理出如何執(zhí)行包含若干基礎(chǔ)規(guī)則的復(fù)雜任務(wù)。例如搭積木、拼圖、恢復(fù)魔方等規(guī)則性較強(qiáng)的任務(wù)。
針對(duì)基于演示學(xué)習(xí)的機(jī)器人編程問(wèn)題,國(guó)內(nèi)外研究者已經(jīng)開(kāi)展了較為廣泛的研究工作?;谶\(yùn)動(dòng)的演示學(xué)習(xí)注重獲取演示者的運(yùn)動(dòng)軌跡信息,通常應(yīng)用于工作內(nèi)容較為簡(jiǎn)單的場(chǎng)景。其優(yōu)點(diǎn)是,可借助機(jī)器人本體的拖動(dòng)示教功能或者借助特定的標(biāo)記物來(lái)記錄用于建模的軌跡信息,避免了對(duì)復(fù)雜手勢(shì)的識(shí)別,大大降低了演示學(xué)習(xí)的實(shí)施難度。然而,在工作內(nèi)容較為復(fù)雜的場(chǎng)景下,軌跡信息復(fù)雜,甚至還包含不同工具的切換信息,使用基于運(yùn)動(dòng)的演示學(xué)習(xí)往往難以滿(mǎn)足要求?;谌蝿?wù)的演示學(xué)習(xí)則關(guān)注任務(wù)本身的語(yǔ)義信息,通過(guò)解析任務(wù)的語(yǔ)義序列,利用動(dòng)作原語(yǔ)庫(kù),根據(jù)語(yǔ)義序列對(duì)原語(yǔ)動(dòng)作進(jìn)行組合來(lái)重現(xiàn)演示任務(wù)。這大大增強(qiáng)了機(jī)器人對(duì)不同任務(wù)靈活應(yīng)變的能力。但是解析語(yǔ)義序列,需要對(duì)連續(xù)動(dòng)作進(jìn)行識(shí)別和分割,這是一項(xiàng)具有挑戰(zhàn)性的工作。
現(xiàn)階段大部分研究工作主要針對(duì)簡(jiǎn)單的演示任務(wù),仍處于實(shí)驗(yàn)階段。若要將基于演示學(xué)習(xí)的機(jī)器人編程技術(shù)推廣到實(shí)際生產(chǎn)應(yīng)用中,仍面臨以下挑戰(zhàn):
(1)建立具備通用性的編程框架
現(xiàn)有的演示編程技術(shù)往往針對(duì)某一具體場(chǎng)景,通用性較低,難以將相關(guān)方法移植到其他任務(wù)場(chǎng)景下。例如基于拖動(dòng)演示的方法要求機(jī)器人本身具備相應(yīng)的功能,難以移植到傳統(tǒng)的機(jī)器人上。近年來(lái)發(fā)展迅速的機(jī)器人視覺(jué)技術(shù)是提高演示編程技術(shù)通用性很有潛力的一種方法。建立一套可移植性強(qiáng)的演示編程框架,是一項(xiàng)具有挑戰(zhàn)性的工作。
(2)穩(wěn)定可靠的語(yǔ)義提取方法
與實(shí)驗(yàn)環(huán)境相比,實(shí)際的應(yīng)用場(chǎng)景中的工作條件不可預(yù)知,因此相關(guān)的示范行為識(shí)別分割方法需要較高的環(huán)境自適應(yīng)性和魯棒性。語(yǔ)義序列提取出錯(cuò),可能導(dǎo)致機(jī)器人執(zhí)行任務(wù)過(guò)程中發(fā)生嚴(yán)重的事故。一些應(yīng)用場(chǎng)景下可能涉及到較為復(fù)雜和精細(xì)化的操作,例如縫補(bǔ)操作、細(xì)小零件裝配操作等。提高這些動(dòng)作在動(dòng)態(tài)場(chǎng)景下的識(shí)別率,對(duì)于提高演示編程的穩(wěn)定性具有重要意義。
(3)良好的人機(jī)交互體驗(yàn)
與傳統(tǒng)機(jī)器人編程技術(shù)相比,演示編程技術(shù)雖然降低了對(duì)操作人員專(zhuān)業(yè)性的要求,然而現(xiàn)有的演示編程技術(shù)的人機(jī)交互體驗(yàn)離自然人機(jī)交互的要求還有很大的距離。在使用前往往需要一定程度的培訓(xùn),例如:需要告知演示者一些特定的手勢(shì)動(dòng)作[43];配置特定的演示環(huán)境[46]等。建立良好的人機(jī)交互機(jī)制,是發(fā)展演示編程技術(shù)的重要目標(biāo)之一。利用多源信息融合提高人機(jī)交互體驗(yàn)是很有前景的方案。
隨著模式識(shí)別、人工智能技術(shù)的快速發(fā)展,基于演示學(xué)習(xí)的機(jī)器人編程技術(shù)將向著智能化、通用化方向發(fā)展:
(1)多感官信息融合
面對(duì)建立通用性的編程框架和開(kāi)發(fā)穩(wěn)定可靠的語(yǔ)義提取方法等挑戰(zhàn),多感官信息融合是提高通用性和可靠性的有效手段。文獻(xiàn)[49-50]利用視覺(jué)、慣性單元、肌電信號(hào)等不同種類(lèi)的傳感信息來(lái)獲取演示行為中高層次的語(yǔ)義信息。多源信息融合可以增強(qiáng)算法框架對(duì)不同任務(wù)環(huán)境的適應(yīng)能力,提高了機(jī)器人演示編程技術(shù)的智能化和通用化水平,是優(yōu)化人機(jī)交互體驗(yàn)的重要手段。在可預(yù)期的未來(lái),機(jī)器人演示編程技術(shù)將借助模式識(shí)別、人工智能,通過(guò)多感官信息融合向智能化、通用化方向發(fā)展。
(2)利用深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)端到端學(xué)習(xí)
近年來(lái),快速發(fā)展的深度神經(jīng)網(wǎng)絡(luò)技術(shù)逐漸引起了機(jī)器人領(lǐng)域相關(guān)研究者的注意。2018年英偉達(dá)公司開(kāi)發(fā)了一套采用神經(jīng)網(wǎng)絡(luò)的機(jī)器人演示學(xué)習(xí)系統(tǒng),并在2019年的開(kāi)發(fā)者大會(huì)上進(jìn)行了現(xiàn)場(chǎng)展示[51]。該系統(tǒng)每個(gè)環(huán)節(jié)都由神經(jīng)網(wǎng)絡(luò)組成,可根據(jù)人類(lèi)的演示動(dòng)作,重現(xiàn)物塊堆疊任務(wù)。2018年,中國(guó)科學(xué)院自動(dòng)化研究所智能機(jī)器人系統(tǒng)研究中心也開(kāi)展了類(lèi)似的研究工作[52]。也有的研究者利用深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了端到端的演示學(xué)習(xí)[53-54]。端到端的學(xué)習(xí)方式將研究人員從繁瑣的特征提取環(huán)節(jié)中解放出來(lái),降低了機(jī)器人演示學(xué)習(xí)框架的復(fù)雜性。深度神經(jīng)網(wǎng)絡(luò)還具有很強(qiáng)的泛化能力,使得演示學(xué)習(xí)框架在不同類(lèi)型的機(jī)器人間的移植相對(duì)容易,提高了演示學(xué)習(xí)框架的通用性。利用深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)端到端的機(jī)器人演示學(xué)習(xí)方法將逐漸成為研究熱點(diǎn)。
近年來(lái),隨著制造業(yè)的快速發(fā)展,機(jī)器人在生產(chǎn)活動(dòng)中的應(yīng)用越來(lái)越廣泛。如何簡(jiǎn)化機(jī)器人編程、提高編程效率、降低機(jī)器人的使用門(mén)檻對(duì)企業(yè)提高生產(chǎn)效率、降低成本具有重要意義?;谘菔緦W(xué)習(xí)的機(jī)器人編程技術(shù)是實(shí)現(xiàn)這一目標(biāo)的重要途經(jīng)之一?,F(xiàn)階段基于演示學(xué)習(xí)的機(jī)器人編程技術(shù)仍不成熟??深A(yù)期的未來(lái),模式識(shí)別、人工智能技術(shù)的快速發(fā)展,將會(huì)對(duì)機(jī)器人演示學(xué)習(xí)技術(shù)的完善起到重要的推動(dòng)作用。另外,人們不僅通過(guò)視覺(jué)特征,而且通過(guò)聲音、動(dòng)作和其他特征來(lái)與其他人交流、學(xué)習(xí)。與此類(lèi)似,機(jī)器人僅通過(guò)單一的感知方法很難學(xué)習(xí)到高層次的語(yǔ)義信息。因此,多感官信息融合和人工智能技術(shù)相結(jié)合是演示編程技術(shù)發(fā)展的一大趨勢(shì)。