陳愛國 葉家瑋 蘇 曙
(廣州航海高等??茖W校輪機系1) 廣州 510725) (華南理工大學土木與交通學院2) 廣州 510640)
船舶 的計算,由于問題的復(fù)雜性,目前還沒有成熟 理論的公式,一般在船舶線型確定時可通過 實驗來確定,但在設(shè)計的初期或并不準備作 實驗時,只能進行阻力近似計算.阻力近似計 常用方法一般都是通過查閱大量圖表的方式來進行計算,工作量大且精度低.
Lippm ann[1],Funahashi[2],Hornik[3]等人對神經(jīng)網(wǎng)絡(luò)的研究已表明:3層以上的前向神經(jīng)網(wǎng)絡(luò)能以任意精度逼近任何非線性性函數(shù),因此采用多層前向神經(jīng)網(wǎng)絡(luò)來逼近以船型參數(shù)和速度流體參數(shù)為自變量的船舶阻力函數(shù)在理論上是可行的.為此本文采用系列60船模實驗數(shù)據(jù)作為樣本,由于作為前向神經(jīng)網(wǎng)絡(luò)核心的誤差反傳BP網(wǎng)絡(luò)在函數(shù)逼近上具有優(yōu)越的性能,本文力圖通過實驗建立出性能卓越的3層BP神經(jīng)網(wǎng)絡(luò)船舶阻力計算系統(tǒng).
在系列60的計算中,平板摩擦阻力系數(shù)C f采用桑海公式計算,粗糙度補貼系數(shù)取0.4×10-3,其剩余阻力由船模試驗確定,剩余阻力的輸入數(shù)據(jù)包括3個船型參數(shù)和1個速度參數(shù)[4-5].船型參數(shù)為:方形系數(shù)C b,船長型寬比L/B,型寬吃水比B/H.輸入的速度參數(shù)有2種,分別對應(yīng)不同的輸出參數(shù):速長比對應(yīng)的輸出為每噸排水量的剩余阻力系數(shù)C R;弗氏速率系數(shù)對應(yīng)的輸出為弗氏阻力系數(shù),由于后者在船舶初步設(shè)計時對船型的比較非常有用,其應(yīng)用更受推薦,因此本文輸入的速度參數(shù)采用弗氏速率系數(shù)對應(yīng)地輸出采用弗氏阻力系數(shù).
系列60共用45個船模,共有數(shù)據(jù)838組.為檢驗網(wǎng)絡(luò)的泛化能力,隨機選取全部數(shù)據(jù)組中的629組作為訓練數(shù)據(jù),另209組作為檢驗數(shù)據(jù).采用訓練與檢驗神經(jīng)網(wǎng)絡(luò)時輸出與目標的相關(guān)系數(shù)、回歸直線、最大相對誤差、平均相對誤差中的差值來衡量網(wǎng)絡(luò)的性能.
由上面的分析可知該BP神經(jīng)網(wǎng)絡(luò)的輸入層為4個神經(jīng)元,輸出層為1個神經(jīng)元,設(shè)隱層神經(jīng)元數(shù)為R,則其結(jié)構(gòu)如圖1所示.
為選取合適的隱層神經(jīng)元數(shù)R,傳遞函數(shù)g1(·),g2(·),性能函數(shù)E(·)和訓練函數(shù),分別對之進行試驗.
圖1 船舶阻力計算3層BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
為確定該神經(jīng)網(wǎng)絡(luò)的訓練函數(shù),經(jīng)初步試驗決定采用15個神經(jīng)元的隱層,隱層傳遞函數(shù)g1(·)采用 tansig,輸出層傳遞函數(shù)g2(·)采用purelin,最大訓練次數(shù)采用1 000,由于數(shù)據(jù)量較大,采用批處量訓練方式,用網(wǎng)絡(luò)輸出數(shù)據(jù)與目標的相關(guān)系數(shù)(在多次訓練采用較好的相關(guān)性數(shù)據(jù))來衡量訓練結(jié)果,從實驗結(jié)果看,普通訓練函數(shù)traingd和 traingdm收斂性差,而且增加最大訓練次數(shù),也不能提高相關(guān)系數(shù);快速訓練函數(shù)中,有彈回的BP算法trainrp比自適應(yīng)修改學習率算法traingda和traingdx要好;其他的算法都可達到較高的計算精度,尤其是 traincgb,trainlm,trainbr.最好的是 trainbr,其訓練的相關(guān)系數(shù)和檢驗的相關(guān)系數(shù)不但最大,而且兩者相差最小,這是由于應(yīng)用其他訓練函數(shù)時,網(wǎng)絡(luò)的性能函數(shù)E(·)是采用m se,如式(1),其中 N訓練樣本數(shù),而trainbr作為規(guī)則化的調(diào)整方法是采用m sereg作為性能函數(shù),如式(2)和式(3)所示,其范化能力更好.因此本試驗的神經(jīng)網(wǎng)絡(luò)選用trainbr規(guī)則化的訓練方法,對應(yīng)地采用m sereg作為性能函數(shù).
為確定該神經(jīng)網(wǎng)絡(luò)隱層和輸出層的傳遞函數(shù),仍采用15個神經(jīng)元的隱層,最大訓練次數(shù)采用1 000,采用trainbr訓練函數(shù),用網(wǎng)絡(luò)輸出數(shù)據(jù)與目標的相關(guān)系數(shù)(在多次訓練中采用較好的相關(guān)性數(shù)據(jù))來衡量訓練結(jié)果.對BP網(wǎng)絡(luò)應(yīng)使用可微的函數(shù)作傳遞函數(shù),對本項目不適合使用satlin,satlins,tribas,hard lim,hard lims等帶水平線的非光順函數(shù)[6],因此本實驗對常用的 tansig,purelin,logsig進行組合實驗,并對采用 radbas進行了2組實驗,實驗結(jié)果如表1.
表1 傳遞函數(shù)實驗結(jié)果
從實驗結(jié)果可以分析得出,輸出層采用logsig或tansig相關(guān)系數(shù)不高;隱層的傳遞函數(shù)采用purelin不合適,網(wǎng)絡(luò)輸出數(shù)據(jù)與目標的相關(guān)系數(shù)最小,對于使用purelin,purelin傳遞函數(shù),由于是純線性變換對非線性系統(tǒng)逼近能力差;而據(jù)實驗結(jié)果,隱層傳遞函數(shù)采用tansig或logsig,輸出層傳遞函數(shù)采用purelin可以很好地達到函數(shù)逼近,而且輸出數(shù)據(jù)與目標數(shù)據(jù)的回歸曲線與理想回歸曲線幾乎重合,對radbas的實驗表明,對本項目,該函數(shù)同樣不適于作輸出層傳遞函數(shù),當進行 radbas,purelin組合時也可達到較好的結(jié)果,但檢驗結(jié)果相關(guān)性比前兩者稍差,從進一步的實驗結(jié)果看,采用 tansig、purelin作傳遞函數(shù)比采用logsig,purelin要稍好一些.
由上面試驗結(jié)果,對該神經(jīng)網(wǎng)絡(luò)隱層神經(jīng)元數(shù)進行實驗,隱層傳遞函數(shù)采用tansig,輸出層傳遞函數(shù)采用purelin,最大訓練次數(shù)采用1 000,采用trainbr訓練函數(shù),用網(wǎng)絡(luò)輸出數(shù)據(jù)與目標的相關(guān)系數(shù)和最大相對誤差來衡量訓練結(jié)果,編制程序,得到相關(guān)系數(shù)、最大相對誤差、平均相對誤差隨神經(jīng)元數(shù)的變化曲線如圖2所示.
由圖2可知,隨神經(jīng)元數(shù)的增加,相關(guān)系數(shù)越來越大、最大相對誤和平均相對誤差越來越小,但當神經(jīng)元數(shù)達到15以后,變化很慢了.
圖2 相關(guān)系數(shù)最大相對誤差和平均相對誤差隨隱層神經(jīng)元數(shù)變化曲線
從上述實驗可知,增加隱層神經(jīng)元數(shù)可提高神經(jīng)網(wǎng)絡(luò)的性能,但由于檢驗數(shù)據(jù)與訓練數(shù)據(jù)一樣都來源于原始實驗數(shù)據(jù),對B/H僅有2.5,3.0,3.5 3個數(shù)值,對C b,L/B也只有有限的幾個取值,當隱層神經(jīng)元數(shù)過多時,將導(dǎo)致對某一參數(shù)在有限的幾個取值附近具有高的精度,但在其他值則有很大的波動,這與實際情形不符.如針對23隱層神經(jīng)元的神經(jīng)網(wǎng)絡(luò),對C b=0.65,船長型寬比L/B=7.25,弗氏速率系數(shù)○k=1.4,弗氏阻力系數(shù)○C對B/H的變化曲線如圖3所示,顯然,此時曲線失真.同樣地對15隱層神經(jīng)元的神經(jīng)網(wǎng)絡(luò)繪制的曲線如圖4所示,則其插值曲線是較平順的.
圖3 用23隱層神經(jīng)元神經(jīng)網(wǎng)絡(luò)繪制的○k對B/H的變化曲線
圖4 用15隱層神經(jīng)元神經(jīng)網(wǎng)絡(luò)繪制的○k對B/H的變化曲線
因此,為了提高網(wǎng)絡(luò)的逼近能力和降低相對誤差,對輸入樣本采用預(yù)先數(shù)據(jù)處理的方式,將輸入向量和目標向量的值量化到[-1,+1]內(nèi),進一步訓練結(jié)果如表2所列.
表2 預(yù)先數(shù)據(jù)處理訓練結(jié)果
分別應(yīng)用預(yù)先數(shù)據(jù)處理訓練所得的神經(jīng)網(wǎng)絡(luò),進行繪圖,根據(jù)插值曲線繪圖對比,選用19神經(jīng)元的最大相對誤差0.028 9的神經(jīng)網(wǎng)絡(luò),其回歸曲線如圖5所示,可見回歸直線與理想回歸直線幾乎重合,而通過對最大的相對誤差的樣本分析發(fā)現(xiàn),相對誤差大的都是○k取值最大或最小的樣本,這與系列60圖譜是一致的,因此在實際應(yīng)用范圍內(nèi)是有更高計算精度的,可以滿足船舶設(shè)計的需要.
圖5 隱層19神經(jīng)元最佳網(wǎng)絡(luò)回歸曲線
由于,訓練和檢驗樣本都是用的原始實驗數(shù)據(jù),對B/H僅有2.5,3.0,3.5 3個數(shù)值,為驗證該神經(jīng)網(wǎng)絡(luò)的泛化能力,對相同的Cb,L/B和○k,在B/H為2.5,3.0,3.5的數(shù)值之間進行線性插值,添加了B/H為2.66,2.84,3.16,3.34四組數(shù)值,插值后數(shù)據(jù)樣本由838組擴充到1 869組,對該神經(jīng)網(wǎng)絡(luò)進行模擬,得到最大相對誤差為0.031 63,平均相對誤差為:0.007 246,輸出和目標的回歸直線為A=(1.000 3)T+(-0.001 513 4),可見其泛化能力是很好的.
該船舶阻力神經(jīng)網(wǎng)絡(luò)可以方便快速地計算弗氏阻力系數(shù),如任意輸入方形系數(shù)Cb=0.70,船長型寬比L/B=7.8,型寬吃水比B/H=3.0,弗氏速率系數(shù)=1.4,對網(wǎng)絡(luò)進行模擬得到對應(yīng)的輸出弗氏阻力系數(shù)=0.696 1.經(jīng)在圖譜上查閱,其值接近0.7,與其結(jié)果一致.但顯然對于圖譜不能直接查找的數(shù)值,應(yīng)用該船舶阻力神經(jīng)網(wǎng)絡(luò)更方便.
顯然通過該神經(jīng)網(wǎng)絡(luò)能很方便地作出各種阻力變化曲線,可用于分析阻力隨船型參數(shù)的變化情況.例如,在系列60船模實驗中,由于對相同的一組Cb,B/H船長型寬比L/B只有3個變化的數(shù)值,弗氏阻力系數(shù)與L/B的變化關(guān)系不能很清楚地表達出來,但通過該19隱層神經(jīng)元的船舶阻力神經(jīng)網(wǎng)絡(luò),則可以方便地繪制其變化曲線,如B/H=2.5,=1.7,在不同 C b時,弗氏阻力系數(shù)船長型寬比L/B的變化曲線如圖6所示,從該圖可以清楚地分析出系列60船舶最低剩余阻力時的最佳L/B,及該最佳L/B隨C b的增大而變小的情況.用該神經(jīng)網(wǎng)絡(luò)繪制的其他性能曲線如圖7所示,顯然該神經(jīng)網(wǎng)絡(luò)拓展了系列60的應(yīng)用范圍,并可應(yīng)用于一定約束條件下的船型優(yōu)化.
圖6 隱層19神經(jīng)元網(wǎng)絡(luò)與L/B的變化曲線
圖7 隱層19神經(jīng)元網(wǎng)絡(luò)繪制的對○k和L/B的變化曲線
船機槳匹配優(yōu)化設(shè)計時,不論是在初步匹配設(shè)計中,還是最終匹配設(shè)計中,都要計算船舶阻力,作出船舶有效功率隨航速的變化曲線,該船舶阻力神經(jīng)網(wǎng)絡(luò)系統(tǒng)的研制為船機槳匹配優(yōu)化設(shè)計的計算機化、智能化提供了重要的支撐.
1)利用船模原始實驗數(shù)據(jù)通過預(yù)先數(shù)據(jù)處理的方式,采用tansig和purelin傳遞函數(shù),以及trainbr訓練函數(shù)和合適的隱層神經(jīng)元數(shù),可以訓練出高精度的船舶阻力計算BP神經(jīng)網(wǎng)絡(luò)系統(tǒng).
2)該神經(jīng)網(wǎng)絡(luò)系統(tǒng)在船舶阻力計算研究、船型優(yōu)化和船機槳優(yōu)化匹配設(shè)計上比傳統(tǒng)方法具有無可比擬的優(yōu)勢.
3)基于神經(jīng)網(wǎng)絡(luò)能以任意精度逼近任何非線性函數(shù)的能力,抽象出更有代表性的船型參數(shù)、選用合適的速度參數(shù),利用不同的船模系列數(shù)據(jù),甚至是高速艦船的阻力數(shù)據(jù),設(shè)計出具有廣泛適應(yīng)性的船舶阻力計算神經(jīng)網(wǎng)絡(luò)系統(tǒng)也將是現(xiàn)實可行的.
[1] Lippmamm R P.Introduction of Computing with Neural Nets[J].IEEE ASSP M agazine,1987,4:4-22.
[2]Funahashi K I.On the approximate realization o f continuous mappings by neura l netw orks[J].Neural Networks,1989,2(3):183-192.
[3]林 盾,陳 俐.BP神經(jīng)網(wǎng)絡(luò)在模擬非線性系統(tǒng)輸出中的應(yīng)用[J].武漢理工大學學報:交通科學與工程版,2003,27(5):120-123.
[4]Chen Aiguo,Ye Jiaw e.Research on the genetic neural netw ork for the computation of ship resistance[C].2009 International Conference on Computation Intelligence and Natural Computing.Wuhan,China,2009.
[5]Chen Aiguo,Ye Jiawe.Research on four layer back propagation neural netw ork for the computation of ship resistance[C].2009 IEEE International Con ference on M echatronics and Automation.Changchun,China,2009.
[6]Zhang Ling,Zhang Xianda.M IMO channel estimation and equalization using three-layer neural networks w ith feedback[J].Tsinghua Science And Technology.2007,12(6):16-19.