韓雁飛 孫淑光 徐廣有 王 蓉
1(中國(guó)民航大學(xué)天津市智能信號(hào)與圖像處理重點(diǎn)實(shí)驗(yàn)室 天津 300300)2(海航航空技術(shù)(天津)有限責(zé)任公司 天津 300300)3(廈門(mén)太古飛機(jī)工程有限公司 福建 廈門(mén) 361003)
一個(gè)完整的飛行航段是指航空器從起飛點(diǎn)到下一個(gè)著陸點(diǎn)之間的飛行,因此一次航班可以包括一個(gè)航段或者多個(gè)航段。在機(jī)載設(shè)備中,根據(jù)飛行警告計(jì)算機(jī)(Flight Warning Computer,F(xiàn)WC)預(yù)設(shè)的航段邏輯,一個(gè)飛行航段可以劃分為10個(gè)不同階段,用于幫助和定位機(jī)載設(shè)備故障發(fā)生時(shí)的飛行階段。然而,在地面系統(tǒng)中,航空公司需要依據(jù)飛機(jī)號(hào)和其對(duì)應(yīng)的飛行航段對(duì)飛機(jī)通信尋址與報(bào)告系統(tǒng)(Aircraft Communications Addressing and Reporting System,ACARS)報(bào)文[1-2]進(jìn)行存儲(chǔ)、管理和數(shù)據(jù)分析。因此,能夠?qū)崿F(xiàn)飛行航段的正確劃分和識(shí)別,對(duì)飛機(jī)的有效運(yùn)營(yíng)、性能監(jiān)控和健康管理等均有著至關(guān)重要的作用。
ACARS可以監(jiān)測(cè)和報(bào)告當(dāng)前航班飛行階段的變化,其中包含四種階段狀態(tài)(滑出——Out of the gate;起飛——Off the ground;著陸——On the ground;滑入——Into the Gate),工業(yè)上簡(jiǎn)稱(chēng)為OOOI,這四個(gè)狀態(tài)也稱(chēng)為OOOI事件[3]。一次完整的飛行航段包含上述四種狀態(tài),即在飛行過(guò)程中將依次產(chǎn)生四種OOOI報(bào)文,這些報(bào)文被稱(chēng)為OUT報(bào)、OFF報(bào)、ON報(bào)、IN報(bào)。對(duì)于OOOI事件的監(jiān)控可被用于航空運(yùn)行調(diào)度安排、航班滑出預(yù)測(cè)和機(jī)場(chǎng)場(chǎng)面運(yùn)行監(jiān)控等[4-7]。Nakahara等[8]對(duì)美國(guó)紐約肯尼迪機(jī)場(chǎng)的機(jī)場(chǎng)場(chǎng)面運(yùn)行數(shù)據(jù)進(jìn)行分析后指出,利用OUT報(bào)文和OFF報(bào)文之間的時(shí)間間隔,可為機(jī)場(chǎng)場(chǎng)面運(yùn)行的擁堵情況提供一個(gè)良好的度量。作為ACARS系統(tǒng)的一個(gè)重要應(yīng)用,利用OOOI報(bào)文中所包含的狀態(tài)信息可以為航空公司的地面報(bào)文監(jiān)控系統(tǒng)提供飛機(jī)航段劃分,文獻(xiàn)[9]利用CLIPS開(kāi)發(fā)工具初步實(shí)現(xiàn)了適用于航空公司地面監(jiān)控的航段識(shí)別系統(tǒng),但是其僅實(shí)現(xiàn)了航段識(shí)別的邏輯推理,在知識(shí)獲取和自主學(xué)習(xí)等方面還有待完善。
隨著航空業(yè)的飛速發(fā)展,全球范圍內(nèi)航班數(shù)量與日俱增??罩薪煌ǖ膿頂D以及一些人為或設(shè)備故障為航空公司的管理監(jiān)控帶來(lái)了巨大的挑戰(zhàn)。在OOOI報(bào)文的實(shí)際使用過(guò)程中,各種人為因素、設(shè)備故障和環(huán)境干擾等會(huì)導(dǎo)致報(bào)文內(nèi)容的錯(cuò)誤或缺失,甚至出現(xiàn)報(bào)文丟失的情況。例如:2017年1月和2月某公司一架737-800飛機(jī)機(jī)組反映ACARS OOOI報(bào)文ON和IN時(shí)間相同的故障情況,經(jīng)過(guò)對(duì)歷史報(bào)文分析后發(fā)現(xiàn)該故障在2016年12月就已經(jīng)出現(xiàn),之后維修人員經(jīng)過(guò)長(zhǎng)達(dá)3個(gè)月的故障排查才解決了此次故障情況。這種非正常情況的出現(xiàn),極有可能導(dǎo)致地面系統(tǒng)不能準(zhǔn)確識(shí)別航班所處的航段,進(jìn)而發(fā)出錯(cuò)誤的請(qǐng)求,影響航班任務(wù)的正常執(zhí)行。
針對(duì)OOOI報(bào)文出現(xiàn)內(nèi)容差錯(cuò)、部分內(nèi)容缺省甚至報(bào)文丟失的異常情況,本文提出了一種基于知識(shí)輔助和OOOI報(bào)文的飛機(jī)航段識(shí)別方法。該方法借助專(zhuān)家系統(tǒng)的設(shè)計(jì)思路和運(yùn)行流程,考慮航班多航段運(yùn)行的實(shí)際特性,以機(jī)載燃油油量、預(yù)計(jì)到達(dá)時(shí)間和位置報(bào)等作為輔助知識(shí),以O(shè)OOI報(bào)文中的關(guān)鍵參數(shù)作為航段推理的事實(shí)依據(jù),建立了一套完整的飛行航段識(shí)別邏輯及知識(shí)庫(kù)。以真實(shí)報(bào)文為例,對(duì)報(bào)文漏發(fā)的情況進(jìn)行航段識(shí)別并分析。結(jié)果表明,利用航段改變、航段不變、報(bào)文無(wú)效和航段撤銷(xiāo)等判別結(jié)果,該系統(tǒng)可有效地實(shí)現(xiàn)飛機(jī)航段識(shí)別。
作為一種在飛機(jī)和地面站之間進(jìn)行數(shù)據(jù)傳輸?shù)臄?shù)字式數(shù)據(jù)鏈系統(tǒng),ACARS系統(tǒng)的數(shù)據(jù)管理單元通過(guò)采集多種機(jī)載傳感器(例如,艙門(mén)、剎車(chē)和起落架上的傳感器)的輸出信號(hào)來(lái)定義OOOI事件。一次完整的航班任務(wù)包含上述四種狀態(tài),即在飛行過(guò)程中將依次產(chǎn)生四種OOOI報(bào)文,在A(yíng)CARS報(bào)文體系中,這些報(bào)文被稱(chēng)為OUT報(bào)、OFF報(bào)、ON報(bào)和IN報(bào)[10]。
OOOI報(bào)文按照飛機(jī)執(zhí)行航班任務(wù)的事件發(fā)生順序進(jìn)行播發(fā),依次是OUT報(bào)、OFF報(bào)、ON報(bào)和IN報(bào),分別對(duì)應(yīng)飛機(jī)滑出、起飛、著陸和滑入等四種狀態(tài),利用這四種狀態(tài)即可描述一次完整的航班航段,如圖1所示。
圖1 完整航段中OOOI報(bào)文產(chǎn)生順序
由于OOOI報(bào)文是用于報(bào)告飛機(jī)狀態(tài)的報(bào)文,所以一般出現(xiàn)在A(yíng)CARS報(bào)文下行報(bào)文中,飛機(jī)通過(guò)地-空數(shù)據(jù)通信的方式將表示飛機(jī)滑出、起飛、著陸和滑入等四種狀態(tài)事件的OOOI報(bào)文下傳給地面。下行報(bào)文符合ARINC618協(xié)議[11]的數(shù)據(jù)格式,由數(shù)據(jù)鏈服務(wù)提供商(Datalink Service Provider,DSP)將其轉(zhuǎn)換為符合ARINC620協(xié)議[12]數(shù)據(jù)格式的報(bào)文,并轉(zhuǎn)發(fā)給其他終端用戶(hù)。
在地空數(shù)據(jù)通信網(wǎng)絡(luò)中,飛機(jī)通過(guò)空地鏈路向地面?zhèn)鬏敂?shù)據(jù),信息以字符的形式被記錄在傳輸?shù)膱?bào)文中,OOOI的傳輸服務(wù)行(即報(bào)文頭)包括飛機(jī)號(hào)、航班號(hào)等重要參數(shù)[13]。此外,其他參數(shù)的解釋以及參數(shù)在報(bào)文中的字符表示形式,如表1所示。
表1 OOOI報(bào)文基本內(nèi)容
地面終端用戶(hù)按照ARINC620協(xié)議標(biāo)準(zhǔn)對(duì)經(jīng)由DSP轉(zhuǎn)發(fā)后的OOOI報(bào)文進(jìn)行解析,以實(shí)際中的OOOI報(bào)文為例,如圖2所示是山東航空于2017年4月26日當(dāng)天接收并保存的OUT報(bào)文。解析之后,可獲得的報(bào)文內(nèi)容如下:報(bào)文發(fā)送的時(shí)刻為2017年4月26日10時(shí)51分38秒,機(jī)尾號(hào)為B-5119,航班號(hào)為SC4779,起飛機(jī)場(chǎng)代碼ZHCC,報(bào)文類(lèi)型是OUT報(bào),報(bào)文接收時(shí)間是10時(shí)51分,當(dāng)前機(jī)載油量1×104kg。
圖2 OUT報(bào)文示例
由圖2可見(jiàn),OUT報(bào)的關(guān)鍵參數(shù)為起飛機(jī)場(chǎng)信息。同理,依據(jù)ARINC620協(xié)議標(biāo)準(zhǔn)對(duì)OFF報(bào)、ON報(bào)和IN報(bào)進(jìn)行解析,其中OFF報(bào)的關(guān)鍵參數(shù)為起飛機(jī)場(chǎng)和目的機(jī)場(chǎng)信息,ON和IN報(bào)的關(guān)鍵參數(shù)均包含目的機(jī)場(chǎng)信息。不同類(lèi)型的報(bào)文在報(bào)文類(lèi)型標(biāo)識(shí)符處會(huì)有所不同,OOOI報(bào)文中通過(guò)“OUT”“OFF”“ON”“IN”等字符區(qū)分不同的報(bào)文類(lèi)型。
在商業(yè)、工業(yè)等領(lǐng)域,專(zhuān)家系統(tǒng)(Expert System,ES)的應(yīng)用較為廣泛,其本質(zhì)是一種高效的代碼程序,這類(lèi)智能程序通過(guò)運(yùn)用某一專(zhuān)業(yè)領(lǐng)域中人類(lèi)專(zhuān)家積累的專(zhuān)業(yè)知識(shí)或者經(jīng)驗(yàn),模仿專(zhuān)家解決問(wèn)題的邏輯,從而高效地解決系統(tǒng)面臨的現(xiàn)實(shí)問(wèn)題[14]。
航段識(shí)別的知識(shí)獲取是建立專(zhuān)家系統(tǒng)知識(shí)庫(kù)的主要手段,搭建知識(shí)庫(kù)是實(shí)現(xiàn)專(zhuān)家系統(tǒng)的核心和首要工作[15]。提取書(shū)本、文獻(xiàn)和該領(lǐng)域?qū)<业募夹g(shù)經(jīng)驗(yàn)等已有的知識(shí),并將其轉(zhuǎn)化為機(jī)器能夠識(shí)別的形式就是知識(shí)獲取的過(guò)程。
為了使基于知識(shí)輔助和OOOI報(bào)文的飛機(jī)航段識(shí)別方法具有專(zhuān)家系統(tǒng)的邏輯推理能力,需要為推理邏輯提供事實(shí)依據(jù),也就是事實(shí)庫(kù)。事實(shí)庫(kù)中應(yīng)包含當(dāng)前報(bào)文內(nèi)容和歷史報(bào)文內(nèi)容,推理邏輯將依據(jù)這些事實(shí)綜合得出識(shí)別結(jié)果。因此,應(yīng)當(dāng)選取報(bào)文中合適的參數(shù),作為邏輯推理的事實(shí),將這些參數(shù)解析出來(lái)并保存在數(shù)據(jù)庫(kù)中。
完整的OOOI報(bào)文可分為報(bào)頭和正文兩部分。一般情況下,報(bào)頭部分位于OOOI報(bào)文的前5行,其報(bào)文格式基本保持不變,其包含的有效信息包括發(fā)送地址、報(bào)文觸發(fā)時(shí)間、報(bào)文接收時(shí)間、通信服務(wù)商代碼、飛機(jī)號(hào)和航班號(hào)等。報(bào)文正文的內(nèi)容及格式可以依據(jù)不同航空公司的需求進(jìn)行客戶(hù)化的編輯和修改,不同航空公司發(fā)送的OOOI報(bào)文格式可能會(huì)有所不同,但其一般情況下均會(huì)包含表征航班OOOI運(yùn)行狀態(tài)的關(guān)鍵信息,主要包括報(bào)文名稱(chēng)、發(fā)送時(shí)間、起飛機(jī)場(chǎng)代碼、目的機(jī)場(chǎng)代碼和飛機(jī)燃油油量等參數(shù)。
由于任意兩個(gè)連續(xù)航段的起飛機(jī)場(chǎng)及目的機(jī)場(chǎng)代碼肯定不同,因此識(shí)別航段的最優(yōu)判斷依據(jù)是報(bào)文正文中的起飛機(jī)場(chǎng)和目的機(jī)場(chǎng)代碼。但在實(shí)際發(fā)送的報(bào)文中,起飛機(jī)場(chǎng)和目的機(jī)場(chǎng)代碼不同時(shí)出現(xiàn)時(shí),航班號(hào)也可作為判斷依據(jù)。在一個(gè)完整正常的航班任務(wù)中,航班號(hào)是保持不變的,但當(dāng)航班任務(wù)是經(jīng)停的航班時(shí),同一個(gè)航班號(hào)會(huì)對(duì)應(yīng)多個(gè)飛行航段,此時(shí)需要利用其他附加信息進(jìn)行輔助識(shí)別。其中,機(jī)載燃油油量、預(yù)計(jì)到達(dá)時(shí)間(Estimated Time of Arrival,ETA)和ACARS的位置報(bào)(POS報(bào))均是重要的輔助識(shí)別依據(jù)。飛機(jī)執(zhí)行航段任務(wù)的過(guò)程一定會(huì)伴隨著燃油油量的消耗,燃油油量和OOOI事件的發(fā)生順序之間存在著對(duì)應(yīng)的直接聯(lián)系。利用ETA作為輔助判斷知識(shí),可以有效防止在大量報(bào)文無(wú)法接收時(shí),將連續(xù)兩個(gè)航段識(shí)別為一個(gè)航段的可能。因此,本文選取燃油油量、ETA和POS報(bào)等作為識(shí)別OOOI過(guò)程的知識(shí)輔助參數(shù)。
航段識(shí)別規(guī)則即為航段識(shí)別知識(shí)的表示方式,即如何把用于航段識(shí)別的專(zhuān)業(yè)知識(shí)轉(zhuǎn)化為計(jì)算機(jī)能夠存儲(chǔ)和應(yīng)用的表示形式。目前最常用的方式是規(guī)則表示法,它直接模擬人類(lèi)思維過(guò)程,清晰直接地將知識(shí)表示成人類(lèi)思維中最簡(jiǎn)單的因果關(guān)系,一般是通過(guò)“IF-THEN”的規(guī)則形式表達(dá)[16-17],即:
IF P
THEN Q
其中:P代表規(guī)則的執(zhí)行條件,例如前提、狀態(tài)等;Q表示結(jié)論或者規(guī)則執(zhí)行結(jié)果等。具體含義為:若P條件成立或描述為真,則可推斷出結(jié)論Q或執(zhí)行Q。通過(guò)歸納航段識(shí)別領(lǐng)域的相關(guān)基礎(chǔ)知識(shí),考慮利用OOOI報(bào)文進(jìn)行航段識(shí)別時(shí)可能的出錯(cuò)模式,分析并總結(jié)專(zhuān)家經(jīng)驗(yàn),得出了基于OOOI報(bào)文進(jìn)行航段識(shí)別的知識(shí)[9],并將其以規(guī)則形式表示出來(lái),具體內(nèi)容如表2所示。
表2 飛行航段識(shí)別規(guī)則
續(xù)表2
在上述已有知識(shí)的基礎(chǔ)上,航段識(shí)別系統(tǒng)需要按照一定的推理機(jī)制應(yīng)用所有的規(guī)則對(duì)OOOI報(bào)文進(jìn)行推理和識(shí)別。在專(zhuān)家系統(tǒng)中,推理機(jī)通過(guò)讀取知識(shí)庫(kù)中的航段識(shí)別規(guī)則,依照事實(shí)庫(kù)的已有事實(shí),遵循正向推理的原則,從已有的信息和數(shù)據(jù)出發(fā),通過(guò)沖突消解的方式逐步建立基于OOOI報(bào)文的航段識(shí)別推理邏輯。建立推理邏輯的關(guān)鍵之處在于分析OOOI報(bào)文應(yīng)用過(guò)程中可能出現(xiàn)的情況,并依據(jù)報(bào)文解析的關(guān)鍵參數(shù)設(shè)計(jì)合適的推理邏輯。
在正常情況下,飛機(jī)的一個(gè)航段能剛好完整地發(fā)送一組OOOI報(bào)文。但在報(bào)文的實(shí)際使用中一個(gè)航段可能會(huì)有多個(gè)OUT報(bào)或IN報(bào)。若航班執(zhí)行過(guò)程中有飛機(jī)復(fù)飛的情況,則會(huì)發(fā)送多個(gè)ON報(bào)和OFF報(bào),由此就會(huì)存在將一個(gè)航段誤識(shí)別為多個(gè)航段的情況。因此,根據(jù)航班多航段運(yùn)行的實(shí)際特性,以機(jī)載燃油油量、ETA和POS報(bào)等作為輔助知識(shí),對(duì)接收到的OOOI報(bào)文進(jìn)行有效參數(shù)的提取,通過(guò)航段識(shí)別推理邏輯對(duì)報(bào)文內(nèi)容進(jìn)行判定。
由表2可知,依據(jù)航段識(shí)別規(guī)則,在航段識(shí)別的初始階段首先需要對(duì)報(bào)文的類(lèi)型進(jìn)行解析和判斷,提取報(bào)文中的關(guān)鍵參數(shù),當(dāng)識(shí)別到不同類(lèi)型的報(bào)文時(shí),結(jié)合歷史報(bào)文信息依據(jù)不同的判斷邏輯進(jìn)行下一步的航段識(shí)別,航段識(shí)別邏輯的流程如圖3所示。
圖3 飛行航段識(shí)別邏輯流程
由圖3可見(jiàn),若系統(tǒng)識(shí)別到當(dāng)前報(bào)文為OUT報(bào)時(shí),將進(jìn)入條件2的判斷邏輯,從而進(jìn)行下一步的識(shí)別,OUT報(bào)的識(shí)別邏輯流程如圖4所示,其中“DEP”指起飛機(jī)場(chǎng)或者目的機(jī)場(chǎng)代碼。
圖4 OUT報(bào)邏輯流程
由圖4可見(jiàn),若當(dāng)前OUT報(bào)文的DEP有效,則將當(dāng)前DEP與歷史報(bào)文的DEP比對(duì)。若與歷史報(bào)文的DEP一致,且通過(guò)歷史OFF報(bào)、ON報(bào)或者位置報(bào)等判斷出飛機(jī)沒(méi)有起飛,代表飛機(jī)推出后滑回又重新推出的情況,故判定航段不改變;否則,若飛機(jī)已起飛,代表飛機(jī)返航后再推出的情況,判定航段改變。圖4中“燃油消耗<0”指當(dāng)前報(bào)文的油量參數(shù)大于歷史報(bào)文油量。若當(dāng)前OUT報(bào)文的DEP無(wú)效,則可以通過(guò)油量參數(shù)進(jìn)行判斷。
如圖5所示,對(duì)于OFF報(bào)文,判定航段不變的唯一條件為飛機(jī)未起飛。如飛機(jī)已起飛,通過(guò)對(duì)比當(dāng)前OFF報(bào)與上一個(gè)OFF報(bào)的時(shí)間間隔,確定航段是否改變。如當(dāng)前報(bào)文的接收時(shí)間與上一個(gè)報(bào)文的接收時(shí)間差小于某個(gè)定值,判定當(dāng)前OFF報(bào)為重復(fù)發(fā)送,拋棄報(bào)文;如大于定值,則判定當(dāng)前OFF報(bào)正常,航段改變。同理,通過(guò)查看歷史報(bào)文是否有IN報(bào),也可以判斷當(dāng)前OFF報(bào)是否為重復(fù)發(fā)送。
圖5 OFF報(bào)邏輯流程
圖6為ON報(bào)邏輯流程,其中“當(dāng)前報(bào)文時(shí)間>ETA”指當(dāng)前ON報(bào)文的接收時(shí)間在預(yù)計(jì)到達(dá)時(shí)間之后,如滿(mǎn)足此條件,則代表飛機(jī)航段改變,否則通過(guò)歷史報(bào)文是否存在ON報(bào)進(jìn)一步判斷當(dāng)前ON報(bào)文是否有效。如存在,則代表當(dāng)前ON報(bào)文重復(fù)發(fā)送,拋棄報(bào)文;如不存在,則代表當(dāng)前ON報(bào)文正常,航段不變。
圖6 ON報(bào)邏輯流程
圖7為IN報(bào)邏輯流程,可以看出,與歷史報(bào)文DEP不相同則表明當(dāng)前報(bào)文無(wú)效拋棄。需要注意的是“與歷史報(bào)文DEP相同”這一判斷成立的條件包括不存在起飛機(jī)場(chǎng)和目的機(jī)場(chǎng)的報(bào)文,并且在飛機(jī)未起飛的情況下,判定為撤銷(xiāo)航段,刪除該記錄。
圖7 IN報(bào)邏輯流程圖
若當(dāng)前報(bào)文為POS報(bào),系統(tǒng)則將POS報(bào)作為輔助航段識(shí)別的判斷條件,POS報(bào)的邏輯流程如圖8所示。由圖8可知,“飛機(jī)落地”這一判斷成立的條件包括存在ON報(bào)、存在POS報(bào)和IN報(bào)以及存在OFF報(bào)和IN報(bào)三種情況。
圖8 POS報(bào)邏輯流程
本文利用專(zhuān)家系統(tǒng)的框架設(shè)計(jì)實(shí)現(xiàn)了一種基于知識(shí)輔助和OOOI報(bào)文的飛機(jī)航段識(shí)別方法,并在此基礎(chǔ)上搭建一套完整的飛機(jī)航段識(shí)別系統(tǒng)。該系統(tǒng)以O(shè)OOI報(bào)文為數(shù)據(jù)源,根據(jù)航班多航段運(yùn)行的實(shí)際特性,以機(jī)載燃油油量、ETA和POS報(bào)等作為輔助知識(shí),使用C# 編程語(yǔ)言在Microsoft Visual Studio 2010的平臺(tái)中完成系統(tǒng)運(yùn)行界面的設(shè)計(jì)和開(kāi)發(fā)。
基于知識(shí)輔助和OOOI報(bào)文的飛機(jī)航段識(shí)別系統(tǒng)是以飛機(jī)OOOI報(bào)文為數(shù)據(jù)源,以“對(duì)象”為中心來(lái)設(shè)計(jì)系統(tǒng)運(yùn)行界面,在Microsoft Visual Studio 2010的環(huán)境下使用C#語(yǔ)言的可視化窗口設(shè)計(jì)進(jìn)行編程開(kāi)發(fā)。在進(jìn)行解析OOOI報(bào)文的基礎(chǔ)上,將報(bào)文內(nèi)的關(guān)鍵參數(shù)保存到Microsoft Office Access數(shù)據(jù)庫(kù)中,通過(guò)對(duì)數(shù)據(jù)庫(kù)的操作實(shí)現(xiàn)對(duì)報(bào)文參數(shù)的讀取和錄入。
基于OOOI報(bào)文的多航班飛機(jī)航段識(shí)別系統(tǒng)的結(jié)構(gòu)原理圖,如圖9所示。系統(tǒng)的主要功能模塊包括報(bào)文錄入模塊、報(bào)文解析模塊、航段識(shí)別模塊、當(dāng)前航段報(bào)文查詢(xún)模塊、歷史航段報(bào)文查詢(xún)模塊和系統(tǒng)登錄與退出模塊。每個(gè)模塊互相關(guān)聯(lián),共同實(shí)現(xiàn)航段識(shí)別系統(tǒng)的有效工作。
圖9 系統(tǒng)結(jié)構(gòu)原理圖
(1) 報(bào)文錄入模塊。該模塊可實(shí)現(xiàn)報(bào)文參數(shù)的自動(dòng)錄入和手動(dòng)錄入兩種方式。采用自動(dòng)接收?qǐng)?bào)文方式時(shí),可以實(shí)時(shí)處理OOOI報(bào)和POS報(bào)的信息,當(dāng)系統(tǒng)正常啟動(dòng)時(shí)就自動(dòng)開(kāi)啟這種工作方式,該功能通過(guò)固定時(shí)間間隔的數(shù)據(jù)刷新方式實(shí)現(xiàn)。報(bào)文手動(dòng)錄入模塊主要用于特殊情況下的臨時(shí)航班錄入。采用手動(dòng)錄入方式時(shí),可在該窗口的下拉菜單中手動(dòng)選擇該報(bào)文的數(shù)據(jù)庫(kù)、表名以及路徑等關(guān)鍵信息,系統(tǒng)將按照所選信息執(zhí)行報(bào)文錄入,并將相應(yīng)參數(shù)存入數(shù)據(jù)庫(kù)。
(2) 報(bào)文解析模塊。該模塊對(duì)接收到的OOOI報(bào)或POS報(bào)按照ARINC620協(xié)議標(biāo)準(zhǔn)進(jìn)行解析,可獲得的報(bào)文的關(guān)鍵參數(shù),包括:報(bào)文發(fā)送的時(shí)刻,機(jī)尾號(hào),航班號(hào),起飛機(jī)場(chǎng)代碼,目的機(jī)場(chǎng)代碼,報(bào)文類(lèi)型和當(dāng)前載機(jī)油量等。同時(shí),將解析后的報(bào)文關(guān)鍵參數(shù)保存到Microsoft Office Access數(shù)據(jù)庫(kù)的相應(yīng)表單中。
(3) 航段識(shí)別模塊。航段識(shí)別功能的實(shí)現(xiàn)流程如圖10所示。報(bào)文錄入到數(shù)據(jù)庫(kù)中以后,即獲得當(dāng)前報(bào)文的參數(shù)信息,查詢(xún)并調(diào)取歷史數(shù)據(jù)庫(kù)中對(duì)應(yīng)飛機(jī)號(hào)的歷史信息,將當(dāng)前報(bào)文參數(shù)與歷史報(bào)文參數(shù)綜合通過(guò)系統(tǒng)的邏輯判斷,得到判斷結(jié)果,共分為以下4種判斷結(jié)果:航段改變、航段不變、報(bào)文無(wú)效和航段撤銷(xiāo)。對(duì)于不同判斷結(jié)果,系統(tǒng)自動(dòng)完成對(duì)應(yīng)的后續(xù)操作,并將航段識(shí)別結(jié)果顯示在界面上,最后將識(shí)別結(jié)果和參數(shù)一并錄入到數(shù)據(jù)庫(kù)中。
圖10 飛行航段識(shí)別功能實(shí)現(xiàn)流程
(4) 當(dāng)前航段報(bào)文查詢(xún)模塊。該模塊以當(dāng)前航段下所有航班的飛機(jī)號(hào)作為初級(jí)篩選條件,結(jié)合航段識(shí)別模塊的航段識(shí)別結(jié)果,為用戶(hù)提供當(dāng)前航段下的所有航班的OOOI報(bào)文內(nèi)容及其所屬航段信息,包括該報(bào)文的狀態(tài)、類(lèi)型和航段標(biāo)號(hào)。同時(shí),該航段已存在的報(bào)文信息會(huì)通過(guò)右側(cè)的報(bào)文按鈕進(jìn)行顯示,名稱(chēng)變?yōu)榧t色的按鈕代表該報(bào)文類(lèi)型已存在,并可通過(guò)單擊進(jìn)行查看。當(dāng)前航段下報(bào)文內(nèi)容及其航段識(shí)別結(jié)果,如圖11所示。
圖11 當(dāng)前航段下報(bào)文內(nèi)容及其航段識(shí)別結(jié)果
(5) 歷史航段報(bào)文查詢(xún)模塊。當(dāng)用戶(hù)輸入需要查詢(xún)的飛機(jī)號(hào)和起止日期之后,系統(tǒng)以列表的形式展示出所查詢(xún)飛機(jī)的所有航段信息。
(6) 系統(tǒng)登錄與退出模塊。系統(tǒng)登錄與退出模塊通過(guò)友好的人機(jī)交互接口,實(shí)現(xiàn)系統(tǒng)的登錄、用戶(hù)注冊(cè)和退出等功能。
OOOI報(bào)文在航班多航段運(yùn)行的實(shí)際通信過(guò)程中,往往會(huì)出現(xiàn)由于人為因素、設(shè)備故障、環(huán)境干擾等原因?qū)е聢?bào)文異常情況,使得航空公司的地面系統(tǒng)不能準(zhǔn)確識(shí)別航班狀態(tài),進(jìn)而發(fā)出錯(cuò)誤的請(qǐng)求或決策指令,影響航班任務(wù)的正常執(zhí)行。OOOI報(bào)文主要的錯(cuò)誤情況包括報(bào)文漏發(fā)、報(bào)文重復(fù)和報(bào)文延誤等。按照常見(jiàn)的故障類(lèi)型進(jìn)行報(bào)文仿真,以同一個(gè)時(shí)間范圍內(nèi)的4個(gè)航班號(hào)的50組OOOI報(bào)文數(shù)據(jù)為觀(guān)察對(duì)象,系統(tǒng)均可有效地對(duì)航段進(jìn)行劃分,實(shí)現(xiàn)航段改變、航段不變、報(bào)文無(wú)效和航段撤銷(xiāo)等判別結(jié)果。
同時(shí),以飛機(jī)號(hào)為B-5513在2017年4月25日當(dāng)天的真實(shí)報(bào)文為例,針對(duì)報(bào)文漏發(fā)的情況進(jìn)行實(shí)驗(yàn)并分析。
如圖12所示,當(dāng)前系統(tǒng)判斷飛機(jī)號(hào)B-5513接收到的報(bào)文為0航段的ON報(bào),此時(shí)該0航段已接收的報(bào)文包括OUT報(bào)、OFF報(bào)、POS報(bào)和ON報(bào),當(dāng)前該航段的IN報(bào)還未發(fā)送。下一條系統(tǒng)接收到的報(bào)文記錄情況如圖13所示,此時(shí)機(jī)載設(shè)備發(fā)送的報(bào)文為該架飛機(jī)下一航段的OUT報(bào),而未發(fā)送IN報(bào),經(jīng)系統(tǒng)判斷此時(shí)航段已經(jīng)改變,即當(dāng)前報(bào)文為飛機(jī)號(hào)為B-5513的1航段OUT報(bào),此時(shí)系統(tǒng)邏輯判斷上一航段的IN報(bào)漏發(fā)了。
圖12 系統(tǒng)接收ON報(bào)
由圖13可知,當(dāng)接收到該OUT報(bào)時(shí),系統(tǒng)判斷的流程為:讀入當(dāng)前的OUT報(bào)文,將報(bào)文內(nèi)容進(jìn)行解析獲取參數(shù)信息,由于報(bào)文類(lèi)型為OUT報(bào),進(jìn)入OUT報(bào)邏輯判斷,由于當(dāng)前報(bào)文信息中不含目的機(jī)場(chǎng)信息,所以判斷當(dāng)前報(bào)文機(jī)場(chǎng)代碼無(wú)效,進(jìn)入下一判斷,又由于當(dāng)前報(bào)文燃油量值大于上一報(bào)文的燃油量值,所以判斷燃油消耗小于0,由此得到結(jié)論為航段改變。
圖13 系統(tǒng)漏發(fā)IN報(bào)
OOOI報(bào)文往往在實(shí)際的通信過(guò)程中不可避免地會(huì)出現(xiàn)多種異常情況,例如人為因素、設(shè)備故障、環(huán)境干擾等導(dǎo)致報(bào)文的不確定性。本文借助專(zhuān)家系統(tǒng)設(shè)計(jì)思路和運(yùn)行流程,提出了一種基于知識(shí)輔助和OOOI報(bào)文的飛機(jī)航段識(shí)別方法。以機(jī)載燃油油量、預(yù)計(jì)到達(dá)時(shí)間和位置報(bào)等作為輔助知識(shí),利用實(shí)際OOOI報(bào)文中的關(guān)鍵參數(shù)作為航段推理的事實(shí)依據(jù),建立了一套完整的航段識(shí)別邏輯和知識(shí)庫(kù)。最后,以真實(shí)報(bào)文為例,針對(duì)報(bào)文漏發(fā)的情況進(jìn)行航段識(shí)別診斷并分析,實(shí)驗(yàn)結(jié)果表明,該方法可對(duì)航段進(jìn)行有效劃分,實(shí)現(xiàn)航段改變、航段不變、報(bào)文無(wú)效和航段撤銷(xiāo)等判別結(jié)果,增加航段識(shí)別的準(zhǔn)確程度和效率。