張 昆, 田業(yè)冰, 叢建臣,2, 劉儼后, 閆 寧, 魯 濤
(1. 山東理工大學(xué) 機(jī)械工程學(xué)院, 山東 淄博 255049)(2. 天潤(rùn)工業(yè)技術(shù)股份有限公司, 山東 威海 264400)(3. 鄭州磨料磨具磨削研究所有限公司, 鄭州 450001)
磨削是加工高精度零件的一種重要加工方法,與其他切削加工方式相比,由于磨具表面磨粒大都成高負(fù)前角的幾何形狀,磨削時(shí)切除單位體積材料所消耗的能量較多[1],而節(jié)能磨削是磨削發(fā)展的重要趨勢(shì)。
目前,多采用經(jīng)驗(yàn)公式和經(jīng)驗(yàn)?zāi)P蛠?lái)預(yù)測(cè)與優(yōu)化磨削能耗,但由于磨削加工機(jī)理較為復(fù)雜,預(yù)測(cè)結(jié)果不太理想。近年來(lái),隨著人工智能的發(fā)展,機(jī)器語(yǔ)言與優(yōu)化算法被廣泛應(yīng)用于各種機(jī)械加工的輸出預(yù)測(cè)與工藝優(yōu)化中。最常用的有人工神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、遺傳算法及粒子群算法等[2]。
詹友基等[3]以磨削超細(xì)硬質(zhì)合金為研究對(duì)象,對(duì)磨削加工時(shí)各種運(yùn)行狀態(tài)下的功率、不同磨削參數(shù)下的磨削比能及磨削有效加工能效進(jìn)行了研究;沈南燕等[4]建立了異形零件非圓磨削加工過(guò)程中的磨削力經(jīng)驗(yàn)?zāi)P?,并結(jié)合零件的受力情況,構(gòu)建了非圓磨削中工件所受扭矩以及磨削能耗的計(jì)算模型;尹暉[5]針對(duì)典型機(jī)床關(guān)鍵零部件在加工過(guò)程中產(chǎn)生的高能耗問(wèn)題,對(duì)典型機(jī)床關(guān)鍵零部件切削磨削比能、能效進(jìn)行研究,建立了能耗、切削磨削比能以及能效的理論預(yù)測(cè)模型;李聰波等[6]基于響應(yīng)面法建立了工藝參數(shù)與比能和加工時(shí)間的回歸方程,構(gòu)建了以銑削加工工藝參數(shù)為變量、以高能效和高效率為優(yōu)化目標(biāo)的多目標(biāo)優(yōu)化模型,并使用多目標(biāo)粒子群優(yōu)化算法對(duì)該模型進(jìn)行求解。
本試驗(yàn)利用三層誤差反向傳播(back propagation, BP)神經(jīng)網(wǎng)絡(luò)建立了磨削能耗預(yù)測(cè)模型,以砂輪線速度、進(jìn)給速度和磨削深度為輸入?yún)?shù),能耗為輸出參數(shù),并采用動(dòng)態(tài)慣性權(quán)重改性粒子群算法(APSO算法)對(duì)該模型進(jìn)行迭代尋優(yōu)獲取最優(yōu)工藝參數(shù)。
試驗(yàn)平臺(tái)主要由Smart-B818Ⅲ型智能數(shù)控磨床、數(shù)據(jù)采集系統(tǒng)(功率傳感器、數(shù)據(jù)采集卡NI 9203及其機(jī)箱N(xiāo)I cDAQ 9174)和計(jì)算機(jī)等組成,如圖1所示。
圖1 試驗(yàn)平臺(tái)Fig. 1 Experimental platform
Smart-B818Ⅲ型智能數(shù)控工作臺(tái)面積200 mm×460 mm,最大磨削長(zhǎng)度460 mm,最大磨削寬度200 mm,主軸轉(zhuǎn)速1 000~7 000 r/min。磨削試驗(yàn)材料為50 mm×50 mm×25 mm的45號(hào)鋼。所使用的砂輪為陶瓷結(jié)合劑白剛玉平型砂輪,尺寸為200.00 mm×10.00 mm×31.75 mm,砂輪磨?;境叽鐬?80 μm。
通過(guò)采集機(jī)床的主軸功率信號(hào),利用基于LabVIEW開(kāi)發(fā)的軟件系統(tǒng)對(duì)該信號(hào)進(jìn)行數(shù)據(jù)處理并轉(zhuǎn)換成磨削能耗[7]。
圖2為功率采集原理示意圖。磨削加工時(shí),磨削系統(tǒng)產(chǎn)生的功率信號(hào)由傳感器接收、處理、轉(zhuǎn)換成電流信號(hào)輸出,采集系統(tǒng)接收該電流信號(hào)并轉(zhuǎn)換成計(jì)算機(jī)能夠識(shí)別的數(shù)字信號(hào)傳遞給計(jì)算機(jī)分析軟件。
圖 2 功率采集原理示意圖Fig. 2 Schematic diagram of power acquisition principle
數(shù)據(jù)采集模塊可實(shí)現(xiàn)對(duì)磨削加工過(guò)程機(jī)床功率的實(shí)時(shí)采集,采樣頻率設(shè)定為1 000 Hz,采樣周期為1次磨削加工過(guò)程。通過(guò)能耗計(jì)算與監(jiān)控模塊實(shí)現(xiàn)能耗的計(jì)算,對(duì)功率進(jìn)行時(shí)間域內(nèi)的積分,得到該加工行程的能耗數(shù)值并存儲(chǔ)在軟件模塊面板表格中,作為下一步能耗分析的數(shù)據(jù)樣本。
砂輪線速度vs、進(jìn)給速度vw、磨削深度ap是影響磨削能耗的重要因素。選取vs、vw、ap為工藝參數(shù)條件進(jìn)行全因子試驗(yàn)。設(shè)計(jì)125組的試驗(yàn)方案,vs取值分別為1 000、1 200、1 400、1 600和1 800 m/min,vw取值分別為1 000、2 000、3 000、4 000和5 000 mm/min,ap取值分別為2、7、12、17和22 μm。
隨機(jī)選取75組數(shù)據(jù)作為BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的樣本數(shù)據(jù),其中65組數(shù)據(jù)作為訓(xùn)練樣本數(shù)據(jù),10組數(shù)據(jù)作為測(cè)試樣本數(shù)據(jù)。表1為部分試驗(yàn)數(shù)據(jù)。
表 1 部分試驗(yàn)樣本原始數(shù)據(jù)
BP神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),優(yōu)點(diǎn)是具有很強(qiáng)的非線性映射能力和柔性的網(wǎng)絡(luò)結(jié)構(gòu),是應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)[8]。
利用BP神經(jīng)網(wǎng)絡(luò)構(gòu)建磨削能耗預(yù)測(cè)模型,借助75組試驗(yàn)數(shù)據(jù)進(jìn)行試驗(yàn)驗(yàn)證。網(wǎng)絡(luò)的輸入層參數(shù)用向量表示為:
X=(x1,x2,x3)
(1)
在式(1)中,x1、x2、x3對(duì)應(yīng)3個(gè)對(duì)磨削能耗產(chǎn)生明顯影響的因素,分別是vs、vw、ap。輸出層設(shè)置1個(gè)神經(jīng)元,對(duì)應(yīng)工件磨削能耗。隱藏層采用10個(gè)神經(jīng)元。網(wǎng)絡(luò)訓(xùn)練中的梯度消失問(wèn)題在使用tanh、sigmod等飽和激活函數(shù)情況下特別嚴(yán)重,使得訓(xùn)練網(wǎng)絡(luò)收斂越來(lái)越慢,而ReLU函數(shù)憑借其線性、非飽和的形式,克服了梯度消失的問(wèn)題,訓(xùn)練速度則快很多[9],因此各神經(jīng)元選擇ReLU型函數(shù)作為傳遞函數(shù),函數(shù)公式為:
f(x)=max(0,x)
(2)
建立的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
圖 3 預(yù)測(cè)磨削能耗的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig. 3 Neural network structure for predicting grinding energy consumption
BP神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練包括正向傳播和反向傳播2個(gè)過(guò)程,算法步驟簡(jiǎn)述如下:
(1)給出訓(xùn)練誤差允許值ε,學(xué)習(xí)率l以及訓(xùn)練次數(shù)n1。初始化權(quán)值矩陣W為隨機(jī)非零值,初始化節(jié)點(diǎn)閾值b,給定N個(gè)樣本作為網(wǎng)絡(luò)訓(xùn)練的輸入和輸出;
(2)計(jì)算隱藏層輸入、輸出以及輸出層輸入、輸出;
(3)用梯度下降法計(jì)算輸出層與隱藏層的誤差函數(shù)Ye、He以及Δw;
(4)更新各節(jié)點(diǎn)的權(quán)值與閾值;
(5)若Ye<ε或訓(xùn)練次數(shù)≥n,則轉(zhuǎn)(6);否則,轉(zhuǎn)(2);
(6)迭代結(jié)束。
設(shè)置訓(xùn)練次數(shù)為1 000,目標(biāo)允許誤差為0.001,學(xué)習(xí)率為0.012,其他參數(shù)采用默認(rèn)值。選取如表1中的65組試驗(yàn)值作為訓(xùn)練樣本,當(dāng)訓(xùn)練結(jié)果滿足目標(biāo)精度或達(dá)到最大迭代次數(shù)時(shí)停止訓(xùn)練,利用10組測(cè)試樣本數(shù)據(jù)對(duì)模型進(jìn)行測(cè)試。
磨削能耗的實(shí)測(cè)值Et與預(yù)測(cè)值Ep如表2所示,除一組特殊數(shù)據(jù)外,該網(wǎng)絡(luò)的相對(duì)誤差都在7%以下。預(yù)測(cè)值與實(shí)測(cè)值的散點(diǎn)圖如圖4所示。輸出誤差曲線如圖5所示,迭代100次后誤差降至0.002 76,此后誤差值趨于穩(wěn)定,迭代500次到1 000次誤差基本保持不變,其值為0.002 38,表明所建立的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型是準(zhǔn)確可靠的,可用于進(jìn)一步的生產(chǎn)實(shí)踐。
表 2 能耗預(yù)測(cè)值與實(shí)測(cè)值相對(duì)誤差
圖 4 預(yù)測(cè)值與實(shí)測(cè)值散點(diǎn)圖Fig. 4 Scatter diagram of predicted value and measured value
粒子群優(yōu)化算法源于對(duì)鳥(niǎo)群捕食行為的研究,其具有參數(shù)較少、易于實(shí)現(xiàn)、無(wú)需梯度信息等特點(diǎn),被廣泛應(yīng)用于求解多目標(biāo)優(yōu)化問(wèn)題[10]。
圖 5 預(yù)測(cè)誤差曲線圖Fig. 5 Curve graph of prediction error
3.1.1 粒子群算法
粒子群算法通過(guò)定義空間里的n2個(gè)粒子的位置去表征潛在的最優(yōu)解,用位置、速度和適應(yīng)度值代表粒子的特征,通過(guò)每個(gè)粒子向自己和粒子群的學(xué)習(xí)來(lái)更新粒子的速度和位置,從而逐漸逼近目標(biāo)函數(shù)的最優(yōu)解[11]。算法步驟簡(jiǎn)述如下:
(1)給出粒子數(shù)量m、迭代次數(shù)n3以及學(xué)習(xí)因子c1、c2。初始化粒子的速度vi和位置pi;
(2)計(jì)算每個(gè)粒子的適應(yīng)值fi;
(3)根據(jù)適應(yīng)值更新個(gè)體極值和全局極值,更新粒子的速度和位置;
(4)如果全局最優(yōu)位置滿足最小界限或迭代次數(shù)大于或等于n3,則轉(zhuǎn)(5);否則,轉(zhuǎn)(2);
(5)迭代結(jié)束。
更新公式為:
vi(t+1)=vit+c1r1(pi-xit)+c2r2(pg-xit)
(3)
xi(t+1)=xit+vi(t+1)
(4)
在式(3)、式(4)中:vit、xit分別為第i個(gè)粒子當(dāng)前速度和位置,pi、pg分別為個(gè)體極值和全局極值,c1、c2為學(xué)習(xí)因子,r1、r2為[0,1]之間的隨機(jī)數(shù)。
3.1.2 慣性權(quán)重的動(dòng)態(tài)自適應(yīng)策略
粒子群算法在求解優(yōu)化函數(shù)時(shí),具有較好的尋優(yōu)能力,通過(guò)迭代尋優(yōu)計(jì)算,能夠迅速找到近似解,但基本的PSO算法容易陷入局部最優(yōu),導(dǎo)致結(jié)果誤差較大。
PSO算法的搜索性能取決于其全局搜索與局部改良能力的平衡,引入動(dòng)態(tài)慣性權(quán)重w,在搜索初期w取一個(gè)較大值,微粒將會(huì)以較長(zhǎng)的步長(zhǎng)進(jìn)行全局搜索。隨著迭代次數(shù)的不斷增加,逐漸降低w的值,趨向于精細(xì)的局部搜索,從而達(dá)到全局最優(yōu)解。本試驗(yàn)的慣性權(quán)重選擇如下:
(5)
其中,f表示粒子當(dāng)前的目標(biāo)函數(shù)值。
基于上述策略設(shè)計(jì)APSO算法,如圖6所示。
圖6 APSO算法流程圖Fig. 6 Flow chart of APSO algorithm
以磨削能耗最小為粒子群算法的優(yōu)化目標(biāo),對(duì)砂輪vs、vw、ap等3個(gè)參數(shù)進(jìn)行優(yōu)化,目標(biāo)函數(shù)為:
(6)
為驗(yàn)證APSO算法的有效性,采用標(biāo)準(zhǔn)粒子群算法(standard particle swarm optimization, SPSO)與APSO算法進(jìn)行對(duì)比。SPSO算法的參數(shù)設(shè)置如下:種群粒子數(shù)取n2=100,c1=c2=2,迭代次數(shù)為100;APSO算法初始慣性權(quán)重取w=0.6,其余參數(shù)與SPSO算法一致,得到的結(jié)果如圖7所示。
SPSO算法迭代30次左右最優(yōu)個(gè)體適應(yīng)值變化趨于穩(wěn)定,全局最優(yōu)適應(yīng)值約為393.25 J;采用APSO算法迭代20次左右磨削能耗已經(jīng)達(dá)到最小值,為300.89 J,達(dá)到全局最優(yōu)的速度優(yōu)于SPSO算法的。
圖 7 SPSO與APSO算法適應(yīng)值變化情況Fig. 7 Adaptive value tendency of SPSO and APSO algorithms
分別通過(guò)SPSO算法和APSO算法對(duì)磨削能耗進(jìn)行參數(shù)尋優(yōu),結(jié)果如表3所示。
表 3 能耗預(yù)測(cè)值與實(shí)測(cè)值相對(duì)誤差
對(duì)比表3可以看出:利用APSO算法進(jìn)行參數(shù)尋優(yōu)所得能耗值均優(yōu)于SPSO算法的,表明APSO算法用于磨削能耗的工藝參數(shù)優(yōu)化效果較好。
(1)建立了磨削能耗BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,運(yùn)用75組試驗(yàn)數(shù)據(jù)對(duì)其訓(xùn)練、測(cè)試,預(yù)測(cè)結(jié)果精度較為準(zhǔn)確。
(2)采用慣性權(quán)重的動(dòng)態(tài)自適應(yīng)策略對(duì)PSO算法進(jìn)行改進(jìn),提高了其搜索精度和搜索速度。
(3)構(gòu)建APSO算法預(yù)測(cè)結(jié)果較為準(zhǔn)確,采用優(yōu)化后的工藝參數(shù)能夠有效地降低磨削能耗。