洪耀球
(景德鎮(zhèn)學(xué)院信息工程學(xué)院,江西景德鎮(zhèn) 333000)
隨著海上運輸量的增加,船舶的化石燃料消耗量逐年增加,燃油消耗量約占船舶總運營成本的25%以上,因此,研究船舶燃油消耗量的影響因素,有利于控制船舶的氣體排放[1],對于提高船舶燃油消耗率具有重要的意義。
目前很多學(xué)者在船舶燃油消耗方面進行了研究。樓狄明等[2]通過擬合油耗、排放與航速的關(guān)系,建立巡航工況下的航速優(yōu)化模型,對拖船的最佳油耗和排放對應(yīng)的航速進行分析。馬冉祺等[3]通過離散化思想,建立以航速為自變量、燃油消耗量為應(yīng)變量的航速優(yōu)化模型,并采用遺傳算法進行優(yōu)化計算。Lazakis等[4]根據(jù)數(shù)據(jù)報告開發(fā)了一種柴油發(fā)電機的機器學(xué)習(xí)算法,以監(jiān)控機器運行狀態(tài)。Wong等[5]采用不同類型的機器學(xué)習(xí)方法監(jiān)測柴油機性能,并對不同算法進行了比較;石新發(fā)等[6]采用粒子群優(yōu)化(PSO)算法對船舶樣本參數(shù)實施無監(jiān)督聚類,并根據(jù)定義計算了各特征對結(jié)果的影響。袁智等[7]以航線貨運船的航速、燃油等歷史監(jiān)控數(shù)據(jù)為基礎(chǔ),建立了船舶航速與油耗優(yōu)化模型。葉睿等[8]采用人工神經(jīng)網(wǎng)絡(luò)構(gòu)建了船舶油耗和航速的黑箱模型,對油耗的預(yù)測具有一定的實用性。Fagerholt等[9]統(tǒng)計船舶燃油消耗的歷史數(shù)據(jù),通過線性插值擬合方法分析了油耗與航速之間的關(guān)系。Bocchetti等[10]建立了基于多元線性回歸統(tǒng)計模型,并采用導(dǎo)航信息技術(shù)對燃油消耗量進行控制。Kee等[11]基于多元線性回歸模型改進了油耗分析系統(tǒng),通過監(jiān)測船舶的實時油耗來提高運行效率。Wang等[12]以集裝箱船為例,考慮影響船舶燃油消耗的參數(shù),建立了最小絕對收縮和選擇算子(LASSO)回歸分析優(yōu)化模型,并用不同的統(tǒng)計方法對結(jié)果進行比較。Jeon等[13]比較了人工神經(jīng)網(wǎng)絡(luò)、支持向量回歸和多項式回歸等方法在估算船舶燃油消耗量方面的性能。以上研究都是基于單方面數(shù)學(xué)分析方法進行建模的,沒有比較不同模型間的優(yōu)劣。本文中針對某內(nèi)河船舶燃油消耗建立多種預(yù)測模型,并對各種算法模型進行比較,旨在確定燃油消耗量的較為準確算法,以期為船舶油耗的預(yù)測提供參考。
數(shù)據(jù)采集是系統(tǒng)識別和描述的重要問題之一。由于船舶采集的大部分數(shù)據(jù)對航行油耗的影響小,因此在油耗模型建立前須剔除相關(guān)性較小的數(shù)據(jù),有利于精簡油耗模型,提高算法的計算速度。本文中的主機轉(zhuǎn)速、扭矩、船舶航速和燃油消耗量等數(shù)據(jù)均由監(jiān)測報告獲得,主機功率、掃氣儲氣罐溫度、掃氣氣壓、主機冷卻水溫度和壓力、主機推力功率等數(shù)據(jù)由發(fā)動機的日志記錄提供,采用傳感器測量發(fā)動機燃油流量計數(shù)器和氣缸排氣口溫度。由于傳感器發(fā)生故障,剔除了部分異常數(shù)據(jù),因此有效數(shù)據(jù)包含70個不同的參數(shù),其中部分參數(shù)的分析如表1所示。
表1 船舶運行參數(shù)數(shù)據(jù)集(樣本個數(shù)均為718)的統(tǒng)計分析
相關(guān)分析是一種有助于解釋變量之間關(guān)系的統(tǒng)計方法,用于確定2個變量之間的關(guān)系,一般采用Pearson方法。Pearson相關(guān)系數(shù)取值范圍為[-1,1],系數(shù)前的正、負號分別代表正相關(guān)和負相關(guān)。船舶運行的參數(shù)是船舶油耗的重要影響因素,通過分析船舶運行參數(shù)與油耗之間的相關(guān)性,生成輸入的船舶運行參數(shù)與輸出的油耗之間的相關(guān)系數(shù),對相關(guān)系數(shù)進行排序或加權(quán),找出與船舶油耗的相關(guān)性最顯著的一系列船舶運行參數(shù),作為模型的基礎(chǔ)數(shù)據(jù)。
1.2.1 多元線性回歸
多元線性回歸(MLR)是分析多個自變量與單個因變量之間關(guān)系的數(shù)學(xué)模型,因變量y為
y=ω0+ω1x1+ω2x2++ωnxn,
(1)
式中:x1,x2, ,xn為輸入的自變量;n為自變量個數(shù);ω0,ω1,ω2,,ωn為回歸系數(shù),可以用最小二乘法計算[14],即可以表示為
(2)
1.2.2 嶺回歸
嶺回歸(RR)和LASSO回歸是用于系數(shù)估計的分析方法,在估算系數(shù)中比最小二乘法的精確性更高。嶺回歸和LASSO回歸都允許減少回歸模型中的估計量,能夠生成系數(shù)估計值等于或接近于0的線性模型。嶺回歸遵循類似于多元線性回歸的分析方法,但不使用最小二乘法求解系數(shù),每個系數(shù)的平方都會通過施加懲罰而減小,即
(3)
式中: 正則化的超參數(shù)λ>0;D為樣本總個數(shù)。
嶺回歸和LASSO回歸的主要區(qū)別在于懲罰方式,LASSO模型的系數(shù)表達式為
(4)
嶺回歸算法考慮了所有特征,能夠避免過度擬合,而LASSO回歸模型注重的是目標方向上的子集。
1.2.3 支持向量回歸
支持向量機(SVM)是一種可用于分類和回歸的有監(jiān)督學(xué)習(xí)模型。算法中輸入的數(shù)據(jù)被轉(zhuǎn)換成一個基于優(yōu)化技術(shù)的特征區(qū)域,SVM有著較高的準確度。支持向量回歸(SVR)通過保留算法的所有主要特征來執(zhí)行解決方案,將SVR設(shè)置為近似的公差范圍,通過調(diào)整公差邊距使誤差最小化。SVR模型為
f(x)=xTw+b0,
(5)
式中:x為向量形式表示的樣本數(shù)據(jù);b0為截距;w是通過最小化式函數(shù)得到的,即
(6)
其中函數(shù)V定義為
(7)
式中:t=y-f(xi), 表示數(shù)據(jù)點到邊界的距離;ε為允許距離。
根據(jù)函數(shù)V的定義,小于ε的誤差可以忽略。圖1所示為SVR示意圖,其中超平面表示數(shù)據(jù)的實際值,虛線、綠點和黃點分別表示公差限值(允許邊距)的區(qū)域、允許區(qū)域內(nèi)的預(yù)測值和允許區(qū)域外的預(yù)測值。
x—數(shù)據(jù)點; y—數(shù)據(jù)誤差; ε—允許距離。圖1 支持向量回歸示意圖
1.2.4K-最近鄰回歸
K-最近鄰(KNN)回歸是一種非參數(shù)模型,利用KNN算法將不同特征值之間的距離進行分量。KNN算法不同于其他算法,在分類時對數(shù)據(jù)沒有訓(xùn)練階段,數(shù)據(jù)集在之前就有了分類和特征值。在一個樣本特征空間中,K個最鄰近的樣本歸屬于一個類別,則該樣本也被劃分為該類別。該算法的主要思路如下: 首先計算測試數(shù)據(jù)與各個訓(xùn)練數(shù)據(jù)之間的距離,并根據(jù)距離進行排序,選取距離最小的K個點,確定前K個點出現(xiàn)的頻率; 然后返回前K個點中頻率最高的樣本類別作為測試數(shù)據(jù)的預(yù)測分類。
任意點xj與給定點xq(q=1,2,,D)之間的距離LP(P為計算距離類別)為
(8)
當(dāng)P=1時,LP為曼哈頓距離;當(dāng)P=2時,LP為歐幾里德距離。
1.2.5 多層感知器回歸
多層感知器回歸(MLPR)是一種用于非線性建模的神經(jīng)網(wǎng)絡(luò),可以估計具有指定層數(shù)和神經(jīng)元選擇的非線性數(shù)據(jù)。在訓(xùn)練數(shù)據(jù)的過程中,尋找神經(jīng)元間權(quán)值的最佳值。MLPR的結(jié)構(gòu)由3個基本層組成,即輸入層、隱藏層和輸出層,如圖2所示。在前饋網(wǎng)絡(luò)中,每層的輸入是由前一層的輸出產(chǎn)生,層間神經(jīng)元通過層間神經(jīng)網(wǎng)絡(luò)相互連接。
1.2.6 決策樹回歸
決策樹是一種樹狀結(jié)構(gòu),可以建立在回歸模型和分類模型上。根據(jù)特征和目標,決策樹由決策節(jié)點和葉子節(jié)點組成。由于決策樹算法與人類思維能力邏輯具有相似性,因此算法結(jié)構(gòu)易于理解。決策樹回歸算法結(jié)構(gòu)如圖3所示。
X1, X2,,Xi—輸入層; Wi1, Wi2, , Wij— 隱藏層; Tij—輸出層。圖2 多層感知器回歸結(jié)構(gòu)
圖3 決策樹回歸算法結(jié)構(gòu)
為了評估上述模型的準確性,對訓(xùn)練后的模型進行k-折交叉驗證。該方法將數(shù)據(jù)集劃分為k個相等的子集,其中k-1個子集用于訓(xùn)練和測試,其余子集用于驗證。本文中最終確定k-折交叉驗證的次數(shù)為4,如圖4所示。
為了評估所用模型的預(yù)測能力,采用均方根誤差(RMSE)、平均絕對誤差(MAE)和決定系數(shù)r2這3個誤差度量指標來衡量模型預(yù)測值與實際值之間的關(guān)系。在這些誤差度量指標中,預(yù)測模型的準確率用決定系數(shù)r2來衡量,而算法的誤差則采用MAE和RMSE進行衡量,數(shù)值越小,說明預(yù)測模型算法的可靠性越高。RMSE在大數(shù)據(jù)評估中更有優(yōu)勢,決定系數(shù)r2的值越接近1,說明該估計模型的可靠性越高。
圖4 數(shù)據(jù)點的k-折交叉驗證示意圖(子集個數(shù)k為4)
2.2.1 RMSE
回歸曲線上預(yù)測值與實際值之間的距離表示殘差,均方根誤差RRMSE的計算公式為
(9)
2.2.2 MAE
平均絕對誤差MMAE對應(yīng)于實際值和預(yù)測值之間的絕對誤差,計算公式為
(10)
2.2.3 決定系數(shù)r2
決定系數(shù)r2表達式為
(11)
根據(jù)上述估算模型,對某內(nèi)河船舶進行了油耗預(yù)測。該船安裝了10缸二沖程柴油機,從船舶采集到的數(shù)據(jù)集樣本個數(shù)共計755,從燃油消耗量相關(guān)的參數(shù)中采集主機功率、轉(zhuǎn)速、扭矩、主潤滑油、冷卻器溫度等數(shù)據(jù)。圖5所示為船舶油耗預(yù)測模型分析流程。
圖5 船舶油耗預(yù)測模型分析流程
首先對數(shù)據(jù)進行預(yù)處理,刪除數(shù)據(jù)集中異常數(shù)據(jù),根據(jù)相關(guān)性Pearson方法,得出船舶主機功率、扭矩、轉(zhuǎn)速、航速等運行參數(shù)與船舶燃油消耗具有較強相關(guān)性,如圖6所示。從圖中可以看出,船舶功率與燃油消耗關(guān)聯(lián)性最大,是影響船舶油耗的最重要因素。扭矩、轉(zhuǎn)速是反映船舶運行狀態(tài)的重要特征,決定船舶在運行過程中是否需要進行減速、轉(zhuǎn)向、等待,是實際運行中重點關(guān)注的因素。
圖6 船舶油耗與運行參數(shù)的相關(guān)性
將船舶油耗數(shù)據(jù)集分為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù),每個預(yù)測模型都用訓(xùn)練數(shù)據(jù)進行訓(xùn)練,用實測數(shù)據(jù)對訓(xùn)練后的模型進行驗證。本次分析確定有效樣本總個數(shù)為718,將481個樣本作為訓(xùn)練數(shù)據(jù),使用其他237個樣本作為測試數(shù)據(jù)集,采用Python編程語言的默認超參數(shù)進行模型訓(xùn)練,超參數(shù)設(shè)置如表2所示。
燃油消耗量的預(yù)測值與所有模型訓(xùn)練后的實際數(shù)據(jù)集進行比較,得到船舶實際燃油消耗量值與預(yù)測燃油消耗量值之間的關(guān)系,如圖7所示,圖中紅點表示實際油耗值,其他顏色表示不同預(yù)測模型得出的預(yù)測值。
表2 模型訓(xùn)練的超參數(shù)設(shè)置
圖7 內(nèi)河船舶燃油消耗的實際值和預(yù)測值
對所有預(yù)測模型進行k-折交叉驗證,數(shù)據(jù)集被分成4個子集,分別計算每個模型每次迭代的決定系數(shù)r2,然后求出每個估計模型4次迭代決定系數(shù)r2的平均值,以確定模型的訓(xùn)練精度,如圖8所示。
圖8 不同模型的訓(xùn)練精度
對各預(yù)測模型進行誤差度量,考慮到燃油消耗量的估計值和誤差度量值,所有模型通過隨機抽取的樣本對數(shù)據(jù)集進行識別,以完成模型的評估,各模型的計算誤差度量值如表3所示。從表中可以看出,評價效果較好的模型是多元線性回歸和嶺回歸,決策樹回歸算法在成功率方面處于中等水平。數(shù)據(jù)集的連續(xù)性使得有些方法的估計效果劣于嶺回歸模型。嶺回歸方法在應(yīng)用中使用的數(shù)據(jù)量相對較小,并且能夠提取異常值,數(shù)據(jù)之間有較好的兼容性,因此在油耗預(yù)測模型中得到了較好的結(jié)果,均方根誤差為0.000 1,平均絕對誤差為0.002,決定系數(shù)為0.999 99。
表3 不同模型的誤差度量指標
本文中以內(nèi)河船舶的運行參數(shù)為樣本進行油耗估算研究,分析了船舶主機功率、扭矩、轉(zhuǎn)速、航速等船舶運行參數(shù)與油耗的相關(guān)性,采用多元線性回歸、嶺回歸、支持向量回歸等算法,建立了多種基于機器學(xué)習(xí)算法的內(nèi)河船舶油耗預(yù)測模型。以某內(nèi)河船舶的油耗為實例,通過k-折交叉驗證方法分析了各模型的準確性,采用均方根誤差、平均絕對誤差、決定系數(shù)等誤差度量指標定量評價了各個模型的可靠性,綜合得出多元線性回歸和嶺回歸的油耗預(yù)測模型最接近實際油耗數(shù)據(jù)的結(jié)果,可以為船舶油耗管理的理論研究和尾氣排放的控制提供參考。