汪金勝,李永樂,楊 劍,徐國(guó)際*
(1.西南交通大學(xué) 土木工程學(xué)院,成都 610031;2.中南大學(xué) 土木工程學(xué)院,長(zhǎng)沙 410075)
工程結(jié)構(gòu)在建設(shè)和服役期內(nèi)不可避免地存在各種不確定性因素,如荷載條件、材料性質(zhì)和環(huán)境因素等。在這些不確定性因素作用下結(jié)構(gòu)系統(tǒng)的響應(yīng)也表現(xiàn)出一定的隨機(jī)性。因此,在結(jié)構(gòu)分析過(guò)程中,合理考慮隨機(jī)因素的影響對(duì)于結(jié)構(gòu)的安全性評(píng)估和相應(yīng)的決策分析至關(guān)重要。作為不確定性量化分析領(lǐng)域的一個(gè)重要分支,可靠度理論為考慮上述不確定性因素提供了一條有效的途徑[1]。結(jié)構(gòu)可靠度分析的主要目的是計(jì)算結(jié)構(gòu)在一定極限狀態(tài)下發(fā)生失效的概率Pf。國(guó)內(nèi)外學(xué)者對(duì)此進(jìn)行了大量的研究,并提出了許多近似分析方法[2-7]。近年來(lái),以代理模型為基礎(chǔ)的一系列可靠度分析方法因能有效地平衡計(jì)算精度和計(jì)算效率而得到大量研究和越來(lái)越廣泛的應(yīng)用[8]。該類方法通過(guò)少量的訓(xùn)練樣本(模型計(jì)算)建立原問(wèn)題的代理模型來(lái)進(jìn)行結(jié)構(gòu)可靠度分析,可以在保證失效概率計(jì)算精度的前提下顯著提高計(jì)算效率。常用的代理模型包括響應(yīng)面法(RSM)[9,10]、人工神經(jīng)網(wǎng)絡(luò)(ANN)[11]、支持向量機(jī)(SVM)[12]和Kriging模型[13]等。其中,以基于Kriging模型為代表的主動(dòng)學(xué)習(xí)算法因在精度和效率之間優(yōu)異的折中性逐漸成為可靠度領(lǐng)域一個(gè)熱門的研究課題。此類算法利用代理模型提供的預(yù)測(cè)值和局部誤差估計(jì)(如Kriging的預(yù)測(cè)方差)構(gòu)建學(xué)習(xí)函數(shù),在迭代過(guò)程中自適應(yīng)地選取新的重要樣本點(diǎn)對(duì)模型進(jìn)行更新,直至滿足設(shè)定的收斂條件[13]。相關(guān)的研究重點(diǎn)可概括為以下幾個(gè)方面。(1) 構(gòu)建高效學(xué)習(xí)函數(shù),如U函數(shù)、EFF函數(shù)、H函數(shù)、FNEIF函數(shù)和REIF函數(shù)等[14]; (2) 推導(dǎo)收斂準(zhǔn)則,如基于相對(duì)誤差估計(jì)的收斂準(zhǔn)則及其改進(jìn)策略[15-17]; (3) 提出有效抽樣區(qū)域概念,如自適應(yīng)抽樣域法[18]; (4) 高效混合算法計(jì)算小失效概率,如基于Kriging和重要抽樣的方法[19]以及基于Kriging和子集模擬的方法[20]等; (5) 解決系統(tǒng)失效概率計(jì)算[21,22]和結(jié)構(gòu)優(yōu)化設(shè)計(jì)[23]等問(wèn)題。
目前,大多數(shù)自適應(yīng)學(xué)習(xí)算法都是基于Kriging模型建立的,而基于其他代理模型的學(xué)習(xí)算法相對(duì)較少。這主要是因?yàn)镵riging模型不僅能得到新點(diǎn)的預(yù)測(cè)值,而且還能給出其局部誤差估計(jì),為高效地構(gòu)建主動(dòng)學(xué)習(xí)算法提供了便利;而傳統(tǒng)的支持向量機(jī)等其他代理無(wú)法直接得到預(yù)測(cè)方差,需要額外采用Bootstrap等方法才能得到近似誤差估計(jì),計(jì)算比較繁瑣。針對(duì)此問(wèn)題,一些學(xué)者在貝葉斯推理框架下進(jìn)行代理模型的構(gòu)建,如近期提出的貝葉斯稀疏混沌展開(Bayesian sparse PCE)[24]和貝葉斯支持向量回歸機(jī)(Bayesian SVR)[25]。與Kriging模型類似,Bayesian sparse PCE模型和Bayesian SVR也能直接得到預(yù)測(cè)方差值,因此現(xiàn)有的主動(dòng)學(xué)習(xí)算法可直接適用于貝葉斯推理框架下的PCE模型和SVR 模型。不過(guò),與基于經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化原則建立的PCE和ANN等模型不同的是,SVR模型采用結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則進(jìn)行構(gòu)建,具有嚴(yán)格的理論基礎(chǔ)和良好的泛化能力,有效地避免了過(guò)擬合,且能很好地處理小樣本、高維度和非線性等問(wèn)題。因此,基于Bayesian SVR模型建立的自適應(yīng)學(xué)習(xí)算法有望進(jìn)一步提升該類算法的有效性和適用性[26]。
鑒于此,本文提出一種新的基于貝葉斯支持向量回歸機(jī)的高效自適應(yīng)學(xué)習(xí)算法(ABSVR)用于結(jié)構(gòu)可靠度分析。首先,借鑒優(yōu)化算法中懲罰函數(shù)的概念,提出了一種新的學(xué)習(xí)函數(shù)。該學(xué)習(xí)函數(shù)綜合考慮了樣本點(diǎn)的預(yù)測(cè)值、預(yù)測(cè)方差、概率密度函數(shù)值以及與已有樣本點(diǎn)的距離等因素,能有效地引導(dǎo)算法在學(xué)習(xí)過(guò)程中選取位于極限狀態(tài)曲面附近且對(duì)失效概率貢獻(xiàn)大的樣本點(diǎn)。其次,考慮到失效概率估計(jì)的特點(diǎn),提出了一種新的有效抽樣域策略,以篩選出對(duì)失效概率計(jì)算誤差貢獻(xiàn)大的點(diǎn)作為備選樣本點(diǎn),提高算法的學(xué)習(xí)效率。此外,為確定合適的收斂準(zhǔn)則,防止因欠學(xué)習(xí)產(chǎn)生較大估計(jì)誤差或過(guò)學(xué)習(xí)產(chǎn)生冗余樣本而降低計(jì)算效率,本文引入一種基于相對(duì)誤差估計(jì)的停止條件,確保算法在達(dá)到給定誤差閾值的情況下自動(dòng)停止。最后,通過(guò)三個(gè)算例驗(yàn)證本文所提方法的適用性、準(zhǔn)確性和高效性。
支持向量機(jī)最初是由Vapnik等[27]在統(tǒng)計(jì)學(xué)習(xí)理論指導(dǎo)下提出的用于解決模式識(shí)別問(wèn)題的算法,之后進(jìn)一步推廣到函數(shù)回歸分析中,并在不同領(lǐng)域得到了廣泛應(yīng)用。為進(jìn)一步提升支持向量回歸機(jī)的構(gòu)建效率和性能,文獻(xiàn)[25,28]在貝葉斯推理框架下采用不同的損失函數(shù)建立了支持向量回歸機(jī)(Bayesian SVR)模型??紤]到不同Bayesian SVR模型性能的相似性,本節(jié)僅對(duì)文獻(xiàn)[26]中基于平方損失函數(shù)(式(1))構(gòu)建的Bayesian SVR進(jìn)行簡(jiǎn)要介紹,并用于后續(xù)自適應(yīng)可靠度分析算法的建立。
(1)
給定由輸入變量點(diǎn)集X={x1,x2,…,xN}T和相應(yīng)的結(jié)構(gòu)響應(yīng)Y={y1,y2,…,yN}T組成的訓(xùn)練樣本集D={(X,Y)|xi∈n,yi∈(i=1,2,…,N)},則在回歸分析中訓(xùn)練樣本對(duì)關(guān)系為
(i=1,2,…,N)(2)
(3)
式中λ為待求常數(shù),l(δ)為式(1)的損失函數(shù)。
(4)
(5)
式中Σ為大小為N×N的協(xié)方差矩陣,每個(gè)矩陣元素可通過(guò)式(4)得到。此外,由于δi為服從獨(dú)立同分布的變量,給定訓(xùn)練樣本集下的似然函數(shù)為
(6)
根據(jù)貝葉斯理論,g的后驗(yàn)概率分布為
(7)
式中P(D|φ)為歸一化常數(shù)。將式(5,6)代入式(7)可得
(8)
(9)
針對(duì)模型采用的平方損失函數(shù),文獻(xiàn)[25]推導(dǎo)出了式(9)中g(shù)的最優(yōu)估計(jì)值為
(10)
式中I為大小為N×N的單位矩陣,β=(Σ+I/λ)-1Y。對(duì)于Bayesian SVR模型中涉及的超參數(shù)φ={θ,λ},可通過(guò)求解極小值問(wèn)題(11)得到。
(11)
(12)
(13)
式中κ(x,X)=[κ(x,x1),κ(x,x2),…,κ(x,xN)]T,可由式(4)計(jì)算得到。
至此,在貝葉斯推理框架下建立了Bayesian SVR模型,得到的預(yù)測(cè)值和預(yù)測(cè)方差的表達(dá)式可直接用于構(gòu)建結(jié)構(gòu)可靠度分析的自適應(yīng)算法。關(guān)于該模型更詳細(xì)的推導(dǎo)過(guò)程和基于其他損失函數(shù)建立的模型參見文獻(xiàn)[26,29]。
本文將Bayesian SVR模型用于自適應(yīng)學(xué)習(xí)算法(ABSVR)的建立,主要從三個(gè)方面提升其整體性能,一是基于可靠度分析中重要樣本點(diǎn)的特征,利用優(yōu)化算法中懲罰函數(shù)的概念,提出一種新的高效學(xué)習(xí)函數(shù);二是構(gòu)建有效抽樣域,選取對(duì)失效概率估計(jì)誤差貢獻(xiàn)大的點(diǎn)作為備選樣本點(diǎn);三是引入一種基于相對(duì)誤差估計(jì)的停止條件,防止因欠學(xué)習(xí)或過(guò)學(xué)習(xí)而降低算法性能。
(14)
學(xué)習(xí)函數(shù)U能有效表征樣本點(diǎn)在代理模型中錯(cuò)誤分類的概率,即
Pw=Φ[-U(x)]
(15)
式中Pw為樣本點(diǎn)的錯(cuò)誤分類概率,Φ(·)為正態(tài)分布累積概率密度函數(shù)。由式(15)可知,函數(shù)U值越小,樣本點(diǎn)屬性錯(cuò)誤分類的概率就越大。因此,文獻(xiàn)[13]采用函數(shù)U的極小值作為選點(diǎn)策略,
(16)
(1) 利用優(yōu)化算法中懲罰函數(shù)的概念,構(gòu)建函數(shù)式為
(17)
(18)
因此,綜合考慮以上各種因素的影響,本文提出一種新的學(xué)習(xí)函數(shù)(NLF),其表達(dá)式為
(19)
式中γ為常數(shù),可防止式中分母為零,本文取γ=1×10-5;max(·)為一簇x∈SC對(duì)應(yīng)估計(jì)值的最大值。學(xué)習(xí)過(guò)程中,選取備選樣本集SC中使學(xué)習(xí)函數(shù)NLF(x)最小的點(diǎn)xnew加入現(xiàn)有樣本集SD中,即
(20)
本文通過(guò)學(xué)習(xí)函數(shù)NLF和Bayesian SVR模型構(gòu)建的自適應(yīng)算法記為ABSVR2。為選取更具代表性的樣本點(diǎn),備選樣本集SC的點(diǎn)應(yīng)具有較好的空間滿布性和均勻性。因此,將利用UQLab[30]抽取Sobol序列作為樣本集SC的點(diǎn)。
由式(15)可知,位于極限狀態(tài)曲面附近或預(yù)測(cè)方差大的點(diǎn)錯(cuò)誤分類的概率更大,是失效概率估計(jì)的主要誤差來(lái)源,因而在自適應(yīng)學(xué)習(xí)過(guò)程中需重點(diǎn)關(guān)注該區(qū)域內(nèi)的樣本點(diǎn)。其中,錯(cuò)誤分類的情況有兩種,一是屬于安全域內(nèi)的點(diǎn)以一定的置信度(如95%)誤分為失效點(diǎn),該類點(diǎn)記為SS;二是屬于失效域內(nèi)的點(diǎn)以一定的置信度誤分為安全點(diǎn),該類點(diǎn)記為SF。這兩類樣本點(diǎn)主要分布在極限狀態(tài)曲面附近區(qū)域,可分別表示為
(21)
(22)
收斂準(zhǔn)則在自適應(yīng)學(xué)習(xí)算法中十分重要,為使算法能更好地在計(jì)算效率和精度間達(dá)到平衡,需要設(shè)置合適的停止判據(jù),否則過(guò)學(xué)習(xí)和欠學(xué)習(xí)都可能使算法的性能大打折扣。常用的方法是,給學(xué)習(xí)函數(shù)設(shè)定一個(gè)閾值,當(dāng)滿足閾值條件時(shí)停止學(xué)習(xí),如文獻(xiàn)[13]中針對(duì)學(xué)習(xí)函數(shù)U的收斂準(zhǔn)則。然而,此類準(zhǔn)則可能過(guò)于保守,導(dǎo)致不必要的計(jì)算開銷,而且合適的閾值有時(shí)很難確定。為此,一些學(xué)者提出了基于相對(duì)誤差估計(jì)的收斂準(zhǔn)則[15-17],將停止條件與失效概率估計(jì)誤差聯(lián)系起來(lái),可在保證精度的前提下減少功能函數(shù)的調(diào)用。本文采用文獻(xiàn)[17]的方法建立ABSVR1和ABSVR2的收斂條件。
(23)
(24)
(25)
(26)
因此,給定誤差閾值εt,相應(yīng)的收斂準(zhǔn)則為
εr≤εmax≤εt
(27)
根據(jù)3.1節(jié)~3.3節(jié)的闡述,本文所提ABSVR算法用于結(jié)構(gòu)可靠度分析的主要步驟如下。
(1) 從Sobol序列中抽取NC個(gè)樣本點(diǎn)組成備選樣本集SC;利用拉丁超立方抽樣(LHS)抽取ND個(gè)初始訓(xùn)練樣本集SD。
(5) 判斷式(27)的收斂條件是否滿足。如果滿足,執(zhí)行步驟(7);否則,執(zhí)行步驟(6)。
(6) 根據(jù)步驟(4)所得學(xué)習(xí)函數(shù)值選出最佳樣本點(diǎn)xnew,計(jì)算其對(duì)應(yīng)的結(jié)構(gòu)響應(yīng)值,并擴(kuò)充到訓(xùn)練樣本集SD中,即SD=SD∪xnew,ND=ND+1,并返回步驟(2)。
(28)
(29)
算例1由四個(gè)失效模式組成的串聯(lián)系統(tǒng)
考慮一個(gè)二維輸入變量條件下的串聯(lián)系統(tǒng),其極限狀態(tài)函數(shù)為[13]
(30)
式中x1和x2為相互獨(dú)立的標(biāo)準(zhǔn)正態(tài)隨機(jī)變量。
表1 算例1可靠度分析結(jié)果對(duì)比
為更好地展現(xiàn)ABSVR算法的優(yōu)異性能,圖1給出了ABSVR1和ABSVR2的收斂模型及相應(yīng)的訓(xùn)練樣本點(diǎn)。可以看出,雖然初始訓(xùn)練樣本點(diǎn)分布于整個(gè)樣本空間,但是通過(guò)學(xué)習(xí)函數(shù)U和學(xué)習(xí)函數(shù)NLF選取的新樣本點(diǎn)絕大多數(shù)位于失效邊界附近,因此ABSVR1模型和ABSVR2模型能夠在重要區(qū)域?qū)υ瓨O限狀態(tài)曲面表現(xiàn)出很高的擬合精度。由于考慮了距離測(cè)度,相比于學(xué)習(xí)函數(shù)U,本文所提學(xué)習(xí)函數(shù)NLF選取的樣本點(diǎn)均勻性更好。此外,由于四個(gè)角點(diǎn)區(qū)域的概率密度函數(shù)值很小,對(duì)失效概率估計(jì)的貢獻(xiàn)基本可忽略不計(jì),所以該部分的擬合精度對(duì)最終的計(jì)算精度無(wú)顯著影響。
圖1 收斂后的Bayesian SVR模型及其訓(xùn)練樣本
算例2非線性彈簧振子模型
考慮如圖2所示的非線性彈簧振子模型,其極限狀態(tài)函數(shù)為[13]
(31)
圖2 非線性彈簧振子模型
表2 算例2基本隨機(jī)變量分布參數(shù)
表3 算例2可靠度分析結(jié)果對(duì)比
圖3給出了ABSVR1算法和ABSVR2算法5次獨(dú)立運(yùn)算的收斂過(guò)程??梢钥闯?,雖然各次運(yùn)算在前幾次迭代過(guò)程中有比較大的波動(dòng),但在第10次迭代后便能從不同程度迅速逼近精確解,說(shuō)明了本文方法的精確性、高效性和良好的魯棒性。
算例3懸臂管結(jié)構(gòu)
考慮如圖4所示的懸臂管結(jié)構(gòu),該結(jié)構(gòu)受3個(gè)外荷載及1個(gè)扭矩的作用。當(dāng)結(jié)構(gòu)的屈服強(qiáng)度σ小于最大von Mises應(yīng)力σmax時(shí),認(rèn)為結(jié)構(gòu)失效。因此,該結(jié)構(gòu)對(duì)應(yīng)的極限狀態(tài)函數(shù)可表示為[15]
圖3 ABSVR1算法和ABSVR2算法5次獨(dú)立運(yùn)算的收斂過(guò)程
圖4 懸臂管結(jié)構(gòu)
g(x)=σ-σmax
(32)
(33)
表4 算例3基本隨機(jī)變量分布參數(shù)
表5給出了本文所提算法與其他方法的結(jié)果對(duì)比,其中參考值由樣本量為NT=1×106的MCS經(jīng)10次重復(fù)計(jì)算的均值得到,而FORM,SORM,IS、SS以及AK-MCS的結(jié)果則是通過(guò)默認(rèn)參數(shù)設(shè)置的UQLab[30]計(jì)算得到。由表5可知,對(duì)于本算例涉及的高維度和非線性問(wèn)題,一階可靠度法FORM存在較大的計(jì)算誤差 (12.12%)。雖然二階可靠度法SORM能有效提高FORM的計(jì)算精度,但其功能函數(shù)調(diào)用次數(shù)顯著提升。與MCS方法相比,基于方差縮減技術(shù)的抽樣方法(IS和SS)能在保持一定精度的情況下減少大量的函數(shù)調(diào)用,但其計(jì)算效率仍然很低。相較而言,基于自適應(yīng)代理模型技術(shù)的方法(AK-MCS,ABSVR1和ABSVR2)在計(jì)算效率和計(jì)算精度上都保持著明顯的優(yōu)勢(shì)。得益于高效學(xué)習(xí)函數(shù)、有效抽樣域策略以及合適收斂條件的綜合利用,本文所提的兩種方法在整體性能上均優(yōu)于傳統(tǒng)的AK-MCS,能在更少功能函數(shù)調(diào)用的情況下得到精度更高的失效概率估計(jì)。
表5 算例3可靠度分析結(jié)果對(duì)比
圖5給出了ABSVR1算法和ABSVR2算法5次獨(dú)立運(yùn)算的收斂過(guò)程。可以看出,雖然各次運(yùn)算在前幾次迭代過(guò)程中有比較大的波動(dòng),但在第6次迭代后便能從不同程度迅速逼近精確解,說(shuō)明了本文方法的精確性、高效性和良好的魯棒性。
圖5 ABSVR1算法和ABSVR2算法5次獨(dú)立運(yùn)算的收斂過(guò)程
本文基于Bayesian SVR模型建立了可靠度分析的高效自適應(yīng)算法(ABSVR),該算法綜合利用了SVR模型在處理小樣本、高維度和非線性等問(wèn)題時(shí)表現(xiàn)出的優(yōu)異性能和貝葉斯推理框架下的概率估計(jì),為進(jìn)一步提升該類算法的有效性和適用性奠定了基礎(chǔ)。此外,本文還從三個(gè)方面提升ABSVR的整體性能,一是為有效地引導(dǎo)算法在學(xué)習(xí)過(guò)程中選取位于極限狀態(tài)曲面附近且對(duì)失效概率貢獻(xiàn)大的樣本點(diǎn),提出了一種可綜合考慮樣本點(diǎn)預(yù)測(cè)值、預(yù)測(cè)方差、概率密度函數(shù)值以及與已有樣本點(diǎn)間距等因素的學(xué)習(xí)函數(shù);二是考慮到失效概率估計(jì)的特點(diǎn),提出了一種新的有效抽樣域策略以提高算法的學(xué)習(xí)效率;三是為防止欠學(xué)習(xí)或過(guò)學(xué)習(xí)對(duì)算法性能產(chǎn)生不利影響,引入一種基于相對(duì)誤差估計(jì)的停止條件,能有效地保證算法在達(dá)到給定誤差閾值的情況下自動(dòng)停止。通過(guò)三個(gè)算例分析得出以下結(jié)論。
(1) 本文的算法框架綜合利用了貝葉斯支持向量機(jī)提供的概率估計(jì)信息、有效抽樣策略以及合理的收斂準(zhǔn)則,通過(guò)與學(xué)習(xí)函數(shù)U(即ABSVR1算法)或提出的新學(xué)習(xí)函數(shù)NLF(即ABSVR2算法)結(jié)合能很好地適用于結(jié)構(gòu)可靠度分析。相較于其他算法,本文提出的兩種方法能更好地平衡計(jì)算精度和效率。
(2) 通過(guò)學(xué)習(xí)函數(shù)U和學(xué)習(xí)函數(shù)NLF選取的新樣本點(diǎn)絕大多數(shù)位于失效邊界附近,基于此得到的ABSVR1模型和ABSVR2模型均能在重要區(qū)域?qū)υ瓨O限狀態(tài)曲面進(jìn)行高精度的擬合。其中,由于學(xué)習(xí)函數(shù)NLF考慮了樣本間的距離測(cè)度,所選取的樣本點(diǎn)(相比于學(xué)習(xí)函數(shù)U)均勻性更好,因而ABSVR2算法在達(dá)到相同精度水平時(shí)所需要的功能函數(shù)調(diào)用次數(shù)一般較ABSVR1更少。
(3) 由于概率密度函數(shù)值很小的區(qū)域?qū)κЦ怕使烙?jì)的貢獻(xiàn)基本可忽略不計(jì),該部分的擬合效果對(duì)最終的計(jì)算精度無(wú)顯著影響,因而在結(jié)構(gòu)可靠度分析中可通過(guò)合理的抽樣區(qū)域策略予以過(guò)濾,在不損失精度的情況下可進(jìn)一步提高計(jì)算效率。
(4) 本文方法在學(xué)習(xí)過(guò)程中不涉及復(fù)雜的優(yōu)化算法或非正態(tài)變量的等概率變換,簡(jiǎn)單易懂,有利于進(jìn)一步推廣自適應(yīng)算法在實(shí)際工程中的應(yīng)用;但所提方法對(duì)涉及復(fù)雜有限元模型的可靠度分析問(wèn)題的適用性還需結(jié)合算例進(jìn)一步驗(yàn)證。