李 舒,張偉業(yè),汪 坤,段照斌
(1.商飛軟件有限公司,四川 成都 610000; 2.中國(guó)民航大學(xué)工程技術(shù)訓(xùn)練中心,天津 300300)
隨著民用航空二氧化碳排放管理工作的推進(jìn),審查方開(kāi)展碳排放核查迫在眉睫[1]。民用航空的碳排放主要來(lái)源于燃油消耗[2],而航空公司提交的碳排放報(bào)告中燃油消耗數(shù)據(jù)常有缺失,數(shù)據(jù)的缺失會(huì)對(duì)核查結(jié)果產(chǎn)生重要影響,故研究缺失數(shù)據(jù)的估計(jì)具有重要意義。
對(duì)于缺失數(shù)據(jù)估計(jì)的研究已非常成熟,其中以樸素貝葉斯(NB)和動(dòng)態(tài)時(shí)間規(guī)整(DTW)的研究最為深入。文獻(xiàn)[3]使用NB方法對(duì)乘客缺少的屬性進(jìn)行估計(jì);文獻(xiàn)[4]在使用NB方法進(jìn)行概率區(qū)間的預(yù)測(cè);文獻(xiàn)[5]使用改進(jìn)的NB方法進(jìn)行數(shù)據(jù)關(guān)聯(lián)性估計(jì)填充;文獻(xiàn)[6]使用NB方法對(duì)感知數(shù)據(jù)丟失進(jìn)行了估計(jì);文獻(xiàn)[7]使用NB方法對(duì)船舶碰撞事故缺失數(shù)據(jù)進(jìn)行插補(bǔ);文獻(xiàn)[8]使用NB方法對(duì)項(xiàng)目?jī)?nèi)缺陷預(yù)測(cè)的歷史數(shù)據(jù)進(jìn)行評(píng)估,但上述方法應(yīng)用對(duì)象均屬于不連續(xù)數(shù)據(jù),不適用于連續(xù)數(shù)據(jù)和不連續(xù)數(shù)據(jù)的混合數(shù)據(jù)集,且少見(jiàn)于民航領(lǐng)域相關(guān)數(shù)據(jù)缺失的填充。文獻(xiàn)[9]使用NB方法進(jìn)行故障數(shù)據(jù)的填充;文獻(xiàn)[10]基于NB的改進(jìn)方法對(duì)數(shù)據(jù)缺失進(jìn)行估計(jì)。文獻(xiàn)[11]使用DTW方法評(píng)估復(fù)雜飛行動(dòng)作以提高評(píng)估效率;文獻(xiàn)[12]使用DTW分析了水文基于時(shí)間序列數(shù)據(jù)的相似性;文獻(xiàn)[13]使用DTW方法對(duì)缺失的路段數(shù)據(jù)進(jìn)行估計(jì);文獻(xiàn)[14]使用DTW擴(kuò)增退化運(yùn)動(dòng)加速度參數(shù);文獻(xiàn)[15]基于DTW提出一種連續(xù)時(shí)間序列數(shù)據(jù)填充方法;文獻(xiàn)[16]在工程預(yù)測(cè)領(lǐng)域使用DTW方法將不同運(yùn)行條件或系統(tǒng)獲得的數(shù)據(jù)擴(kuò)充到當(dāng)前系統(tǒng)中進(jìn)行填充,上述方法應(yīng)用對(duì)象均屬于連續(xù)數(shù)據(jù),亦少見(jiàn)于民航領(lǐng)域相關(guān)數(shù)據(jù)缺失的填充,而傳統(tǒng)的飛機(jī)油耗估計(jì)[17-20]均使用深度學(xué)習(xí)算法進(jìn)行數(shù)據(jù)的擬合與估計(jì),與本課題中數(shù)據(jù)缺失估計(jì)應(yīng)用方向不同。故本文提出一種民航領(lǐng)域的NB與DTW組合估計(jì)方法。文獻(xiàn)[21]中對(duì)于偶然數(shù)據(jù)使用NB方法進(jìn)行估計(jì),對(duì)于多發(fā)性數(shù)據(jù)使用DTW進(jìn)行估計(jì),使用了NB與DTW組合估計(jì)方法,一方面不屬于民航領(lǐng)域應(yīng)用,另一方面雖減少了估計(jì)誤差但數(shù)據(jù)分類效果欠佳,而K-medoids聚類分析具有良好的聚類效果[22]。
綜上所述,本文在航空數(shù)據(jù)應(yīng)用領(lǐng)域提出一種基于聚類分析的NB與DTW組合估計(jì)方法,首先將真實(shí)數(shù)據(jù)中的缺失采用K-mendoids聚類算法分類為單個(gè)不連續(xù)缺失和連續(xù)缺失2種類型;然后利用數(shù)據(jù)時(shí)空的相似性針對(duì)這2種類型的特點(diǎn),分別采用NB和DTW的方法對(duì)航班缺失數(shù)據(jù)進(jìn)行估計(jì);最后利用均方根誤差作為該方法的評(píng)價(jià)指標(biāo)。
1)隨機(jī)選取K個(gè)數(shù)據(jù)對(duì)象作為初始聚類中心。
2)計(jì)算剩余對(duì)象到各聚類中心的距離,并分配至距離最近的簇中。
3)選擇簇內(nèi)距離和最小的數(shù)據(jù)對(duì)象為作為新的中心點(diǎn)。
4)重復(fù)步驟2~3直至聚類誤差和最小不再發(fā)生變化。
采用NB方法計(jì)算單個(gè)不連續(xù)缺失數(shù)據(jù)時(shí)具有快速簡(jiǎn)單的優(yōu)點(diǎn),該方法利用歷史同一時(shí)間點(diǎn)和上一時(shí)間點(diǎn)的油耗數(shù)據(jù)來(lái)估計(jì)當(dāng)前缺失數(shù)據(jù),將數(shù)據(jù)簇標(biāo)記為K個(gè)油耗組,將油耗數(shù)據(jù)轉(zhuǎn)化為K個(gè)油耗離散值。用同一航班同一日期歷史油耗cH和同一航班上一日期油耗cS作為輸入?yún)?shù),估計(jì)航班當(dāng)前日期的油耗c,估計(jì)公式[26]如下:
(1)
其中,P(c)為該航班某一日期的油耗估計(jì)值為c的概率;P(c|cH,cS)為該航班歷史油耗為cH且上一日期油耗為cS的條件下該航班當(dāng)前日期油耗為c的概率;P(cH,cS|c)為該航班油耗為c的條件下同一航班歷史油耗為cH且上一日期油耗為cS的概率。由于cH和cS相互獨(dú)立,式中∑P(cH,cS|c)P(c)對(duì)所有的c都相同,只需比較式(1)中分子的大小,因此估計(jì)公式可簡(jiǎn)化為:
(2)
其中,P(cH|c)為該航班油耗為c的條件下同一航班歷史油耗為cH的概率;P(cS|c)該航班油耗為c的條件下同一航班上一日期油耗為cS的概率。具體計(jì)算公式[27]如下:
(3)
其中,N為3年內(nèi)的所有油耗數(shù)據(jù)量;I(ci=c)為ci=c的布爾值,若ci=c則I(ci=c)=1,否則為0;I(cs,ci=c)為cS統(tǒng)計(jì)量的布爾值,若ci=c時(shí)存在cS則I(cs,ci=c)=1,否則為0。
(4)
其中,N為1年內(nèi)的所有日期的油耗數(shù)據(jù)量;I(ci=c)為ci=c的布爾值,若ci=c則I(ci=c)=1,否則為0;I(cH,ci=c)為cH統(tǒng)計(jì)量的布爾值,若ci=c時(shí)存在cH則I(cH,ci=c)=1,否則為0。
(5)
其中,N為3年內(nèi)的所有油耗數(shù)據(jù)量;I(ci=c)為ci=c的布爾值,若ci=c則I(ci=c)=1,否則為0,M為c取值的數(shù)量。
對(duì)于連續(xù)2個(gè)或以上的油耗數(shù)據(jù)點(diǎn)缺失,這種情況下NB方法已不適用[28],考慮以最相似航班的油耗數(shù)據(jù)進(jìn)行估計(jì)。動(dòng)態(tài)時(shí)間規(guī)整是一種衡量長(zhǎng)度不同的時(shí)間序列相似度的有效方法[29],本文在連續(xù)缺失數(shù)據(jù)估計(jì)時(shí)采用DTW的相似度算法,求解累計(jì)距離最小航班對(duì)應(yīng)的規(guī)整函數(shù)以尋找最相似的航班。含有缺失項(xiàng)的航班作為源航班,按時(shí)間先后順序標(biāo)記為序列M={m1,m2,…,mi},其中i為該航班的油耗數(shù)據(jù)總量,依次選取其他所有航班數(shù)據(jù),記為NFLT={n1,n2,…,nj,…,nn},其中FLT表示航班號(hào),n為其他航班的油耗數(shù)據(jù)總量。計(jì)算每個(gè)航班與源航班序列的累積距離,序列匹配距離計(jì)算如下:
(6)
其中,D[i,j]為序列與mi、nj匹配時(shí)的累計(jì)距離,d(mi-nj)是2個(gè)數(shù)據(jù)點(diǎn)間的歐氏距離。采用27o-45o-63o的局部路徑約束,路徑最佳會(huì)跳過(guò)距離過(guò)大的點(diǎn)以減少不必要的計(jì)算[30]。比較累計(jì)距離可得到與源航班最相似的航班,依據(jù)該航班對(duì)應(yīng)的離散值轉(zhuǎn)化為對(duì)應(yīng)的分組,在同組內(nèi)尋找距離最小的數(shù)據(jù)去估計(jì)缺失的航班油耗。
本文方法處理流程如圖1所示。首先對(duì)于缺失數(shù)據(jù)使用采用K-medoids聚類算法將數(shù)據(jù)集分為若干個(gè)簇,然后對(duì)單個(gè)不連續(xù)缺失數(shù)據(jù)使用NB算法進(jìn)行估計(jì),連續(xù)缺失數(shù)據(jù)使用DTW方法,使用分類組合的方式形成缺失數(shù)據(jù)組合估計(jì)方法,最后進(jìn)行評(píng)估結(jié)果評(píng)價(jià)。
圖1 基于聚類分析的組合估計(jì)方法
選取近3年的B737飛機(jī)不同航段的航班部分燃油消耗數(shù)據(jù),以實(shí)飛距離、輪檔時(shí)間和業(yè)載作為影響航班油耗的飛行特征指標(biāo),提取實(shí)驗(yàn)樣本總量為18316條。缺失航班油耗數(shù)據(jù)格式如表1所示,表中NULL代表數(shù)據(jù)缺失。
表1 缺失航班油耗數(shù)據(jù)格式
以航班油耗c所在分組為橫坐標(biāo),輸入?yún)?shù)cS或cH所在分組為縱坐標(biāo),灰度深淺代表?xiàng)l件概率的大小,兩者的相關(guān)性如圖2(a)所示。兩者呈現(xiàn)較強(qiáng)的正相關(guān)性,可知相鄰日期的航班相似的概率很大;圖2(b)相比圖2(a)概率分布較為分散,但仍集中在對(duì)角線附近,c和cH仍具有正相關(guān)性,概率分布不集中主要是因?yàn)闅v史數(shù)據(jù)樣本數(shù)量有限,增加歷史數(shù)據(jù)樣本量,可發(fā)現(xiàn)概率分布更加集中,呈現(xiàn)更強(qiáng)的正相關(guān)性;由圖2(c)可以看出cS和cH并無(wú)相關(guān)關(guān)系,兩者相互獨(dú)立。
(a)
將某航班一年內(nèi)的油耗數(shù)據(jù)轉(zhuǎn)換的k個(gè)離散值,按時(shí)間先后得到一組時(shí)間序列作為源航班與其他航班的時(shí)間序列比對(duì),通過(guò)DTW的計(jì)算尋找到與源航班相似的航班,源航班和相似航班油耗序列對(duì)比,結(jié)果如圖3所示。
圖3 源航班與相似航班的時(shí)間序列變化對(duì)比
在圖3中截取本年度部分?jǐn)?shù)據(jù)進(jìn)行對(duì)比可知:相似航班時(shí)間序列的整體形狀相近,由差值可知航班間的相似度很高,對(duì)應(yīng)點(diǎn)重合的占比為59.3%,占比在52.7%至71.3%范圍內(nèi),故此方法尋找出的相似航班具有一定的可靠性。
審查方核查航班數(shù)據(jù)要求缺失率不應(yīng)超過(guò)5%,定義缺失數(shù)據(jù)點(diǎn)占總樣本點(diǎn)的百分比為缺失率。從樣本數(shù)據(jù)中選取1%、2%、3%、4%、5%的樣本點(diǎn)作為缺失數(shù)據(jù),隨機(jī)設(shè)置單個(gè)不連續(xù)和連續(xù)2種類型的缺失,人為構(gòu)造不同數(shù)據(jù)集的缺失率,然后再通過(guò)均方根誤差(RMSE)作為評(píng)價(jià)指標(biāo)[31]比較不同方法的估計(jì)誤差。
(7)
其中,n為缺失數(shù)據(jù)點(diǎn)總數(shù);obsi為真實(shí)數(shù)據(jù)的觀測(cè)值;prei為方法的估計(jì)值。
觀察K的不同取值對(duì)于估計(jì)結(jié)果的影響,如圖4所示隨著K的增加,在K=35。附近時(shí)達(dá)到最小值,先減小后緩慢增加,因此本文設(shè)置K=35。在K值相同時(shí),RMSE隨數(shù)據(jù)缺失率的增加有一定程度增加,當(dāng)缺失率為5%時(shí),估算誤差有明顯增加,由于NB和DTW均以現(xiàn)有數(shù)據(jù)為輸入?yún)?shù),數(shù)據(jù)量的過(guò)度缺失將會(huì)明顯提高方法的估計(jì)誤差。
圖4 NB-DTW方法估算誤差與類簇個(gè)數(shù)K的關(guān)系
方法的估計(jì)誤差比較結(jié)果如表2所示,可知,在相同缺失率下單獨(dú)使用DTW均方根誤差均大于兩者組合使用,NB-DTW的估計(jì)誤差較小。隨著缺失率增大單獨(dú)使用NB或DTW都會(huì)使方法的誤差增大,NB采用缺失較多的數(shù)據(jù)作為輸入?yún)?shù),將會(huì)增大估計(jì)的誤差;DTW采用歐氏距離尋找相似航班,缺失的數(shù)據(jù)可能會(huì)對(duì)計(jì)算過(guò)程產(chǎn)生影響,造成與非相似航班的混淆,使計(jì)算結(jié)果產(chǎn)生偏差。
表2 方法誤差對(duì)比
分別單獨(dú)使用2種方法對(duì)2類缺失數(shù)據(jù)進(jìn)行估計(jì),經(jīng)驗(yàn)證NB對(duì)于連續(xù)缺失數(shù)據(jù)誤差易累積,且估計(jì)結(jié)果不可靠,DTW相比于NB對(duì)于單個(gè)不連續(xù)的缺失數(shù)據(jù)的估計(jì)誤差偏大。
本文以碳排放報(bào)告中燃油消耗數(shù)據(jù)為研究對(duì)象,提出一種基于K-medoids的NB-DTW組合估計(jì)方法。該方法有效地解決了使用單一方法估計(jì)多數(shù)據(jù)類型誤差大的問(wèn)題。在對(duì)碳排放報(bào)告中燃油消耗數(shù)據(jù)的缺失數(shù)據(jù)估計(jì)時(shí),基于K-medoids的NB-DTW組合方法在1%、2%以及3%均方根誤差時(shí)比NB方法分別降低了9.3%、12.1%、12.96%,比DTW方法分別降低了35.46%、43.62%、55.04%,能較好地估計(jì)碳排放報(bào)告中燃油消耗數(shù)據(jù)的缺失數(shù)據(jù)值,為民航數(shù)據(jù)估計(jì)提供一定的理論基礎(chǔ)與工程思路。