劉晨暉 張為民 薛 峰
(同濟大學機械與能源工程學院,上海 201804)
近年來,隨著生產模式的演進,自動化、智能化和精細化模式已經成為了工業生產中的發展方向。機械臂以其自由度高,工作空間大等特性,廣泛用于特征異構的個性化產品裝配和物流等生產過程中,為了生產效率的提高發揮著越來越重要的作用。
在不同產品導入試生產的調試階段,除了應對機械臂運動軌跡進行適用性評估及可能的重新規劃外,還需要對現有或重新規劃完成的軌跡運動參數進行最優化的微調、配置或整定,使機械臂以更少調優成本和更優的性能去適應新的生產任務。因此,在不更改機械臂結構設計參數的條件下,對其運動參數進行調優,以快速完成生產場景切換,仍是解決生產優化問題的重點有效手段。
目前對機械臂軌跡運動參數優化研究主要有黑盒優化與白盒優化兩個方面。現有白盒優化可以通過數學建模,構建出因素—指標的近似數理變化關系,從而解決優化的機理性問題;但每次場景切換都需要重新完成建模,優化實驗成本和門檻較高。因而通常將機械臂運動參數優化問題視作黑盒優化模型,以多組因素—指標對為訓練樣本,得到數據驅動的因素—指標映射模型,進而通過極值化得到最優解。
貝葉斯優化算法(Bayesian optimization, BO)作為一種強大、靈活和求解快速的參數優化工具,廣泛地用于黑盒函數的高效全局優化[1],不少學者已將這種方法用于工業場景的優化研究中。 Calandra R等[2]針對仿生雙足步行機器人優化問題,通過仿真和實際實驗,評估、驗證了貝葉斯優化在步態優化中的效果。Roveda L等[3]以執行器末端配備有視覺系統的機器人為研究對象,基于貝葉斯優化方法,提出了一種在有限的實驗次數下優化機器人末端執行器位姿的方法,以使其在工業任務中靈活工作。在其他領域,王子涵等[4]將貝葉斯模型引入機床熱變形的神經網絡模型中,通過快速求解超參數,提高了神經網絡的預測性能。
上述研究中的貝葉斯優化均使用了高斯過程概率代理模型,盡管體現出了較好的靈活性和優化效果,但其只能處理數據類型為連續或數值型的待優化參數,不能適用于實際生產中廣泛存在的離散型或其他難以數值化的參數優化問題。為解決這一問題,大多數研究通過巧妙地改造高斯過程的核函數或者將離散的變量映射到連續空間[5],從而使得該方法能夠支持更多優化問題的解決。因此,關于代理模型替換的研究就不斷涌現。以隨機森林為代表的基于序列模型的算法配置優化算法(sequential model-based algorithm configuration, SMAC)[6]的提出,解決了貝葉斯模型在高斯回歸過程代理下,待優化的參數類型不能為離散型的情況,并在神經網絡模型非連續型結構參數優化中得到了成功應用;在工業場景中尚未見文獻報道。
綜上所述,本研究以ABB IRB 1410機械臂為實驗對象,選取了難以連續化、宜給定離散值的機械臂路徑行走方案編號作為離散變量,設計了3條有代表性的路徑方案;并聯合ABB IRB 1410機械臂中開放可調權限的速度、加速度和加加速度等3個連續變量參與優化實驗;選擇了若干指標并對其進行歸一化,通過實驗驗證了隨機森林貝葉斯優化方法在機械臂運動參數優化場景的有效性;與經典的基于高斯過程的貝葉斯優化進行了對比,證明了隨機森林貝葉斯優化方法的經濟性。
貝葉斯定理可以通過某一現象的先驗分布與似然概率(觀測樣本的概率分布)來推測后驗分布,形式上:設P(A)是沒有數據支持下,A事件發生的概率,即先驗概率;P(A|B)在事件B發生下,A事件發生的概率,即后驗概率;P(B|A)是A事件發生后B事件發生的概率分布,即似然函數;P(B)是邊際似然概率,有

利用貝葉斯原理,在解決黑盒全局參數優化問題上,可以基于已有的實驗結果,依次進行迭代,不斷提高黑盒函數的置信度,得到下一組具有較高事件概率的參數組合。因此式(1)可以改寫為[7]

式中:f表示為未知的黑盒函數;D1:t={(x1,y1),(x2,y2),···,(xt,yt)}表 示 已 有 的 實 驗 結 果 ,xt=(x1,t,x2,t,···,xn,t)T表 示 第t次 實 驗 下 的n維 參 數 組 合 ,yt=f(xt)+εt表示在xt參數組合下,得到的實驗結果,εt為觀測誤差;P(D1:t|f)表示在f下的y的似然分布;P(f)表示f的先驗概率分布,即對黑盒函數的假設;P(D1:t)表示f的邊際似然分布;P(f|D1:t)表示f的后驗概率分布,描述已有實驗的數據對先驗進行修正后的黑盒函數的置信度。
貝葉斯優化的難點就在于如何選取合適的概率代理函數和采集函數,以提高優化的速度,減少不必要的參數組合選取。
概率代理模型是貝葉斯優化框架的一個核心部分,用于處理優化變量與優化目標之間復雜的映射關系。不同的概率代理模型在貝葉斯優化的應用中往往發揮著不同的效果,這里常用的代理模型有高斯過程、隨機森林等。
1.1.1 高斯過程
高斯過程是多元高斯分布向無窮維度的擴展,是一系列服從正態分布的隨機變量在一定數據集z內的組合,由均值函數m(z)和協方差函數k(z,z′)確定為

實驗數據 D1:t中xt=(x1,t,x2,t,···,xn,t)T可以看作定義在樣本空間上的實值函數,為n維隨機變量。在貝葉斯優化中,需要假設優化函數的先驗為高斯過程為[8]

基于式(4),f1:t(x)的高斯分布參數為


對于下一個點xt+1,滿足正態分布N(μt+1,Σt+1),x1:t與xt+1的聯合分布參數為

因此ft+1(x)的概率密度函數為

ft+1(x)與f1:t(x)的聯合概率密度為

進一步得到條件概率密度函數為

將f1:t,t+1(x)、f1:t(x)代入求解,得到

式(15)中: ︿x1:t=x1:t-μ1:t,方差 Σt+1|1:t可以通過計算xi之 間協 方差 得到 ,均 值 μt+1|1:t中 的 μt+1可以 使用μ1:t近似計算。
因此,之后每個未知點的95%置信區間均可以通過公式(17)求解得到為

1.1.2 隨機森林
隨機森林本質是多個分類與回歸樹。樹的內部結點的右分支是取值為“是”,左分支是取值為“否”。遞歸地二分每個特征,將輸入空間(特征空間)劃分為有限個單元,并在這些單元上確定預測的概率分布,即在輸入給定的條件下輸出條件概率分布。
回歸樹主要用于處理數值類或者連續型變量;分類樹易于處理一些非數值類或者離散型變量。
針對回歸樹生成,給定數據集 D1:t,將第i個特征輸入空間 (xi,1,xi,2,···,xi,t)T,以及對應的輸出空間(y1,y2,···,yt)T,劃分為M個單元 (R1,R2,···,RM)。每個單元Rm上的固定輸出為Cm;I為0-1函數;回歸樹模型可表示為[9]

針對固定輸出為Cm,使用平方誤差(mean square error, MSE)表征回歸樹對于訓練數據的預測誤差,基于MSE最小原則求解模型損失函數式(19)的極小值為

MSE直接對Cm求導并讓導數為0,Rm空間上樣本數為Nm,有

對于特征輸入空間的劃分,采用最小二乘法,遞歸地將每個區域劃分兩個子域與,為

通過求解式(24)得

在數據集 D1:t第i個特征組中,遍歷所有的xi,j,求解出全局最小值的解集。之后對R1與R2繼續劃分,直到滿足迭代終止條件。
分類樹生成原理與回歸樹相似,但一般采用基尼指數最小原則進行空間劃分。假設有K個類別,樣本點屬于第k類的概率pk,基尼指數定義為[9]

當樣本集合 D1:t根據C特征劃分為 D1與 D2兩部分時,得

基尼指數越大,則表示樣本集合不確定性越大。因此在分類樹劃分空間時候,需要遵循基尼指數最小原則。
在隨機森林算法中,需要根據具體數據類型,確定回歸樹與分類樹數目與最大迭代次數,對每個特征進行訓練,去擬合黑盒函數f,該過程可以類比高斯回歸過程中n個點所構成的多維正態分布。對于新加入的點,在隨機森林的每棵樹上有一個預測結果,即條件概率分布。每棵樹相互獨立,預測結果均值與方差為

95%置信區間為

采集函數是根據后驗概率分布構造的,由于原始函數f(x)的計算成本較高,因此構建一個更便宜的函數,稱為采集函數 α (x),由代理模型確定下一個待評價點。在參數空間X中選擇下一個點xt+1將滿足

這能同時能夠平衡“探索”以及“精進”兩種機制,通過采集函數最值化,來選擇下一個最具潛力的評估點,并避免不必要的采樣。
常用的采集函數有置信邊界策略等。置信邊界策略包括置信下界(lower confidence bound, LCB)和置信上界(upper confidence bound, UCB)兩種,都為均值函數和協方差函數組成,UCB 多應用于望大優化,LCB 多應用于望小優化。
本文針對機械臂的調優實驗指標均為望小指標,采用LCB策略,得

式中: μ (x)與 σ (x)分別為均值函數與方差函數,k為迭代遞減步長,用于平衡“探索”與“精進”機制,保證調優前期盡可能進行寬度搜索,調優后期進行深度搜索。
第1步,先根據初始化數據:D1:t={(x1,y1),(x2,y2),···,(xt,yt)},xt為初始化實驗中,輸入參數組合,yt為在對應參數組合下的歸一化指標,獲得一個概率代理模型的先驗分布;
第2步,選擇LCB作為采集函數,計算 α (x);
第3步,得到使采集函數最大的xt+1值;
第4步,以xt+1為下一次實驗參數組合,得到該組實驗下的歸一指標yt+1;
第5步,將{xt+1,yt+1}作為下一次迭代的訓練值,根據1.1節所述各公式,計算、更新概率代理模型的先驗分布;
重復第2步到第5步,直到達到迭代次數預設值,或者出現重復推薦數據xt+a=xt+b。
流程圖如圖1所示。

圖1 調優流程圖
為簡化子指標數據的輸入,需要對數據歸一化處理,本次研究選擇層次分析法。計算步驟如下[10]:
(1)建立層次結構模型,將決策目標、決策準則和決策對象按它們之間的相互關系分為最高層、中間層和最低層,繪出層次結構圖。
(2)構造判斷矩陣,不把所有因素放在一起比較,而是兩兩相互比較,并按表1對其重要性程度評定等級。其中判斷矩陣具有如下性質

表1 因素重要性程度評定等級表

(3)求解判斷矩陣最大特征根的特征向量,進行層次單排序,并進行一致性檢驗。
(4)層次總排序及其一致性檢驗,將最后因素層加權求解到最高層。
本研究以ABB IRB 1410機械臂為調優對象,機械臂基坐標系遵循右手系原則,Y軸正方向與Z軸正方向如圖2所示。選擇機械臂安裝燃料電池極板為工作場景,該場景要求電池極板在X-Y平面安裝的位置精度有著較高要求,極板中心點位置度應處于0.05 mm公差帶內,以保證后續極板點膠工藝順利進行;同時希望保證安裝過程平穩,沖擊較小。

圖2 ABB IRB 1 410
2.2.1 調優參數介紹
機械臂的調優參數從量化角度可以分為連續型變量與離散型變量,連續型調優變量為以下3個:
(1)機械臂工具中心點(tool center point, TCP)線性速度(記作:速度v),為機械臂末端工具坐標系原點相對于機械臂的基坐標系原點的線性運動速率,單位為 m m/s??梢酝ㄟ^機械臂的示教器,在程序數據模塊進行設置,更改范圍為0~2 100 m m/s。
(2)機械臂加速度百分率(記作:加速度a),對機械臂TCP線性速度進行調節,實現機械臂末端的加減速過程,是機械臂系統內部額定值的百分比,單位為%??梢酝ㄟ^機械臂示教器,在運動指令-AccSet中進行設置,更改范圍為20%~100%。
(3)機械臂加速度坡度(記作:加加速度a’),用于調節機械臂加速度曲線,改善機械臂末端加減速過程的平滑性,是機械臂系統內部額定值的百分比,單位為%??梢酝ㄟ^機械臂示教器,在運動指令-AccSet中進行設置,更改范圍為20%~100%。
因為燃料電池極板在被吸取時即位于機械臂末端,因而選擇調整工具坐標系本身的運動學參數可以更直觀地對實驗結果進行采集和反饋。
離散型調優變量為機械臂末端空間路徑方案p。機械臂末端空間路徑是指機械臂末端工具坐標系原點在空間的線性運動軌跡。如表2所示,3條路徑選取相同的起點終點,各自選取一個不同空間位置點作為中間插值點用以區分路徑。

表2 路徑點空間信息表 mm
路徑的起點、終點和中間插值點3點構成了2條路徑線段,計算路徑線段長度如表3所示。

表3 路徑線段長度信息 mm
對于插值點—終點這段路徑,必然存在著機械臂減速階段,不可避免地會引起振動。對減速過程的慣性力以機械臂基坐標系按式(33)進行正交分解:

式中:L為插值點—終點路徑長度;i為某一正交方向;li為L的在i上正交投影長度; θi為慣性力在i正交方向上分量。并著重關注在X-Y平面的慣性力分量。得到的詳細信息如表4所示。

表4 路徑的正交分解
路徑耗時上,路徑2最短、路徑1次之、路徑3耗時最長;但相應的,從平穩性角度出發,路徑3的TCP坐標X-Y平面下的慣性力分量小于路徑1、小于路徑2,即路徑3最平穩、路徑1次之、路徑2的振動最大。換言之,路徑2耗時短但不平穩、路徑3平穩但耗時長,路徑1的兩方面都較折中。這3條路徑實際上對應了運動特點的3種不同程度,因而設計此3條路徑并將之作為備選路徑方案參與優化過程是具代表性及合理性的。
2.2.2 采樣空間劃分
貝葉斯調優來需要給定調優參數的采樣空間以及采樣間隔,采樣空間由實驗設備的參數上下界或者待研究的參數范圍確定。采樣間隔應該設置合理,避免出現過大過小情況。
對于高斯過程來說,需要將路徑方案p進行映射。規定路徑1的方案編號為1,路徑2的方案編號為2,路徑3的方案編號為3。
因此設置如表5調優參數信息,前述數據集D1:t中xt=(v,a,a′,p)T。

表5 優化參數信息
機械臂在燃料電池極板安裝過程中,需要考慮裝配效率與精度。
機械臂的運動總時間會直接影響生產效率。在實驗中,通過機械臂自帶的計時器得到單次運行時間T,其分辨率為0.001 s。
機械臂末端殘余振動是由于運輸過程中的快速定位運動會激發機器人的結構模態,引起末端執行器的慣性振動[11]。在實驗中,通過在機械臂末端布置加速度傳感器,采集運動結束前后0.4 s的時間段內振動信號,計算振動脈沖指數A,公式為

式中:A表示時間段內信號絕對值最大值與絕對平均值之商,振動沖擊越大,A越大。單位為無量綱數,計算后小數位數保持為3位。
機械臂的絕對定位精度是用來衡量機械臂末端工具坐標系原點到達空間目標點準確度的能力,分為位置精度與方向精度,其通常由靜態因素和動態因素等共同作用;其中,動態因素包括機械臂在運動過程中受慣性力等因素造成關節微變形與機械抖動等情況。根據前述實驗場景,電池極板在X-Y平面安裝的位置精度有著較高要求。在實驗中,以30 mm×30 mm白色方片紙為定位基準,通過1 200 W像素攝像頭采集每次運動結束后白色方片紙中心與參考位置中心的像素偏差,并計算轉化為長度單位,計為機械臂的位置精度 μ,計算公式為

單方向上采集分辨率為0.01 mm。傳感器設備圖3所示。

圖3 振動傳感器(左)攝像頭傳感器(右)
選擇單次運動的總時間T,振動脈沖指數A以及其末端的位置精度 μ當作判別指標。三者皆為負向指標,即在實驗過程中越小越好。層次分析法的判斷矩陣賦權原則:相同指標同樣重要(量化值為1);時間較于振動脈沖因子同樣重要(量化值為1);時間較于絕對定位偏差介于稍微重要和明顯重要之間(量化值為2);振動脈沖因子較于絕對定位偏差介于稍微重要和明顯重要之間(量化值為2)。按照1.4節所述,計算得到3個子指標的判斷矩陣如表6。計算特征向量與一致性,得到時間權重為0.4;振動脈沖因子權重為0.4;絕對定位偏差權重為0.2,如表7所示。最后,總歸一指標為各歸一化后的子指標加權之和。

表6 判斷矩陣

表7 子指標信息
實驗結果的歸一指標yt的有效位數與子指標保持一致,計算公式如下。

按照前述流程,隨機森林與高斯過程的貝葉斯優化各選擇3組相同的初始化參數開始調優,其中隨機森林的樹個數為20,貝葉斯優化的采集函數為LCB(保證95%的置信率);將得到的第一次運動參數x3+1當作第一輪實驗數據,計算第一次歸一指標y3+1,并將該組數據插入初始化數據集返回計算第二次運動參數;依次迭代計算。得到高斯過程實驗結果如表8所示,隨機森林實驗結果如表9所示。

表8 高斯過程貝葉斯實驗結果

表9 隨機森林貝葉斯實驗結果
如表10所示,將二者調優結果的歸一指標與實驗次數進行對比分析,規定歸一指標下降幅度除以實驗次數為單位收益,用于衡量調優算法綜合性能。可以得到:二者均收斂到路徑1,印證了路徑1長度較短,X-Y平面慣性力分量較小的性質,表明了在處理離散參數二者均有著較好性能;隨機森林算法的綜合調優性能較高斯過程提高了15%。證明了隨機森林作為概率代理模型在貝葉斯算法中有著較好的調優性能,之后也可以推廣到存在離散與連續參數的工業調優場景中。

表10 隨機森林與高斯過程對比實驗結果
筆者從理論上分析了貝葉斯優化方法概率代理模型與采集函數,闡述了貝葉斯優化方法在ABB IRB 1410機械臂運動參數優化中的可行性。選擇了隨機森林與高斯過程兩種概率代理模型進行實驗對比:在選擇的調優參數個數較少情況下,隨機森林貝葉斯的優化效果比高斯貝葉斯高15%。
考慮到貝葉斯優化的概率代理模型還有很多種,因此對其他概率模型代理下的貝葉斯優算法在機械臂運動參數中的性能是下一步研究的重點。