摘 要:機械優化設計是機械類專業的一門重要的專業課,目前在機械優化教學中介紹的是傳統的優化算法,這些方法對于局部極值及目標函數的可微性有嚴格要求,不能解決高維、多目標及優化設計問題的要求。粒子群優化算法是近幾年發展起來的一種基于群體智能的進化計算技術,對優化問題無可微性和連續性要求,具有全局收斂性,本文在機械優化設計教學中引入了粒子群優化算法,為學生解決復雜工程優化設計問題打下基礎。
關鍵詞:粒子群優化算法 機械 優化設計 教學
中圖分類號:G642.4 文獻標識碼:A 文章編號:1672-3791(2013)04(b)-0208-01
機械優化設計是機械類專業的一門重要的專業課,機械設計的任務是在一定的載荷和工作環境下,在約束范圍內選取設計變量,建立目標函數,利用最優化方法求取設計變量的最優解的一種設計方法。國內外從上世紀開展機械優化設計研究至今已經有幾十年的歷史,已經在機械結構優化、機械系統及其減振、傳動系統方案及參數優化等領域得到應用[1]。但目前在機械優化教學中常用多是傳統的優化算法[2],如單純形法、復合形尋優法等,這些方法對于局部極值及目標函數的可微性有嚴格要求,而且最優解對初值具有較大的依賴性,不能適應高維、多目標及存在局部極值的機械優化設計問題的要求。近年來,隨著人工智能研究的快速發展,人工神經網絡、進化計算、模擬退火等智能計算方法也應用到機械設計領域[3]。
1 粒子群優化算法
粒子群優化算法也是一種進化計算方法,它是由Kennedy和Eberhart博士于1995年提出的一種基于群體智能的進化計算技術[5]。該算法具有并行處理、收斂速度快、魯棒性好和計算效率高的特點,近年來已經在工業控制系統、電力系統、交通系統中得到廣泛應用。
在粒子群優化算法中,每個優化問題的候選解都隨機初始化為搜索空間中的一個粒子,每個粒子有一個適應度和飛行速度,通過迭代運算,跟蹤局部最優值和全局值,更新自己的速度和位置,最終搜索到最優解。
粒子群優化算法的步驟如下。
(1)先在解空間隨機生成一個粒子群并初始化每個粒子的初始位置和速度,然后初始化算法參數。
(2)計算每個粒子的適應度。
(3)更新粒子的局部最優值和全局最優值。
(4)按式(4)和式(5)對粒子的速度和位置進行更新,并將其位置限定在邊界條件內。
(5)檢查算法是否已經滿足結束條件。若滿足,則中止運行,否則,跳轉到步驟(2),進行下一次迭代。
在應用粒子群優化算法求解機械設計優化問題時可分三個步驟,首先要建立待優化問題的數學模型,然后確定設計變量、目標函數和約束條件,最后采用合適的優化方法編寫程序,找到最優解,并對解的精度、算法的收斂性及計算效率進行評價。在用粒子群優化算法解決優化問題時,把待優化問題的每一個候選解抽象為粒子群中的一個粒子,經過多次迭代后,收斂到最優解。現以凸輪機構的最大壓力角及其位置的確定來說明粒子群優化算法在機械優化設計中的應用。
3 結語
綜上所述,機械優化設計是一門實踐性很強的課程,其教學重點在于教會學生根據分析機械的工作原理建立優化問題的數學模型,然后選擇合適的優化方法尋找其最優解,粒子群優化算法是一種智能優化算法,它對優化問題無可微性和連續性要求,具有全局收斂性,在機械優化設計教學中引入粒子群優化算法,可以開闊學生的思路,為學生解決復雜的工程優化問題打下良好的基礎。
參考文獻
[1]程耿東,顧元憲,王健.我國機械優化研究與應用的綜述和展望[J].機械強度,1995,17(2).
[2]李旻,李靜,饒雄新,等.MATLAB優化工具箱在機械優化設計教學中的應用[J].裝備制造技術,2010(3).
[3]張榮沂.智能優化算法在機械優化設計中的應用[J].機械設計與制造,2003(1).
[4]李濱城,徐超.機械原理MATLAB輔助分析[M].化學工業出版社,2011(5).
[5]龔純,王正林.精通MATLAB最優化計算[M].電子工業出版社,2009(4).