薛 冰,馬衛(wèi)東
(黃河水利職業(yè)技術(shù)學(xué)院,河南 開封 475004)
機(jī)械優(yōu)化設(shè)計(jì)技術(shù)是一種解決產(chǎn)品設(shè)計(jì)問題的先進(jìn)設(shè)計(jì)方法,它能從眾多的設(shè)計(jì)方案中尋找出完善的或最為適宜的設(shè)計(jì)方案。 雖然常規(guī)設(shè)計(jì)也有可能找到較好的設(shè)計(jì)方案,但需要依賴設(shè)計(jì)人員的經(jīng)驗(yàn)來進(jìn)行。 因此,它既不能保證設(shè)計(jì)參數(shù)向最優(yōu)的方向調(diào)整,也不能保證能找到最合適的設(shè)計(jì)方案。機(jī)械優(yōu)化設(shè)計(jì)借助于計(jì)算機(jī)自動技術(shù)和數(shù)學(xué)理論規(guī)劃方法,可以在很短時間內(nèi)分析一個設(shè)計(jì)方案,并能使各種設(shè)計(jì)參數(shù)自動向更優(yōu)的方向進(jìn)行調(diào)整,直至找到一個盡可能完善的或最合適的設(shè)計(jì)方案。 在機(jī)械優(yōu)化設(shè)計(jì)過程中,需要對關(guān)鍵參數(shù)進(jìn)行最優(yōu)測試。 這種選擇既可以保證以最優(yōu)的組合滿足各種設(shè)計(jì)要求,也能更好地滿足系統(tǒng)性能的基本要求,保證各種設(shè)計(jì)指標(biāo)達(dá)到最大值,提升機(jī)械整體功能和性能[1]。
在進(jìn)行產(chǎn)品設(shè)計(jì)時,首先要尋找并確定最佳的結(jié)構(gòu)參數(shù)。 在這些結(jié)構(gòu)參數(shù)中,可根據(jù)標(biāo)準(zhǔn)、規(guī)定等選定的,稱為設(shè)計(jì)常量,如靜摩擦系數(shù)、系列化齒輪傳動的中心距等;必須通過設(shè)計(jì)確定的,稱為設(shè)計(jì)變量,如齒數(shù)、模數(shù)、齒寬等。 設(shè)x1,x2,…,xn為最優(yōu)化問題中的n 個變量,我們可以用一個n 維向量X表示,記為:
按照取值特點(diǎn),(1) 式中的設(shè)計(jì)變量又可分為連續(xù)變量(如軸徑、輪廓尺寸等)和離散變量(如各種標(biāo)準(zhǔn)規(guī)格等)。
為了對設(shè)計(jì)進(jìn)行定量評價,必須構(gòu)造包含全部設(shè)計(jì)變量的評價函數(shù)F(X)=F(x1,x2,x3,…,xn)。它是優(yōu)化的目標(biāo),又稱為目標(biāo)函數(shù)。 在優(yōu)化過程中,通過設(shè)計(jì)變量xi的不斷調(diào)整,求得F(X)值最好或最滿意的X 值。 在構(gòu)造目標(biāo)函數(shù)時,所有的設(shè)計(jì)變量必須包含在約束函數(shù)中。
在機(jī)械設(shè)計(jì)中,可作為參考目標(biāo)函數(shù)的有:體積最小、重量最輕、效率最高、承載能力最大、結(jié)構(gòu)運(yùn)動精度最高、振幅或噪聲最小、成本最低、耗能最小、動負(fù)荷最小,等等。 在一般的機(jī)械優(yōu)化設(shè)計(jì)中,多目標(biāo)函數(shù)的情況較多。 目標(biāo)函數(shù)越多,設(shè)計(jì)的綜合效果越好,但問題的求解也會越復(fù)雜[2]。 這時,要抓住關(guān)鍵因素,適當(dāng)忽略不重要的成分,使問題合理簡化,以易于列出數(shù)學(xué)模型。 這樣,不僅可節(jié)省時間,有時也會改善優(yōu)化結(jié)果。
任何設(shè)計(jì),都有各種各樣的限制條件,例如強(qiáng)度、剛度等。 每個限制條件都可寫成包含設(shè)計(jì)變量的函數(shù),稱為約束條件。
函數(shù)約束的形式有不等式約束和等式約束兩種。
(1)不等式約束為:gj(X)≥0,j=1,2,…,m。
(2)等式約束為:hj(X)=0,j=m+1,m+2,…,p。
對設(shè)計(jì)變量的可能取值范圍的限制為:xj≥0,i=1,2,…,n。
另外,確定約束函數(shù)時應(yīng)注意:不能有矛盾約束,可行域不能無界,盡量避免等價約束,不能遺漏必要的約束等。
根據(jù)設(shè)計(jì)要求,應(yīng)用專業(yè)范圍內(nèi)的現(xiàn)行理論和經(jīng)驗(yàn)等,對優(yōu)化對象進(jìn)行分析。 必要時,需要對傳統(tǒng)設(shè)計(jì)中的公式進(jìn)行改進(jìn),并盡可能反映該專業(yè)范圍內(nèi)現(xiàn)代技術(shù)進(jìn)步的成果。 在建模過程中,需要對各結(jié)構(gòu)參數(shù)進(jìn)行分析,以確定設(shè)計(jì)的原始參數(shù)、設(shè)計(jì)常數(shù)和設(shè)計(jì)變量。 根據(jù)設(shè)計(jì)要求,確定并構(gòu)造目標(biāo)函數(shù)和相應(yīng)的約束條件,有時要構(gòu)造多目標(biāo)函數(shù)。 必要時,對數(shù)學(xué)模型進(jìn)行規(guī)范化,以便消除各項(xiàng)由于量綱不同等原因?qū)е碌臄?shù)量差異影響。
智能計(jì)算也有人稱之為“軟計(jì)算”,是人們受自然(生物界)規(guī)律的啟迪,根據(jù)其原理,模仿求解問題的算法。 從自然界得到啟迪,模仿其結(jié)構(gòu)進(jìn)行發(fā)明創(chuàng)造,這就是仿生學(xué)。 這是我們向自然界學(xué)習(xí)的一個方面。 另一方面,我們還可以利用仿生原理進(jìn)行設(shè)計(jì)(包括設(shè)計(jì)算法),這就是智能計(jì)算的思想。 這方面的內(nèi)容很多,如人工神經(jīng)網(wǎng)絡(luò)技術(shù)、遺傳算法、模擬退火算法、模擬退火技術(shù)和群集智能技術(shù)等。
人工神經(jīng)網(wǎng)絡(luò)簡稱神經(jīng)網(wǎng)絡(luò),是模擬生物神經(jīng)網(wǎng)絡(luò)的組織結(jié)構(gòu)和運(yùn)行機(jī)制的一種工程系統(tǒng)。 ANN是模擬人腦的思維,利用已知樣本對網(wǎng)絡(luò)進(jìn)行訓(xùn)練的。 由于人工神經(jīng)網(wǎng)絡(luò)中神經(jīng)元個數(shù)眾多,以及整個網(wǎng)絡(luò)存儲信息容量的巨大,使得它具有很強(qiáng)的不確定性。 對于ANN,只有當(dāng)神經(jīng)元對所有輸入信號的綜合處理結(jié)果超過某一門限值后,才輸出一個信號。 因此,ANN 是一種具有高度非線性的超大規(guī)模連續(xù)時間動力學(xué)系統(tǒng)。 它突破了傳統(tǒng)的以線性處理為基礎(chǔ)的數(shù)字電子計(jì)算機(jī)的局限,標(biāo)志著人類智能信息處理能力和模擬人腦智能行為能力的一大飛躍。
作為一種正在興起的新型技術(shù),人工神經(jīng)網(wǎng)絡(luò)有著自己的優(yōu)勢,其主要特點(diǎn)有以下3 個。
(1)非局限性。 由于一個神經(jīng)網(wǎng)絡(luò)通常由多個神經(jīng)元連接而成,因此,一個系統(tǒng)的整體行為不僅取決于單個神經(jīng)元的特征,還由單元彼此之間的相互作用、相互連接所決定。 故系統(tǒng)具有多個較穩(wěn)定的平衡狀態(tài),將能有效保證系統(tǒng)演化的多樣性。
(2)自適應(yīng)性。 人工神經(jīng)網(wǎng)絡(luò)較固定的推理方式及傳統(tǒng)的指令程序方式更能夠適應(yīng)環(huán)境的變化。神經(jīng)網(wǎng)絡(luò)不但處理的信息可以有各種變化,而且在處理信息的同時能夠總結(jié)規(guī)律,完成某種運(yùn)算、推理、識別及控制任務(wù)。 因而它具有更高的智能水平,更接近人的大腦。
(3)較強(qiáng)的容錯能力。 神經(jīng)網(wǎng)絡(luò)能夠與人工視覺系統(tǒng)一樣,根據(jù)對象的主要特征去識別對象。 這種行為使具有閾值的神經(jīng)元構(gòu)成的網(wǎng)絡(luò)具有更好的性能,可以提高容錯性和存儲容量。 較強(qiáng)的容錯能力使得神經(jīng)網(wǎng)絡(luò)的應(yīng)用更加廣泛,尤其是對于那些結(jié)果目前還是未知的數(shù)據(jù)的分類。
遺傳算法是基于生物進(jìn)化理論的原理發(fā)展起來的一種廣為應(yīng)用的、高效的隨機(jī)搜索與優(yōu)化的方法。 遺傳算法是模擬達(dá)爾文的自然選擇學(xué)說和自然界的生物進(jìn)化過程的一種計(jì)算模型。 它采用簡單的編碼技術(shù)來表示各種復(fù)雜的結(jié)構(gòu),并通過對一組編碼進(jìn)行簡單的遺傳操作和優(yōu)勝劣汰的自然選擇來指導(dǎo)學(xué)習(xí)和確定搜索的方向。 遺傳算法的操作對象是一群二進(jìn)制串(稱為染色體、個體),即種群。 這里每一個染色體都對應(yīng)問題的一個解。 從初始種群出發(fā),采用基于適應(yīng)值比例的選擇策略在當(dāng)前種群中選擇個體,使用雜交和變異來產(chǎn)生下一代種群。 新個體繼承了上一代的一些優(yōu)良性狀,且性能優(yōu)于上一代,這樣逐步朝著更優(yōu)解的方向一代代演化下去,直到滿足期望的最終條件為止。 遺傳算法有以下3 個特點(diǎn)。
(1)遺傳算法是對參數(shù)的編碼進(jìn)行操作,而非對參數(shù)本身進(jìn)行操作。 這就使得我們在優(yōu)化計(jì)算過程中,可以借鑒生物學(xué)中染色體和基因等概念,模仿自然界中生物的遺傳和進(jìn)化等機(jī)理。
(2)使用概率搜索技術(shù)。 遺傳算法的選擇、交叉、變異等運(yùn)算都是以概率的方式來進(jìn)行的,因而它的搜索過程具有很好的靈活性。 隨著進(jìn)化過程的進(jìn)行,新的群體會產(chǎn)生出更多新的優(yōu)良個體。
(3)并行計(jì)算,搜索效率較高。 遺傳算法同時使用多個搜索點(diǎn)的搜索信息,從一個由很多個體組成的初始群體開始最優(yōu)解的搜索,而不是從單一個體開始搜索,可通過大規(guī)模并行計(jì)算來提高計(jì)算速度。因此遺傳算法的搜索效率較高,并減少了陷入局部最優(yōu)解的風(fēng)險(xiǎn),適合大規(guī)模復(fù)雜問題的優(yōu)化。
1983 年,Kirkpatrick 等提出模擬退火算法,并將其應(yīng)用于組合優(yōu)化問題的求解。 模擬退火算法來源于固體退火原理,即將固體加溫至充分高,再讓其徐徐冷卻。 在加溫過程中,固體內(nèi)部粒子隨溫升變?yōu)闊o序狀,內(nèi)能增大;而徐徐冷卻時,粒子漸趨有序,在每個溫度都達(dá)到平衡態(tài),最后在常溫時達(dá)到基態(tài),內(nèi)能減為最小。 根據(jù)Metropolis 準(zhǔn)則,粒子在溫度T 時趨于平衡的概率為e-ΔE/(kT),其中E 為溫度T 時的內(nèi)能,ΔE 為其改變量,k 為Boltzmann 常數(shù)。 用固體退火模擬組合優(yōu)化問題,將內(nèi)能E 模擬為目標(biāo)函數(shù)值f ,溫度T 演化成控制參數(shù)t,就得到解組合優(yōu)化問題的模擬退火算法: 由初始解i 和控制參數(shù)初值t 開始,對當(dāng)前解重復(fù)出現(xiàn)“產(chǎn)生新解→計(jì)算目標(biāo)函數(shù)差值→接受或舍棄”的迭代,并逐步衰減t 值,算法終止時的當(dāng)前解即為所得近似最優(yōu)解。這是基于蒙特卡羅迭代求解法的一種啟發(fā)式隨機(jī)搜索過程。 目前,已經(jīng)證明SA 是一種在局部最優(yōu)解中能概率性地跳出并最終趨于全局最優(yōu)的方法,是依概率1 收斂于全局最優(yōu)解的優(yōu)化方法[3]。
模擬退火算法的優(yōu)點(diǎn)是:計(jì)算過程簡單、通用、魯棒性強(qiáng),適用于并行處理,可用于求解復(fù)雜的非線性優(yōu)化問題。 其缺點(diǎn)是:收斂速度慢、執(zhí)行時間長、算法性能與初始值有關(guān)及參數(shù)敏感等。
群體智能算法是計(jì)算機(jī)工作者通過對社會性昆蟲行為的模擬形成的一系列對于傳統(tǒng)問題的解決方法。 群體智能的相關(guān)研究早已存在,到目前為止也取得了許多重要的結(jié)果。 自1991 年意大利學(xué)者Dorigo 提出蟻群優(yōu)化(Ant Colony Optimization,ACO) 理論開始,群體智能作為一個理論被正式提出,并逐漸吸引了大批學(xué)者的關(guān)注,從而掀起了研究高潮。 1995 年,Kennedy 等學(xué)者提出粒子群優(yōu)化算法(Particle Swarm Opti-mization,PSO),此后群體智能研究迅速展開,但大部分工作都是圍繞ACO 和PSO 進(jìn)行的[4]。
2.4.1 蟻群優(yōu)化算法
蟻群優(yōu)化算法是受螞蟻覓食時的通信機(jī)制的啟發(fā)、由Dorigo 提出的解決計(jì)算機(jī)算法學(xué)中經(jīng)典“貨郎擔(dān)問題”的算法。
螞蟻所在的環(huán)境是一個虛擬的世界,其中有障礙物,有別的螞蟻,還有信息素。 每只螞蟻在能感知的范圍內(nèi)尋找是否有食物,如果有就直接過去,否則就朝信息素多的地方走。 當(dāng)周圍沒有信息素指引時,螞蟻會按照自己原來運(yùn)動的方向慣性運(yùn)動下去,并且,在運(yùn)動的方向有一個隨機(jī)的小的擾動。 每只螞蟻在剛找到食物時,播撒的信息素最多,走得越遠(yuǎn),播撒的信息素越少。 在解決貨郎擔(dān)問題時,蟻群優(yōu)化算法設(shè)計(jì)的虛擬“螞蟻”將摸索不同路線,并留下會隨時間逐漸消失的虛擬“信息素”。 虛擬的“信息素”也會揮發(fā),每只螞蟻每次隨機(jī)選擇要走的路徑,它們傾向于選擇路徑比較短的、信息素比較濃的路徑。 根據(jù)“信息素較濃的路線更近”的原則,即可選擇出最佳路線。 由于這個算法利用了正反饋機(jī)制,使得較短的路徑能夠有較大的機(jī)會得到選擇,并且由于采用了概率算法,所以它能夠不局限于局部最優(yōu)解。 蟻群算法的特點(diǎn)為:(1)它是一種自組織的算法。 其組織力或組織指令是來自于系統(tǒng)的內(nèi)部。 算法開始的初期,單個的人工螞蟻無序地尋找解。 經(jīng)過一段時間的演化,人工螞蟻之間通過信息激素的作用,自發(fā)地越來越趨向于尋找到接近最優(yōu)解的一些解。(2)它是一種并行的算法。每只螞蟻搜索的過程彼此獨(dú)立,僅通過信息激素進(jìn)行通信。 它在問題空間多點(diǎn)和同時開始進(jìn)行獨(dú)立的解搜索。 這不僅增加了算法的可靠性,也使得算法具有較強(qiáng)的全局搜索能力。(3)它是一種正反饋的算法。螞蟻能夠最終找到最短路徑,直接依賴于最短路徑上信息激素的堆積。 而信息激素的堆積卻是一個正反饋的過程,它使得算法演化過程得以進(jìn)行。 (4)它具有較強(qiáng)的魯棒性。 蟻群算法對初始路線要求不高,即蟻群算法的求解結(jié)果不依賴于初始路線的選擇,而且在搜索過程中不需要進(jìn)行人工的調(diào)整。 蟻群算法的參數(shù)數(shù)目少、設(shè)置簡單,易于組合優(yōu)化問題的求解。
2.4.2 粒子群優(yōu)化算法
受人工生命研究結(jié)果的啟發(fā),粒子群算法(PSO)的基本概念源于對鳥群和魚群捕食行為的簡化社會模型的模擬。 1995 年,該算法由Kenndy 和Eberhart 等人提出。 由于PSO 算法在函數(shù)優(yōu)化等領(lǐng)域有著廣闊的應(yīng)用前景,PSO 算法自提出以來,就引起了相關(guān)領(lǐng)域眾多學(xué)者的關(guān)注。 目前,國內(nèi)外研究大致可分為3 個方向:算法的改進(jìn)、算法的分析和算法的應(yīng)用。 在PSO 算法中,每個優(yōu)化問題的解都是搜索空間中的一只鳥(粒子)。 解群相當(dāng)于一個鳥群,鳥群從一地到另一地的飛行相當(dāng)于解群的進(jìn)化,“好消息”相當(dāng)于解群每代中的最優(yōu)解,食源相當(dāng)于全局最優(yōu)解。 PSO 算法中的每個粒子均作為解空間中的一個解。 它根據(jù)自己的飛行經(jīng)驗(yàn)和同伴的飛行經(jīng)驗(yàn)來調(diào)整自己的飛行狀態(tài)。 每個粒子在飛行過程中所經(jīng)歷過的最好位置, 就是粒子本身找到的最優(yōu)解,稱為個體極值(Pbest);整個群體所經(jīng)歷過的最好位置,就是整個群體目前所找到的最優(yōu)解,稱為全局極值(Gbest)。 每個粒子都是通過上述兩個極值不斷更新自己,從而產(chǎn)生新一代群體。 在實(shí)際操作中,由優(yōu)化問題所決定的適應(yīng)度值(fitness)來評價粒子的“好壞”程度。 每個粒子還有一個速度,決定它們飛行的方向和距離。 然后,粒子就追隨當(dāng)前的最優(yōu)粒子在解空間中搜索[5]。
PSO 是一種基于迭代的優(yōu)化工具,系統(tǒng)初始化一組隨機(jī)解,通過迭代搜尋最優(yōu)值。 系統(tǒng)具有以下特點(diǎn)。
(1)隱含并行性。 搜索過程是從問題解的一個集合開始的,而不是從單個個體開始的,具有隱含并行搜索特性,從而減小了陷入局部極小的可能性。這種并行性易在計(jì)算機(jī)上實(shí)現(xiàn),可以提高算法性能和效率。
(2)根據(jù)個體的適配信息進(jìn)行搜索,因此不受函數(shù)約束條件(如連續(xù)性、可導(dǎo)性等)的限制。
(3)在收斂性方面,相對于遺傳算法而言,PSO的研究還比較薄弱。 對高維復(fù)雜問題,往往會產(chǎn)生早熟收斂和收斂性能差的缺點(diǎn),無法保證收斂到最優(yōu)點(diǎn)。
經(jīng)過近些年的發(fā)展,智能優(yōu)化算法憑借其簡單的算法結(jié)構(gòu)和突出的問題求解能力,吸引了眾多研究者的目光,并取得了令人注目的成果。 大量的研究成果證明了智能優(yōu)化算法在工程上的適用性,顯示了其給各個領(lǐng)域帶來的效益。 現(xiàn)代機(jī)械系統(tǒng)結(jié)構(gòu)日趨復(fù)雜,用戶對機(jī)械產(chǎn)品綜合性能的要求也日益苛刻,使現(xiàn)有的基于數(shù)學(xué)規(guī)劃法的傳統(tǒng)優(yōu)化設(shè)計(jì)理論和算法難以滿足系統(tǒng)優(yōu)化設(shè)計(jì)的要求。 本文前述的智能計(jì)算方法(如人工神經(jīng)網(wǎng)絡(luò)、遺傳算法、模擬退火算法、蟻群算法、粒子群優(yōu)化等算法等),若用于解決復(fù)雜的機(jī)械設(shè)計(jì)問題,有望克服傳統(tǒng)優(yōu)化算法存在的某些困難。 我們相信,智能計(jì)算方法的應(yīng)用必能推進(jìn)機(jī)械系統(tǒng)優(yōu)化設(shè)計(jì)技術(shù)的進(jìn)步[6]。
[1] 王晨. 機(jī)械工程設(shè)計(jì)優(yōu)化策略分析[J]. 科技向?qū)В?012(9):376.
[2] 張斌閣. 淺析機(jī)械優(yōu)化設(shè)計(jì)[J]. 東方企業(yè)文化,2012(1):184-185.
[3] 黃席樾,胡小兵. 現(xiàn)代智能算法理論及應(yīng)用[M]. 北京: 科學(xué)出版社, 2005:17-18.
[4] James Kennedy,Russell C Eberhart,Yuhui Shi. 群 體 智能:英文版[M].北京: 人民郵電出版社,2009:146-148.
[5] 張統(tǒng)華,鹿曉陽. 群體智能優(yōu)化算法的研究進(jìn)展與展望[J]. 山西建筑,2007(1):14-16.
[6] 張榮沂. 智能優(yōu)化算法在機(jī)械優(yōu)化設(shè)計(jì)中的應(yīng)用[J]. 機(jī)械設(shè)計(jì)與制造,2003(1):46-47.