没有合适的资源?快使用搜索试试~ 我知道了~
⃝⃝可在www.sciencedirect.com上在线获取ScienceDirectSoftwareX 5(2016)89原始软件出版物www.elsevier.com/locate/softxOcelet:使用交互图P. Degenne,D.罗贤贤法国蒙彼利埃UMR TETIS环境和社会部Cirad接收日期:2016年2月9日;接收日期:2016年4月6日;接受日期:2016年5月10日摘要本文介绍了Ocelet,一个特定领域的语言和模拟工具,模拟地理景观的变化。它的特点是使用交互图(图与交互功能的边缘)来表示系统组成的进程,每个进程涉及几个实体分布在空间中,相互作用。实体是图的顶点,而交互是边,在这些边上可以应用(交互)函数来使系统随时间变化给出的例子来说明通用的配置的模拟方法来建模和研究不断变化的地理设置。c2016作者。由Elsevier B.V.发布。这是CC BY许可下的开放获取文章(http://creativecommons. org/licenses/在/4。0/)。关键词:空间建模;多尺度;领域专用语言代码元数据当前代码版本v1.1此代码版本使用的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-16-00024CeCILL v2.1(GNU GPL兼容的自由软件许可协议,由法国公共研究所设计)许可证详细信息:http://www.cecill.info/licences/LicenceCeCILL V2.1-zh.html使用Git的代码版本控制系统使用Java 7、Eclipse、Xtext的软件代码语言、工具和服务编译要求,操作环境依赖开发和编译:Eclipse Luna,Java 7支持:Eclipse RCP、Xtext-XBase 2.8、Geotools 9.4、JAK如果可用,链接到开发人员文档/手册NA问题支持电子邮件ocltdev@ocelet.fr软件元数据当前软件版本Carmine(1.1)指向此版本可执行文件的永久链接http://www.ocelet.org/上的下载选项卡法律软件许可证CeCILL V2.1计算平台/操作系统Linux,OS X,Windows安装要求依赖关系Java 7(或8)安装环境如果可用,请链接到用户手册-如果正式出版,请在参考列表中引用http://www.ocelet.org/上的文档选项卡问题支持电子邮件ocltdev@ocelet.fr*通讯作者。电子邮件地址:loseen@teledetection.fr,danny.loseen@cirad.fr(D。Lo Seen)。1. 动机和意义模拟模型既可作为研究工具,在试图提高对http://dx.doi.org/10.1016/j.softx.2016.05.0022352-7110/c2016作者。由Elsevier B.V.发布。这是CC BY许可下的开放获取文章(http://creativecommons. org/licenses/by/4. 0/)。90P. Degenne,D.罗显/SoftwareX 5(2016)89系统,并在决策支持,探索替代方案(例如[1])。但是,将环境建模为一个系统可能会被认为是特别具有挑战性的,因为通常需要对几个相互作用的过程进行建模。这些过程还可以是动态的,空间分布的,在几个尺度的空间和时间,并可能涉及人类活动[2]。对现有的环境建模方法进行了几次审查(例如[3大多数方法属于三个主要的方 法, 突 出 了他 们 的用 户 社 区的 大 小: 系 统 动力 学( SD ) , 元 胞 自 动 机 ( CA ) 和 基 于 Agent 的 建 模(ABM)。Forrester [6,7]提出的SD方法代表了真实世界的过程,包括库存(系统变量)、流量(库存之间的交换)和交互反馈回路(系统的输出可以作为系统的输入反馈 ) 。 基 于 这 些 原 则 的 软 件 示 例 包 括 STELLA [8] 和Vensim [9]。但是当一个系统分布在一个地理空间中时,聚集的系统变量就不够用了。空间建模环境(SME-[26])提出的解决方案是将系统空间分解为单元。然后,可以在每个单元中包括存量流量模型,相邻单元能够交换流量。被称为使用CA,地理空间由可以采取有限数量的状态的网格单元表示。给定小区的状态根据取决于相邻小区的状态的转换规则而改变。城市动力学是CA应用特别成功的一个领域(例如,DEUM-[11]; SLEUTH-[12],以及最近的当要建模的系统在更复杂的情况下(如社会系统中的情况)涉及异构实体时,ABM通常是首选。智能体由其行为定义,可以是反应性的或认知性的,并与其他智能体及其环境相互作用[14]。[15]对反弹道导弹在生态系统管理中的应用进行了用于多代理模拟的软件包括CORMAS(Bousquet et al.,1998),NetLogo [16]和GAMA [17]。所有这三种建模方法都有具体的特点,根据所寻求的目标,可以将其视为优点或缺点。特别是,建模者经常需要研究一个系统作为一个整体,并在同一时间破译本地和中间层次的过程如何因此,有人试图混合或综合不同的办法,这并不奇怪。例如,上面提到的SME可以被认为是SD和CA的集成,而Clarke [10]探索了其起源, 保护性耕作和反弹道导弹各自的主要贡献。Schieritz和Milling [18]对SD和ABM进行了详细的比较,并回顾了以前有希望但尚未实现的将自上而下(SD)和自下而上(ABM)方法结合起来的尝试。自2008年以来,我们一直在开发一种方法,被认为是自上而下和自下而上方法之间的中间方法。其理由不是要将这两类方法结合起来,而是要侧重于它们的任何系统都是用分布在空间中的实体来描述的,这些实体相互作用,其他的地理变化的模拟模型是使用交互图来明确描述过程[19]。交互图具有作为顶点的实体,以及附加到它们的边的交互函数。图本身只能构建系统中的邻域关系(哪个实体与哪个其他实体相关),而不能构建关系的性质(当实体相互作用时会发生它也没有描述系统如何随时间演变因此,通过允许(交互)函数同时应用于边,交互图被引入作为图的数学定义的扩展[20]。这些函数能够访问所连接实体的属性,使用并根据正在建模的过程来可选地改变它们。交互图也是动态的,因为可以添加或删除顶点和边,并且可以在模拟期间修改它们的属性。当使用交互图对系统及其动态进行建模时,必须想象系统中起作用的交互是什么,它们是如何分布的(空间上,功能上,社会上)。. . )以及它们如何影响该系统的时间交互图的这种定义是非常通用的。一个相同的概念用于描述分层关系(允许聚合和解聚操作)、空间关系(从基于规则网格的邻域到从基于矢量的地理信息层或从连续空间参考系统发出的任何其他结构)、社会关系(通过在交互功能中写入社会上有意义的语义)或更一般地任何种类的基于功能的关系。我们将这种通用性与精心选择的操作符以域特定语言的形式相结合(参见[21],对生态建模中的DSL进行了回顾),以提供丰富的表达能力,用于对广泛的空间显式系统及其动态进行建模。Ocelet模型中使用的一般空间实体用地理信息系统(GIS)中常用的数据类型表示:点、线、多边形、多点、多线和多多边形。实体之间的交互导致实体的状态和(空间)配置的变化。关键的区别在于,一旦从GIS数据文件(例如shapefile)导入模型,实体就不再属于空间动力学模型在称为“Ocelet建模平台”(OMP)的软件环境中构建经过几年的实践以及Ocelet的初始原型和当前稳定版本(版本1.1)之间的过渡阶段,我们在此(第2节)介绍该软件的主要概念和功能。然后简要描述三个测试用例,以说明Ocelet的一般配置(第3节)。最后,我们讨论了该方法如何有助于解决科学问题,以及可以解决的主要建模情况类型(第4节)。2. 软件描述OMP软件环境是围绕Ocelet DSL构建的,以便于模型创建和维护,代码P. Degenne,D.罗显/SoftwareX 5(2016)8991仿真结果的编辑、编译、仿真运行、显示和输出。Ocelet语言用于描述特定研究的地理设置和相关过程。它包含了实现动态交互图所需的特定语言元素,这些图形是Ocelet建模方法的核心。该语言的主要概念在2.1节中给出。第2.2节描述了如何构建和使用交互图,第2.3节简要介绍了Ocelet建模平台。2.1. Ocelet语言实体、关系和场景是与大多数编程语言(例如,块、数据类型操作、控制循环、条件分支)来形成Ocelet。Ocelet中的实体通常是空间的,尽管不一定如此。它定义了许多属性,这些属性的值在模拟过程中可能会发生变化。空间实体具有其属性之一,用于定义其在空间参考系统中的空间范围和实体的其他非空间属性可以是常见的数据类型,如String、Boolean、Double和Boolean。Ocelet提出了几种数据类型(几何类型,颜色类型,日期类型,用户定义的复合类型)和集合(组,列表,键映射),以促进空间和非空间信息的操作和显示也可以定义实体特定的函数来访问和修改实体的属性,以表达内部过程(那些在不与其他实体交互的情况下发生的过程)。关系用于描述将附加到交互图的边缘的语义。在声明关系中涉及哪两种类型的实体之后,可以定义任何形式的交互函数,其将被应用于该模型因为这对实体是强类型的,所以交互函数可以精确地描述交互实体的哪些属性被使用,以及哪些属性作为交互过程的这样定义的每一个关系都可以在以后被实例化以保存一个交互图。图1给出了一个不同类型的关系,可以在一个典型的农村景观建模的示意图可以注意到,一个实体可以涉及若干关系。场景是模型中设置系统初始状态并安排模拟步骤的部分。 它包含在模拟运行期间执行的有序操作序列,以表示发生的更改在一段时间内的地理区域。在这些操作过程中,实体和关系被实例化,并且所产生的交互图上的功能以指定的顺序被激活,以使系统随着时间而演化为了简化模型编写和维护,可以在同一个模型中定义多个场景其中一个将被视为主要场景(与项目同名)。其他场景可以从主场景调用。还没有包括任何特定的机制来跟踪实体或其他状态变量的属性。因此,方案还必须包含将所需变量保存到文件中以供显示和分析的说明2.2. 构建和使用显式动态交互图交互图的概念是低级的和通用的,其Ocelet带有数据格式特定的接口(这里称为datafacer),可以用来为模型提供 现 成 的 实 体 。 从 类 似 表 格 的 数 据 格 式 ( 如 csv 、shapefile、PostGIS)中,可以为每一行或每一条记录获取一个实体。实现了一种匹配机制,用于直接从属性或列数据分配实体属性值。输出数据面处理器也适用于上述三种格式,以及另一种经常使用的格式,专门用于在GoogleEarth中显示动画地图(kml格式)。为了帮助构建图的边,Ocelet还提供了适当的函数和运算符,这些函数和运算符使用实体类型及其属性值(包括空间属性)。因此,可以很容易地为任何类型的空间或非空间关系构建图结构。在一个时间步长内激活交互图上的函数将以在整个交互图上模拟同步性的方式执行该函数。也就是说,每个函数读取前一个状态并写入下一个状态,使得结果独立于图的边被贯穿的顺序。这种运作方式固有的是实体接收冲突指令的可能性(例如,为解决这个问题,我们引入了定义聚合函数的可能性,该函数将接受所有候选值并提供一个要分配给属性的值。根据所涉及的属性类型,内置了常见的聚合函数,例如平均值、最大值、最小值,用于数值属性(整数或双精度),但也可以使用用户定义的聚合函数。另一个有趣的建模机制是在应用交互功能之前过滤图形的可能性。过滤器可以被定义为仅保留满足某些条件的边缘,例如,那些连接具有所需属性值组合的实体对的边缘。2.3. Ocelet建模平台Ocelet是一个编译的DSL。编译包括使用代码生成器将Ocelet编写的模型自动转换为Java类。然后,编译模型的执行使用Ocelet java运行时,该运行时包含一组专门为Ocelet开发的Java类,以及来自已知开源库(如Java拓扑套件(JTS)和Geotools)的其他几个函数。在OMP环境中,这些软件依赖关系对用户是透明的。图2示出了本发明的主要特征。OMP接口,使用Eclipse RCP构建,由四个框架组成。在中间的一个有一个文本编辑器与语法突出显示。代码错误用红色下划线标出。左侧框架包含项目导航器。项目包含92P. Degenne,D.罗显/SoftwareX 5(2016)89图1.一、景观元素相互作用示意图圆是图的顶点,彩色线是图的边圆圈代表农业地块、河流、森林、城镇、农民、环境管理者和决策者实体。线代表实体之间的空间(蓝色)、功能(橙色)、层次(红色)和还给出了Plot实体定义和栽培关系定义的示例(有关本图例中颜色的解释,请参阅本文的网络版本图二. Ocelet Modeling Platform与窗口A-D的界面如下:A-项目浏览器,B-模型文本编辑器,C-模型大纲和D-控制台窗口。步骤1-6P. Degenne,D.罗显/SoftwareX 5(2016)8993模型的描述,所有输入数据和配置文件都组织在子文件夹中。右侧框架给出了显示在中间框架中的模型的轮廓。它包含模型结构(实体、关系、场景和数据面),并允许在模型代码中快速导航。在底部,我们有一个控制台,其中显示了模拟过程中产生的多个按钮(图2:1-7)用于最常用的功能。这些也可以在顶部的下拉菜单中找到。3. 说明性实例简要介绍了三个例子来说明不同类型的可能的应用:(一)殖民化的开放空间的植物物种,(二)土地覆盖变化的农业景观和(三)害虫入侵在同一景观。这些示例非常简单,但是它们包含了可以在各种情况下重用的模型元素。下文简要说明这些模式。还显示了在不同日期在Google Earth中显示的输出kml文件的屏幕截图。模型代码、输入和输出文件的链接见表2中网站的外来植物种一个新的植物物种被引入一个空旷的空间,因此除了它自己之外,它不会面临任何竞争。简单的规则用于模拟植物生长通过不同的物候期。在其成年阶段,植物可以产生种子,在其封闭的环境中传播。有些种子发芽,生长并在产生自己的种子之前达到成年阶段。当植物密度太高时,局部约束阻碍发芽和生长(见图) 3a.)农业景观研究人员和专业人员经常使用模型来研究土地覆盖和土地利用变化的驱动因素(例如[4]的综述)。在本例中,我们对农业地块及其所属的农场进行建模。农民根据个人的时间步长是年。模型参数可以改变,以模拟农场多样化或专业化的不同情景,遵循协调或独立的管理选择。(See 图 3b.)在农业景观中传播的害虫在以前的土地覆被变化模型中,我们增加了一些地块受到虫害袭击的可能性,这些虫害可以通过邻近地区传播到邻近地块。有些土地覆被类型可被昆虫用作繁殖或食物的有利环境,而另一些则是应避免的不利环境。时间步长为一周。该模型的初始化与害虫存在于一些地块的土地覆盖有利于害虫繁殖。含有害虫食物的邻近地块受到影响,害虫逐渐分散到景观中。因此,可以测试不同的土地覆被变化情景,以确定其抵御虫害蔓延的能力(见图) 3c.)4. 讨论在编写Ocelet模型时,模型规范在三个层次上进行:(i)个体层次,在构建实体时使用其属性和服务;(ii)交互层次,在设计与其交互图,过滤器,聚合和交互功能的关系时;以及(iii)系统层次及其动态,描述系统初始状态及其随时间演变的场景。模型中所需的交互作用的性质可以是多种多样的。当试图理解一个系统的行为时,表示等级、功能、空间甚至社会关系是如何干扰的往往是必要的。在Ocelet中,交互图用于以概念上和计算上统一的方式处理这些不同的交互它表明,从不同的角度和空间层次表达的过程可以集成在同一个模型中。例如,功能关系可以将农民与其农业地块联系起来,以表达耕作观点,而农业地块之间的空间关系则与害虫管理观点相关。同样,可以在不同的空间层次上定义实体,将农业地块分组为农场,并将农场与农业合作社相关联。农民可以通过地理和社会上的接近来分享创新,同时相互竞争资源。交互图的选择表明,某些类型的模型可能不方便使用Ocelet构建。例如,Ocelet实体可能与反应性代理有相似之处,但它们不具有与更复杂的代理相同的自主性。因此,基于代理的模型,涉及自主认知代理将更难以建立比那些只有反应代理。此外,由于相互作用函数同步且同时应用于相互作用图的所有选定边缘,因此优选其中可使用同步时间步长来描述动态的模型。使用Ocelet构建基于异步事件的模型可能不太方便。5. 结论和展望设计Ocelet时,我们的主要动机之一是为建模者提供尽可能大的表达能力,(a)没有预定义的空间表示,并且可以混合多种(网格,矢量,连续),(b)没有预定义的关系形式,其中大多数建模工具都有自己的关系元模型(例如代理人口层次结构,拓扑邻接邻域),有时会限制建模练习。我们相信,在特定领域语言的支持下,只有一个相同的通用概念来保持任何类型的交互,是表达能力和易用性之间的一个很好的折衷。它还提供了适当的概念和相关的工具,以帮助建模者将来自不同科学学科的观点整合到同一个模型中。鉴于交互图的通用性,Ocelet可以用于涉及多学科问题的广泛应用。例如,Ocelet已经成功···94P. Degenne,D.罗显/SoftwareX 5(2016)89图3a. Google Earth中显示的“引入物种的殖民化”输出kml文件的屏幕截图图3b.与3a相同,但针对图3c.与3b相同,但对于用于以参与式方法试验土地使用政策模拟情景[22],研究从地块到区域规模的耕作系统演变[23],以及模拟红树林海岸线变化[24]。用户反馈应该有助于丰富语言和平台的新功能,尽管最初的概念可以被认为是稳定的。这里介绍的1.1版本的一个可预见的补充将是一个重要的优化工作,在同一模型中混合大网格,连续和矢量空间表示大量网格单元(通常是卫星图像中的像素数)的有效处理正在测试中[25],并计划纳入Ocelet的下一个版本。确认这项工作由法国国家研究机构(ANR)通过STAMP(ANR-07-BLAN-0121http://wiki.ocelet.fr/)和DESCARTES ( ANR 11-AGRO-002-01http://www.projet-descartes.fr/)项目提供部分资金。我们还要感谢两位匿名的评论者,他们的评论帮助改进了这篇论文。引用[1] SchubertJ , Moradi F , Asadi H , Luotsinen L , Sjöbe rg E , HoörlingP , et al. 基于仿 真的作战 计划评估 决策支持 。 OperResPerspect2015;2:36-56.[2] 施密特-莱恩C,帕夫A。环境:在跨学科背景下理解、管理和决定的建模和模型NatSciSoc2002;10s1:5http://dx.doi.org/10.1016/S1240-1307(02)80131-5.[3] 贝克·W 景观变化模型综述 Landscape Ecol 1989;2(2):111-33.[4] Agarwal C,Green GM,Grove JM,Evans TP,Schweik CM.的审查土地利用变化模型的评估:空间、时间和人类选择的动态。将军技术Rep. NE-297. Newtown Square,PA:美国农业部,林业局,东北研究站; 2002年。61页。[5] [10] Lloyd F,J. F,J. F,J. F,et al. 集成环境建模:未来的愿景和路线图。 En viron Modelling Softw2013;39:3-23.[6] Forrester JW.系统的原则。麻省:Wright-Allen PressCambridge; 1968年。[7] ForresterJW. 城市动力学。Cambridge,Mass:MITPress; 1969.[8] 科斯坦萨河基于stella的macrocket仿真建模。生物科学1987;37:129-32.[9] 放大图片作者:J.使用Vensim TM了解模型。《欧洲手术研究杂志》,1992年;59:216-9。P. Degenne,D.罗显/SoftwareX 5(2016)8995[10] 克拉克和KC。元胞自动机和基于代理的模型。In:Fischer MM,Nijkamp P,editors.区域科学手册。Berlin,Heidelberg:Springer-Verlag; 2014 [chapter62].[11] BattyM,Xie Y. 从细胞到城市环境规划B 1994;21:31[12] [103] Clark e K,Hoppen S,Gaydos L.旧金山湾区历史城市化的自修正元胞自动机模型。环境规划B1997;24:247-61。[13] 巴雷拉-贡扎莱兹P,戈麦斯-德尔加多M,阿奎莱拉-本阿文特F。从栅格到矢量元胞自动机模型:借助图论模拟城市增长的新方法。Comput Environ Urban Syst 2015;54:119-31.[14] 费伯多 智能体系统:分布式人工智能导论智能Reading:Addison-Wesley;1999.[15] Bousquet F,Le Page C.多智能体模拟与生态系统管理:综述。生态模型2004;176(3-4):313-32。[16] 威连斯基大学NetLogo。中心连接学习和计算机-基 于 建 模 。 Evanston , IL : Northwestern University; 1999.http://ccl.northwestern.edu/netlogo/网站。[17] Grignard A , Taillandier P , Gaudou B , Vo D-A , Huynh N-Q ,Drogoul A. GAMA1.6:推进复杂的基于代理的建模和仿真艺术。PRIMA 2013:多代理系统的原理和实践。计算机科学讲义,第8291卷。Springer; 2013. p. 117比31[18] Schieritz N,Milling PM。为森林建模或为树木建模系统动力学和基于智能体的仿真比较。在:系统动力学学会第二十一届国际会议论文集; 2003年。[19] Degenne P,Lo Seen D,Parigot D,Forax R,Tran A,Ait LahcenA,设计一个特定领域的语言建模过程中的景观。生态模型2009;220(24):3527[20] Degenne P,Ait Lahcen A,Cure 'O,Forax R,Parigot D,Lo SeenD.使用行为图建模。你会说奥克利特语吗参加:国际环境建模和软件 大 会 , 2010 年 7 月 5 日 至 8 日 , 加 拿 大 安 大 略 省 渥 太 华 。http://www.iemss.org/iemss2010/网站。[21] HolstN,Belete GF. 用于生态建模的特定领域语言Ecol Inform2015;27:26-38.[22] Lestrelin G,Augusseau X,David D,Lagabrielle E,Lo Seen D,BourgoinJ. 等人留尼汪岛的景观合作研究:为促进对话和知识整合而进行的抽象建模和空间模拟。在:国际景观生态学协会(IALE)2013年欧洲大会:改变欧洲景观,曼彻斯特(英国),9月9日[23] JahelC , BaronC , VallE , KarambiniM , CastetsM , CoulibalyK ,Be'gue'A,Lo Seen D.跨尺度农业生态系统动态的空间建模:布基纳法索西部棉花区的一个案例。农业系统2016(出版中)。[24] ProisyC , Degenne P , Anthony EJ , Berger U , Blanchard E ,Fromard F,等.利用遥感观测将红树林动态与海岸过程联系起来的多尺度模拟方法。In:Vila-Concejo A,Bruce E,Kennedy DM,McCarroll RJ,editors.第14届国际沿海研讨会论文集(澳大利亚悉尼)。沿海研究杂志,特刊,没有。七十五。椰子溪(佛罗里达州); 2016年。p. 810-4ISSN0749-0208。[25] Castets M,Degenne P,Poncelet P,Lo Seen D.集成光栅和矢量空间表示与交互图多尺度环境模拟。在:国际环境建模和软件大会,6月15日至19日,圣地亚哥,加利福尼亚州,美国; 2014。http://www.iemss.org/iemss2014/网站。[26] Costanza R,Voinov A.景观模拟建模。一种空间清晰的动态方法。New York:Springer-Verlag.
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功