?

粒子群優化算法計算數控加工逼近誤差研究

2023-12-15 04:28李鵬飛張子煜王天力范呂陽
關鍵詞:觸點慣性適應度

李鵬飛,劉 威,2,張子煜,王天力,范呂陽

(1.蘇州科技大學 機械工程學院,江蘇 蘇州 215011;2.蘇州科技大學 天平學院,江蘇 蘇州 215011)

在數控加工刀軌生成中,逼近誤差是指在進給方向上刀具從一個刀位點運動到下一個刀位點形成的包絡面與刀觸點軌跡線之間的最大誤差,逼近誤差與相鄰刀觸點、刀位點的距離(即步長)正相關。步長規劃方法主要有等參數法、等距法、步長篩選法和等誤差步長法[1-3]。

在三軸球頭刀精加工中,逼近誤差計算的實質是在刀觸點軌跡線上搜索一刀觸點,此刀觸點到刀位點連線的距離為最值,是典型的多目標優化問題。目前計算逼近誤差一般采用幾何迭代法[4-6],其原理在提高計算效率方面的瓶頸,導致需要大量逼近誤差計算的高精度刀軌和等誤差刀軌的生成時間難以減少。

智能算法是對生物群體協同搜索機制和物理原理驅動下的變化現象抽象、提煉出的優化算法,在全局尋優的精度和效率上比傳統的迭代法優勢明顯[7-9],理論上能夠用于在刀觸點軌跡線上搜索與刀位點連線的距離為最值的點。

作為應用最廣泛的智能算法之一,粒子群算法[10]模擬鳥群或蜂群的覓食行為進行最優解搜索,算法思路清晰、計算高效,被廣泛應用于多個領域[11-13]。但粒子群算法易過早收斂、陷入局部最優[14],為此,文獻[15]提出了帶約束因子的粒子群優化算法,以提高算法靈活性和收斂速度。文獻[16-19]則對慣性權重的變化分別提出了模糊系統動態調整、線性遞減、隨機慣性、非線性遞減的優化策略,以保持局部最優和全局最優之間的平衡。文獻[20]提出一種跟隨非線性慣性權重系數變化的動態學習因子,以提高算法的全局搜索能力和局部搜索精度。

受粒子群算法、逼近誤差計算過程原理相似和上述研究成果啟發,本文建立逼近誤差計算的刀觸點區間與粒子搜索區間之間的映射關系,提出逼近誤差適應度函數、慣性權重因子和學習因子的創建和優化方法,最終完成整個粒子群算法的構造,實現逼近誤差的高效計算。

1 逼近誤差與粒子群算法基本原理

1.1 逼近誤差幾何原理

現有方法常以刀觸點軌跡線上的弦弧之間的弓高誤差近似作為逼近誤差[21],如圖1 所示,一般將相鄰兩刀觸點PiCC、Pi+1CC間的刀觸點軌跡線視為等半徑圓弧,即Ri=Ri+1。已知弓高誤差最大允許值eG、刀觸點PiCC及其曲率半徑Ri,由勾股定理可得式(1),變換可得式(2)并求出步長Di。然而真實的逼近誤差是刀具包絡面與刀觸點軌跡線之間的誤差,刀觸點軌跡線曲率越大,與弓高誤差之間的差值越大。且在凸區域時,真實逼近誤差大于弓高誤差,凹區域時小于弓高誤差。

圖1 弓高誤差示意圖

在三軸精加工中,球頭刀包絡面為以相鄰刀位點連線為軸線,半徑為R 的圓柱體,相鄰刀位點PiCL和Pi+1CL之間的真實逼近誤差ei如圖2 所示,其中PiCC、Pi+1CC為刀觸點,點pj為刀觸點軌跡線上與PiCL、Pi+1CL距離最小的點,逼近誤差ei可由式(3)表示。

圖2 逼近誤差示意圖

其中,R 為球頭刀半徑,Li為刀觸點線上的點pj到線段PiCLPi+1CL的距離。

真實誤差計算過程可視為在刀觸點軌跡線上搜索到刀位點連線距離為最值的特定數據點的過程,現有常用方法離散法是在刀觸點軌跡線上獲取離散數據點并進行計算,但需生成大量離散數據點才能滿足高精度要求,計算效率難以提高已成為真實誤差廣泛應用的最大瓶頸。

1.2 粒子群算法

粒子群算法的每個粒子都具有由適應度函數決定的適應值,粒子在每次迭代中不斷更新,并逐漸接近理論最優粒子及其最優解。

設在一個D 維搜索空間中有N 個粒子,第i 個粒子的位置和“飛行”速度如式(4)和(5)所示,歷次迭代搜索到的個體最優值位置參數pbest可由式(6)表示,歷次迭代搜索到的種群最優值位置參數可由式(7)表示。

第k 代的第i 個粒子的第d 維向第k+1 代進化時速度和位置的更新如式(8)所示,其中d=1,2,3,…,D,w 為慣性權重因子,c1、c2分別為個體、群體學習因子,、r1、r2(0,1)之間相互獨立的隨機數,f 為適應度函數,粒子群中兩個極值pbest和gbest由式(9)和(10)求出。隨著迭代次數的增加,所獲得的極值逐漸逼近理論解,一般以迭代次數上限或極值變化量(即計算精度)為終止條件結束算法。

2 融合逼近誤差計算原理的粒子群算法優化

逼近誤差的計算過程是在相鄰刀觸點之間搜索距離最值的過程,與粒子群算法相同,也是一種全局尋優過程。為了實現運用粒子群算法計算逼近誤差,提出適應度函數、粒子搜索區間、慣性權重和學習因子的建立和優化方法。本節以任意一行刀觸點軌跡CC 中第i 個和i+1 個刀觸點PiCC、Pi+1CC及其刀位點PiCL、Pi+1CC為例闡述算法。

2.1 設置粒子搜索區間

令刀觸點PiCC、Pi+1CC在刀觸點軌跡線上的參數分別為ui、ui+1,則逼近誤差所對應的點位于區間[ui、ui+1]的局部刀觸點軌跡線上。與點坐標相比,參數u 僅一維,且直接決定點的相對位置和坐標,更適合作為粒子。為了提高算法的規范性和普適性,提出將局部刀觸點軌跡線映射到標準區間[0,1],以[0,1]內的離散數值作為實際計算的粒子。任意刀觸點軌跡線上的點pj的粒子mj可由式(11)求出,映射過程如圖3 所示。

圖3 刀觸點映射到標準區間示意圖

2.2 建立逼近誤差的適應度函數

由式(3)可知,刀位點PiCL、Pi+1CL之間的逼近誤差是刀觸點PiCC、Pi+1CC之間的刀觸點軌跡到線段PiCLPi+1CL的距離與刀具半徑R 差值的最值,因此兩者之間的差值是理想的適應度函數。對于區間[0,1]內的任意第j 個粒子mj,其適應度的計算流程如下:

步驟1:運用式(12)計算出粒子mj所對應的刀觸點的參數值uj,代入式(13)計算出參數值uj在刀觸點軌跡線CC 上對應的點pj。

步驟2:運用式(3)計算出刀觸點到刀位點連線之間的距離Lj。

步驟3:運用式(14)計算出粒子mj的適應度值。

2.3 優化慣性權重

粒子群算法的初期一般需要較大的慣性權重因子以獲得較強的全局搜索能力,并隨著迭代次數增加遞減,從而加快粒子收斂到全局最優[22]。

為了解決常用的慣性權重線性遞減方法在前期全局搜索能力弱的不足,本文利用余弦曲線在區間[0,π/2]內的前、中、后段下降速度由慢到快的非線性特點,提出將粒子群優化算法的迭代次數映射到此區間,獲得的慣性權重函數如式(15)所示,其中k 為迭代次數,wmax、wmin為慣性權重系數最大、最小值。此函數能夠在搜索初期、中期、后期分別獲得較慢、較快、快速的慣性權重下降速度,從而使粒子的全局搜索能力在初期時較強,隨后逐漸減弱,而局部搜索能力逐漸增強。

2.4 優化學習因子

個體、群體學習因子,分別決定了自身、群體最優位置在粒子飛行速度計算中的權重,當時,粒子的運動更偏向個體最優方向,反之則更偏向群體最優方向。

在迭代初期,由于距離最優解較遠,粒子應注重自我認知,根據個體最優解進行搜索;在迭代中后期,粒子較為接近最優解,應注重群體認識,側重群體最優解鄰域的局部搜索。為此,本文對學習因子采用線性變化的策略,計算式(16)所示,其中c1max、c1min、c2max和c2min分別為個體、群體學習因子的最大、最小值,隨著迭代次數k 的增加,c1、c2分別減小、增大。

3 粒子群優化算法構建

本節基于上述逼近誤差和粒子群算法的原理和優化方法,設計基于粒子群優化算法的逼近誤差計算流程。通過計算粒子適應度值,迭代求出最優粒子及其最優適應度值,以設置的計算精度作為計算終止條件,最后輸出最優解作為逼近誤差。整個計算流程示意圖如圖4 所示,詳細過程如下:

圖4 逼近誤差計算流程圖

步驟1:將搜索區間[ui,ui+1]映射到[0,1],設置種群規模N、速度閾值vmax、vmin和計算精度。

步驟2:隨機所有粒子的初始位置和初始速度。

步驟3:根據2.2 節計算出粒子的適應度值獲得群體最優粒子gbest。

步驟4:以式(15)自適應改變慣性權重w,根據式(16)自適應改變學習因子c1、c2。

步驟5:以式(8)更新粒子速度和位置。

步驟6:根據2.2 節計算出粒子的適應度值。

步驟7:以式(9)和(10)更新個體最優pbest和全局最優gbest。

步驟8:如果滿足計算精度,轉到步驟9,否則轉到步驟3 繼續迭代。

步驟9:輸出當前最優粒子位置和適應度值,即最大逼近誤差位置和逼近誤差值,算法終止。

4 算法實現與驗證

4.1 算法實現

算法運算過程中,慣性權重最大最小值wmax和wmin的取值對算法性能影響很大,然而取值并無明確的理論依據,多采用實驗法選值,常將其設置在0.4 到0.9 之間[23]。算法選用了多組數值進行測試,當wmax=0.9、wmin=0.4 時,性能提高明顯,代入式(15)獲得慣性權重w 計算式,隨迭代次數k 的變化如圖5 所示。

圖5 慣性權重變化圖

與慣性權重類似,常將個體、群體學習因子的最大、最小值c1max、c1min、c2max和c2min設置為2[23]。本文結合優化后慣性權重的變化趨勢,選用了多組數值組合進行了測試,當c1max=2.5、c1min=1.6、c2max=2.2、c2min=1.3 時,學習因子變化如圖6 所示,滿足了前中期加強粒子運動遍歷性、全局搜索能力和后期加強局部搜索能力的要求。

圖6 學習因子變化圖

完成上述數值選取后,在課題組自主開發的CAM 軟件上完成了所有算法的程序開發,實現了逼近誤差計算功能。

4.2 算法驗證

以圖7(a)中的曲面為例生成刀軌,曲面尺寸為120 mm×120 mm×45 mm,刀具為直徑10 mm 的球頭刀,刀軌行數為80,按照等誤差步長法生成刀軌,計算精度為0.1。分別采用幾何迭代算法[6]和本文算法進行等誤差刀軌計算,生成的逼近誤差范圍為9~10 的等誤差刀軌如圖7(b)所示,再取4 種不同范圍逼近誤差進行計算,運行環境為Intel i7-10700、16G RAM 的計算機,所消耗的時間見表1,本文算法比幾何迭代算法的計算時間減少了16%以上,對比標準粒子群優化算法的計算時間減少了7%以上,驗證了在計算效率上的優勢。

圖7 自由曲面與生成的等誤差刀軌

5 結論

為了提高數控加工中逼近誤差的計算效率,本文對粒子群優化算法計算逼近誤差進行了研究。為了提高算法普適性,將刀觸點軌跡線上搜索范圍映射到標準區間,提出了適應度函數,優化了慣性權重因子和學習因子的變化策略。實驗結果表明,所提出的算法耗時更短。在未來的研究中,可進一步在結構、參數優化等方面改進算法,或探索其它類型的智能算法,以提高逼近誤差的計算效率。

猜你喜歡
觸點慣性適應度
你真的了解慣性嗎
中國人民大學新聞學院教授 林升棟:將消費者觸點思維融入廣告媒體計劃
改進的自適應復制、交叉和突變遺傳算法
沖破『慣性』 看慣性
航空電轉換器的損傷原因分析及修理
接觸器輔助觸點接觸電阻產生原因分析
無處不在的慣性
普遍存在的慣性
基于空調導風板成型工藝的Kriging模型適應度研究
少數民族大學生文化適應度調查
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合