張 石,鄭東健,陳卓研
(河海大學水利水電學院,江蘇 南京 210098)
變形監測是國內外大壩安全監控的主要內容,根據變形及環境量監測值構建大壩變形預測模型,可以有效預測壩體的位移變化規律及發展趨勢,進而分析其服役狀態,對大壩安全運行具有重要意義[1]。由于影響大壩變形的因素復雜,常用的逐步回歸、多元回歸等回歸分析方法易受變量多重共線性的影響,導致預測模型精度較低[2-4]。隨著人工智能和大數據分析技術的發展,支持向量機(SVM)、人工神經網絡(ANN)、長短期記憶網絡(LSTM)、極端梯度提升(XGBoost)等機器學習算法在大壩變形預測中得到廣泛應用[5-8],進一步提升了模型預測效果。然而,上述機器學習模型在應用過程中均存在不足之處,如支持向量機的模型超參數難以選取,神經網絡模型易陷入局部極值以及存在過擬合問題等[9]。
隨機森林(RF)算法由Breiman在2001年提出[10],能有效解決多參數之間的非線性映射問題,由于其具備預測精度高、訓練速度快等優勢,已在生物學、地質學等領域得到廣泛應用[11-12],近年來也逐漸在大壩安全監控領域得到關注[13]。田菊飛等[14]基于隨機森林算法構建大壩應力預測模型,采用經驗法選取算法參數。仝曉哲等[15]基于網格搜索法建立了網絡搜索法-隨機森林(GSM-RF)大壩變形預測模型,通過遍歷搜索尋找隨機森林模型的最優參數組合,并結合實例驗證表明該模型具有較強的預測性能。陳詩怡等[16]通過試算得到隨機森林算法的最優參數,并以此建立混凝土壩變形預測模型。曾永軍等[17]在建立基于隨機森林算法的混凝土壩變形預測模型的過程中,同樣采用經驗法進行參數尋優??偨Y前人研究成果可知,經驗法和網格搜索法是隨機森林參數尋優的常用方法,但這兩種傳統方法均存在較大局限性,前者由于主觀性較強,容易陷入局部極值,進而導致算法預測性能下降;后者雖然能獲得較好的尋優結果,但計算效率低,且受網格結構影響較大。目前,在計算智能領域,粒子群優化(PSO)算法、蟻群(ACO)算法、人工魚群(AFS)算法等群體智能算法因原理簡單、收斂速度快、準確性高,已成為求解優化問題的常用方法[18]。本文引入自適應變異和均衡慣性權重對PSO算法進行改進,提出一種基于改進PSO算法和RF算法(即改進PSO-RF算法)的大壩變形預測模型,并以某混凝土拱壩為例,通過對比GSM-RF、LSTM、SVM和BP神經網絡(BPNN)模型,驗證了本文所提出模型(即RSO-RF模型)的預測性能。
RF算法的基本原理為集成學習,其實質是包含若干決策樹的分類器。該算法通過組合隨機形成的決策樹,形成一個預測性能更加穩定的強分類器,最終由所有決策樹的預測結果綜合決定輸出值。
決策樹算法屬于歸納學習算法中的一種。在回歸預測中,決策樹采用CART(classification and regression tree)算法[19],即從根節點開始,根據Gini指數最小原則選擇最優屬性,然后采用二分遞歸方法進行屬性分裂和構造節點,直到滿足條件時停止分裂并形成葉節點。決策樹的預測建立在根節點至葉節點的路徑上,輸入數據經過的路徑不同,產生的預測結果不同。相對于其他數據挖掘算法,決策樹算法簡單方便,計算速度快,且便于解釋生成規則。
由于單分類器在數據結構復雜、數據質量參差不齊等條件下存在局限性,集成學習逐漸成為大數據挖掘和分析的有效手段[20],其基本方法是以某種規則或者方式綜合若干基分類器的預測結果,從而有效避免單分類器存在的過擬合問題,以增強學習系統的泛化能力。按照基分類器是否關聯,集成學習算法可分為無關聯的Bagging系列算法和有關聯的Boosting系列算法,而RF算法就是Bagging系列算法的代表。經典的Bagging系列算法通過自助法對原始樣本進行有放回抽樣,在生成的若干新樣本集上分別訓練基分類器,最后組合所有基分類器得到最終的集成分類器。在傳統Bagging算法的基礎上,RF算法引入隨機特征選擇,即在構建基分類器時,隨機選取內部節點的分裂屬性集,以進一步增加決策樹的多樣性,提高預測性能。
a.采用自助抽樣法隨機生成n組訓練樣本集,并基于每組新樣本構建決策樹模型。
b.在每個內部節點(非葉子節點)選擇屬性時,從樣本集的所有屬性中隨機抽取若干個屬性作為該節點的屬性集,并以CART算法的評價規則選取最優屬性進行分裂,直到決策樹生長完全。在決策樹的生長過程中,不進行剪枝處理。
c.輸入測試樣本集,每顆決策樹計算生成一個預測值。在綜合所有預測值的基礎上,得出最終結果。對于回歸問題,取所有決策樹預測值的加權平均值作為最終預測值。
算法流程如圖1所示。

圖1 RF算法流程示意圖
PSO算法源于對群鳥覓食行為的研究,是一種求解優化問題的群體智能算法[21]。算法中每個粒子具有位置和速度兩個基本屬性。位置代表尋優問題的潛在解,經適應度函數計算后對應各粒子的適應度值。粒子的速度會隨著自身和全局粒子的極值在每次迭代過程中進行動態調整和更新,從而決定下一迭代步中粒子的移動方向和距離,具體更新公式如下:
(1)
(2)

PSO算法原理簡單,收斂速度快,通用性強,但當數據復雜程度較大、維度較高、參數設置不當時,容易產生早熟收斂、搜索精度低、后期迭代效率不高等問題[22]。隨著迭代的進行,算法逐漸從全局搜索階段轉入局部搜索階段。不同階段對算法尋優能力的要求有所區別,前期搜索范圍大,需在重視多樣性的同時提高搜索效率,而后期更加注重算法的收斂能力,同時也要減少多樣性的損失,以避免算法早熟收斂。動態調整w可使PSO算法在各階段取得更好的尋優效果[23],本文選取線性遞減慣性權重來更好地均衡算法的全局搜索和局部搜索能力,其表達式為
wk=w1-(w1-w2)k/kmax
(3)
式中:k為當前迭代次數;kmax為最大迭代次數;wk為第k次迭代時的慣性權重;w1、w2分別為慣性權重的初始值和結束值。
在迭代過程中,PSO算法可能會由于收斂速度過快而陷入局部極值,從而過早收斂。針對早熟收斂問題,引入遺傳算法中的變異操作,即在每次迭代過程中,以一定概率初始化粒子位置,從而使部分粒子跳出先前搜索到的局部最優位置,在更大范圍內重新開展搜索。
步驟1設置最大迭代次數和種群規模,并初始化粒子位置和速度。搜索空間的維度由尋優參數數量決定。為防止盲目搜索,粒子各維度的位置和速度根據各尋優參數范圍設定最大值與最小值。
步驟2設置均方誤差為適應度函數,將粒子位置信息代入適應度函數計算各粒子初始適應度值。取初始粒子適應度值為個體極值,當前個體最優值為全局極值。
步驟3動態調整w,根據個體極值和全局極值更新下一迭代步粒子的速度和位置。當粒子速度或位置超過最大值或低于最小值時,取相應最值。執行自適應變異操作,以一定概率初始化部分粒子位置。
步驟4計算各粒子適應度值,將當前迭代步各粒子適應度值與自身極值、全局極值作對比,更新并記錄個體最優與全局最優適應度值及相應位置。
步驟5判斷是否滿足終止條件,即迭代次數是否達到最大值。滿足,則輸出全局最優適應度值,其對應位置即為隨機森林模型的最優參數組合;不滿足,則重復步驟3和4,直到滿足終止條件。

影響RF模型性能的主要參數為決策樹個數即訓練樣本集個數n和內部節點隨機抽取的分裂變量數m。n一般不小于100,默認值為500,m默認值為總變量數的算術平方根并向下取整。選取n、m為改進PSO算法的目標參數進行尋優,并將RF模型擬合結果的均方誤差MSE設定為適應度函數,以迭代計算出的MSE最小值所對應的位置為n和m的最優組合。
步驟1讀取原始數據,并對數據進行預處理。
步驟2將樣本集分為訓練集和測試集,一般測試集的比例為總樣本數的10%~20%。
步驟3將訓練集數據輸入改進PSO-RF算法,通過粒子群優化算法迭代尋優,得出隨機森林模型的最優參數組合。
步驟4將測試集數據輸入參數優化后的隨機森林模型,得到預測結果。
步驟5通過對比模型預測值和實際值,并計算均方誤差MSE、平均絕對誤差MAE和決定系數R2,分析模型預測效果。
綜上,基于改進PSO-RF算法的大壩變形預測模型的具體建模流程見圖2。

圖2 基于改進PSO-RF算法的大壩變形預測模型流程
某水庫位于安徽省六安市,流域面積為745 km2,樞紐工程由攔河壩、泄洪中孔、泄洪隧洞、電站廠房等建筑物組成。水庫攔河壩為碾壓混凝土雙曲拱壩,最大壩高104.60 m。大壩工作性態總體正常,安全監測系統較為全面,已基本實現水位、變形、應力、應變、溫度、滲流、滑坡及松動體等多方面的自動化數據采集與監測。大壩主體共分為12個壩段,在2號、4號、6號、8號、11號壩段各設1組正倒垂系統,用于監測壩體及壩頂的水平位移。垂線測點共16個,具體布置情況如圖3所示(圖中1~12為壩段號,PP-1至PP-16為垂線測點,其中PP-1、PP-3、PP-4、PP-5、PP-6、PP-9、PP-11、PP-12為正垂線測點,PP-2、PP-7、PP-8、PP-10、PP-13、PP-14、PP-15、PP-16為倒垂線測點)。

圖3 大壩垂線測點布置(單位:m)
選取4號壩段171.00 m高程處PP-13測點的900組徑向位移監測數據為研究對象,時間為2016年10月29日至2019年4月16日。將前720組監測數據(2016年10月29日至2018年10月18日)作為訓練集,后180組監測數據(2018年10月19日至2019年4月16日)作為測試集。
對于RF模型的參數尋優,目前主要采用經驗法和網格搜索法(GSM)。本文采用改進PSO算法對RF模型參數進行尋優,并在計算效率和尋優性能方面與GSM進行對比。由于經驗法主觀性較強,應用局限性較大,不作為本文模型的比較對象。
4.2.1基于GSM的模型參數尋優
GSM在設定參數區間和尋優步長的基礎上構建搜索空間,以擬合精確度為評價指標,通過遍歷每一種參數組合進行尋優。先設定n和m的搜索區間和尋優步長,對于參數n,設置區間為[100,1 000],尋優步長為2;對于參數m,設置區間為[1,10],尋優步長為1,故網格節點總數為4 510個。目標函數為均方誤差MSE。經計算,得到最優參數組合為n=342,m=9,最小均方誤差為0.004 34,尋優時長為5 987 s。
4.2.2基于改進PSO算法的模型參數尋優
改進PSO算法的相關參數設置如下:最大迭代次數為200,粒子總數為20,加速度因子s1、s2均為2,慣性權重初始值w1和結束值w2分別為0.9、0.5。同樣設置參數n、m的尋優區間分別為[100,1 000]、[1,10],適應度函數為均方誤差MSE。通過改進PSO算法進行參數尋優,當迭代次數達到設定值后終止迭代,具體迭代收斂過程見圖4。由圖4可知,相比于常規PSO算法,改進PSO算法由于引入線性遞減慣性權重和自適應變異,有效避免了局部極值,尋優精度更高,并且尋優速度更快,在第33次迭代時已收斂至最優結果,得到最小均方差為0.004 27,對應最優參數組合為n=407,m=9。記錄尋優時長為753 s。

圖4 改進PSO及常規PSO算法迭代收斂過程
基于GSM和改進PSO兩種不同尋優算法得到的最優參數組合分別構建隨機森林模型,并輸入測試集數據進行預測。同時,為驗證本文模型預測性能的優劣,在相同訓練集數據的基礎上構建基于LSTM、SVM和BPNN的大壩變形預測模型,同樣對測試集數據進行預測。5種預測模型的超參數取值如表1所示,對應的預測曲線及殘差過程線見圖5。由圖5可知,5種模型均取得了較好的訓練效果,但SVM模型和BPNN模型由于受超參數取值、陷入局部極值等因素的影響產生了較為明顯的過擬合現象,導致其在測試集的預測中精度較差,而GSM-RF模型和改進PSO-RF模型基于集成學習的優勢,泛化能力較強,有效地避免了過擬合的問題,在預測中表現較好。另外,基于dropout技術[4]的LSTM模型也未出現明顯的過擬合問題,但由于模型結構復雜,且不能完全克服長序列預測中的梯度問題,預測效果不及兩種RF模型。

表1 5種大壩變形預測模型的超參數取值范圍及尋優值
為進一步分析比較這5種模型的預測效果,選取MSE、MAE和R2作為評價指標進行計算,結果見表2。由表2可知,在訓練集中,5種模型均達到了非常高的擬合程度;而在測試集的預測中,本文模型的3項指標明顯優于LSTM、BPNN和SVM模型,略優于GSM-RF模型,表明其預測性能更強,穩定性更好。同時,兩種RF模型預測效果相近也說明兩種算法得出的RF參數已接近最優,但改進PSO-RF算法收斂速度更快,在第33次迭代時即得到最優參數組合,且參數尋優時長相較GSM縮短87.42%,進一步驗證了GSM-RF模型可以在保證較高預測性能的基礎上大幅度提高計算效率的結論。

表2 5種大壩變形預測模型預測性能比較
a.與傳統網格搜索法相比,改進PSO算法可在保證模型尋優精度的同時,顯著提升尋優速度,有效解決了RF算法的參數尋優問題。
b.基于改進PSO-RF算法的大壩變形預測模型的預測性能出色,預測精度和穩定性明顯優于LSTM、SVM和BPNN模型,略優于GSM-RF模型。
c.GSM-RF模型的適用性較強,稍加修改即可應用于其他混凝土壩型,為高精度預測大壩變形提供了一種新途徑。