楊雨佳, 神顯豪, 劉珊珊, 程日光
(1. 廣州理工學院 計算機科學與工程學院,廣東 廣州 510540; 2. 桂林理工大學 廣西嵌入式技術與智能系統重點實驗室,廣西 桂林 541004;3. 華南理工大學 計算機科學與工程學院,廣東 廣州 510006; 4. 桂林電子科技大學 材料科學與工程學院,廣西 桂林 541004)
工業4.0概念的提出意味著智能化時代的到來。為了適應世界制造產業的發展新需求,機器人的應用越來越廣泛,同時對機器人的控制復雜度要求也逐步提升,作為機器人控制末端的主要單元機械臂,其視覺伺服控制技術一直是機械工程的一個研究焦點問題[1-3]。
逆運動學求解是機械臂視覺伺服控制過程中的一個重要問題,應用領域也十分廣泛,主要分析機械臂末端執行器笛卡兒空間坐標與機械臂關節空間關節變量之間的對應關系[4]。隨著工業技術的不斷發展,機械臂的結構變得越來越復雜,傳統上采用幾何算法和代數算法的求運動學逆解方法已經無法在規定的時間和精度范圍內完成計算,因此,本文中采用將極限學習機(ELM)和入侵性雜草優化(IWO)相結合的算法來實現快速的六自由度機械臂運動學求解,利用ELM單隱層前饋神經網絡相關參數(權值和偏置)隨機初始化的優勢,以提高求解的時間效率,利用IWO算法提高運動學求逆解的準確度,為改善工業六軸機械臂的視覺伺服控制性能提供支撐。
逆運動學求解主要解決的問題是如何在機械臂末端執行器笛卡兒空間坐標與機械臂關節空間關節變量之間建立對應關系[5-7]。基于幾何算法和代數算法的傳統求運動學逆解方法已經無法適用于目前大多數高冗余度機器人(幾何結構更加復雜),因此,目前研究人員主要采用神經網絡或智能優化算法來解決該類問題[8-11]。例如,文獻[8]中提出了基于反向傳播(BP)神經網絡的六軸并聯機器人標定逆運動學求解。文獻[9]中提出了基于自適應神經網絡的全狀態觀測器,用于求解逆運動學模型,其創新之處在于將自適應神經網絡用于逼近機器人的死區函數和未知模型,使得末端執行器初始位置的誤差較小。
類似于上述基于人工神經網絡的原理,文獻[10]中提出了將模擬退火算法和遺傳算法相混合的智能算法來進一步減小末端執行器的誤差。文獻[11]中通過粒子群優化(PSO)算法來優化BP神經網絡的權重參數,以便改善6個旋轉自由度仿人機械臂運動學求解性能。
通過比較上述方法發現,現有基于神經網絡和智能優化算法的機械臂求逆解仍存在某些問題: 1)多數采用BP神經網絡的方法存在收斂速度慢、算法執行效率低的問題; 2)采用PSO或者遺傳算法(GA)的智能優化對初始中心的敏感性較大,導致容易陷入局部極小值,全局最優解不準確。這一點在面對具有較多局部最優值的問題時表現十分突出,導致精度不夠理想。
由于ELM比傳統的人工神經網絡具有極高的訓練速度,因此文獻[12]中提出了基于GA-ELM的機械臂振動預測模型,明顯提高了實際工作過程中機械臂的工作效率。與此同時,有學者提出了IWO算法并進行了推廣應用[13-16]。因為模擬了雜草生物生長方式,所以IWO算法的魯棒性、適應性較為突出。與PSO和GA等算法相比,IWO算法在處理多峰函數問題時求解能力更佳。黃霞等[13]提出了用IWO算法求解作業車間調度問題,兼顧了全局搜索和局部搜索,實驗結果優于PSO算法的。
為了解決以上問題,本文中提出了一種基于入侵性雜草優化的機械臂運動學逆解方法,其創新之處在于: 1)利用ELM輸入層權值和隱藏層偏置隨機初始化的優勢,以保證機械臂求逆解的實時性; 2)利用IWO算法在處理多峰函數問題時求解能力更佳的優勢,兼顧全局搜索和局部搜索,以保證機械手求逆解的準確性。
本文中以六自由度機械臂作為研究對象,并通過最常用的Denavit和Hartenberg提出的為桿件建立坐標系的矩陣方法(簡稱D-H法),建立機械臂的正向運動學模型。六自由度機械臂的關節運動約束和模型參數,如表1所示。

表1 六自由度機械臂的關節和模型參數
在機械臂的正向運動學模型中,鄰近關節坐標系(坐標系n+1和坐標系n)的變換矩陣為
nTn+1=An+1=
R(z,θn+1)T(0,0,dn+1)T(an+1,0,0)R(x,αn+1)=
(1)
式中:sn+1、cn+1、sαn+1和cαn+1分別代表sinθn+1、cosθn+1、sinαn+1和cosαn+1;R(z,θn+1)、R(x,αn+1)分別為繞x、z軸的旋轉變換矩陣;T(an+1, 0, 0)、T(0, 0,dn+1)均為對應的平移變換矩陣。
在六自由度機械臂正向運動學模型中構建鄰近關節坐標系的變換矩陣之后,坐標系中機械臂末端執行器位姿0T6為
(2)
式中: [px,py,pz]T為坐標系中末端執行器的空間位置矢量; [nx,ny,nz]T、[ox,oy,oz]T和[ax,ay,az]T分別為坐標系中末端執行器在x、y、z軸上的矢量。
傳統的采用BP神經網絡的方法存在收斂速度慢、算法執行效率低的問題,原因是其采用了梯度下降的方式來調節神經網絡的權值和偏置,而極限學習機ELM采用單隱層前饋架構,因此學習時間較短,其網絡結構如圖1所示。

注: bi為第i個隱層節點的偏置; tj為輸出矢量; Xj為輸入矢量; Wi為輸入權值向量; βi為輸出權值向量。圖1 極限學習機網絡結構
ELM的輸出函數為
(3)
式中:bi為第i個隱層節點的偏置;oj為輸出矢量;Xj為輸入矢量;Wi為輸入權值向量,Wi=[wi1,wi2, …,win]T;βi為輸出權值向量,βi=[βi1,βi2, …,βim]T;h(·)為激活函數。其中,輸入權值向量和偏置是隨機產生的。
最小化訓練誤差的方式如下:
(4)
式中:β為輸出權值矩陣;T為端執行器值姿矩陣。
利用最小二乘法對式(4)進行求解,獲得輸出矩陣為
(5)
式中H?表示廣義逆矩陣。
通過ELM對六自由度機械臂正向運動學模型求解運動學逆解時,其訓練集合為關節角度向量θ=[θ1,θ2, …,θ6]和端執行器位姿T的數據組合(θ,T)。ELM通過訓練輸出機械臂關節角度向量,完成逆解初解。
生物學上被稱為雜草的植物一般會表現出生命力頑強、繁殖能力突出和生長周期短的特性,比農作物具有更強的抗性和環境適應性[13-16]。1962年,MacArthur提出了種群繁殖理論,對種群的繁衍和競爭淘汰策略進行研究。IWO正是一種模擬雜草占地生長與繁殖策略而提出,用來求解約束問題的群智能優化算法,具有以下特點: 1)基于適應度值的繁殖規則; 2)遵循正態分布的種子擴散; 3)采用柔和的競爭排斥機制。
典型的求解問題優化IWO算法分為4個主要操作。
1)種群初始化操作。采用隨機原則在求解空間范圍內散布m0株雜草,即第一代種子群,其中種子的位置表示約束問題函數的所需解。此外,還需要對全部種子位置的適應度值進行首次評估。
2)雜草的繁殖操作。在雜草種子適應度值排序(從大到小)后執行繁殖操作,如圖2所示。

圖2 雜草繁殖原理示意圖
雜草a在第(h+1)次迭代中遵循的繁殖規則為

?a=1,2,…,m(h),
(6)
式中:qa(h)為第h次迭代后雜草a的當前位置;fmax(h)、fmin(h)分別為第h次迭代后種群的最大和最小適應度;m(h)為第h次迭代后的雜草數量;f(qa(h))為雜草a在當前位置qa(h)下的適應度值; 運算符?·」表示向下取整;Smax、Smin分別為雜草能夠產生的最大和最小種子數量。
3)種子的空間擴散操作。隨著迭代次數的增加,標準差會不斷減小,從而確保子代與父代之間的差距。在第(h+1)次迭代中標準差的公式[14]如下:
?j=1,2,…,D,
(7)
式中:ψ為非線性調制指數,通常取值為2;σmax, j、σmin, j分別為D維解空間中第j維分量的最大和最小標準差;hmax為最大迭代次數。
4)競爭淘汰操作。在上述繁殖和擴散操作后,將父代種群及其后代一起根據適應度值從大到小排序,并開始新的繁殖操作,其他雜草個體均丟棄。
重復迭代以上4個操作,直至達到最大迭代次數 ,此時種群中適應度最大的雜草位置就是尋優過程的輸出。
執行IWO的過程中,將機械臂末端執行器的誤差最小作為IWO算法的適應度函數,即
(8)
式中:T為ELM計算得到的逆解位姿;T′為輸入的目標位姿,T′=(px,py,pz,ox,oy,oz,ax,ay,az,nx,ny,nz)。
基于ELM-IWO的機械臂逆解算法流程見圖3。

圖3 基于極限學習機(ELM)-入侵性雜草優化(IWO)的機械臂逆解步驟
本文中提出的基于ELM-IWO的機械臂逆解算法的主要思路為:首先基于正運動學模型,利用ELM計算出機械臂求逆解的初解,即機械臂末端執行器的位姿θ′=(θ1,θ2,…,θ6);然后將θ′=(θ1,θ2,…,θ6)作為IWO算法的輸入計算機械臂末端執行器的誤差,通過迭代進化對種群中各個體進行降序方式排列,選擇排序靠前的個體構建新一代的種群,最終將種群中適應度值最小的雜草位置作為所求最小優化問題的最優解。
為了驗證本文中提出的基于ELM-IWO的機械臂逆解算法的性能,在真實六自由度機械臂[17]上分別進行驗證分析,并與基于PSO-BP神經網絡的求機械臂逆解方法進行綜合對比分析。采用的實驗數據集共包含7 000個樣本,其中隨機選擇了2 000個樣本作為測試樣本,其余5 000個樣本作為訓練樣本。ELM-IWO算法中輸入節點數量為8,輸出節點數量為4,采用的激勵函數為Sigmod函數。工業六自由度機械臂為一臺UR5六自由度機械臂,如圖4所示。

圖4 UR5六自由度機械臂
首先對ELM求機械臂逆解初解的能力進行分析。當網絡結構中隱藏層節點的數量不斷增多時,ELM和BP神經網絡的均方差和訓練時間對比結果分別如圖5所示。從圖中可以看出,隨著隱藏層節點的增加,ELM和BP神經網絡的求機械臂逆解精度均不斷提高,兩者的精度差距不大。相比之下,ELM的訓練時間幾乎沒有增加,而BP神經網絡的訓練時間隨著節點數量增加而大幅增加。
以下對IWO算法優化機械臂逆解的性能進行比較分析。PSO、IWO和混合模擬退火[10]3種優化機械臂逆解方法的末端執行器收斂性能如圖6所示,迭代次數均為50次。從圖中可以明顯看出,相比于其他2種算法,IWO算法達到相同的精度水平所需的時間最少。

(a)訓練精度(b)訓練時間圖5 隱藏層節點不同時極限學習機(ELM)和反向傳播(BP)神經網絡的訓練精度和訓練時間

PSO—粒子群優化算法; IWO—入侵性雜草優化算法。圖6 不同算法的末端執行器誤差
對ELM-IWO和PSO-BP神經網絡[11]2種算法分別進行了10組目標位姿機械臂對應逆解實驗,最終得出2種算法求機械臂逆解的誤差和所用時間,結果如圖7所示。從圖中可以看出,ELM-IWO算法與PSO-BP神經網絡算法的誤差范圍一致,均為1.00~4.00 mm,但是ELM-IWO算法的平均末端誤差更小,僅為2.516 mm,據此可以驗證該算法具有更高的求機械臂逆解精度。在達到相同精度水平時,ELM-IWO算法具有更短的收斂時間,平均計算時間僅為5.68 ms,實時性更好。
本文中將ELM和IWO算法相結合來實現快速、準確的六自由度機械臂運動學求解。首先,利用ELM輸入層權值和隱藏層偏置隨機初始化的優勢,提高了求逆解時間效率;其次,利用IWO算法提高了運動學求逆解的準確度。實驗結果驗證了ELM-IWO算法在工業六自由度機械臂求逆解上的可行性和先進性; 但是該算法僅在六自由度機械臂上進行了求逆解且為固定位姿,因此后續還需要對其適用性進一步驗證,以便在更多的機械臂場景上進行推廣和應用。

(a)誤差(b)時間圖7 極限學習機(ELM)-入侵性雜草優化(IWO)算法與粒子群優化(PSO)-反向傳播(BP)神經網絡算法求機械臂逆解的結果