賈偉,趙雪芬
(寧夏大學(xué)新華學(xué)院,銀川 750021)
數(shù)控技術(shù)是利用計(jì)算機(jī)對(duì)機(jī)械運(yùn)動(dòng)及加工過程進(jìn)行控制的一種技術(shù)。隨著數(shù)控技術(shù)的發(fā)展,其在機(jī)械加工中發(fā)揮著越來越重要的作用。數(shù)控加工是一種在數(shù)控機(jī)床上加工零件的工藝方法,能夠?qū)崿F(xiàn)零件的高效化和自動(dòng)化加工。在數(shù)控加工過程中,選擇合理的切削工藝參數(shù)不但能夠提高加工效率和質(zhì)量,而且可以降低生產(chǎn)成本。因此,切削工藝參數(shù)的選擇問題成為數(shù)控加工中的重點(diǎn)研究問題。
近年來,隨著智能優(yōu)化算法技術(shù)的快速發(fā)展,智能優(yōu)化算法被應(yīng)用到智能化選擇切削工藝參數(shù)的研究中,并在切削工藝參數(shù)的選擇中發(fā)揮著重要作用。與其他智能優(yōu)化算法相比,量子粒子群優(yōu)化(Quantumbehaved Particle Swarm Optimization,QPSO)算法具有收斂速度快和參數(shù)設(shè)置較少的優(yōu)點(diǎn),使得QPSO算法[1]在切削工藝參數(shù)的優(yōu)化中取得了較好的優(yōu)化效果[2]。QP?SO算法是根據(jù)量子力學(xué)理論提出的一種具有量子行為的粒子群優(yōu)化算法。雖然QPSO算法改進(jìn)了粒子群算法的全局尋優(yōu)能力,但是它存在易早熟收斂和局部尋優(yōu)能力較差的問題,為解決該問題,一些學(xué)者提出了改進(jìn)的QPSO算法,例如,Jamalipour等人[3]提出了基于差分進(jìn)化的QPS算法ODMQPSO,該算法通過差分進(jìn)化的方式擴(kuò)大搜索范圍。Sun等[4]提出基于高斯分布的QPSO算法GQPSO,該算法通過高斯分布決定局部吸引子的值,以此增強(qiáng)尋優(yōu)能力。但是這些基于單種群的QPSO算法在種群過大或過小時(shí),會(huì)出現(xiàn)計(jì)算量大或多樣性降低的問題。為解決現(xiàn)有QPSO算法存在的問題和得到更好的切削工藝參數(shù),本文提出一種改進(jìn)的QPSO算法IQPSO,該算法采用雙層多種群尋優(yōu)策略提高整個(gè)種群的全局尋優(yōu)能力,并將差分進(jìn)化算法[5]和混沌反向?qū)W習(xí)[6]應(yīng)用于頂層和底層各種群的尋優(yōu)中,從而提高各種群的尋優(yōu)能力。
本文以在數(shù)控加工過程中的最大生產(chǎn)率和最低生產(chǎn)成本作為優(yōu)化目標(biāo),在以最大生產(chǎn)率和最低生產(chǎn)成本的切削工藝參數(shù)數(shù)學(xué)模型中[7-10],完成一道工序的銑銷加工的總工時(shí)為:
其中,Tw是銑銷加工的總工時(shí),Tm是工序的切削時(shí)間,Th是由于刀具磨損導(dǎo)致的平均一道工序的換刀時(shí)間,Tc是工序之間的換刀時(shí)間,Tot是除換刀時(shí)間以外的其他輔助時(shí)間。
其中,D是刀具直徑,L是切削長(zhǎng)度,a是切削速度,fz是銑刀每齒進(jìn)給量,Z是銑刀齒數(shù)。
其中,ge是銑削寬度,gp是銑削深度,Cb、m、r、n、d、k、l是銑刀的刀具耐用度系數(shù)。
由式(2)和(3)得到的目標(biāo)函數(shù)為:
數(shù)控機(jī)床在加工過程中受到多個(gè)方面的約束,切削速度的約束是:
其中,φmin和φmax分別是數(shù)控機(jī)床主軸的最低和最高轉(zhuǎn)速。
每齒進(jìn)給量約束是:
切削進(jìn)給力小于數(shù)控機(jī)床主軸進(jìn)給力,則切削力的約束是:
其中,Bfmax是數(shù)控機(jī)床的最大進(jìn)給力,φ是主軸轉(zhuǎn)速,xB、yB、dB、lB、wB、KBc是切削力系數(shù)。
切削扭矩不能超過主軸最大扭矩,則切削扭矩的約束是:
其中,F(xiàn)fmax是數(shù)控機(jī)床主軸的最大扭矩。
機(jī)械功率小于數(shù)控機(jī)床的最大有效切削功率,功率約束是:
其中,η是數(shù)控機(jī)床功率有效系數(shù),Hfmax是數(shù)控機(jī)床最大有效切削率。
零件加工的表面粗糙度約束是:
其中,σε是刀具的刀尖圓弧半徑,Rmax是表面粗糙度的最大值。
假設(shè)在一個(gè)D維空間中,有一個(gè)由M個(gè)粒子組成的種群,粒子的位置是Xi(t)=(Xi,1,Xi,2,???,Xi,j,???,Xi,D),在QPSO算法中,粒子的運(yùn)動(dòng)狀態(tài)用波函數(shù)ψ(x ,t) 描述,通過求解薛定諤方程得到粒子在空間某點(diǎn)出現(xiàn)的概率密度函數(shù),利用蒙特卡洛方法可以得到更新粒子位置的公式:
其中,qi,j(t)是局部吸引子,β是收縮-擴(kuò)張系數(shù),Cj(t)是所有粒子的個(gè)體最優(yōu)位置的平均最優(yōu)位置,u是在區(qū)間[0 ,1]內(nèi)均勻分布的隨機(jī)數(shù)。
qi,j(t)由下式計(jì)算得到:
其中,φ是在區(qū)間[0 ,1]內(nèi)均勻分布的隨機(jī)數(shù),Pi,j(t)是粒子的當(dāng)前最優(yōu)位置,Gj(t)是種群的全局最優(yōu)位置。
Cj(t)由下式計(jì)算得到:
其中,M是種群大小。
本文采用的雙層多種群策略如圖1所示,在底層中,將種群分為F個(gè)種群大小為W的子群,每個(gè)子群都獨(dú)立尋找本子群的最優(yōu)解,然后選取每個(gè)子群的最優(yōu)解Gl1(t)、Gl2(t)、…、GlF(t)進(jìn)入頂層,形成一個(gè)種群jjj大小為F的新種群,在頂層尋找該種群的最優(yōu)解Gj(t),在尋找過程中會(huì)更新所有頂層粒子的位置,找到頂層種群的最優(yōu)解Gj(t)后,將頂層每個(gè)粒子更新后的位置信息Gjl1(t)、Gjl2(t)、…、GjlF(t)返回到對(duì)應(yīng)的底層子群中,繼續(xù)引導(dǎo)底層各子群尋找最優(yōu)解,通過這種策略,可以引導(dǎo)底層的每個(gè)子群向全局最優(yōu)解移動(dòng)。
圖1 雙層QPSO算法結(jié)構(gòu)
為了加強(qiáng)單個(gè)種群的尋優(yōu)能力,本文利用差分進(jìn)化算法和Levy飛行對(duì)單個(gè)種群進(jìn)行變異,幫助全局最優(yōu)解跳出局部最優(yōu),增強(qiáng)種群的多樣性。差分進(jìn)化算法是一種智能優(yōu)化算法,在第t+1次迭代中,對(duì)于每一個(gè)個(gè)體 yi(t)={yi1(t),yi2(t),???yij(t)}(i∈{1,2,???,NP}),變異個(gè)體由下式得到:
其中,α1、α2和 α3,是隨機(jī)正整數(shù),F(xiàn)ˉ是縮放因子。
交叉操作產(chǎn)生的新個(gè)體y′i,j(t +1)表示為:
其中,randj是[0 ,1]之間均勻分布的隨機(jī)數(shù),CR是變異概率,jrand是隨機(jī)選擇指數(shù)。
對(duì)于混沌反向?qū)W習(xí),在文獻(xiàn)[6]中使用的Sinusoidal映射的混沌范圍具有局限性和均勻分布特性較差的問題[11],本文采用改進(jìn)的一維混沌映射Ten-Sine系統(tǒng)[12]:
其中,r∈(0 ,4 ]。
在第t次迭代中,對(duì)粒子i的反向搜索可由下式計(jì)算:
混沌反向?qū)W習(xí)算法描述如下:
算法1混沌反向?qū)W習(xí)算法
輸入:D是空間維度,最大迭代次數(shù)Tmax和種群大小W
輸出:初始種群
begin
fori=1toWdo
forj=1toDdo
隨機(jī)初始化混沌變量Z0j∈(0 ,1) ;
fork=1toTmaxdo
Zk,j=Zk-1,j;//利用式(18)計(jì)算混沌映射
end for
xi,j(t)=xmin,j(t)+Zk,j
(xmax,j(t)-xmin,j(t));
end for
end for
fori=1toWdo
forj=1toDdo
利用式(19)計(jì)算第 j維第i個(gè)粒子的反向值;
end for
end for
從生成的種群和反向種群中選擇最優(yōu)的W個(gè)粒子作為初始種群
end
在QPSO算法中引入差分進(jìn)化和混沌反向?qū)W習(xí)后,QPSO算法對(duì)于單個(gè)種群尋找最優(yōu)解的描述如下:
算法2對(duì)單種群搜索的改進(jìn)QPSO算法
輸入:D是空間維度,最大迭代次數(shù)Rmax,種群大小W
輸出:全局最優(yōu)粒子
begin
隨機(jī)生成種群的初始種群;
fort=1toRmaxdo
利用式(15)計(jì)算所有粒子的平均最優(yōu)位置;
fori=1toWdo
iff(Xi(t)) Pi(t)=Xi(t); end if Gj(t)=min(f (Pi(t) )); forj=1toDdo φ=rand(0,1); u=rand(0,1); 利用式(14)計(jì)算 qi,j(t); 利用式(16)和式(17)對(duì)當(dāng)前種群進(jìn)行變異,得到新的種群PDE; 利用算法1得到當(dāng)前種群的方向種群POP; 從當(dāng)前種群、PDE和POP中選擇最優(yōu)的S個(gè)粒子組成新的種群; end for end DQPSO算法在底層和頂層中對(duì)多個(gè)種群進(jìn)行尋優(yōu),具體的描述如下: 算法3 DQPSO算法 輸入:D是空間維度,最大迭代次數(shù)Emax,子群數(shù)F,子群大小W 輸出:全局最優(yōu)粒子 begin 將當(dāng)前種群分成F個(gè)大小為W的子群; fore=1toEmaxdo forf=1toFdo//對(duì)于每個(gè)子群 調(diào)用算法2尋找子群的最優(yōu)解; end for 選擇所有子群的最優(yōu)解Gjl1(t)、Gjl2 (t)、…、GjlF(t)作為頂層的粒子,形成新的種群; 調(diào)用算法2尋找頂層種群的最優(yōu)解Gj(t); 將頂層更新后的粒子Gjl1(t)、Gjl2 (t)、…、GjlF(t)返回到底層; end for end 在實(shí)驗(yàn)中,為了驗(yàn)證改進(jìn)的QPSO算法在尋優(yōu)能力和收斂性方面的表現(xiàn),本文利用改進(jìn)的QPSO算法IQPSO、QPSO、ODMQPSO和GQPSO分別對(duì)切削工藝參數(shù)進(jìn)行優(yōu)化。實(shí)驗(yàn)使用的數(shù)控機(jī)床是DMG HSC 75Linear,實(shí)驗(yàn)中的參數(shù) H=40kW ,φ=4000r/min,afmax=14000mm/min,σε=3.5mm,IQPSO算法的參數(shù)為Emax=500,Rmax=300,W=30,Tmax=200。 所有的算法獨(dú)立運(yùn)行20次,得到各算法對(duì)目標(biāo)函數(shù)優(yōu)化結(jié)果的平均值和標(biāo)準(zhǔn)方差,對(duì)各算法的優(yōu)化結(jié)果比較如表1所示,通過表1可以看出,與其他量子粒子群優(yōu)化算法相比,本文提出的IQPSO算法在搜索全局最優(yōu)值時(shí)能夠得到更好的尋優(yōu)結(jié)果。此外,通過標(biāo)準(zhǔn)方差的比較可以看出在所有算法中,IQPSO算法的平均方差最小,這說明IQPSO算法具有最好的穩(wěn)定性。 表1 各算法的優(yōu)化平均值和標(biāo)準(zhǔn)方差比較 各算法的收斂性比較如圖2所示,從圖2的比較結(jié)果可以看出,IQPSO算法在迭代次數(shù)達(dá)到100次左右時(shí)已經(jīng)找到全局最優(yōu)值,而其他算法需要更多的迭代次數(shù)才能找到全局最優(yōu)值,這說明IQPSO算法的收斂速度較快。從全局最優(yōu)值來看,只有IQPSO算法在收斂時(shí)找到的全局最優(yōu)值最低,這說明IQPSO算法找到的全局最優(yōu)值更接近真實(shí)的最優(yōu)值。 圖2 各算法的收斂性比較 表1和圖2的各算法比較結(jié)果說明本文提出的IQPSO具有較好的全局搜索能力和收斂性,這是因?yàn)楸疚牟捎昧穗p層多種群的尋優(yōu)策略,利用頂層的最優(yōu)值引導(dǎo)底層各子群尋優(yōu),提高了整個(gè)種群的全局尋優(yōu)能力。此外,本文將差分進(jìn)化算法和Levy飛行用于頂層和底層各種群的尋優(yōu)中,加強(qiáng)了各種群的尋優(yōu)能力,從而提高了局部尋優(yōu)能力。 QPSO算法在優(yōu)化切削工藝參數(shù)中有著重要的應(yīng)用,針對(duì)現(xiàn)有QPSO算法中存在易早熟收斂和局部尋優(yōu)能力較差的問題,本文提出一種改進(jìn)的QPSO算法IQPSO,并利用IQPSO對(duì)數(shù)控機(jī)床的切削工藝參數(shù)進(jìn)行優(yōu)化。在IQPSO算法中使用雙層多種群策略,通過差分進(jìn)化算法和Levy飛行進(jìn)一步提高頂層和底層中單個(gè)種群的尋優(yōu)能力。實(shí)驗(yàn)結(jié)果驗(yàn)證了采用本文提出的QPSO具有較好的全局尋優(yōu)能力和收斂性,能夠得到較優(yōu)的切削工藝參數(shù)。3 實(shí)驗(yàn)與分析
4 結(jié)語