OpenMI规范
没有或很少条目链入本条目。 (2015年10月28日) |
OpenMI-规范(开放式模型界面)定义了一个界面, 它允许相关模型之间在运行时在内存中交换数据。符合OpenMI规范的数学模型之间可以-边运行边共享信息(例如在每个时间步段),使得在模型在运行阶段的集成成为可能。开发OpenMI-规范的目的在于方便模型的集成,这有助于理解和预测相关物理过程的相互影响,并提供了环境管理的综合方法。
OpenMI-规范是由一个对外开放和非赢利的国际组织 OpenMI 协会拥有和管理。 2014年7月1日, 开放地理空间联盟(OGC®)批准开放式模型界面第2版(OpenMI)为OGC 规范。
OpenMI的结构
[编辑]OpenMI-规范 基于“问-答”机制和基于“拉”“管道-过滤”结构,它包含了一个通讯系统(源信息和目标信息),以预定的方式和格式 ” 交换内存数据。[1]
OpenMI 规范的界面有三种功能:
- 模型定义:可使其他可联接信息找出对某个特定数学模型可交换的模拟结果;以及这些模拟的位置。
- 配置:定义了两个模型所需交换的数据。
- 系统运行:可使模型在运行过程中接受或提供数据。[2]
OpenMI-规范的基本特征
[编辑]OpenMI是一种接口
[编辑]- 其规范被定义为一个软件接口。
- 通过该接口规范所有软件模块之间的信息交互。
- 接口规范不局限于特定的技术平台或实施方案。
- 该接口的实施可能取决于特定发行版本的技术支持。
- 通过实现该应用接口, 这个软件模块被称为“与OpenMI兼容”。
OpenMI-规范是公开的
[编辑]- 其详细说明是通过互联网公开的。
- 它的源代码在Lesser GPL条款下公开。
- 可以通过它,来联接不同学科里的不同领域中不同类型的模型。
- 它提供了一个完整的元数据结构来描述可以在语义,单位,量纲,空间和时间表述和数据操作方面可相互交换的数据。
- 它提供了一种方法来准确地定义所需联系的信息内容,方式和时间。
- 可根据开源软件许可, 获得它的预置功能和软件工具。
OpenMI是一个规范
[编辑]- 它使数据的传输和处理的方法规范化。
- 它允许任何模型去跟任何其他模型(例如来自不同的开发人员)对话,而这些模型的开发不需要模型开发人员之间的密切交流与合作。
- 其通用的性质决定了其应用范围并不局限于某个特定的学科(例如水科学,甚至环境科学)。
请注意,OpenMI能够对模型数值交换的量纲进行检验。然而,这种检验不能确保计算过程或连接到另一个模型的计算过程的科学表述是完全正确的。这是模型开发人员,用户和模型集成人员的职责。[2]
发展历史
[编辑]在2001年,为简化相关水文模型之间的联接, 欧盟委员会资助(根据第五框架计划)一个名为HarmonIT的研究项目; 以开发和应用一个欧洲开放建模界面。为此, 欧盟水框架法令(WFD)需要建立一个全流域模型作为水资源综合管理的重要组成部分。为进一步开发和示范, “OpenMI-生活”项目在欧委会总局的环境“生活”计划名下进行研究。
为进一步促进OpenMI的使用和推广,OpenMI协会于2007年成立。这为公司,公共研究机构和对系统分析和数学模型感兴趣的大学参与开发OpenMI-规范界面成功的开辟了道路。
这些年中,共发布了以下几个版本的OpenMI-规范:
- 2005年:1.0版本在HarmonIT项目框架名下发布。
- 2007年:在很早期的OpenMI-生活项目研究中,发布了OpenMI 规范的更新版本(.Net 1.2版本和Java版本; 后者主要由“OpenMI-生活”项目以外的合作伙伴开发)。因为更新过程中出现的兼容性问题,更新和发布过程经过严格审查,最终生成的1.4版(适用于.Net和Java)是从那时起OpenMI官方支持的唯一版本。
- 2010年:OpenMI 2.0的开发工作贯穿在整个“OpenMI-生活”项目中; 并在开发工作的后期公布了一个供内部测试的试用版本。最终,经过严格的测试和审查, OpenMI 2.0在2010年发布。
- 2014年:在2014年7月1日开放地理空间联盟(OGC®)会员已经批准了开放模型界面规范2.0版(OpenMI)作为OGC的一个规范。
点击这里(页面存档备份,存于互联网档案馆)可以找到有关这段历史的较详细的资料。
对用户和程序员来讲的OpenMI-规范
[编辑]OpenMI-规范由一组C#和Java语言所写的软件界面所定义。一个模型想要成为一个符合OpenMI-规范的模型或模块必须包含这些界面。
OpenMI 可以从两个层面来说明:在用户层面,OpenMI 规范提供了一个规范界面,它允许模型之间,及其他模型工具之间可以在运行过程中相互交换数据。OpenMI-规范可以联接来自不同供应商,不同领域, 不同理论和不同时间分辨率的模型。
在IT层面,OpenMI-规范是我们准备模拟的某科学领域(如水资源模型)计算模型的计算内核(计算引擎)的软件信息的界面定义。符合OpenMI-规范的模型不需任何额外的编程就可以在计算过程中(在运行时)进行信息交换。OpenMI-规范支持双向交互,即相关联接的模型彼此相互需要的计算结果来进行下一步计算。联接可以相对于不同时间步长或以不同计算速度运行的模型; 可以无缝交换不同的几何形状(计算网格)数据。[3]
与OpenMI兼容的模型
[编辑]由于OpenMI-规范是免费使用的,目前还没有与OpenMI-规范兼容的模型和工具的完整列表。OpenMI-规范协会致力于在这里保存有关模型和工具的概述。文献综述提供了另一个寻找OpenMI兼容模型和工具的途径。
参考文献
[编辑]- ^ Gregersen, J. B., et al (2007). “OpenMI: Open Modelling Interface”. Journal of Hydroinformatics 9(3), 175-191.
- ^ 2.0 2.1 “The OpenMI Document Series, Part A – Scope: For the OpenMI (Version 1.4)”. OpenMI Association. Retrieved on 2009-05-26.
- ^ “OpenMI Association Website - About OpenMI”. OpenMI Association. Retrieved on 2009-05-28.