楊凱

摘 要:針對現代工業生產中圓形零件測量精度要求高的特點,提出采用人工蜂群算法實現圓參數測量。利用人工蜂群算法全局搜索模式設計了圓形零件被測點數據的處理方法,并根據圓方程構造了目標函數。多次實驗結果表明,該方法能夠收斂到全局最優解,其計算結果的精度非常高,收斂速度快,魯棒性好,適用于各種測量機的實時數據處理系統。
關鍵詞:蜂群算法;圓參數測量;全局搜索;最優化問題;目標函數
中圖分類號:TP181
1引言
隨著現代工業的發展,制造業對零件的加工和裝配精度要求越來越高,而測量精度的高低將直接影響整個系統的質量及使用壽命。圓形零件作為機械中最為常見的零件之一,其測量方法一直是人們討論的熱點。如何處理測量數據是能否真實反映被測輪廓的關鍵。因此,研究一種簡單、快速、魯棒性強、計算結果穩定的數據處理算法是十分必要的。
蜂群算法(Bee Colony Optimization,BCO)是受到自然界的蜜蜂行為啟發而提出的一種新穎的元啟發式優化算法。Seely于1995年最先提出了蜂群的自組織模擬模型[1],2005年,Karaboga.D將蜂群算法成功應用在函數的數值優化問題上[2],提出了比較系統的人工蜂群算法( Artificial Bee Colony algorithm,ABC)。人工蜂群算法是一種較好的全局優化算法,具有設置參數少、計算簡單、收斂速度快、魯棒性好的優點。針對圓形零件的特點,提出一種基于人工蜂群算法的數據處理方法。該方法簡單、魯棒性強、精度高,不僅能較快地收斂到全局最優解,而且計算結果穩定。
2人工蜂群算法[3-4]
在人工蜂群算法智能模型中共包含三種角色:雇傭蜂、觀察蜂和偵查蜂;它們有兩種最為基本的行為模型:當一只蜜蜂找到自己認為豐富的食物源時,引領其他蜜蜂到食物源處;放棄一處食物源,尋找另一處食物源代替。
一開始,蜜蜂從蜂巢出發,由于此時的蜜蜂沒有先驗知識,所以身份都是偵察蜂,他們在蜂巢周圍進行隨機搜索。當蜜蜂搜索到食物源后便進行采蜜,并把食物源的相關信息儲存起來,以備與其他蜜蜂分享,此時蜜蜂的身份就是雇傭蜂。其余沒有進行采蜜的蜜蜂,就成為觀察蜂。每個雇傭蜂有一個確定的食物源,并在迭代中對食物源的鄰域進行搜索。在每次返回蜂巢后,雇傭蜂將食物源的信息傳遞給觀察蜂,觀察蜂將在不同的食物源中選擇一個作為目標,并進行搜索。若雇傭蜂在設定的搜索次數Limit內沒有獲得更好的食物源,便放棄該食物源。同時,雇傭蜂成為偵查蜂,并開始隨機搜索可行的新食物源。
3用人工蜂群算法求圓參數[5,6]
假設圓形零件輪廓上的被測點為 ,且被測點的分布大于半個圓周。其中,被測點的坐標最大值和最小值分別為:
人工蜂群算法求圓參數步驟如下表述:
(1)初始化蜂群規模n=100(雇傭蜂和觀察蜂各50),解為二維向量,分別代表圓心 可能的位置,取值范圍為: , ,迭代次數為:500,Limit為100。
(2)對圓心 進行目標函數構造。它的表達式為:
(1)
(3)將雇傭蜂放到每一個食物源上,計算食物源的收益度;
(2)
為第i個解的收益度,即對應食物源的豐富程度。
(4)在每一次迭代過程中,根據食物源的收益度信息,用轉輪盤選擇觀察蜂的去向;
(3)
食物源越豐富,觀察蜂選擇的概率 越大。
(5)由公式(4)更新食物源,再根據新舊食物源的收益度大小,確定下一次迭代的食物源位置。
(4)
其中 , ,k為隨機生成且 , 為 之間的隨機數。
(6)若某一個雇傭蜂所對應的食物源在Limit次循環過后,其收益度值沒有明顯的改進,則雇傭蜂將放棄該食物源,成為偵查蜂。
(7)檢測是否滿足終止條件,若否,則跳轉到(4),若是,則得到圓心 的最優值。
(8)將圓心 代入圓基本方程 中,求得半徑r。
4實驗仿真
本文采用人工蜂群算法對圓參數測量進行了大量的仿真實驗,表2為一組圓輪廓被測點的仿真數據,精度較高。計算結果(單位:mm):圓心位置為(0.097,0.043),圓半徑為25.047。
5結論
提出一種基于人工蜂群算法的圓參數測量方法。該方法發揮了人工蜂群算法全局搜索求最優解的優勢,測量精度高,魯棒性好,結果穩定,收斂速度極快,適用于各種測量機實時數據處理系統,并可以將其推廣應用于其它形狀零件的測量。
參考文獻:
[1]]Seeley T D. The Wisdom of the Hive[M]. Cambridge, MA: Harvard University Press, 1995: 102-113.
[2]Karaboga.D, An Idea Based On Honey Bee warm For Numerical Optimization[R]. Technical–Report -TR06, ErciyesUniversity,2005.
[3]胡中華,趙敏。基于人工蜂群算法的TSP仿真[J].北京理工大學學報,2009,29(11):978-982。
[4]康飛,李俊杰,許青,張運花。改進人工蜂群算法及其在反演分析中的應用[J]. 水電能源科學,2009,27(1):126-129。
[5]廖平,喻壽益。基于遺傳算法的圓的半徑測量[J].計量學報,2001,22(2),87-89。
[6]溫秀蘭,宋愛國。基于改進遺傳算法評定圓柱度誤差[J].計量學報,2004,25(2),115-118。