高朝祥 王 充
(四川化工職業(yè)技術(shù)學(xué)院,四川 瀘州 646005)
基于粒子群算法的曲柄滑塊機(jī)構(gòu)優(yōu)化設(shè)計(jì)
高朝祥 王 充
(四川化工職業(yè)技術(shù)學(xué)院,四川 瀘州 646005)
針對(duì)帶有約束條件曲柄滑塊機(jī)構(gòu)優(yōu)化設(shè)計(jì)問(wèn)題,提出將混合懲罰函數(shù)法與粒子群優(yōu)化原理相結(jié)合算法,使帶有約束條件問(wèn)題轉(zhuǎn)化為無(wú)約束優(yōu)化問(wèn)題,通過(guò)實(shí)例進(jìn)行測(cè)試,將其結(jié)果與常規(guī)優(yōu)化設(shè)計(jì)結(jié)果進(jìn)行比較,結(jié)果表明PSO算法在曲柄滑塊機(jī)構(gòu)優(yōu)化設(shè)計(jì)中具有實(shí)用性強(qiáng)、有求解準(zhǔn)確可靠等優(yōu)點(diǎn),是一種有效的求解方法。
曲柄滑塊機(jī)構(gòu);粒子群優(yōu)化;迭代;適應(yīng)值
傳統(tǒng)優(yōu)化設(shè)計(jì)問(wèn)題基本上都可歸結(jié)為帶有約束條件的函數(shù)的優(yōu)化問(wèn)題,許多算法都是基于梯度信息求解約束優(yōu)化問(wèn)題,只適用于目標(biāo)函數(shù)和約束條件可微的情況[1,2]。近年來(lái),模擬物理(自適應(yīng)隨即搜索法、模擬退火法)或生物(遺傳算法及進(jìn)化算法)等自然過(guò)程的智能化算法受到了很大的關(guān)注,其隨機(jī)性搜索的屬性使得該類方法在處理復(fù)雜問(wèn)題方面具有諸多優(yōu)勢(shì)[3]。但這些算法一般都具有收斂速度慢、易早熟和解約束問(wèn)題性能較差的缺點(diǎn)。
在曲柄滑塊運(yùn)動(dòng)機(jī)構(gòu)的設(shè)計(jì)中,粒子群算法具有較強(qiáng)的全局搜索能力,但存在局部搜索能力較差的缺陷,應(yīng)用中常常表現(xiàn)出收斂速度慢且存在過(guò)早收斂的問(wèn)題。有求解約束優(yōu)化問(wèn)題常用的方法是懲罰函數(shù)法?;旌蠎土P函數(shù)法是將內(nèi)點(diǎn)法和外點(diǎn)法結(jié)合起來(lái),處理具有等式約束和不等式約束的優(yōu)化方法。本研究提出求解約束優(yōu)化問(wèn)題的新粒子群算法,把粒子群算法和經(jīng)典最優(yōu)化算法混合懲罰函數(shù)法有機(jī)的結(jié)合,吸收兩者的優(yōu)點(diǎn),求解曲柄滑塊運(yùn)動(dòng)機(jī)構(gòu)最優(yōu)解。
曲柄滑塊機(jī)構(gòu)廣泛應(yīng)用于發(fā)動(dòng)機(jī)、氣體或液體壓縮機(jī)、物料傳送機(jī)械壓力機(jī)等機(jī)構(gòu)中,按其結(jié)構(gòu)主要分為對(duì)心和偏置兩大類型。
如圖1所示的曲柄滑塊機(jī)構(gòu),設(shè)計(jì)要求是希望滑塊在完成工藝行程段內(nèi),滑塊實(shí)際運(yùn)動(dòng)速度與平均速度v0波動(dòng)要最小,則滑塊C點(diǎn)的運(yùn)動(dòng)狀態(tài)與機(jī)構(gòu)的結(jié)構(gòu)和曲柄轉(zhuǎn)角等參數(shù)有關(guān),決定于曲柄長(zhǎng)度R,連桿長(zhǎng)度L和偏心距E,故設(shè)計(jì)變量可取:X= [R,L,E]T= [x1,x2,x3]T[4,5]。
圖1 曲柄滑塊機(jī)構(gòu)Figure 1 Slider-crank mechanism
由圖1可知:
式中:
v0—— 工藝行程段內(nèi)的平均速度,mm/s;
v(x)—— 相應(yīng)于曲柄轉(zhuǎn)角θ時(shí)的滑塊實(shí)際速度,mm/s;
θj——曲柄在工藝行程段內(nèi)轉(zhuǎn)到的某一角度,rad;
N——將曲柄轉(zhuǎn)角θ分若干弧度的數(shù)目。
目標(biāo)函數(shù):
機(jī)構(gòu)裝配幾何條件:
曲柄滑塊運(yùn)動(dòng)機(jī)構(gòu)兩極點(diǎn)滿足工藝條件:
則約束條件:
混合懲罰函數(shù)法數(shù)學(xué)模型:
構(gòu)造懲罰函數(shù)時(shí),懲罰因子統(tǒng)一用r(k)表示,得到:
計(jì)算步驟如下:
第1步:先在可行域內(nèi)選擇一個(gè)嚴(yán)格滿足所有不等式約束的初始點(diǎn)x(0)。 選擇適當(dāng)因子r(0)(簡(jiǎn)化可取r(0)=1)試算;
第2步:求 minΦ(x,r(k)),得x*(r(k));
第3步:如果x*(r(k))和minΦ(x*(r(k)),r(k))滿足收斂精度,則停止迭代,否則轉(zhuǎn)下一步;
第4步:取r(k+1)=cr(k),x(0)=x*(r(k)),轉(zhuǎn)向第2步。
PSO算法首先初始化為一組隨機(jī)解(隨機(jī)粒子),沒有像遺傳算法中用交叉及變異操作,而是通過(guò)粒子們?cè)诮饪臻g追隨最優(yōu)粒子的行為進(jìn)行搜索,迭代找到最優(yōu)解。在實(shí)際操作過(guò)程中,先由目標(biāo)函數(shù)為每個(gè)粒子確定一個(gè)適應(yīng)值來(lái)判定粒子的優(yōu)劣程度,以一個(gè)速度來(lái)決定該粒子的飛行方向和位置,在粒子的飛行過(guò)程中,通過(guò)目前粒子本身所找到的最優(yōu)解(個(gè)體極值)和整個(gè)種群目前所找到的最優(yōu)解(全局極值),通過(guò)這兩個(gè)極值來(lái)不斷地更新自己。
假設(shè)在一個(gè)D維的目標(biāo)搜索空間中,有N個(gè)粒子組成一個(gè)群落,其中第i個(gè)粒子表示為一個(gè)D維的向量:
根據(jù)事先設(shè)定的適應(yīng)值函數(shù)(與要解決的問(wèn)題有關(guān))計(jì)算xi當(dāng)前的適應(yīng)值。
第i個(gè)粒子的“飛行”速度也是一個(gè)D維的向量,記為:
第i個(gè)粒子迄今為止搜索到的最優(yōu)位置稱為個(gè)體極值,記為:
整個(gè)粒子群迄今為止搜索到的最優(yōu)位置為全局極值,記為:
在找到這兩個(gè)最優(yōu)值時(shí),粒子根據(jù)式(19)和(20)來(lái)更新自己的速度和位置:
式中:
c1,c2—— 學(xué)習(xí)因子,也稱加速常數(shù);
r1,r2——[0,1]范圍內(nèi)的均勻隨機(jī)數(shù)。
式(19)右邊由三部分組成,第一部分為“慣性”或“動(dòng)量部分,反映了粒子的運(yùn)動(dòng)“習(xí)慣”,代表粒子有維持自己先前速度的趨勢(shì);第二部分為“認(rèn)知”部分,反映了粒子對(duì)自身歷史經(jīng)驗(yàn)的記憶或回憶,代表粒子有向自身歷史最佳位置逼近的趨勢(shì);第三部分為“社會(huì)”部分,反映了粒子間協(xié)同合作與知識(shí)共享的群體歷史經(jīng)驗(yàn),代表粒子有向群體或鄰域歷史最佳位置逼近的趨勢(shì),根據(jù)經(jīng)驗(yàn),通常c1=c2=2。i=1,2,…,D。vdi,t是粒子的速度,vdi,t∈ [-vmax,vmax],vmax是常數(shù),由用戶設(shè)定用來(lái)限制粒子的速度。r1和r2是介于[0,1]之間的隨機(jī)數(shù)。
在處理約束條件時(shí),將進(jìn)化過(guò)程中違反約束的粒子用混合懲罰函數(shù)法處理,以保證滿足約束,同時(shí)提高收斂速度與解的精度,算法如下:
第1步:參數(shù)初始化。參數(shù)包括群體規(guī)模N,最大迭代數(shù)T,變量個(gè)數(shù)M,學(xué)習(xí)因子C1,C2,慣性因子W,最大“飛行”速度Vmax;
第2步:粒子群初始化。隨機(jī)產(chǎn)生每個(gè)粒子的位置Xi和速度Vi,i=1,2…N,若Xi不滿足約束條件,則以Xi為初始點(diǎn),用混合懲罰函數(shù)法計(jì)算結(jié)果Xi*代替Xi。
第3步:粒子適應(yīng)度f(wàn)itness(Xi)值的計(jì)算:
fitness(Xi)=f(Xi) (21)
第4步:計(jì)算粒子的個(gè)體最優(yōu)位置pdi,t和全局最優(yōu)位置。
第5步:更新粒子的速度和位置,按式(19)更新粒子的速度Vi;然后按式(20)更新粒子的位置Xi并判斷是否滿足約束;若置不滿足約束條件,則以Xi為初始點(diǎn),用混合懲罰函數(shù)法計(jì)算結(jié)果Xi*代替Xi。
第6步:若滿足中止條件,退出;否則,轉(zhuǎn)向第3步[6-10]。
曲柄滑塊運(yùn)動(dòng)機(jī)構(gòu),如圖1為拉伸壓力機(jī)結(jié)構(gòu)示意圖,曲柄轉(zhuǎn)速為ω=π/30(rad/s),設(shè)計(jì)要求是曲柄轉(zhuǎn)角θ=15°~190°的運(yùn)動(dòng)范圍內(nèi),希望滑塊在完成工藝行程段H=300mm,滑塊實(shí)際運(yùn)動(dòng)速度對(duì)平均速度v0波動(dòng)為最小。
混合懲罰函數(shù)法取懲罰因子:r(0)=1;得到x*(r(k))。粒子群算法參數(shù)初始化為:學(xué)習(xí)因子1:c1=0.5,學(xué)習(xí)因子2:c2=0.5;慣性權(quán)重:w=0.8;最大迭代次數(shù) MaxDT=100;搜索空間維數(shù)(未知數(shù)個(gè)數(shù))D=3;初始化群體個(gè)體數(shù)目:N=10;混合懲罰函數(shù)法x*(r(k))代替初始點(diǎn)。其優(yōu)化結(jié)果見表1。
表1 常規(guī)設(shè)計(jì)與粒子群優(yōu)化結(jié)果比較Table 1 Comparison of conventional design and the particle swarm optimization results
在求解有求解約束的曲柄滑塊優(yōu)化問(wèn)題時(shí),常規(guī)優(yōu)化方法容易早熟于局部收斂空間。粒子群算法具有較強(qiáng)的全局搜索能力,但存在局部搜索能力較差的缺陷,因此將粒子群算法和經(jīng)典最優(yōu)化算法混合懲罰函數(shù)法有機(jī)的結(jié)合,吸收兩者的優(yōu)點(diǎn)。由表1可知,新的粒子群優(yōu)化設(shè)計(jì)較常規(guī)優(yōu)化設(shè)計(jì)能更準(zhǔn)確地找到求解曲柄滑塊運(yùn)動(dòng)機(jī)構(gòu)的最優(yōu)解。
本研究對(duì)于帶有約束的曲柄滑塊機(jī)構(gòu)優(yōu)化問(wèn)題,應(yīng)用混合懲罰函數(shù)法與粒子群優(yōu)化原理相結(jié)合算法,有效地避免了算法因單一搜索機(jī)制引起的停滯現(xiàn)象和克服過(guò)早收斂于局部最小和處理約束邊界條件。試驗(yàn)證明,新的粒子群算法有效,穩(wěn)健,是一種有潛力的智能算法,實(shí)現(xiàn)簡(jiǎn)單、解的精度高、算法收斂速度快,在曲柄滑塊機(jī)構(gòu)優(yōu)化設(shè)計(jì)中是一種有效的求解方法。
1 黎移新.多層前饋神經(jīng)網(wǎng)絡(luò)幾種算法的樣本順序敏感性[J].食品與機(jī)械,2010,26(4):95~97.
2 張國(guó)平.食品機(jī)械平面四桿機(jī)構(gòu)的遺傳算法優(yōu)化設(shè)計(jì)[J].食品與機(jī)械,2010,26(3):117~119.
3 陳立周.機(jī)械優(yōu)化設(shè)計(jì)方法[M].北京:冶金工業(yè)出版社,2006:126~146.
4 郭仁生.機(jī)械工程設(shè)計(jì)分析和MATLAB應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2008:84~91.
5 劉善林,王會(huì)生,胡鵬浩.基于速度要求的曲柄滑塊機(jī)構(gòu)設(shè)計(jì)及Excel仿真[J].機(jī)械設(shè)計(jì)與制造,2009(1):89~91.
6 Simon Garnier,Jacques Gautrais,Guy Theraulaz.The biological principles of swarm intelligence[J].Swarm Intelligence,2007(1):3~31.
7 Parkinson A.Robust mechanical design using engineering models[M].ASME J.of Mech.Design,1995(117):48~54.
8 劉偉,蔡前鳳,劉海林.一種求解約束優(yōu)化問(wèn)題的新粒子群算法[J].計(jì)算機(jī)應(yīng)用與軟件,2008(8):254~256.
9 高鷹.一種自適應(yīng)擴(kuò)展粒子群優(yōu)化算法[J].計(jì)算機(jī)工程與應(yīng)用,2006,37(15):12~15.
10 劉偉,蔡前鳳,王振友.一種新的遺傳算法求解有等式約束的優(yōu)化問(wèn)題[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(13):3 184~3 194.
11 龔純,王正林.精通MATALAB最優(yōu)化計(jì)算[M].北京:電子工業(yè)出版社,2009:270~343.
Optimization design of slider-crank mechanism based on particle swarm algorithm
GAO Chao-xiang WANG Chong
(Sichuan college of Chemical Technology,Luzhou,Sichuan646005,China)
Aiming at the optimized design question of slider-crank mechanism with constraints,a algorithm is put forward that the principle of particle swarm optimization is combined with the method of mixed penalty function in the paper.The problem with constraint condition is transformed into a no-constrained optimization problem,and by the example test of that PSO algorithm,the results that is compared to the results the conventional optimization design is strong practicality,solving accurate and reliable etc.,which is an effective solution in slider-crank mechanism with optimization design.
slider-crank mechanism;particle swarm optimization;iterate;adaptive value
10.3969/j.issn.1003-5788.2011.04.028
高朝祥(1965-),男,四川化工職業(yè)技術(shù)學(xué)院副教授。E-mail:gcx6355@163.com
2011-03-10