葉伯生,謝鵬,張文彬
(華中科技大學(xué)機械科學(xué)與工程學(xué)院國家數(shù)控系統(tǒng)工程技術(shù)研究中心,湖北武漢,430074)
隨著工業(yè)機器人應(yīng)用領(lǐng)域越來越廣泛[1],國家對于工業(yè)機器人產(chǎn)業(yè)布局與加強競爭力的重視程度越來越高[2]。學(xué)者們重點研究零部件和工況條件對整機性能的影響規(guī)律[3?4],一方面,可以準確評估工業(yè)機器人的整機性能,另一方面,可以科學(xué)生產(chǎn)不同性能的工業(yè)機器人,高效、高精、可靠地應(yīng)用至各種場合。
整機性能評估方面,目前通?;诩す飧檭x[5?7]等測量設(shè)備,使用性能評價系統(tǒng)軟件[8?9]來完成。然而,測量設(shè)備與評價系統(tǒng)被國外壟斷,價格昂貴,且不能對未完成裝配的工業(yè)機器人進行性能預(yù)測評估。在整機性能影響規(guī)律的研究方面,目前通?;诔R?guī)的實驗研究法即進行大量測試實驗[10],獲取一定數(shù)量的測試數(shù)據(jù)來進行繪圖分析,從而得到特定參數(shù)對特定性能指標的影響規(guī)律。但是,工業(yè)機器人是一個非線性、多變量的控制對象[11],是由伺服驅(qū)動器、減速器、控制器和傳感器等眾多核心零部件組成的復(fù)雜系統(tǒng)[12?15],同時,其整機性能又受到了負載和速度等工況條件的耦合影響,諸多影響條件極大地限制了實驗研究法的可執(zhí)行性及準確性。
本文針對工業(yè)機器人整機性能評估指標及影響因子多、影響關(guān)系耦合性強和工況條件多變等實際問題,通過對核心零部件性能指標、工況參數(shù)與整機性能評估參數(shù)的數(shù)據(jù)進行訓(xùn)練學(xué)習(xí),提出一種基于遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的工業(yè)機器人整機性能評估模型,以期實現(xiàn)對整機性能的評估預(yù)測。
為了提高工業(yè)機器人整機性能評估模型的準確度與可靠性,必須在模型構(gòu)建之前確定合理的參數(shù)。工業(yè)機器人主要由減速器、伺服電機和控制器等核心零部件組成,并且在工作過程中整機性能通常受到工況條件的影響,因此,模型的輸入,輸出參數(shù)主要考慮表1中指標。
表1 模型輸入/輸出參數(shù)Table 1 Model input/output parameters
整機性能指標方面,工業(yè)機器人的運動性能是表征其整機性能最重要的指標之一,在GB/T 12642—2013“工業(yè)機器人性能規(guī)范及其試驗方法”[16]中,有14 項工業(yè)機器人整機性能指標被確立為國家標準,然而,目前大部分工業(yè)機器人廠家及用戶并不關(guān)注國家標準中規(guī)定的所有性能指標。受到重點關(guān)注的整機性能指標[17]主要是位置準確度、位置重復(fù)性、軌跡準確度和軌跡重復(fù)性等。
1.2.1 BPNN結(jié)構(gòu)設(shè)計
減速器、伺服電機、控制器與工況條件等眾多因素共同對工業(yè)機器人整機性能產(chǎn)生強耦合性影響,BP 神經(jīng)網(wǎng)絡(luò)在解決這種復(fù)雜非線性模型的問題時有很好的效果[18],為了避免遺漏潛在的性能影響鏈,充分挖掘性能影響關(guān)系,先在輸入層之后設(shè)置一層隱含層進行初步計算,在此之后再設(shè)置一層隱含層以完善處理,形成雙隱含層結(jié)構(gòu),并將其中所有神經(jīng)元設(shè)置為全連接,如圖1所示。
圖1 BPNN結(jié)構(gòu)設(shè)計示意圖Fig.1 Schematic diagram of BPNN structure design
1)輸入層。整機性能評估模型的輸入?yún)?shù)為扭轉(zhuǎn)剛度、空程、傳動效率、傳動誤差、啟動扭矩、背隙、正反轉(zhuǎn)速差率、轉(zhuǎn)矩波動系數(shù)、轉(zhuǎn)速波動系數(shù)、系統(tǒng)效率、溫升、電氣時間常數(shù)、軌跡平滑、準確到位、標定與誤差補償、系統(tǒng)最快響應(yīng)時間、循環(huán)掃描時間、I/O模塊響應(yīng)時間、工作速度和工作負載,共計20 個。因此,BPNN 中為輸入層設(shè)置20 個神經(jīng)元,分別用于接收上述參數(shù)樣本值。
2)輸出層。整機性能評估模型的輸出參數(shù)為位置準確度、位置重復(fù)性、軌跡準確度和軌跡重復(fù)性,共計4 個。因此,BPNN 中為輸出層設(shè)置4個神經(jīng)元,分別用于輸出上述參數(shù)的預(yù)測評估值。
3)隱含層。為了維持影響因子在傳遞鏈中的層級遞進關(guān)系,雙隱含層神經(jīng)元個數(shù)保持一致,具體數(shù)值結(jié)合式(1)與參數(shù)調(diào)整機制來確定。
式中:q,n和m分別為隱含層、輸入層和輸出層的神經(jīng)元個數(shù);a為常數(shù),取值范圍為[1,10]。
由式(1)可得q取值范圍為[6,15],接著以隱含層神經(jīng)元數(shù)量為橫坐標、模型得分為縱坐標繪圖,如圖2所示。由圖2可知:當隱含層神經(jīng)元個數(shù)初始增加時,模型得分大幅度提高;而前者增加至5左右時,后者雖仍呈遞增趨勢,但速度開始變得緩慢。結(jié)合調(diào)參過程圖與經(jīng)驗式計算結(jié)果,隱含層神經(jīng)元個數(shù)設(shè)置為10。
圖2 BPNN關(guān)于隱含層神經(jīng)元數(shù)量的調(diào)參過程Fig.2 BPNN parameter adjustment process about number of hidden layer neurons
4)權(quán)重與閾值。減速器、伺服電機、控制器與工況條件中各參數(shù)對整機性能的影響重要性程度尚且未知,因此,BPNN中所有神經(jīng)元初始權(quán)重與閾值暫且設(shè)置為(0,1)之間的隨機數(shù)。
5)激勵函數(shù)。工業(yè)機器人是由眾多部件組成的復(fù)雜系統(tǒng),其整機性能的內(nèi)部影響機制絕非簡單的線性關(guān)系,性能評估模型也勢必伴隨大量計算及時間開銷。因此,為了使得BPNN具備非線性映射能力,降低計算量,提高收斂速度,將其神經(jīng)元激勵函數(shù)設(shè)置為ReLu函數(shù)[19],如式(2)所示。
6)損失函數(shù)。位置準確度、位置重復(fù)性、軌跡準確度和軌跡重復(fù)性等性能評估指標都是連續(xù)值,由此可見,工業(yè)機器人整機性能評估屬于預(yù)測回歸問題。因此,BPNN中損失函數(shù)設(shè)置為均方誤差[20]。
式中:EMSE為均方誤差;yi為真實數(shù)據(jù);y′i為預(yù)測數(shù)據(jù);N為樣本個數(shù)。
7)權(quán)重優(yōu)化器。本文工業(yè)機器人整機性能及其影響因子數(shù)據(jù)集樣本量較少,考慮到模型訓(xùn)練效果與收斂速度,BPNN中權(quán)重優(yōu)化器選擇使用LBFGS(large Broyden Fletcher Goldfarb Shanno)。
雙隱含層全連接神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)具有較強的非線性映射能力,但還需要代入工業(yè)機器人性能數(shù)據(jù)集,使用誤差逆?zhèn)鞑ニ惴ㄍ瓿捎?xùn)練學(xué)習(xí),從而實現(xiàn)工業(yè)機器人整機性能預(yù)測評估。
1.2.2 遺傳算法優(yōu)化
由于模型輸入?yún)?shù)對整機性能的影響重要性程度未知,BPNN 的初始權(quán)重與閾值為(0,1)范圍內(nèi)的隨機數(shù),可能導(dǎo)致均方誤差損失函數(shù)陷入局部最小,降低其對于整機性能指標的預(yù)測評估準確度。因此,考慮到遺傳算法在多參數(shù)尋優(yōu)過程中具備優(yōu)良的啟發(fā)式搜索能力[21?22],本文進一步使用遺傳算法對BPNN 權(quán)重與閾值的初始化進行優(yōu)化,使其盡可能逼近全局最小[23?24],算法流程圖如圖3所示。
圖3 基于遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)流程圖Fig.3 Flow chart of optimized BP neural network based on genetic algorithm
1)運行參數(shù)初始化。對遺傳算法的運行參數(shù)進行初始化,參數(shù)包括:種群中個體總數(shù)N,交叉概率Pc,變異概率Pm,遺傳進化總代數(shù)G,初代種群Pop(0)和當前種群代數(shù)i。
2)種群初始化及個體編碼。對初代種群進行初始化,在(0,1)范圍內(nèi)隨機生成N組神經(jīng)網(wǎng)絡(luò)權(quán)重與閾值,將其作為初代種群中的個體;接著對所有個體進行實數(shù)編碼,編碼長度為
式中:L為神經(jīng)網(wǎng)絡(luò)中權(quán)重與閾值的總個數(shù)。
編碼格式如圖4所示。
圖4 遺傳算法個體編碼格式Fig.4 Genetic algorithm individual coding format
3)種群適應(yīng)度評價。將適應(yīng)度評價函數(shù)設(shè)置如式(5)所示,
式中:f為個體的適應(yīng)度。
通過式(5)計算種群中所有個體的適應(yīng)度,適應(yīng)度可反映個體的利用率,其值坐落于(0,1)范圍內(nèi),適應(yīng)度越大,說明個體越優(yōu),越值得使用。
4)選擇操作。使用輪盤賭法[25]進行選擇操作,從種群中挑選出2個個體,概率為
式中:P為每個個體被選中的概率。
5)交叉操作。使用隨機交叉法進行交叉操作,示意圖如圖5(a)所示,由5(a)可見:先在(0,1)范圍內(nèi)隨機生成交叉判斷因子P′c,當P′c 6)變異操作。使用隨機變異法進行變異操作,如圖5(b)所示,由圖5(b)可見:先在(0,1)范圍內(nèi)隨機生成變異判斷因子P′m,當P′m 圖5 遺傳算法基因操作示意圖Fig.5 Schematic diagram of genetic algorithm genetic manipulation 7)子代種群。無論被選中的2個個體是否執(zhí)行交叉或變異操作,都將其二者加入至下一代種群,若下一代種群個體數(shù)目還不及N,則繼續(xù)執(zhí)行變異操作;若下一代種群個體數(shù)目達到指定要求,則返回第3步對其進行種群適應(yīng)度評價。 當最高適應(yīng)度的權(quán)重與閾值達到預(yù)期效果或迭代次數(shù)達到遺傳進化總代數(shù)時,停止循環(huán)迭代,將當前最優(yōu)個體輸出給BP神經(jīng)網(wǎng)絡(luò),進而在遺傳算法優(yōu)化后的權(quán)重與閾值基礎(chǔ)上完成神經(jīng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)。 將校正決定系數(shù)作為指標對模型進行擬合效果分析, 式中:為校正決定系數(shù);p為屬性特征數(shù)量;R2為決定系數(shù)。校正決定系數(shù)取值范圍為(0,1),值越大說明模型擬合效果越好。 通過10 次10 折交叉驗證獲取不同的100 份訓(xùn)練集與測試集,用于模型訓(xùn)練與測試,記錄校正決定系數(shù)并繪圖如圖6所示。從圖6可見:BPNN整機性能評估模型明顯存在多次校正決定系數(shù)得分低于60%的情況,而經(jīng)過遺傳算法優(yōu)化后幾乎未出現(xiàn)極低分;后者在訓(xùn)練集上的表現(xiàn)雖稍有一定波動,但比前者更穩(wěn)定;后者在測試集上的擬合效果相對于前者更好,但在不同數(shù)據(jù)集上的表現(xiàn)差異仍然較大,且大部分得分都只算中等偏上水平??傮w而言,遺傳算法優(yōu)化能夠明顯防止BPNN整機性能評估模型陷入局部最小,其模型泛化能力也較強。 圖6 遺傳算法優(yōu)化前后BPNN整機性能評估模型擬合效果Fig.6 BPNN machine performance evaluation model fitting effect before and after genetic algorithm optimization 搭建工業(yè)機器人性能測試實驗平臺及核心零部件性能測試實驗平臺。實驗平臺包括六軸工業(yè)機器人、機器人控制柜、Leica 激光跟蹤儀、伺服電機及減速器安裝架和傳感器等。通過實驗平臺對工業(yè)機器人整機及其核心零部件進行性能測試,共計獲取36 份樣本,將其作為驗證集代入整機性能評估模型中,得到相應(yīng)的整機性能預(yù)測評估值。本文以整機性能中位置準確度為例對實驗的驗證過程進行說明。 圖7所示為模型預(yù)測效果與預(yù)測誤差分布。由圖7(a)可見:模型對于樣本的預(yù)測值大多數(shù)都在樣本真實值處上下浮動,并且預(yù)測數(shù)據(jù)基本能夠擬合真實數(shù)據(jù)曲線,這表明模型對未知新樣本具有良好的預(yù)測評估能力。為了更可靠地驗證模型的泛化能力,計算并匯總其對于36 個樣本的預(yù)測誤差,如圖7(b)所示。由圖7(b)可見:模型對于新樣本的預(yù)測誤差總體分布正常,幾乎未出現(xiàn)極端異常值,這說明模型對于樣本的預(yù)測數(shù)據(jù)可靠性較高。模型的預(yù)測誤差相對集中,位置準確度絕對誤差大部分坐落于[0.085,0.125],最大誤差為0.131 mm。因此,模型總體而言在實際應(yīng)用中是有效的,能夠較準確地對整機性能實現(xiàn)預(yù)測評估。 圖7 模型預(yù)測效果與預(yù)測誤差分布Fig.7 Prediction effect and prediction error distribution of the model 1)BPNN整機性能評估模型在測試集中存在多次校正決定系數(shù)得分低于60%的情況,而經(jīng)過遺傳算法優(yōu)化后的BPNN整機性能評估模型幾乎未出現(xiàn)極低分;后者在訓(xùn)練集和測試集上的表現(xiàn)較前者更優(yōu)異。遺傳算法優(yōu)化能夠明顯防止BPNN整機性能評估模型陷入局部最小,導(dǎo)致模型泛化能力更強。 2)以工業(yè)機器人位置準確度為例,建立的整機性能評估模型的預(yù)測值在樣本真實值處上下浮動,位置準確度絕對誤差大部分坐落于[0.085,0.125],最大誤差為0.131 mm,未出現(xiàn)極端異常值,表明建立的模型在實際應(yīng)用中是有效的,能夠較準確地對整機性能實現(xiàn)預(yù)測評估。2 實驗分析及驗證
2.1 擬合效果分析
2.2 預(yù)測評估及誤差分析
3 結(jié)論