李澤陽,劉 釗,朱 平
(1.上海交通大學機械與動力工程學院,機械系統(tǒng)與振動國家重點實驗室,上海 200240;2.上海市復雜薄板結構數(shù)字化制造重點實驗室,上海 200240)
粒子群優(yōu)化算法(particle swarm optimization algorithm,PSO)是由KENNEDY J和EBERHART R[1]等人提出的一種基于種群的全局優(yōu)化算法,算法的機制源于對自然界中魚群和鳥群協(xié)作行為的模擬,該算法具有實現(xiàn)方便和全局搜索能力強的特點,獲得了廣泛關注和使用。
粒子群算法最初是針對無約束優(yōu)化問題提出的,許多學者嘗試將其擴展到約束優(yōu)化領域(constrained optimization problems,COPs)。PARSOPOULOS K E[2]將非靜態(tài)多級懲罰函數(shù)與粒子群算法相結合,證明了粒子群算法在約束優(yōu)化領域的優(yōu)勢;PULIDO G T[3]提出一種基于可行性規(guī)則的約束處理方法,增加擾動處理進而增強粒子群算法的尋優(yōu)能力;HE Q[4]采用自適應演化的方式使罰函數(shù)方程不斷進化,提出罰函數(shù)和粒子種群聯(lián)合進化的約束優(yōu)化算法;王向銀[5]采用遺傳算法的變異思想和互換更新機制改進二次粒子群算法,提高了算法的效率和全局尋優(yōu)能力;針對懲罰函數(shù)法中懲罰因子依賴于經(jīng)驗選取的問題,王祝[6]提出使用過濾器約束處理機制的改進PSO方法?,F(xiàn)有的研究主要集中在粒子群算法的約束處理機制上,很多算法不能很好地搜索約束邊界,造成算法的全局尋優(yōu)能力不足。
為增加算法對約束邊界的搜索進而提升算法的整體尋優(yōu)能力,本文中提出一種基于子集約束邊界縮減(subset constrained boundary narrower,SCBN)方程和序列二次規(guī)劃(sequential quadratic programming,SQP)技術的兩步式約束粒子群優(yōu)化算法。第一步,使用基于罰函數(shù)的粒子群優(yōu)化算法進行尋優(yōu),并使用SCBN方程計算每次迭代中最靠近邊界的粒子;第二步,對歷次迭代中記錄的粒子進行SQP搜索,將最優(yōu)的結果與第一步中的結果進行比較,其較優(yōu)值作為最終的全局最優(yōu)解。為驗證提出算法在實際工程問題中的實用性,本文中考慮整車側面碰撞工況和頂壓潰工況,建立了某款燃料電池汽車整車有限元模型,使用序列采樣技術和Kriging代理模型技術建立相應的代理模型,采用提出的算法對某款燃料電池汽車車身結構進行輕量優(yōu)化,最后使用有限元仿真驗證了優(yōu)化結果的正確性。
本文中在標準粒子群算法和懲罰函數(shù)法的基礎上,主要采用子集邊界縮減函數(shù)篩選約束邊界附近的粒子,使用多樣性保持技術保證種群的多樣性。
由于實際工程問題中的約束往往代表一些資源的限制,因此最優(yōu)解經(jīng)常在可行域的邊界上,為盡可能地使用資源獲得最優(yōu)解,在尋優(yōu)過程中處于最優(yōu)解處的約束可能會被激活,這些被激活的約束將對罰函數(shù)方法造成很大的困難。本文中使用SCBN方程用于確認粒子距離約束邊界的距離,并提高了PSO算法處理實際工程中約束優(yōu)化問題的能力[7],SCBN方程的形式為
這里,ε是一個正值。經(jīng)分析,當且僅當子集Ω中至少有一個約束處于2ε范圍內(nèi)被激活的狀態(tài)且其它約束均滿足時,可得到因為當 x可行項是一個負值,且至少有一個子集內(nèi)約束 gi∈Ω(x)在 2ε范圍內(nèi)激活,此外,項保證了子集外約束均滿足。 通過使用SCBN方程,可在每代粒子中挑選距離約束邊界最近的粒子做為序列二次規(guī)劃搜索的起始點,從而增加了對約束問題邊界處的搜索力度,提高了算法獲得全局最優(yōu)解的能力。
在尋優(yōu)過程中,粒子群算法可能很快搜索到一個相對較好的局部最優(yōu)解,但之后會陷入停滯無法改進,本文中使用之前的研究成果—速度重置指針方法[8]:一旦優(yōu)化過程陷入停滯,粒子的速度將被重置,粒子將跳出局部最優(yōu)解繼續(xù)搜索,從而避免了停滯現(xiàn)象的產(chǎn)生。速度更新方程為
式中:Vrand為一個隨機生成的速度矩陣;μ為各代粒子的相關性系數(shù),隨著種群代數(shù)的增加而遞減;itermax和itercurrent分別為最大代數(shù)和當前代數(shù);w為速度相關性系數(shù),源于標準粒子群算法的慣性因子,其邊界定義為[wmin,wmax]。隨著搜索過程的進行,剩余的代數(shù)(itermax-itercurrent)和μ值逐漸減少,w不斷改進重置粒子的分布并考慮算法的全局和局部搜索能力。最終,Vreset逐漸收縮進而保證算法的收斂性。在自適應速度重置指針被激活后,處于停滯位置的粒子被從原位置彈開,位置更新方程為
算法的第一步是基于罰函數(shù)方法使用粒子群算法進行尋優(yōu)。首先初始化種群,基于罰函數(shù)方法重構目標函數(shù);計算適應度值、粒子歷史最優(yōu)解和種群全局最優(yōu)解;然后更新種群的速度和位置,同時使用邊界反彈技術拉回飛離設計域的粒子;接下來進行停滯判斷,若滿足停滯條件,則激活速度重置方法,重置粒子速度和位置并重新計算適應度值,若不滿足停滯條件,則進行停止判斷,判斷算法是否可以停止,最終記錄搜索停止后的最優(yōu)解。
第二步先根據(jù)SCBN方程記錄每一代距離邊界最近的粒子,然后以這些粒子為初始點開始SQP搜索,完成對約束邊界的尋優(yōu)后,比較搜索結果,選取最優(yōu)值作為第二步的最優(yōu)解。
最后比較兩步搜索的最優(yōu)值,以更優(yōu)的結果作為算法的最終尋優(yōu)結果。算法的流程圖和偽代碼分別如圖1和表1所示。
圖1 兩步式約束粒子群優(yōu)化算法流程圖
表1 兩步式約束粒子群優(yōu)化算法偽代碼
為驗證兩步式約束粒子群優(yōu)化算法在實際工程問題中的應用效果,采用提出的算法對某款燃料電池汽車車身結構進行輕量化設計,該燃料電池汽車整車有限元模型如圖2所示。
本文中在側面碰撞和頂壓潰兩種工況的優(yōu)化過程中采用了代理模型,基于兩步式約束粒子群算法的轎車車身輕量化設計流程主要包括以下4步。
圖2 燃料電池汽車整車有限元模型
(1)建立仿真有限元模型,定義優(yōu)化目標、約束和設計變量。
整車有限元模型網(wǎng)格單元平均尺寸為10mm,單元總數(shù)為1 038 131,整車整備質(zhì)量為2 090.9kg。
根據(jù)法規(guī)GB20071—2006《汽車側面碰撞的乘員保護》建立整車側面碰撞有限元模型,如圖3所示。仿真時間為150ms,考察的性能指標為:假人下肋骨最大變形量、B柱最大變形速度、車門最大變形速度、假人腹部作用力和假人盆骨作用力。選取與側面碰撞最為相關的15個零件的板厚作為設計變量,如圖4所示。
圖3 整車側面碰撞有限元模型
圖4 15個板厚設計變量
根據(jù)美國標準FMVSS216的要求,建立車頂壓潰仿真模型,如圖5所示。選取的性能指標為:壓力平板壓潰深度為127mm時壓力盤的作用力,經(jīng)過安全評價,該處頂壓反彈最大力不小于50kN。選取與頂壓潰相關的10個板件厚度作為設計變量,如圖6所示。
圖5 整車頂壓潰有限元模型
圖6 整車頂壓潰設計變量
兩個碰撞工況的優(yōu)化目標為結構質(zhì)量最輕,性能約束指標如表2所示,共有25個設計變量。
表2 兩種工況的性能約束指標
(2)在問題設計空間中進行試驗設計,通過有限元仿真得到輸出響應,分別針對每個碰撞工況建立相應的代理模型并檢驗模型精度。本研究選用Kriging代理模型技術,并通過面向目標的序列采樣技術進行模型精度更新。
首先針對各設計變量進行試驗設計。采用最優(yōu)拉丁超立方法進行設計域內(nèi)采樣,為驗證每個代理模型的精度,檢查其確定性系數(shù)是否滿足設計要求,對于確定性系數(shù)低于0.9的代理模型,通過序列采樣策略提高其精度,使其滿足后續(xù)代理模型應用精度要求。結果如表3所示,修正后的代理模型確定性系數(shù)均大于0.9,滿足精度要求,可進行后續(xù)優(yōu)化求解。
表3 代理模型
(3)運用兩步式約束粒子群優(yōu)化算法進行約束優(yōu)化問題的尋優(yōu)求解。
(4)通過有限元仿真分析驗證優(yōu)化結果的正確性。
將圓整后的優(yōu)化解代入到有限元仿真模型中進行結構性能仿真,結果如表4所示。由表可見:在滿足各個工況約束性能指標的條件下,兩種工況參與優(yōu)化的25種板件的總質(zhì)量由43.23減小至38.51kg,減輕了4.72kg,輕量化效果達到10.92%。驗證了本文中所提出的改進粒子群優(yōu)化算法在轎車車身輕量化中的有效性。
表4 車身輕量化設計方案的車身性能指標狀態(tài)
本文中針對現(xiàn)有的算法對約束邊界附近搜索不足的問題,結合約束粒子群算法和子集約束邊界縮減方程,提出了一種兩步式約束粒子群優(yōu)化算法,通過加強對約束邊界的搜索,提高了算法在約束優(yōu)化問題中的整體尋優(yōu)能力,具體工作有:
(1)考慮約束優(yōu)化問題的特點,在算法第一步中采用基于懲罰函數(shù)方法處理約束,采用粒子群算法進行尋優(yōu);在第二步中利用SCBN方程記錄每次迭代最靠近邊界的粒子,然后以這些粒子為初始點進行SQP搜索,從而提高了算法在約束邊界附近的搜索能力和全局尋優(yōu)能力;
(2)針對側面碰撞和頂壓潰工況,建立某款新能源汽車整車有限元模型,使用序列采樣技術與Kriging代理模型技術建立了考慮工況約束的代理模型,采用本文中提出的兩步式約束粒子群算法對車身結構進行了輕量優(yōu)化,使部分板件的輕量化效果達10.92%,最后使用有限元仿真方法驗證了優(yōu)化結果的可行性。