張 石,鄭東健,陳卓研
(河海大學(xué)水利水電學(xué)院,江蘇 南京 210098)
變形監(jiān)測(cè)是國(guó)內(nèi)外大壩安全監(jiān)控的主要內(nèi)容,根據(jù)變形及環(huán)境量監(jiān)測(cè)值構(gòu)建大壩變形預(yù)測(cè)模型,可以有效預(yù)測(cè)壩體的位移變化規(guī)律及發(fā)展趨勢(shì),進(jìn)而分析其服役狀態(tài),對(duì)大壩安全運(yùn)行具有重要意義[1]。由于影響大壩變形的因素復(fù)雜,常用的逐步回歸、多元回歸等回歸分析方法易受變量多重共線性的影響,導(dǎo)致預(yù)測(cè)模型精度較低[2-4]。隨著人工智能和大數(shù)據(jù)分析技術(shù)的發(fā)展,支持向量機(jī)(SVM)、人工神經(jīng)網(wǎng)絡(luò)(ANN)、長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)、極端梯度提升(XGBoost)等機(jī)器學(xué)習(xí)算法在大壩變形預(yù)測(cè)中得到廣泛應(yīng)用[5-8],進(jìn)一步提升了模型預(yù)測(cè)效果。然而,上述機(jī)器學(xué)習(xí)模型在應(yīng)用過(guò)程中均存在不足之處,如支持向量機(jī)的模型超參數(shù)難以選取,神經(jīng)網(wǎng)絡(luò)模型易陷入局部極值以及存在過(guò)擬合問(wèn)題等[9]。
隨機(jī)森林(RF)算法由Breiman在2001年提出[10],能有效解決多參數(shù)之間的非線性映射問(wèn)題,由于其具備預(yù)測(cè)精度高、訓(xùn)練速度快等優(yōu)勢(shì),已在生物學(xué)、地質(zhì)學(xué)等領(lǐng)域得到廣泛應(yīng)用[11-12],近年來(lái)也逐漸在大壩安全監(jiān)控領(lǐng)域得到關(guān)注[13]。田菊飛等[14]基于隨機(jī)森林算法構(gòu)建大壩應(yīng)力預(yù)測(cè)模型,采用經(jīng)驗(yàn)法選取算法參數(shù)。仝曉哲等[15]基于網(wǎng)格搜索法建立了網(wǎng)絡(luò)搜索法-隨機(jī)森林(GSM-RF)大壩變形預(yù)測(cè)模型,通過(guò)遍歷搜索尋找隨機(jī)森林模型的最優(yōu)參數(shù)組合,并結(jié)合實(shí)例驗(yàn)證表明該模型具有較強(qiáng)的預(yù)測(cè)性能。陳詩(shī)怡等[16]通過(guò)試算得到隨機(jī)森林算法的最優(yōu)參數(shù),并以此建立混凝土壩變形預(yù)測(cè)模型。曾永軍等[17]在建立基于隨機(jī)森林算法的混凝土壩變形預(yù)測(cè)模型的過(guò)程中,同樣采用經(jīng)驗(yàn)法進(jìn)行參數(shù)尋優(yōu)??偨Y(jié)前人研究成果可知,經(jīng)驗(yàn)法和網(wǎng)格搜索法是隨機(jī)森林參數(shù)尋優(yōu)的常用方法,但這兩種傳統(tǒng)方法均存在較大局限性,前者由于主觀性較強(qiáng),容易陷入局部極值,進(jìn)而導(dǎo)致算法預(yù)測(cè)性能下降;后者雖然能獲得較好的尋優(yōu)結(jié)果,但計(jì)算效率低,且受網(wǎng)格結(jié)構(gòu)影響較大。目前,在計(jì)算智能領(lǐng)域,粒子群優(yōu)化(PSO)算法、蟻群(ACO)算法、人工魚(yú)群(AFS)算法等群體智能算法因原理簡(jiǎn)單、收斂速度快、準(zhǔn)確性高,已成為求解優(yōu)化問(wèn)題的常用方法[18]。本文引入自適應(yīng)變異和均衡慣性權(quán)重對(duì)PSO算法進(jìn)行改進(jìn),提出一種基于改進(jìn)PSO算法和RF算法(即改進(jìn)PSO-RF算法)的大壩變形預(yù)測(cè)模型,并以某混凝土拱壩為例,通過(guò)對(duì)比GSM-RF、LSTM、SVM和BP神經(jīng)網(wǎng)絡(luò)(BPNN)模型,驗(yàn)證了本文所提出模型(即RSO-RF模型)的預(yù)測(cè)性能。
RF算法的基本原理為集成學(xué)習(xí),其實(shí)質(zhì)是包含若干決策樹(shù)的分類(lèi)器。該算法通過(guò)組合隨機(jī)形成的決策樹(shù),形成一個(gè)預(yù)測(cè)性能更加穩(wěn)定的強(qiáng)分類(lèi)器,最終由所有決策樹(shù)的預(yù)測(cè)結(jié)果綜合決定輸出值。
決策樹(shù)算法屬于歸納學(xué)習(xí)算法中的一種。在回歸預(yù)測(cè)中,決策樹(shù)采用CART(classification and regression tree)算法[19],即從根節(jié)點(diǎn)開(kāi)始,根據(jù)Gini指數(shù)最小原則選擇最優(yōu)屬性,然后采用二分遞歸方法進(jìn)行屬性分裂和構(gòu)造節(jié)點(diǎn),直到滿足條件時(shí)停止分裂并形成葉節(jié)點(diǎn)。決策樹(shù)的預(yù)測(cè)建立在根節(jié)點(diǎn)至葉節(jié)點(diǎn)的路徑上,輸入數(shù)據(jù)經(jīng)過(guò)的路徑不同,產(chǎn)生的預(yù)測(cè)結(jié)果不同。相對(duì)于其他數(shù)據(jù)挖掘算法,決策樹(shù)算法簡(jiǎn)單方便,計(jì)算速度快,且便于解釋生成規(guī)則。
由于單分類(lèi)器在數(shù)據(jù)結(jié)構(gòu)復(fù)雜、數(shù)據(jù)質(zhì)量參差不齊等條件下存在局限性,集成學(xué)習(xí)逐漸成為大數(shù)據(jù)挖掘和分析的有效手段[20],其基本方法是以某種規(guī)則或者方式綜合若干基分類(lèi)器的預(yù)測(cè)結(jié)果,從而有效避免單分類(lèi)器存在的過(guò)擬合問(wèn)題,以增強(qiáng)學(xué)習(xí)系統(tǒng)的泛化能力。按照基分類(lèi)器是否關(guān)聯(lián),集成學(xué)習(xí)算法可分為無(wú)關(guān)聯(lián)的Bagging系列算法和有關(guān)聯(lián)的Boosting系列算法,而RF算法就是Bagging系列算法的代表。經(jīng)典的Bagging系列算法通過(guò)自助法對(duì)原始樣本進(jìn)行有放回抽樣,在生成的若干新樣本集上分別訓(xùn)練基分類(lèi)器,最后組合所有基分類(lèi)器得到最終的集成分類(lèi)器。在傳統(tǒng)Bagging算法的基礎(chǔ)上,RF算法引入隨機(jī)特征選擇,即在構(gòu)建基分類(lèi)器時(shí),隨機(jī)選取內(nèi)部節(jié)點(diǎn)的分裂屬性集,以進(jìn)一步增加決策樹(shù)的多樣性,提高預(yù)測(cè)性能。
a.采用自助抽樣法隨機(jī)生成n組訓(xùn)練樣本集,并基于每組新樣本構(gòu)建決策樹(shù)模型。
b.在每個(gè)內(nèi)部節(jié)點(diǎn)(非葉子節(jié)點(diǎn))選擇屬性時(shí),從樣本集的所有屬性中隨機(jī)抽取若干個(gè)屬性作為該節(jié)點(diǎn)的屬性集,并以CART算法的評(píng)價(jià)規(guī)則選取最優(yōu)屬性進(jìn)行分裂,直到?jīng)Q策樹(shù)生長(zhǎng)完全。在決策樹(shù)的生長(zhǎng)過(guò)程中,不進(jìn)行剪枝處理。
c.輸入測(cè)試樣本集,每顆決策樹(shù)計(jì)算生成一個(gè)預(yù)測(cè)值。在綜合所有預(yù)測(cè)值的基礎(chǔ)上,得出最終結(jié)果。對(duì)于回歸問(wèn)題,取所有決策樹(shù)預(yù)測(cè)值的加權(quán)平均值作為最終預(yù)測(cè)值。
算法流程如圖1所示。
圖1 RF算法流程示意圖
PSO算法源于對(duì)群鳥(niǎo)覓食行為的研究,是一種求解優(yōu)化問(wèn)題的群體智能算法[21]。算法中每個(gè)粒子具有位置和速度兩個(gè)基本屬性。位置代表尋優(yōu)問(wèn)題的潛在解,經(jīng)適應(yīng)度函數(shù)計(jì)算后對(duì)應(yīng)各粒子的適應(yīng)度值。粒子的速度會(huì)隨著自身和全局粒子的極值在每次迭代過(guò)程中進(jìn)行動(dòng)態(tài)調(diào)整和更新,從而決定下一迭代步中粒子的移動(dòng)方向和距離,具體更新公式如下:
(1)
(2)
PSO算法原理簡(jiǎn)單,收斂速度快,通用性強(qiáng),但當(dāng)數(shù)據(jù)復(fù)雜程度較大、維度較高、參數(shù)設(shè)置不當(dāng)時(shí),容易產(chǎn)生早熟收斂、搜索精度低、后期迭代效率不高等問(wèn)題[22]。隨著迭代的進(jìn)行,算法逐漸從全局搜索階段轉(zhuǎn)入局部搜索階段。不同階段對(duì)算法尋優(yōu)能力的要求有所區(qū)別,前期搜索范圍大,需在重視多樣性的同時(shí)提高搜索效率,而后期更加注重算法的收斂能力,同時(shí)也要減少多樣性的損失,以避免算法早熟收斂。動(dòng)態(tài)調(diào)整w可使PSO算法在各階段取得更好的尋優(yōu)效果[23],本文選取線性遞減慣性權(quán)重來(lái)更好地均衡算法的全局搜索和局部搜索能力,其表達(dá)式為
wk=w1-(w1-w2)k/kmax
(3)
式中:k為當(dāng)前迭代次數(shù);kmax為最大迭代次數(shù);wk為第k次迭代時(shí)的慣性權(quán)重;w1、w2分別為慣性權(quán)重的初始值和結(jié)束值。
在迭代過(guò)程中,PSO算法可能會(huì)由于收斂速度過(guò)快而陷入局部極值,從而過(guò)早收斂。針對(duì)早熟收斂問(wèn)題,引入遺傳算法中的變異操作,即在每次迭代過(guò)程中,以一定概率初始化粒子位置,從而使部分粒子跳出先前搜索到的局部最優(yōu)位置,在更大范圍內(nèi)重新開(kāi)展搜索。
步驟1設(shè)置最大迭代次數(shù)和種群規(guī)模,并初始化粒子位置和速度。搜索空間的維度由尋優(yōu)參數(shù)數(shù)量決定。為防止盲目搜索,粒子各維度的位置和速度根據(jù)各尋優(yōu)參數(shù)范圍設(shè)定最大值與最小值。
步驟2設(shè)置均方誤差為適應(yīng)度函數(shù),將粒子位置信息代入適應(yīng)度函數(shù)計(jì)算各粒子初始適應(yīng)度值。取初始粒子適應(yīng)度值為個(gè)體極值,當(dāng)前個(gè)體最優(yōu)值為全局極值。
步驟3動(dòng)態(tài)調(diào)整w,根據(jù)個(gè)體極值和全局極值更新下一迭代步粒子的速度和位置。當(dāng)粒子速度或位置超過(guò)最大值或低于最小值時(shí),取相應(yīng)最值。執(zhí)行自適應(yīng)變異操作,以一定概率初始化部分粒子位置。
步驟4計(jì)算各粒子適應(yīng)度值,將當(dāng)前迭代步各粒子適應(yīng)度值與自身極值、全局極值作對(duì)比,更新并記錄個(gè)體最優(yōu)與全局最優(yōu)適應(yīng)度值及相應(yīng)位置。
步驟5判斷是否滿足終止條件,即迭代次數(shù)是否達(dá)到最大值。滿足,則輸出全局最優(yōu)適應(yīng)度值,其對(duì)應(yīng)位置即為隨機(jī)森林模型的最優(yōu)參數(shù)組合;不滿足,則重復(fù)步驟3和4,直到滿足終止條件。
影響RF模型性能的主要參數(shù)為決策樹(shù)個(gè)數(shù)即訓(xùn)練樣本集個(gè)數(shù)n和內(nèi)部節(jié)點(diǎn)隨機(jī)抽取的分裂變量數(shù)m。n一般不小于100,默認(rèn)值為500,m默認(rèn)值為總變量數(shù)的算術(shù)平方根并向下取整。選取n、m為改進(jìn)PSO算法的目標(biāo)參數(shù)進(jìn)行尋優(yōu),并將RF模型擬合結(jié)果的均方誤差MSE設(shè)定為適應(yīng)度函數(shù),以迭代計(jì)算出的MSE最小值所對(duì)應(yīng)的位置為n和m的最優(yōu)組合。
步驟1讀取原始數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行預(yù)處理。
步驟2將樣本集分為訓(xùn)練集和測(cè)試集,一般測(cè)試集的比例為總樣本數(shù)的10%~20%。
步驟3將訓(xùn)練集數(shù)據(jù)輸入改進(jìn)PSO-RF算法,通過(guò)粒子群優(yōu)化算法迭代尋優(yōu),得出隨機(jī)森林模型的最優(yōu)參數(shù)組合。
步驟4將測(cè)試集數(shù)據(jù)輸入?yún)?shù)優(yōu)化后的隨機(jī)森林模型,得到預(yù)測(cè)結(jié)果。
步驟5通過(guò)對(duì)比模型預(yù)測(cè)值和實(shí)際值,并計(jì)算均方誤差MSE、平均絕對(duì)誤差MAE和決定系數(shù)R2,分析模型預(yù)測(cè)效果。
綜上,基于改進(jìn)PSO-RF算法的大壩變形預(yù)測(cè)模型的具體建模流程見(jiàn)圖2。
圖2 基于改進(jìn)PSO-RF算法的大壩變形預(yù)測(cè)模型流程
某水庫(kù)位于安徽省六安市,流域面積為745 km2,樞紐工程由攔河壩、泄洪中孔、泄洪隧洞、電站廠房等建筑物組成。水庫(kù)攔河壩為碾壓混凝土雙曲拱壩,最大壩高104.60 m。大壩工作性態(tài)總體正常,安全監(jiān)測(cè)系統(tǒng)較為全面,已基本實(shí)現(xiàn)水位、變形、應(yīng)力、應(yīng)變、溫度、滲流、滑坡及松動(dòng)體等多方面的自動(dòng)化數(shù)據(jù)采集與監(jiān)測(cè)。大壩主體共分為12個(gè)壩段,在2號(hào)、4號(hào)、6號(hào)、8號(hào)、11號(hào)壩段各設(shè)1組正倒垂系統(tǒng),用于監(jiān)測(cè)壩體及壩頂?shù)乃轿灰?。垂線測(cè)點(diǎn)共16個(gè),具體布置情況如圖3所示(圖中1~12為壩段號(hào),PP-1至PP-16為垂線測(cè)點(diǎn),其中PP-1、PP-3、PP-4、PP-5、PP-6、PP-9、PP-11、PP-12為正垂線測(cè)點(diǎn),PP-2、PP-7、PP-8、PP-10、PP-13、PP-14、PP-15、PP-16為倒垂線測(cè)點(diǎn))。
圖3 大壩垂線測(cè)點(diǎn)布置(單位:m)
選取4號(hào)壩段171.00 m高程處PP-13測(cè)點(diǎn)的900組徑向位移監(jiān)測(cè)數(shù)據(jù)為研究對(duì)象,時(shí)間為2016年10月29日至2019年4月16日。將前720組監(jiān)測(cè)數(shù)據(jù)(2016年10月29日至2018年10月18日)作為訓(xùn)練集,后180組監(jiān)測(cè)數(shù)據(jù)(2018年10月19日至2019年4月16日)作為測(cè)試集。
對(duì)于RF模型的參數(shù)尋優(yōu),目前主要采用經(jīng)驗(yàn)法和網(wǎng)格搜索法(GSM)。本文采用改進(jìn)PSO算法對(duì)RF模型參數(shù)進(jìn)行尋優(yōu),并在計(jì)算效率和尋優(yōu)性能方面與GSM進(jìn)行對(duì)比。由于經(jīng)驗(yàn)法主觀性較強(qiáng),應(yīng)用局限性較大,不作為本文模型的比較對(duì)象。
4.2.1基于GSM的模型參數(shù)尋優(yōu)
GSM在設(shè)定參數(shù)區(qū)間和尋優(yōu)步長(zhǎng)的基礎(chǔ)上構(gòu)建搜索空間,以擬合精確度為評(píng)價(jià)指標(biāo),通過(guò)遍歷每一種參數(shù)組合進(jìn)行尋優(yōu)。先設(shè)定n和m的搜索區(qū)間和尋優(yōu)步長(zhǎng),對(duì)于參數(shù)n,設(shè)置區(qū)間為[100,1 000],尋優(yōu)步長(zhǎng)為2;對(duì)于參數(shù)m,設(shè)置區(qū)間為[1,10],尋優(yōu)步長(zhǎng)為1,故網(wǎng)格節(jié)點(diǎn)總數(shù)為4 510個(gè)。目標(biāo)函數(shù)為均方誤差MSE。經(jīng)計(jì)算,得到最優(yōu)參數(shù)組合為n=342,m=9,最小均方誤差為0.004 34,尋優(yōu)時(shí)長(zhǎng)為5 987 s。
4.2.2基于改進(jìn)PSO算法的模型參數(shù)尋優(yōu)
改進(jìn)PSO算法的相關(guān)參數(shù)設(shè)置如下:最大迭代次數(shù)為200,粒子總數(shù)為20,加速度因子s1、s2均為2,慣性權(quán)重初始值w1和結(jié)束值w2分別為0.9、0.5。同樣設(shè)置參數(shù)n、m的尋優(yōu)區(qū)間分別為[100,1 000]、[1,10],適應(yīng)度函數(shù)為均方誤差MSE。通過(guò)改進(jìn)PSO算法進(jìn)行參數(shù)尋優(yōu),當(dāng)?shù)螖?shù)達(dá)到設(shè)定值后終止迭代,具體迭代收斂過(guò)程見(jiàn)圖4。由圖4可知,相比于常規(guī)PSO算法,改進(jìn)PSO算法由于引入線性遞減慣性權(quán)重和自適應(yīng)變異,有效避免了局部極值,尋優(yōu)精度更高,并且尋優(yōu)速度更快,在第33次迭代時(shí)已收斂至最優(yōu)結(jié)果,得到最小均方差為0.004 27,對(duì)應(yīng)最優(yōu)參數(shù)組合為n=407,m=9。記錄尋優(yōu)時(shí)長(zhǎng)為753 s。
圖4 改進(jìn)PSO及常規(guī)PSO算法迭代收斂過(guò)程
基于GSM和改進(jìn)PSO兩種不同尋優(yōu)算法得到的最優(yōu)參數(shù)組合分別構(gòu)建隨機(jī)森林模型,并輸入測(cè)試集數(shù)據(jù)進(jìn)行預(yù)測(cè)。同時(shí),為驗(yàn)證本文模型預(yù)測(cè)性能的優(yōu)劣,在相同訓(xùn)練集數(shù)據(jù)的基礎(chǔ)上構(gòu)建基于LSTM、SVM和BPNN的大壩變形預(yù)測(cè)模型,同樣對(duì)測(cè)試集數(shù)據(jù)進(jìn)行預(yù)測(cè)。5種預(yù)測(cè)模型的超參數(shù)取值如表1所示,對(duì)應(yīng)的預(yù)測(cè)曲線及殘差過(guò)程線見(jiàn)圖5。由圖5可知,5種模型均取得了較好的訓(xùn)練效果,但SVM模型和BPNN模型由于受超參數(shù)取值、陷入局部極值等因素的影響產(chǎn)生了較為明顯的過(guò)擬合現(xiàn)象,導(dǎo)致其在測(cè)試集的預(yù)測(cè)中精度較差,而GSM-RF模型和改進(jìn)PSO-RF模型基于集成學(xué)習(xí)的優(yōu)勢(shì),泛化能力較強(qiáng),有效地避免了過(guò)擬合的問(wèn)題,在預(yù)測(cè)中表現(xiàn)較好。另外,基于dropout技術(shù)[4]的LSTM模型也未出現(xiàn)明顯的過(guò)擬合問(wèn)題,但由于模型結(jié)構(gòu)復(fù)雜,且不能完全克服長(zhǎng)序列預(yù)測(cè)中的梯度問(wèn)題,預(yù)測(cè)效果不及兩種RF模型。
表1 5種大壩變形預(yù)測(cè)模型的超參數(shù)取值范圍及尋優(yōu)值
為進(jìn)一步分析比較這5種模型的預(yù)測(cè)效果,選取MSE、MAE和R2作為評(píng)價(jià)指標(biāo)進(jìn)行計(jì)算,結(jié)果見(jiàn)表2。由表2可知,在訓(xùn)練集中,5種模型均達(dá)到了非常高的擬合程度;而在測(cè)試集的預(yù)測(cè)中,本文模型的3項(xiàng)指標(biāo)明顯優(yōu)于LSTM、BPNN和SVM模型,略優(yōu)于GSM-RF模型,表明其預(yù)測(cè)性能更強(qiáng),穩(wěn)定性更好。同時(shí),兩種RF模型預(yù)測(cè)效果相近也說(shuō)明兩種算法得出的RF參數(shù)已接近最優(yōu),但改進(jìn)PSO-RF算法收斂速度更快,在第33次迭代時(shí)即得到最優(yōu)參數(shù)組合,且參數(shù)尋優(yōu)時(shí)長(zhǎng)相較GSM縮短87.42%,進(jìn)一步驗(yàn)證了GSM-RF模型可以在保證較高預(yù)測(cè)性能的基礎(chǔ)上大幅度提高計(jì)算效率的結(jié)論。
表2 5種大壩變形預(yù)測(cè)模型預(yù)測(cè)性能比較
a.與傳統(tǒng)網(wǎng)格搜索法相比,改進(jìn)PSO算法可在保證模型尋優(yōu)精度的同時(shí),顯著提升尋優(yōu)速度,有效解決了RF算法的參數(shù)尋優(yōu)問(wèn)題。
b.基于改進(jìn)PSO-RF算法的大壩變形預(yù)測(cè)模型的預(yù)測(cè)性能出色,預(yù)測(cè)精度和穩(wěn)定性明顯優(yōu)于LSTM、SVM和BPNN模型,略優(yōu)于GSM-RF模型。
c.GSM-RF模型的適用性較強(qiáng),稍加修改即可應(yīng)用于其他混凝土壩型,為高精度預(yù)測(cè)大壩變形提供了一種新途徑。