顏停霞許金朵林晨段洪濤馬榮華胡維平左一鳴
摘要:針對傳統的模型集成方法難以規范化和模型接口難以標準化等問題,歐盟水框架委員會建立了開放式模型接口標準OpenMI(Open Modeling Interface),通過該接口標準,模型可以實現并行運行且共享每一時間步信息,在數據交換和模型鏈接機理上具有一定的優勢。該文在分析了OpenMI工作原理和核心技術的基礎上,著重闡述了OpenMI技術在水文模型集成中的研究進展,并指出OpenMI技術目前存在無法支持分布式模型集成以及缺乏可視化界面與人機交互等缺陷,而且在對模型間的數據請求響應機制以及交互數據的容錯處理和中斷處理機制方面仍有待完善。
關鍵詞:模型集成;OpenMI;標準接口;同步數據交互;連接機制
中圖分類號:P333 文獻標志碼:A 文章編號:
16721683(2016)05001305
利用水文模型進行水環境評估、水文過程模擬、水生態調查,可以快速、有效地獲取流域水文特征,為流域環境管理提供理論與實踐依據。但是,水文現象是由自然與人文多要素耦合作用的結果,因此單一的水文模型只能做到局部水文現象的模擬,在整體性、一致性上存在不足。同時,目前的水文模型之間較為孤立,彼此聯系不足,直接影響了模擬的準確性與全面性。由此可見,實現多個水文過程模型間有效、無縫的集成,是獲取流域水文過程的關鍵技術手段,集成方式的選擇是其中必須解決的基礎性問題。
近年來,模型集成技術處于不斷的發展變化中。早先的模型集成技術主要對源碼進行改寫以實現模型的復用,為模型集成技術的發展奠定了基礎[12]。隨著空間決策支持系統的引進,基于模型庫的集成方式取得了突破性的進展[35]。后來為減少模型集成人員的編程工作,相對簡單、方便的可執行程序集成方式逐漸得到認可,此種方式主要的任務是制定出數據的交換格式和編制數據轉換的程序[6]。隨著信息技術的發展,考慮到分布式計算技術應用的增多,為解決系統集成功能冗余弊端和集成環境要求的限制,基于Web Services的集成方式受到了廣泛的重視[78],并成為目前主流的集成方式。隨后基于函數庫集成方式也得到了發展[910],此種方式雖可以實現高度的無縫集成,但存在函數庫難以擴充與升級等缺陷。由于模型組件化具有較高可移植性、可擴展性等優點,組件化技術對模型集成具有極大的意義[1112]。總而言之,傳統的模型集成技術包括源代碼、模型庫、可執行程序、Web Services、函數庫以及組件六種方式,其優缺點見表1。實際應用中,模型集成人員根據各種集成方式的優缺點以及模型的結構選取合適的集成方式實現模型耦合。
水環境領域里有眾多的水文模型,這些模型之間在尺度與維數、時空特點、模擬的物理量、數據處理機制、模型的開發語言及環境等方面存在差異,導致模型之間無法實現數據交互與有效連接。因此,傳統的模型集成方式不適用于水環境領域的模型集成。為解決此問題,歐盟水框架委員會建立了開放式模型接口(Open Modeling Interface,簡稱OpenMI),該標準接口適用于以時間序列為基礎的模型,規定了各模型在運算時各個模型交互數據應當遵循的規范(包括單位、尺度、時空描述和操作等),并確定了數據的接口形式[13]。該標準接口提供了模型集成的連接機制,用于解決模型數據交互方面的難題,從而實現了模型間的相互連接。利用OpenMI能方便地對已有模型進行改造和移植,增加了對已有模型的復用機會,減少了模型耦合所需的代碼重建代價,對于水環境系統的模型集成有重要的意義。
1 OpenMI的工作原理及核心技術
OpenMI接口標準是水環境領域里模型軟件計算引擎之間的接口協議,接入此標準接口的模型計算引擎不需要經過二次開發即可實現與其他模型耦合,其具體的工作原理見圖1[1314]。
水文模型主要由用戶界面、輸入文件、計算引擎和結果文件四個部分組成,用戶首先通過用戶界面定制模型運算所需要的參數,生成輸入文件,模型計算引擎在讀取輸入文件的基礎上啟動運算并生成相應的結果文件。假如兩個模型A與B的計算引擎都接入了OpenMI標準接口協議,則模型A在運行時就可以通過指定的接口共享模型B的數據,真正地實現模型在運行時完成數據交互,達到動態鏈接的目的。
OpenMI標準接口在交互數據描述和傳遞機制方面研究較為深入,涉及的模型數據交換實現的主要技術如下。
(1)交互數據的描述。
模型在運行時若想實現數據交互,必須定義好交互數據內容、交互數據位置以及交互時間,主要包括三個方面[1516]:a.是什么(what),模型必須定義交互數據的物理量、數值類型(Value Type)、標示符(ID)、單位(Unit)等,如果交互的數據在單位不同情況下需要經過轉換才能互相調用;b.在哪里(where),數據值在何地通過Elementset類來表示,包含了有序要素集,每一要素可以通過節點序號或者具有坐標的地理位置來表示;c.在什么時間(when),數據類型是Itime,采用改進后的儒略日(Julian)日期格式來表示時間,可以是瞬時值或者是時間周期。
(2)數據傳遞格式定義。
一般情況下,一個或多個 OpenMI 標準組件的軟件應用系統組成一個 OpenMI 系統,通過標準接口該系統可以連接與OpenMI標準接口兼容的模型,因此,OpenMI 系統須具備三個方面的功能和信息:①系統必須清楚在哪里可以找到連接的組件;②系統必須知道連接組件之間存在何種連接;③系統必須能夠實例化,且能分發并運行連接的組件。
(3)交互數據傳遞機制。
OpenMI中通過“請求響應”機制的方式實現數據傳遞,因而,采用 OpenMI 接口標準后,模型根據需要能夠實時進行轉換為能響應不同問題的組件或對象,通過執行有關屬性和方法,組件之間可以建立有效的連接。對已存在模型,通過嵌入標準引擎代碼實現,新模型或代碼能直接作為方法接口組件開發[17]。
為實現數據交換,采用請求響應機制連接組件,請求輸入模型需要在固定位置或時間給出要素變量集,源模型需要計算后給出并返回變量集,這一機制具體的解釋如下:
將多個組件連接形成復雜的相互連接的組件集,在每個連接中,“牽引”數據的組件需要從連接的另一端獲取數據,牽引競爭處理辦法是為數據請求指定輸入點。通過交叉連接的數據是輸出數據或模型計算后的結果,并成為接受模型的輸入數據或者邊界條件,同樣,采用相同的機制也可從數據庫中獲取數據。OpenMI能使得模型引擎計算和交換數據在自身的時間步完成,而不需要外部機制來控制,通過禁止組件不返回數據提供了防死鎖處理,當一個模型被請求數據,則需要詳細說明如何提供給它,因為前一個方法模擬使得緩存中可能已經有模型數據,也可能使得其自行模擬計算,造成一個最好的估算被篡改,或者不能提供請求的數據,在運行時交換數據是自動完成的,通過預先定義的連接驅動,而不需要人為干預處理。
2 OpenMI在水文模型集成中的應用
2.1 不同維數模型的集成研究
隨著OpenMI技術委員會的成立,國外更多的科研院所和公司將水環境領域里不同維數模型軟件的計算引擎接入OpenMI標準接口協議,如丹麥DHI software 的1維河道與河網綜合模擬軟件、1維城市排水系統綜合模擬軟件和1維排水/河網綜合模型;英國Wallingford Software的1/2維河道、河網綜合模擬軟件、3維湖泊河口模型;荷蘭Delft Hydraulics Software的1維河網/河網綜合模型軟件、2/3維水力模型等[18]。而我國目前很少有學者將不同維數的模型偶合起來,僅有王永[19]對石景山雨水管網模型、1維河道模型、2維地表漫流水利模型進行相互耦合,建立了集成式模型系統,結果顯示利用OpenMI技術可以更加準確地模擬模型之間的動態影響;楊德全[20]采用OpenMI標準接口對河網1維水力學模型與圩區0維模型進行了耦合模擬。上述研究表明水環境領域里不同維數(0維,1維、1/2維,2/3維,3維等)模型之間也可以實現有效的集成,不過模型計算引擎接口符合OpenMI標準是實現不同維數模型集成的前提保證,對模型間的交互數據在時間、空間和交互內容的理解是實現模型耦合的關鍵。
2.2 多個模型的集成研究
通過OpenMI技術實現水環境領域里多個模型的集成研究比較多,國外有Gijsbers[21]等人探討了利用OpenMI技術建立地下水與河網系統交互模擬;Reuner[22]等人將河網、污水處理系統和排水系統模型的計算引擎與OpenMI標準接口兼容,有效地實現了模型集成;W.Bauwens[23]等人將SWAT模型按照OpenMI標準接口進行了改造和移植,有效地耦合了SWAT模型、氣候模型以及水力模型;J.V.Assel[24]等將OpenMI用于Scheldt流域的城市雨水管網模型與河流模型系統的耦合,該耦合系統運行時同步雙向交換水位與流量數據;Jamie Margetts[25]利用OpenMI技術集成了排水管網模型、河網模型、水質模型以及污水處理系統,綜合地對河流的水質進行了評估。在我國,陳建[26]等人將單位線模型、新安江模型、馬斯京根等模型的計算引擎接入OpenMI標準接口,結果取得了顯著的效果,為多種模型的集成實現提供了思路;楊元元[27]基于OpenMI標準接口技術對感潮河網和排水管網模型進行移植并改造,實現兩個模型的動態連接,提高了計算的準確度,特別是初次使用Pi演算推演系統行為的方法解決在模型交互時出現死鎖的問題,該研究屬于我國的首創,將對水環境領域實現模型之間無縫連接起到引領作用。我國開發研制的水文模型眾多,結構各異,為避免資源的浪費,如何實現對已有模型的復用也是一項重要的研究,吳輝[28]對SWAT模型解析的基礎上,對子流域坡面產出過程和河道演算過程模塊進行OpenMI兼容化處理,實現模型組件集成研究,該文初次探索了對已有模型的拆解和模塊重用,為模型的復用提供了參考。
上述研究主要探討了利用OpenMI技術實現水環境領域里多模型的集成、對已有模型的改造和移植處理方法,以及處理模型交互數據在傳遞過程中存在的誤差等問題,旨在達到多模型高效集成的目的。
2.3 單個模型的集成研究
利用OpenMI技術直接開發研制出與OpenMI兼容的模型軟件對水環境領域的模型集成具有重要的意義。我國學者雷四華[29]等人在分析了預報模型的結構、輸入和輸出參數的基礎上,基于OpenMI技術研制了墑情預報模型,為模型研究人員利用OpenMI技術進行模型開發提出了寶貴的建議。吳輝[28]利用OpenMI模型集成環境,在分析模型主要地理過程的基礎上對SWAT模型進行模塊拆解并集成,為大型模型的模塊復用提供了新的思路和方法。周密[30]等人在深入分析OpenMI技術及其原理的基礎上,將OpenMI標準接入到新安江模型中,證實利用OpenMI技術實現模型耦合的有效性和先進性,有效地推動了OpenMI的發展。
3 展望
計算機的快速發展和模型研究的不斷深入是促進模型集成技術快速發展的重要因素, OpenMI集成方式與傳統模型集成方式相比,存在集成效率高、成本低、模型運行時耦合緊密的優點,在數據交換和模型連接機理方面研究比較成功,并被逐漸認為是模型集成的一種標準和規范,是目前相對先進的一種集成方式。但是由于水文模型內部結構復雜,實現水環境領域多模型的集成是一項高難度的工程,研究內容涉及面廣,因此OpenMI技術還存在無法實現超大規模系統的建模、模型之間數據傳遞存在誤差等問題。總體來看,有關OpenMI技術的水文模型應用,今后需要深入研究的重點包括以下幾個方面。
(1)簡化數據請求響應機制。各個模型在運行時都可能會提出相應的數據請求機制,計算順序相對較為復雜,此時需要檢測模型交互機制是否會存在死鎖現象。為避免死鎖,用戶一方面要提高系統的穩定性,另一方面要求用戶深刻的理解模型耦合的總體框架,熟悉模型間需要交互的數據內容以及交互位置、時間等,盡量簡化模型間的數據請求響應。
(2)加強容錯處理和中斷處理機制。水文模型過程中各模型的輸入輸出在時間序列上會存在差異,有的是日序列,有的是時序列,此時模型在數據交互傳遞時可能會出現誤差傳遞和傳輸中斷現象,因此應加強容錯處理和中斷處理機制,減少耦合系統運行的不穩定性因素影響,提高系統的可調試性。
(3)不支持分布式模型的集成。目前OpenMI技術暫時不支持分布式模型的集成,降低了模型的集成效率,采用分布式模型集成的關鍵任務就是研究如何實現作業調度機制,以滿足大量客戶請求模擬計算服務時得到回應并較少系統資源。如何使得OpenMI技術應用于分布式模型集成將是模型集成方面一個重要的任務,也是一個難點,或成為模型集成發展的新趨勢。
(4)加強OpenMI平臺對模型運行結果的展示。雖然OpenMI技術委員會提供了模型集成的操作平臺,可以實現操作層面上的可視化模型耦合,但是該平臺相對復雜,而且無法展示出模型的運行結果,缺乏人機交互和可視化等方面的功能,因此還需要在模型運行結果展示上面進一步探索。
OpenMI標準接口以其實用和先進的多模塊集成理念和信息交互機制,在歐美發達國家水環境領域得到了廣泛的關注和應用。然而,OpenMI標準接口在我國水環境領域里模型集成方面僅有了初步的應用,與發達國家比較相對落后。未來我國模型研究人員可以自主研究和開發適合我國特定環境的水文模擬軟件,并將模型計算引擎接入OpenMI接口標準,充分利用已有的資源,將自主開發的模型與歐盟大多數模型軟件相結合起來,綜合解決水環境系統存在的問題,更好地服務于水環境系統的管理者和決策者。
參考文獻(References):
[1] 王帆,向立云,張大偉,等.山洪風險分析系統中水文模型的接口實現[J].信息化建設,2013,23(6):1417.(WANG Fan,XIANG Liyun,ZHANG Dawei,et al.The interface implementation of the hydrological model in a flash flood risk analysis system[J].Information Construction,2013,23(6):1417.(in Chinese))
[11] 溫永寧,閭國年,楊慧,等.面向服務的分布式地學模型集成框架研究[J].遙感學報.2006,10(2):160168.(WEN Yongning,LV Guonian,YANG Hui,et al.A serviceoriented framework of distributed geographic model integration[J].Journal of Remote Sensing,2006,10(2):160168.(in Chinese))
[12] 劉海燕,劉曉民,魏加華,等.組件式流域模擬模型集成技術進展及發展趨勢[J].南水北調與水利科技,2013,11(1):140145.(LIU Haiyan,LIU Xiaomin,WEI Jiahua,et al.Progress and development trend of watershed simulation model intergration based on component technology[J].South to North Water Transfers and Water Science & Technology,2013,11(1):140145.(in Chinese))
[13] Gregersen J B,Gijsbers P J A,Westen S J P.OpenMI:Open modeling interface[J].Journal of Hydroinformatics,2007,9(3):175191.
[14] Voinov A,Cerco C.Model integration and the role of data[J].Environmental Modelling& Software,2010,25(8): 965969.
[15] The OpemMI Association Technical Committee(OATC).OpenMI Document Series :OpenMI Standard 2 Specification for the OpenMI (Version 2.0)[EB/OL].http://publicwiki.deltares.nl/download/attachments/41549981/OpenMI+Standard+2+Specification.pdfversion=1&modificationDate=129278907400.
[16] http://www.openmi.org.
[17] Daniels W,Gijsbers P,Fortune D,et al.Applying the modeling interface(OpenMI)[C].International Congress on Modelling and Simulation,at Melbourne,Australia.2005: 634640.
[18] OpenMI association official website: http://openmi.org: last visit:2008,11,20.
[19] 王永.基于OpenMI的城鎮排水系統模擬技術研究[D].北京:北京工業大學,2009.(WANG Yong.Study on urban drainage modeling technology based on open modeling interface[D].Beijing: Beijing University of Technology,2009.(in Chinese))
[20] 楊德全,李光熾,程闖闖.基于OpenMI標準的模型耦合技術與應用[J].水利水運工程學報,2013,(1):7680.
(YANG Dequan,LI Guangchi,CHENG Chuangchuang.OpenMI and its application to coupling models[J].HydroScience and Engineering,2013,(1):7680.(in Chinese))
[21] Gijsbers P J A.Gregersen J B.OpenMI design pattems for river groundwater interaction[C].MODFLOW and More 2008 Conference,at Goleden,Colorado US,2008.
[22] Reuner F,Muschalla D,Alex J,et al.OpenMI based basin wide integrated modelling considering multiple urban areas[C].11th International Conference on Urban Drainage,at Edinburgah,Scotland,UK.2008:19.
[23] Bauwens W,Shresta N,Tolseea O,et al.Hydrological open source experiences using SWATandOpenMI[OL].http://www.academia.edu/1468483/Hydrological_open_source_experience_using_SWAT_and_OpenMI.
[24] Assel J V,Waterschoot G,Devroede N,et al.Modeling bidirectional interactions between sewer and river systems using OpenMIa case study in the Scheldt River Basin(Belgium)[OL].http://documents.irevues.inist.fr/bitstream/andle/2042/35709/31702032VAN.pdfsequence=1.
[25] OpenMI Around the World.[20081124].http://www.openmi org/reloaded/users/openmi around the world.php.
[26] 陳建,王建平,李春紅.水文模擬系統開放模型接口應用[J].水電自動化與大壩監測,2012,36(1):1722.(CHEN Jian,WANG Jianping,LI Chunhong.Application of open model interface in hydrological analogue system[J].Hydropower Automation and Dam Monitoring,2012,36(1):1722.(in Chinese))