摘 要:為了解決帶有應(yīng)力約束和位移約束桁架結(jié)構(gòu)的尺寸優(yōu)化問題,將微分演化 (Differential Evolution,DE)算法應(yīng)用于桁架結(jié)構(gòu)的尺寸優(yōu)化設(shè)計.介紹了DE算法的基本原理及其進(jìn)化策略,給出了桁架結(jié)構(gòu)優(yōu)化的數(shù)學(xué)模型.對幾個經(jīng)典問題進(jìn)行了求解,并與其他優(yōu)化算法進(jìn)行了比較.數(shù)值結(jié)果表明了DE算法收斂特性好、穩(wěn)定性高,可以有效地用于桁架結(jié)構(gòu)的尺寸優(yōu)化設(shè)計.
Differential Evolution Algorithm to Size
the Optimization of Truss Structures
TANG He-sheng1, FAN De-wei1, WANG Zhao-liang1, XUE Song-tao1, 2
(1. Research Institute of Structural Engineering and Disaster Reduction, Tongji Univ, Shanghai 200092,China;
2. Dept of Architecture, Tohoku Institute of Technology, Sendai 982-8577, Japan)
Abstract:
This paper applied a DE strategy to solve the size optimization problems of truss structures with stress and displacement constraints. We presented the basic principle of the original DE algorithm in detail, and then introduced the mathematical model for truss optimization. Several classical problems were solved by using DE algorithm, and the results were compared with those using other optimization methods. Numerical examples have shown that the DE algorithm has good convergence and stability and can be applied to effectively size the optimization of truss structures.
Key words: structure; differential evolution;truss structures;size optimization
任何一個結(jié)構(gòu)的設(shè)計方案,都可以用若干給定參數(shù)和一些設(shè)計變量xi (i=1,2,…,n)來體現(xiàn),而設(shè)計變量隨方案的改變而變[1].所謂結(jié)構(gòu)優(yōu)化設(shè)計就是用力學(xué)和數(shù)學(xué)的方法,在可用域搜索目標(biāo)函數(shù)最小(或最大)的所謂最優(yōu)點,也就是最優(yōu)設(shè)計方案.桁架結(jié)構(gòu)優(yōu)化設(shè)計根據(jù)設(shè)計變量的類型可分為3個層次:尺寸優(yōu)化、形狀優(yōu)化和拓?fù)鋬?yōu)化.桁架結(jié)構(gòu)尺寸優(yōu)化即為在給定結(jié)構(gòu)形式、材料和布局拓?fù)涞那闆r下,優(yōu)化各個桿件的截面尺寸,使結(jié)構(gòu)總體質(zhì)量最輕.
傳統(tǒng)的結(jié)構(gòu)優(yōu)化方法主要有力學(xué)準(zhǔn)則法(OC)、數(shù)學(xué)規(guī)劃法(MP)等[2].由于結(jié)構(gòu)優(yōu)化設(shè)計問題是一非凸的和多峰的問題,傳統(tǒng)的一些優(yōu)化算法解決此類問題具有很大的局限性.而最近30多年發(fā)展的一些現(xiàn)代仿生智能優(yōu)化算法,如遺傳算法、模擬退火、蟻群算法、PSO算法等在結(jié)構(gòu)優(yōu)化領(lǐng)域也得到了廣泛應(yīng)用[3-6],并成為人們研究的熱點.
微分演化 (Differential Evolution,DE)作為一種新穎的算法,自從1997年被Storn和Price引入以來[7],在解決復(fù)雜優(yōu)化問題上得到了很多關(guān)注.作為一種混合算法,DE的主要優(yōu)點是算法簡單,它結(jié)合了遺傳算法的更大種群概念和進(jìn)化算法的自適應(yīng)變異以及采用了貪婪選擇策略.同時,DE算法用浮點語言取代了在許多傳統(tǒng)進(jìn)化算法中的二進(jìn)制語言,控制變量少,執(zhí)行起來更簡單.這些特征使DE算法相比進(jìn)化算法和遺傳算法魯棒性更好、收斂更快.研究表明,針對復(fù)雜的優(yōu)化問題,DE算法相對于PSO算法和遺傳等其他算法具有更加精確、更快的收斂速度和較強的魯棒性的特點[8].該算法已被應(yīng)用于工程設(shè)計[9]、可靠度分析[10]、主動控制[11]問題,例如:三維車輛結(jié)構(gòu)的優(yōu)化[12]、渦輪的形狀優(yōu)化[13].
本文采用DE算法對平面桁架及空間桁架在單工況及多工況作用及多約束情況下進(jìn)行尺寸優(yōu)化設(shè)計.通過對典型桁架結(jié)構(gòu)的優(yōu)化并與相關(guān)文獻(xiàn)的結(jié)果進(jìn)行對照,來評價該算法用于桁架優(yōu)化的效果.
1 微分演化(DE)算法
一個包括n個參數(shù)的優(yōu)化問題可以用一個n維的向量來描述,該向量可以表示為:xi=(xi1,xi2,…,xin)T∈S,i=1,2,3,…,NP.其中S∈Rn為優(yōu)化問題的搜索空間;DE算法利用NP作為向量xi1每一代的個體數(shù).類似于遺傳算法,DE算法通過變異、交叉和選擇過程實現(xiàn)種群的更新進(jìn)化.具體過程如下.
1.1 變異過程
變異的目標(biāo)是為了保證種群的多樣性,同時用合適的參數(shù)變化來指導(dǎo)已有的目標(biāo)向量在合適的時間內(nèi)達(dá)到一個更好的結(jié)果,從而保證搜索的魯棒性.
變異操作過程中,上一代的個體xi(G),i=1,…,NP(其中G表示代數(shù)), 根據(jù)不同的變異方式進(jìn)行更新則得到第G+1子代向量vi(G+1)=(vi1(G+1),vi2(G+1),…,vin(G+1))T.本文采用Storn和Price [7]推薦的DE/current-to-best/1/bin變異方式進(jìn)行結(jié)構(gòu)優(yōu)化,該變異方式為 :
v(G+1)i=x(G)i+F1(x(G)best-x(G)i)+
F(x(G)r1-x(G)r2).(1)
式中:x(G)best為算法第G代群體中適應(yīng)值最小的個體;F和F1為變異常數(shù),均為非負(fù)實數(shù).它們的大小控制了變量間的差異,保證進(jìn)化的進(jìn)行.r1,r2分別為互不相同的整數(shù),分別為從集合{1,2,…,i-1,i+1, …,NP}中隨機選出的向量編號.
1.2 交叉過程
與GA算法相似,DE算法中的個體經(jīng)過變異后也進(jìn)行交叉操作.對于群體中第G+1代經(jīng)過變異過程后的向量個體vi(G+1)按照公式(2)進(jìn)行交叉,產(chǎn)生新的個體:uij(G+1)=(ui1(G+1),ui2(G+1),…,u個體之間交叉的概率.
1.3 選擇過程
DE算法采用與GA算法不同的貪婪準(zhǔn)則:通過比較由變異和交叉產(chǎn)生的子代個體和父代個體,選擇適應(yīng)值好的變量,即如果父代個體適應(yīng)值更優(yōu)將繼續(xù)保留在群體中;否則,保留子代個體.選擇過程由式(3)表示:
x(G+1)i=u(G+1)i,if (f(u(G+1)i) x(G)i,otherwise.(3) 通過對以上3個過程不斷重復(fù)迭代對種群進(jìn)行進(jìn)化,直到滿足算法停止條件,找到優(yōu)化問題的最適解. 2 空間桁架結(jié)構(gòu)優(yōu)化 2.1 桁架結(jié)構(gòu)尺寸優(yōu)化的數(shù)學(xué)描述 2.1.1 設(shè)計變量 桁架結(jié)構(gòu)的尺寸優(yōu)化設(shè)計變量一般為桿件截面面積或截面特性參數(shù). 2.2 基于DE算法的桁架結(jié)構(gòu)尺寸優(yōu)化程序 Step 1 輸入DE所需參數(shù),如變異和交叉因子;初始化DE的種群,使第一代個體變量隨機在搜索空間中產(chǎn)生;it=1. Step 2 進(jìn)行結(jié)構(gòu)分析,計算出每個個體所代表的設(shè)計變量對應(yīng)的結(jié)構(gòu)形態(tài)變量,如各桿件應(yīng)力和節(jié)點位移. Step 3 計算每個個體的評價函數(shù)值,對于違反約束的個體在其評價函數(shù)值加上一個非常大的常數(shù)罰值M,選出最優(yōu)個體xbest. Step 4 對每個個體根據(jù)式(1)進(jìn)行變異操作,并且按照式(2)對每個個體(父代)以及變異個體進(jìn)行交叉操作,得到新的個體(子代). Step 5 計算各子代個體以及父代個體的適應(yīng)值;按照式(3)選擇適應(yīng)值好的作為下一代種群中的個體. Step 6 計算每一個下一代的個體適應(yīng)值,并找到最優(yōu)的個體;如果新的最優(yōu)個體的適應(yīng)值比上一代xbest的適應(yīng)值好,則更新xbest值,稱為當(dāng)前最優(yōu)個體. Step 7 滿足算法終止條件,輸出最優(yōu)個體xbest,以及最優(yōu)個體的適應(yīng)值,否則返回Step 2. 2.3 數(shù)值模擬與結(jié)果分析 用DE算法對幾個常用的桁架優(yōu)化算例進(jìn)行優(yōu)化設(shè)計,以便與其他文獻(xiàn)進(jìn)行比較,采用MATLAB編程. 例1 10桿平面桁架.求解該結(jié)構(gòu)在應(yīng)力和位移約束下的優(yōu)化設(shè)計問題.優(yōu)化目標(biāo)為桁架結(jié)構(gòu)質(zhì)量最輕,選各桿的截面積為設(shè)計變量.各桿使用相同的材料,密度為2 768kg/m3,彈性模量為68 950 MPa,許用應(yīng)力σ=±172.375 MPa,載荷P=444.822 kN,L=9.144 m.設(shè)計變量下限為64.516 mm2,上限為22 581 mm2,位移約束為各節(jié)點x,y方向的位移均不超過50.8 mm.結(jié)構(gòu)如圖1所示. 為了分析算法的有效性,隨機運行5次優(yōu)化程序,評價函數(shù)收斂曲線見圖2.取最好與最差結(jié)果,與其他文獻(xiàn)結(jié)果進(jìn)行對比(見表1). 2.746注:質(zhì)量欄的單位為kg,其余項單位為mm2. 隨機優(yōu)化5次,迭代80次已經(jīng)收斂,最優(yōu)解為2 278.284,最差解為2 278.802,均值為2 278.632,標(biāo)準(zhǔn)方差為0.209.可以看出,DE算法得到的最好解與最差解均要優(yōu)于所列文獻(xiàn)中的結(jié)果,證明了DE算法具有很強的尋優(yōu)能力,同時5次優(yōu)化結(jié)果的標(biāo)準(zhǔn)方差明顯小于其他方法,說明DE算法更加穩(wěn)健. 例2 25-桿空間桁架(多工況). 25-桿空間桁架結(jié)構(gòu)如圖3所示.該結(jié)構(gòu)在多種研究結(jié)構(gòu)優(yōu)化算法時被提及討論,本文使用該結(jié)構(gòu)作為算例便于與其他文獻(xiàn)進(jìn)行比較分析.結(jié)構(gòu)受2種荷載工況作用(見表2),應(yīng)力約束隨桿件組別而不同(見表3),位移約束為各節(jié)點在x,y,z方向位移均不超過±88.9 mm.材料特性為E=68 950 MPa,ρ=2 768 kg/m3,L=635 mm.截面積范圍設(shè)為Amin =6.451 6 mm2,Amax =2 193.5 由圖3可見,70代已經(jīng)收斂.DE隨機優(yōu)化5次得到的最優(yōu)解為247.155 8,最差解為247.160 1,均值為247.157,標(biāo)準(zhǔn)方差為0.001 8.由表4可以看出,DE算法的最好解與最差解均優(yōu)于所列文獻(xiàn)最優(yōu)結(jié)果,標(biāo)準(zhǔn)方差明顯小于其他算法.說明DE算法具有很好的收斂性能和極好的穩(wěn)定性. 例3 72-桿件空間桁架 (多工況).圖5為4層72桿空間桁架結(jié)構(gòu)及其節(jié)點、桿件編號方式.按對稱性將桿件分為16組(見表5).結(jié)構(gòu)受兩個荷載工況的作用(見表6).材料特性為E=68 950 MPa,ρ=2 768 kg/m3,L=1 524 mm.約束條件為: 頂層節(jié)點沿x,y方向的最大位移不能超過6.35 mm,各桿最大允許應(yīng)力[-172.375,172.375] MPa.截面積范圍設(shè)為Amin=64.516 mm2,Amax =1 935.48 mm2. 由于設(shè)計變量為16維,變量維數(shù)高,而且為多工況共同作用,利用一般的優(yōu)化算法對其進(jìn)行優(yōu)化時難度較大,利用DE則很容易解決該問題.從圖5可以看出,迭代100次時曲線已經(jīng)收斂.從表5可知,DE算法最優(yōu)解為172.228,最差解為172.287,二者均優(yōu)于其他文獻(xiàn)所列結(jié)果,同時標(biāo)準(zhǔn)方差0.024說明算法具有很好的穩(wěn)定性. 3 結(jié) 論 DE算法是一種新穎的基于種群混合進(jìn)化算法,它結(jié)合了遺傳算法的更大種群概念和進(jìn)化算法的自適應(yīng)變異以及采用了貪婪選擇策略.本文將DE算法應(yīng)用到3個典型桁架結(jié)構(gòu)的優(yōu)化問題,將得到的結(jié)果與其他文獻(xiàn)對比分析,結(jié)果表明DE算法收斂速度快,在滿足位移和應(yīng)力約束條件下總能找到相對好的全局最優(yōu)解,將DE算法應(yīng)用于結(jié)構(gòu)優(yōu)化設(shè)計是可行的. 相對于其他算法而言,DE算法原理簡單,易于實現(xiàn),特別是其初始參數(shù)設(shè)置簡單,算法魯棒性強.從對每個算例桁架隨機優(yōu)化5次的結(jié)果可知,DE算法得到的最優(yōu)值比GA,PSO,BB-BC等其他算法更加趨于最優(yōu)解.同時5次最優(yōu)解的標(biāo)準(zhǔn)方差明顯小于其他算法,驗證了DE算法的穩(wěn)定性,說明了該算法適合于結(jié)構(gòu)尺寸優(yōu)化設(shè)計分析. 參考文獻(xiàn) [1] 王光遠(yuǎn). 結(jié)構(gòu)優(yōu)化設(shè)計[M]. 北京:高等教育出版社,1987:13-109. WANG Guang-yuan. Structural optimization theory[M]. Beijing: Higher Education Press, 1987:13-109.(In Chinese) [2] 錢令希.工程結(jié)構(gòu)優(yōu)化設(shè)計[M]. 北京:水利電力出版社,1983:150-168. QIAN Ling-xi.Structural optimization design[M]. Beijing: China Water Power Press, 1983:150-168. (In Chinese) [3] GALANTE M. Genetic algorithms as an approach to optimize real-world trusses [J]. International Journal for Numerical Methods in Engineering, 1996,39(3): 361-382. [4] LAMBERTI L. An efficient simulated annealing algorithm for design optimization of truss structures [J]. Computers Structures,2008, 86: 1936-1953. [5] BLAND J A. Optimal structural design by ant colony optimization[J].Engineering Optimization,2001,33(4):425-443. [6] LI L J, HUANG Z B, LIU F, et al. A heuristic particle swarm optimizer for optimization of pin connected structures[J]. Computers Structures, 2007, 85(7/8): 340-349. [7] STORN R,PRICE K. Differential evolution-a simple and efficient adaptive scheme for global optimization over continuous spaces[J]. Journal of Global Optimization, 1997,11(4):341-359. [8] VESTERSTROM J, THOMSEN R. A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems[J]. Evolutionary Computation, 2004,2:1980-1987. [9] GONG Wen-yin, CAI Zhi-hua, ZHU Li. An efficient multi-objective differential evolution algorithm for engineering design[J]. Structural and Multidisciplinary Optimization,2009,4(2):137-157. [10]COELH O, SANTOS L D. Reliability-redundancy optimization by means of a chaotic differential evolution approach[J]. Chaos Solitons Fractals, 2009,41(2):594-602. [11]WU Zhi-feng, HUANG Hou-kuan, YANG Bei, et al. Amodified differential evolution algorithm with self-adaptive control parameters[C]//Proceedings of 3rd International Conference on Intelligent System and Knowledge Engineering. ISKE, 2008:524-527. [12]VIAN A.CHEGURY F A. Differential evolution applied to the design of a three-dimensional vehicular structure[C]//Proceedings of the ASME International Design Engineering Technical Conferences and Computers and Information in Engineering Conference,2008,6(B):1321-1330. [13]KARIN Z K. Shape optimization of turbine stage using adaptive range differential evolution and three-dimensional navier-stokes solver[C]//Proceedings of the 2nd IASTED International Conference on Computational Intelligence, 2006:212-217. [14]CAMP C, PEZESHK S,CAO G. Optimized design of two-dimensional structures using a genetic algorithm[J]. Struct Eng,1998, 124(5): 551-559. [15]SCHUTTE J J,GROENWOLD A A. Sizing design of truss structures using particle swarms[J].Struct Multidiscip Optim,2003, 25:261-269. [16]CAMP C V.Design of space trusses using big bang-big crunch optimization[J]. Journal of Structural Engineering,ASCE,2007,133(7): 999-1008. [17]CAO G. Optimized design of framed structures using a genetic algorithm[D]. Reston:University of Memphis,1996. [18]CAMP C V, BICHON B J. Design of space trusses using ant colony optimization[J]. Struct Eng, 2004,130(5):741-751.