陸思宇,季 盛,文逸彥
(上海船舶運(yùn)輸科學(xué)研究所有限公司 航運(yùn)技術(shù)與安全國家重點(diǎn)實(shí)驗(yàn)室, 上海 200135)
近年來,隨著國際油價(jià)不斷升高、船舶營運(yùn)環(huán)境日益復(fù)雜和全球排放法規(guī)越來越嚴(yán)格,航運(yùn)業(yè)和造船業(yè)對智能船舶的需求不斷提升。智能船舶是當(dāng)前國家正在大力發(fā)展的領(lǐng)域,是船舶未來的一個(gè)重要發(fā)展方向,關(guān)系到航運(yùn)業(yè)和造船業(yè)的轉(zhuǎn)型升級[1]。柴油機(jī)作為智能船舶的動(dòng)力核心,需在運(yùn)行、維護(hù)和管理等方面實(shí)現(xiàn)智能化,從而使其整體性能進(jìn)入一個(gè)新的層級。
為分析船舶及其主機(jī)的性能變化,通常會(huì)對二者進(jìn)行建模和優(yōu)化,但在不同工況下主機(jī)的性能標(biāo)準(zhǔn)不盡相同,因此對主機(jī)工況進(jìn)行劃分具有重要意義。譚笑等[2]提出基于聚類算法,根據(jù)相對風(fēng)速和吃水對船舶航行工況進(jìn)行劃分;張惠玲等[3]提出一種基于k均值聚類和馬爾科夫鏈的汽車工況劃分方法;林建新等[4]提出一種基于混合約束自編碼器的運(yùn)用主成分分析方法和k-Means聚類算法的機(jī)動(dòng)車工況智能劃分方法;孔慶好等[5]提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的農(nóng)機(jī)工況識(shí)別方法;葛凌峰等[6]提出一種基于高斯混合聚類方法的電廠脫硫節(jié)能系統(tǒng)工況劃分方法。
當(dāng)前的工況劃分方法多是基于單層次單階段進(jìn)行工況劃分,這在實(shí)際應(yīng)用中,特別是在海量實(shí)船運(yùn)營數(shù)據(jù)分析中存在局限性。本文結(jié)合能反映船舶主機(jī)性能的直接因素和間接因素,提出一種基于k-Means算法的船舶主機(jī)工況二次劃分方法,為船舶及其主機(jī)的性能分析提供參考。
船舶智能化是指將信息通信、物聯(lián)網(wǎng)、數(shù)據(jù)分析和人工智能等技術(shù)應(yīng)用到船舶上,是智能船舶的關(guān)鍵切入點(diǎn),是無人船的初級階段。近年來,中國遠(yuǎn)洋海運(yùn)集團(tuán)有限公司積累了大量基于船端物聯(lián)網(wǎng)的船舶運(yùn)營數(shù)據(jù),例如船舶狀態(tài)數(shù)據(jù)、主機(jī)運(yùn)行數(shù)據(jù)和氣象數(shù)據(jù)等。通過這些數(shù)據(jù),可對船舶的航行情況、能效等進(jìn)行分析和預(yù)測,保證船舶安全高效運(yùn)營。該方法以船舶大數(shù)據(jù)為基礎(chǔ)進(jìn)行數(shù)據(jù)挖掘和分析,整體方案如下。
1) 對數(shù)據(jù)進(jìn)行清洗。從數(shù)據(jù)庫中獲取船舶航行時(shí)采集并儲(chǔ)存的數(shù)據(jù)。該方法需獲取船舶主機(jī)運(yùn)行數(shù)據(jù),包括第一階段工況劃分和第二階段工況劃分中的相關(guān)參數(shù),因此需進(jìn)行2次數(shù)據(jù)獲取。由于在船舶航行過程中,隨著對傳感器故障、設(shè)備啟停和船舶操控等方面的要求越來越嚴(yán)格,可能會(huì)出現(xiàn)數(shù)據(jù)缺失、產(chǎn)生奇異數(shù)據(jù)的情況,因此需對獲取的數(shù)據(jù)進(jìn)行缺失和異常方面的處理。
2) 基于聚類算法劃分主機(jī)工況。根據(jù)第一階段工況劃分所需的經(jīng)過處理的數(shù)據(jù),采用聚類算法對其進(jìn)行分析,若單階段的聚類結(jié)果出現(xiàn)數(shù)據(jù)過于集中的現(xiàn)象,則引入第二階段工況劃分,通過特征識(shí)別,選擇與第一階段不同的參數(shù),采用相同的方法得到第二階段工況劃分的結(jié)果。
3) 計(jì)算參數(shù)的特征值。選取平均值和標(biāo)準(zhǔn)差作為參數(shù)的特征值,其中:平均值能反映某個(gè)參數(shù)在不同取值范圍內(nèi)的一般情況,可用于比較某個(gè)參數(shù)在不同取值范圍內(nèi)的變化;標(biāo)準(zhǔn)差能度量一組數(shù)據(jù)的離散程度,標(biāo)準(zhǔn)差越小,意味著數(shù)據(jù)越接近平均值。[7]將平均值和標(biāo)準(zhǔn)差作為工況劃分中的評價(jià)指標(biāo)。
整個(gè)主機(jī)工況劃分方案的簡要原理和步驟見圖1。
圖1 主機(jī)工況劃分方案的簡要原理和步驟
k-Means算法是最常用的聚類算法,屬于無監(jiān)督的機(jī)器學(xué)習(xí)算法,其根據(jù)未知標(biāo)簽樣本的數(shù)據(jù)集內(nèi)部數(shù)據(jù)的特征將數(shù)據(jù)集劃分為多個(gè)不同的類,適用于主機(jī)工況劃分[8]這種相關(guān)參數(shù)數(shù)量和總體數(shù)據(jù)量龐大、敏感度分析不易的情況,具體算法描述如下:
1) 選擇合適的k值,輸入樣本集為D={x1,x2,…,xm},輸出簇為C={C1,C2,…,Ck}。
2) 在D中隨機(jī)選擇k個(gè)樣本作為初始的k個(gè)質(zhì)心向量μ1,μ2,…,μk。
3) 計(jì)算樣本xi與各質(zhì)心向量μj(j=1,2,…,k)之間的距離,有
(1)
4) 重新計(jì)算Cj中的所有樣本點(diǎn)的質(zhì)心,有
(2)
5) 若k個(gè)質(zhì)心向量都沒有發(fā)生變化,則輸出簇C={C1,C2,…,Ck};若k個(gè)質(zhì)心向量有變化,則重復(fù)上述步驟,直到收斂。
船舶航行過程中的主機(jī)工況本來沒有明確的分類,但受海況、船舶載況和機(jī)槳匹配等多種因素的影響,情況變得較為復(fù)雜。k-Means算法是典型的基于距離的聚類算法,其采用距離作為相似性評價(jià)指標(biāo),認(rèn)為簇是由距離相互靠近的對象組成的,因此將得到緊湊且獨(dú)立的簇作為最終目標(biāo)[9]。對于該方法中的主機(jī)工況劃分模型來說,首先要將每個(gè)階段選取的2個(gè)參數(shù)轉(zhuǎn)化為二維向量,而質(zhì)心μj為這一類樣本的中心點(diǎn)。接著,對于一組二維向量,通過歐式距離公式計(jì)算其與樣本中心點(diǎn)的距離,將距離μj最近的點(diǎn)作為工況劃分輸出的Cj。以此類推,對各二維向量進(jìn)行計(jì)算,重復(fù)迭代,直至質(zhì)心μj不再發(fā)生變化。
k-Means算法的優(yōu)點(diǎn)[10]如下:
1) 原理簡單,容易實(shí)現(xiàn),收斂速度快;
2) 在同類算法中,聚類效果相對較好;
3) 可解釋性較強(qiáng);
4) 對時(shí)間的復(fù)雜度要求較低;
5) 在處理大數(shù)據(jù)集方面具有較高的效率,時(shí)間復(fù)雜度的變化接近線性,適合挖掘大規(guī)模數(shù)據(jù)集。
因此,采用k-Means算法對船舶主機(jī)運(yùn)行數(shù)據(jù)進(jìn)行挖掘,實(shí)現(xiàn)工況劃分,分析不同工況下主機(jī)的各項(xiàng)運(yùn)行指標(biāo),判斷船舶及其主機(jī)性能的變化情況,進(jìn)而根據(jù)船舶總體和主機(jī)內(nèi)部各運(yùn)行參數(shù)的變化對船舶及其主機(jī)性能做出定量化分析。
根據(jù)上述主機(jī)工況劃分方案和算法原理,以某大型干散貨船為研究對象,基于該船2021年的營運(yùn)數(shù)據(jù)進(jìn)行主機(jī)工況劃分。
根據(jù)先驗(yàn)知識(shí),選擇與船舶航行時(shí)的主機(jī)工況最直接關(guān)聯(lián)的主機(jī)轉(zhuǎn)速和功率作為第一階段工況劃分參數(shù)。影響船舶及其主機(jī)性能的因素除了船舶吃水、船舶污底和氣象條件等外部因素之外,大部分都是主機(jī)狀態(tài)方面的因素[11]。為分析主機(jī)的性能,通常會(huì)對影響主機(jī)性能的指標(biāo)進(jìn)行分析,其中主機(jī)的轉(zhuǎn)速和功率能清晰地體現(xiàn)主機(jī)的性能和運(yùn)轉(zhuǎn)情況[12],基于這2個(gè)參數(shù)進(jìn)行第一階段的主機(jī)工況劃分,劃分的結(jié)果能合理地體現(xiàn)主機(jī)在不同工況下的性能變化。該階段選取的2個(gè)參數(shù)能直接體現(xiàn)主機(jī)的性能。
獲取該船2021年的主機(jī)轉(zhuǎn)速和功率數(shù)據(jù)(每小時(shí)測量的數(shù)據(jù)),并繪制主機(jī)轉(zhuǎn)速與功率散點(diǎn)圖,見圖2。由圖2可知,數(shù)據(jù)散點(diǎn)并沒有呈現(xiàn)均勻分布的狀態(tài),而是呈現(xiàn)出總體分散、大多數(shù)點(diǎn)集中在轉(zhuǎn)速為50~65 r/min范圍內(nèi)的狀態(tài)。因此,將轉(zhuǎn)速為50~65 r/min范圍內(nèi)的數(shù)據(jù)作為聚類分析的對象,經(jīng)過數(shù)據(jù)篩選和清洗的該范圍內(nèi)的主機(jī)轉(zhuǎn)速與功率散點(diǎn)圖見圖3。
圖2 原始的主機(jī)轉(zhuǎn)速與功率散點(diǎn)圖
圖3 經(jīng)過數(shù)據(jù)篩選和清洗的主機(jī)轉(zhuǎn)速與功率散點(diǎn)圖
由圖3可知,散點(diǎn)主要分布在圖中4個(gè)區(qū)域,主機(jī)常在這些區(qū)域運(yùn)轉(zhuǎn)。為得到主機(jī)常用工況,區(qū)分這4個(gè)區(qū)域內(nèi)的數(shù)據(jù),確定聚類數(shù)k=4,將其代入k-Means算法中進(jìn)行計(jì)算,結(jié)果見圖4。
圖5為第一階段工況劃分中各工況的數(shù)據(jù)量柱狀圖。由圖5可知,工況2的數(shù)據(jù)量最大,分布范圍較廣,實(shí)際應(yīng)用中效果不佳,因此第二階段的主機(jī)工況劃分將集中于工況2。
圖4 第一階段工況劃分聚類結(jié)果
圖5 第一階段工況劃分中各工況的數(shù)據(jù)量柱狀圖
由于第一階段工況劃分是基于主機(jī)的轉(zhuǎn)速和功率實(shí)現(xiàn)的,若第二階段仍采用這2個(gè)參數(shù)劃分工況,則所得結(jié)果缺乏橫向?qū)Ρ?,且難以應(yīng)對主機(jī)運(yùn)行的復(fù)雜性。在船舶航行期間,影響主機(jī)運(yùn)轉(zhuǎn)效率的2個(gè)環(huán)節(jié)是做功和冷卻。對于大型二沖程低速機(jī)而言,掃氣箱具有掃排氣作用,其溫度發(fā)生變化意味著主機(jī)的運(yùn)行狀況發(fā)生變化[13]。船舶設(shè)備一般采用海水冷卻[14],船舶在航行期間所處海域是不斷發(fā)生變化的,故海水溫度也是不斷發(fā)生變化的,當(dāng)用溫度發(fā)生變化的海水作為冷卻介質(zhì)對設(shè)備進(jìn)行冷卻時(shí),會(huì)對其運(yùn)行狀況造成一定的影響。因此,該階段選取海水溫度和掃氣箱溫度作為工況劃分的參數(shù),這2個(gè)參數(shù)能間接體現(xiàn)主機(jī)的性能。
由于第二階段工況劃分主要是針對工況2進(jìn)行的,因此在獲取數(shù)據(jù)時(shí)應(yīng)選擇第一階段參數(shù)取值范圍內(nèi)的海水溫度和掃氣箱溫度,經(jīng)過數(shù)據(jù)篩選和清洗之后,得出海水溫度與掃氣箱溫度散點(diǎn)圖,見圖6。
圖6 第二階段工況劃分中的海水溫度與掃氣箱溫度散點(diǎn)圖
關(guān)于第二階段聚類數(shù)k的設(shè)定:若取k=2,則在第二階段僅能得出2個(gè)工況,且這2個(gè)工況的參數(shù)取值范圍相差較大,效果并不理想;若取k=4,則得到的4個(gè)工況的參數(shù)取值范圍平均值波動(dòng)較大,不符合需求。最終確定聚類數(shù)k=3,將其代入k-Means算法中進(jìn)行計(jì)算,結(jié)果見圖7。
圖7 第二階段工況劃分聚類結(jié)果
第二階段工況劃分中各工況的數(shù)據(jù)量柱狀圖見圖8。由圖8可知,3個(gè)工況的平均值之差相對穩(wěn)定,符合需求。根據(jù)以上工作得出的工況1、工況2、工況3、工況4、工況2-1、工況2-2和工況2-3,整合出最終的工況劃分結(jié)果。
圖8 第二階段工況劃分中各工況的數(shù)據(jù)量柱狀圖
根據(jù)以上聚類分析結(jié)果得出每階段工況劃分的各參數(shù)取值范圍和不同工況下各參數(shù)的平均值和標(biāo)準(zhǔn)差,結(jié)果如下。
第一階段工況劃分中不同工況下各參數(shù)的取值范圍和特征值見表1。
表1 第一階段工況劃分中不同工況下各參數(shù)的取值范圍和特征值
第二階段工況劃分中不同工況下各參數(shù)的取值范圍和特征值見表2,其中“數(shù)據(jù)占比”為所占工況2的比例。
表2 第二階段工況劃分中不同工況下各參數(shù)的取值范圍和特征值
1) 由第一階段工況劃分結(jié)果可知,從工況1到工況4,平均轉(zhuǎn)速和平均功率是不斷增大的。標(biāo)準(zhǔn)差反映了一組數(shù)據(jù)的離散程度,工況2的數(shù)據(jù)占比最大,工況1的數(shù)據(jù)占比最小,在這2組工況的參數(shù)取值范圍上下限之差相同的情況下,由于工況2的數(shù)據(jù)占比遠(yuǎn)高于工況1,即工況2的數(shù)據(jù)集中度高于工況1,導(dǎo)致其轉(zhuǎn)速和功率的標(biāo)準(zhǔn)差都小于工況1。工況3的數(shù)據(jù)占比略高于工況4,在數(shù)據(jù)占比和參數(shù)取值范圍差別不大的情況下,工況3的轉(zhuǎn)速標(biāo)準(zhǔn)差小于工況4,功率標(biāo)準(zhǔn)差大于工況4。但是,工況3和工況4的轉(zhuǎn)速和功率標(biāo)準(zhǔn)差都大于工況2,小于工況1。
2) 由第二階段工況劃分結(jié)果可知,從工況2-1到工況2-3,平均海水溫度不斷上升,平均掃氣箱溫度變化不大,但總體呈上升趨勢。從工況2-1到工況2-3,海水溫度的標(biāo)準(zhǔn)差隨著數(shù)據(jù)占比的提高而不斷減小,掃氣箱溫度的標(biāo)準(zhǔn)差并未出現(xiàn)這樣的一致性,說明工況2-3中數(shù)據(jù)量的增加并不能掩蓋其數(shù)據(jù)的分散性。
根據(jù)上述兩階段工況劃分結(jié)果,通過整合得出該船最終的主機(jī)工況劃分結(jié)果和各工況下的參數(shù)取值范圍,主要是以下6個(gè)工況:
1) 工況A,即符合工況1的各參數(shù)取值范圍;
2) 工況B,即符合工況2的各參數(shù)取值范圍和工況2-1的各參數(shù)取值范圍;
3) 工況C,即符合工況2的各參數(shù)范圍和工況2-2的各參數(shù)取值范圍;
4) 工況D,即符合工況2的各參數(shù)取值范圍和子工況2-3的各參數(shù)取值范圍;
5) 工況E,即符合工況3的各參數(shù)取值范圍;
6) 工況F,即符合工況4的各參數(shù)取值范圍。
本文采用的是基于k-Means算法的工況劃分方法,由于該算法的時(shí)間復(fù)雜度和空間復(fù)雜度較低,因此其在大型數(shù)據(jù)集中應(yīng)用較為簡單高效。在未來的研究中,將考慮加入風(fēng)浪對主機(jī)性能的影響,并通過自適應(yīng)調(diào)整聚類數(shù)k實(shí)現(xiàn)工況自動(dòng)劃分。
本文提出了一種基于k-Means算法的主機(jī)工況劃分方法,采用兩階段多參數(shù)的工況劃分方法,通過對實(shí)船航行過程中主機(jī)的各參數(shù)進(jìn)行分析處理,提高主機(jī)工況劃分的精準(zhǔn)度,最終得出實(shí)船基于轉(zhuǎn)速、功率、海水溫度和掃氣箱溫度的工況劃分結(jié)果及各工況下各參數(shù)的特征值。該方法沒有考慮風(fēng)浪對船舶阻力的影響,同時(shí)因算法本身存在缺陷,聚類結(jié)果往往不是全局最優(yōu)解,而是收斂于局部最優(yōu)解[15]。在后續(xù)研究中,將考慮基于特征識(shí)別進(jìn)行多階的工況劃分迭代。
總體而言,該算法的原理簡單,能真實(shí)有效地反饋主機(jī)運(yùn)行時(shí)所處的工況,為分析和優(yōu)化船舶及其主機(jī)的性能提供參考。后續(xù)可對工況作更詳細(xì)的分析,比如在相同工況下,通過分析主機(jī)溫度和功率的變化趨勢評估主機(jī)的性能。此外,還可檢查主機(jī)在不同工作環(huán)境下可承受的溫度極限,對溫度過高或過低的情況進(jìn)行預(yù)警,并開發(fā)輔助指導(dǎo)程序?yàn)椴僮魅藛T提供指導(dǎo),盡可能地防止故障發(fā)生。