李 濤 周歡樂
(南京信息工程大學電子與信息工程學院 江蘇 南京 210044)
?
臺站級地面氣象觀測數(shù)據(jù)綜合質(zhì)控系統(tǒng)設(shè)計
李濤周歡樂
(南京信息工程大學電子與信息工程學院江蘇 南京 210044)
氣象與地球中有關(guān)學科的研究需要準確可靠的地面氣象觀測資料作為支撐,這是提高氣候預測水平的重要前提。針對這種情況,需要對地面氣象觀測數(shù)據(jù)進行綜合質(zhì)量控制系統(tǒng)的設(shè)計。系統(tǒng)包括后臺數(shù)據(jù)結(jié)構(gòu)的設(shè)計及前臺基于多線程操作機制的質(zhì)控系統(tǒng)的設(shè)計。系統(tǒng)在地面氣象資料數(shù)據(jù)入庫之前進行綜合質(zhì)量控制,控制方法除了傳統(tǒng)的極值、時間、內(nèi)部一致性檢查之外,還運用Logistic回歸模型,加入設(shè)備狀態(tài)的研究。系統(tǒng)不僅提高了數(shù)據(jù)處理效率,也使氣象觀測數(shù)據(jù)具備了更好的代表性、準確性和比較性。
地面氣象觀測資料質(zhì)量控制Logistic回歸設(shè)備狀態(tài)多線程
在制定天氣預報以及氣候預測時,地面氣象數(shù)據(jù)是這個環(huán)節(jié)的重要基礎(chǔ)資料,數(shù)據(jù)質(zhì)量越高,天氣預報和氣候預測就越準確。二十世紀九十年代末以來,我國著手在實驗中對個別臺站創(chuàng)建自動站,伴隨軟件硬件各方面技術(shù)的不斷成熟,自動氣象站建設(shè)的速率也顯著提升。到了2011年,我國的地面自動氣象站[1]的數(shù)量已經(jīng)達到了2 500多個。
在海量數(shù)據(jù)需要進行采集、傳輸以及保存的要求下,地面氣象站的觀測手段越來越趨于自動化,數(shù)據(jù)傳輸?shù)乃俾室膊粩嗵嵘4藭r,為了確保用戶可以及時迅速的使用到盡可能可靠的觀測數(shù)據(jù)信息,并且盡可能地讓預報人員做出確切的業(yè)務決策,急需研制一套質(zhì)控方法,用來標記可疑觀測記錄或者錯誤觀測記錄。從人類有器測量開始,地面氣象資料觀測數(shù)據(jù)就是最長久的氣象資料,同時也是判斷氣候狀況的關(guān)鍵參數(shù)。氣象事業(yè)的發(fā)展將直接受到來自氣象觀測資料準確性的影響。而地面氣象數(shù)據(jù)又最容易受到下墊面環(huán)境狀態(tài)的改變、人為觀測誤差以及設(shè)備狀態(tài)等因素的影響,所以地面氣象資料的質(zhì)量控制顯得尤為重要。
在此背景下,本文設(shè)計了一種臺站級地面觀測數(shù)據(jù)綜合質(zhì)量控制系統(tǒng)。采用綜合質(zhì)量控制方法對氣象資料進行處理,以visual studio作為開發(fā)平臺,以C#作為開發(fā)語言,使用多線程操作機制提高系統(tǒng)處理氣象資料的效率;進行數(shù)據(jù)庫設(shè)計以達到存儲海量氣象數(shù)據(jù)的效果;進行綜合質(zhì)控方法的研究,保證氣象資料的準確性、代表性,提高氣候預測的可靠性。
本文以數(shù)據(jù)質(zhì)量控制和評估業(yè)務系統(tǒng)為基礎(chǔ)平臺,用計算機技術(shù)實現(xiàn)各類氣象數(shù)據(jù)的質(zhì)量控制、評估和數(shù)列均一性檢驗,以人機交互的方式實現(xiàn)氣象資料的訂正。
1.1傳統(tǒng)質(zhì)量控制方法應用
氣象觀測資料會反映出大氣變量的具體物理特征和氣候特征,傳統(tǒng)的質(zhì)量控制方法正是基于這些基本規(guī)律制定的,并且,傳統(tǒng)的質(zhì)量控制方法也在各國的質(zhì)量控制中起到主導作用。實時檢查是對地面氣象觀測資料中各要素進行質(zhì)控的主要手段,其檢查手段囊括人機交互辨別手段,檢查方法包括數(shù)據(jù)預處理、氣候?qū)W界限值檢查、時間一致性檢查、內(nèi)部一致性檢查等[2]。由于該系統(tǒng)適用于臺站級氣象數(shù)據(jù)的質(zhì)量控制,不涉及多站,因此不考慮空間一致性檢查。
1.2基于數(shù)據(jù)挖掘算法的質(zhì)量控制方法研究
地面氣象資料歷史長遠,由于氣象站探測設(shè)備故障、人工誤差等原因不可避免的會出現(xiàn)一些誤差。雖然通過傳統(tǒng)的質(zhì)量控制方法可以實現(xiàn)數(shù)據(jù)準確性提高,但由于設(shè)備狀態(tài)異常也會引起的觀測數(shù)據(jù)異常[3]。在過往的質(zhì)控系統(tǒng)中都需要通過人工檢查設(shè)備傳感器狀態(tài)來判斷觀測記錄不正常是否由設(shè)備狀態(tài)引起,給觀測數(shù)據(jù)的處理和后期使用帶來了不便與滯后。因此,本系統(tǒng)中我們采用了因子分析法以及Logistic回歸模型等數(shù)據(jù)挖掘相關(guān)算法,將實時設(shè)備狀態(tài)文件加入討論,對地面氣象觀測數(shù)據(jù)進行進一步質(zhì)控。當觀測值在某個時間點或時間段要素數(shù)據(jù)出現(xiàn)突變時,系統(tǒng)能夠自動檢測出突變是由設(shè)備狀態(tài)異常造成,還是出現(xiàn)某種天氣現(xiàn)象造成。為往后的氣象數(shù)據(jù)應用、氣候預測、災害預警提供更有說服力的數(shù)據(jù)支持。
1.2.1因子分析法
因子分析的主要內(nèi)容是將許多指標或因素與多種因素的相關(guān)性用個別幾個因素來描述,也就是說,將相關(guān)性較強的幾個因素放到一種類型里面,將這種類型的變量看作一個因素,用相對少的幾個因素體現(xiàn)出原始資料的多數(shù)重要信息。
通過SPSS因子分析實驗,以云高、云量為例,將云高、云量各要素分解與降維,綜合原始變量,確定模型最終變量,結(jié)果如表1所示。新變量中或者是由多個原始變量組合而成,或者是直接保留某個原始變量。新變量都是互不相關(guān)的,這些新變量能夠解釋原始變量的主要信息,更重要的是它們彼此之間不存在相關(guān)性,可以作為進一步研究的主要依據(jù)。
表1 降維前后對比圖
1.2.2Logistic回歸模型
利用Logistic回歸進行預測,將設(shè)備狀態(tài)作為新的變量,逐一與觀測要素變量進行回歸。Logistic回歸模型是一種分類模型,因變量Z是一個二分類變量,其取值Z=1和Z=0,分別表示加入設(shè)備狀態(tài)后要素的預測值與實際觀測值一致和不一致。影響Z取值的n個自變量分別為X1,X2,…,Xn,其中,X1,X2,…,Xn-1為降維后的觀測要素變量,Xn為設(shè)備狀態(tài)變量。在這n個自變量作用下,預測值與實際值一致的條件概率為P=P(Y=1|X1,X2,…,Xn),則Logistic回歸模型可表示為:
Z=B0+B1X1+B2X2+…+BnXn
(1)
(2)
式中,P代表預測值與實際值一致的概率;Z代表權(quán)重向量;是回歸系數(shù),輸出結(jié)果P趨近于0.5表示預測值與實際不一致,趨近于0.73表示一致[4]。以此觀察設(shè)備狀態(tài)與最終預測數(shù)據(jù)誤差率的關(guān)系,進而確定設(shè)備狀態(tài)的質(zhì)量控制區(qū)間,以此給出設(shè)備狀態(tài)的質(zhì)量控制碼。
1.3質(zhì)量控制對數(shù)據(jù)可疑度分級及處理
系統(tǒng)將對數(shù)據(jù)進行各項檢查處理,對于通過檢查的數(shù)據(jù)則認為是經(jīng)過質(zhì)控的數(shù)據(jù),視為可信數(shù)據(jù),沒有通過檢查的數(shù)據(jù)被視為可疑數(shù)據(jù),系統(tǒng)對可疑數(shù)據(jù)設(shè)定了四種可疑度。
(1) A級:有足夠的證據(jù)證明其為錯誤數(shù)據(jù),直接剔除。
(2) B級:強可疑數(shù)據(jù),為危險等級數(shù)據(jù),將其從業(yè)務數(shù)據(jù)庫中剔除,作為參考檢測數(shù)據(jù)列入?yún)⒖紨?shù)據(jù)庫保存。
(3) C級:可疑數(shù)據(jù),數(shù)據(jù)比較可疑,但是具有一定的可信度,對此類數(shù)據(jù)只進行本地保存,不上報。
(4) D級:弱可疑數(shù)據(jù),數(shù)據(jù)有一點可疑,但可以作為可信數(shù)據(jù)進行處理,但要進行弱可疑備注。
(5) E級:正常數(shù)據(jù)。
1.4綜合使用質(zhì)控方法
為了讓入庫的氣象資料數(shù)據(jù)更準確、更權(quán)威、更有代表性,所以推薦綜合使用多種質(zhì)控方法對氣象資料進行排錯、控制以提高精度。圖1為綜合使用質(zhì)控方法流程圖。
圖1 綜合質(zhì)控方法流程圖
系統(tǒng)設(shè)計的任務是基于軟件體系結(jié)構(gòu)的系統(tǒng)邏輯模型的分析設(shè)計,實現(xiàn)全面的質(zhì)量控制系統(tǒng)的地面觀測數(shù)據(jù)。系統(tǒng)物理模型必須符合邏輯模型,設(shè)計合理的系統(tǒng)架構(gòu),完成邏輯模型所規(guī)定的信息處理能力;集成多種實時數(shù)據(jù)質(zhì)量控制功能提高數(shù)據(jù)準確率,將綜合質(zhì)量控制算法模型進行編碼,生成類庫.dll文件,方便氣象業(yè)務系統(tǒng)使用;采用多線程操作機制對氣象數(shù)據(jù)進行處理,提高系統(tǒng)的穩(wěn)定性能;以PostgreSQL9.2作為后臺數(shù)據(jù)庫,達到提高數(shù)據(jù)存儲及處理效率的目的,提高了系統(tǒng)對海量氣象資料處理的吞吐率。
2.1系統(tǒng)架構(gòu)
考慮到系統(tǒng)對網(wǎng)絡數(shù)據(jù)負載、安全性、穩(wěn)定性以及拓展要求較高,本系統(tǒng)選擇使用C/S(Client/Sever)開發(fā)方式,但不再局限于三層架構(gòu)的開發(fā)模式。系統(tǒng)總體架構(gòu)分為四層體系結(jié)構(gòu):設(shè)備層、通信解析層、匯聚處理層和表現(xiàn)層,如圖2所示。每一層根據(jù)各自的功能定義一些基礎(chǔ)類,派生出來的不同對象可以組合覆蓋類似的質(zhì)控系統(tǒng)[5,6]。
圖2 系統(tǒng)多層架構(gòu)設(shè)計圖
2.2質(zhì)控算法類庫
系統(tǒng)對研究得到的地面氣象觀測數(shù)據(jù)綜合質(zhì)量控制算法進行編碼,將算法生成綜合質(zhì)量控制類庫,以dll文件形式存在。類庫對外部程序提供接口,通過引用類庫,輸入解析賦值后的要素變量,輸出要素值的綜合質(zhì)控碼。生成dll類庫文件,使算法程序擁有良好的封裝性,同時方便其他氣象業(yè)務系統(tǒng)調(diào)用。如圖3為類庫概要圖。
圖3 類庫概要圖
2.3后臺數(shù)據(jù)庫
PostgreSQL是由美國伯克利大學設(shè)計的數(shù)據(jù)庫系統(tǒng),經(jīng)過不斷的設(shè)計發(fā)展,最終發(fā)展為一種對象-關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。這是一種開源的數(shù)據(jù)庫系統(tǒng),經(jīng)過發(fā)展已經(jīng)成為開源界功能最先進的開放源代碼的數(shù)據(jù)庫系統(tǒng)之一[7]。PostgreSQL可以實現(xiàn)多種版本并發(fā)運行,對目前我們所知的SQL構(gòu)件的支持性較高,具備良好的開放語言綁定功能。
PostgreSQL作為一種開放的數(shù)據(jù)庫管理工具,與其他的數(shù)據(jù)庫系統(tǒng)相比,有著鮮明特征,包括:①面向?qū)ο筇卣?,可以任意添加屬性;②?shù)據(jù)類型豐富,不僅包括數(shù)字字符,還可以包含點線面等類型;③全面支持SQL;④可以與Web集成,解決Web問題能力更高,支持ODBC和JDBC;⑤大數(shù)據(jù)庫,可以支持海量數(shù)據(jù)存儲達到100 GB。系統(tǒng)的良好支持特性可以為未來前臺數(shù)據(jù)提取的項目開發(fā)提供良好的后臺數(shù)據(jù)庫支持[8]。
2.4多線程處理
數(shù)據(jù)資料是以Txt報表的方式存在,通過3G/4G網(wǎng)絡傳遞到中心服務器,由于報文種類的多樣性系統(tǒng)采用了多線程的操作方式[9,10]。如圖4所示,報文A使用相對應的主線程、讀寫線程、解析線程、入庫線程。
在使用多線程處理數(shù)據(jù)的過程中,一方面使用了線程同步機制,即處理數(shù)據(jù)的各線程依賴掃描主線程,需要掃描線程提供消息進行喚醒調(diào)用,而其他線程則是處于等待狀態(tài)。另一方面,當有多個線程同時需要訪問資源時,則需要使用一個互斥機制,即任何時刻只允許一個線程訪問資源,如果剩余線程也需要訪問此資源,就需要等待使用資源的線程釋放該資源才能對該資源進行訪問。
圖4 數(shù)據(jù)處理多線程操作流程圖
2.5系統(tǒng)總體設(shè)計
本系統(tǒng)輸入項為TXT格式的《地面氣象觀測數(shù)據(jù)文件》,需將文件數(shù)據(jù)導入數(shù)據(jù)庫,供查詢、統(tǒng)計、分析使用。系統(tǒng)的每個模塊之間需要進行信息的傳輸,信息的傳輸需要通過接口來實現(xiàn)。數(shù)據(jù)在傳遞之前需要按照特定數(shù)據(jù)結(jié)構(gòu)要求進行封裝,以參數(shù)的形式輸入。經(jīng)過函數(shù)的調(diào)用,將函數(shù)返回值輸出。系統(tǒng)擁有的優(yōu)勢在于:①支持多終端操作;②支持多用戶的并行操作;③系統(tǒng)響應時間較短;④有權(quán)限設(shè)置;⑤具有備份功能[11,12]。系統(tǒng)主體流程分為以下幾個步驟:
1) 觀測員對報告書進行填報,數(shù)據(jù)錄入,觀測員包括縣級,市級,省級基站的觀測人員;
2) 觀測的數(shù)據(jù)會以類似于GPRS方式上傳到中心服務器,中心服務器會對當前的氣象數(shù)據(jù)進行預處理,再提交審核;
3) 數(shù)據(jù)審核模塊進行審核,審核部門為省局和國家局,相關(guān)的審核結(jié)果為省級業(yè)務管理人員審核報告和國家級業(yè)務管理人員審核報告,根據(jù)報告反饋信息對報表進行修改;
4) 審核之后會產(chǎn)生告警模塊和日志模塊信息,告警模塊將警告信息以短信的方式提交上傳,日志模塊則是將系統(tǒng)運行的具體信息做記錄,并將權(quán)限進行更變,認定用戶的權(quán)限;
5) 信息審核完畢之后會進入質(zhì)量控制模塊,質(zhì)控模塊會綜合使用各種控制方法及手段對當前的地面氣象資料進行處理,包括人工檢查,算法檢驗等;
6) 經(jīng)過質(zhì)量控制的資料會產(chǎn)生多種級別的數(shù)據(jù)類型,需要判斷數(shù)據(jù)的異常性,異常則進入異常處理環(huán)節(jié)給出提示或標記;
7) 最后則是入庫模塊,入庫模塊接收多種類別的數(shù)據(jù),包括警告信息、日志信息、用戶權(quán)限信息、未經(jīng)過質(zhì)量控制的信息、質(zhì)控處理后的信息等等,入庫程序?qū)@些信息進行具體的判斷操作處理,最后做入庫處理。圖5為系統(tǒng)總體設(shè)計流程圖。
圖5 系統(tǒng)總體設(shè)計流程圖
本系統(tǒng)采用C#語言和最新的.NET技術(shù)編程[13],同時結(jié)合PostgreSQL開源數(shù)據(jù)庫,系統(tǒng)運行環(huán)境為Windows 7,實際運行效果表明系統(tǒng)各項性能良好,能夠滿足當前用戶基本需求。
3.1質(zhì)控入庫界面
用戶輸入獲取氣象資料文件所在目錄,點擊報文質(zhì)控入庫按鈕后,進行批量文件的處理。系統(tǒng)響應用戶請求獲取文件名打開文件,逐行讀取文件數(shù)據(jù),調(diào)用對應文件類別的數(shù)據(jù)處理類對文件進行解析、質(zhì)控、入庫。文件的處理狀態(tài)和處理結(jié)果在DataGridView中呈現(xiàn)出來。如圖6為入庫效果圖。
圖6 入庫效果圖
3.2質(zhì)控查詢界面
查詢質(zhì)控結(jié)果時,用戶可在查詢界面選擇查詢要素、查詢時間后發(fā)出查詢指令,系統(tǒng)響應用戶請求從數(shù)據(jù)庫中查詢相應的要素值及其質(zhì)控碼,通過質(zhì)控碼確定數(shù)據(jù)可信度顏色,并在DataGridView中呈現(xiàn)出來,如圖7為質(zhì)控查詢效果圖。
圖7 質(zhì)控查詢效果圖
高質(zhì)量的地面資料觀測數(shù)據(jù)不僅有利于氣象氣候分析研究和天氣預報,而且在氣象防災減災決策以及氣象信息共享中也有著重大的使用價值和指導意義?;跀?shù)據(jù)挖掘算法的地面氣象觀測綜合質(zhì)控系統(tǒng)在實施地面氣象資料入庫前,對地面氣象資料進行準確性研究,并將研究成果放到質(zhì)控入庫系統(tǒng)設(shè)計中,這將大大地提高入庫觀測數(shù)據(jù)的準確性、權(quán)威性、參考性。系統(tǒng)的具體設(shè)計采用多線程操作方法,架構(gòu)設(shè)計突破三層架構(gòu)模式,系統(tǒng)的穩(wěn)定性,可移植性得到增強。在接下來的研究中,將進一步運用數(shù)據(jù)挖掘的算法到觀測數(shù)據(jù)的質(zhì)量控制中來,提高觀測資料的準確性。
[1] 韓海濤,李仲龍.地面實時氣象數(shù)據(jù)質(zhì)量控制方法研究進展[J].干旱氣象,2012,30(2):261-265.
[2] 中國氣象局.中華人民共和國氣象行業(yè)標準地面觀測記錄質(zhì)量控制QX/T 66-2007[S].北京:氣象出版社,2007:1.
[3] 王倩君.地面氣象觀測數(shù)據(jù)文件質(zhì)量控制研究[J].北京農(nóng)業(yè),2014,24(12):154-155.
[4] 許沖,徐錫偉.邏輯回歸模型在玉樹地震滑坡危險性評價中的應用與檢驗[J].工程地質(zhì)學報,2012,20(3):326-333.
[5] 唐榮,戴永壽,孫洪濤,等.海洋水文氣象觀測數(shù)據(jù)采集監(jiān)控系統(tǒng)設(shè)計與開發(fā)[D].中國石油大學,2010.
[6] 王會品,徐蔚然. 新一代天氣雷達數(shù)據(jù)管理與質(zhì)控系統(tǒng)[D]. 北京郵電大學,2012.
[7] 郭嘉凱,程夢瑤.開源的力量[J]. 軟件和信息服務,2015(3):20-29.
[8] 張愛國,鄔群勇,王欽敏,等.基于PostgreSQL數(shù)據(jù)庫的GML數(shù)據(jù)存儲[J].測繪科學,2008,33(1):195-200.
[9] 薛建軍,周杰,杜景林.改進型實時氣象資料處理系統(tǒng)設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2012,33(4):1623-1628.
[10] 宋海友,張巧珍. 多線程技術(shù)在數(shù)據(jù)通信中的應用[J]. 電子技術(shù)與軟件工程,2015,20(5):64.
[11] 王海軍,楊志彪,楊代才,等.自動氣象站實時資料自動質(zhì)量控制方法及其應用[J].氣象,2007,33(10):102-109.
[12] 陳少雄,盧尚龍,丁建勛,等.數(shù)據(jù)監(jiān)理在基礎(chǔ)信息系統(tǒng)數(shù)據(jù)入庫中的應用[J].地理空間信息,2008,6(4):33-39.
[13] 王健,苗永康,周峰. 基于.NET的飛信遠程控制系統(tǒng)[J].單片機與嵌入式系統(tǒng)應用,2014(11):32-34.
DESIGN OF COMPREHENSIVE QUALITY CONTROL SYSTEM FOR STATION-LEVEL SURFACE METEOROLOGICAL OBSERVATION DATA
Li TaoZhou Huanle
(College of Electronic and Information Engineering, Nanjing University of Information Science and Technology, Nanjing 210044, Jiangsu,China)
Accurate and reliable surface meteorological data is required to support the research of related disciplines in meteorology and earth, and this is an important prerequisite for improving the climate prediction level. In light of this situation, there is the need in designing a comprehensive quality control system for surface meteorological observation data. The system includes the design of backstage data structure as well as the design of foreground quality-check system based on multithreading operation mechanism. The system makes comprehensive quality control on surface meteorological data before to be stored. Apart from the traditional means such as extreme value, time, internal consistency check, the control method also employs Logistic regression model to add the equipment state into research. The system not only improves the efficiency of data processing, but also makes the data of surface meteorological observation with better representation, accuracy and comparison.
Data of surface meteorological observationQuality controlLogistic regressionEquipment StateMultithreading
2015-04-10。公益性行業(yè)(氣象)科研專項項目(GYHY201306070)。李濤,副教授,主研領(lǐng)域:數(shù)據(jù)挖掘,計算機軟件。周歡樂,碩士生。
TP311.1
A
10.3969/j.issn.1000-386x.2016.09.014