汪俊澤,王元,易家祥,韓濤,江璞玉,吳嘉蒙,程遠勝,劉均*
1 華中科技大學 船舶與海洋工程學院,武漢 430074
2 中國船舶及海洋工程設(shè)計研究院,上海 200011
基于代理模型的優(yōu)化方法[1]是指利用基于一系列樣本點及其真實響應值建立的代理模型來替代耗時的仿真計算以指導優(yōu)化過程,目的是降低實際耗時工程優(yōu)化問題的計算成本。特別是當優(yōu)化所需的目標或約束計算次數(shù)越多時,目標或約束計算將越耗時,那么基于代理模型的優(yōu)化方法的優(yōu)勢也就越顯著。常用的代理模型有多項式響應面(polynomial response surface,PRS)模型、徑向基函數(shù)(radial basis function,RBF)模型、Kriging 模型及支持向量回歸(support vector regression,SVR)模型等[2-5]。大多數(shù)船舶結(jié)構(gòu)優(yōu)化問題都可以歸類為昂貴的約束優(yōu)化問題,因此,代理模型輔助優(yōu)化算法被較多地應用于船舶結(jié)構(gòu)優(yōu)化[6-8]。利用代理模型輔助優(yōu)化算法求解時,需要針對約束函數(shù)和目標函數(shù)分別建立代理模型,由于代理模型存在誤差,所以采用靜態(tài)代理模型輔助優(yōu)化算法時其優(yōu)化解的最優(yōu)性很難保證,可行性也存在誤判的可能。
相比靜態(tài)代理模型,序貫代理模型能夠充分利用樣本點的歷史信息,逐次更新代理模型,提高重點區(qū)域的預測精度,可以高效、精確地收斂至全局最優(yōu)解。當前存在多種序貫加點準則,如針對高效全局優(yōu)化(efficient global optimization,EGO)[9]的基于Kriging 模型的概率提高(probability of improvement,PI)準 則[10]、期 望 提 高(expected improvement,EI)準則[10]、基于RBF 模型的崎嶇度函數(shù)(bumpiness function)[11]。針對約束優(yōu)化問題,有PaEI 準則、CEI 準則等[12-13]。此外,針對可靠性分析也存在一些專門的代理模型序貫更新準則,如 期 望 可 行 性 函 數(shù)(expected feasibility function,EFF)[14]、U 學習函數(shù)(U learning function)[15]。與EI準則等不同,針對可靠性分析的序貫加點準則的目的是提高代理模型在臨界狀態(tài)附近的預測精度。
根 據(jù) 共 同 結(jié) 構(gòu) 規(guī) 范(common structural rules,CSR)[16],船舶強框架結(jié)構(gòu)需要滿足的各類應力約束較多,對方案可行性判斷的要求也比較復雜。本文將首先分析強框架結(jié)構(gòu)優(yōu)化設(shè)計的約束判斷邏輯,進而提出基于序貫代理模型輔助遺傳算法的強框架優(yōu)化方法,用以在優(yōu)化過程中逐步提高最優(yōu)解的質(zhì)量,同時提升約束代理模型在積極約束邊界的精度,從而降低約束代理模型誤差對于優(yōu)化結(jié)果可行性錯誤判斷的概率。然后,將所提出方法的優(yōu)化結(jié)果與基于靜態(tài)代理模型輔助遺傳算法的強框架優(yōu)化結(jié)果進行對比。
強框架結(jié)構(gòu)如圖1 所示。強框架輕量化設(shè)計的目標函數(shù)為強框架可變設(shè)計區(qū)域的結(jié)構(gòu)質(zhì)量,約束指規(guī)范要求的指定特征點應力值在45 個規(guī)定工況下都滿足規(guī)范要求??紤]到代理模型預測精度和設(shè)計問題的規(guī)模,將強框架結(jié)構(gòu)分成4 個子區(qū)域分別進行優(yōu)化。4 個子區(qū)域分別為:左上部分高應力區(qū)域、左下部分高應力區(qū)域、中下部分高應力區(qū)域和中上部分高應力區(qū)域。在優(yōu)化某子區(qū)域時,其他子區(qū)域的結(jié)構(gòu)尺寸均取為定值,得到優(yōu)化解后,再將各優(yōu)化方案組合成一個完整的優(yōu)化方案。如果完整優(yōu)化方案不滿足約束,則更新各子區(qū)域的結(jié)構(gòu)尺寸,再進行一輪優(yōu)化,如此反復迭代,直至得到可行的完整優(yōu)化方案。由于子區(qū)域間的相互影響較小,所需的迭代次數(shù)也較少。
圖1 強框架結(jié)構(gòu)Fig. 1 Strong frame structure
4 個子區(qū)域的優(yōu)化過程無明顯區(qū)別,故本文以中下區(qū)域為例進行優(yōu)化分析。選擇對橫梁趾端高應力區(qū)域影響較大的橫向結(jié)構(gòu)尺寸作為設(shè)計變量,對中下區(qū)域設(shè)計變量的定義如圖2 所示。圖中,橢圓框框出的為板縫線、邊/端接縫符號以及分段線。一共定義了15 個設(shè)計變量,各設(shè)計變量的物理意義及其取值范圍如表1 所示。強框架中下區(qū)域的優(yōu)化數(shù)學模型為:
表1 強框架中下部分區(qū)域設(shè)計變量及其取值范圍Table 1 Definition and ranges of design variables in the middle-lower part of strong frame
圖2 強框架中下部分區(qū)域設(shè)計變量定義示意圖Fig. 2 Schematic diagram of design variables definition in the middle-lower part of strong frame
強框架的有限元模型利用有限元軟件Patran/Nastran 建立,并根據(jù)CSR,設(shè)定由11 種載荷模式和航行工況(頂浪、順浪、斜浪)以及波浪工況(中拱、中垂)組合構(gòu)成的45 種載荷工況來進行有限元仿真計算。
CSR 對直接強度評估的要求較為復雜。許用應力與計算工況、評估區(qū)域以及網(wǎng)格大小有關(guān)。粗網(wǎng)格下,航行工況與港口工況的許用屈服應力系數(shù)不同,根據(jù)3 種鋼級,有6 種許用應力;細網(wǎng)格下,根據(jù)靠近焊縫區(qū)與遠離焊縫區(qū)、航行工況與港口工況的不同,以及3 種鋼級,共有12 種許用應力。根據(jù)單元類型(Shell 單元、Beam 單元或Rod 單元)的不同,粗網(wǎng)格模型計算每個工況有6 個應力輸出,細網(wǎng)格模型計算每個工況有9 個應力輸出(不考慮靠近焊縫區(qū)域的少量梁單元的應力輸出),所以一個方案在45 個工況下一共有675 個應力輸出。
強框架方案可行性的判斷邏輯如圖3 所示。在一個優(yōu)化子區(qū)域內(nèi),有3 類評估區(qū)域:第1 類只需滿足粗網(wǎng)格評估要求,倘若最大應力值不滿足相應的許用應力,則認為該方案不滿足設(shè)計要求;第2 類屬于規(guī)范要求的細化區(qū)域,需采用細網(wǎng)格有限元模型評估該區(qū)域內(nèi)的應力是否滿足細網(wǎng)格的許用應力,倘若不滿足,則認為該方案不滿足設(shè)計要求;第3 類屬于規(guī)范要求的篩選區(qū)域,該區(qū)域內(nèi)結(jié)構(gòu)即使?jié)M足粗網(wǎng)格許用應力,也還需評估是否滿足篩選衡準,倘若不滿足,需進一步用細網(wǎng)格有限元評估該區(qū)域內(nèi)的結(jié)構(gòu)應力是否滿足細網(wǎng)格的許用應力,若不滿足,也認為該方案不滿足設(shè)計要求。限于篇幅,本文未給出詳細的約束評估要求,詳情可查閱CSR。
圖3 強框架方案可行性的判斷邏輯Fig. 3 Judgement logic about infeasible scheme of strong frame
根據(jù)規(guī)范,本文強框架粗網(wǎng)格模型的網(wǎng)格大小取為800 mm×800 mm,細網(wǎng)格模型由粗網(wǎng)格模型局部細化得到,細化網(wǎng)格大小取為50 mm×50 mm。
基于序貫代理模型輔助遺傳算法的強框架優(yōu)化框架如圖4 所示,各步驟的詳細內(nèi)容如下:
圖4 基于序貫代理模型輔助遺傳算法的強框架優(yōu)化框架Fig. 4 Optimization framework of strong frame based on sequential surrogate assisted genetic algorithm
步驟1:利用拉丁超立方采樣方法產(chǎn)生初始樣本點,并計算樣本點的響應值。
步驟2:利用樣本點庫中的樣本點及其響應值構(gòu)建靜態(tài)Kriging 代理模型[17],其中約束函數(shù)和目標函數(shù)需分別建立相應的代理模型。
步驟3:采用可行性準則處理約束條件,使用遺傳算法對目標函數(shù)代理模型進行尋優(yōu),得到當前最優(yōu)解??尚行詼蕜t的基本內(nèi)容為[18]:當比較2 個可行解時,選擇目標函數(shù)更好的解;當比較1 個可行解與1 個非可行解時,選擇可行解;當比較2 個非可行解時,選擇違反約束程度較低的解。
步驟4:將當前最優(yōu)解用真實的有限元模型(包括細網(wǎng)格模型和粗網(wǎng)格模型)進行仿真計算,并將當前最優(yōu)解加入樣本點庫,然后同時更新目標函數(shù)和約束函數(shù)代理模型。
步驟5:分別針對粗網(wǎng)格約束函數(shù)代理模型和細網(wǎng)格約束函數(shù)代理模型構(gòu)建相應的EFF 函數(shù),然后對其進行尋優(yōu),得到粗網(wǎng)格和細網(wǎng)格約束函數(shù)代理模型的EFF 最優(yōu)點。
步驟6:分別計算對應EFF 最優(yōu)點的粗網(wǎng)格模型和細網(wǎng)格模型真實有限元模型的響應值,然后同時更新相應的約束函數(shù)與目標函數(shù)代理模型。
步驟7:判斷是否滿足停止準則,若滿足,進行步驟8,反之,返回步驟3,繼續(xù)下一次迭代。其中,停止準則可設(shè)為最大EFF 更新次數(shù)。
步驟8:輸出算法達到停止準則后的優(yōu)化方案和強框架結(jié)構(gòu)設(shè)計區(qū)域質(zhì)量。
本優(yōu)化框架對約束函數(shù)代理模型更新準則的選擇無限制,若換用其他更新準則,如U 學習函數(shù),本優(yōu)化框架仍然適用。EFF 加點準則和U 學習函數(shù)均是較早提出且較為常見的針對可行性分析的序貫加點準則,兩者并無絕對的優(yōu)劣,其中EFF加點準則一般在序貫更新點數(shù)量較少時效果較好[15],由于本文的強框架有限元模型單次計算較為耗時,考慮到計算成本,本文采用EFF 加點準則。
本優(yōu)化框架的核心在于,在一次迭代中同時提高目標函數(shù)與約束函數(shù)代理模型的預測精度。其中,步驟4 是以目標函數(shù)代理模型為導向更新代理模型,旨在探索目標函數(shù)代理模型最小值的區(qū)域,加速算法朝質(zhì)量最輕的方向進化。由于計算所得當前最優(yōu)解的真實響應包含目標函數(shù)響應與約束函數(shù)響應,所以作為一種附加收益,也對約束函數(shù)代理模型進行了更新。步驟5 和步驟6是以約束函數(shù)代理模型為導向更新代理模型,旨在提高約束代理模型在約束邊界的精度,避免在進化過程中對個體的可行性產(chǎn)生誤判,提高對優(yōu)化解可行性的評判精度。由于計算所得EFF 最優(yōu)點的真實響應包含約束函數(shù)響應與目標函數(shù)響應,所以作為一種附加效益,也對目標函數(shù)進行了更新。綜上在2 個角度方面的考慮,能夠保證算法高效地找到滿足約束條件的全局最優(yōu)解。
在強框架直接強度評估要求中,根據(jù)網(wǎng)格大小的不同,強框架的應力衡準也不一樣(見第2 節(jié)),并且設(shè)計方案的可行性判斷遵循特定的可行性判斷流程(圖3)。在第2 節(jié)中已經(jīng)分析,一個方案對應675 個應力輸出,這也就是說一共需要建立675 個約束函數(shù)代理模型。因此,如果同時考慮675 個代理模型的精度,每次迭代都要對每個約束函數(shù)代理模型生成一個EFF 最優(yōu)點進行序貫更新的話,那么很顯然,每次迭代針對約束代理模型進行675 個更新點的細/粗網(wǎng)格有限元模型計算成本太高,會影響算法效率。進一步分析可知,并不是每一條約束在對設(shè)計方案進行評價時都會起積極作用。因此,如果能夠先找到積極約束邊界,然后序貫地擬合積極約束邊界,將能減少大量的計算資源,從而提高算法效率。積極約束可以通過式(2)得到:
為了檢驗基于序貫代理模型輔助遺傳算法強框架優(yōu)化方法的優(yōu)化效率,利用基于靜態(tài)代理模型的優(yōu)化方法作了對比?;陟o態(tài)代理模型輔助遺傳算法的強框架優(yōu)化方法如圖5 所示。首先,一次生成所有樣本點并計算樣本點響應,然后,分別建立目標函數(shù)和約束函數(shù)的代理模型。利用所得代理模型替代有限元仿真,再結(jié)合遺傳算法求解得到優(yōu)化解。若代理模型判斷優(yōu)化解為不可行,說明代理模型的精度不滿足要求,需要采用有限元進行仿真驗算,若優(yōu)化解滿足要求,則輸出該優(yōu)化解,否則,結(jié)束優(yōu)化流程。若代理模型判斷優(yōu)化解為可行,采用有限元進行仿真驗算,如滿足約束,則輸出該優(yōu)化解,否則,加嚴約束,重新采用遺傳算法進行求解,得到解后再進行同樣的驗算,如此重復多次,直至得到滿足約束的優(yōu)化解。其中,約束加嚴準則如式(3)所示:
圖5 基于靜態(tài)代理模型輔助遺傳算法的強框架優(yōu)化方法Fig. 5 Optimization method of strong frame based on static surrogate assisted genetic algorithm
EFF 最初是在基于代理模型的可靠性分析領(lǐng)域提出。EFF 函數(shù)能夠量化設(shè)計空間內(nèi)任意一個樣本點對于臨界狀態(tài)函數(shù)的期望可行性,以此來序貫地更新臨界狀態(tài)函數(shù)的代理模型,使其精度能夠在臨界狀態(tài)線附近得到提高。這種思想與約束優(yōu)化設(shè)計中可行性判斷的思想不謀而合。在約束優(yōu)化設(shè)計中,約束代理模型只要能夠為設(shè)計方案提供準確的可行性判斷即可。因此,本文借用EFF 函數(shù)來序貫地更新約束函數(shù)代理模型。EFF函數(shù)的數(shù)學表達式如式(4)所示,每次迭代,將以設(shè)計空間內(nèi)最大化EFF 函數(shù)的坐標點作為序貫更新點,一般采用遺傳算法或差分進化算法等進行求解。
利用基于序貫代理模型輔助遺傳算法的優(yōu)化方法和基于靜態(tài)代理模型輔助遺傳算法的優(yōu)化方法分別優(yōu)化強框架中下區(qū)域,其中遺傳算法均采用精英保留策略,種群數(shù)量為40,最大進化代數(shù)為100,代溝為0.9,交叉概率為0.7,變異概率為0.05。得到優(yōu)化后的結(jié)果如表2 所示,優(yōu)化后的設(shè)計變量取值如表3 所示。由于代理模型計算并不耗時,所以遺傳算法的參數(shù)設(shè)置不太影響計算成本。在建立靜態(tài)代理模型階段和驗算最優(yōu)點時,一個方案必須能同時計算高精度響應和低精度響應,在利用EFF 準則更新約束代理模型時,也會同時產(chǎn)生一個高精度更新點和低精度更新點,所以高精度樣本點數(shù)與低精度樣本點數(shù)始終相等,表2 中的計算成本均以高/低精度樣本點數(shù)表示。為了研究初始樣本點數(shù)對序貫代理模型算法的影響,設(shè)置了30 和60 這2 個不同的初始樣本點數(shù),均迭代20 次,由于序貫代理模型一次迭代會更新2 個樣本點,所以其計算成本分別為70,100 個樣本點。為了對比算法性能,靜態(tài)代理模型算法采用了70,100,150 這3 個不同的樣本點數(shù)。
表2 強框架中下區(qū)域優(yōu)化結(jié)果Table 2 Optimization results of the middle-lower part of strong frame
表3 強框架中下區(qū)域優(yōu)化后設(shè)計變量取值Table 3 Optimized design variable values of the middle-lower part of strong frame
表2 最后2 行分別為粗網(wǎng)格模型和細網(wǎng)格模型的約束滿足程度,即式(2)的值,該值小于0 表示滿足約束,否則,表示違反約束。從中可以看出,靜態(tài)代理模型算法在樣本點數(shù)為70 或100 時均無法找到可行解,究其原因:對于建立15 個設(shè)計變量的靜態(tài)代理模型而言,樣本點數(shù)過少,會導致代理模型精度差而嚴重失真,從而誤判設(shè)計空間內(nèi)無可行域,此時約束加嚴措施會失效。而采用了150 個樣本點的靜態(tài)代理模型算法的優(yōu)化效果也不是很理想,其相對于初始方案質(zhì)量只下降了0.06%,質(zhì)量下降很小。相比之下,序貫代理模型算法在相同計算成本下均能找到可行解,且優(yōu)化方案的質(zhì)量相比初始方案均能夠下降約15%,說明了序貫代理模型算法的有效性。同時,初始樣本點數(shù)為60 個的方案的優(yōu)化結(jié)果稍優(yōu)于初始樣本點為30 個的方案,其質(zhì)量能夠進一步下降約0.013 2 t。150 個樣本點的靜態(tài)代理模型算法優(yōu)化解的粗網(wǎng)格模型約束仍有18.74%的富裕,細網(wǎng)格模型約束仍有3.84%的富裕。而序貫代理模型算法優(yōu)化解的粗網(wǎng)格模型約束仍有17.64%和12.54%的應力富裕,但其細網(wǎng)格模型約束的富裕度則只有0.85% 和0.60%,說明序貫代理模型算法已經(jīng)收斂到了約束邊界附近。
優(yōu)化算法的收斂曲線如圖6 所示,圖中,紅色與黑色實線分別對應初始樣本點數(shù)分別為30 和60 的2 種序貫代理模型算法。從中可以看出,序貫代理模型算法在初始迭代時質(zhì)量下降明顯,且均在第5~6 次迭代時趨于收斂,最終的優(yōu)化效果相當,這說明初始樣本點數(shù)較少的方案更加高效,能夠節(jié)省一部分計算資源。此外,為了檢驗本優(yōu)化框架在不同序貫更新準則下的有效性,圖6還給出了采用“60 樣本點+20 次迭代”的U 學習函數(shù)下的序貫代理模型算法(即將本優(yōu)化框架中的EFF 加點準則替換為U 學習函數(shù))收斂曲線,對應圖6 中的藍色點劃線,其優(yōu)化后的設(shè)計區(qū)域質(zhì)量為5.525 7 t,相比原始方案下降了14.85%,可以看出,其優(yōu)化效果與EFF 加點準則下的序貫代理模型算法非常接近,反映了本優(yōu)化框架的有效性。
圖6 強框架中下區(qū)域優(yōu)化收斂曲線Fig. 6 Optimization convergence curves of the middle-lower part of strong frame
本文分析了CSR 對強框架優(yōu)化的約束要求,提出了基于序貫代理模型輔助遺傳算法的強框架優(yōu)化設(shè)計方法,然后以強框架中下區(qū)域部分為例,計算得到了優(yōu)化結(jié)果,并與基于靜態(tài)代理模型輔助遺傳算法的優(yōu)化方法進行了對比,得到以下主要結(jié)論:
1) 提出的約束函數(shù)個數(shù)縮減方法和基于EFF加點準則的序貫更新策略有效,同時優(yōu)化框架具有良好的拓展性,如果將EFF 加點準則更換為其他同類型的序貫加點準則,如U 學習函數(shù),所提的優(yōu)化框架仍然適用。
2) 在獲得的優(yōu)化解的質(zhì)量相當?shù)那闆r下,初始樣本點較少的序貫代理模型優(yōu)化方案更加高效,能夠節(jié)省一部分計算資源。
3) 基于靜態(tài)代理模型的優(yōu)化方法在樣本點數(shù)較少的情況下未能獲得可行解,而所提的基于序貫代理模型的強框架優(yōu)化方法則能在相同甚至是更少的計算成本下,得到比基于靜態(tài)代理模型優(yōu)化方法更好的優(yōu)化方案,最終實現(xiàn)設(shè)計區(qū)域減重達15.55%。