国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進(jìn)粒子群算法的自由曲面輪廓度評(píng)定

2021-11-03 07:26:30盛步云
關(guān)鍵詞:面片天牛輪廓

萬 潤,王 琳,盛步云

(武漢理工大學(xué) a.機(jī)電工程學(xué)院;b.湖北省數(shù)字制造重點(diǎn)實(shí)驗(yàn)室,武漢 430070)

0 引言

近年來,隨著制造業(yè)的發(fā)展,自由曲面零件越來越廣泛應(yīng)用于汽車、飛機(jī)、大型船舶等工業(yè)領(lǐng)域。曲面的加工質(zhì)量直接關(guān)系到產(chǎn)品的質(zhì)量和使用壽命,因此對(duì)自由曲面零件進(jìn)行高效率與高精度的檢測(cè)和輪廓度誤差評(píng)定有著重要的研究意義[1]。

對(duì)于復(fù)雜曲面輪廓度的評(píng)定,依據(jù)算法原理主要可以分為二類,一類是基于最小二乘原理,最具代表性的是在1992年提出的最近點(diǎn)迭代算法[2],常用于曲面定位問題中。一類是基于最小條件的最小區(qū)域法,要求包容全部測(cè)點(diǎn)的理論曲面等距面的距離最小,由于一般曲面的表達(dá)式未知,且計(jì)算量復(fù)雜,多采用啟發(fā)式優(yōu)化算法解決這類非線性優(yōu)化問題,如遺傳算法、粒子群算法[3-4]等, 但遺傳算法在進(jìn)行輪廓度誤差評(píng)定時(shí),由于局部搜索性能較差,容易產(chǎn)生早熟收斂的問題,而且在進(jìn)化后期搜索效率不高,在解決大規(guī)模計(jì)算量問題上比較費(fèi)時(shí);而粒子群算法在運(yùn)算后期則容易陷入局部最優(yōu)。

在確定最小包容區(qū)域過程中,測(cè)量點(diǎn)到曲面的距離計(jì)算也是其中一個(gè)重要的問題[5-6],文獻(xiàn)[5]用網(wǎng)格劃分曲面,通過不斷細(xì)分網(wǎng)格來逼近測(cè)點(diǎn)到曲面的實(shí)際距離,但必須已知曲面的函數(shù)表達(dá)式且計(jì)算過程復(fù)雜,難以平衡計(jì)算精度和效率,文獻(xiàn)[6]把空間點(diǎn)到自由曲面距離轉(zhuǎn)化為點(diǎn)到STL模型的有向距離,但沒有考慮到出現(xiàn)狹長三角面片的情況,存在適應(yīng)性缺陷。

為解決以上問題,本文采用一種基于天牛須搜索的粒子群優(yōu)化算法,以測(cè)點(diǎn)集與理論輪廓面達(dá)到最佳匹配為目標(biāo),尋找一組平移、旋轉(zhuǎn)變換矩陣來確定理論曲面的最小包容區(qū)域,并且針對(duì)出現(xiàn)狹長三角面片的情況做了優(yōu)化處理,進(jìn)一步簡化了測(cè)點(diǎn)投影點(diǎn)與三角面片關(guān)系判定條件,提高了算法的實(shí)用性和適應(yīng)性。

1 自由曲面輪廓度評(píng)定模型的建立

1.1 曲面輪廓度誤差的定義及關(guān)鍵步驟

根據(jù)GB/T 1958-2004,輪廓度評(píng)定要求滿足最小條件原則,即所有測(cè)量點(diǎn)均位于上下兩包絡(luò)面邊界所限定的包容區(qū)域內(nèi),且包容區(qū)域的寬度或直徑為最小,其誤差值是包容被測(cè)曲面輪廓且距理論曲面輪廓法向距離最小的兩曲面間的寬度。

輪廓度評(píng)定一般需要解決兩個(gè)關(guān)鍵步驟的問題,一是計(jì)算測(cè)點(diǎn)到復(fù)雜理論曲面的最小距離,二是建立復(fù)雜曲面輪廓度誤差評(píng)定的數(shù)學(xué)模型并求解。針對(duì)步驟一,將曲面CAD模型轉(zhuǎn)換為STL模型,測(cè)點(diǎn)到曲面的最小距離就簡化為尋找距離測(cè)點(diǎn)最近的三角面片的問題;針對(duì)步驟二,根據(jù)最小條件原則和齊次坐標(biāo)變換理論建立相應(yīng)的輪廓度評(píng)定數(shù)學(xué)模型,并應(yīng)用基于天牛須的改進(jìn)粒子群算法求解。

圖1 曲面輪廓度誤差示意圖

1.2 點(diǎn)到自由曲面STL模型最短距離計(jì)算

STL模型是通過一系列三角面片來逼近CAD模型的,其數(shù)據(jù)文件主要包含二進(jìn)制和文本兩種格式,主要描述三角面片的頂點(diǎn)坐標(biāo)數(shù)據(jù)信息和單位法矢量數(shù)據(jù)信息[7]。文獻(xiàn)[6]通過判斷測(cè)點(diǎn)投影點(diǎn)與STL模型三角面片的位置關(guān)系,來求取其到曲面的最短距離,相較于傳統(tǒng)的需要已知曲面表達(dá)式的分割逼近法適用性更高。但存在兩點(diǎn)不足,一是投影點(diǎn)與三角面片位置關(guān)系的判斷條件不夠簡化,二是如果STL模型中存在狹長的三角面片,則以測(cè)點(diǎn)到三角面片頂點(diǎn)的最近距離為擇優(yōu)目標(biāo)篩選出的三角面片集不一定包含距離測(cè)點(diǎn)最近的三角面片,導(dǎo)致算法失效。針對(duì)上述不足一,采取向量運(yùn)算代替相對(duì)繁瑣的角度量計(jì)算,將投影點(diǎn)與三角面片關(guān)系整體分為三類情形來判斷,針對(duì)不足二,選擇測(cè)點(diǎn)到三角面片頂點(diǎn)和中心點(diǎn)兩者之間的最小距離,綜合篩選三角面片集。

計(jì)算測(cè)點(diǎn)到自由曲面距離的具體步驟如下:

步驟1:計(jì)算測(cè)點(diǎn)Pi(xi,yi,zi)到每個(gè)三角面片頂點(diǎn)及中心點(diǎn)的距離,標(biāo)記距離最近點(diǎn)為Qi點(diǎn)。

步驟2:如果點(diǎn)Q為三角面片頂點(diǎn),則搜索以Q點(diǎn)為頂點(diǎn)的所有的三角面片并放入集合S內(nèi);如果點(diǎn)Q為三角面片中心點(diǎn),則搜索與該三角面片共頂點(diǎn)的所有三角面片并放入集合S內(nèi)。

步驟3:分別計(jì)算測(cè)點(diǎn)Pi到集合S內(nèi)三角面片的距離,依據(jù)測(cè)點(diǎn)投影的位置,測(cè)點(diǎn)到三角面片的距離計(jì)算有以下三種情形:

情形1:投影點(diǎn)Sp在三角面片內(nèi)部,此時(shí)測(cè)點(diǎn)P到三角面片的最短距離就是測(cè)點(diǎn)P到投影點(diǎn)Sp的距離。

情形2:投影點(diǎn)Sp在三角面片外部,但處于三角形某一邊延長線與另一邊延長線的區(qū)域范圍內(nèi),此時(shí)最短距離就是測(cè)點(diǎn)到這兩條邊的共頂點(diǎn)的距離。

情形3:測(cè)點(diǎn)投影在三角面片外部,但處于三角形某一邊與另一邊延長線的區(qū)域范圍內(nèi),此時(shí)測(cè)點(diǎn)P到三角面片的最短距離就是測(cè)點(diǎn)到三角面片上該邊的距離。假設(shè)投影點(diǎn)Sp的位置不滿足上述兩者的情形,則必然滿足情形3,只需計(jì)算測(cè)點(diǎn)P到三角面片三條邊的距離,其中最小值即為測(cè)點(diǎn)到該三角面片的最短距離。

按照以上3步計(jì)算點(diǎn)到所有三角面片的距離,以最小值作為點(diǎn)到曲面距離。

(a) 情形1 (b) 情形2 (c) 情形3圖2 投影點(diǎn)和三角面片關(guān)系示意圖

1.3 曲面輪廓度評(píng)定的數(shù)學(xué)模型

由于在實(shí)際測(cè)量過程中存在系統(tǒng)誤差,測(cè)量坐標(biāo)系與設(shè)計(jì)坐標(biāo)系難以完全重合,測(cè)量曲面相對(duì)于理論曲面會(huì)有一定的偏移與擾動(dòng)。依據(jù)最小條件原則,只有當(dāng)測(cè)點(diǎn)集與理論輪廓面達(dá)到最佳匹配時(shí),才能使包容所有測(cè)量點(diǎn)的兩理論等距曲面之間的距離最小,因此必須對(duì)測(cè)點(diǎn)集進(jìn)行剛性平移、旋轉(zhuǎn)坐標(biāo)變換,使得最大變動(dòng)量最小化。設(shè)實(shí)測(cè)曲面上的測(cè)點(diǎn)為pi(xi,yi,zi),i=1,2,…,n,其中n為測(cè)量點(diǎn)數(shù)量,其坐標(biāo)變換矩陣為:

T=Trans(δx,δy,δz)Rot(x,α)Rot(y,β)Rot(z,γ)

(1)

式中,平移變換矩陣為:

(2)

旋轉(zhuǎn)變換矩陣為:

(3)

(4)

(5)

其中,δx,δy,δz為實(shí)際加工曲面沿理論曲面坐標(biāo)系x,y,z軸的平移量,α,β,γ為實(shí)測(cè)曲面繞理論曲面坐標(biāo)系x,y,z軸的旋轉(zhuǎn)量。

測(cè)量點(diǎn)經(jīng)過坐標(biāo)變換后的新坐標(biāo)為:

(6)

則最小區(qū)域法評(píng)定復(fù)雜曲面輪廓度誤差的數(shù)學(xué)模型為:

f=min{max[2di(δx,δy,δz,α,β,γ)],i=1,2,3,…,n}

(7)

其中,di(δx,δy,δz,α,β,γ)為測(cè)點(diǎn)到理論設(shè)計(jì)曲面的距離,由模型可以看出,輪廓度誤差的評(píng)定過程實(shí)質(zhì)上是一個(gè)多元非線性尋優(yōu)過程,要求尋找一組最優(yōu)的變換參數(shù),使所有測(cè)點(diǎn)到曲面的最大距離最小。

2 基于天牛須搜索的粒子群優(yōu)化算法

2.1 BAS算法(天牛須)

天牛須搜索算法是2017年提出的一種高效的智能優(yōu)化算法[8],當(dāng)甲蟲捕食或?qū)ふ耀C物時(shí),它會(huì)用兩只觸角隨機(jī)地探索附近的區(qū)域,當(dāng)位于一側(cè)的觸角探測(cè)到高濃度的氣味時(shí),甲蟲就會(huì)轉(zhuǎn)向同一側(cè),否則,它就會(huì)轉(zhuǎn)向另一側(cè)。雙觸角甲蟲的搜索行為可以與待優(yōu)化的目標(biāo)函相關(guān)聯(lián),從而形成新的優(yōu)化算法。和遺傳算法、粒子群算法等智能算法類似,相比較傳統(tǒng)的微分類優(yōu)化算法,天牛須算法同樣可以在缺乏具體的函數(shù)表達(dá)式和最快下降方向等信息基礎(chǔ)上實(shí)現(xiàn)高效尋優(yōu)與求解。具體的算法流程如下:

(1)假設(shè)天牛可以隨機(jī)向任何方向前進(jìn),隨機(jī)生成方向向量,標(biāo)準(zhǔn)化:

(8)

其中,n為待優(yōu)化參數(shù)的維度。

(2)計(jì)算天牛左右須的坐標(biāo)也即左右觸角的位置:

xtr=xt+dtb
xtl=xt-dtb

(9)

其中,xt為t時(shí)刻天牛的位置,dt是t時(shí)刻天牛質(zhì)心到觸須的距離,xtl為第t次迭代時(shí)的左側(cè)觸須坐標(biāo),xtr為第t次迭代時(shí)的右側(cè)觸須坐標(biāo)。

(3)根據(jù)左右兩須對(duì)應(yīng)的函數(shù)值,決定天牛下一時(shí)刻移動(dòng)位置:

xt+1=xt+δtbsign(f(xtr)-f(xtl))

(10)

δt為t時(shí)刻的步長,f為待優(yōu)化目標(biāo)函數(shù),sign代表符號(hào)功能。

(4)步長與搜索距離更新:

dt=ηddt-1+d0
δt=ηδδt-1

(11)

ηd和ηδ分別為搜索距離和步長的更新衰減系數(shù),d0表示兩觸角之間的初始距離。

2.2 基于天牛須搜索的改進(jìn)粒子群優(yōu)化算法

粒子群算法雖然在收斂速度上具有優(yōu)勢(shì),但側(cè)重于種群和粒子本身的歷史經(jīng)驗(yàn)對(duì)每一個(gè)粒子的影響,而忽略了在搜索過程中粒子自身對(duì)空間環(huán)境的判斷,也無法對(duì)粒子的速度進(jìn)行動(dòng)態(tài)的調(diào)節(jié),容易陷入局部最優(yōu)。針對(duì)上述問題,可以選擇引入天牛須的思想提高粒子的自主尋優(yōu)和全局搜索能力[9-10]。

相較于標(biāo)準(zhǔn)粒子群算法,基于天牛須搜索的改進(jìn)粒子群算法中的每個(gè)粒子就相當(dāng)于BAS中的一只天牛,雖然其初始位置和速度不變,但在每次的迭代過程中,天牛位置的更新規(guī)則不再只由歷史最優(yōu)值和當(dāng)前全局最優(yōu)值所決定,而是引入天牛須搜索的思想,添加了天牛自身對(duì)周圍環(huán)境的判斷。

(1)位置更新時(shí),按照PSO和BAS的方式各自更新后加權(quán)得到新的位置。也就是,利用了BAS的觸須方向和步長,同時(shí)也利用了粒子的速度:

(12)

(13)

曲面輪廓度評(píng)定的具體過程如下:

(1)初始化參數(shù),設(shè)置種群規(guī)模為N,最大迭代次數(shù)n,參數(shù)維度m,位置更新權(quán)重λ,初始步長d0,觸須之間長度初始值d1。

(2)隨機(jī)初始化天牛的位置x和速度v,確定適應(yīng)度函數(shù),獲得天牛群體的個(gè)體最優(yōu)值和全局最優(yōu)值。

(3)根據(jù)式(12)和式(13)計(jì)算天牛的下一步位置與速度。

(4)更新天牛搜索步長和兩觸須之間的長度,并計(jì)算更新后的天牛群的個(gè)體最優(yōu)值和全局最優(yōu)值。

(5)判斷是否滿足迭代終止條件,若滿足,則返回當(dāng)前全局最優(yōu)值,否則返回步驟(3)繼續(xù)搜索,直至達(dá)到最大迭代次數(shù)。

3 仿真分析

為了測(cè)試改進(jìn)后的粒子群算法對(duì)比標(biāo)準(zhǔn)粒子群在評(píng)定曲面輪廓度上是否有更高的準(zhǔn)確性,選用自由曲面一進(jìn)行仿真實(shí)驗(yàn),該STL模型由242個(gè)三角面片和165個(gè)頂點(diǎn)構(gòu)成。在曲面上均勻選取400個(gè)理論測(cè)點(diǎn),考慮到存在的系統(tǒng)誤差,將理論測(cè)點(diǎn)沿x,y,z軸平移0.1 mm、0.3 mm、-0.6 mm,逆時(shí)針旋轉(zhuǎn)-0.05 rad、-0.04 rad、0.07 rad,并添加服從正態(tài)分布N(0,0.04)的隨機(jī)性矩陣作為加工誤差,得到模擬實(shí)測(cè)點(diǎn)集。即:

(14)

其中,

設(shè)計(jì)曲面和仿真測(cè)點(diǎn)分布如圖3a所示,圖3b為改進(jìn)后的粒子群算法完成模型求解后重新定位的測(cè)點(diǎn)分布,6個(gè)最優(yōu)變換參數(shù)結(jié)果如表1所示。

(a) 定位前的測(cè)點(diǎn)分布

(b) 定位后的測(cè)點(diǎn)分布圖3 自由曲面一仿真測(cè)點(diǎn)定位前后分布圖

表1 自由曲面一定位的6個(gè)參數(shù)

選用自由曲面二進(jìn)行仿真實(shí)驗(yàn),該STL模型由1776個(gè)三角面片,954個(gè)頂點(diǎn)構(gòu)成。在曲面上隨機(jī)選取400個(gè)理論點(diǎn),添加系統(tǒng)誤差e=[0.1,0.2,-0.1,-0.01,-0.02,0.02],同樣添加服從正態(tài)分布N(0,0.04)的隨機(jī)性矩陣作為加工誤差,得到模擬實(shí)測(cè)點(diǎn)集合。設(shè)計(jì)曲面和仿真測(cè)點(diǎn)分布如圖4所示,圖4b為改進(jìn)后的粒子群算法完成模型求解后重新定位的測(cè)點(diǎn)分布,6個(gè)最優(yōu)變換參數(shù)結(jié)果如表2所示。

(a) 定位前的測(cè)點(diǎn)分布

(b) 定位后的測(cè)點(diǎn)分布圖4 自由曲面二仿真測(cè)點(diǎn)定位前后分布圖

表2 自由曲面二定位的6個(gè)參數(shù)

根據(jù)測(cè)點(diǎn)到曲面的距離模型計(jì)算輪廓度誤差,對(duì)于自由曲面一,改進(jìn)后的粒子群算法和粒子群算法求得的輪廓度誤差分別為1.130 8 mm和 1.136 7 mm。如果是均勻提取100個(gè)點(diǎn)作為理論測(cè)點(diǎn),則計(jì)算的輪廓度誤差分別是0.951 4 mm和1.036 1 mm。對(duì)于自由曲面二,改進(jìn)后的粒子群算法和粒子群算法求得的輪廓度誤差分別為1.226 1 mm和 1.262 0 mm。由以上兩個(gè)實(shí)驗(yàn)可知基于天牛須搜索的改進(jìn)粒子群評(píng)定的曲面輪廓度結(jié)果更加精確。

4 結(jié)束語

為了提高曲面輪廓度評(píng)定結(jié)果的準(zhǔn)確性,建立了輪廓度誤差評(píng)定的數(shù)學(xué)模型,并采用引入天牛搜索思想的改進(jìn)粒子群算法進(jìn)行求解。將測(cè)點(diǎn)到自由曲面的距離轉(zhuǎn)化成測(cè)點(diǎn)到STL模型的距離,并對(duì)于存在狹長三角面片的情況作了補(bǔ)充處理,同時(shí)也簡化了測(cè)點(diǎn)投影點(diǎn)與三角面片關(guān)系的判斷條件。通過仿真實(shí)驗(yàn)驗(yàn)證與對(duì)比,采用基于天牛須搜索的粒子群算法相對(duì)于標(biāo)準(zhǔn)粒子群可以有效提高曲面輪廓度誤差的評(píng)定精度。

DOI:10.5430/ijrc.V1n1p1.

猜你喜歡
面片天牛輪廓
輪廓錯(cuò)覺
天牛到底有多牛
基于實(shí)時(shí)輪廓誤差估算的數(shù)控系統(tǒng)輪廓控制
初次來壓期間不同頂板對(duì)工作面片幫影響研究
黑黃花天牛
巨型昆蟲——天牛
甜面片里的人生
幸福家庭(2016年3期)2016-04-05 03:47:08
天牛
在線學(xué)習(xí)機(jī)制下的Snake輪廓跟蹤
青海尕面片
和静县| 宁国市| 北川| 龙游县| 合肥市| 迁西县| 田东县| 汪清县| 长寿区| 翁牛特旗| 上林县| 思南县| 彰化市| 青岛市| 武冈市| 大埔区| 玉田县| 徐汇区| 余姚市| 盐城市| 抚顺县| 定南县| 合肥市| 诸暨市| 乳源| 岳池县| 余干县| 化隆| 神农架林区| 英德市| 松江区| 江油市| 宿迁市| 台中市| 安乡县| 吉隆县| 锦州市| 信丰县| 新丰县| 马关县| 柳州市|