朱國棟,楊樂,孫少明
民航氣象報文質量控制算法的開發(fā)設計
朱國棟,楊樂,孫少明
(民航新疆空中交通管理局空管中心氣象中心,新疆 烏魯木齊 830000)
按照民航氣象行業(yè)標準的定義和要求,設計開發(fā)民航氣象報文質控與編發(fā)系統(tǒng),實現(xiàn)對民航氣象觀測、預報及重要氣象情報等報文內容的交互編寫、解碼分析及內容糾錯告警和要素解析,通過定義完善的質量控制算法,降低民航氣象情報在編發(fā)過程中出現(xiàn)錯誤的可能性,提高民航氣象情報的質量。
民航氣象報文;質量控制;氣象業(yè)務;機場預報
民用航空氣象業(yè)務中,民航氣象情報主要包含機場觀測實況(METAR、SPECI)、機場預報(TAF)、重要氣象情報(SIGMET)以及低空氣象情報(AIRMET)等,其中機場觀測實況主要用于描述機場天氣的實際情況,包括機場的風、溫度、氣壓、天氣現(xiàn)象、能見度、云以及RVR等要素的觀測值;機場預報則主要用于描述未來機場天氣的演變情況,包括風、溫度、能見度、天氣現(xiàn)象及云等要素的預測值;重要氣象情報、低空氣象情報等主要用于描述特定區(qū)域內顛簸、積冰、火山灰、熱帶氣旋以及對流等重要天氣的分布、強度變化。
航空公司、機場等民航運行單位通過查閱相關氣象情報,了解機場天氣、航路天氣的重要變化,為航班計劃的執(zhí)行提供客觀的情報支持,而氣象情報內容的準確與否,對民航航班運行、公司決策有重要影響。
目前中國已有相應的系統(tǒng)研究,實現(xiàn)了對民航氣象報文的定時監(jiān)測,確保相應的氣象情報按時準點編發(fā),防止氣象情報出現(xiàn)漏發(fā)[1],尤其是機場觀測報文的編發(fā),已有相應的業(yè)務平臺對機場觀測報文的發(fā)布流程進行完整的監(jiān)控[2-4],同時也具備觀測報文內容的質量監(jiān)控[5]和內容解析[6],但是缺乏統(tǒng)一的業(yè)務平臺,來實現(xiàn)機場觀測、預報、重要氣象情報等多種類型的報文質量控制、編輯、發(fā)送業(yè)務平臺的研究,本文嘗試按照相關行業(yè)標準和規(guī)范要求,設計開發(fā)完整的氣象情報糾錯算法,實現(xiàn)對各類氣象情報的質量控制和編輯發(fā)送功能,減少氣象情報內容的編發(fā)過程中可能出現(xiàn)的錯誤,提高氣象情報發(fā)布質量。
結合業(yè)務平臺開發(fā)要求和業(yè)務實際應用場景的需要,算法使用C#語言進行開發(fā),依托高效的正則表達式,實現(xiàn)對民航氣象報文的類型判斷、內容分解、字段判別、關鍵字過濾以及報文邏輯關系判斷,通過可配置的模塊化實現(xiàn)各項功能,并預留拓展接口,為后續(xù)的報文指控提供擴展接口,確保算法的準確性、高效性和可擴展性。
具體算法流程,以機場預報(TAF)為例,整體流程如圖1所示。
圖1 機場預報質量控制流程示意圖
民航氣象報文主要包含機場觀測、機場預報以及重要氣象情報等報文類型,每種報文類型內容差異巨大,需要設計匹配不同的質量控制算法。因此算法首先需要輸入報文的類型識別,再結合報文類型啟用不同的糾錯算法。具體實現(xiàn)方法為:通過正則表達式,按照報文內容,匹配相應的關鍵字段,具體匹配規(guī)則如表1所示。
表1 報文類型識別
序號類型正則表達式 1機場實況觀測Regex.Match(FCTB.Text, "METAR|SPECI").Success 2機場預報Regex.Match(FCTB.Text, "TAF ").Success 3重要氣象情報Regex.Match(FCTB.Text, "SIGMET").Success 4低空氣象情報Regex.Match(FCTB.Text, "AIRMET").Success
在完成報文類型識別后,算法需要拆解一份報文內容,通常一份民航氣象報文以“=”符號結束,不同的字段內容使用空格進行分割,為了后續(xù)的報文質量控制,算法將通過正則表達式,按照空格或換行符進行拆解,并剔除多余的空格,為后續(xù)報文質量控制提供逐個報文字段數(shù)組的支持。
民航氣象報文中每個字段都有固定含義,且具備固定的特征、內容或字段長度,算法依據(jù)行業(yè)標準《民航氣象第6部分電碼》(以下簡稱行標)中的定義,按照相應的類型報文內容,判別每個字段的含義,具體如表2所示。按照行標的定義以及實際業(yè)務工作要求,對報文字段進行逐項比對,識別報文字段的特征屬于那種字段類型,并按照字段類型進行標識。機場實況報文字符識別主要規(guī)則按照表2提供的清單進行相關內容的判別,判斷檢查報文字段中字母、數(shù)字以及“+、-、/”符號是否符合行標的具體規(guī)定。例如云組信息,云量必須由FEW、SCT、OVC、BKN組成,云高由3位數(shù)字組成,符合則判斷該字段正確。同理可得其他特征字段檢的檢查方法,在此不再贅述。而機場預報、重要氣象情報識別算法方法相同,此處不單獨羅列具體字符特征。
報文字符識別是將逐個報文字段內容孤立地進行檢查判斷,但是實際業(yè)務中的報文內容,報文字段前后內容是關聯(lián)存在的,比如溫度與天氣現(xiàn)象、云的高度等信息,所以報文必須進行內容的邏輯判斷。
報文字符識別完成后,報文字段被逐個標記后,即可進行報文的邏輯關系檢測。通過篩選、統(tǒng)計行業(yè)標準、氣象要素歷史特征等信息,本算法實現(xiàn)地面平均風速與陣風、主導能見度與天氣現(xiàn)象、不同云組分布以及最高最低溫度的組合,并分解BECMG和TEMPO中包含的時間轉換組,判斷時間轉換組是否存在于有效時間內,此處以機場預報為例,羅列相應的邏輯檢測內容,具體如表3所示。
表2 機場實況報文字符識別
序號字符識別含義實例 1機場代碼報文類型、機場代碼、時間等信息METAR ZWWW 2風風向、風速、陣風、風向變化范圍18004G10MPS 3能見度能見度具體數(shù)值0800,9999 4天氣參照4678電碼表FZFG,-SHSN 5云云量,云高FEW030CB,BKN033 6RVR跑道視程R07/P2000 7溫度、露點溫度氣溫、露點溫度12/10 8修正海平面氣壓 Q1011 9垂直能見度 VV002 10趨勢預報機場未來天氣變化趨勢略 11其他項目CAVOK、NSC等略
表3 機場預報報文邏輯關系判斷清單
序號檢查內容檢查條件錯誤案例 1風陣風風速與平均風速絕對差≥5 m/s12010G02MPS 2主導能見度與天氣能見度低于某數(shù)值必須與指定的天氣現(xiàn)象配合出現(xiàn)1200 FG 3多層云分布云高應當由低到高編報OVC040 BKN020 4溫度排序最高溫度應當大于最低溫度TX13/09Z TN26/11Z 5溫度極值最高、最低溫度時間應當出現(xiàn)在報文有效時間內0009的TAF報文中出現(xiàn)TX20/08Z TN12/12Z 6BECMG、TEMPO的時間轉換組時間轉換組應當在報文有效時間內1221的TAF報文中出現(xiàn)BECMG 0809
機場實況與重要氣象情報的邏輯關系判斷與機場預報類似,依托報文字符識別后的標記,判斷報文字段內容前后及要素本身的極值分布,進行相關的邏輯關系檢測,確保報文內容不存在邏輯上的錯誤。
本模塊綜合分析報文類型識別、內容拆解、字段內容識別和報文邏輯關系的算法輸出信息,結合業(yè)務邏輯,將算法全過程的輸出信息進行分析和綜合,進而獲得報文每個字段的報文指控信息,包括文字描述和相應的錯誤標識信息,同時輸出信息具備完善的文檔,可作為其他業(yè)務平臺開發(fā)應用的輸入信息。
民航氣象報文質控算法作為民航氣象業(yè)務通用模塊,可直接作為民航氣象業(yè)務平臺的基礎支持模塊進行引用,相關業(yè)務平臺開發(fā)人員不必重新設計開發(fā)相關算法,極大地簡化了民航氣象情報發(fā)布平臺的開發(fā)工作,減少了相應平臺的開發(fā)成本。目前,本算法已作為機場報文編發(fā)系統(tǒng)的控件,實現(xiàn)相應的業(yè)務化應用,具體如圖2所示,本系統(tǒng)可自動生成報文的報頭和時間字段,實時檢測預報人員編輯輸入的字符,自動提示報文內容缺失、錯誤部分,并將部分錯誤內容進行標紅高亮顯示,實現(xiàn)相應的糾錯信息可視化。
圖2 民航氣象情報編發(fā)系統(tǒng)軟件示意圖
民航氣象情報的內容直接關系著民航氣象服務工作的質量,報文質量控制算法是民航氣象業(yè)務平臺開發(fā)中最基礎的一環(huán),通過算法實現(xiàn)機場觀測、預報及重要氣象情報等多類型民航氣象報文的質量控制,并實現(xiàn)對報文內容的解析,為民航氣象業(yè)務平臺、氣象服務系統(tǒng)提供高效的算法支持,可直接拓展應用到民航氣象報文編發(fā)、業(yè)務監(jiān)控、報文質量評定以及個性化氣象服務工作,改善民航氣象報文數(shù)據(jù)的分析能力,進而提高民航氣象業(yè)務系統(tǒng)的自動化程度。
[1]梁欣,黎巍,俞霄靚,等.基于Shell腳本的氣象報文遲發(fā)漏發(fā)監(jiān)控程序設計與實現(xiàn)[J].計算機時代,2015(3):46-49.
[2]朱勍,唐民.民航氣象觀測報文監(jiān)控和反饋系統(tǒng)研究[J].中國民航飛行學院學報,2015,27(2):77-80.
[3]王健治.民航氣象觀測編發(fā)報系統(tǒng)的開發(fā)及介紹[J].氣象研究與應用,2016,37(1):101-103,114.
[4]高宇.高可靠性民航氣象情報發(fā)布系統(tǒng)設計[J].民航管理,2016(11):71-73.
[5]徐慶,張洋飛.民航氣象觀測報文質量檢測系統(tǒng)研究[J].科技與創(chuàng)新,2018(17):42-44.
[6]李燦.基于Python正則表達式的航空氣象觀測報文檢測[J].電腦知識與技術,2017,13(25):227-229.
V321.2
A
10.15913/j.cnki.kjycx.2019.20.022
2095-6835(2019)20-0053-02
〔編輯:張思楠〕