肖亞寧,郭艷玲,張亞鵬,王揚威,李 健
(東北林業(yè)大學機電工程學院,哈爾濱 150040)
選擇性激光燒結(jié)是一種基于實體三維模型,然后利用高能量激光束逐層燒結(jié)堆積成型的快速成型技術(shù)之一[1]。相比傳統(tǒng)的加工制造技術(shù),其使用的成型材料豐富,節(jié)約資源且生產(chǎn)周期短,在各行業(yè)領(lǐng)域都有著巨大的應用前景[2-3],然而激光燒結(jié)是一種復雜的熱物理化學過程,受多種因素影響,成型件精度往往難以得到有效的控制,成為限制該技術(shù)在工業(yè)上普遍應用和進一步實際發(fā)展的重要原因,因此提高選擇性激光燒結(jié)(selective laser sintering, SLS)成型件精度具有重要意義[4-5]。
目前,實際生產(chǎn)多采用試測法制定不同工藝參數(shù)組合[6],然后根據(jù)成型效果尋找最優(yōu)參數(shù)組合指導加工,這種方法往往需要花費大量的時間和成本,而且很難獲得理想的關(guān)系模型[7]。隨著機器學習和人工智能等科學的不斷發(fā)展,為進一步提高激光燒結(jié)成型精度,越來越多的中外學者也嘗試采用各種優(yōu)化算法來建立工藝參數(shù)和尺寸精度間的映射關(guān)系。劉碩等[8]針對解決激光燒結(jié)增材制造過程中出現(xiàn)的幾何尺寸誤差問題,依據(jù)廣義回歸神經(jīng)網(wǎng)絡(luò),建立了SLS工藝參數(shù)與收縮率間的定量模型,為實際加工中優(yōu)化控制收縮提供參考;王丹妮等[9]應用粒子群算法和BP(back propagation)神經(jīng)網(wǎng)絡(luò)2種算法建立工藝參數(shù)與燒結(jié)件質(zhì)量間的預測模型,同時分析了各因素間的相互關(guān)聯(lián),以此來選擇相應加工參數(shù);胡華清等[10]在大量實驗基礎(chǔ)上,利用遺傳算法優(yōu)化支持向量機確定了一定參數(shù)范圍下的工藝參數(shù)組合方案,定性分析了各參數(shù)對于制件精度的本質(zhì)影響;Sharma[11]提出利用人工神經(jīng)網(wǎng)絡(luò)建立掃描速度、掃描間距、預熱溫度與燒結(jié)精度之間的定量模型。
盡管上述算法在具體應用中均取得一定的效果,但由于算法本身存在收斂速度慢、搜索能力差。易陷入局部最優(yōu)等缺陷,所以預測效果仍不盡人意。人群搜索算法是由Dai等[12]提出的一種新型元啟發(fā)式算法,研究表明:人群搜索算法(seeker optimizaiton algorithm, SOA)相較于傳統(tǒng)群智能優(yōu)化算法具有更快的收斂速度和尋優(yōu)精度[13]。結(jié)合SLS的工藝特點,選取激光功率、預熱溫度、掃描速度、掃描間距以及分層厚度五個工藝參數(shù)設(shè)計正交試驗,提出了一種利用SOA算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值的策略,對SLS成型件精度和工藝參數(shù)模型進行預測分析。最后將預測結(jié)果同PSO-BP以及傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)預測結(jié)果進行對比,表明該方法具有良好的預測精度和更高的穩(wěn)定性,可為實際生產(chǎn)提供科學指導。
SLS加工工藝參數(shù)與成型件間的精度具有非常復雜的非線性關(guān)系,影響成型結(jié)果的工藝參數(shù)主要包括激光功率、預熱溫度、掃描速度、掃描間距和分層厚度[14]。
1.1.1 激光功率
激光功率決定著單位時間粉末吸收的能量,激光能量密度是熔化粉末材料的主要能量輸入來源,較高的激光能量會引起材料粉末瞬間熔化深度大于分層厚度,形成材料“過燒”[15];反之,過低的激光能量會使粉末不能充分熔化,單層粉末難以粘結(jié)在一起。
1.1.2 預熱溫度
在正式加工前,材料粉末都要提前預熱,預熱能減少能量的消耗,縮短加工時間。若沒有預熱,將會使得零件成型時間增加,甚至無法燒結(jié);當預熱溫度低于理想溫度,零件因溫差過大可能會出現(xiàn)嚴重的翹曲變形或錯層現(xiàn)象;當預熱溫度過高,粉末會被直接燒結(jié)成型,不利于后期處理。
1.1.3 掃描速度
掃描速度即激光束掃描制件截面內(nèi)部的速度,隨著掃描速度的增大,材料難以充分熔融,反之隨著掃描速度變慢,激光束產(chǎn)生的能量能熔化粉層內(nèi)大部分粉末,制件致密度變高。
1.1.4 掃描間距
掃描間距決定了加工過程中熱量分布狀態(tài)以及相鄰區(qū)域內(nèi)材料的熔化程度。掃描間距小,則熱應力大,從而使燒結(jié)效率變低;間距過大,則分辨率變低,成型精度低。
1.1.5 分層厚度
分層厚度即模型切片處理時的切片厚度,通常也被設(shè)置為鋪粉厚度。分層厚度過小,掃描時間越長,效率越低,增加材料損耗,若分層厚度過大,則會產(chǎn)生“臺階現(xiàn)象”[16]。
實驗設(shè)備為自主設(shè)計研發(fā)的CX-B200小型工業(yè)級激光燒結(jié)成型機,其主要技術(shù)參數(shù)如下:激光功率40 W,成型尺寸200 mm×200 mm×200 mm,分層厚度0.08~0.4 mm,最大掃描速度為2 000 mm/s,輸入文件格式為Gcode。
本文中設(shè)計并采用直徑25 mm、高度10 mm的圓柱體制件作為實驗樣件,實驗材料為竹粉/共聚酰胺復合粉末[17],同時選取激光功率P、預熱溫度T、掃描速度V、掃描間距L和分層厚度D作為正交試驗的因子,設(shè)計了L16正交表,根據(jù)前期研究選取激光功率為10~25 W,預熱溫度為75~90 °C,掃描速度為1.0~2.5 m/s,掃描間距為0.10~0.25 mm,分層厚度為0.10~0.25 mm,每個因子的具體水平如表1所示。
表1 正交試驗因素水平
為了保證實驗的準確性,本文中每組實驗設(shè)計5個樣件,分別采用游標卡尺和圓柱度測量儀測量5個樣本的圓柱度誤差Δε和高度誤差ΔH并求取平均值作為每組實驗結(jié)果,實驗現(xiàn)場如圖1所示。按正交表進行了16組實驗,最終的實驗樣本數(shù)據(jù)如表2所示。
圖1 實驗樣件模型
表2 實驗樣本數(shù)據(jù)
SLS工藝參數(shù)組合的選取是一個多目標優(yōu)化問題。在多目標優(yōu)化技術(shù)中,一般很難使其分目標同時達到最優(yōu)[18],本文利用線性加權(quán)組合法將其轉(zhuǎn)化為統(tǒng)一目標函數(shù),消除量綱并確定各項加權(quán)因子。
假設(shè)已知各項目標函數(shù)值的區(qū)間范圍為
mj≤Yi≤nj,j=1,2,3,…
(1)
則
(2)
式(2)中:ΔYj為各目標函數(shù)容限,將加權(quán)因子取為
(3)
針對激光燒結(jié)工藝參數(shù)的優(yōu)化問題,將實驗樣本數(shù)據(jù)中的圓柱度誤差Δε和高度誤差ΔH作為各項目標函數(shù)進行轉(zhuǎn)化,得到成型件統(tǒng)一性能Q的目標函數(shù)為
Q=0.347Δε+0.220ΔH
(4)
式(4)中:轉(zhuǎn)化后的統(tǒng)一性能Q作為成型件尺寸精度的評價指標,其函數(shù)值越小則成型精度越高。將上文實驗數(shù)據(jù)代入式(4)中可以計算出目標函數(shù)值,見表2。
人群搜索算法是一種基于種群的新型啟發(fā)式隨機搜索算法,在該算法中,通過評估對應位置變化的響應,根據(jù)經(jīng)驗梯度來選擇搜索方向,并基于模糊規(guī)則的不確定性推理來決定步長[19-20]。人群搜索算法具有概念明確、易于理解、收斂速度快和精度高等特點,其計算步驟如下。
2.1.1 搜索步長的確定
SOA算法在確定步長時先將個體最佳適度值按遞減的順序排列,并將個體賦予從1到N的順序編號作為模糊推理的輸入,采用高斯隸屬函數(shù)表示搜索步長的模糊變量,即
(5)
式(5)中:uA為高斯隸屬度;x為輸入變量;u、δ均為隸屬函數(shù)參數(shù)。
其他位置隸屬度可表示為
(6)
uij=rand(ui,1)
(7)
式中:ui為第i個個體對應的隸屬度;I(i)表示第i個個體最佳適應度值按降序排列后的順序編號;N為種群規(guī)模;Umax為最大隸屬度,Umin為最小隸屬度;uij為j維搜索空間的目標函數(shù)值i對應的隸屬度;函數(shù)rand(ui,1)產(chǎn)生均勻隨機分布在[ui,1]上的實數(shù)。
搜索步長公式為
(8)
式(8)中:aij為j維搜索空間的搜索步長;δij為高斯隸屬函數(shù)的參數(shù),計算公式為
δij=ω(t)|zbest-10rand(1,3)|
(9)
(10)
式中:zbest表示全局最優(yōu);rand(1,3)表示產(chǎn)生均勻隨機分布在[1,3]上的實數(shù);ω(t)為第t次迭代的權(quán)重函數(shù)值,隨迭代次數(shù)的增加從0.9線性遞減至0.1,t為當前迭代次數(shù);MaxIter為最大迭代次數(shù)。
2.1.2 搜索方向的確定
在確定搜索步長后,通過將第i個個體與個體最佳和全局最佳進行比較確定搜索方向是利己方向di,ego、利他方向di,alt還是預動方向di,pro,表示為
di,ego(t)=gi,best-xi(t)
(11)
di,alt(t)=zi,best-xi(t)
(12)
di,pro(t)=xi(t1)-xi(t2)
(13)
式中:gi,best表示第i個搜尋個體所在領(lǐng)域的群體歷史最優(yōu)位置;zi,best表示第i個搜尋個體尋經(jīng)過的最優(yōu)位置;xi(t)為個體當前位置。
通過采用三個方向的隨機加權(quán)幾何平均數(shù)為標準確定搜索方向,計算公式為
di(t)=sign(ωdi,pro+φ1di,ego+φ2di,alt)
(14)
(15)
式中:ω為慣性權(quán)值;φ1和φ2為常數(shù),它們的取值范圍為[0,1]內(nèi)均勻分布的常數(shù);t為當前迭代次數(shù),取值為[2,MaxIter]之間的整數(shù),權(quán)重最大值ωmax,權(quán)重最小值ωmin。
2.1.3 個體位置的更新
確定搜索步長和方向后,要對個體位置進行更新,位置更新公式為
Δxij(t+1)=αij(t)dij(t)
(16)
xij(t+1)=Δxij(t+1)+xij(t)
(17)
BP神經(jīng)網(wǎng)絡(luò)(back propagation neural network,BPNN)是一種采用誤差反傳算法的多層前饋網(wǎng)絡(luò)[21],標準的BP神經(jīng)網(wǎng)絡(luò)模型主要由輸入層、隱含層和輸出層組成,其網(wǎng)絡(luò)拓撲結(jié)構(gòu)如圖2所示。
X1, X2,…, Xm表示m個實際輸入;ωij表示輸入層和與隱含層之間的連接權(quán)值;Z1,Z2,…,Zl表示l個隱含層;ωjk表示隱含層和輸出層之間的連接權(quán)值;Y1, Y2,…, Yn表示n個預測輸出;T1, T2,…, Tn表示n個期望輸出
神經(jīng)網(wǎng)絡(luò)隱含層的節(jié)點個數(shù)計算公式為
(18)
式(18)中:m為輸入層節(jié)點數(shù);l為隱含層節(jié)點數(shù);n為輸出層節(jié)點數(shù);a0為0~10的常數(shù)。
隱含層和輸出層輸出分別為
(19)
(20)
式中:f(·)為激勵函數(shù);aj為初始隱含層閾值;bk為輸出層閾值。
盡管傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)具有良好的逼近非線性映射能力,但其隨機生成的初始權(quán)值和閾值難以準確獲得,在迭代后期容易陷入局部最優(yōu)點從而導致預測結(jié)果差別較大,預測效果不穩(wěn)定。為彌補BP神經(jīng)網(wǎng)絡(luò)的局限性,通過人群搜索算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),用優(yōu)化后的最優(yōu)解作為BP神經(jīng)網(wǎng)絡(luò)迭代的權(quán)值和閾值,提高預測模型的效率和準確性。SOA算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的主要步驟如下。
步驟1預處理樣本數(shù)據(jù),確定BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)并初始化BP神經(jīng)網(wǎng)絡(luò)各層連接權(quán)值和閾值。
步驟2初始化人群搜索算法的種群規(guī)模、種群個體、迭代次數(shù)、最大最小隸屬度以及權(quán)值的最大值和最小值。
步驟3用訓練后的BP神經(jīng)網(wǎng)絡(luò)得到的預測值與真實值之間的誤差作為適應度值,將樣本數(shù)據(jù)代入適應度函數(shù)中,計算全局最優(yōu)、個體最優(yōu)、個體最佳適應度和全局最佳適應度。
步驟4初始化經(jīng)驗梯度方向,確定搜索步長、搜索方向,確定搜索策略,將計算得到的步長和方向進行位置更新,更新個體和全局最優(yōu)和最佳適應度值,直到迭代滿足終止條件,輸出。
步驟5將最佳網(wǎng)絡(luò)權(quán)值和閾值賦值BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值。
步驟6BP神經(jīng)網(wǎng)絡(luò)訓練,初始化網(wǎng)絡(luò)參數(shù),調(diào)用Levenberg-Marquardt函數(shù)為訓練函數(shù),經(jīng)過訓練,將樣本數(shù)據(jù)輸入該模型進行預測,得到預測精度值,分析結(jié)果。
基于SOA-BP神經(jīng)網(wǎng)絡(luò)的選擇性激光燒結(jié)成型件精度預測算法流程如圖3所示。
圖3 SOA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法流程圖
為加快梯度下降求最優(yōu)解的速度,提高預測模型精度,在預處理樣本數(shù)據(jù)時,還要對數(shù)據(jù)進行歸一化處理[22];在預測輸出時,為了方便觀察,對歸一化的數(shù)據(jù)進行反歸一化即可。采用Min-Max方法將樣本數(shù)據(jù)歸一化為[0,1]區(qū)間的小數(shù),歸一化公式為
(21)
式(21)中:x′為歸一化后的樣本數(shù)據(jù)值;xi為第i個樣本數(shù)據(jù);xmin為樣本數(shù)據(jù)的最小值;xmax為樣本數(shù)據(jù)的最大值。
本文的BP神經(jīng)網(wǎng)絡(luò)輸入為:激光功率、預熱溫度、掃描速度、掃描間距、分層厚度五個工藝參數(shù),故輸入層節(jié)點個數(shù)為5,網(wǎng)絡(luò)輸出選擇統(tǒng)一性能Q,故輸出節(jié)點個數(shù)為1;隱含層節(jié)點個數(shù)根據(jù)式(18)計算得出為9,因此整個BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為5-9-1;初始化SOA算法最大隸屬度Umax=0.95,最小隸屬度Umin=0.011 1,權(quán)重最大值ωmax=0.9,權(quán)重最小值ωmin=0.1,種群規(guī)模N=30,最大迭代次數(shù)MaxIter=500,選用Levenberg-Marquardt函數(shù)訓練BP神經(jīng)網(wǎng)絡(luò),設(shè)定學習目標誤差為1×10-6。為了更好地展示結(jié)果,下面給出在相同實驗條件下基于SOA優(yōu)化、PSO優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)和傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)對16組統(tǒng)一性能Q的預測結(jié)果,如圖4和表3所示。
結(jié)合圖4和表3可以看出,SOA-BP神經(jīng)網(wǎng)絡(luò)的預測值和真實值之間的誤差相對傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)和PSO-BP神經(jīng)網(wǎng)絡(luò)要小,與真實值的折線圖更接近,更吻合。優(yōu)化前的BP神經(jīng)網(wǎng)絡(luò)最大絕對誤差為0.123,最小絕對誤差為0.030;PSO優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)最大絕對誤差為0.055,最小絕對誤差為0.008;SOA優(yōu)化后的神經(jīng)網(wǎng)絡(luò)最大絕對誤差為0.028,最小絕對誤差為0.003,整體上看SOA-BP神經(jīng)網(wǎng)絡(luò)預測結(jié)果與真實值更加接近,這說明基于SOA-BP算法進行選擇性激光燒結(jié)成型件精度預測的準確性更高。
表3 預測結(jié)果對比
圖4 不同預測算法的預測結(jié)果
為更直觀地評估本文構(gòu)建的精度預測模型的精確性和優(yōu)越性,選擇均方根誤差(root mean square error, RMSE)、平均絕對百分比誤差(mean absolute percentage error, MAPE)和平均絕對誤差(mean absolute error, MAE)這三種誤差指標來衡量預測值與真實值的差異。
均方根誤差指標為
(22)
平均絕對百分比誤差指標為
(23)
平均絕對誤差為
(24)
圖5 不同預測算法絕對誤差對比
表4 精度對照表
從表4可以宏觀地看出,基于SOA-BP神經(jīng)網(wǎng)絡(luò)得到的預測值與真實值之間的均方根誤差、平均絕對百分比誤差、平均絕對誤差相比于傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)分別減少了5.27%、8.51%、3.91%,相比PSO算法優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)分別減少了1.72%、1.01%、3.91%,分析得出SOA-BP神經(jīng)網(wǎng)絡(luò)預測算法可以有效預測激光燒結(jié)成型件精度,且相較于其他兩種算法具有更高的準確性。
提出了一種基于SOA-BP神經(jīng)網(wǎng)絡(luò)的SLS成型件精度方法,得到以下結(jié)論。
(1)選取激光功率、預熱溫度、掃描速度、掃描間距以及分層厚度五個工藝參數(shù)設(shè)計正交試驗獲取樣本數(shù)據(jù),建立了激光燒結(jié)成型的工藝參數(shù)與其成型件精度之間的映射關(guān)系,解決了難以用數(shù)學方法建立精確模型的問題。
(2)對比PSO-BP神經(jīng)網(wǎng)絡(luò)、傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)的預測結(jié)果,SOA-BP神經(jīng)網(wǎng)絡(luò)具有更高的預測精度。
(3)SOA-BP神經(jīng)網(wǎng)絡(luò)得到的預測值與真實值之間的均方根誤差、平均絕對百分比誤差、平均絕對誤差分別為0.60%、3.39%、1.49%,這一結(jié)果對于絕大多數(shù)預測模型來說是可以接受的,為提高SLS成型件精度具有實際的參考價值。