摘要:隨著人工智能技術的發展,人工智能技術被越來越多地應用于氣象科學中,以此解決各種氣象問題,尤其是氣象預報的問題。專家系統這一人工智能技術與地理信息系統結合后,不僅能夠處理多維和海量數據,而且能夠進行決策,因此結合了地理信息系統的專家系統在氣象預報中有重要的研究意義。
關鍵詞:WebGIS,專家系統,氣象預報
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2011)04-0844-02
地理信息系統(GIS)發展迅猛,已經成功應用到城市規劃、交通、軍事等各個領域,在氣象領域中的應用也越來越廣。氣象數據中的氣壓、溫度等參數都是相對于一定的地理空間而言的,所以從本質上說也是一些地理信息,同樣適用于地理信息系統(GIS)。氣象專家系統具有大量的氣象知識,并可以將它們應用到氣象預報與決策領域。
1 相關理論基礎
作為信息系統的一種,地理信息系統(GIS)有所有信息系統的特點,不同之處在于它處理的各種信息與地理位置有關,并且采用地理模型分析方法將這些信息進行地理編碼,提供動態的地理信息,以此進行決策支持。GIS實際上就是地理數據與相關計算機程序的組合,當它面對具有一定地學知識的用戶時,原來毫無意義的地學數據就動態變為地理空間信息模型數據,以讓用戶得到對氣象等自然過程的預測信息。
地理信息系統(GIS)的核心問題“可以歸納為五個方面:位置、條件、變化趨勢、模式和模型[1]”。要實現上述核心功能,需要能夠對地理數據進行如下操作:數據獲取、處理、存儲、分析、檢索以及交互等。然而,隨著現代通信技術和網絡技術的發展,單一的地理信息系統(GIS)已經難以滿足需求,Internet技術為WebGIS的發展提供了契機。WebGIS是“利用互聯網技術和現代通信技術,擴展并完善傳統地理信息系統功能的一項新技術[2]”。可以通過WebGIS發布地理空間數據,并進行空間分析,WebGIS能夠將不同地域的地理信息整合起來進行數據的組織、分析、管理以及查詢等操作,從而成為真正面向大眾的系統。
專家系統是“具有大量專門知識,并能運用這些知識解決特定領域問題的計算機系統[3]”。常見的一種專家系統是產生式規則專家系統。產生式規則主要包括三個部分:規則集、綜合數據庫以及控制系統。問題的狀態描述構成了綜合數據庫,如果問題相對簡單,狀態描述可以是向量、矩陣等基本形式;如果問題相對復雜,狀態描述也可以由樹、圖等構成。產生式規則集的目的是對滿足前提條件的狀態進行某一操作,其基本形式為:IF<條件> THEN <操作>。控制系統首先決定選擇哪條適用的規則,然后根據是否滿足終止條件來決定是否該終止產生式系統。
2 氣象預報專家系統
氣象預報專家系統是專家系統在氣象領域的應用,此系統中以特定方式預存了大量的氣象知識,根據最新的氣象數據模擬氣象專家預報氣象的思路,并且按照一定的推理規則進行氣象預報,以為用戶解決氣象預報問題。由上可知,氣象預報專家系統中主要有知識庫和推理機兩個組成部分,推理機根據知識庫中的內如分析、解決氣象預報問題,因此是專家系統的核心。
2.1 氣象知識的組織和表示
氣象預報專家系統中的知識主要是指事實性指數,也就是氣象實體的空間關系和內在屬性,如位置關系、方向關系以及天氣系統的強度等等。對于氣象預報專家系統中的氣象數據,采用基于規則知識表示與面向對象相結合的方法進行描述。
面向對象的方法將具有共同特征的對象組成類,并將對這些對象進行操作的行為和狀態封裝在一起。也就是說,知識單元是面向對象方法描述知識的基礎,封裝了地理空間數據以及對數據的操作,并將這二者作為整體使用的知識類。舉例來說,要根據已有的氣象數據來判斷、預報未來的氣象信息,此時不僅僅需要知道天氣系統現在和過去的位置與強度,而且要知道天氣系統的形狀、溫壓等情況,這些需要知道的信息就是面向對象方法中類的屬性。在基于規則知識表示的方法中,知識表示方法利用各種數據結構將氣象預報領域中的知識引入到計算機程序設計過程。將氣象數據用規則表示時,每一條規則都涉及到多個前提和結論,其基本形式如下所示:
ep1(cf1)∧ep2(cf2)∧…∧epi(cfi)→pp1∨pp2∨…∨ppj
其中eij表示前提條件,pij表示結論,cfj表示對應條件的可信度值。舉例來說,要預報風、雨、雷、雪等氣象時,至少需要有強度、區域、季節以及系統組合四個預報因子,這些因子可以視為規則的前提(也稱為可信度),由這些前提可以得出相應的子結論:風、雨、雷、雪等氣象各自的概率,這些子結論的并集就是規則的真正結論。所以最終的規則表述如下:
強度(cf1)∧區域(cf2)∧季節(cf3)∧系統組合(cf4)→P(風)∨P(雨)∨P(雷)∨P(雪)
得到最終的規則后,要將規則存放于知識庫里面,并用數據庫表體現。為進行區別,不同的氣象預報因子要用不同的數據表定義,所以數據庫中就存在強度因子表、區域、季節因子表等。
2.2 推理機制和推理算法
氣象預報專家系統是模擬氣象專家的思路進行預報的,預報方式是正向推理方法,其算法如下所示:首先向知識庫輸入過去或現在的已知基本事實,并將其中的一個事實節點作為起始節點;只要沒有得到結論,就判斷是否能夠在事實庫中找到當前節點內容;如果能夠找到則轉到下一節點,否則按照節點的內容進行提問。這種正向推理方法采用的是不可回溯的搜索策略,因此對推理網絡的要求比較高,并且嚴格要求每一個節點至少應該有兩種狀態,而且每種狀態都可能引向某個結論,否則的話可能會因為不能確定狀態歸屬而無法得到正確的推理。
對于大多數氣象問題而已,對他們的理解還只是停留在“知道表面現象、不知原理”的層面,所以大多數氣象問題都有很大的不確定性,為此進行氣象預報時不得不考慮到氣象問題的這種不確定性。在這種不確定性基礎上加以發展,我們可以得到一種稱為“不精確性推理”的推理方法,這種推理方法在規則中加入一個能夠有效反映條件與結論間不確定性的規則強度因子,用來說明條件成立時結論的可靠性。不精確性推理方法的算法如下所示:
如果條件P是其子條件的邏輯組合,那么可以得到:
CF(P)=CF(P1∧P2∧…∧Pn) = Min{CF(P1),CF(P2),…,CF(Pn)}
如果能夠按照不同的規則得到條件P的兩個可信度CF1(P)和CF2(P),那么就可以將這兩個可信度合并得到:
CF(P)= CF1(P)+CF2(P)-CF1(P) ∩ CF2(P), CF1(P)>=0 CF2(P)>=0
= CF1(P)+CF2(P)+CF1(P) ∩ CF2(P), CF1(P)<0 CF2(P)<0
應該注意的是,如果CF(P)>0,則表示證據可信,結論的可信度相對較大一些,也就是說,CF(P)越大,結論越可靠。如果CF(P=1),則說明結論為真。同理,CF(P)<0則表示證據不可信,當CF(P)=-1時,表明結論為假。如果CF(P)=0,則說明結論與證據沒有直接關聯性。
利用不精確推理算法進行氣象預報工作,在大多數情況下能夠反映氣象知識所固有的不確定性,但是初始可信度是主觀給出的,因此難以在短時間內完善地模擬預報專家的思維方式,所以即使預報專家給出合理的不確定性值,氣象預報專家系統也可能會得到與預報專家不同的意見,為解決這一問題,可以引入知識量化的方法,采用精確推理的氣象預報方法。知識量化指的是將氣象知識分為多個級別,并賦以每個級別一個邏輯值。例如,可以“將槽后等高線與等溫線的夾角分為<=20°,20-30°,30-40°以及>40°四個級別來表現槽后冷平流的強如,并分別賦值為1,2,3,4”。在運用這種方法進行氣象預報的時候,預報的主要思路應該遵循如下要求:首先預報位置、強度以及高空和地面的天氣系統組合等,接著預報對應的天氣要素,并且要以高空系統為主要預報對象,地面系統為次要預報對象。
3 基于WebGIS的氣象預報專家系統的實現
基于WebGIS的氣象預報專家系統采用的是基于B/S的體系結構,客戶端只需安裝普通的瀏覽器軟件即可,Web服務器端采用動態地圖機制描述地理空間數據。體系結構圖如圖1所示。
Web層保證了客戶可以通過客戶端的瀏覽器訪問應用程序,因此為保證客戶端的瀏覽速度,Web層窗體隱藏了代碼實現的細節,僅僅用HTML提供用戶操作。預報外觀層是Web層的界面支持,為Web層提供需要的知識管理、氣象數據管理等界面,并且將業務功能層的具體實現與用戶界面分離開來。預報實體層包含了各層之間信息傳遞的數據,以此解決了業務數據的表現形式,這些數據主要包括空間數據及氣象數據。空間數據主要說明了預報對象的空間位置,采用文檔文件管理;氣象數據包括氣象要素的屬性和空間實體的經緯度,用關系數據庫進行管理。原始數據在使用過程中,應該對其整數化,以提高數據運算及圖形顯示的速度。根據上述方法設計的氣象預報專家系統界面如圖2所示。
4 結論
專家系統與WebGIS相結合用于氣象預報有重大意義,運用氣象預報專家系統中的大量氣象專家知識,計算機可以給用戶專家級的氣象預報,從而防范災害天氣。本文分析了基于WebGIS的氣象預報專家系統的基本算法,運用面向對象和產生式規則的方法完成了氣象預報的仿真工作,對于WebGIS技術實現氣象預報有一定的研究和應用價值。
參考文獻:
[1] 王勇.平原河網區暴雨致洪的水文氣象預報模型研究[D].南京:南京信息工程大學,2009.
[2] 劉南,劉仁義.WebGIS原理及其應用——主要WebGIS平臺開發實例[M].北京:科學出版社,2002.
[3] 張健挺,邱友良.人工智能和專家系統在地學中的應用綜述[J].地理科學進展,2008,17(1).
[4] 吳建生,金龍,汪靈枝.遺傳算法進化設計BP神經網絡氣象預報建模研究[J].熱帶氣象學報,2006,22(4).