












摘要:針對蜣螂優化(DBO)算法在工業機器人運動學參數標定過程中存在的全局探索和局部開發能力不平衡、求解精度低等問題,提出了一種基于局部指數積(LPOE)運動學模型的多策略融合蜣螂優化算法(MSFDBO)。首先建立基于LPOE模型的運動學參數辨識模型;然后采用Piecewise混沌映射和精英反向學習策略進行種群初始化,得到分布更加均勻的種群;融入魚鷹探索行為,提高DBO算法的全局探索能力,通過隨機擾動機制擴大搜索范圍,減少DBO算法陷入局部最優的可能性。為測試算法性能,使用12個基準測試函數對MSFDBO算法的搜索性能進行實驗評估,結果表明該算法具有良好的尋優性能。對4臺T6A-19型工業機器人的運動學參數進行辨識并補償驗證,實驗結果表明,絕對位置平均誤差、均方根平均誤差分別降低了85.47%、83.92%。
關鍵詞:運動學參數標定;蜣螂優化算法;精英反向學習;魚鷹探索行為;隨機擾動機制
中圖分類號:TP242.2
Kinematics Parameter Identification for Industrial Robots Based on Multi-strategy Fusion DBO Algorithm
XU Jialu1 LIU Xiaonan1* LI Pengchao2 LIU Zhenyu1
1.School of Information Science and Engineering,Shenyang University of Technology,Shenyang,110870
2.State Key Laboratory of Robotics,Shenyang Institute of Automation,Chinese Academy of Sciences,Shenyang, 110016
Abstract: Aiming at the DBO algorithms imbalance between global exploration and local exploitation capabilities and low solution accuracy in the calibrating processes for kinematics parameters of industrial robots, a multi-strategy fusion(MSFDBO) algorithm was presented based on local product of exponential(LPOE) kinematics model. Firstly, a kinematics parameter identification model was established based on the LPOE model. Secondly, Piecewise chaotic mapping and elite inverse learning strategy were used for population initialization to obtain a more uniformly distributed population, incorporating the exploration behavior of the osprey to enhance the global exploration ability of the DBO algorithm, and expanding the search range through the stochastic perturbation mechanism to reduce the possibility of the DBO algorithm falling into a local optimum. To test the performance of the algorithm, the search performance of the MSFDBO algorithm was experimentally evaluated using 12 benchmark test functions. The results show that the algorithm performs well in terms of optimization. The compensation of kinematic parameters was identifed and verified for four T6A-19 industrial robots. The experimental results show that the mean absolute position errors are reduced by an average of 85.47% and the root mean square errors are reduced by an average of 83.92%.
Key words: kinematics parameter calibration; dung beetle optimization(DBO) algorithm; elite opposition-based learning; osprey exploratory behavior; stochastic perturbation mechanism
0 引言
在機器人制造系統中,機器人的絕對定位精度是工業機器人應用離線編程方法時面臨的一個主要問題,由于機器人固有的運動學誤差,如生產過程中的加工誤差、裝配誤差和使用過程中的磨損等,機器人的實際運動學參數與其理論運動學參數不同[1],而通過參數標定可以有效提高工業機器人的絕對定位精度[2]。機器人運動學參數標定分為四個步驟:建模、測量、辨識參數誤差以及補償模型誤差[3]。傳統的D-H模型存在相鄰關節軸線平行或垂直時出現奇異點的問題,基于指數積(product of exponential, POE)的標定模型誤差參數完備、變化平滑、無模型奇異性,但存在微分誤差模型相對復雜的問題[4]。本文采用局部指數積(local product of exponential, LPOE)模型[5]進行機器人運動學建模,可在保持誤差參數完備且連續的同時避免微分誤差模型相對復雜的問題。
辨識參數誤差需根據建立的誤差模型構建多參數優化目標函數,通過傳統優化算法或智能優化算法進行求解[6]。傳統的辨識算法主要有最小二乘法[7]、Levenberg-Marquardt法[8]、擴展卡爾曼濾波法[9]、極大似然法[10]等,這些方法既受雅可比矩陣奇異性的影響,又受迭代初值選取的影響[11],智能優化算法能夠較好地解決以上兩個問題。近年來,有許多學者應用智能優化算法解決工業機器人運動學參數標定問題,如溫秀蘭等[12]提出了基于擬隨機序列產生初始位置的改進烏鴉搜索算法(improved crow search algorithm, ICSA)用于標定Staubli TX60機器人幾何參數。姜一舟等[13]提出了一種改進差分進化算法,使用Metropolis接受準則,以獲得更好的收斂性,同時提出種群多樣性評價函數和二次變異操作,以避免陷入局部優化。喬貴方等[14]提出了一種基于天牛須搜索和粒子群優化(beetle antennea search-particle swarm optimization, BAS-PSO)算法的運動學參數辨識方法,并通過實驗驗證了不同誤差模型構建方法的辨識精度和穩定性??鼙蟮?sup>[15]提出了一種基于兩段式的動態粒子群算法,用以解決工業機器人幾何誤差標定問題中存在的收斂速度慢的問題。喬貴方等[16]先利用改進灰狼優化算法進行參數誤差粗辨識,再通過Levenberg-Marquard算法進行參數誤差的精辨識。
2022年由XUE等[17]提出的蜣螂優化(dung beetle optimizer, DBO)算法在經典的復雜函數優化方面已被證明在求解精度和收斂速度等性能上均優于粒子群優化算法和遺傳算法等經典算法,并成功應用于瑞雷波頻散曲線反演[18]、光伏陣列故障診斷[19]等實際工程問題中。然而,沒有一種元啟發式算法適合解決所有的優化問題,潘勁成等[20]通過融合改進正弦算法、混沌映射和變異算子,提高DBO算法的全局探索能力。郭琴等[21]在DBO算法中改進雛球和偷竊蜣螂對局部最優解和全局最優解的接受程度,以及融合麻雀搜索算法中的追隨者位置更新機制和柯西高斯變異策略,以提升算法的尋優能力。然而當DBO算法應用于工業機器人運動學參數標定時,存在全局探索和局部開發能力不平衡的問題,搜索空間的過快減小會使種群的個體快速同化,導致算法迭代求解出的運動學誤差參數陷入局部最優解。
本文提出一種多策略融合蜣螂優化算法(multi-strategy fusion dung beetle optimizer, MSFDBO)用以標定基于LPOE運動學模型的工業機器人運動學參數,通過Piecewise混沌映射和精英反向學習策略以及魚鷹探索行為提升DBO算法的全局探索能力,利用隨機擾動機制減少DBO算法陷入局部最優的可能性,平衡DBO算法的全局探索和局部開發能力,并以新松T6A-19型機器人為例,驗證MSFDBO算法辨識工業機器人運動學參數的有效性和可行性。
1 六軸工業機器人運動學模型
本文以六自由度工業機器人為基礎建立運動學參數標定系統,如圖1所示。
1.1 機器人LPOE模型
在LPOE模型中,各關節旋量被描述在局部連桿坐標系下,其關節i與關節i-1之間的坐標轉換矩陣為
T(i-1)i(θi)=exp(s^iθi)T(i-1)i(0)(1)
其中,T(i-1)i(0)∈SE(3)為坐標系{i}相對于坐標系{i-1}的初始位姿;θi為第i個關節角度變量;s^i為關節i的旋量在坐標系{i-1}下的表示,有
s^i=w^ivi00(2)
w^i=0-wizwiywiz0-wix-wiywix0(3)
si=[wi vi]T(4)
其中,wi=(wix,wiy,wiz)T表示各關節軸線在{i}坐標系中的方向向量;si表示關節旋量的旋量坐標;vi=(vix,viy,viz)T∈R3×1。
根據式(1)得到n自由度串聯機器人LPOE模型:
T(0)tool(θ1,θ2,…,θn)=
exp(s^1θ1)T(0)1(0)exp(s^2θ2)T(1)2(0)…
exp(s^nθn)T(n-1)n(0)exp(s^tool)T(n)tool(5)
其中,T(n)tool∈SE(3)為最后一個連桿坐標系到工具坐標系的位姿變換矩陣。
1.2 絕對位置誤差模型
在實際測量過程中,將激光跟蹤儀、機器人和靶球構造成統一的辨識系統。如圖1所示,T(c)b表示激光跟蹤儀坐標系{c}相對于基坐標系的變換矩陣,T(b)e表示機器人末端坐標系{e}相對于基坐標系的變換矩陣,T(e)w表示靶球坐標系{w}相對于機器人末端坐標系{e}的變換矩陣。靶球坐標系相對于機器人基坐標系的變換矩陣T0tool表示為
T(0)tool=T(b)eT(e)w=exp(s^tool)T(6)tool∏6i=1exp(s^iθi)T(i-1)i(6)
其中,T(6)tool為工具坐標系相對于機器人末端坐標系的齊次變換矩陣。激光跟蹤儀坐標系下測量點的實際值Pr轉換到機器人基坐標系下為
p=T(c)bPr(7)
在機器人運動學參數辨識時,只考慮機器人末端的位置變化,改變機器人各關節的轉動角度,可以得到靶球相對于機器人基坐標系的位置信息。將機器人運動學參數和位置關系表示為高維非線性優化問題:
F=‖h(x+ε,θi)-p‖2(8)
其中,F為機器人末端第i個點的理論值與實際值之間的距離;x為機器人運動學參數;ε為待標定的運動學參數誤差,表示為
ε=[Δwi Δvi](9)
其中,Δwi=[Δwix Δwiy Δwiz],Δvi=[Δvix
Δviy Δviz](i=1,2,…,6,tool ),共計42項待標定的運動學參數。
2 DBO算法
在DBO算法中,每個蜣螂種群由滾球蜣螂種群、育雛蜣螂種群、小蜣螂種群和偷竊蜣螂種群構成,根據優化問題按一定的比例進行分配。
2.1 滾球蜣螂
蜣螂在滾動過程中需要通過天體線索(太陽位置或風向等)導航,以保持糞球沿直線滾動。滾球蜣螂的位置更新表示為
x(t+1)i=x(t)i+αkx(t-1)i+qΔx
Δx=|x(t)i-xw|(10)
式中:t為當前迭代次數;x(t)i為第t次迭代時第i只滾球蜣螂的位置信息;k∈(0,0.2]為指示偏轉系數的常數值;q為(0,1)區間內的常數值;α為被分配-1或1的自然系數;xw為全局最差位置;Δx用于模擬光強的變化。
當蜣螂遇到障礙物無法前進時,使用正切函數模仿舞蹈行為來獲得新的滾動方向,以獲得新的路線。跳舞蜣螂的位置更新公式為
x(t+1)i=x(t)i+tan φ|x(t)i-x(t-1)i|(11)
其中,φ為偏轉角,φ∈[0,π]。如果φ等于0、π/2或π,則跳舞蜣螂的位置不會更新。
2.2 育雛蜣螂
在自然界中,糞球被滾到安全的地方并被蜣螂隱藏。為了給后代提供一個安全的環境,選擇合適的產卵地點對蜣螂來說至關重要。通過一種邊界選擇策略模擬雌蜣螂產卵的區域,該區域定義為
Lb=max(x(1-R),Lb)
Ub=min(x(1+R),Ub)(12)
R=1-t/Tmax
其中,x為當前的局部最優位置;Lb和Ub分別為產卵區域的下界和上界;Tmax為最大迭代次數;Lb和Ub分別為優化問題的下界和上界。
育雛蜣螂位置更新公式為
B(t+1)i=x+b1(B(t)i-Lb)+b2(B(t)i-Ub)(13)
其中,B(t)i為第t次迭代時第i只育雛蜣螂的位置信息;b1和b2為大小為1×D的兩個獨立隨機向量;D為優化問題的維數。
2.3 小蜣螂
一些小蜣螂從地里爬出來尋找食物,需要建立最佳覓食區來引導覓食的小蜣螂,最佳覓食區域的邊界定義為
LBb=max(xB(1-R),Lb)
UBb=min(xB(1+R),Ub)(14)
式中:xB為全局最佳位置;LBb、UBb分別為最佳覓食區域的下限和上限。
小蜣螂的位置更新公式為
x(t+1)i=x(t)i+C1(x(t)i-LBb)+C2(x(t)i-UBb)(15)
式中:x(t)i為第t次迭代時第i只小蜣螂的位置信息;C1為服從正態分布的隨機數;C2為隨機數,C2∈(0,1)。
2.4 偷竊蜣螂
偷竊蜣螂會從其他蜣螂處偷取糞球,在最佳食物來源進行偷竊時,偷竊蜣螂位置信息更新公式為
x(t+1)i=xB+sg(|x(t)i-x|+|x(t)i-xB|)(16)
其中,x(t)i表示第t次迭代時第i只偷竊蜣螂的位置信息;g是遵循正態分布的大小為1×D的隨機向量;s表示常數值。
3 DBO算法的改進策略
3.1 Piecewise混沌映射和精英反向學習策略
由于蜣螂初始種群的質量在很大程度上影響到整體的尋優性能,為避免隨機生成種群帶來的不均勻性,降低初始種群多樣性,利用Piecewise映射在[0,1]內生成混沌序列,再將其映射到算法的搜索空間,使得蜣螂種群能夠更好地遍布整個搜索空間。Piecewise映射公式如下:
oi,j+1=oi,j/P"""" 0≤oi,jlt;P
oi,j-P0.5-PP≤oi,jlt;0.5
1-P-oi,j0.5-P0.5≤oi,jlt;1-P
(1-oi,j)/P1-P≤oi,jlt;1(17)
其中,oi,j為(0,1)內的隨機數;P為常數且P=0.3;i為種群數量;j為混沌變量序號且j=1,2,…,D。將混沌變量oi,j+1映射到搜索空間,得到種群初始解xi,j:
xi,j=Lbj+oi,j+1(Ubj-Lbj)(18)
其中,Ubj為搜索空間上界;Lbj為搜索空間下界;xi,j為第i個種群個體在j維空間中的位置。
同時,利用精英反向學習策略[22]生成反向種群,以提高種群的收斂速度和全局搜索能力。該策略首先根據初始種群選擇靠近最優位置的個體作為精英個體,并將其用于生成反向種群。通過這種方式,反向種群中的個體距離最優解更近,有助于加速收斂過程。此外,精英反向學習策略還能夠搜索更多有效區域,增加種群的多樣性,從而提高算法的全局搜索能力。
設當前種群中的一般個體對應的自身極值點為精英個體x′i,j,其反向對應解xi,j定義為
x*i,j=rand·(Lbm+Ubm)-x′i,j(19)
Lbm=min(x′i,j)" Ubm=max(x′i,j)
其中:Lbm和Ubm分別為動態邊界的下界和上界,rand為(0,1)內的隨機數。
3.2 魚鷹探索行為
針對DBO算法中滾球蜣螂全局探索能力弱的問題,引入魚鷹探索行為策略,魚鷹因其強大的視力能夠探測到水下魚類的位置,確定魚的位置并進行捕食,使得魚鷹探索行為在識別最優區域和逃離局部最優方面具有極強的探索能力。
在魚鷹算法(osprey optimization algorithm, OOA)[23]中,對于每只魚鷹,搜索空間中具有更好目標函數值的其他魚鷹的位置被視為水下魚類。每只魚鷹的魚集合位置使用下式指定:
PFi={xk|k∈{1,2,…,N}∧Fklt;Fi}∪{xbest}(20)
式中:PFi為第i只魚鷹的魚的位置集合;xbest為最佳魚鷹的位置。
魚鷹隨機檢測其中一條魚的位置并攻擊它。基于魚鷹向魚的運動模擬,計算相應魚鷹的新位置:
xP1i,j=xi,j+ri,j(FSi,j-Ii,jxi,j)xP1i,j=xP1i,j" Lbj≤xP1i,j≤UbjLbjxP1i,jlt;LbjUbjxP1i,jgt;Ubj(21)
如果新位置的目標函數值更優,則根據下式替換魚鷹的先前位置:
Xi=XP1i" FP1ilt;Fi
Xi其他(22)
式中:XP1i為魚鷹探索階段時第i只魚鷹的新位置,xP1i,j為其第j維的新位置;FP1i為XP1i對應的適應度值;FSi為第i只魚鷹所選的魚,FSi,j為其第j個維度;ri,j為[0,1]之間的隨機數;Ii,j為集合{1,2}中的隨機數。
當跳舞蜣螂遇到障礙物,偏轉角度取值為0、π/2或π時,跳舞蜣螂位置更新陷入停滯,容易導致局部最優停滯。因此,采用指數因子對最佳位置周圍進行搜索:
x(t+1)i=xB(2exp(4t(randn·Tmax)2))(23)
式中:randn為(0,1)之間符合標準正態分布的偽隨機數。
3.3 隨機擾動機制
雖然蜣螂的產卵和覓食區域隨迭代次數動態調整,但是線性減少的策略難以表征其在繁殖與覓食時的復雜情況,因此,采用非線性邊界收斂因子在前期對全局可行區域進行更為廣泛的搜索,而在后期更加注重在最優解附近的局部開發,加快其收斂速度。非線性邊界收斂因子R的表達式為
R=0.5+0.5sin(0.5π+πt/Tmax)(24)
在DBO算法迭代的后期,育雛蜣螂和小蜣螂個體的快速同化,蜣螂群體迅速聚集到當前的最優位置附近,容易出現局部最優解和搜索停滯。通過隨機擾動機制對蜣螂個體進行干擾,增大最優解的勘探空間,實現種群個體多維信息的重組和突變,提高蜣螂個體質量與種群多樣性,增大DBO算法跳出局部最優解的概率。使用Lévy飛行函數更新當前蜣螂個體的位置生成新解來反映蜣螂的游走軌跡。
L(λ)表示服從Lévy分布,Lévy飛行步長計算公式為
st=μ/|v|1/ε(25)
其中,μ,v服從標準正態分布,其定義如下:
μ~N(0,σ2μ)
v~N(0,σ2v)(26)
σμ=[Γ(1+ε)·sinπε2εΓ(1+ε2)·2(ε-1)/2]1/ε(27)
σv=1" ε=1.5
由于Lévy飛行具有步長距離長短相間和跳躍方向多變的特點,可以在相應范圍增強蜣螂跳出局部最優的能力,但也可能會因跳躍太大而導致最優蜣螂個體位置信息的丟失,故在融合Lévy飛行特征的同時,以一定概率引入自適應t分布擾動算子對蜣螂最佳個體進行擾動,采用iter=exp(4(t/Tmax)2)為t分布的自由度參數,對育雛蜣螂和小蜣螂覓食行為進行擾動,使得蜣螂算法在迭代前期具有較好的全局開發能力,在迭代后期具有良好的局部探索能力,并提高算法的收斂速度。改進后的育雛蜣螂位置更新公式為
B(t+1)i=x+γL(λ)(B(t)i-xB)+b1(B(t)i-
Lb*)+b2(B(t)i-Ub*)""" r≥0.5
x*+x*t(iter)rlt;0.5(28)
改進后的小蜣螂位置更新公式為
x(t+1)i=x(t)i+γL(λ)(x(t)i-xB)+C1(x(t)i-
LBb)+C2(x(t)i-UBb)""" r≥0.5
xB+xBt(iter)rlt;0.5(29)
γ=wmin+(wmax-wmin)t/Tmax
其中,wmin取0.01;wmax取0.5。
3.4 MSFDBO算法流程
本文提出的MSFDBO算法的實現步驟如下,算法流程圖見圖2。
1)設置種群規模、最大迭代次數等參數,根據Piecewise混沌映射初始化蜣螂種群個體的位置xi(i=1,2,…,n);
2)根據精英反向學習策略更新蜣螂個體的位置;
3)根據適應度函數計算每種蜣螂位置的目標函數值,得到當前的最優函數值和相應的最優個體位置;
4)令δ=rand(1),若δlt;0.8,根據魚鷹搜索策略更新滾球蜣螂種群位置,否則根據式(23)更新跳舞蜣螂種群位置,計算蜣螂個體位置的目標函數值;
5)根據式(28)、式(29)、式(16)分別更新育雛蜣螂、小蜣螂和偷竊蜣螂種群的位置,計算蜣螂個體位置的目標函數值,與上一代最優函數值進行比較。若較優,則更新當前種群最優個體位置;
6)當tgt;Tmax成立,執行步驟7),否則跳轉至步驟2);
7)輸出全局最優個體位置和最優函數值。
4 實驗驗證
4.1 改進策略有效性分析
為了驗證本文提出的不同改進策略的獨立有效性,將DBO與3種改進策略分別融合得到3種不同的算法:①在DBO中加入Piecewise混沌映射和精英反向學習策略得到PDBO;②在DBO中采用魚鷹探索行為得到ODBO;③在DBO中加入隨機擾動機制得到RDDBO。
將MSFDBO與PDBO、ODBO、RDDBO、DBO等算法對表1中的12個基準測試函數[24]進行尋優實驗。同時利用30次獨立實驗的均值結果消除實驗偶然性,不同改進策略算法的實驗統計結果見表2。另外,表2中還將本文算法與文獻[20]中的MSADBO算法和文獻[21]中的MIDBO兩種改進DBO算法進行對比。其中,F1~F4為單峰測試函數,F5~F8為多峰測試函數,F9~F12為固定維多峰測試函數。通過在12個基準測試函數中比較均值(Mean)和標準差(Std)來驗證所提出的MSFDBO算法的有效性, Mean反映了算法的精確性,Std反映了算法的穩定性,加粗數據表示最優值。
首先是DBO算法與PDBO、ODBO、RDDBO、MSFDBO算法的對比分析,由表2分析可知,PDBO算法在函數F1、F2、F5、F6、F8、F9和F12中的均值和標準差小于DBO算法的相應值,說明Piecewise混沌映射和精英反向學習策略可以提高群體的多樣性,增強算法的全局搜索能力,在函數F3中,PDBO算法的均值小于DBO算法,在函數F4和F11中,PDBO算法的標準差小于DBO算法,在函數F10中,PDBO算法的標準差大于DBO算法。ODBO算法在函數F1~F6、F8、F9中的均值和標準差小于DBO算法的相應值,說明在DBO算法中引入魚鷹探索行為和指數因子可以提高全局搜索能力,并能提高算法的準確性和穩定性,僅在函數F10中,ODBO算法的標準差略大于DBO算法,在函數F11中,ODBO算法的標準差小于DBO算法,在函數F12中,ODBO算法的尋優能力差于DBO算法。RDDBO算法在函數F1~F6、F8、F9和F12中的均值和標準差小于DBO算法,說明在DBO算法中引入隨機擾動機制在迭代前期具有較好的全局開發能力,在迭代后期具有良好的局部探索能力,并能提高算法的收斂速度,僅在函數F10中,RDDBO算法的標準差大于DBO算法,在函數F11中,RDDBO算法的標準差小于DBO算法。與DBO算法相比,融合了三種改進方法的MSFDBO算法在F1~F12上的平均收斂精度和標準差都比DBO算法有所提升,說明三種改進策略的融合是有效的。
其次是MSFDBO與MSADBO、MIDBO算法的對比分析,在函數F1中,三種算法都能搜索到理論最優解;在函數F2中,只有MIDBO和MSFDBO算法能搜索到理論最優解;在函數F3、F8和F9中,MSFDBO算法的均值和標準差都小于MSADBO和MIDBO算法;在函數F4中,MSADBO算法的均值和標準差最小,而MSFDBO算法的均值小于MIDBO算法,但標準差略大于MIDBO算法;在函數F5、F6和F7中,三種算法的均值和標準差都能達到相同的搜索精度;在函數F10中,三種算法均能搜索到理論最優解,但MSFDBO算法的標準差最小;在函數F11中,只有MSADBO和MSFDBO算法搜索到理論最優解,而MSFDBO算法的標準差最??;在函數F12中,只有MIDBO和MSFDBO算法更接近理論最優解,而MSFDBO算法的標準差最小。
綜上所述,MSFDBO算法在不同函數上能夠體現出明顯的不同幅度搜索精度的提升,相較于MSADBO和MIDBO算法,MSFDBO算法平衡了全局搜索和局部開發的能力,尋優精度和收斂速度得到了穩定提升。
4.2 不同群智能算法性能對比
將DBO算法、鯨魚優化算法(whale optimization algorithm, WOA)[25]、灰狼優化算法(grey wolf optimizer, GWO)[26]、哈里斯鷹優化算法(Harris hawks optimization, HHO)[27]、天鷹優化算法(aquila optimizer, AO)[28]和麻雀優化算法(sparrow search algorithm, SSA)[29]與MSFDBO算法進行實驗對比,各種算法的參數設定和實現參見文獻[17]和文獻[25-29],對12個基準函數分別進行30次獨立實驗并取其均值,加粗數據表示最優值,種群數量設為30,最大迭代次數Tmax為500,實驗結果見表3。
由表3分析可知,在函數F1和F2中,MSFDBO算法的均值和標準差都為0,達到了理論最優解,尋優能力遠遠領先于表中其他算法;在函數F3、F8和F9中,雖然7種算法都沒有尋找到理論最優解,但MSFDBO算法搜索到的平均收斂精度和標準差是所有算法中最小的;在函數F4中,MSFDBO算法的平均收斂精度和標準差稍遜于AO和HHO算法;在函數F5中,MSFDBO、SSA、WOA、HHO和AO算法均能尋找到理論最優解;在函數F6中,MSFDBO、DBO、SSA、HHO算法的平均收斂精度相同,其標準差均為0;在函數F7中,除GWO外的其他算法均能搜索到理論最優解,標準差均為0;在函數F10和F11中,7種算法均能搜索到理論最優解,但MSFDBO算法的標準差搜索精度優于另外6種算法;在函數F12中,MSFDBO和SSA算法更接近理論最優解,但MSFDBO算法的標準差遠小于SSA算法,其搜索穩定性更強。
綜上所述,本文算法在多次尋優的過程中,其穩定性和魯棒性明顯優于其他算法,更接近理論值的最優解。這說明本文算法在搜索能力方面具有明顯優勢,能充分高效地探尋搜索空間,并保證較強的全局尋優能力和局部探索能力。
4.3 機器人本體驗證
本文采用新松T6A-19型機器人進行實驗驗證,在機器人運動范圍內隨機選取均勻分布的50個測量點,采用FARO Vantage E激光跟蹤儀測量機器人末端位置,實驗環境如圖3所示。新松T6A-19型六自由度工業機器人重復定位精度為±0.08 mm,額定負載為6 kg,激光跟蹤儀測量精度為16 μm+0.8 μm/m。T6A-19型工業機器人D-H參數見表4。
si的理論值如下:
s1=[001000]T
s2=[001000]T
s3=[001000]T
s4=[001000]T
s5=[001000]T
s6=[001000]T
stool=[000000]T
4.3.1 誤差模型的適應度函數
采用本文算法優化計算工業機器人的幾何參數誤差時,其適應度函數為
f=min(∑Nj=1(δpx,j)2+(δpy,j)2+(δpz,j)2)(30)
式中:δpx、δpy、δpz為機器人實際位置相對于名義位置的誤差;j為測量位置點數。
4.3.2 實驗結果分析
設置MSFDBO算法最大迭代次數Tmax為3000,種群數量設為100,在DBO、GWO、WOA和MSFDBO等算法迭代求解的過程中,根據式(30)計算每一次迭代過程中的最優適應度函數值,通過MSFDBO算法迭代求解得到的函數值與使用DBO、GWO和WOA等算法求解的函數值進行對比,其最優適應度函數值變化如圖4所示。由圖4分析可知,在運動學參數辨識中,MSFDBO算法相比其他算法收斂精度更高、收斂速度更快,整個過程中相比其他算法,具有更好的全局搜索能力和局部搜索能力。使用MSFDBO算法求解的T6A-19型機器人幾何參數誤差結果見表5。
為了驗證本文算法辨識的運動學參數誤差是否準確,在機器人的工作空間中隨機選取50個點,將DBO、GWO、WOA和MSFDBO算法辨識出的運動學參數誤差代入其中對比辨識結果。不同算法辨識前后的絕對位置誤差如圖5所示,對圖5中辨識的點進行統計分析,統計結果見表6。
為了驗證MSFDBO算法的準確性與泛化性,本文另外對4臺T6A-19型工業機器人進行運動學參數辨識實驗,絕對位置誤差結果見表7。
由表6可知,對機器人運動學參數進行補償后,得到辨識前后絕對位置距離誤差的絕對值的集合。根據統計學方法從最大誤差、平均誤差和均方根誤差分析,MSFDBO算法的辨識結果均優于其他算法,最大誤差從辨識前的2.3029 mm減至0.6101 mm,降低了73.51%;平均誤差從1.3117 mm減至0.1653 mm,降低了87.40%;均方根誤差從1.3750 mm減至0.2078 mm,降低了84.89%。通過辨識前后數據的統計、分析和對比可知,MSFDBO算法的辨識方法提高了工業機器人的絕對位置定位精度。
由表7中的絕對位置誤差結果分析可知,4臺T6A-19型工業機器人經MSFDBO算法參數辨識后,絕對位置平均誤差平均降低了85.47%,均方根誤差平均降低了83.92%。
5 結語
本文根據高端制造業對工業機器人離線編程絕對定位精度的要求,提出了基于MSFDBO算法的工業機器人幾何參數標定方法,通過建立機器人幾何參數的LPOE模型,應用MSFDBO算法對T6A-19型工業機器人隨機選定的測量點進行標定。實驗結果表明,本文方法高效且準確地完成了工業機器人運動學參數辨識,4臺T6A-19型工業機器人的絕對位置平均誤差平均降低了85.47%,均方根誤差平均降低了83.92%,MSFDBO算法的魯棒性強、穩定性高,經標定的工業機器人末端絕對位置精度有大幅提高。
參考文獻:
[1] CHEN Gang, LI Tong, CHU Ming, et al. Review on Kinematics Calibration Technology of Serial Robots[J]. International Journal of Precision Engineering and Manufacturing, 2014, 15(8):1759-1774.
[2] NGUYEN H N, ZHOU Jian, KANG H J. A New Full Pose Measurement Method for Robot Calibration[J]. Sensors, 2013, 13(7):9132-9147.
[3] JOUBAIR A, BONEV I A. Kinematic Calibration of a Six-axis Serial Robot Using Distance and Sphere Constraints[J]. The International Journal of Advanced Manufacturing Technology, 2015, 77(1):515-523.
[4] 谷樂豐, 楊桂林, 方灶軍, 等. 一種新型機器人自標定裝置及其算法[J]. 機器人, 2020, 42(1):100-109.
GU Lefeng, YANG Guilin, FANG Zaojun, et al. The Calibration Algorithms for Industrial Robots Based on a Novel Self-calibration Device[J]. Robot, 2020, 42(1):100-109.
[5] CHEN I M, YANG Guilin, TAN C T, et al. Local POE Model for Robot Kinematic Calibration[J]. Mechanism and Machine Theory, 2001, 36(11/12):1215-1239.
[6] 張永貴, 黃玉美, 高峰. 基于遺傳算法的機器人運動學參數誤差識別[J]. 農業機械學報, 2008, 39(9):153-157.
ZHANG Yonggui, HUANG Yumei, GAO Feng. Robotic Kinematics Parameters Error Identification Based on Genetic Algorithm[J]. Transactions of the Chinese Society for Agricultural Machinery, 2008, 39(9):153-157.
[7] NUBIOLA A, BONEV I A. Absolute Calibration of an ABB IRB 1600 Robot Using a Laser Tracker[J]. Robotics and Computer-Integrated Manufacturing, 2013, 29(1):236-245.
[8] LIGHTCAP C, HAMNER S, SCHMITZ T, et al. Improved Positioning Accuracy of the PA10-6CE Robot with Geometric and Flexibility Calibration[J]. IEEE Transactions on Robotics, 2008, 24(2):452-456.
[9] 王君臣, 王田苗, 楊艷, 等. 基于無跡卡爾曼濾波的機器人手眼標定[J]. 機器人, 2011, 33(5):621-627.
WANG Junchen, WANG Tianmiao, YANG Yan, et al. Robot Hand-eye Calibration Using Unscented Kalman Filtering[J]. Robot, 2011, 33(5):621-627.
[10] RENDERS J M, ROSSIGNOL E, BECQUET M, et al. Kinematic Calibration and Geometrical Parameter Identification for Robots[J]. IEEE Transactions on Robotics and Automation, 1991, 7(6):721-732.
[11] WANG Hongbo, GAO Tianqi, KINUGAWA J, et al. Finding Measurement Configurations for Accurate Robot Calibration:Validation with a Cable-driven Robot[J]. IEEE Transactions on Robotics, 2017, 33(5):1156-1169.
[12] 溫秀蘭, 康傳帥, 宋愛國, 等. 基于全位姿測量優化的機器人精度研究[J]. 儀器儀表學報, 2019, 40(7):81-89.
WEN Xiulan, KANG Chuanshuai, SONG Aiguo, et al. Study on Robot Accuracy Based on Full Pose Measurement and Optimization[J]. Chinese Journal of Scientific Instrument, 2019, 40(7):81-89.
[13] 姜一舟, 于連棟, 常雅琪, 等. 基于改進差分進化算法的機器人運動學參數標定[J]. 光學精密工程, 2021, 29(7):1580.
JIANG Yizhou, YU Liandong, CHANG Yaqi, et al. Robot Calibration Based on Modified Differential Evolution Algorithm[J]. Optics and Precision Engineering, 2021, 29(7):1580-1588.
[14] 喬貴方, 呂仲艷, 張穎, 等. 基于BAS-PSO算法的機器人定位精度提升[J]. 光學精密工程, 2021, 29(4):763-771.
QIAO Guifang, L Zhongyan, ZHANG Ying, et al. Improvement of Robot Kinematic Accuracy Based on BAS-PSO Algorithm[J]. Optics and Precision Engineering, 2021, 29(4):763-771.
[15] 寇斌, 郭士杰, 任東城. 改進粒子群算法的工業機器人幾何參數標定[J]. 哈爾濱工業大學學報, 2022, 54(1):9-13.
KOU Bin, GUO Shijie, REN Dongcheng. Geometric Parameter Calibration of Industrial Robot Based on Improved Particle Swarm Optimization[J]. Journal of Harbin Institute of Technology, 2022, 54(1):9-13.
[16] 喬貴方, 杜寶安, 張穎, 等. 基于POE模型的工業機器人運動學參數二次辨識方法研究[J]. 農業機械學報, 2024, 55(1):419-425.
QIAO Guifang, DU Baoan, ZHANG Ying, et al. Quadratic Identification Method of Kinematic Parameters of Industrial Robots Based on POE Model[J]. Transactions of the Chinese Society for Agricultural Machinery, 2024, 55(1):419-425.
[17] XUE Jiankai, SHEN Bo. Dung Beetle Optimizer:a New Meta-heuristic Algorithm for Global Optimization[J]. The Journal of Supercomputing, 2023, 79(7):7305-7336.
[18] 董奕含, 喻志超, 胡天躍, 等. 基于改進蜣螂優化算法的瑞雷波頻散曲線反演方法[J]. 油氣地質與采收率, 2023, 30(4):86-97.
DONG Yihan, YU Zhichao, HU Tianyue, et al. Inversion of Rayleigh Wave Dispersion Curve Based on Improved Dung Beetle Optimizer Algorithm[J]. Petroleum Geology and Recovery Efficiency, 2023, 30(4):86-97.
[19] 李斌, 高鵬, 郭自強. 改進蜣螂算法優化LSTM的光伏陣列故障診斷[J]. 電力系統及其自動化學報, 2024, 36(8):70-78.
LI Bin, GAO Peng, GUO Ziqiang. Improved Dung Beetle Optimizer to Optimize LSTM for Photovoltaic Array Fault Diagnosis[J]. Proceedings of the CSU-EPSA, 2024, 36(8):70-78.
[20] 潘勁成, 李少波, 周鵬, 等. 改進正弦算法引導的蜣螂優化算法[J]. 計算機工程與應用, 2023, 59(22):92-110.
PAN Jincheng, LI Shaobo, ZHOU Peng, et al. Dung Beetle Optimization Algorithm Guided by Improved Sine Algorithm[J]. Computer Engineering and Applications, 2023, 59(22):92-110.
[21] 郭琴, 鄭巧仙. 多策略改進的蜣螂優化算法及其應用[J]. 計算機科學與探索, 2024, 18(4):930-946.
GUO Qin, ZHENG Qiaoxian. Multi-strategy Improved Dung Beetle Optimizer and Its Application[J]. Journal of Frontiers of Computer Science and Technology, 2024, 18(4):930-946.
[22] ZHOU Yongquan, WANG Rui, LUO Qifang. Elite Opposition-based Flower Pollination Algorithm[J]. Neurocomputing, 2016, 188:294-310.
[23] DEHGHANI M, TROJOVSKY P. Osprey Optimization Algorithm:a New Bio-inspired Metaheuristic Algorithm for Solving Engineering Optimization Problems[J]. Frontiers in Mechanical Engineering, 2023, 8:1126450.
[24] SUGANTHAN P N, HANSEN N, LIANG J, et al. Problem Denitions and Evaluation Criteria for the CEC 2005 Special Session on Real-Parameter Optimization[J]. KanGAL Report, 2005005:2005.
[25] MIRJALILI S, LEWIS A. The Whale Optimization Algorithm[J]. Advances in Engineering Software, 2016, 95:51-67.
[26] MIRJALILI S, MIRJALILI S M, LEWIS A. Grey Wolf Optimizer[J]. Advances in Engineering Software, 2014, 69:46-61.
[27] HEIDARI A A, MIRJALILI S, FARIS H, et al. Harris Hawks Optimization:Algorithm and Applications[J]. Future Generation Computer Systems, 2019, 97:849-872.
[28] ABUALIGAH L, YOUSRI D, ABD ELAZIZ M, et al. Aquila Optimizer:a Novel Meta-heuristic Optimization Algorithm[J]. Computers amp; Industrial Engineering, 2021, 157:107250.
[29] XUE Jiankai, SHEN Bo. A Novel Swarm Intelligence Optimization Approach:Sparrow Search Algorithm[J]. Systems Science amp; Control Engineering, 2020, 8(1):22-34.
(編輯 陳 勇)
作者簡介:許佳璐,男,1999年生,碩士研究生。研究方向為工業機器人運動控制。
劉笑楠*(通信作者),女,1979年生,副教授。研究方向為圖像處理、計算機視覺。E-mail: liuxiaonan@sut.edu.cn。
本文引用格式:許佳璐,劉笑楠,李朋超,等.基于多策略融合蜣螂優化算法的工業機器人運動學參數辨識方法[J]. 中國機械工程,2025,36(2):294-304.
XU Jialu, LIU Xiaonan, LI Pengchao, et al. Kinematics Parameter Identification for Industrial Robots Based on Multi-strategy Fusion DBO Algorithm[J]. China Mechanical Engineering, 2025, 36(2):294-304.
基金項目:國家重點研發計劃(2021YFB3201600);遼寧省自然科學基金(20180520022)