黃溫赟,黃文超,朱陳程,趙新穎*
(1 中國水產(chǎn)科學(xué)研究院漁業(yè)機械儀器研究所,農(nóng)業(yè)部遠洋漁船與裝備重點實驗室,上海 200092;2 青島海洋科學(xué)與技術(shù)國家試點實驗室深藍漁業(yè)工程聯(lián)合實驗室,山東 青島 266237)
聯(lián)合國糧食及農(nóng)業(yè)組織(FAO)數(shù)據(jù)表明[1],2019年全球漁船總數(shù)量約為460萬艘,中國現(xiàn)有作業(yè)漁船數(shù)量為86萬艘[2],龐大的漁船規(guī)模使中國沿海、近海的漁業(yè)資源及海洋生態(tài)環(huán)境承受了巨大的壓力。自20世紀70年代末,中國近海海洋資源開始出現(xiàn)衰減跡象,為保護漁業(yè)資源,實現(xiàn)海洋資源的可持續(xù)發(fā)展,國家對近海捕撈漁船實行了“雙控”制度,即控制船舶總量和控制主機功率總量[3]。為提高魚貨產(chǎn)量,部分漁民在漁船更新或新造過程中,私自更換漁船主機的標牌和說明書,加之漁船監(jiān)管不到位[4],使得中國漁船出現(xiàn)了“機證不符”“大機小標”的問題,不僅增加了漁船作業(yè)的安全隱患,更加大了漁船和漁業(yè)資源的管理難度。
針對漁船“機證不符”“大機小標”問題,一些學(xué)者從管理層面分析了原因,提出了一系列的對策[2,5-7]。同時,原農(nóng)業(yè)部于2014年1月20日印發(fā)《漁船用柴油機型譜與標識管理方法》[8],逐步規(guī)范了漁船用柴油機型譜和標識管理,力圖逐步破解“大機小標”管理頑疾。
在漁船技術(shù)層面,國內(nèi)學(xué)者對“機證不符”“大機小標”問題的研究還很少。王永鼎等[9]對漁船用柴油機型譜數(shù)據(jù)分析,促進了型譜管理方法和實施細則的合理完善。李勝勇等[10]通過研究典型主機改裝前后的標定功率、轉(zhuǎn)速和螺旋槳之間的關(guān)系,探索出一種利用螺旋槳軸徑判斷漁船是否存在“大機小標”現(xiàn)象的方法。
破解現(xiàn)階段漁船“大機小標”問題的關(guān)鍵,在于對漁船主機功率的預(yù)報。漁船主機額定功率的估算屬于復(fù)雜非線性問題,神經(jīng)網(wǎng)絡(luò)技術(shù)對于求解非線性問題有著常規(guī)方法不可比擬的優(yōu)勢。神經(jīng)網(wǎng)絡(luò)技術(shù)已經(jīng)被廣泛運用到漁業(yè)、漁船生產(chǎn)作業(yè)中。王金浩等[11]運用BP神經(jīng)網(wǎng)絡(luò),對漁船航行中的風(fēng)險等級進行評估,為漁船航行和作業(yè)提供了安全保障。鄭志輝[12]運用人工神經(jīng)網(wǎng)絡(luò)搭建了黃鰭金槍魚漁情預(yù)報模型。楊鯤鵬等[13]運用神經(jīng)網(wǎng)絡(luò)模型,探索了一種船舶動力裝置綜合安全評價模型的實現(xiàn)方法。喻欣[14]運用神經(jīng)網(wǎng)絡(luò)模型,對拖網(wǎng)漁船的耐波性能進行了研究。
本研究利用部分漁船樣本點,運用神經(jīng)網(wǎng)絡(luò)模型,探索出一種利用漁船船型參數(shù)估算漁船主機功率的方法,運用該模型能夠較準確的估算漁船合理的主機額定功率范圍。根據(jù)估算功率和漁船標牌功率的差別,可判斷漁船是否存在“大機小標”現(xiàn)象。
神經(jīng)網(wǎng)絡(luò)是依照大腦神經(jīng)網(wǎng)絡(luò)工作原理而建立的一種簡單的數(shù)學(xué)模型[15],由輸入層、隱藏層和輸出層組成[16],其中,輸入層輸入的為漁船特征值,輸出層輸出的為漁船主機功率,隱藏層的作用是處理輸入層數(shù)據(jù),從而達到對輸出層數(shù)據(jù)準確估算的目的。其結(jié)構(gòu)如圖1所示,輸入變量(漁船設(shè)計水線長、型寬、設(shè)計排水量、方形系數(shù)、水線面系數(shù)和設(shè)計航速)X=(x1,x2,···,xn)T從輸入層經(jīng)過隱藏層,在輸出層得到網(wǎng)絡(luò)的響應(yīng)值(主機額定功率)Y=(y1,y2,···,yn)T。其中每一層網(wǎng)格節(jié)點相互獨立,且與相鄰層的節(jié)點連接。
單個神經(jīng)網(wǎng)絡(luò)節(jié)點的數(shù)據(jù)流程如圖2所示。
任意節(jié)點和相鄰層節(jié)點之間的權(quán)值系數(shù)為ω1,ω2,···,ωn,則輸入Σ可以表示為:
Σ=ω0x0+ω1x1+···+ωnxn
式(1)
式中,x0為初始偏差。
f(·)為節(jié)點激活函數(shù),在神經(jīng)網(wǎng)絡(luò)領(lǐng)域使用最多的是Tanh函數(shù)、Sigmod函數(shù)、Relu函數(shù)等。
節(jié)點的輸出值Ο可以表示為:
Ο=f(Σ)=f(ω0x0+ω1x1+···+ωnxn)
式(2)
神經(jīng)網(wǎng)絡(luò)模型經(jīng)過一次正向傳播訓(xùn)練得到的結(jié)果和實際結(jié)果往往相差很大。為了提高模型的估算精度,需要對模型進行不斷的迭代修正,即不斷的正向-反向傳播訓(xùn)練,直到模型訓(xùn)練結(jié)果和實際數(shù)值相差在設(shè)定范圍之內(nèi),或者迭代步數(shù)達到要求[17]。神經(jīng)網(wǎng)絡(luò)訓(xùn)練的數(shù)學(xué)原理[18]如下:
(1)初始化網(wǎng)絡(luò)。選定網(wǎng)絡(luò)形式,包括網(wǎng)絡(luò)層數(shù),每層網(wǎng)絡(luò)節(jié)點個數(shù)等。初始化節(jié)點之間的權(quán)值系數(shù)ωij,ωjk,設(shè)定網(wǎng)格學(xué)習(xí)速率和節(jié)點激活函數(shù)的類型。
(2)計算網(wǎng)絡(luò)輸出值Ok
式(4)
式中,Hj為隱藏層的輸出值。
(3)計算誤差ek
ek=Yk-Ok(k=1,2,···,m)
式(5)
(4)更新權(quán)值系數(shù)。根據(jù)誤差ek,采用梯度下降法得到權(quán)值系數(shù)ωij,ωjk的更新值。
式(6)
ωjk=ωjk+ηHjek
(j=1,2,···,l,k=1,2,···,m)
式(7)
式中,η為網(wǎng)絡(luò)學(xué)習(xí)速率。
(5)正向傳播。判斷網(wǎng)絡(luò)輸出結(jié)果是否滿足要求。如果滿足要求,則停止迭代,如果沒有滿足要求,則重復(fù)操作該流程。
本研究收集了近60艘拖網(wǎng)漁船參數(shù),包含近海拖網(wǎng)漁船、遠洋底拖網(wǎng)漁船和拖蝦漁船等,覆蓋浙江、江蘇、廣西和山東等省份。去除重復(fù)、無效和木質(zhì)拖網(wǎng)漁船的樣本點,保留數(shù)據(jù)齊全的42個樣本點作為研究對象。
國際上公認的最準確的主機功率預(yù)估辦法是:運用船舶水池試驗[19]方法測量得到船舶阻力,再換算得到主機功率。船體總阻力包括摩擦阻力、興波阻力及粘壓阻力[20],低速船的摩擦阻力占總阻力的70%~80%。根據(jù)雷諾定律和傅汝德定律,結(jié)合收集到的研究對象參數(shù),選取漁船設(shè)計水線長、型寬、設(shè)計排水量、方形系數(shù)、水線面系數(shù)和設(shè)計航速6個船舶參數(shù)作為神經(jīng)網(wǎng)絡(luò)模型的輸入變量,主機額定功率作為神經(jīng)網(wǎng)絡(luò)模型的輸出變量(目標變量)。樣本點各個變量的取值范圍如表1所示。
表1 漁船樣本點參數(shù)變化范圍Tab.1 Parameter range of fishing boat sample point
由于樣本點數(shù)據(jù)較少,本研究不單獨設(shè)置驗證集。在42個漁船樣本點中,隨機選取樣本點當中的5個樣本點作為測試集,用來檢驗?zāi)P偷男Ч皇S?7個樣本點作為神經(jīng)網(wǎng)絡(luò)預(yù)測模型的訓(xùn)練集,訓(xùn)練模型。測試集數(shù)據(jù)如表2所示。
表2 測試集樣本點參數(shù)表Tab.2 Parameter list of sample point in test set
本研究采用Python語言,借助Tensorflow模塊在Anaconda軟件中編程實現(xiàn)。網(wǎng)絡(luò)結(jié)構(gòu)包含1個輸入層,5個隱藏層,1個輸出層,每一層的節(jié)點個數(shù)為6-64-64-64-32-16-1。每層之間的激活函數(shù)為Sigmod函數(shù)。每層網(wǎng)絡(luò)均采用歸一化操作[21],以提高訓(xùn)練效率,保證較好的訓(xùn)練結(jié)果。取估算功率值和實際功率值之間的均方差作為損失函數(shù),網(wǎng)絡(luò)學(xué)習(xí)效率設(shè)置為0.000 1,設(shè)置最大迭代步數(shù)為30 000步。
經(jīng)過神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練,最終得到的模型在訓(xùn)練集漁船主機額定功率的絕對平均誤差為2.17%,最大絕對誤差為5.9%,70%樣本點的誤差小于3%,該神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練集上的表現(xiàn)較好。訓(xùn)練集樣本誤差分布如表3所示,每個訓(xùn)練集樣本點實際功率與估算功率的對比如圖3所示。
表3 訓(xùn)練集樣本點誤差分布Tab.3 Error distribution of sample points in training set
將測試集的5個樣本點數(shù)據(jù)帶入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型中,用來評估神經(jīng)網(wǎng)絡(luò)模型估算泛化能力。5個測試集樣本估算結(jié)果的絕對平均誤差為11.15%,最大絕對誤差為19.53%,最小絕對誤差為2.15%。各個測試集樣本點實際功率和估算功率誤差如表4和圖4所示。
表4 測試集樣本點估算功率與實際功率誤差Tab.4 Error between predicted power and actual power of sample points in test set
本模型基本可以根據(jù)設(shè)計水線長、型寬、設(shè)計排水量、方形系數(shù)、水線面系數(shù)及設(shè)計航速等6個船舶參數(shù)來估算主機功率,從結(jié)果來看,誤差均值約為11%,最大值約為20%,存在著一定的誤差,分析原因如下:
1)實際船舶主機額定功率的數(shù)值具有復(fù)雜性、非規(guī)律性和非連續(xù)性特征。復(fù)雜性指本次研究采用的樣本數(shù)據(jù)包含國內(nèi)南北海區(qū)多種漁船,船型參數(shù)接近而航行海域不一樣的船舶,其選用的主機功率根據(jù)不同主機品牌也會有差異,從而造成了主機功率估算的誤差;非規(guī)律性在于相當一部分漁船主機功率的選定都不僅僅基于船舶航行的經(jīng)濟性,還需兼顧功率指標及漁民使用需求,有些船型參數(shù)較大的船只選用的主機功率會偏小,而船型參數(shù)較小的船只選用的主機功率可能會偏大;非連續(xù)性指漁船主機額定功率的數(shù)值非連續(xù),主機額定功率估算問題具有多分類問題的性質(zhì),故用連續(xù)性回歸模型分析的誤差會偏大。
2)從模型對訓(xùn)練集樣本點和測試集樣本點的估算誤差結(jié)果來看,模型對訓(xùn)練集樣本點的估算精度較高,對測試集樣本點的估算精度較低,該神經(jīng)網(wǎng)絡(luò)模型存在過擬合現(xiàn)象。過擬合現(xiàn)象的出現(xiàn)可能和沒有設(shè)置驗證集數(shù)據(jù)、總體樣本點數(shù)據(jù)太少有關(guān)。
3)考慮到模型對訓(xùn)練集樣本點和測試集樣本點的估算誤差大小,且實際中漁船主機額定功率選定具有一定范圍性的特征,該神經(jīng)網(wǎng)絡(luò)模型的整體表現(xiàn)能夠滿足實際應(yīng)用的要求。
本研究從目前中國漁船存在的“大機小標”現(xiàn)象出發(fā),運用神經(jīng)網(wǎng)絡(luò)技術(shù),提出了一種根據(jù)船型參數(shù)估算漁船主機額定功率的方法,估算精度基本可以滿足甄別“大機小標”需要,能夠用來輔助判斷漁船是否存在“大機小標”、“機證不符”的問題。
接下來的工作將從如下3個方面進行拓展,以期取得更好的估算效果:1)與一般的神經(jīng)網(wǎng)絡(luò)回歸問題相比,漁船主機額定功率估算更具復(fù)雜性和非規(guī)律性,需要優(yōu)化神經(jīng)網(wǎng)絡(luò)算法,提高精確度;2)本研究由于樣本點數(shù)據(jù)偏少,后期研究需要提高樣本數(shù);3)本模型算法是基于樣本點對其他船主機功率進行預(yù)估,樣本點數(shù)據(jù)的準確性會直接影響預(yù)測模型的精準性,樣本點的遴選需要結(jié)合漁船的船機槳匹配設(shè)計計算及船模試驗進行數(shù)據(jù)驗證。