楊曉剛,姚 艷
(陜西國防工業(yè)職業(yè)技術(shù)學(xué)院智能制造學(xué)院,陜西 西安 710300)
眾所周知,數(shù)控加工銑削參數(shù)的優(yōu)化選取是一個時變的、非線性的復(fù)雜工程問題[1-2],而解決此問題最有效的方法就是運用人工神經(jīng)網(wǎng)絡(luò)建立模型[3]。在非線性動態(tài)系統(tǒng)辨識中最常用的有反向傳播(back propagation,BP)神經(jīng)網(wǎng)絡(luò)和徑向基函數(shù)(radial basis function,RBF)神經(jīng)網(wǎng)絡(luò)[4]。從算法可塑性方面來看,盡管BP算法收斂速度較慢,但其可通過改進來提高,總體優(yōu)越性還是顯而易見的,因此本文選用BP神經(jīng)網(wǎng)絡(luò)來實現(xiàn)數(shù)控加工銑削參數(shù)的優(yōu)化選取。
樣本數(shù)據(jù)是否合理,關(guān)系到BP神經(jīng)網(wǎng)絡(luò)模型的收斂速度和預(yù)測精度能否得到保障[5]。本文以多目標優(yōu)化為原則來完成樣本數(shù)據(jù)的選取,即以中間公差、表面粗糙度和加工效率3個目標以不同的權(quán)重比例來共同優(yōu)化選取[6]。最終所選樣本數(shù)據(jù)見表1。
表1 樣本數(shù)據(jù)選取表
驗證數(shù)據(jù)取樣本總數(shù)20%較合適,本文所選驗證數(shù)據(jù)由訓(xùn)練樣本數(shù)據(jù)(小于總樣本數(shù)據(jù)5%)、試驗數(shù)據(jù)(小于總樣本數(shù)據(jù)15%)與現(xiàn)場加工數(shù)據(jù)(小于總樣本數(shù)據(jù)5%)組成。最終確定如表2所示的30條驗證數(shù)據(jù)。
表2 驗證數(shù)據(jù)選取表修改
輸出層由主軸轉(zhuǎn)速n、進給速度vf和加工時間T3 個神經(jīng)元構(gòu)成。輸入層由基本尺寸、表面粗糙度、切削深度、切削寬度、刀具類型、刀具孔徑比、刀具直徑、尺寸精度等9個神經(jīng)元構(gòu)成[7]。隱含層數(shù)量通過實際運行調(diào)整來確定[8],通過大量試驗可知,預(yù)測誤差最小時神經(jīng)元個數(shù)是36,因此最終確定神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為9-36-3,如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖
本文用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱newff函數(shù)創(chuàng)建一個以1×10-4為收斂精度的單隱層BP神經(jīng)網(wǎng)絡(luò)[9]。
net = newff (PR,[S1,…, Sn],{TF1,…, TFn},BTF,BLF,PF)
其中PR確定R個輸入量的最大、最小值;[S1,…,Sn]確定每層神經(jīng)元數(shù)量,本文取Sn=3;{TF1,…,TFn}確定每層所用轉(zhuǎn)移函數(shù)名,分別取tansig、purelin;BTF確定訓(xùn)練函數(shù)名,取traindgx、mse表征;其余參數(shù)根據(jù)實際情況選取。
本文通過歸一化處理樣本數(shù)據(jù)來提高BP神經(jīng)網(wǎng)絡(luò)模型的泛化能力[10],所采取的歸一化方法要求對每列樣本數(shù)據(jù)都要進行處理,從而保證每列樣本數(shù)據(jù)都能均勻分布在-1~1。通過對歸一化方法的研究與分析,采用人工神經(jīng)網(wǎng)絡(luò)樣本數(shù)據(jù)歸一化方法。本文BP神經(jīng)網(wǎng)絡(luò)模型各樣本數(shù)據(jù)歸一化處理方法見表3。
表3 樣本數(shù)據(jù)歸一化方式統(tǒng)計
在完成樣本數(shù)據(jù)歸一化處理和網(wǎng)絡(luò)程序設(shè)計后,就可以大量訓(xùn)練網(wǎng)絡(luò)模型[11-12]:設(shè)置BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值的初始值,訓(xùn)練BP神經(jīng)網(wǎng)絡(luò),通過不斷調(diào)整權(quán)值、閾值,減少net.performFcn值,直到所訓(xùn)練網(wǎng)絡(luò)的誤差平方和小于誤差目標1×10-4。最終BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差曲線如圖2所示。
圖2 誤差曲線圖
BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練完成后,使用sim函數(shù)檢驗網(wǎng)絡(luò)性能,使用postreg函數(shù)分析訓(xùn)練結(jié)果,測試程序如下:
a=sim(net,p);[m,b,r]=postreg(a,t)
如圖3神經(jīng)網(wǎng)絡(luò)性能測試圖所示,postreg函數(shù)返回了3個值(m=0.999 9,b=-1.495 7E-005,r=1.000 0)。圖中“○”表示輸出數(shù)據(jù),實線表示理想回歸直線,虛線表示最優(yōu)回歸直線。從圖3可以看出,此訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)擁有良好性能。
圖3 性能測試圖
將驗證數(shù)據(jù)輸入到已訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)中進行輸出驗證,如圖4所示。由圖可以看出,除了少數(shù)預(yù)測數(shù)據(jù)與驗證樣本數(shù)據(jù)不符外,絕大部分預(yù)測數(shù)據(jù)與驗證樣本數(shù)據(jù)是吻合的,已基本實現(xiàn)銑削參數(shù)的優(yōu)選。
圖4 樣本與預(yù)測數(shù)據(jù)對比圖
BP神經(jīng)網(wǎng)絡(luò)預(yù)測精度采用預(yù)測相對誤差來表示。預(yù)測與試驗誤差對照見表4。
表4 預(yù)測與試驗誤差對照表
通過表4中的對比分析,可以看出達到了對參數(shù)優(yōu)選的預(yù)測效果。
本文利用上述BP神經(jīng)網(wǎng)絡(luò)數(shù)控銑削參數(shù)優(yōu)選模型的研究成果,結(jié)合企業(yè)實際需求,采用JSP技術(shù)和B/S模式,開發(fā)基于Web的數(shù)控加工銑削參數(shù)優(yōu)選模型,實現(xiàn)企業(yè)數(shù)控加工銑削參數(shù)網(wǎng)絡(luò)化優(yōu)選查詢。圖5是部分信息查詢界面,圖6,7是部分數(shù)控銑削參數(shù)優(yōu)選管理界面。
圖5 工件信息選取查詢界面
圖6 參數(shù)優(yōu)選界面(一)
圖7 參數(shù)優(yōu)選界面(二)
本文對數(shù)控加工銑削參數(shù)優(yōu)選問題進行了深入研究,利用人工神經(jīng)網(wǎng)絡(luò)技術(shù)和計算機網(wǎng)絡(luò)技術(shù)相結(jié)合的方法開發(fā)了基于Web的數(shù)控加工銑削參數(shù)優(yōu)選模型。實踐證明它實現(xiàn)了企業(yè)數(shù)控加工銑削參數(shù)網(wǎng)絡(luò)化優(yōu)選查詢,大大提高了數(shù)控加工效率、產(chǎn)品加工質(zhì)量和企業(yè)經(jīng)濟效益。由于時間比較倉促,整體研究工作還有不足的地方,后面可以嘗試采用全局最優(yōu)算法、遺傳算法來優(yōu)化BP網(wǎng)絡(luò)模型的權(quán)值和閾值,使其收斂速度更快、擬合與預(yù)測精度更高。