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