姜正榮 蘇延 石開榮? 李之吉 魏德敏
(1.華南理工大學(xué)土木與交通學(xué)院,廣東 廣州 510640;2.華南理工大學(xué)亞熱帶建筑科學(xué)國家重點實驗室,廣東 廣州 510640)
索穹頂是由美國工程師Geiger等[1]提出的一種連續(xù)拉、間斷壓的柔性張力結(jié)構(gòu)體系,具有極高的結(jié)構(gòu)效率,目前已成功應(yīng)用于眾多大型體育場館中[2-4]。索穹頂結(jié)構(gòu)在自然狀態(tài)下呈松弛狀,不具有剛度,施加預(yù)應(yīng)力方可使其產(chǎn)生剛度并抵抗外荷載,且預(yù)應(yīng)力的大小與分布決定了結(jié)構(gòu)形狀與結(jié)構(gòu)剛度[5]。因此,對該類結(jié)構(gòu)進(jìn)行預(yù)應(yīng)力優(yōu)化具有十分重要的科學(xué)意義。
國內(nèi)外學(xué)者對索穹頂結(jié)構(gòu)的預(yù)應(yīng)力優(yōu)化進(jìn)行了相關(guān)研究,并取得了一系列成果。文獻(xiàn)[6]采用遺傳算法,分別以結(jié)構(gòu)自重最小及豎向位移最小為目標(biāo),完成了索穹頂結(jié)構(gòu)的預(yù)應(yīng)力優(yōu)化。文獻(xiàn)[7]采用NSGA-II遺傳算法,對Kiewitt型索穹頂結(jié)構(gòu)進(jìn)行多目標(biāo)優(yōu)化,得到了最優(yōu)自應(yīng)力模態(tài)組合系數(shù)。文獻(xiàn)[8]對Geiger型索穹頂結(jié)構(gòu)的單目標(biāo)及多目標(biāo)的不同優(yōu)化算法進(jìn)行了對比分析,并探討了各種算法的適用范圍。
模擬植物生長算法(Plant Growth Simulation Algorithm,PGSA)是一種基于植物向光性機理的新型智能優(yōu)化算法[9],自提出以來已應(yīng)用于多個行業(yè)的優(yōu)化分析,并逐步加以改進(jìn)。文獻(xiàn)[10]采用非支配排序及構(gòu)造偏序集等方法對PGSA進(jìn)行改進(jìn),并對多目標(biāo)旅行商問題進(jìn)行了求解,對比其他優(yōu)化算法更具有優(yōu)勢。文獻(xiàn)[11]對形態(tài)素濃度的計算及新增點的生長策略進(jìn)行了改進(jìn)。文獻(xiàn)[12]采用PGSA對RFID網(wǎng)絡(luò)規(guī)劃模糊覆蓋問題進(jìn)行了研究,指出了該方法的有效性。文獻(xiàn)[13]在重新初始化、搜索步長、算法終止判據(jù)等方面對PGSA進(jìn)行改進(jìn),并應(yīng)用于電子干擾資源分配的優(yōu)化中。近年來,PGSA在工程結(jié)構(gòu)優(yōu)化領(lǐng)域得到發(fā)展與應(yīng)用,如高層懸掛結(jié)構(gòu)[14]、桁架結(jié)構(gòu)[15]及弦支穹頂結(jié)構(gòu)[16]等。
但是截至目前,涉及PGSA在索穹頂結(jié)構(gòu)優(yōu)化方面的研究尚鮮見報道,鑒于此,本研究針對原算法的局限性,提出新策略,在此基礎(chǔ)上,建立階段生長PGSA,以此對索穹頂結(jié)構(gòu)進(jìn)行預(yù)應(yīng)力優(yōu)化,并與其他算法進(jìn)行對比,驗證其適用性。
根據(jù)植物生長的原理,PGSA將工程結(jié)構(gòu)優(yōu)化問題的約束空間視為植物的生長空間,將目標(biāo)函數(shù)視為光源。首先在生長空間內(nèi)選取一粒種子,即初始生長點x0,其對應(yīng)一個初始函數(shù)值f(x0);然后采用一定的步長,在初始生長點的附近產(chǎn)生節(jié),即下一批可生長點Sm,i(其中i為生長點序號),計算每個可生長點所對應(yīng)的函數(shù)值f(Sm,i),并剔除大于f(x0)的點,最終組成可生長點集合Sm。通過對比該集合中可生長點函數(shù)值與初始函數(shù)值之間的差距,給予相應(yīng)的形態(tài)素濃度。函數(shù)值越優(yōu)于初始函數(shù)值的可生長點,其對應(yīng)的形態(tài)素濃度越高,反之則越低,形態(tài)素濃度的計算如式(1)所示:
式中,k為集合Sm中可生長點的個數(shù),Pm,i為第i個可生長點的形態(tài)素濃度。
在可生長點集合Sm中,其形態(tài)素濃度之和滿足:
所有形態(tài)素濃度構(gòu)成了一個概率區(qū)間[0,1],每個可生長點對應(yīng)一部分區(qū)域,通過隨機搜索的方式選擇其中一個區(qū)域,將對應(yīng)的點作為下一次生長點,如圖1所示??缮L點的函數(shù)值越靠近目標(biāo),其形態(tài)素濃度越高,所對應(yīng)的概率區(qū)域越大,那么被選為下一次生長點的概率相應(yīng)就越高。通過這種形態(tài)素生長機制,使該植物的枝節(jié)反復(fù)生長,直到搜索到光源的位置,即函數(shù)的最優(yōu)解。
圖1 形態(tài)素濃度及其對應(yīng)的生長概率Fig.1 Morphactin concentration and its growth probability
從多段步長搜索及生長機制等方面,探討原PGSA的局限性。參考文獻(xiàn)[17],以具有兩個獨立變量的Rastrigin函數(shù)為測試算例(圖2),其表達(dá)式為
圖2 目標(biāo)函數(shù)三維視圖Fig.2 Three-dimensional view of objective function
式中:f(x1,x2)為目標(biāo)函數(shù),即模擬植物生長的光源,兩個設(shè)計變量分別為x1、x2,將可行域設(shè)為-5≤x1,x2≤5,以函數(shù)的全局最小值為優(yōu)化目標(biāo),精度為0.1。
由圖2可見,該函數(shù)有非常多的局部極小點,但僅有一個全局最優(yōu)解,即x1=x2=0,此時函數(shù)值f(x1,x2)=0,達(dá)到最小。下文分析中,以圖2的函數(shù)為基礎(chǔ),對不同參數(shù)取值分別運行50次,并記錄其優(yōu)化得到的最小目標(biāo)函數(shù)值的均值及平均生長空間(平均生長點數(shù)量),以此對比不同優(yōu)化機制的優(yōu)化效果與效率。
2.1.1 步長機制
為探討原PGSA的局限性,在此提出多段步長生長機制,即采用非固定的步長進(jìn)行生長,并與常規(guī)的單一步長生長機制進(jìn)行對比。限定最大生長次數(shù)為1 000,分別采用原PGSA的單一步長(步長為0.1)、兩段步長(大步長為2,生長10次,小步長為0.1)及三段步長(大步長為2,生長10次,中步長為0.5,生長100次,小步長為0.1)進(jìn)行優(yōu)化分析,結(jié)果見表1,優(yōu)化效果曲線如圖3所示。
表1 各步長機制的優(yōu)化結(jié)果Table 1 Optimization results of each step mechanism
圖3 各步長機制的優(yōu)化效果曲線Fig.3 Curves of optimization effect of each step mechanism
由表1及圖3可見,與原PGSA的單一步長相比,兩段和三段步長的平均最優(yōu)函數(shù)值較小,且后者更接近全局最優(yōu)解,但隨著步長段數(shù)的增加,生長空間也隨之迅速擴大。由此表明,采用多段步長生長可提高PGSA的全局搜索能力,但在缺乏有效篩選機制時,該方法必然會增加計算工作量。
2.1.2 生長點分布
在多段步長生長機制的基礎(chǔ)上,進(jìn)一步研究大步長生長次數(shù)對優(yōu)化結(jié)果的影響。以兩段步長PGSA為例,同樣采用大步長為2,小步長為0.1,分別以大步長生長1次與30次進(jìn)行對比,優(yōu)化結(jié)束后生長點的分布如圖4所示。在此將以大步長生長產(chǎn)生的點稱為大生長點。
圖4 不同大步長生長次數(shù)的生長點分布Fig.4 Distribution of growth points with different growth numbers of large step
由圖4可見,當(dāng)大步長生長1次時,大生長點僅分布在x1,x2∈(-2,4)區(qū)間內(nèi),未能擴散至整個可行域,其全局搜索能力較差;當(dāng)大步長生長30次時,大生長點擴散至x1,x2∈(-5,5)的范圍。當(dāng)大生長點以大步長為間距完全充滿整個可行域,即達(dá)到飽和后,每次生長得到的點均會與原有的大生長點重復(fù)且被忽略,使該生長點無法在后續(xù)以小步長進(jìn)行生長,從而形成了一片無效區(qū)域,生長點無法在其中擴散。由此表明,大步長具有散播生長點、提高全局搜索能力的作用,但若生長次數(shù)過多,使其達(dá)到飽和后,則反而會弱化全局搜索能力,影響優(yōu)化結(jié)果。
基于上文分析,從大步長生長擴散機制及生長點篩選機制兩方面,提出PGSA的新策略。
2.2.1 大步長生長擴散機制
針對大步長生長次數(shù)過多而導(dǎo)致生長點飽和的問題,對大步長采用多倍步長一次性擴散的方式以替代原PGSA中的隨機漸進(jìn)擴散。如圖5所示,按原生長機制,初始生長點將向兩個維度進(jìn)行步長為dx的生長,從而產(chǎn)生8個新增的生長點,可跨越2倍步長(2dx)的空間,下一次將從新增生長點中隨機選擇一個生長點,并重復(fù)該生長流程,直至生長點布滿整個可行域。多倍步長一次性擴散生長則分別以1~n倍步長進(jìn)行生長。以3倍步長一次性擴散生長為例,其將向兩個維度分別以1、2及3倍步長(3dx)的距離進(jìn)行一次生長,便可產(chǎn)生48個新增的生長點,所跨越的距離達(dá)到6倍步長(6dx)。由于不再進(jìn)行隨機生長,所有的生長點均不會被淘汰。通過該生長擴散機制,并選擇合適的大步長,便可得到布滿整個可行域的大生長點,起到了散播生長點的作用,且避免了生長點的過早“廢棄”。
圖5 大步長生長擴散機制Fig.5 Growth diffusion mechanism of large step
2.2.2 生長點篩選機制
在此引入篩選系數(shù)w與篩選空間Sw,在每一次搜索時,對已求得的函數(shù)值從優(yōu)至劣進(jìn)行排序,得到篩選集合R,以該集合中排在第q位的函數(shù)值為對比指標(biāo),即f(Rq),其中q=Sw×w。將函數(shù)值比該對比指標(biāo)差的新增生長點剔除,以此控制生長空間的規(guī)模。在搜索到全局最優(yōu)解之后,該篩選機制會使可生長點集合逐漸縮小直至無可生長點,從而達(dá)到快速收斂并停止運算。
依據(jù)上述新策略,提出了基于階段生長的模擬植物生長算法(階段生長PGSA),即將植物生長分為多個階段,并在不同階段引入相應(yīng)的生長擴散機制或生長點篩選機制,從而實現(xiàn)該算法的快速收斂,并提高全局搜索能力。
其基本思路為:對初始生長點x0采用大步長進(jìn)行搜索,并以3倍步長一次性擴散生長,得到布滿整個可行域的生長點;隨后以中步長進(jìn)行快速搜索,配合較寬松的篩選機制,以控制生長點的數(shù)量;最后以與精度相同的小步長,結(jié)合較嚴(yán)格的篩選機制,從而達(dá)到快速收斂的目的,且在搜索到滿足精度要求的全局最優(yōu)解后及時終止計算。
該算法流程如圖6所示,具體步驟如下:
步驟1定義初始生長點x0,并定義大、中、小步長及其對應(yīng)的生長次數(shù)、篩選系數(shù)w與篩選空間Sw。
步驟2計算得到初始生長點x0對應(yīng)的目標(biāo)函數(shù)值f(x0),以此作為全局最優(yōu)函數(shù)值Fmin的初始值。
步驟3在不同階段選擇不同的步長,對新增生長點對應(yīng)的函數(shù)值f(Sm,i)進(jìn)行排序,以排在第q位的函數(shù)值f(Rq)為對比指標(biāo),其中q=Sw×w;將函數(shù)值劣于篩選標(biāo)準(zhǔn)(f(Sm,i)>f(Rq))的新增生長點剔除,其余則加入可生長點集合Sm中。
步驟4判斷可生長點集合是否為空集,若為空集,則跳轉(zhuǎn)至步驟8,若不為空集,則繼續(xù)進(jìn)行下一步。
步驟5找出當(dāng)前次新增生長點對應(yīng)的最優(yōu)函數(shù)值fmin,與既有全局最優(yōu)函數(shù)值Fmin對比,判斷是否為更優(yōu),若是,則更新全局最優(yōu)函數(shù)值Fmin及其對應(yīng)的最優(yōu)生長點Xmin。
步驟6對生長點集合中所有的可生長點按式(1)計算形態(tài)素濃度,并按概率隨機選取下一次的生長點。
步驟7判斷是否達(dá)到最大生長次數(shù),若未達(dá)到,則回歸步驟3繼續(xù)進(jìn)行優(yōu)化,若達(dá)到,則進(jìn)行下一步。
步驟8輸出最終搜索得到的最優(yōu)函數(shù)值Fmin及其對應(yīng)的最優(yōu)生長點Xmin,結(jié)束優(yōu)化流程。
仍以式(3)所示的Rastrigin函數(shù)為例,基于圖6的流程進(jìn)行優(yōu)化。設(shè)置大步長為2,以3倍步長進(jìn)行一次性擴散,中步長為0.5、生長100次,小步長為0.1,最大生長次數(shù)為1000。中、小步長對應(yīng)的篩選系數(shù)分別為0.8、0.4,篩選空間均為100。對文中提出的階段生長PGSA(三段步長+擴散機制+篩選機制)與純多段步長PGSA(兩段步長及三段步長)及原PGSA的單一步長的優(yōu)化結(jié)果進(jìn)行對比,如圖7所示。
圖6 階段生長PGSA流程圖Fig.6 Flow chart of stage growth PGSA
圖7 不同PGSA的優(yōu)化結(jié)果Fig.7 Optimization results of different PGSA
由圖7可見,階段生長PGSA通過大范圍生長,在提高全局搜索能力的同時避免了生長點的飽和,且由于篩選機制的引入有效地縮小了生長空間,其平均最優(yōu)函數(shù)值及平均生長空間均優(yōu)于原PGSA。
在上文分析的基礎(chǔ)上,對索穹頂結(jié)構(gòu)的預(yù)應(yīng)力進(jìn)行優(yōu)化。該結(jié)構(gòu)的預(yù)應(yīng)力優(yōu)化有兩個特點:一是搜索域中存在大量無解的點,二是最優(yōu)解相對集中于某些區(qū)域。階段生長PGSA可通過大步長有效跨越這些無解空間,再通過中步長與小步長快速搜索有解的空間,從而提高優(yōu)化效率。因此,相比于其他優(yōu)化算法,當(dāng)階段生長PGSA應(yīng)用于索穹頂結(jié)構(gòu)的預(yù)應(yīng)力優(yōu)化時,其具有顯著的優(yōu)勢。
為驗證階段生長PGSA在結(jié)構(gòu)優(yōu)化中的適用性,以某實際工程為背景,構(gòu)建圖8所示的復(fù)合型索穹頂結(jié)構(gòu),對其進(jìn)行預(yù)應(yīng)力優(yōu)化(標(biāo)高單位為m,其余單位為mm)。結(jié)構(gòu)跨度為100m,矢高為7.5m,設(shè)有內(nèi)拉環(huán)及兩道環(huán)索,周邊固定鉸支座。拉索采用彈性模量為195 GPa的平行鋼絲束;撐桿及內(nèi)拉環(huán)采用Q355B鋼材,彈性模量為206 GPa。結(jié)構(gòu)的自應(yīng)力模態(tài)數(shù)為2,構(gòu)件截面面積及各組自應(yīng)力模態(tài)如表2所示。
圖8 優(yōu)化模型Fig.8 Optimal model
4.1.1 優(yōu)化變量
將表2中的兩組自應(yīng)力模態(tài)記為{X1}和{X2},并將其與組合系數(shù)β1、β2相乘,疊加得到最終的結(jié)構(gòu)初始預(yù)應(yīng)力{T},如式(4)所示。以該組合系數(shù)β1、β2為優(yōu)化變量。
表2 構(gòu)件截面面積及自應(yīng)力模態(tài)Table 2 Section areas and self-stress modes of members
4.1.2 目標(biāo)函數(shù)
當(dāng)索穹頂結(jié)構(gòu)張拉完成時,結(jié)構(gòu)的應(yīng)變能由張拉設(shè)備所提供,在滿足約束條件下,應(yīng)變能越小,張拉設(shè)備所做的功越少,張拉難度越低,施工越方便,其對應(yīng)的經(jīng)濟效益越好。因此,在確定自應(yīng)力模態(tài)組合系數(shù)時,以結(jié)構(gòu)的初始應(yīng)變能最小為優(yōu)化目標(biāo):
式中,Ti為第i類桿件的初始預(yù)應(yīng)力,n為結(jié)構(gòu)的桿件類別數(shù),Ei、Ai、li分別為第i類桿件的彈性模量、截面面積及長度,ni為第i類桿件的同類桿件數(shù)量。
4.1.3 約束條件
(1)整體可行性
由組合得到的初始預(yù)應(yīng)力,應(yīng)滿足索受拉、撐桿受壓且同一圈同類桿件預(yù)應(yīng)力相等的整體可行性。這是索穹頂結(jié)構(gòu)的自有特性,即依據(jù)節(jié)點平衡條件,索僅受拉力,撐桿僅受壓力,且所有桿件的受力均滿足對稱性。
(2)剛度要求
荷載態(tài)時,在自重、附加恒載0.5 kN/m2及不上人屋面活載0.3 kN/m(2全跨布置)的共同作用下,結(jié)構(gòu)的最大節(jié)點豎向位移不大于跨度的1/400,荷載組合為1.0恒載+1.0活載的標(biāo)準(zhǔn)組合。
除上述約束條件外,還需對拉索的強度、撐桿的強度及穩(wěn)定性進(jìn)行驗算。限于篇幅,在此不再贅述,具體詳見文獻(xiàn)[18]。
基于上文提出的階段生長PGSA,通過MATLAB與ANSYS的協(xié)同編程實現(xiàn)參數(shù)化建模、結(jié)構(gòu)計算以及優(yōu)化算法的執(zhí)行。將階段生長PGSA的優(yōu)化結(jié)果與純多段步長PGSA(兩段步長及三段步長)進(jìn)行對比,參數(shù)設(shè)定見表3,最大生長次數(shù)為1000,篩選空間均為100。經(jīng)試算,該設(shè)定參數(shù)下,優(yōu)化效率及優(yōu)化效果均較佳,其優(yōu)化效果曲線如圖9所示。
表3 不同PGSA的參數(shù)設(shè)定Table 3 Parameter setting for different PGSA
圖9 不同PGSA的優(yōu)化效果曲線Fig.9 Curves of optimization effect of different PGSA
由圖9可見,采用純多段步長PGSA(兩段步長及三段步長)搜索時,其生長至1000次仍未搜索到全局最優(yōu)解;階段生長PGSA運行至第286步便搜索到全局最優(yōu)解(對應(yīng)的結(jié)構(gòu)初始應(yīng)變能f=892.58 kN·m),且在第351步迭代終止。
進(jìn)一步地,將階段生長PGSA與多島遺傳算法(MIGA)、自適應(yīng)模擬退火算法(ASA)及粒子群優(yōu)化算法(PSO)等優(yōu)化方法進(jìn)行對比,優(yōu)化效果曲線如圖10所示(不同算法的每次計算迭代時間基本一致,其關(guān)鍵參數(shù)設(shè)定詳見文獻(xiàn)[18])。
圖10 不同算法的優(yōu)化效果曲線Fig.10 Curves of optimization effect of different algorithms
由圖10可見,與其他優(yōu)化算法相比,階段生長PGSA的計算迭代次數(shù)最少,優(yōu)化得到的結(jié)構(gòu)初始應(yīng)變能也最?。ǚ謩e為MIGA的39.7%、ASA的58.9%及PSO的84.1%)。由此表明,該算法具有更高的優(yōu)化效率及更好的優(yōu)化效果,從而驗證了其適用性。此外,以階段生長PGSA求得的全局最優(yōu)解為β1=58×105,β2=-145×105。荷載標(biāo)準(zhǔn)組合下,結(jié)構(gòu)的最大節(jié)點豎向位移為247.3 mm,小于結(jié)構(gòu)跨度的1/400(250 mm)。由組合得到的初始預(yù)應(yīng)力如表4所示,滿足索受拉、撐桿受壓的整體可行性要求,且拉索的強度、撐桿的強度及穩(wěn)定性驗算,均滿足相關(guān)規(guī)范的要求。
表4 階段生長PGSA優(yōu)化后的初始預(yù)應(yīng)力Table 4 Initial prestress obtained by stage growth PGSA
(1)相比原PGSA的單一步長,多段步長生長機制可提高PGSA的全局搜索能力,但隨著步長段數(shù)的增加,其計算量相應(yīng)增大;當(dāng)大步長生長次數(shù)過多時,易造成生長點的飽和,產(chǎn)生無效搜索區(qū)域,從而影響優(yōu)化結(jié)果。
(2)針對原PGSA的局限性,提出了階段生長PGSA,將優(yōu)化過程分為多個階段,先引入大步長生長擴散機制,以多倍步長一次性擴散生長的方式實現(xiàn)生長點的散播,再以中步長配合較寬松的篩選機制進(jìn)行快速搜索,最后以精度要求的小步長與較嚴(yán)格的篩選機制進(jìn)行收斂。結(jié)果表明:與原PGSA相比,階段生長PGSA可有效增強全局搜索能力、縮小生長空間且避免了生長點飽和的問題。
(3)采用階段生長PGSA對索穹頂結(jié)構(gòu)進(jìn)行預(yù)應(yīng)力優(yōu)化,并與多島遺傳算法、自適應(yīng)模擬退火算法及粒子群優(yōu)化算法等優(yōu)化方法進(jìn)行對比。結(jié)果表明:階段生長PGSA的計算迭代次數(shù)最少,優(yōu)化得到的結(jié)構(gòu)初始應(yīng)變能最小,表現(xiàn)出更高的優(yōu)化效率及更好的優(yōu)化效果,由此驗證了該算法對索穹頂結(jié)構(gòu)預(yù)應(yīng)力優(yōu)化的適用性。