肖亞寧,郭艷玲,張亞鵬,王揚威,李 健
(東北林業大學機電工程學院,哈爾濱 150040)
選擇性激光燒結是一種基于實體三維模型,然后利用高能量激光束逐層燒結堆積成型的快速成型技術之一[1]。相比傳統的加工制造技術,其使用的成型材料豐富,節約資源且生產周期短,在各行業領域都有著巨大的應用前景[2-3],然而激光燒結是一種復雜的熱物理化學過程,受多種因素影響,成型件精度往往難以得到有效的控制,成為限制該技術在工業上普遍應用和進一步實際發展的重要原因,因此提高選擇性激光燒結(selective laser sintering, SLS)成型件精度具有重要意義[4-5]。
目前,實際生產多采用試測法制定不同工藝參數組合[6],然后根據成型效果尋找最優參數組合指導加工,這種方法往往需要花費大量的時間和成本,而且很難獲得理想的關系模型[7]。隨著機器學習和人工智能等科學的不斷發展,為進一步提高激光燒結成型精度,越來越多的中外學者也嘗試采用各種優化算法來建立工藝參數和尺寸精度間的映射關系。劉碩等[8]針對解決激光燒結增材制造過程中出現的幾何尺寸誤差問題,依據廣義回歸神經網絡,建立了SLS工藝參數與收縮率間的定量模型,為實際加工中優化控制收縮提供參考;王丹妮等[9]應用粒子群算法和BP(back propagation)神經網絡2種算法建立工藝參數與燒結件質量間的預測模型,同時分析了各因素間的相互關聯,以此來選擇相應加工參數;胡華清等[10]在大量實驗基礎上,利用遺傳算法優化支持向量機確定了一定參數范圍下的工藝參數組合方案,定性分析了各參數對于制件精度的本質影響;Sharma[11]提出利用人工神經網絡建立掃描速度、掃描間距、預熱溫度與燒結精度之間的定量模型。
盡管上述算法在具體應用中均取得一定的效果,但由于算法本身存在收斂速度慢、搜索能力差。易陷入局部最優等缺陷,所以預測效果仍不盡人意。人群搜索算法是由Dai等[12]提出的一種新型元啟發式算法,研究表明:人群搜索算法(seeker optimizaiton algorithm, SOA)相較于傳統群智能優化算法具有更快的收斂速度和尋優精度[13]。結合SLS的工藝特點,選取激光功率、預熱溫度、掃描速度、掃描間距以及分層厚度五個工藝參數設計正交試驗,提出了一種利用SOA算法優化BP神經網絡初始權值和閾值的策略,對SLS成型件精度和工藝參數模型進行預測分析。最后將預測結果同PSO-BP以及傳統BP神經網絡預測結果進行對比,表明該方法具有良好的預測精度和更高的穩定性,可為實際生產提供科學指導。
SLS加工工藝參數與成型件間的精度具有非常復雜的非線性關系,影響成型結果的工藝參數主要包括激光功率、預熱溫度、掃描速度、掃描間距和分層厚度[14]。
1.1.1 激光功率
激光功率決定著單位時間粉末吸收的能量,激光能量密度是熔化粉末材料的主要能量輸入來源,較高的激光能量會引起材料粉末瞬間熔化深度大于分層厚度,形成材料“過燒”[15];反之,過低的激光能量會使粉末不能充分熔化,單層粉末難以粘結在一起。
1.1.2 預熱溫度
在正式加工前,材料粉末都要提前預熱,預熱能減少能量的消耗,縮短加工時間。若沒有預熱,將會使得零件成型時間增加,甚至無法燒結;當預熱溫度低于理想溫度,零件因溫差過大可能會出現嚴重的翹曲變形或錯層現象;當預熱溫度過高,粉末會被直接燒結成型,不利于后期處理。
1.1.3 掃描速度
掃描速度即激光束掃描制件截面內部的速度,隨著掃描速度的增大,材料難以充分熔融,反之隨著掃描速度變慢,激光束產生的能量能熔化粉層內大部分粉末,制件致密度變高。
1.1.4 掃描間距
掃描間距決定了加工過程中熱量分布狀態以及相鄰區域內材料的熔化程度。掃描間距小,則熱應力大,從而使燒結效率變低;間距過大,則分辨率變低,成型精度低。
1.1.5 分層厚度
分層厚度即模型切片處理時的切片厚度,通常也被設置為鋪粉厚度。分層厚度過小,掃描時間越長,效率越低,增加材料損耗,若分層厚度過大,則會產生“臺階現象”[16]。
實驗設備為自主設計研發的CX-B200小型工業級激光燒結成型機,其主要技術參數如下:激光功率40 W,成型尺寸200 mm×200 mm×200 mm,分層厚度0.08~0.4 mm,最大掃描速度為2 000 mm/s,輸入文件格式為Gcode。
本文中設計并采用直徑25 mm、高度10 mm的圓柱體制件作為實驗樣件,實驗材料為竹粉/共聚酰胺復合粉末[17],同時選取激光功率P、預熱溫度T、掃描速度V、掃描間距L和分層厚度D作為正交試驗的因子,設計了L16正交表,根據前期研究選取激光功率為10~25 W,預熱溫度為75~90 °C,掃描速度為1.0~2.5 m/s,掃描間距為0.10~0.25 mm,分層厚度為0.10~0.25 mm,每個因子的具體水平如表1所示。

表1 正交試驗因素水平
為了保證實驗的準確性,本文中每組實驗設計5個樣件,分別采用游標卡尺和圓柱度測量儀測量5個樣本的圓柱度誤差Δε和高度誤差ΔH并求取平均值作為每組實驗結果,實驗現場如圖1所示。按正交表進行了16組實驗,最終的實驗樣本數據如表2所示。

圖1 實驗樣件模型

表2 實驗樣本數據
SLS工藝參數組合的選取是一個多目標優化問題。在多目標優化技術中,一般很難使其分目標同時達到最優[18],本文利用線性加權組合法將其轉化為統一目標函數,消除量綱并確定各項加權因子。
假設已知各項目標函數值的區間范圍為
mj≤Yi≤nj,j=1,2,3,…
(1)
則
(2)
式(2)中:ΔYj為各目標函數容限,將加權因子取為
(3)
針對激光燒結工藝參數的優化問題,將實驗樣本數據中的圓柱度誤差Δε和高度誤差ΔH作為各項目標函數進行轉化,得到成型件統一性能Q的目標函數為
Q=0.347Δε+0.220ΔH
(4)
式(4)中:轉化后的統一性能Q作為成型件尺寸精度的評價指標,其函數值越小則成型精度越高。將上文實驗數據代入式(4)中可以計算出目標函數值,見表2。
人群搜索算法是一種基于種群的新型啟發式隨機搜索算法,在該算法中,通過評估對應位置變化的響應,根據經驗梯度來選擇搜索方向,并基于模糊規則的不確定性推理來決定步長[19-20]。人群搜索算法具有概念明確、易于理解、收斂速度快和精度高等特點,其計算步驟如下。
2.1.1 搜索步長的確定
SOA算法在確定步長時先將個體最佳適度值按遞減的順序排列,并將個體賦予從1到N的順序編號作為模糊推理的輸入,采用高斯隸屬函數表示搜索步長的模糊變量,即
(5)
式(5)中:uA為高斯隸屬度;x為輸入變量;u、δ均為隸屬函數參數。
其他位置隸屬度可表示為
(6)
uij=rand(ui,1)
(7)
式中:ui為第i個個體對應的隸屬度;I(i)表示第i個個體最佳適應度值按降序排列后的順序編號;N為種群規模;Umax為最大隸屬度,Umin為最小隸屬度;uij為j維搜索空間的目標函數值i對應的隸屬度;函數rand(ui,1)產生均勻隨機分布在[ui,1]上的實數。
搜索步長公式為
(8)
式(8)中:aij為j維搜索空間的搜索步長;δij為高斯隸屬函數的參數,計算公式為
δij=ω(t)|zbest-10rand(1,3)|
(9)
(10)
式中:zbest表示全局最優;rand(1,3)表示產生均勻隨機分布在[1,3]上的實數;ω(t)為第t次迭代的權重函數值,隨迭代次數的增加從0.9線性遞減至0.1,t為當前迭代次數;MaxIter為最大迭代次數。
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個搜尋個體所在領域的群體歷史最優位置;zi,best表示第i個搜尋個體尋經過的最優位置;xi(t)為個體當前位置。
通過采用三個方向的隨機加權幾何平均數為標準確定搜索方向,計算公式為
di(t)=sign(ωdi,pro+φ1di,ego+φ2di,alt)
(14)
(15)
式中:ω為慣性權值;φ1和φ2為常數,它們的取值范圍為[0,1]內均勻分布的常數;t為當前迭代次數,取值為[2,MaxIter]之間的整數,權重最大值ωmax,權重最小值ωmin。
2.1.3 個體位置的更新
確定搜索步長和方向后,要對個體位置進行更新,位置更新公式為
Δxij(t+1)=αij(t)dij(t)
(16)
xij(t+1)=Δxij(t+1)+xij(t)
(17)
BP神經網絡(back propagation neural network,BPNN)是一種采用誤差反傳算法的多層前饋網絡[21],標準的BP神經網絡模型主要由輸入層、隱含層和輸出層組成,其網絡拓撲結構如圖2所示。

X1, X2,…, Xm表示m個實際輸入;ωij表示輸入層和與隱含層之間的連接權值;Z1,Z2,…,Zl表示l個隱含層;ωjk表示隱含層和輸出層之間的連接權值;Y1, Y2,…, Yn表示n個預測輸出;T1, T2,…, Tn表示n個期望輸出
神經網絡隱含層的節點個數計算公式為
(18)
式(18)中:m為輸入層節點數;l為隱含層節點數;n為輸出層節點數;a0為0~10的常數。
隱含層和輸出層輸出分別為
(19)
(20)
式中:f(·)為激勵函數;aj為初始隱含層閾值;bk為輸出層閾值。
盡管傳統BP神經網絡具有良好的逼近非線性映射能力,但其隨機生成的初始權值和閾值難以準確獲得,在迭代后期容易陷入局部最優點從而導致預測結果差別較大,預測效果不穩定。為彌補BP神經網絡的局限性,通過人群搜索算法優化BP神經網絡,用優化后的最優解作為BP神經網絡迭代的權值和閾值,提高預測模型的效率和準確性。SOA算法優化BP神經網絡的主要步驟如下。
步驟1預處理樣本數據,確定BP神經網絡結構并初始化BP神經網絡各層連接權值和閾值。
步驟2初始化人群搜索算法的種群規模、種群個體、迭代次數、最大最小隸屬度以及權值的最大值和最小值。
步驟3用訓練后的BP神經網絡得到的預測值與真實值之間的誤差作為適應度值,將樣本數據代入適應度函數中,計算全局最優、個體最優、個體最佳適應度和全局最佳適應度。
步驟4初始化經驗梯度方向,確定搜索步長、搜索方向,確定搜索策略,將計算得到的步長和方向進行位置更新,更新個體和全局最優和最佳適應度值,直到迭代滿足終止條件,輸出。
步驟5將最佳網絡權值和閾值賦值BP神經網絡初始權值和閾值。
步驟6BP神經網絡訓練,初始化網絡參數,調用Levenberg-Marquardt函數為訓練函數,經過訓練,將樣本數據輸入該模型進行預測,得到預測精度值,分析結果。
基于SOA-BP神經網絡的選擇性激光燒結成型件精度預測算法流程如圖3所示。

圖3 SOA優化BP神經網絡算法流程圖
為加快梯度下降求最優解的速度,提高預測模型精度,在預處理樣本數據時,還要對數據進行歸一化處理[22];在預測輸出時,為了方便觀察,對歸一化的數據進行反歸一化即可。采用Min-Max方法將樣本數據歸一化為[0,1]區間的小數,歸一化公式為
(21)
式(21)中:x′為歸一化后的樣本數據值;xi為第i個樣本數據;xmin為樣本數據的最小值;xmax為樣本數據的最大值。
本文的BP神經網絡輸入為:激光功率、預熱溫度、掃描速度、掃描間距、分層厚度五個工藝參數,故輸入層節點個數為5,網絡輸出選擇統一性能Q,故輸出節點個數為1;隱含層節點個數根據式(18)計算得出為9,因此整個BP神經網絡結構為5-9-1;初始化SOA算法最大隸屬度Umax=0.95,最小隸屬度Umin=0.011 1,權重最大值ωmax=0.9,權重最小值ωmin=0.1,種群規模N=30,最大迭代次數MaxIter=500,選用Levenberg-Marquardt函數訓練BP神經網絡,設定學習目標誤差為1×10-6。為了更好地展示結果,下面給出在相同實驗條件下基于SOA優化、PSO優化的BP神經網絡和傳統BP神經網絡對16組統一性能Q的預測結果,如圖4和表3所示。
結合圖4和表3可以看出,SOA-BP神經網絡的預測值和真實值之間的誤差相對傳統BP神經網絡和PSO-BP神經網絡要小,與真實值的折線圖更接近,更吻合。優化前的BP神經網絡最大絕對誤差為0.123,最小絕對誤差為0.030;PSO優化后的BP神經網絡最大絕對誤差為0.055,最小絕對誤差為0.008;SOA優化后的神經網絡最大絕對誤差為0.028,最小絕對誤差為0.003,整體上看SOA-BP神經網絡預測結果與真實值更加接近,這說明基于SOA-BP算法進行選擇性激光燒結成型件精度預測的準確性更高。

表3 預測結果對比

圖4 不同預測算法的預測結果
為更直觀地評估本文構建的精度預測模型的精確性和優越性,選擇均方根誤差(root mean square error, RMSE)、平均絕對百分比誤差(mean absolute percentage error, MAPE)和平均絕對誤差(mean absolute error, MAE)這三種誤差指標來衡量預測值與真實值的差異。
均方根誤差指標為
(22)
平均絕對百分比誤差指標為
(23)
平均絕對誤差為
(24)


圖5 不同預測算法絕對誤差對比

表4 精度對照表
從表4可以宏觀地看出,基于SOA-BP神經網絡得到的預測值與真實值之間的均方根誤差、平均絕對百分比誤差、平均絕對誤差相比于傳統BP神經網絡分別減少了5.27%、8.51%、3.91%,相比PSO算法優化后的BP神經網絡分別減少了1.72%、1.01%、3.91%,分析得出SOA-BP神經網絡預測算法可以有效預測激光燒結成型件精度,且相較于其他兩種算法具有更高的準確性。
提出了一種基于SOA-BP神經網絡的SLS成型件精度方法,得到以下結論。
(1)選取激光功率、預熱溫度、掃描速度、掃描間距以及分層厚度五個工藝參數設計正交試驗獲取樣本數據,建立了激光燒結成型的工藝參數與其成型件精度之間的映射關系,解決了難以用數學方法建立精確模型的問題。
(2)對比PSO-BP神經網絡、傳統BP神經網絡的預測結果,SOA-BP神經網絡具有更高的預測精度。
(3)SOA-BP神經網絡得到的預測值與真實值之間的均方根誤差、平均絕對百分比誤差、平均絕對誤差分別為0.60%、3.39%、1.49%,這一結果對于絕大多數預測模型來說是可以接受的,為提高SLS成型件精度具有實際的參考價值。