呂星辰,鄭鵬,程亞紅,鄭嘉琦
(1.鄭州大學機械與動力工程學院,河南鄭州 450000;2.鄭州大學國際學院,河南鄭州 450000)
隨著現(xiàn)代制造業(yè)的高速發(fā)展,精密軸類零件成為機械產(chǎn)品的重要組成部分。因為它往往需要配合起來使用,因此不僅要滿足尺寸精度要求,同時還要滿足形位精度要求。其中圓柱度誤差是衡量這類零件形狀誤差大小的主要指標,它也直接影響到零件的工作精度和系統(tǒng)的壽命。因此如何能夠快速、準確、高效地實現(xiàn)圓柱度測量和評定就顯得尤為重要。
在新一代產(chǎn)品幾何技術(shù)規(guī)范(GPS)中,根據(jù)理想要素擬合方法的不同,圓柱度誤差評定方法主要分為最小二乘法(Least Square Cylinder,LSC)、最大內(nèi)接柱法(Maximum Inscribed Cylinder,MIC)、最大外接柱法(Minimum Circumscribed Cylinder,MCC)和最小區(qū)域法(Minimum Zone Cylinder,MZC)。在眾多評定方法中[1],最小二乘法較為簡單快捷,但只是近似評定,在生產(chǎn)活動中容易造成誤判;而最小區(qū)域法是研究熱點,因其符合最小條件準則,所以通常在誤差評定發(fā)生爭議時起到仲裁作用[1]。
對于圓柱度誤差及其優(yōu)化算法,國內(nèi)外眾多學者已經(jīng)進行了深入的研究。王瑞[2]建立了圓柱度誤差評定的線性規(guī)劃模型,該模型將非線性模型線性化,方便求解,但因略去高階項而存在模型誤差。溫文炯、溫英明[3]采用Newton法及Gauss消去法求解非線性方程組來評定圓柱度誤差,并通過實驗對比最小二乘法,證明該算法過程簡便實用,結(jié)果具有唯一性。郭慧等人[4]將改進的遺傳算法應(yīng)用于圓柱度誤差的評定中,引入多種群的遷移策略有效提高全局搜索能力,通過實驗對比了各個模型的精度,驗證了其可行性。史栩屹等[5]設(shè)計了一種二次插值鯨魚優(yōu)化算法,通過與其他優(yōu)化算法對比,驗證了其具有較快的收斂速度和較好的精度。綜上,這些先進的優(yōu)化算法均可以對圓柱體進行全局尺寸評定,但其收斂速度及穩(wěn)定性依然有待提高。
根據(jù)座頭鯨圍捕獵物的行為,MIRJALILI、LEWIS[6]提出了鯨魚優(yōu)化算法,其原理通俗易懂,參數(shù)設(shè)置較少,但算法容易陷入局部最優(yōu),收斂速度較慢。本文作者提出一種混合策略改進的鯨魚優(yōu)化算法,進一步提高算法的收斂速度和精度。
對于圓柱度誤差的評定,通常采用截面法,即確定提取窗口在圓柱軸向的起止范圍后,對窗口內(nèi)多個平行橫截面上沿周向進行采樣[7],然后通過求解不同截面上各測點的徑向偏差值來反映圓柱零件在該截面處相對于理想要素的變動量,進而得到圓柱度誤差。
如圖1所示,首先,建立Oxyz空間坐標系,設(shè)圓柱零件的回轉(zhuǎn)軸為z軸,評定基準軸線為理想圓柱軸線L。然后,沿z軸方向等距截取若干個平面,各個截面沿周向等距采樣,其坐標表示為Pij(Rij,θij,zi),理想軸線L與xOy平面交點為O1(x,y,0),它相對于z軸的傾斜角為γ,分別用γx和γy來表示傾斜角在xOz、yOz平面上的投影分量。
圖1 圓柱度幾何模型
則各測點相對于理想軸線的坐標可以表示為
(1)
那么各測點到軸線L的距離可以表示為
(2)
將上式進行泰勒展開,略去高階項,可簡化為
rij=Rij+(x+αzi)cosθij+(y+βzi)sinθij
(3)
其中:α=tanγx,β=tanγy。
包容評定分為雙包容和單包容(包括外包容和內(nèi)包容)。以雙包容為例,即被測實際要素被兩同軸的理想圓柱面包容,當兩理想圓柱面徑向偏差達到最小時,差值f就是圓柱度誤差。因此通過前述公式可知,不斷尋找最優(yōu)理想軸線L的位置,使各測點均落在由max(rij)和min(rij)構(gòu)成的理想圓柱曲面內(nèi),且要保證其差值最小化,便可得到圓柱度誤差值[8]。
雙包容評定模型為
Fmin(x,y,α,β)=min(max(rij)-min(rij))
(4)
外包容評定模型為
Fmin(x,y,α,β)=min(max(rij))
(5)
內(nèi)包容評定模型為
Fmin(x,y,α,β)=min(-min(rij))
(6)
在自然界中,座頭鯨通常以群居為主。在捕食過程中,首先鯨群會將獵物團團包圍,然后通過螺旋上升并吐出氣泡的方式來收縮包圍圈,直到捕食成功。根據(jù)這種行為,鯨魚優(yōu)化算法將捕食過程分為包圍收縮、螺旋上升和隨機游動3個搜索機制。
對于傳統(tǒng)的鯨魚優(yōu)化算法,為了解決其容易陷入局部最優(yōu)解和收斂速度相對較慢的問題,以及增強其全局搜索能力,將算法在種群初始化階段引入Tent混沌映射來優(yōu)化初始種群質(zhì)量;在包圍收縮階段引入非線性參數(shù)來加速收斂;在螺旋上升階段引入自適應(yīng)權(quán)重系數(shù)提高算法局部搜索能力;在隨機游動階段引入萊維飛行提高算法全局搜索能力。其詳細介紹在以下小節(jié)中進行展示[9-11]。
設(shè)算法的搜索空間為d維,種群中有n只鯨魚個體,最大迭代次數(shù)為T,變量的上下限分別為ub和lb,則第t次迭代中第i只個體表示為Xi(t)=(xi,1,xi,2,…,xi,d),則鯨魚優(yōu)化算法通過隨機數(shù)來生成初始種群,如下式:
X=(ub-lb)·rand(0,1)+lb
(7)
(8)
其中:ε=0.7。且要避免初值xn與參數(shù)ε相等,否則就不再是混沌系統(tǒng),將會演化為周期系統(tǒng)。那么式(7)將改進為
X=(ub-lb)·f(xn)+lb
(9)
包圍收縮搜索機制是鯨魚種群向著最優(yōu)個體Xbest(t)游動來更新位置。公式如下:
(10)
其中:a為線性因子,隨著迭代次數(shù)從2線性減小到0,且系數(shù)向量A在該階段的模小于1。但為了加快收斂速度,避免陷入局部最優(yōu),在此將上述線性因子改為非線性的,使其前期變化迅速,而后期變化緩慢,從而達到目的。公式如下:
(11)
螺旋上升搜索機制是鯨魚種群通過螺旋游動來更新其位置并通過吐出氣泡的方式來收緊獵物的移動空間。該階段位置更新方式如下:
(12)
其中:b為決定螺旋形狀的參數(shù),通常取1;l為[-1,1]間的隨機數(shù)。
隨著迭代次數(shù)的增加,氣泡網(wǎng)會逐漸縮小,容易使算法陷入局部最優(yōu)解中。為了使全部獵物均被收縮在包圍圈內(nèi),加入一個權(quán)重w,自適應(yīng)地去更改鯨魚收緊獵物的移動范圍,達到當w較小時縮小包圍范圍、w較大時擴大包圍范圍的效果。
w=rand(0.5,1)+ft/fg
(13)
其中:fg為當前全局最優(yōu)適應(yīng)度;ft為第t次迭代中的局部最優(yōu)適應(yīng)度。因為w取值在[1,2]的范圍內(nèi)概率更大,所以大概率會選擇擴大收縮包圍圈,從而較好地解決了陷入局部最優(yōu)的問題。其位置更新公式由式(12)變化為
X(t+1)=Xbest(t)+D2·ebl·cos(2πl(wèi))·w
(14)
隨機游動搜索機制是當前鯨魚個體Xi向著當前鯨魚種群中一個隨機個體Xrand(t)靠近來更新位置。雖然可能會偏離目標獵物,但是能夠增強全局搜索能力。該階段,系數(shù)向量|A|>1,位置更新模型如下:
一到冬天,要檢查幾次。不是怕別的,怕老鼠打了洞。葡萄窖里很暖和,老鼠愛往這里面鉆。它倒是暖和了,咱們的葡萄可就受了冷啦!
(15)
為了進一步增強算法的全局優(yōu)化能力,引入了萊維飛行,其搜索步長的概率分布是有重尾分布的隨機行走,即具有大概率出現(xiàn)較大跨步的情況。其飛行步長s為
(16)
(17)
其中:Γ(x)為Gamma函數(shù)。因此改進后的位置更新公式為
(18)
其中:sign函數(shù)能取-1、0、1這3個值,代表著方向;常數(shù)ζ=0.01。
此次實驗主要運用MATLAB強大的運算功能對采集的數(shù)據(jù)進行數(shù)據(jù)分析,并將結(jié)果可視化。數(shù)據(jù)的采集儀器為三坐標測量儀,如圖2所示。
圖2 運用三坐標測量儀對零件進行數(shù)據(jù)采集
實驗前對圓柱零件軸向等距采集10個截面,每個截面周向等距采集1 164個數(shù)據(jù)點。通過編程實現(xiàn)圓柱度的最小二乘評定(LSC)和雙包容評定(MZC)。為了測試混合策略改進的鯨魚優(yōu)化算法(HWOA)在圓柱度誤差評定上的性能,設(shè)置對照組,除了鯨魚優(yōu)化算法以外,再加入遺傳算法(GA)進行對比。
以雙包容評定為例,給出改進鯨魚優(yōu)化算法圓柱度誤差評定的步驟,其簡化流程如圖3所示。
圖3 算法流程
步驟1,給定算法的相關(guān)參數(shù),設(shè)置算法的搜索空間為d=8,種群數(shù)量為n=100,最大迭代次數(shù)為T=500,變量的上下限ub、lb區(qū)間為[-30,30]。
步驟 2,利用式(9)生成初始種群,其中xn=rand(n,d),再用式(4)計算初始種群中每個鯨魚個體的適應(yīng)度值,并進行比較,得到初始最優(yōu)個體Xbest(0)和初始最優(yōu)適應(yīng)度值。
步驟 3,開始迭代并更新鯨魚位置。在每一次迭代前首先更新參數(shù)p、a、A、C、l、w的值。判斷概率p和參數(shù)|A|的值,若p<0.5且|A|<1,則采用包圍收縮的方式更新種群位置,否則采用隨機游動的方式更新位置;若p≥0.5,則采用螺旋上升的方式更新位置。
步驟 4,再由式(4)計算更新位置后的鯨魚個體的適應(yīng)度,并保存最優(yōu)個體Xbest(t)和局部最優(yōu)適應(yīng)度。并判斷是否達到最大迭代次數(shù),否則繼續(xù)迭代。
如表1所示,為了評估改進后算法相對于原始算法的性能,選擇2個可變維的基準函數(shù)來進行測試,包括一個單峰基準函數(shù)評估算法收斂速度和一個多峰基準函數(shù)評估算法全局搜索能力,且所有基準函數(shù)均有理論最優(yōu)值(全局最小值)。
表1 基準測試函數(shù)
設(shè)定兩算法的種群規(guī)模和迭代次數(shù)保持一致,分別為100和500,算法維度設(shè)置3個檔次來進行對比,分別為50、100、200。對于每個基準函數(shù),兩優(yōu)化算法均獨立運行10次,計算結(jié)果的平均值和標準差,如表2所示,算法收斂曲線對比如圖4所示。
表2 不同維度下HWOA與WOA算法性能對比
圖4 不同維度下HWOA與WOA算法收斂曲線對比
在單峰函數(shù)中,由圖4(a)可以看出改進的算法具有較快的收斂速度,并且在求解Sphere函數(shù)時精度能比原始算法高出10個數(shù)量級。在多峰函數(shù)中,由圖4(b)可以看出,兩種算法精度相對變化不大,但改進的鯨魚優(yōu)化相對于原始算法的收斂速度提升更加明顯,展現(xiàn)出其具有更強的跳出局部最優(yōu)的能力。綜合來看,基于混合策略改進的鯨魚優(yōu)化算法(HWOA)具有更快的收斂速度和全局搜索能力。綜合對比圖4中所有收斂曲線,可以看出在對基準函數(shù)不同維度的求解過程中,其收斂曲線波動范圍不大,展現(xiàn)出算法的穩(wěn)定性。
基于雙包容評定,各優(yōu)化算法對圓柱度誤差f的評定結(jié)果對比如表3所示。
表3 各算法雙包容評定結(jié)果對比
混合策略改進鯨魚優(yōu)化算法評估結(jié)果及兩算法收斂速度對比如圖5—6所示。其中圖6為了使變化趨勢更加明顯,對y軸坐標進行取對數(shù)運算。
圖5 改進鯨魚優(yōu)化算法評定結(jié)果
圖6 算法收斂速度曲線對比
分析表3可知:基于混合策略改進的鯨魚優(yōu)化算法相對于傳統(tǒng)鯨魚算法在評定精度上有了進一步提升。由圖6可以看出:改進的鯨魚優(yōu)化算法在第36次迭代時收斂,遺傳算法在第89次迭代時收斂,而鯨魚優(yōu)化算法在第124次迭代時收斂,收斂速度提升較大;改進的鯨魚優(yōu)化算法在算法迭代初期變化速度較快,后期變化速度較慢,說明非線性因子有效改善了算法的收斂效果。
為了對比算法的效率,在固定截面數(shù)的前提下,對不同算法引入時間函數(shù),計算其運行時間,每個算法單獨運行5次取平均值,對比結(jié)果如表4所示。
表4 不同算法運行時間對比
分析表4可知:WOA算法改進前后運算時間基本無差別,因此改進算法引入的各個參數(shù)并不會增加算法的復(fù)雜度而影響運算時間;但改進后的算法相對于遺傳算法在運行效率上具有較大的優(yōu)勢;最小二乘法運算效率最高,但該方法只是近似評定,不滿足最小條件準則,因此僅供參考。
表3中誤差數(shù)據(jù)為指定高度等間距采集10個截面所測得的結(jié)果。為了測試截面數(shù)量對誤差值的影響(以雙包容為例),設(shè)定采樣高度在30~165 mm之間,同樣為等間距取樣,分別間隔60、45、30 mm,得到3、4、5個截面數(shù)下的誤差值如表5所示。
對比表3和表5數(shù)據(jù)可以發(fā)現(xiàn):HWOA、WOA、GA、LSC運算出來的結(jié)果伴隨著截面的變化具有略微的波動,但影響不是特別大,且具有略微上升的現(xiàn)象。這是因為隨著采樣截面不斷增加,其采樣結(jié)果越來越逼近真實圓柱零件,使得圓柱度誤差越來越接近真實值。由各算法間對比可以看出:改進后的鯨魚優(yōu)化算法,在精度上具有一定的優(yōu)勢,不同截面數(shù)下的誤差值均相對較小。
為驗證在單包容評定中是否也會出現(xiàn)這種趨勢(以MCC為例),同樣設(shè)定采樣高度在30~165 mm之間,采樣間隔為60、45、30、15 mm,得到3、4、5、10個截面數(shù)下的誤差值如表6所示。
表6中各算法評定結(jié)果隨著截面數(shù)的變化曲線與最小二乘(LSC)算法的變化曲線如圖7所示。
從圖7可以看出:在單包容評定下也同樣具有略微上升的趨勢,且各自的變化波動也較小。
在鯨魚優(yōu)化算法的基礎(chǔ)上引入Tent混沌映射、非線性參數(shù)、自適應(yīng)權(quán)重系數(shù)和萊維飛行,來改進鯨魚優(yōu)化算法的不足。通過基準函數(shù)測試,證明基于混合策略改進的鯨魚優(yōu)化算法具有更快的收斂速度,算法的搜索能力也有了提高。經(jīng)過實驗對比,相比基于GA、WOA算法的圓柱度誤差評定方法,改進后的鯨魚優(yōu)化算法在精度上優(yōu)于其他3種對比方法,評定效率也具有顯著優(yōu)勢。
基于混合策略改進的鯨魚優(yōu)化算法,原理簡單明了,算法編程也不復(fù)雜,局部以及全局搜索能力有了進一步提升,應(yīng)用場景也比較廣泛,可以推廣至多種問題的求解中。