盧曉玲,孫自昌
(安徽汽車職業(yè)技術(shù)學(xué)院 機(jī)電工程系,安徽 合肥,230601)
工作的穩(wěn)定性使得工業(yè)機(jī)器人在汽車生產(chǎn)、機(jī)械產(chǎn)品自動(dòng)化生產(chǎn)制造、高危設(shè)備安裝等領(lǐng)域具有十分廣泛的應(yīng)用[1]。抓取是工業(yè)機(jī)器人的基本操作任務(wù),在執(zhí)行抓取任務(wù)的過(guò)程中工業(yè)機(jī)器人需要結(jié)合待抓取物體的位姿信息來(lái)調(diào)整機(jī)器人的關(guān)節(jié),從而實(shí)現(xiàn)對(duì)各種位姿狀態(tài)下物體的抓取[2]。具有視覺(jué)的機(jī)器人通過(guò)視覺(jué)獲得待抓取物體的位姿信息,采用運(yùn)動(dòng)學(xué)逆解的方法獲得機(jī)器人的關(guān)節(jié)坐標(biāo)[3]。該方法能夠使得工業(yè)機(jī)器人實(shí)現(xiàn)對(duì)物體的自適應(yīng)抓取,但是對(duì)機(jī)器人的操作者具有相對(duì)比較高的要求,同時(shí)對(duì)具有冗余自由度的機(jī)器人來(lái)講,獲取穩(wěn)定運(yùn)動(dòng)學(xué)逆解也比較困難[4]。機(jī)器學(xué)習(xí)的快速發(fā)展使得對(duì)機(jī)器人抓取的控制由模型驅(qū)動(dòng)向數(shù)據(jù)驅(qū)動(dòng)發(fā)展,通過(guò)相機(jī)獲得待抓取物體位姿觀測(cè)數(shù)據(jù),由位姿觀測(cè)數(shù)據(jù)通過(guò)機(jī)器學(xué)習(xí)理論獲得工業(yè)機(jī)器人的關(guān)節(jié)變量數(shù)據(jù),從而更好地對(duì)機(jī)器人抓住進(jìn)行控制[5]?;诖?本文采用最大期望算法(EM)對(duì)工業(yè)機(jī)器人抓取控制進(jìn)行研究,降低對(duì)機(jī)器人操作者的要求,確保機(jī)器人可以在較大范圍內(nèi)對(duì)物體的抓取。
工業(yè)機(jī)器人在執(zhí)行抓取任務(wù)時(shí)要根據(jù)所抓取物體的位姿對(duì)自身進(jìn)行調(diào)整。設(shè)oi為所抓取物體的觀測(cè)變量,ri為與之對(duì)應(yīng)的工業(yè)機(jī)器人關(guān)節(jié)變量,在oi和ri之間存在映射關(guān)系f,即[6]f:oi→ri。
設(shè)xi=[ri,oi]T為工業(yè)機(jī)器人關(guān)節(jié)變量和所抓取物體觀測(cè)變量組成的樣本,記
那么X為通過(guò)工業(yè)機(jī)器人示教得到的訓(xùn)練樣本集。工業(yè)機(jī)器人在執(zhí)行抓取動(dòng)作時(shí)要先通過(guò)訓(xùn)練樣本集進(jìn)行學(xué)習(xí),獲得由所抓取物體的觀測(cè)變量o到與之對(duì)應(yīng)工業(yè)機(jī)器人關(guān)節(jié)變量r的映射關(guān)系f。對(duì)于所要抓取的觀測(cè)變量為onew的新物體,通過(guò)映射關(guān)系f可以獲得工業(yè)機(jī)器人的關(guān)節(jié)變量rnew。
對(duì)工業(yè)機(jī)器人抓取動(dòng)作控制的關(guān)鍵是選擇合適的模型去描述映射關(guān)系f,本文采用正態(tài)分布混合模型去描述映射關(guān)系f,通過(guò)EM 算法將訓(xùn)練樣本集X劃分為幾類,每一類服從一個(gè)正態(tài)分布[7]。采用正態(tài)混合分布模型對(duì)工業(yè)機(jī)器人抓取進(jìn)行控制的流程如圖1 所示。
圖1 工業(yè)機(jī)器人抓取控制流程圖
通過(guò)對(duì)工業(yè)機(jī)器人示教來(lái)獲得包含觀測(cè)變量和機(jī)器人關(guān)節(jié)變量的訓(xùn)練樣本集,采用基于EM 算法的正態(tài)混合分布模型對(duì)訓(xùn)練樣本集進(jìn)行訓(xùn)練,達(dá)到對(duì)樣本分類的目的,其中每一類樣本均對(duì)應(yīng)不同的工作區(qū)域,同時(shí)構(gòu)建物體觀測(cè)變量和工業(yè)機(jī)器人關(guān)節(jié)變量之間的映射關(guān)系。工業(yè)機(jī)器人在執(zhí)行抓取物體的動(dòng)作時(shí),借助相機(jī)獲得待抓取物體的觀測(cè)變量,計(jì)算觀測(cè)變量來(lái)自于各個(gè)正態(tài)分布的后驗(yàn)概率,選擇后驗(yàn)概率最大的正態(tài)分布獲得工作機(jī)器人的關(guān)節(jié)坐標(biāo),從而驅(qū)動(dòng)工業(yè)機(jī)器人實(shí)現(xiàn)對(duì)待抓取物體的抓取控制。
EM 算法是基于極大似然估計(jì)的優(yōu)化算法,采用EM 算法來(lái)訓(xùn)練正態(tài)混合分布模型,從而得到混合模型的參數(shù)[8]。對(duì)正態(tài)混合分布模型的參數(shù)初始化之后,通過(guò)E 步和M 步的交替迭代來(lái)不斷地更新混合模型的參數(shù)。
E 步:計(jì)算樣本xi來(lái)自于第k個(gè)正態(tài)分布的權(quán)重rik,那么
M 步:聚類參數(shù)更新,即
其中,
采用EM算法對(duì)訓(xùn)練樣本集進(jìn)行正態(tài)混合模型訓(xùn)練,最終訓(xùn)練樣本集被劃分為m類,每一類樣本都服從一個(gè)正態(tài)分布,同時(shí)對(duì)應(yīng)于工業(yè)機(jī)器人工作區(qū)間的一個(gè)區(qū)域[9]。
基于EM 算法的工業(yè)機(jī)器人完成物體抓取是通過(guò)物體觀測(cè)變量獲得機(jī)器人關(guān)節(jié)變量。假設(shè)待抓取物體通過(guò)相機(jī)獲得的觀測(cè)變量為newo,那么onew來(lái)自于第k個(gè)正態(tài)分布的后驗(yàn)概率為[10]
不妨假定第k個(gè)正態(tài)分布對(duì)應(yīng)的后驗(yàn)概率最大,那么選擇第k個(gè)正態(tài)分布來(lái)對(duì)工業(yè)機(jī)器人的關(guān)節(jié)變量進(jìn)行預(yù)測(cè)。對(duì)第k個(gè)正態(tài)分布的均值向量μk和協(xié)方差矩陣∑k分塊,即
其中,μr、μo分別為訓(xùn)練樣本集中機(jī)器人關(guān)節(jié)坐標(biāo)均值和物體位姿坐標(biāo)均值;Krr、Koo分別為機(jī)器人關(guān)節(jié)變量協(xié)方差和物體位姿觀測(cè)變量協(xié)方差;為觀測(cè)變量和關(guān)節(jié)變量協(xié)方差。
待抓取物體的觀測(cè)變量onew和與之對(duì)應(yīng)的工業(yè)機(jī)器人關(guān)節(jié)變量rnew的條件概率分布為
工業(yè)機(jī)器人在抓取觀測(cè)變量為onew的物體時(shí),通過(guò)驅(qū)動(dòng)使得工業(yè)機(jī)器人的各個(gè)關(guān)節(jié)變量達(dá)到那么此時(shí)機(jī)器人就可以以最大概率完成對(duì)待抓取物體的抓取操作,實(shí)現(xiàn)對(duì)機(jī)器人抓住的有效控制。
試驗(yàn)所選擇的機(jī)器人為UR3 機(jī)器人,屬于小型的協(xié)作式桌面機(jī)器人,在輕型裝配作業(yè)和自動(dòng)化作業(yè)臺(tái)上具有十分廣泛的應(yīng)用,機(jī)器人形狀如圖2 所示。獲取待抓取物體觀測(cè)變量的相機(jī)在UR3 機(jī)器人工作空間的上方,所選擇的待抓取物體是一個(gè)立方體木塊。對(duì)檢測(cè)到的立方體木塊邊緣坐標(biāo)進(jìn)行平均獲得立方體木塊中心的坐標(biāo)x、y。為了反映待抓取立方體木塊的姿態(tài),取立方體表面的一條邊來(lái)計(jì)算立方體木塊和相機(jī)橫坐標(biāo)軸的夾角θ,即待抓取物體的位姿觀測(cè)變量為(x,y,θ),具體如圖3 所示。
圖2 UR3 機(jī)器人
圖3 待抓取物體位姿
為了獲取訓(xùn)練樣本集,將立方體木塊放置在工作區(qū)域內(nèi),通過(guò)UR3 機(jī)器人上方的相機(jī)來(lái)獲取木塊的位姿觀測(cè)變量,同時(shí)拖動(dòng)UR3 機(jī)器人去執(zhí)行木塊抓取,將木塊的位姿觀測(cè)變量和對(duì)應(yīng)的UR3 機(jī)器人的關(guān)節(jié)變量記錄,作為訓(xùn)練樣本集中的一個(gè)樣本。采用同樣的方法重復(fù)上述木塊抓取動(dòng)作50 次,確保每一個(gè)木塊在不同的位置,最終得到包含50 個(gè)樣本的訓(xùn)練樣本集。對(duì)獲得的包含50 個(gè)樣本的訓(xùn)練樣本集,采用EM 算法對(duì)正態(tài)混合分布模型進(jìn)行訓(xùn)練,最終將訓(xùn)練樣本集劃分為多個(gè)子集。對(duì)于每一個(gè)子集均服從正態(tài)分布,其對(duì)應(yīng)于整個(gè)工作區(qū)域內(nèi)的一個(gè)子區(qū)域。由于留一法(LOO)不受隨機(jī)樣本劃分方式的影響,因此本文采用LOO 進(jìn)行交叉驗(yàn)證,最終獲得聚類的個(gè)數(shù)為4 個(gè)。用c1、c2、c3和c4表示4 個(gè)聚類中心,聚類中心的觀測(cè)數(shù)據(jù)如表1 所示。
表1 4 個(gè)聚類中心觀測(cè)數(shù)據(jù)
正態(tài)混合分布模型的參數(shù)為α1=0.251,α2=0.312,α3=0.289,α4=0.148。將立方體木塊隨意放置在工作平面上,UR3 機(jī)器人通過(guò)機(jī)器人上面的相機(jī)來(lái)獲取該狀態(tài)下立方體木塊的觀測(cè)變量(xnew,ynew,znew),同時(shí)計(jì)算觀測(cè)變量(xnew,ynew,znew)在4 個(gè)正態(tài)分布中的后驗(yàn)概率。選擇后驗(yàn)概率最大的正態(tài)分布來(lái)預(yù)測(cè)與之狀態(tài)對(duì)應(yīng)的UR3 機(jī)器人的關(guān)節(jié)坐標(biāo)。根據(jù)該狀態(tài)UR3 機(jī)器人的關(guān)節(jié)坐標(biāo)去抓取立方體木塊,具體如圖4 所示。
圖4 UR3 機(jī)器人木塊抓取
隨機(jī)將立方體木塊放置在工作平面不同的位置,使得立方體木塊有不同的位姿,本文共對(duì)立方體木塊20 種不同的隨機(jī)位姿進(jìn)行抓取試驗(yàn),結(jié)果如表2 所示。
對(duì)UR3 機(jī)器人抓取立方體木塊失敗的位姿進(jìn)行分析可知,抓取失敗的位姿在樣本訓(xùn)練集的邊緣。為了對(duì)比基于EM 算法的正態(tài)混合分布模型由于單一的正態(tài)分布模型,將包含50 個(gè)樣本的訓(xùn)練樣本集,采用單一正態(tài)分布進(jìn)行建模,同時(shí)對(duì)立方體木塊20 種不同的隨機(jī)位姿進(jìn)行抓取試驗(yàn),結(jié)果如表3 所示。
由表2 和表3 可知,采用單一正態(tài)分布模型對(duì)工業(yè)機(jī)器人進(jìn)行抓取動(dòng)作控制,其抓取的成功率比較低,同時(shí)通過(guò)對(duì)7 次抓取失敗的分析可知,抓取試驗(yàn)的位姿在樣本集的邊緣和樣本集的外部。
表2 混合正態(tài)分布模型20 次抓取試驗(yàn)結(jié)果
表3 單一正態(tài)分布模型20 次抓取試驗(yàn)結(jié)果
抓取是機(jī)器人的基本動(dòng)作,本文基于EM 算法對(duì)工業(yè)機(jī)器人抓取控制進(jìn)行了研究。采用EM 算法的正態(tài)混合分布模型對(duì)訓(xùn)練樣本集進(jìn)行訓(xùn)練,獲得了待抓取物體位姿觀測(cè)變量和工業(yè)機(jī)器人關(guān)節(jié)變量之間的關(guān)系,通過(guò)數(shù)據(jù)驅(qū)動(dòng)實(shí)現(xiàn)對(duì)機(jī)器人抓取控制。采用該控制方法對(duì)UR3 機(jī)器人抓取進(jìn)行試驗(yàn),結(jié)果表明基于EM 算法的正態(tài)混合分布模型能夠更為準(zhǔn)確地預(yù)測(cè)機(jī)器人關(guān)節(jié)變量,抓取成功率為95.0%。本文對(duì)減輕機(jī)器人操作者的工作負(fù)擔(dān)以及提高機(jī)器人抓取成功率的相關(guān)研究具有一定的參考價(jià)值。