魏巍
(中國第一重型機械股份公司助理工程師,黑龍江 齊齊哈爾 161000)
遺傳算法算是一個以適應度(或目標函數(shù))為依據(jù),并對群體個體進行遺傳操作,實現(xiàn)群體中個體結構重組的迭代過程。在此過程中,群體個體遵循自然界生物進化原則,一代一代地逐漸逼近最優(yōu)解。遺傳算法的主要因素有:參數(shù)編碼、初始群體的設定、適應度設計、遺傳操作法則和算法控制參數(shù)的確定等。
遺傳算法在機械設計中的應用與傳統(tǒng)優(yōu)化方法相比,遺傳算法具有對初始之不敏感以及能搜索到全局最優(yōu)解的優(yōu)點,對緊固螺栓的優(yōu)化實例表明,該方法可行而且十分簡便。
標準遺傳算法已經(jīng)取得了廣泛的應用,但存在收斂速度慢及算法穩(wěn)定性差等缺陷,本文提出了如下改進措施:
2.1.1 競爭選擇
即從群體中任意選擇兩個個體,拋棄適應值較差的個體,保留其中適應值較好的一個個體。重復執(zhí)行這一過程,得到另一個個體,將此兩個個體作為父代個體,對其執(zhí)行雜交、編譯操作,以生成一子代個體。
2.1.2 一致雜交
即通過從兩個父代個體的對應基因位隨機選取子代個體的對應基因,其操作過程為:設選擇進行雜交操作的兩個父代個體對應的二進制串分別為00000和11111,則產(chǎn)生新個體的二進制串的每一位值是隨機從00000和11111的對應為上的兩個值中選取的。例如,新個體二進制串上第1、3、5位的值來自父代個體00000,而第2、4位的值來自父代個體11111,則產(chǎn)生的新個體為01010。
2.1.3 大突變變異和兩點逆轉變異
編譯算子基本內容是對群體中個體的染色體編碼串上某位的值作變動。突變變異指對于個體的二進制編碼串中的每一位以突變概率Pj進行取反操作。理論上,遺傳算法的突變操作可以產(chǎn)生新個體,是算法跳出“早熟”。為了保持算法的穩(wěn)定性,突變操作的突變概率通常取很小值,緊靠傳統(tǒng)的突變操作需要很多代才能變異出一個不同與其它個體的新個體。大突變操作的思想是:對上代群體,以一個遠大于通常突變概率的概率進行一次突變操作,從而使群體保持多樣性,是群體脫離早熟。而兩點逆轉變異則指以概率Pc選擇個體的二進制編碼串中的某一個參數(shù)串,個體的二進制編碼串由各個參數(shù)的二進制子串串聯(lián)而成,然后將此子串上某一位的值與其前一位或后一位上的值交換。
2.1.4 最佳個體保留機制
該子算法的思想是把當前群體中適應值最好的個體不進行雜交變異而直接復制到下一代中,這樣進化過程中某一代的最優(yōu)解可不被雜交和變異操作所破壞。
改進后的遺傳算法,由于約束的限制,需對標準遺傳算法中采用的適應值函數(shù)進行一定的改造,這里采用加入懲罰項的廣義目標函數(shù)來處理約束。所采用的廣義目標函數(shù)即在目標函數(shù)中加上一個反映是否位于約束集內的懲罰項,從而使得算法在懲罰項的作用下找到原問題的最優(yōu)解。懲罰項對可行點不產(chǎn)生懲罰,而對非可行點產(chǎn)生一個正的懲罰,懲罰函數(shù)可定義為:
其中,約束 gi(x)>0,i=1,2…,m;hj(x)=0,j=1,2…,l;p為正整數(shù),一般取1或2,則廣義目標函數(shù)可定義為:
式中 r----罰因子,r>0。
這里我們采用了緊固螺栓的優(yōu)化設計實例,如圖1所示。
圖1
用襯墊密封的壓力容器同壓力容器蓋之間的聯(lián)接屬于緊固螺栓的聯(lián)接。已知其E=H=15mm,D0=200mm,壓力容器 p=12.74MPa,要求選擇緊固螺栓尺寸以及個數(shù),使其成本能夠最低。該優(yōu)化問題的數(shù)學模型為
對緊固螺栓優(yōu)化問題,可以將等式約束在參數(shù)處理時進行施加,則其適應值函數(shù)為
其中,r取2.5。
用遺傳算法進行搜索尋優(yōu)時,其主要參數(shù)取為:群體大小為15,大突變變異概率和兩點逆轉變異概率分別為0.5、0.2,最大運行代數(shù)為30。變量取值范圍為D∈[10,20],N∈[1,15]。迭代到第30代最優(yōu)解為D=17,N=6,參照35鋼采用正回火處理的螺栓許用載荷取整為D=18,N=6。
機械現(xiàn)代設計目標要求為功能-質量-成本的系統(tǒng)化,它包括方案選擇、材料選擇、結構優(yōu)化、工藝規(guī)劃、可靠性分析及成本分析等眾多因素與綜合知識,將遺傳算法與CAD技術結合解決系統(tǒng)的優(yōu)化問題。
3.1 可靠性分析方面
為了使機械系統(tǒng)獲得最高可靠性,可用遺傳算法進行系統(tǒng)可靠度分配,在機械維修和期望損失最小的前提下,用遺傳算法確定機械體統(tǒng)的最有維修策略。
3.2 FMS(柔性制造系統(tǒng))調度方面
使待加工的零件在FMS系統(tǒng)的制造時間最短,將該零件加工次序進行編碼,用遺傳優(yōu)化運算實現(xiàn)最短加工。針對一個需要多工序加工的零件,為求確定沒道工序所合理分配的設備,對每道工序分配設備號編碼,在各臺設備的負荷可能相等的前提下,用遺傳算法實現(xiàn)機床設備的最優(yōu)分配。
3.3 數(shù)控加工誤差自適應預報控制方面在獲得誤差時檢測(或序后測量)數(shù)據(jù)后,對誤差模型結構和參數(shù)進行編碼,用遺傳算法建立最優(yōu)的誤差模型。再根據(jù)誤差預報的誤差修改數(shù)控加工序,實現(xiàn)加工誤差和自適應控制。
雖然遺傳算法在機械工程應用中還有問題有待于解決,但隨著應用的人群逐步增多,它的研究進一步深入和完善,遺傳算法在機械領域的應用將更加廣泛。
結語
本算法給我們啟示:(1)對一種新的智能化的遺傳算法進行了初步探討,并對該方法在具體的機械設計中的應用進行了改進。(2)改進的遺傳算法具有快速收斂到最優(yōu)解和算法穩(wěn)定的優(yōu)點。(3)遺傳算法用于緊固螺栓的優(yōu)化設計,方法簡便實用,是一種非常有效的優(yōu)化方法,它為緊固螺栓的合理設計提供了一條新的技術途徑。(4)遺傳算法對機械設計中的其他復雜的優(yōu)化問題同樣具有很大的實用性,只不過在針對具體問題是其編碼和約束的處理方法有所不同。
總的來說,遺傳算法給我們在復雜的計算過程中尋求最優(yōu)解提供了簡便,它將在各個領域得到廣泛的使用,尤其是現(xiàn)在的機械行業(yè)作用尤為突出。我們只要在平時的工作中懂得不斷創(chuàng)新并懂得使用,它將會在未來的機械領域以及其它領域起著越來越重要的作用。
[1]丁書斌.基于混合遺傳算法的車間調度方法研究與應用[D].大連理工大學,2006-12-01.