胡學(xué)敏,杜 娟,閆獻國,智紅英,雍博皓
(太原科技大學(xué) 機械工程學(xué)院,太原 030024)
在航空航天、醫(yī)療診治、生活家電、汽車裝備等涉及到高精度需求時,大部分零件曲面復(fù)雜多樣,曲面形狀所需精度要求較高,例如汽輪機葉輪葉片、螺旋槳、汽車模具,這些曲面零件的質(zhì)量直接影響國家機械行業(yè)的發(fā)展水平,各種機械制造業(yè)中的零件都會涉及到復(fù)雜曲面的質(zhì)量檢測[1]。傳統(tǒng)常見的輪廓度誤差評定采取最小二乘法[2],但由于其得到的誤差比較大,復(fù)雜曲面零件質(zhì)量得不到較好評估引起浪費,因此找到一種計算簡便、效率高的評定誤差的方法極其重要。目前我國選用最小區(qū)域法[3]對復(fù)雜曲面進行輪廓度誤差評定,這樣可以提高曲面的利用價值。傳統(tǒng)的優(yōu)化測點位置方法如梯度下降法、牛頓法等容易使優(yōu)化結(jié)果受局部控制,且不適用于復(fù)雜曲面優(yōu)化問題;文獻[4]采用差分進化算法對理論面與實際曲面進行優(yōu)化匹配,文獻[5]采用粒子群算法對測點與理論曲面進行優(yōu)化匹配,這些算法可以解決類似曲面中的復(fù)雜函數(shù)優(yōu)化問題,適當?shù)馗纳屏藗鹘y(tǒng)優(yōu)化算法的缺點。但如果單獨使用差分進化法其全局搜索能力較弱[6-7],單獨使用粒子群算法容易使得算法在剛開始時收斂速度變快,很容易使優(yōu)化結(jié)果受局部控制。基于以上這些問題,本文提出了一種差分進化粒子群混合算法用來優(yōu)化實際測量點的移動旋轉(zhuǎn)位置,該算法計算精度高、時間少、收斂速度快,結(jié)合了差分進化法和粒子群法的優(yōu)點,避開了兩種算法的缺點,適用于復(fù)雜曲面輪廓度誤差求解這類非線性優(yōu)化問題[8-9],最終結(jié)合廖平[10]的分割曲面逼近算法用于計算復(fù)雜曲面的輪廓度誤差。
檢測復(fù)雜曲面的質(zhì)量也就是通過對比加工后的實際測量出的曲面與理論設(shè)計出的曲面之間的形狀誤差,曲面的輪廓度誤差指的是包圍實測曲面輪廓的兩個同等距離的理論曲面輪廓之間的最小距離。采用最小區(qū)域法評定復(fù)雜曲面的輪廓度誤差數(shù)學(xué)模型如下,根據(jù)其數(shù)學(xué)表達式,曲面誤差評定模型包含兩方面:點到曲面最小距離的計算、實測曲面與理論曲面的優(yōu)化匹配。
(1)
公式中dj(Δx,Δy,Δz,α,β,γ)為原來的實際測量點(xj,yj,zj)經(jīng)過坐標平移旋轉(zhuǎn)轉(zhuǎn)換后得到新的實際測量點(xj*,yj*,zj*)到理論曲面的最小距離。
圖1 均分理論曲面形成網(wǎng)格節(jié)點Fig 1.Evenly divide theoretical surfaces to form mesh nodes
圖2 實際測量點到理論曲面片端點的最小距離Fig.2 The minimum distance from the measuring point to the end point of the theoretical surface
以上是一般情況,在特殊情況下,當矩形頂點A位于理論曲面的四條輪廓邊上時,小曲面∑k(t)的取值區(qū)域如下:
當vjc(t)=0,則v∈[0,1/N(t)];當vjc(t)=1,則v∈[1-1/N(t),1].
(3)判斷分割值1/N(t)得到的距離差是否小于計算精度。若分割值1/N(t)得到的距離與分割值1/N(t-1)得到的距離之差小于計算精度,那么這一輪循環(huán)到此為止,這時計算得到的數(shù)值即為實際測量點到理論曲面的最小距離。如果分割值1/N(t)得到的距離與分割值1/N(t-1)得到的距離之差大于計算精度,需要繼續(xù)分割曲面重復(fù)第(2)步,繼續(xù)求解,最終達到所需的精度要求。
差分進化法操作過程少、計算精度高,但全局搜索能力較弱。粒子群法容易使得算法在剛開始時收斂速度變快,很容易使優(yōu)化結(jié)果受局部控制。為了得到搜索精度高且計算速度快的優(yōu)化算法,我們將在已有的差分進化算法中加入粒子群算法作為輔助變異算子,也就是將這兩種算法結(jié)合成為差分進化粒子群混合算法。
進化流程包括變異、交叉和選擇操作,只是三種操作順序及計算公式有差別。其原理就是NP個種群個體在D維空間由參數(shù)向量xi,j(i=1,2,…,NP;j=1,2,…,D)不斷進化篩選個體留下適應(yīng)能力更好的個體。
(1)變異操作
變異表達式如下:
(2)
此時r1,r2,r3∈{1,2,…,NP}且r1≠r2≠r3≠i,式中F為縮放因子,縮放因子按照標準取值范圍為[0,2].
(2)交叉操作
(3)
(3)選擇操作
(4)
粒子群優(yōu)化算法的生物原理實際上是來自于對一群小鳥捕捉食物的情景模擬,一般采用的是速度-位置搜索模型,由NP個種群個體在D維空間不斷調(diào)整自己的位置及速度首先隨機產(chǎn)生初始種群,且每個粒子都設(shè)定一個隨機速度。因此每個粒子的速度和位置由下式給出:
(5)
(6)
差分粒子群混合算法剛開始的步驟是使用差分進化算法先進行變異選擇操作,若選擇后產(chǎn)生的個體滿足公式(2),則包括在群體內(nèi),否則進入下一步粒子群算法中進行更新群體粒子的最佳位置與速度,然后再進入差分進化算法操作中的交叉選擇操作。一直不斷地重復(fù)迭代該步驟直到達到最佳值。在差分進化算法中加入粒子群算法使得進化的粒子更加多樣化,其算法流程如圖3所示:
圖3 差分進化粒子群算法流程Fig.3 Differential evolution particle swarm algorithm process
復(fù)雜曲面的輪廓度誤差評定的具體步驟如下所示:
(1)設(shè)定差分粒子群算法控制參數(shù),主要包括種群規(guī)模粒子數(shù)NP、變異算子F、交叉算子CR、慣性因子ω、學(xué)習(xí)因子c1和c2、最大進化代數(shù)Gm等。
(2)初始化粒子種群。隨機初始化6 個平移旋轉(zhuǎn)變化量(Δx,Δy,Δz,α,β,γ),初始化范圍一定要在這6 個變量取值范圍之內(nèi),這樣就形成了一個六維的參數(shù)向量,接著NP個這樣的粒子形成了初始種群Q(G),此時G=0,同時隨機初始化這些粒子群體的位置及其對應(yīng)的速度,然后利用分割曲面逼近方法計算初始種群中每個粒子的目標函數(shù)值,進而就得到了所有粒子的最優(yōu)位置。
(3)初始種群Q(G)中的個體經(jīng)過變異得到臨時種群,然后利用分割曲面逼近方法,計算該臨時種群中每個個體的目標函數(shù)值。
(4)對臨時種群和當前種群Q(G)進行選擇操作,若是選擇得到的粒子是經(jīng)過變異操作則包含在下一代種群內(nèi),否則對粒子進行更新位置和速度如式(5)和式(6),從而使種群粒子到達最好位置,得到下一代種群Q(G+1).
(5)對下一代種群中的粒子進行交叉、選擇操作。
(6)求解最終計算結(jié)果。看進化代數(shù)是否滿足設(shè)定值Gm,如果滿足設(shè)定值Gm,那么該進化循環(huán)結(jié)束,這時所有個體的目標函數(shù)值中的最小值作為解輸出;如果沒有滿足設(shè)定值Gm,那么重復(fù)第(3)步。直到滿足情況,這時最終的輸出值則為所求的復(fù)雜曲面輪廓度誤差值。
本文對五軸加工的S形復(fù)雜曲面的一部分使用MATLAB軟件編程進行輪廓度誤差值計算,其基于NURBS描述的理論三維模型如圖4所示,所測實際加工的曲面如圖5所示。本實驗采用WALE輪廓儀V1.0-1000系列,其測量原理是為直角坐標測量法,即通過X軸、Z1軸傳感器,測繪出被測零件的表面輪廓的坐標點。由于該儀器只能測二維方向的數(shù)據(jù)點,對于本次實驗對象為三維曲面且曲面關(guān)于平面YOZ對稱,所以只需要等Y軸間距測出五條軌跡曲線的數(shù)據(jù)點當作本次實驗的曲面數(shù)據(jù)點即可。根據(jù)等間距采樣原則,在曲面模型上等間距選取70 個采樣點,對這些點進行輪廓儀測量如圖6所示,形成70 個試驗測量點。
圖4 S形部分曲面三維模型Fig.4 S-shaped partial surface 3D model
圖5 S形部分測量曲面Fig.5 S-shaped part measurement surface
圖6 S形部分曲面測量輪廓儀Fig.6 S-shaped part curved surface measuring profiler
按照第四節(jié)中的計算曲面誤差值的過程進行MATLAB編程計算,首先將控制參數(shù)設(shè)置如下:
種群大小NP=50;F=0.005;CR=0.7;Gm為50,Δx、Δy、Δz、α、β、γ的取值區(qū)域為[-0.1,0.1].經(jīng)MATLAB計算,得到該曲面的輪廓度誤差值為0.095 966 mm,而采用文獻[4]介紹的差分進化法計算得到的輪廓度誤差值為0.119 475 mm,采用文獻[5]介紹的粒子群算法計算得到的輪廓度誤差值為0.140 125 mm.從圖7可以看出,差分粒子群混合算法剛開始時的起點與差分進化算法和粒子群算法大致相同,但其收斂速度相比于另外兩種算法更迅速,到第15 代左右時就得到了比較好的計算結(jié)果,其結(jié)果更優(yōu),顯示其跳出局部最優(yōu)解的能力更強。所以本文方法能夠得到更加精確的復(fù)雜曲面輪廓度誤差值。
圖7 三種算法迭代收斂對比曲線Fig.7 Comparison curve of iterative convergence of three algorithms
提出一種差分進化粒子群混合算法結(jié)合分割曲面逼近算法來評定復(fù)雜曲面的輪廓度誤差,該方法可對工程中生活中的復(fù)雜曲面進行質(zhì)量檢測,大大提高工程對其利用價值。
(1)采用分割曲面逼近法計算實測點到理論曲面的最短距離,該方法計算精度高,可進行具體操作。
(2)使用差分進化粒子群混合算法來優(yōu)化實際測量點的位置,該方法結(jié)合了差分進化法全局搜索能力強的優(yōu)點及粒子群法的局部搜素能力強的優(yōu)點,在用來求解復(fù)雜曲面函數(shù)問題上更好地顯示出算法的優(yōu)點。
本文方法計算時間少且計算精度高于差分進化法和分割曲面逼近算法相結(jié)合及粒子群法和分割曲面逼近算法相結(jié)合這兩種方法,具有一定的實用意義。