片錦香,王國輝
(沈陽建筑大學信息與控制工程學院,遼寧 沈陽 110168)
2005年Karaboga系統的提出人工蜂群算法,其作為群智能優化算法展現出強大的尋優能力。隨著學者的不斷研究,人工蜂群算法在數值函數優化、神經網絡訓練、約束化問題等方面展現出強大的尋優能力,尤其是在給定靜態環境下的尋優效果十分明顯[1]。但隨著優化問題的越來越復雜,人工蜂群算法的一些缺陷也顯現的越發明顯。例如,易陷入局部最優、搜索后期算法的收斂速度較慢、適應動態環境能力差等[2-8]。因此,對提高種群多樣性、避免陷入局部極小值、加快收斂速度進行改進,并引入案例推理技術加強算法的動態尋優能力。實驗結果表明,改進的人工蜂群算法在優化精度、迭代次數及動態尋優能力等方面取得了良好效果。
電主軸的熱變形[9-10]是影響機床精密加工精度的關鍵因素。研究表明,熱誤差是影響數控機床加工精度的主要誤差,約占整個誤差源的(40~70)%[11]。物體由于溫度的變化會出現熱脹冷縮的現象,而衡量一種材料或物體的這種現象通常用熱膨脹系數來描述。熱膨脹系數受多種因素的影響,呈較強的非線性關系,且沒有精確的數學模型進行描述,導致熱膨脹系數選擇多以經驗值為準[12]。通過蜂群算法的強大尋優能力,提出一種新的優化策略,通過對熱膨脹系數的優化,并提出了改進人工蜂群算法的電主軸熱變形模型,對電主軸的熱變形進行研究。
根據標準蜂群算法的描述,在初始化階段采用如下(1)公式隨機產生初始解;

式中:xi,j—初始解,xmin,j,xmax,j分別表示解空間的下限和上限;rand—[-1,1]的隨機數。
鄰域搜索階段,采蜜蜂根據記憶信息按如下式(2)進行鄰域搜索;

式中:xi,j—舊的蜜源;vi,j—鄰域搜索后新的蜜源,i,k∈(1,2,…,N),j∈(1,2,…,D),但i≠k。
根據上述描述,在初始化階段的初始解是隨機產生,不能保證初始解均勻分布在解空間,影響解的質量,由于種群多樣性的不足,算法易陷入局部最優。在整個鄰域搜索階段,均未有全局最優值參與其中,這樣算法在全局最優值附近的搜索能力不足,導致算法收斂速度較慢。同時,算法的整個尋優過程中,并未設置環境檢測機制,算法不能及時發現尋優過程中尋優對象或目標函數是否已經發生變化,導致算法不能及時改變搜索方向,造成算法搜索效率低、尋優效果不明顯。正是這種缺陷極大的限制了算法應用于動態優化問題。

圖1 人工蜂群算法改進策略圖Fig.1 Improved Strategy of Artificial Bee Colony Algorithm
針對上述算法易陷入局部最優、收斂速度慢、動態尋優差的問題,提出了一種新的改進策略,如圖1所示。采用反學習初始化種群,通過尋找初始解的反向解,使初始種群增加1倍,初始解均勻分布在解空間;將全局最優值引入鄰域搜索公式,增強全局最優值附近的搜索能力,加快全局收斂速度;采用案例推理技術,在新的搜索過程中通過與案例庫進行比較,實時調整搜索方向,有效應對搜索環境的變化,加強算法的動態尋優能力。
在初始化階段由式(1)產生初始解,為了增加初始種群的多樣性,采用反學習方法,通過式(3)尋找初始解的反向解,使初始解增加一倍均勻分布在解空間。

式中:oxi,j—初始解的反向解。
鄰域搜索階段,采蜜蜂按照式(2)進行鄰域搜索,為了增加全局最優值附近的搜索能力,采用式(4)進行鄰域搜索。

式中:β—[0,1.5]之間的隨機數;—全局最優解;—產生的新解;cr—交叉系數。
在適應環境因素,加強動態尋優方面,引入了案例推理技術,通過與案例庫進行比較,實時調整搜索方向,有效應對環境變化。
根據人工蜂群算法的改進策略圖,結合如圖2所示的實現流程,改進人工蜂群算法(CBRABC算法)的實現步驟如下;
(1)種群1初始化參數(種群規模,限制搜索次數,最大迭代次數、禁忌長度等)。
(2)種群1在其范圍內按照式(1)隨機產生初始解,帶入適應度函數,計算其適應度值,更新禁忌表1。
(3)采蜜蜂根據初始解按照式(2)鄰域搜索,產生新的解,并計算其適應度值,根據貪婪原則,將適應度值較大的解作為當前最好解,將搜索過的解存入禁忌表T1。
(4)觀察蜂根據采蜜蜂分享的蜜源信息,根據如下公式進行輪盤賭選擇,計算跟隨概率Pi。

(5)觀察蜂根據跟隨概率Pi選擇相應的蜜源,在其蜜源附近根據式(2)進行鄰域搜索,看其解是否在禁忌表T1中,若不在,計算其適應度值,根據貪婪原則,保留適應度值較大的解。若存在于禁忌表T1,則重新進行鄰域搜索。
(6)種群1判斷當前解是否經過limit次未更新的解,若存在這樣的解,則將該解存入禁忌表T2,根據(1)公式在搜索空間內隨機尋找新的食物源;使搜索的食物源不在禁忌表T1和T2中,更新禁忌表T1。T1和T2組合成為案例庫。
(7)種群2初始化參數
(8)種群2按照式(1)產生初始解,并根據式(3)產生初始解的反向解。與(1)產生的初始解合并,選擇適應度最好的N個解作為初始化種群。
(9)種群2按式(4)進行鄰域搜索,與案例庫進行比較是否出現相似解。如出現重新進行鄰域搜索。
為了測試提出的改進人工蜂群算法(CBRABC)的性能,選取了10個測試函數進行測試,如表1所示。f1-f6為基本函數,來測試算法的靜態特性,Sphere、Rosenbrock和Schwefel為單峰函數,Rastrigin、Ackley和Griewank為多峰函數。f7-f10為偏移函數,來測試算法的動態特性,z=x-o,從CEC2005測試集中選出,其全局最優不為0。并與標準人工蜂群算法的測試結果進行比較。仿真中選取初始種群數40,最大迭代次數500,測試F3函數時,最大迭代次數為2000,限制搜索次數50,交叉系數0.5,維數20,禁忌表長度T1=50。

表1 測試函數Tab.1 Test Functions
測試結果如表2所示,測試收斂時精度為1×10-3,F1、F4收斂精度為1×10-4,F7-F10的收斂精度以最優值為準。例如,表中2.68e-8表示2.68×10-8,以此類推。×表示達到最大迭代次數時未達到收斂精度要求,加粗字體為對比的較優數據,每次結果由10次實驗平均所得。改進人工蜂群算法(CBRABC)在平均值和標準差比標準蜂群算法(ABC)更好,說明算法在提高優化精度的同時穩定性較好。在總迭代次數為500的情況下,達到優化精度時,算法的迭代次數減少了(50~80)次左右,而函數F3迭代次數減少了287次,通過數據分析,CBRABC算法在達到收斂精度時,迭代次數減少約占總迭代次數的(10~16)%左右,雖然在每次迭代時間上略差于ABC算法,但總體差距不大。F5函數在迭代次數完成之后,未達到收斂精度要求,但其優化精度也有了大幅度提高,說明CBRABC優化性能取得了不錯的效果。F7-F10函數在各方面性能均有了提高,說明改進的算法在適應環境因素方面有了提高,加強了動態尋優能力。

表2 測試結果Tab.2 Test Results
改進人工蜂群算法與標準人工蜂群算法的基本測試函數優化結果對比圖,如圖2所示。CBRABC較ABC算法在優化精度和收斂速度方面有了大幅度提升,說明算法很好的避免了陷入局部最優,加快了收斂速度,算法更能適應環境因素,加快了動態尋優能力。


圖2 測試函數優化結果對比圖Fig.2 Comparison Chart of Test Function Optimization Results
在機械加工中,隨著切削、磨削等進行,不可避免的在零件內部產生熱,引發溫度場變化,最終產生熱位移[13]。文獻[14]主軸徑向熱變形機理模型如下;
結構優化是在滿足剛度、強度、可制造性、穩定性等性能要求下,通過對結構的尺寸、形狀或者拓撲進行優化,從而實現質量最輕、造價最低等目標的最優[3].從國內外研究可以看出,現階段CAD、CAE和CAM貫穿優化設計,首先利用CAD軟件進行三維幾何模型的建立(常用的CAD軟件有CATIA、UG、Pro-E、Solidworks等),然后將已得到的三維模型導入CAE軟件(Hypermesh、Ansys等),對輕量化設計的車身進行靜強度、疲勞和碰撞分析[4],然后根據分析結果進行優化.結構優化的流程如圖1所示.

式中:ur—徑向熱變形;E—材料彈性模量;μ—材料的泊松比;α—材料的線膨脹系數;β=αE(1-2μ);T—溫度。
可以看出徑向的變形量受溫度T、熱膨脹系數α等多種參數的影響,作為影響電主軸熱變形的關鍵系數-熱膨脹系數的精確確定十分關鍵。在實際生產過程中,材料的熱膨脹系數隨著工況的變化而變化,很難找到一個準確的熱膨脹系數。因此,熱膨脹系數過去大多以經驗值為準,這樣不可避免的導致熱變形量不準確。因此,引入蜂群算法對這一目標進行優化,將蜂群算法不依賴精確數學模型就可以優化目標函數,且優化效果良好的優點加以利用,用于解決熱膨脹系數難以求解這一問題。
工業實驗結果[15]表明熱膨脹系數不是一個固定值,而是一個隨著轉速、環境溫度改變而變化的變化值。如圖3所示,提出了基于改進人工蜂群算法的熱膨脹系數優化的優化策略,使熱膨脹系數隨變化工況而變化,實現對變化工況的自適應。其中,n代表主軸轉速,T代表環境溫度,α1代表轉子與主軸間的熱膨脹系數,α2代表前軸承與主軸間的熱膨脹系數,α3表示后軸承與主軸間的熱膨脹系數。

圖3 基于改進人工蜂群算法的熱膨脹系數優化策略圖Fig.3 Optimization Strategy Chart of Thermal Expansion Coefficient Based on Improved Artificial Bee Colony Algorithm
針對所要優化的三個熱膨脹系數,設定算法的目標函數為fobj,適應度函數為fitobj,適應度函數是目標函數加一的倒數,兩者的關系,如式(7)和式(8)所示。

式中:XR—實驗測得的熱變形值;XS—有限元仿真的熱變形值。
因此,采用提出的人工蜂群改進算法,計算在不同轉速和環境溫度下的熱膨脹系數的最優值。如圖4所示,在基于改進人工蜂群算法的熱變形模型中,將優化后的熱膨脹系數代入到電主軸熱變形的有限元仿真模型中,最終可以計算電主軸的熱變形量。
(1)改進人工蜂群算法的初始化。
(2)在搜索空間生成熱膨脹系數初始值。
(3)根據式(6)建立電主軸的熱變形有限元仿真模型,將初始條件、邊界條件輸入到電主軸有限元仿真模型。
(4)將熱膨脹系數,加載到熱變形有限元仿真模型,求得當前情況下的熱變形量,根據式(8)評估熱膨脹系數適應度值,判斷是否滿足終止條件,fitobj>0.535。
(5)若不滿足終止條件,在當前最優熱膨脹系數附近根據式(4)進行鄰域搜索,返回(4)。
(6)若同一熱膨脹系數停留次數達到最大限制搜索次數,則按式(1)重新初始化熱膨脹系數,返回(4)。
(7)判斷是否滿足終止條件,若滿足,則輸出一組最優熱膨脹系數值。否則,返回(4),繼續運行。
(8)將最優熱膨脹系數加載到熱變形有限元仿真模型,計算出熱變形量。

圖4 基于改進人工蜂群算法的熱變形模型Fig.4 Thermal Deformation Model Based on Improved Artificial Bee Colony Algorithm
為了驗證提出算法的有效性,采用100MD60Y4電主軸系統為被控對象,采用空載進行實驗分析,通過變頻器來控制電主軸的速度變化,模擬電主軸的實際運行狀態。本實驗系統的組成包括水冷系統、油氣潤滑系統以及電主軸數據采集系統。電主軸測試系統設備連接圖如圖5所示,數據采集系統包括工作平臺、高性能電容位移傳感器(C8-2.2-2.2)、磁性熱敏電阻溫度傳感器、高精度標準測試桿、數據采集儀及分析軟件。采用主軸回轉誤差分析儀記錄實驗數據,包括磁性熱敏電阻測量的主軸外部溫度和高性能電容位移傳感器測量的標準桿X、Y、Z方向的相對位移。

圖5 電主軸測試系統設備連接圖Fig.5 Connection Diagram of Electric Spindle Test System Equipment
電主軸熱變形實驗采用空載實驗,在其相關參數設定的條件下,通過改變電流頻率測得轉速為2000r/min,4000r/min,6000r/min,8000r/min,10000r/min,12000r/min下的熱變形數據。將進氣壓和進油量等參數固化,設定進氣壓力為0.2MPa,進油量為15.6mm3/min。以60min為一組實驗,每2s采集一組實驗數據。停機6小時后,待主軸溫度恢復到室溫方可進行下一次實驗。電主軸外部溫度的采集采用磁性熱敏電阻來測量,選取7個磁性熱敏電阻來測量電主軸不同轉速和電主軸系統不同位置的外部溫度,其傳感器分別分布在平臺、主軸前段、主軸中部、前軸承和后軸承,利用主軸回轉誤差分析儀收集實驗數據。對于熱變形量的測量,通過精密標準桿進行三軸測量,實驗中將高性能電容位移傳感器分別安裝在標準桿的X、Y、Z三個方向,測量三個方向的相對位移。
主要對轉子與主軸間的熱膨脹系數、前軸承與主軸間的熱膨脹系數以及后軸承與主軸間的熱膨脹系數進行優化,三處熱膨脹系數的經驗值分別為13、12.3、12.3。提出的改進蜂群算法參數配置,如表3所示。

表3 改進蜂群算法的參數配置Tab.3 Parameter Configuration of Improved Bee Colony Algorithm
以轉速n=2000r/min,環境溫度T=16.34℃為例進行實驗研究。

圖6 fobj和fitobj曲線變化圖Fig.6 fobj and fitobj Curve Change Diagram

圖7 α1、α2、α3優化曲線圖Fig.7α1、α2、α3 Optimization Graph
改進的人工蜂群算法在迭代尋優過程中目標函數fobj和適應度函數fitobj的變化曲線,如圖6所示。三處熱膨脹系數的優化曲線,如圖7所示。根據圖7可以看出,熱膨脹系數在達到80次時已經收斂,α1、α2、α3保持不變,圖7中迭代次數為80次時,適應度函數值為0.555,當適應度值大于0.535時,熱膨脹系數優化滿足停止條件,說明此時的熱膨脹系數為最優值。因此優化后的熱膨脹系數α1、α2、α3分別為13.14、12.26、12.24。將經驗值和優化后的熱膨脹系數加載到電主軸熱變形有限元仿真模型,得到X、Y、Z三個方向的熱變形曲線,如圖8所示。實驗結果比較表,如表4所示。表中給出了基于經驗值和優化后X、Y、Z三個方向的熱膨脹系數,以及電主軸實際測量、經驗值測量、優化值測量三個方向熱變形的對比結果。

圖8 不同熱膨脹系數下熱變形對比圖Fig.8 Comparison of Thermal Deformation Under Different Thermal Expansion Coefficients

表4 轉速n=2000r/min下實驗結果對比表Tab.4 Comparison Table of Experimental Results at Rotational Speed n=2000r/min
根據表4可以看出,基于經驗值得到的熱變形量與實際測得的熱變形量在X、Y、Z三個方向的誤差分別為0.17μm、0.47μm、1.48μm,基于這里方法得到的熱變形量與實際測得的熱變形量在X、Y、Z三個方向的誤差分別為0.02μm、0.13μm、0.56μm。由圖8所示的曲線可以看出,基于這里方法得到的電主軸熱變形曲線比基于經驗值得到的電主軸熱變形曲線更接近實測值。
對標準人工蜂群算法進行了改進,在避免陷入局部最優,加快收斂速度,增強動態尋優方面取得了預期效果。以往熱膨脹系數以經驗值為準,現在采用提出的基于改進人工蜂群算法的熱膨脹系數優化方法更準確的確定熱膨脹系數。結合尋優后的熱膨脹系數,以及溫度場,計算電主軸X、Y、Z三個方向的熱變形量相較于基于熱膨脹系數經驗值的熱變形量提高了0.15μm、0.34μm、0.92μm,提高了電主軸熱變形的計算精度。