武 星,齊 峻
(長安大學(xué)工程機(jī)械學(xué)院,陜西 西安 710064)
拓?fù)鋬?yōu)化是一種具有創(chuàng)新性的結(jié)構(gòu)優(yōu)化方法,自Bends?e和Kikuchi[1]發(fā)表相關(guān)研究成果以來,連續(xù)體結(jié)構(gòu)的拓?fù)鋬?yōu)化方法得到了廣泛的關(guān)注與推廣。隨著技術(shù)的發(fā)展,拓?fù)鋬?yōu)化算法也被嵌入商用軟件中,張明松等[2]利用ANSYS Workbench對曲柄臂進(jìn)行了優(yōu)化分析,李錚等[3]同樣利用ANSYS Workbench對支架進(jìn)行了優(yōu)化設(shè)計(jì)。雙向漸進(jìn)法(BESO)作為經(jīng)典的拓?fù)鋬?yōu)化方法,主要針對離散的0~1設(shè)計(jì)問題,設(shè)計(jì)變量為1,表示元素的存在;設(shè)計(jì)變量為0.001,表示元素的缺失[4]。對于拓?fù)鋬?yōu)化算法與遺傳算法的結(jié)合,Liu等[5]提出了一種ESO與GA的聯(lián)合算法;Zuo等[6]提出了一種將GA與BESO相結(jié)合的方法,大大降低了計(jì)算成本。將材料添加策略算法(AESO)與GAs相結(jié)合,通過逐步增加材料,得到了有效的拓?fù)鋬?yōu)化結(jié)果[7]。非支配排序遺傳算法(NSGA)的缺點(diǎn)是算法計(jì)算的復(fù)雜度較高,NSGA-II保持了NSGA原有的優(yōu)點(diǎn),改進(jìn)了不足,保證了非劣最優(yōu)解的均勻分布。晶格結(jié)構(gòu)在降噪、吸熱、重量輕等方面有一定的優(yōu)勢,Xia等[8]提供了一種基于能量均勻化方法的微結(jié)構(gòu)設(shè)計(jì)MATLAB代碼;Huang等[9]基于BESO法,通過均勻化理論針對雙尺度優(yōu)化問題進(jìn)行了研究?,F(xiàn)有的大多數(shù)單相材料結(jié)構(gòu)往往無法達(dá)到使用目的,所以單相材料結(jié)構(gòu)拓?fù)鋬?yōu)化方法需推廣至多材料優(yōu)化以實(shí)現(xiàn)最佳性能。Li等[10]考慮到材料在拉伸和壓縮中通常具有不同的力學(xué)性能,所以在拉伸區(qū)域布置適合拉伸的材料,在壓縮區(qū)域布置適合壓縮的材料。
本文提出了一種結(jié)合NSGA-II和BESO的方法,以最小柔順性為目標(biāo)函數(shù)。將雙尺度優(yōu)化中的單相材料推廣到兩相固體材料,利用改進(jìn)的密度插值函數(shù)推導(dǎo)出帶懲罰因子的靈敏度計(jì)算公式,提出了雙懲罰交叉變異算子,并通過算例證明了該方法的有效性及其獲得收斂解的能力。
均勻化方法中,一般將微觀結(jié)構(gòu)的尺寸視為遠(yuǎn)小于宏觀結(jié)構(gòu)的尺寸。同時(shí),微觀結(jié)構(gòu)在宏觀結(jié)構(gòu)中呈現(xiàn)周期性分布,在宏觀結(jié)構(gòu)中考慮微觀層面設(shè)計(jì)變量,則可以表示為:
式中,目標(biāo)C是最小化結(jié)構(gòu)的平均順應(yīng)性,F(xiàn)和U表示宏觀結(jié)構(gòu)所受的外力矢量與節(jié)點(diǎn)位移矢量,微觀結(jié)構(gòu)被離散為N個(gè)微觀單元。V*表示微觀結(jié)構(gòu)的目標(biāo)體積分?jǐn)?shù)。為第j個(gè)單元的設(shè)計(jì)變量。
對于具有n個(gè)離散單元的m相材料拓?fù)鋬?yōu)化問題,可成立如下等式:
式中,yij代表第i個(gè)單元中第j種材料所占的權(quán)重。單元中有且僅有一個(gè)固體材料處于活躍狀態(tài),其他固體材料權(quán)值數(shù)值較低或者為0。
對于所提出的優(yōu)化框架,平均順應(yīng)性對微觀設(shè)計(jì)變量的靈敏度表達(dá)式為:
本文采用兩相固體材料與空洞材料進(jìn)行多相材料的拓?fù)鋬?yōu)化設(shè)計(jì),利用SIMP法可將單元剛度矩陣插值表示為:
由于存在兩種固相材料,所以j可取值1或2。由改進(jìn)的SIMP法中的材料插值方案對微觀結(jié)構(gòu)的彈性張量進(jìn)行表示,具體形式為:
式中,c=1e-9,避免矩陣的奇異性,p為懲罰因子,D0為材料的本構(gòu)彈性張量。
對于微觀結(jié)構(gòu),均勻化彈性張量可以表示為:
式中,ε()為線性無關(guān)的單元應(yīng)變場,ε(um)表示微觀結(jié)構(gòu)的未知應(yīng)變場,可以通過線性彈性平衡方程求解,再聯(lián)立上式便可得到最終優(yōu)化目標(biāo)。
為有效地減少棋盤格現(xiàn)象,首先,采用靈敏度過濾策略對靈敏度進(jìn)行修正:
式中,H為設(shè)計(jì)域內(nèi)的節(jié)點(diǎn)總數(shù),w(rik)為權(quán)重因子,rik表示節(jié)點(diǎn)i的中心到節(jié)點(diǎn)k中心的距離。
其次,采用考慮歷史迭代信息的收斂策略修正靈敏度值:
式中,αi,g'與αi,g-1'分別為第i個(gè)單元的第g次和第g-1次迭代步的靈敏度值。
在NSGA-II與BESO的聯(lián)合算法中,將每個(gè)元素視為獨(dú)立個(gè)體進(jìn)行分析。對于每個(gè)個(gè)體,設(shè)置為全1的初始字符串,全1代表設(shè)計(jì)域內(nèi)的所有單元都為固相材料,而隨著優(yōu)化的進(jìn)行,低靈敏度的個(gè)體會有機(jī)會被變異為全0數(shù)組,這也就意味著該單元為本次迭代中要被刪除的單元。
根據(jù)所推導(dǎo)出的靈敏度公式對每個(gè)個(gè)體進(jìn)行靈敏度的計(jì)算,將種群劃分為高靈敏度區(qū)域和低靈敏度區(qū)域。對于交叉操作,在隨機(jī)的兩個(gè)個(gè)體中再隨機(jī)選擇兩個(gè)位置索引點(diǎn)作為交叉位,通過交換兩個(gè)親代的位置索引點(diǎn)內(nèi)的二進(jìn)制編碼對親代進(jìn)行交叉操作。變異算子中的每個(gè)二進(jìn)制編碼在每次迭代過程中均有一定的概率進(jìn)行變異,在優(yōu)化算法迭代循環(huán)時(shí),隨著迭代次數(shù)的增加,交叉率與變異率逐漸懲罰到某個(gè)極大值。而在每個(gè)迭代步中,對高靈敏度區(qū)域,隨著靈敏度數(shù)值由高到低變化,逐漸將變異率懲罰到某個(gè)極小值;對低靈敏度區(qū)域,同樣隨著靈敏度由高到低變化,逐漸將變異率懲罰到某個(gè)極大值;隨著靈敏度的降低,變異為0的概率也逐漸增加。
本節(jié)主要通過數(shù)值例子驗(yàn)證算法的正確性。考慮了三種虛擬材料,它們的物理特性如表1所示。
表1 虛擬材料的物理屬性
本例考慮的是40 mm×40 mm的L型梁,L型梁的初始結(jié)構(gòu)及其優(yōu)化初始微結(jié)構(gòu)設(shè)計(jì)如圖1所示。L型梁頂部固定,右端受到豎直向下大小為1 N的力,保留實(shí)體體積分?jǐn)?shù)為40%。設(shè)置兩種固相材料的分布比例,定義材料1占比為30%。首先令材料1填滿設(shè)計(jì)域,設(shè)置懲罰因子p=3,濾波半徑rmin=2,體積進(jìn)化比ER=0.02。
圖1 L型梁及其優(yōu)化初始微結(jié)構(gòu)設(shè)計(jì)
L型梁優(yōu)化結(jié)果及微結(jié)構(gòu)的邊界連接示意圖,如圖2所示。結(jié)構(gòu)目標(biāo)函數(shù)值為50.882 99??梢园l(fā)現(xiàn)當(dāng)這兩種微結(jié)構(gòu)進(jìn)行邊界融合時(shí),由于形狀的區(qū)別度較大,會導(dǎo)致區(qū)域節(jié)點(diǎn)部分無法實(shí)現(xiàn)較強(qiáng)的連通性也無法更好地實(shí)現(xiàn)力的傳遞,導(dǎo)致計(jì)算結(jié)果不準(zhǔn)確,為了解決這一問題,本文提出了固定微結(jié)構(gòu)邊界的方法。在每一代迭代過程中,保持微結(jié)構(gòu)邊界區(qū)域單元的密度始終為1,使得模型更加合理。最終具有連通微結(jié)構(gòu)的L型梁優(yōu)化結(jié)果的宏觀與微觀結(jié)構(gòu)示意圖,如圖3所示。
圖2 L型梁優(yōu)化結(jié)果及微結(jié)構(gòu)的邊界連接示意圖
圖3 具有連通微結(jié)構(gòu)的L型梁優(yōu)化結(jié)果
在經(jīng)典BESO算法下的L型梁優(yōu)化結(jié)果如圖4所示??梢钥闯鰞煞N算法的宏觀結(jié)構(gòu)與微觀結(jié)構(gòu)在宏觀布局上并未有太大差異,說明了本文演示算法的正確性與有效性。兩種優(yōu)化算法的平均柔度結(jié)果對比如表2所示。可以看出BESO-NSGA-II所計(jì)算的結(jié)構(gòu)平均柔度為48.926 3,而經(jīng)典BESO方法所計(jì)算的結(jié)構(gòu)平均柔度為53.391 2,說明在BESO-NSGA-II的優(yōu)化下,結(jié)構(gòu)剛度有一定的提升。值得注意的是,本文主要針對結(jié)構(gòu)剛度進(jìn)行優(yōu)化,所以忽略運(yùn)行時(shí)間上的成本。
圖4 經(jīng)典BESO算法下的L型梁優(yōu)化結(jié)果
表2 平均柔度優(yōu)化結(jié)果對比
首先,本文提出了一種新的拓?fù)鋬?yōu)化方法對結(jié)構(gòu)進(jìn)行輕量化設(shè)計(jì),通過將BESO方法與NSGA-II算法結(jié)合,提高了算法的全局搜索能力并保證了最終結(jié)果能夠收斂到全局最優(yōu)解而非局部最優(yōu)解。其次,通過材料插值公式設(shè)計(jì)了兩相固體材料下的優(yōu)化結(jié)構(gòu),增強(qiáng)了結(jié)構(gòu)的使用性能。最后,將基于BESO-NSGAII算法與基于傳統(tǒng)BESO算法的雙尺度優(yōu)化結(jié)果進(jìn)行對比,證明了該算法的有效性。