肖金龍,溫 泉,2
(1.長江航道規劃設計研究院,武漢 430011;2.國家內河航道整治工程技術研究中心,武漢 430011)
絞吸挖泥船被廣泛應用于維護航道、港口清淤和圍海造陸等[1-2]。目前,航道通航能力的維護、泥沙的淤積與航道的現狀分析等航道整治問題得到了學者們的廣泛研究[3-4],絞吸式挖泥船作為航道疏浚的主要載體也被廣泛關注。但是,絞吸挖泥船在施工時操作人員主要利用泥漿濃度變化來判斷絞刀在水下的挖掘狀態,現行挖泥船的泥漿濃度測量方式主要為γ射線濃度儀,具有放射性,若施工人員長時間與之相接觸會造成身體傷害。疏浚現場環境復雜,γ濃度儀有時會發生故障,由于γ濃度儀的特殊性施工人員往往無法及時對其進行修復,在這種情況下挖泥船的施工被迫中斷。
隨著技術的發展,許多科研人員針對挖泥船泥漿濃度的有效、安全測量問題進行了攻關。許多研究人員利用層析成像技術(ET)對管道的輸送狀態進行了研究[5-6]。Brodowicz等[7]利用電容層析成像技術(ECT)技術對管道內的氣力輸送過程進行了實時監控,并取得了較好效果。Isaksen等[8]利用ECT對管道中的油/氣/水等三相流進行分析研究,并對其各相面進行監測。袁俊朗等[9]利用ECT對挖泥船的管道泥漿濃度進行測量,電容層析成像方法具有響應速度快、無輻射性、制造較為簡便、成本低等優點。但是疏浚現場環境復雜,信號干擾較大,容易造成基于ECT技術的泥漿濃度測量誤差偏大。基于ECT的精度不高問題,部分國內外學者采用電阻層析成像技術(ERT)對管道泥漿濃度測量進行了大量研究。浙江大學余金華等[10]利用電阻層析成像技術(ERT)對氣液兩相流孔隙率測量問題進行研究并取得較好效果。閉治躍等[11]利用徑向基函數神經網絡對泥漿濃度進行測量,該方法的優點是成本低、反應速度較慢、測量系統復雜度較高。王斌等[12]基于疏浚機理利用數字仿真建模技術推導出泥漿濃度預測模型,實現泥漿濃度的實時預測。隨著大數據、機器學習的興起,越來越多的研究人員將數據挖掘應用到各自的領域并取得了較好的效果[13-15]。
(1)XGBoost (Exterme Gradient Boosting) 模型。

XGBoost與Gradient Boosting Decision Tree (GBDT)的區別主要表現為:
①目標函數:XGBoost的損失函數中添加了正則化項,使模型變得更加復雜。
②優化方法:XGBoost的優化過程中使用了一階、二階導數,而GBDT中只使用了一階導數信息。
③缺失值處理:XGBoost對缺失值進行了處理,通過學習模型自動選擇最優的缺失值默認切分方向。
④防止過擬合:XGBoost除了增加了正則項來防止過擬合,還支持行列采樣的方式來防止過擬合。
(2)XGBoost目標函數優化。
①定義目標函數
(1)
其中
(2)

②優化目標函數

(3)
則目標函數可表示為
(4)

(5)
式中:yi-yi(t-1)表示殘差,將公式(5)應用二階泰勒展開式可表示為
(6)

(7)

(8)
根據公式(1)中對模型復雜項的定義,將其應用到公式(8)中可得
(9)
對上式進行求導可得

(10)
將式(10)帶入式(9)中可得
(11)
令Gi=Σi∈Ijgi,Hi=Σi∈Ijhi,則式(11)可表示為式(12),XGBoost利用公式(12)來作為損失函數的判斷依據。
(12)
(3)決策樹的生成。
在決策樹的生成過程XGBoost定義了特征選擇和切分選擇的指標
(13)


圖1 技術路線圖Fig.1 Technology roadmap
本研究選取2016年4月“長獅9號”絞吸挖泥船在長江某水域施工共計20 000組監測數據作為研究案例,用于驗證本文所提出的方法。研究路線如圖1所示。
在數據預處理階段,首先將所有數據隨機切分成20%的測試集和80%的訓練集。在訓練集上將所有泥漿濃度為0的施工時刻全部剔除,若泥漿濃度值顯示為0,則在工程上可視為挖泥船并未施工或尚未進行泥漿抽吸工作,無法用于泥漿濃度的預測學習。
由于挖泥船上的監測數據種類繁多且相互之間的量綱不同,無法同時進行學習。所以本文采用區間縮放法對所有監測數據進行標準處理,如公式(14)所示。
(14)
本文利用Support Vector Machines-Recursive Feature Elimination (SVM-RFE)特征選擇方法對“長獅9號”的數據進行特征提取,在保證特征對目標最大刻畫的基礎上盡可能少選取特征類別,最終指定選擇9個特征列。
SVM-RFE是一種由Guyon[17]首次提出使用的基于SVM的集成特征選擇方法,其算法如表1所示。

表1 支持向量機-遞歸特征消除算法Tab.1 SVM-RFE algorithm
SVM-RFE通過數據分析選取的9個對泥漿濃度預測貢獻最大的特征向量如圖2所示,F163為2#艙內泵排出壓力,F170為1#艙內泵排出壓力,F13為水下泵吸入真空度,F11為絞刀深度,F2為流量,F5為橋架角度,F18為臺車行程,F196為水下泵排除壓力,F88為絞刀功率。
應用XGBoost模型學習挖泥船歷史施工數據,進而得到泥漿濃度預測模型。利用五折網格搜索交叉驗證的方法對模型參數進行了選定,選定后的模型超參數如表2所示。

圖2 特征重要度Fig.2 Feature importance

表2 算法模型參數表Fig.2 Algorithm model parameter
其中表2中的參數eta表示算法的學習率,max_depth表示最大樹深,n_estimators表示決策樹的數目。選取三個指標來評價模型的精度對本文所應用的算法模型進行評價,具體評價得分如表3所示。

表3 模型評價Fig.3 Model evaluation
由表3可得XGBoost的R2(擬合優度,R2∈[0,1])得分為0.953 2;MAE(平均絕對誤差) 0.982;RMSE(均方根誤差) 1.423,預測效果較好。選取測試集中的500組數據與XGBoost預測值進行對比分析,圖3為真實濃度值與預測濃度值之間的對比圖,圖4所示為模型的預測值與真實的測試數據之間的差值對比圖。

由圖4可得,模型預測值與真實值之間的誤差較小,大部分保持在5%以內,即證明XGBoost的性能較好。
本文提出了一種基于XGBoost集成學習的泥漿濃度預測方法,首先對目標挖泥船的歷史施工數據進行預處理包括剔除異常數據和非施工數據,對數據進行標準化處理等。其次,對處理后的數據利用特征工程提取特征,再將選取的特征帶入選定的模型中進行訓練學習,最后將訓練好的模型應用到實際施工過程中,XGBoost模型在不斷學習進一步提高精度,當γ泥漿濃度計發生故障時馬上代替物理濃度計使用,提高了挖泥船施工的連續性,可作為實際施工的一種補充手段。