提出了一種基于遺傳算法的機械方案計算機輔助設(shè)計系統(tǒng)模型。該模型通過把機械方案設(shè)計過程看作一個狀態(tài)空間的問題求解,用遺傳算法控制搜索過程,自動生成一組可行的設(shè)計方案,并通過傳動方案設(shè)計實例,驗證了求解的有效性。
近年來,機械計算機輔助設(shè)計方面的研究工作主要集中在詳細設(shè)計中易于數(shù)值化的設(shè)計任務(wù),并研制出不少有效的軟件系統(tǒng),如有限元分析軟件、模擬仿真軟件、繪圖軟件等。而最有創(chuàng)造性的設(shè)計工作——方案設(shè)計任務(wù),基本上仍然由設(shè)計者來完成。機械設(shè)計過程一般由方案設(shè)計、詳細設(shè)計、設(shè)計評價和再設(shè)計等4個階段組成。方案設(shè)計是機械設(shè)計的關(guān)鍵環(huán)節(jié),方案的好與壞直接影響產(chǎn)品的性能和質(zhì)量。與詳細設(shè)計相比,方案設(shè)計更注重創(chuàng)造性,因而也就更難用計算機來實現(xiàn)。目前,在機械方案計算機輔助設(shè)計方面的研究較少,尚處于初期階段,較有效的理論模型尚未出現(xiàn)。
方案設(shè)計過程可視為一個狀態(tài)空間中的問題求解搜索過程。這里要解決的主要問題是如何控制搜索。設(shè)計問題的狀態(tài)空間是復(fù)雜的,在沒有得出其全部或某些局部解的情況下是無法明確地構(gòu)筑出來的,求解搜索常常是隨機變化的。設(shè)計問題的求解空間大,盲目搜索將會導(dǎo)致組合爆炸。研究能在搜索過程中自動獲取和積累有關(guān)搜索空間的知識,減少搜索空間并自適應(yīng)地控制搜索過程,從而得到最優(yōu)解的搜索算法是方案設(shè)計問題求解的關(guān)鍵。遺傳算法(Genetic Algorithm,簡稱GA)就是這種特別有效的算法。遺傳算法按不依賴于問題本身的方法作用在特征串群體上,搜索可能的特征串空間以找到高適應(yīng)值串,為了指導(dǎo)這個搜索,算法僅用到與在搜索空間中檢查過的點相聯(lián)系的適應(yīng)值。本文應(yīng)用GA研究提出基于GA的機械方案計算機輔助設(shè)計系統(tǒng)模型,并建立實例系統(tǒng),為機械產(chǎn)品后序設(shè)計和最終結(jié)果最優(yōu)打下良好基礎(chǔ)。
1 基于GA的機械方案CAD模型
1.1 知識表示
面向?qū)ο蠓椒ㄒ詫ο笞鳛榛驹,是分析問題、解決問題的核心,它模擬了人類認識問題的較高、較廣的過程。
(1)面向?qū)ο蟮闹R表示方法
在面向?qū)ο蟮闹R表示方法中,知識表示的基本構(gòu)件是知識類和知識對象。知識類實例化后形成知識對象,成為知識載體,表示與應(yīng)運領(lǐng)域中的實體或抽象體相對應(yīng)的知識。例如,知識類“圓錐齒輪”描述關(guān)于圓錐齒輪機構(gòu)的知識,其實例化對象可被系統(tǒng)用來組成方案。
知識對象由與它有關(guān)的屬性和方法來描述,屬性反映了知識對象的靜態(tài)特性。如機構(gòu)名稱。方法描述了知識對象接受到消息后所執(zhí)行的動作。例如,“平帶”對象有一個檢查是否滿足傳動功率的方法。
知識類之間的關(guān)系。知識類之間的最基本的關(guān)系是繼承關(guān)系,派生類可以繼承基類的特性和行為,從而形成知識的層次關(guān)系。例如,機械設(shè)計中各種機構(gòu)知識類通過繼承關(guān)系形成樹形結(jié)構(gòu),如圖1所示。知識對象之間的關(guān)系,一種是創(chuàng)建關(guān)系,即一個知識對象在其成員方法中依靠創(chuàng)建另一個對象,而后委托它進行工作,最后完成自己的工作。對象之間的另一種關(guān)系是聚合關(guān)系。如方案對象中包括幾個機構(gòu)類的派生類對象,以某種關(guān)系形成一個方案。
圖1 機構(gòu)繼承關(guān)系圖
(2)機械方案設(shè)計知識的面向?qū)ο蟊硎?/p>
從系統(tǒng)中知識的作用來看,系統(tǒng)中用到的知識主要有控制知識、方案評價知識及有關(guān)機構(gòu)的知識?刂浦R是有關(guān)問題分析、求解策略及使用知識的知識,如根據(jù)設(shè)計要求劃分傳動鏈,生成設(shè)計約束條件。方案評價知識對GA生成器產(chǎn)生的方案進行分析、評價,確定其適應(yīng)值。機構(gòu)知識描述傳動方案中的各種機構(gòu)相關(guān)的知識。
從知識表現(xiàn)的形式看,主要有數(shù)據(jù)、算法及判斷形式,在面向?qū)ο蟮闹R表示法中,可用參數(shù)、規(guī)則和方法等知識項來表示每個知識對象中其中的1~3種。參數(shù)可以表示數(shù)據(jù)形式的知識,用知識類中的成員變量來描述。規(guī)則用以表示判斷形式的知識,規(guī)則主體由IF-THEN兩部分組成。方法用以表達計算過程或判斷形式的知識。如方案評價知識類可用圖2來描述。
圖2 方案評價知識類
1.2 方案編碼表示
遺傳算法是一個搜索編碼串空間的過程,其目的是找到相對高適應(yīng)值的串,在應(yīng)用遺傳算法求解特殊問題時,首先要確定用類似染色體的串表示問題的方法。在常規(guī)的遺傳算法中,方案表示是把問題的搜索空間中的每個可能的點表示為確定長度的特征串,在染色體串和問題的搜索空間中的點之間選擇映射,有時容易實現(xiàn),有時非常困難。選擇一個便于遺傳算法求解問題的表示方案需要對問題有深入的了解。機械傳動系統(tǒng)按照能量流動路線可分為單流、多流(分流、匯流、混流)形式,如圖3所示。因此一個機械傳動方案可認為由幾個機構(gòu)按一定順序構(gòu)成,可用這幾個機構(gòu)代碼的有序排列組成一個編碼來表示這一方案。由于機構(gòu)代碼與機構(gòu)知識庫中的知識對象的對象標識一一對應(yīng),從而機構(gòu)代碼的一個有序排列唯一對應(yīng)某一方案。例如,{3,2,2}的編碼表示由帶輪、齒輪、齒輪組成的一個方案。
圖3 機械傳動能量流動路線分類
1.3 遺傳算法的參數(shù)
遺傳算法的參數(shù)主要有串長1,群體規(guī)模N,交換概率Pc,變異概率Pm,最大遺傳代數(shù)M。設(shè)組成機械傳動系統(tǒng)的機構(gòu)數(shù)目為n,每個機構(gòu)用一個自然數(shù)表示,則1=n;其余參數(shù)按照薦用值選取,N=50~200,Pc=0.5~1.0,Pm=0.01,M=500。
1.4 遺傳操作
通過模擬生物界自然選擇和自然遺傳過程,遺傳算法把一個群體變換到另一個新的群體。一個基本遺傳算法由復(fù)制、交換和變異算子組成。
(1)復(fù)制 提高群體的平均適應(yīng)值,采用最優(yōu)串復(fù)制與適應(yīng)值比例復(fù)制相結(jié)合,保證全局收斂,且搜索效率高。
(2)交換 產(chǎn)生新的個體,采用雙點交換,即從群體中隨機取出兩個串,隨機產(chǎn)生兩個交換位置,將兩個串在這兩點之間的對應(yīng)位置進行交換。
(3)變異 增加群體的多樣性,采用均勻突變,即每一位以相同的概率在域內(nèi)變化。
(4)其他算子 引入倒位、共享等算子以保持群體的多樣性。 Bv;I0i:_
Nhjle@J<
1.5 方案評價
方案評價,即確定適應(yīng)值度量以檢測一個特定串所表示的方案的好壞程度,適應(yīng)值度量必須有能力計算搜索空間中每個確定長度的特征串的適應(yīng)值。因此是遺傳算法中較為困難的部分,適應(yīng)值直接指導(dǎo)搜索過程,其合理性至關(guān)重要。對于不同的問題采用不同的評價策略。對于機械傳動方案,可根據(jù)設(shè)計要求,初步采用下述步驟進行方案評價。(1)檢查各機構(gòu)之間的匹配關(guān)系;(2)檢查整體輸入輸出是否合理;(3)檢查傳動比是否滿足;(4)檢查傳動功率是否滿足;(5)檢查傳動效率是否滿足;(6)根據(jù)每個機構(gòu)特點檢查其合理性。并由此確定每個方案的適應(yīng)值。
2 系統(tǒng)結(jié)構(gòu)
系統(tǒng)整個結(jié)構(gòu)如圖4所示。
圖4 系統(tǒng)結(jié)構(gòu)
系統(tǒng)通過設(shè)計要求輸入模塊完成設(shè)計要求的輸入。調(diào)用方案生成模塊產(chǎn)生N(群體規(guī)模)個方案,方案評價模塊根據(jù)具體方案的構(gòu)成調(diào)用相關(guān)知識對每個方案進行分析、推理,并根據(jù)其優(yōu)劣程度確定其適應(yīng)值。知識維護模塊對知識庫進行管理,包括知識輸入、知識修改、知識查詢、知識刪除。圖形處理模塊完成機構(gòu)簡圖的編輯、存儲,建立圖形庫,并根據(jù)設(shè)計結(jié)果調(diào)用圖形庫產(chǎn)生相應(yīng)的方案簡圖。系統(tǒng)以Borland C++ 4.5為開發(fā)環(huán)境,并調(diào)試成功。
3 設(shè)計實例
設(shè)計要求為:輸入轉(zhuǎn)速 1440r/m; DWF
>b
輸出轉(zhuǎn)速 150r/m; G[|3^O>P
傳動功率 10.46kW; +<)tql*
傳動效率。0.8 kA1RfSS
寬度尺寸 緊湊 bcq@N
工作條件 惡劣 >=4sPF)
圖5給出的實例為方案之一。
軸名參數(shù) | 機軸 | Ⅰ軸 | Ⅱ軸 | Ⅲ軸 | 工作軸 |
轉(zhuǎn)速n(r/min) | 1440 | 1440 | 576.0 | 150.0 | 150.0 |
傳動比i | 1.0 | 2.2 | 4.24 | 1.0 | |