張世豪,李新樂,呂雅麗,張 婷,高 沛
(大連民族大學(xué) 土木工程學(xué)院,遼寧 大連116650 )
中國位于亞歐大陸東南部邊界處,受到各板塊各方向的加持?jǐn)D壓,導(dǎo)致大陸邊界高山起伏、斷裂眾多且板塊運(yùn)動(dòng)活躍,強(qiáng)震頻發(fā)[1],2008年汶川8.0級地震、2010年青海玉樹7.1級地震、2013年蘆山7.0級地震、2014年新疆于田7.3級地震、2017年四川九寨溝7.0級地震及2021年5月云南省大理市漾濞縣6.4級地震和青海省果洛州瑪多縣7.4級大地震,給人民生命安全和財(cái)產(chǎn)安全造成了極大的損失,對結(jié)構(gòu)抗震設(shè)計(jì)提出了更高要求,中國現(xiàn)行抗震設(shè)計(jì)規(guī)范中仍然采用地震反應(yīng)譜作為控制結(jié)構(gòu)安全的主要方法。
近些年來,土木工程與計(jì)算機(jī)學(xué)科融合為抗震設(shè)計(jì)提供一種新思路,機(jī)器學(xué)習(xí)方法在自然語言理解、視覺目標(biāo)識別等許多領(lǐng)域都發(fā)揮了巨大的作用[2],也為地震反應(yīng)譜的優(yōu)化和預(yù)測提供可能。地震工程學(xué)者也在不斷探索深度學(xué)習(xí)方法在地震中的應(yīng)用,從地震識別、去噪,深到地震預(yù)測以及結(jié)構(gòu)抗震設(shè)計(jì)等應(yīng)用。2012年王夏璐[3]等人基于神經(jīng)網(wǎng)絡(luò)確定模糊化特征周期方法,分析場地,特征周期及反應(yīng)譜的模糊特征。2017年Dhanya J[4]等人建立一個(gè)預(yù)測適用淺源地震動(dòng)參數(shù)的模型,考慮震級、斷層距以及斷層機(jī)理等影響,預(yù)測了地面峰值加速度、峰值速度。2018年,Khosravikia F[5]等人在美國的三個(gè)州地區(qū)開發(fā)了誘發(fā)地震的地震模型,基于人工神經(jīng)網(wǎng)絡(luò),給定震級,斷層距,剪切波速等預(yù)測地面峰值加速度和譜加速度,并進(jìn)行敏感性分析。
本文通過構(gòu)建地震動(dòng)數(shù)據(jù)庫,基于BP神經(jīng)網(wǎng)絡(luò)建立預(yù)測地震加速度反應(yīng)譜模型,將震級、震中距及剪切波速三個(gè)影響參數(shù)作為輸入層,隱藏層采用Sigmoid函數(shù),進(jìn)行訓(xùn)練,預(yù)測得出不同周期下的加速度反應(yīng)譜值,考慮不同因素對結(jié)構(gòu)的影響,通過神經(jīng)元的訓(xùn)練,得到預(yù)測的地震動(dòng)反應(yīng)譜值。
震中距(Rjb),觀察點(diǎn)到震中的地球球面距離稱為這一點(diǎn)的震中距,有時(shí)以長度來表示(公里數(shù))。根據(jù)震中距離大小,可將地震分為地方震(Rjb≤100 km)、近震(100 km
首先根據(jù)太平洋地震工程研究中心的PEER地震動(dòng)數(shù)據(jù)庫中的數(shù)據(jù)和中國國家地震數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行收集組成分析用地震動(dòng)數(shù)據(jù)庫,按震級、震中距、剪切波速進(jìn)行分類。
編寫python程序?qū)Φ卣饎?dòng)加速度數(shù)據(jù)進(jìn)行地震反應(yīng)譜計(jì)算,得到最大絕對加速度反應(yīng)Sa。
sinω(t-τ)dτ∣max。
(1)
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是模仿大腦神經(jīng)元地學(xué)習(xí)過程地一種運(yùn)算方法。人工神經(jīng)元在結(jié)構(gòu)上近似于生物神經(jīng)元,其網(wǎng)絡(luò)結(jié)構(gòu)由連接器、加法器以及激活函數(shù)組成。
圖1 Log-Sigmoid函數(shù)
因此在輸入數(shù)據(jù)之前,將數(shù)據(jù)進(jìn)行歸一化處理,通過神經(jīng)網(wǎng)絡(luò)反饋誤差,在訓(xùn)練樣本的誤差到初始值時(shí)訓(xùn)練結(jié)束。
基于構(gòu)建0~30 km地震動(dòng)數(shù)據(jù)庫中2 097條地震動(dòng)記錄,按8:1:1將地震動(dòng)數(shù)據(jù)為訓(xùn)練集、驗(yàn)證集及測試集,以震級、震中距、剪切波速作為輸入層參數(shù),通過隱層Sigmoid函數(shù),進(jìn)行訓(xùn)練,最后通過驗(yàn)證得到預(yù)測結(jié)果。BP神經(jīng)網(wǎng)絡(luò)流程圖如圖2。
圖2 神經(jīng)網(wǎng)絡(luò)流程圖
地震對于結(jié)構(gòu)的影響因素有很多,選取敏感度較高的指標(biāo),很好反應(yīng)地震對于結(jié)構(gòu)的特性。神經(jīng)網(wǎng)絡(luò)中輸入向量由于輸入數(shù)據(jù)的多樣性和復(fù)雜性,因此要考慮多方面的因素,一般滿足兩個(gè)要求[8]:
(1)輸入向量與輸出向量有一定的映射關(guān)系,輸入向量的選取對于輸出向量的影響較大;
(2)輸入向量之間不具有相關(guān)性或相互影響較小。
本文以震級、震中距、剪切波速作為輸入層。
為解決激活函數(shù)帶來的誤差,將訓(xùn)練數(shù)據(jù)在[0,1]的區(qū)間進(jìn)行歸一化處理,將數(shù)據(jù)落在合理的區(qū)間范圍內(nèi)。歸一化公式為
(2)
式中:μ為所有樣本數(shù)據(jù)的均值;σ為所有樣本數(shù)據(jù)的標(biāo)準(zhǔn)差;x*表示歸一化后的數(shù)據(jù);x表示輸入數(shù)據(jù)。
利用Python語言編程,對地震動(dòng)的彈性反應(yīng)譜譜值進(jìn)行BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練。BP神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)為3-8-1的結(jié)構(gòu),輸入層3個(gè)節(jié)點(diǎn),分別為震級、震源距離及剪切波速,隱層結(jié)構(gòu)采用單隱層結(jié)構(gòu),節(jié)點(diǎn)個(gè)數(shù)為8個(gè),輸出層有1個(gè)節(jié)點(diǎn),為不同結(jié)構(gòu)周期下反應(yīng)譜預(yù)測值如圖3。
圖3 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
BP神經(jīng)網(wǎng)絡(luò)權(quán)重參數(shù)W的求解,分為信號“正向傳播(fp)”求損失,“反向傳播(bp)”回傳誤差,根據(jù)誤差值修改每層的權(quán)重,繼續(xù)迭代神經(jīng)元。
BP神經(jīng)網(wǎng)絡(luò)由信息的正向傳播和誤差的反向傳播兩個(gè)過程組成。正向傳播過程中,輸入層三個(gè)節(jié)點(diǎn)有不同的權(quán)重值W,即
y=W×X+b。
(3)
式中:y為前向傳播中的預(yù)測值;W為節(jié)點(diǎn)權(quán)重;X為輸入層數(shù)據(jù);b為神經(jīng)元的偏置。
由于隱藏層節(jié)點(diǎn)的預(yù)測誤差無法直接計(jì)算,因此,反向傳播算法利用輸出層節(jié)點(diǎn)的預(yù)測誤差反向估計(jì)上一層隱藏層節(jié)點(diǎn)的預(yù)測誤差,即從后往前逐層從輸出層把誤差反向傳播到輸入層,從而實(shí)現(xiàn)鏈?zhǔn)綑?quán)重調(diào)整。除輸出層外,每層節(jié)點(diǎn)神經(jīng)元分為兩個(gè)部分,即正向傳播以及反向傳播。當(dāng)神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果與真實(shí)值相差較大或者不在接受范圍以內(nèi),即存在誤差。輸出層誤差為
(4)
式中:E為誤差;dk為實(shí)際值;Ok為輸出層預(yù)測值。隱藏層誤差,公式為
(5)
式中:f(netk)為輸出層線性變化輸出值;wjk為隱藏層權(quán)重值;yj為隱藏層輸出值,輸入層誤差為
(6)
式中:f(netj)為隱藏層線性變化輸出值;wjk為隱藏層權(quán)重值;xi為輸入層輸出值。
為了使誤差越來越小,可以采用梯度下降的方式進(jìn)行w和v求解。學(xué)習(xí)率為0.015,迭代次數(shù)為30 000次,誤差闕值(MSE)為0.000 65,得到誤差迭代次數(shù)的下降,20~30 km誤差分析結(jié)果如圖4。
圖4 20~30 km誤差分析圖
由圖可以看出在迭代接近30 000次時(shí),達(dá)到誤差預(yù)設(shè)值。表明該網(wǎng)絡(luò)訓(xùn)練完成,接下來通過驗(yàn)證集進(jìn)行驗(yàn)證,以及測試集進(jìn)行檢驗(yàn)并改進(jìn)。
基于構(gòu)建的地震動(dòng)數(shù)據(jù)庫和BP神經(jīng)網(wǎng)絡(luò)模型,給出部分結(jié)構(gòu)周期下彈性加速度反應(yīng)譜真實(shí)譜值與預(yù)測譜值的對比結(jié)果如圖5,單位為Gal(/Gal=10 mm·s-2)。圖中點(diǎn)越接近f(x)=x說明預(yù)測譜值與實(shí)測譜值越接近,擬合效果較好。
圖5 0~10 km ,T=0.1 s的彈性加速度譜值
從圖5中可以看出,當(dāng)結(jié)構(gòu)周期為0.01 s時(shí),0~10 km范圍內(nèi)的地震加速度反應(yīng)譜值接近真實(shí)值,且神經(jīng)網(wǎng)絡(luò)誤差值為0.002 678,小于預(yù)設(shè)誤差值,準(zhǔn)確預(yù)測了T=0.01 s時(shí)加速度反應(yīng)譜值。0~10 km, T=0.5 s彈性加速度譜值如圖6。
圖6可以看出,當(dāng)結(jié)構(gòu)周期為0.05 s時(shí),0~10 km范圍內(nèi)的地震加速度反應(yīng)譜值接近實(shí)測值,神經(jīng)網(wǎng)絡(luò)誤差值為0.003 751,小于預(yù)設(shè)誤差值,準(zhǔn)確預(yù)測了T=0.05 s時(shí)加速度反應(yīng)譜值。10~20 km, T=0.1 s的彈性加速度譜值如圖7。
圖6 0~10 km, T=0. 5 s的彈性加速度譜值
圖7 10~20 km, T=0. 1 s的彈性加速度譜值
圖7可以看出,當(dāng)結(jié)構(gòu)周期為0.01 s時(shí),10~20 km范圍內(nèi)的地震加速度反應(yīng)譜值接近實(shí)測值,且神經(jīng)網(wǎng)絡(luò)誤差值為0.084 556,小于預(yù)設(shè)誤差值。10~20 km, T=0. 5 s的彈性加速度譜值如圖8。
圖8 10~20 km, T=0.5 s的彈性加速度譜值
圖8可以看出,當(dāng)周期為0.05 s時(shí),10~20 km范圍內(nèi)的地震加速度反應(yīng)譜值接近實(shí)測值,且神經(jīng)網(wǎng)絡(luò)誤差值為0.023 746,小于預(yù)設(shè)誤差值。20~30 km, T=0.1 s的彈性加速度譜值如圖9。
圖9 20~30 km, T=0.1 s的彈性加速度譜值
圖9可以看出,當(dāng)周期為0.01 s時(shí),20~30 km范圍內(nèi)的地震加速度反應(yīng)譜值接近實(shí)測值,且神經(jīng)網(wǎng)絡(luò)誤差值為0.039753,小于預(yù)設(shè)誤差值。20~30 km, T=0.5 s的彈性加速度譜值如圖10。
圖10 20~30 km, T=0.5 s的彈性加速度譜值
圖10可以看出,當(dāng)周期為0.05 s時(shí),20~30 km范圍內(nèi)的地震加速度反應(yīng)譜值接近實(shí)測值,且神經(jīng)網(wǎng)絡(luò)誤差值為0.034 274,小于預(yù)設(shè)誤差值,預(yù)測了T=0.05 s時(shí)加速度反應(yīng)譜值。
綜上所述,三種不同震源的數(shù)據(jù)訓(xùn)練中,皆小于預(yù)設(shè)誤差值,說明本方法行之有效。
本文基于BP神經(jīng)網(wǎng)絡(luò)對0~30 km的地震動(dòng)彈性加速度反應(yīng)譜值進(jìn)行預(yù)測研究,利用python語言編程,計(jì)算得到彈性加速度反應(yīng)譜值,考慮震級、震中距、剪切波速的影響,通過賦予不同權(quán)重值,分別對0~10 km、10~20 km和20~30 km不同震中距的地震動(dòng)進(jìn)行神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練以及驗(yàn)證,結(jié)論如下:
(1)采用python語言編程完成BP神經(jīng)網(wǎng)絡(luò)算法構(gòu)建,確定了彈性加速度反應(yīng)譜值預(yù)測的輸入層、隱藏層及輸出層的參數(shù),通過權(quán)重參數(shù)調(diào)整得到了最優(yōu)迭代結(jié)果及誤差閾值;
(2)利用構(gòu)建的BP神經(jīng)網(wǎng)絡(luò)對0~30 km地震動(dòng)彈性加速度反應(yīng)譜進(jìn)行機(jī)器學(xué)習(xí),結(jié)果顯示預(yù)測譜值與真實(shí)譜值擬合準(zhǔn)確度高,為抗震設(shè)計(jì)反應(yīng)譜的優(yōu)化奠定基礎(chǔ)。