李彬, 汪小平, 張柳春, 朱南海
(江西理工大學(xué)建筑與測(cè)繪工程學(xué)院,江西 贛州341000)
鋼結(jié)構(gòu)建筑具有施工速度快、施工揚(yáng)塵少、可循環(huán)利用和節(jié)能環(huán)保等特點(diǎn),在我國(guó)工業(yè)建筑中有較廣泛的應(yīng)用,特別是門(mén)式剛架在輕鋼廠房中的應(yīng)用.門(mén)式剛架作為一種傳統(tǒng)結(jié)構(gòu),歷經(jīng)近百年的發(fā)展,已經(jīng)形成一套設(shè)計(jì)、制作及施工相對(duì)完整的體系[1-3].傳統(tǒng)鋼結(jié)構(gòu)結(jié)構(gòu)設(shè)計(jì),包括門(mén)式剛架設(shè)計(jì),一般先由設(shè)計(jì)人員根據(jù)設(shè)計(jì)經(jīng)驗(yàn),初步選定構(gòu)件截面類型和截面尺寸,然后進(jìn)行承載力、穩(wěn)定性和變形驗(yàn)算,驗(yàn)算通過(guò)后即完成設(shè)計(jì),一般并不進(jìn)行方案比選和優(yōu)化.但是,由于設(shè)計(jì)人員的設(shè)計(jì)水平和設(shè)計(jì)經(jīng)驗(yàn)的差距,同一工程項(xiàng)目不同人員進(jìn)行設(shè)計(jì)時(shí),其結(jié)構(gòu)用鋼量可能產(chǎn)生巨大差異.有的設(shè)計(jì)單位用鋼量大,造價(jià)偏高,造成不必要的資源浪費(fèi).因此,對(duì)門(mén)式剛架采用優(yōu)化算法進(jìn)行全局搜索,從而得出最優(yōu)設(shè)計(jì)方案的過(guò)程對(duì)于門(mén)式剛架結(jié)構(gòu)的優(yōu)化設(shè)計(jì)有著十分重要的意義.
門(mén)式剛架主體結(jié)構(gòu)由鋼柱鋼梁組成,因此其優(yōu)化也主要從減少這兩種構(gòu)件的總重量來(lái)實(shí)現(xiàn).通過(guò)優(yōu)化鋼柱鋼梁的截面尺寸,從而完成門(mén)式剛架的結(jié)構(gòu)優(yōu)化設(shè)計(jì).目前,國(guó)內(nèi)外對(duì)門(mén)式剛架的截面優(yōu)化主要集中在三個(gè)方面:一是對(duì)構(gòu)件的尺寸及形狀采用拓?fù)鋬?yōu)化,二是采用枚舉法實(shí)現(xiàn)多個(gè)方案間比選優(yōu)化,三是采用搜索算法對(duì)截面參數(shù)進(jìn)行優(yōu)化選擇[4-9].其中,枚舉法需要列出所有可行解集合,理論上存在無(wú)數(shù)種可能,需要花費(fèi)大量時(shí)間來(lái)完成,甚至可能得不到最優(yōu)可行解;拓?fù)鋬?yōu)化則是通過(guò)設(shè)置合理去除率并進(jìn)行應(yīng)力計(jì)算完成構(gòu)件重量的優(yōu)化,更多是對(duì)構(gòu)件形狀的優(yōu)化,對(duì)構(gòu)件截面尺寸的優(yōu)化難以實(shí)現(xiàn);搜索算法可以通過(guò)設(shè)置一個(gè)可行域的子集并在其中搜索,從求解出問(wèn)題的最優(yōu)解或者近似最優(yōu)解.遺傳算法由美國(guó)教授J.Holland在1975年受到生物進(jìn)化論的啟發(fā)提出[10-11],相較于傳統(tǒng)搜索算法,通過(guò)模擬自然界的自然選擇和進(jìn)化過(guò)程,具有搜索速度快能自動(dòng)收斂的特點(diǎn),被廣泛的運(yùn)用于優(yōu)化計(jì)算體系中,如今更是作為群智能算法運(yùn)用于各個(gè)行業(yè).文中利用遺傳算法搜索速度快、能自動(dòng)收斂的特點(diǎn),將鋼材截面類型和截面尺寸參數(shù)離散化為種群的可行解集,通過(guò)選擇、交叉以及變異等一系列遺傳操作過(guò)程,完成鋼材截面選型和截面尺寸的確定.
如圖1所示的門(mén)式剛架結(jié)構(gòu),梁柱構(gòu)件可采用型鋼或者焊接組合鋼,截面類型(OTHI)可以為T(mén)型、H型、工字型等,每一種截面類型可以選取不同規(guī)格,例如 HW250×250、HM300×200、HN350×150 等上百種截面尺寸中進(jìn)行選取.設(shè)計(jì)目的是在選定的型鋼集合以及焊接鋼材的范圍內(nèi),在滿足安全要求及使用要求的條件下,得到結(jié)構(gòu)總用鋼量最小的設(shè)計(jì)方案.
圖1 門(mén)式剛架示意
傳統(tǒng)遺傳算法一般采用單一編碼方式,不能處理不同情況下的多種規(guī)則狀況的優(yōu)化搜索.針對(duì)這一問(wèn)題,文中采用十進(jìn)制與二進(jìn)制混合編碼,同時(shí)在交叉和變異過(guò)程中保護(hù)某些種群個(gè)體特殊性質(zhì)和參數(shù),形成多層次遺傳算法,進(jìn)行最優(yōu)截面搜索[12].
1.2.1 初始種群及編碼
在遺傳算法中,初始種群化代表初始可行解的數(shù)量,其經(jīng)驗(yàn)數(shù)值為20~100.而編碼過(guò)程,則是對(duì)初始可行解的參數(shù)在一定范圍內(nèi)進(jìn)行隨機(jī)生成.文中模型采用的是一維、變長(zhǎng)、十進(jìn)制結(jié)合二進(jìn)制混合編碼,模型編碼結(jié)構(gòu)如式(1)所示:
式(1),中(a1,a2,…,an) 是鋼材種類編碼串,采用十進(jìn)制編碼,ai長(zhǎng)度為1,可表示一種鋼材類型編碼(例如:a1可以代表型鋼工字鋼,a2則可以代表焊接工字鋼). (a1,a2,…,an)的總長(zhǎng)度則根據(jù)模型所選取的種類來(lái)確定,可以表示n種鋼材類型.
(p1,p2,…,pn)是鋼材截面參數(shù)編碼串,采用二進(jìn)制編碼,pi長(zhǎng)度則根據(jù)所選取的截面參數(shù)范圍及求解精度確定 (例如:p1可以表示為焊接工字鋼的高度,p2則可以表示為焊接工字鋼翼緣寬度),每個(gè)參數(shù)在編碼前應(yīng)進(jìn)行離散化處理.(p1,p2,…,pn)的總長(zhǎng)度則根據(jù)所需截面參數(shù)的數(shù)量來(lái)確定,可以表示n種截面參數(shù).
1.2.2 交叉和變異保護(hù)策略
在遺傳算法的運(yùn)行過(guò)程中,新一代種群主要通過(guò)老一代種群的染色體交叉和變異過(guò)程產(chǎn)生,由于其具有隨機(jī)性,會(huì)產(chǎn)生完全不同的編碼結(jié)構(gòu).文中所用模型采用的是一維、變長(zhǎng)、十進(jìn)制結(jié)合二進(jìn)制混合編碼,若采用傳統(tǒng)的交叉和變異過(guò)程,會(huì)產(chǎn)生混亂的編碼結(jié)構(gòu),導(dǎo)致解碼過(guò)程復(fù)雜,不能進(jìn)行統(tǒng)一解碼,增加程序計(jì)算復(fù)雜程度.因此,為了保證種群個(gè)體的特殊屬性以及參數(shù),文中采用保護(hù)個(gè)體部分參數(shù)的辦法來(lái)對(duì)遺傳算法的交叉和變異過(guò)程進(jìn)行改變.具體操作方法與過(guò)程是:
將完成遺傳算法選擇過(guò)程的老一代種群的染色體分為兩個(gè)部分,第一部分為鋼材種類編碼串,第二部分為鋼材截面參數(shù)編碼串,兩部同時(shí)進(jìn)行交叉,并且規(guī)定第二部分若進(jìn)行交叉則第一部分編碼位置互相交換,反之亦然.完成交叉過(guò)程之后,進(jìn)行變異過(guò)程,為了保持種群個(gè)體鋼材種類編碼串的特殊屬性,變異過(guò)程僅對(duì)鋼材截面參數(shù)編碼串進(jìn)行.
經(jīng)過(guò)上述方法的交叉和變異過(guò)程,產(chǎn)生了新種群,也保證了種群個(gè)體的特殊屬性.同時(shí),經(jīng)過(guò)交叉和變異的保護(hù)策略,可以減少編碼過(guò)程中出現(xiàn)雜亂無(wú)章的情況出現(xiàn),從而減少遺傳算法的運(yùn)算復(fù)雜程度,降低計(jì)算時(shí)間.
門(mén)式剛架的內(nèi)力計(jì)算,目前設(shè)計(jì)過(guò)程中一般采用電算進(jìn)行,其基本原理為有限元法.因矩陣位移法與有限元法同出一源,更適合計(jì)算機(jī)編程計(jì)算[13],因此,文中對(duì)門(mén)式剛架的內(nèi)力計(jì)算,通過(guò)遺傳算法初始種群過(guò)程中產(chǎn)生的截面參數(shù)帶入矩陣位移法完成.
矩陣位移法一般通過(guò)單元編碼以及節(jié)點(diǎn)編碼開(kāi)始.隨后對(duì)梁?jiǎn)卧M(jìn)行模擬,未進(jìn)行坐標(biāo)轉(zhuǎn)換之前,梁?jiǎn)卧膯卧獎(jiǎng)偠染仃嚕缡剑?)所示:
其中:E為鋼的彈性模量;l為構(gòu)件長(zhǎng)度;A和I分別為構(gòu)件截面面積和截面慣性矩,可以通過(guò)對(duì)遺傳算法中截面參數(shù)編碼串進(jìn)行解碼,得到構(gòu)件鋼材的高度h、翼緣寬度b、翼緣寬度t以及腹板厚度tw,再進(jìn)一步計(jì)算求解得出A和I.
將各個(gè)構(gòu)件的單元?jiǎng)偠染仃嚽蠼馔瓿珊螅捎脝卧煞?,形成結(jié)構(gòu)整體剛度矩陣K.同時(shí),采用相同方法,求解出整體結(jié)構(gòu)的等效結(jié)點(diǎn)荷載向量P.根據(jù)整體剛度矩陣和等效結(jié)點(diǎn)荷載向量之間的關(guān)系,如式(3)所示,求解結(jié)點(diǎn)位移向量.進(jìn)而通過(guò)式(4)求解出構(gòu)件的桿端內(nèi)力向量.
式(4)中,桿端內(nèi)力向量包括桿兩端的軸力、剪力以及彎矩.
假設(shè)門(mén)式剛架有 C1,C2,…,Cn共 n 個(gè)構(gòu)件,則每一構(gòu)件的截面面積A1,A2,…,An可以通過(guò)編碼隨機(jī)獲得截面參數(shù)進(jìn)行求解.再根據(jù)鋼的密度ρ,構(gòu)件的長(zhǎng)度li,可以求解出整個(gè)門(mén)式剛架的結(jié)構(gòu)總重量如式(5)所示:
則目標(biāo)函數(shù)及約束條件為:
find:A=[A1,A2,…,An],i=1,2,…,n
對(duì)于式(6)中的約束條件并不是所有遺傳算法產(chǎn)生的構(gòu)件類型都滿足,因此對(duì)于不滿足約束條件的構(gòu)件,應(yīng)對(duì)其進(jìn)行懲罰(額外增加重量),從而使得進(jìn)行種群選擇過(guò)程中能被淘汰.故遺傳算法的適應(yīng)函數(shù)建立,如式(7)所示:
其中:γi表示每一個(gè)構(gòu)件的懲罰因子.
通過(guò)對(duì)遺傳算法過(guò)程中編碼、交叉和變異進(jìn)行改進(jìn),采用矩陣位移法計(jì)算結(jié)構(gòu)內(nèi)力,將門(mén)式剛架的構(gòu)件寬厚比驗(yàn)算、強(qiáng)度驗(yàn)算、剪切驗(yàn)算、整體穩(wěn)定性驗(yàn)算以及柱頂位移驗(yàn)算作為約束條件,從而完成整個(gè)門(mén)式剛架設(shè)計(jì)的截面優(yōu)化研究.整個(gè)計(jì)算優(yōu)化過(guò)程的流程如圖2所示.
某單跨雙坡門(mén)式剛架,,跨度12 m,柱高5 m,屋面坡度1/10,剛架立面圖如圖3所示.抗震設(shè)防烈度6度,基本風(fēng)壓值為0.4 kN/m2.屋面及墻面為夾芯彩鋼板;檁條墻梁為薄壁卷邊C型鋼,鋼材采用Q235鋼.
圖2 優(yōu)化算法流程
圖3 門(mén)式剛架立面圖(單位:mm)
2.2.1 鋼材類型及截面選取
針對(duì)所選取的單跨雙坡門(mén)式剛架,選取了10種截面類型,即:工字型鋼、窄翼緣H型鋼、中翼緣H型鋼、寬翼緣H型鋼、窄翼緣T型鋼、中翼緣T型鋼、寬翼緣T型鋼、焊接工字鋼、焊接H型鋼以及焊接T型鋼.
其中,型鋼部分選取國(guó)內(nèi)常用的型鋼,焊接鋼部分則選取截面參數(shù)范圍,選取結(jié)果如表1所示.
表1中型鋼和焊接鋼可選取種類數(shù)量差異過(guò)大,由于型鋼只需要確定任意一個(gè)參數(shù),即可確定其余所有參數(shù),故鋼材類型選取種類較少;而焊接鋼的四個(gè)參數(shù)進(jìn)行組合可得到新的截面類型(截面高度和翼緣寬度以10為模量進(jìn)行改變,腹板厚度和翼緣厚度以0.5為模量進(jìn)行改變),故焊接鋼的截面組合類型更多.
2.2.2 改進(jìn)遺傳算法
種群控制性參數(shù):算例選取種群規(guī)模為100,遺傳代數(shù)為2500代.
編碼:采用一維、變長(zhǎng)、十進(jìn)制結(jié)合二進(jìn)制混合編碼,型鋼染色體長(zhǎng)度為21或25,焊接鋼染色體長(zhǎng)度為89.
選擇:將解碼完成的參數(shù),帶入適應(yīng)度計(jì)算函數(shù),依照總重量最小原則,對(duì)整個(gè)種群采用輪盤(pán)賭的方式進(jìn)行選擇,保留優(yōu)秀個(gè)體或者小幾率保留不優(yōu)秀個(gè)體.
交叉和變異:算例采用保留個(gè)體特殊屬性策略來(lái)完成交叉和變異過(guò)程,對(duì)十進(jìn)制編碼部分和二進(jìn)制編碼部分分別交叉和變異.交叉過(guò)程采用單點(diǎn)交叉完成,其交叉概率為0.8,而變異過(guò)程采用隨機(jī)變異完成,單點(diǎn)變異概率為0.01.
表1 鋼材選取類型
2.2.3 矩陣位移法計(jì)算內(nèi)力
根據(jù)門(mén)式剛架設(shè)計(jì)資料,其基本風(fēng)壓為0.4 kN/m2,計(jì)算出恒荷載和活荷載,得到門(mén)式剛架荷載圖如圖4所示.再將其荷載值以及解碼所得截面參數(shù),帶入矩陣位移法中,可以得到門(mén)式剛架結(jié)構(gòu)內(nèi)力,見(jiàn)表2.
圖4 門(mén)式剛架荷載
表2 門(mén)式剛架結(jié)構(gòu)內(nèi)力
圖5表示改進(jìn)遺傳算法從第1代進(jìn)化至第2500代進(jìn)化過(guò)程中,門(mén)式剛架總重量不斷被優(yōu)化,在滿足約束條件下,每一代門(mén)式剛架總重量最小的情況.從圖5可知,隨著不斷進(jìn)化,門(mén)式剛架總重量一開(kāi)始呈現(xiàn)出局部上升,隨之開(kāi)始不斷遞減,最終趨于平穩(wěn).其最適應(yīng)個(gè)體變化,說(shuō)明改進(jìn)遺傳算法在進(jìn)化中不斷淘汰總重量高的個(gè)體,但由于選擇和變異過(guò)程具有隨機(jī)性,故會(huì)出現(xiàn)保留總重量高的個(gè)體.隨著進(jìn)化的不斷進(jìn)行,最終只有總重量低的個(gè)體被保留,經(jīng)過(guò)2500代進(jìn)化,門(mén)式剛架總重量最輕個(gè)體出現(xiàn)在第53代,其最佳個(gè)體的截面參數(shù),如表3所示.
將同一算例的文中計(jì)算機(jī)電算結(jié)果與文獻(xiàn)[14]手算結(jié)果進(jìn)行比較,其在一榀門(mén)式剛架設(shè)計(jì)時(shí),能優(yōu)化5%的結(jié)構(gòu)重量.
圖5 改進(jìn)遺傳算法計(jì)算結(jié)果
表3 改進(jìn)遺傳算法優(yōu)化結(jié)果比較
1)門(mén)式剛架的截面優(yōu)化是離散變量的優(yōu)化問(wèn)題,而且變量參數(shù)多,很難用傳統(tǒng)方法進(jìn)行優(yōu)化計(jì)算.針對(duì)這一問(wèn)題,文中采用改進(jìn)遺傳算法進(jìn)行優(yōu)化計(jì)算,可以有效處理傳統(tǒng)優(yōu)化算法難以處理的多變量參數(shù)優(yōu)化問(wèn)題,從而完成全局最優(yōu)變量搜索.
2)門(mén)式剛架的截面優(yōu)化,包括型鋼和焊接鋼等多種類型鋼材,同時(shí)還有眾多截面參數(shù)的類型,傳統(tǒng)遺傳算法難以實(shí)現(xiàn)優(yōu)化搜索.文中采用一維、變長(zhǎng)、十進(jìn)制結(jié)合二進(jìn)制混合編碼的改進(jìn)遺傳算法,有效實(shí)現(xiàn)了優(yōu)化搜索,且有效率較高.
3)采用個(gè)體特殊屬性保護(hù)策略,將個(gè)體的十進(jìn)制編碼部分和二進(jìn)制編碼部分分別進(jìn)行交叉和變異,從而保證個(gè)體編碼過(guò)程中特殊屬性.通過(guò)上述方法,進(jìn)行遺傳算法的遺傳操作過(guò)程,實(shí)際上也消除了程序編碼出現(xiàn)混亂的可能性,從而進(jìn)一步保證程序計(jì)算運(yùn)行的正確性,使得整個(gè)優(yōu)化過(guò)程在高效率性及正確性的基礎(chǔ)上完成.
4)通過(guò)實(shí)際算例優(yōu)化研究,并與文獻(xiàn)中手算結(jié)果進(jìn)行比較,得出所采用的的算法模型可以降低結(jié)構(gòu)重量的5%,為門(mén)式剛架截面選型和截面尺寸選取提供了一種有效可靠的優(yōu)化設(shè)計(jì)方法.