Reuse of process-based models: automatic transformation into many programming languages and simulation platforms

IF 2.6 Q1 AGRONOMY
Cyrille Ahmed Midingoyi, C. Pradal, I. Athanasiadis, M. Donatelli, Andreas Enders, D. Fumagalli, Frédérick Garçia, D. Holzworth, G. Hoogenboom, C. Porter, H. Raynal, P. Thorburn, P. Martre
{"title":"Reuse of process-based models: automatic transformation into many programming languages and simulation platforms","authors":"Cyrille Ahmed Midingoyi, C. Pradal, I. Athanasiadis, M. Donatelli, Andreas Enders, D. Fumagalli, Frédérick Garçia, D. Holzworth, G. Hoogenboom, C. Porter, H. Raynal, P. Thorburn, P. Martre","doi":"10.1093/insilicoplants/diaa007","DOIUrl":null,"url":null,"abstract":"\n The diversity of plant and crop process-based modelling platforms in terms of implementation language, software design and architectural constraints limits the reusability of the model components outside the platform in which they were originally developed, making model reuse a persistent issue. To facilitate the intercomparison and improvement of process-based models and the exchange of model components, several groups in the field joined to create the Agricultural Model Exchange Initiative (AMEI). Agricultural Model Exchange Initiative proposes a centralized framework for exchanging and reusing model components. It provides a modular and declarative approach to describe the specification of unit models and their composition. A model algorithm is associated with each model specification, which implements its mathematical behaviour. This paper focuses on the expression of the model algorithm independently of the platform specificities, and how the model algorithm can be seamlessly integrated into different platforms. We define CyML, a Cython-derived language with minimum specifications to implement model component algorithms. We also propose CyMLT, an extensible source-to-source transformation system that transforms CyML source code into different target languages such as Fortran, C#, C++, Java and Python, and into different programming paradigms. CyMLT is also able to generate model components to target modelling platforms such as DSSAT, BioMA, Record, SIMPLACE and OpenAlea. We demonstrate our reuse approach with a simple unit model and the capacity to extend CyMLT with other languages and platforms. The approach we present here will help to improve the reproducibility, exchange and reuse of process-based models.","PeriodicalId":36138,"journal":{"name":"in silico Plants","volume":" ","pages":""},"PeriodicalIF":2.6000,"publicationDate":"2020-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1093/insilicoplants/diaa007","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"in silico Plants","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1093/insilicoplants/diaa007","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"AGRONOMY","Score":null,"Total":0}
引用次数: 6

Abstract

The diversity of plant and crop process-based modelling platforms in terms of implementation language, software design and architectural constraints limits the reusability of the model components outside the platform in which they were originally developed, making model reuse a persistent issue. To facilitate the intercomparison and improvement of process-based models and the exchange of model components, several groups in the field joined to create the Agricultural Model Exchange Initiative (AMEI). Agricultural Model Exchange Initiative proposes a centralized framework for exchanging and reusing model components. It provides a modular and declarative approach to describe the specification of unit models and their composition. A model algorithm is associated with each model specification, which implements its mathematical behaviour. This paper focuses on the expression of the model algorithm independently of the platform specificities, and how the model algorithm can be seamlessly integrated into different platforms. We define CyML, a Cython-derived language with minimum specifications to implement model component algorithms. We also propose CyMLT, an extensible source-to-source transformation system that transforms CyML source code into different target languages such as Fortran, C#, C++, Java and Python, and into different programming paradigms. CyMLT is also able to generate model components to target modelling platforms such as DSSAT, BioMA, Record, SIMPLACE and OpenAlea. We demonstrate our reuse approach with a simple unit model and the capacity to extend CyMLT with other languages and platforms. The approach we present here will help to improve the reproducibility, exchange and reuse of process-based models.
基于过程的模型的重用:自动转换为许多编程语言和模拟平台
基于植物和作物过程的建模平台在实现语言、软件设计和体系结构约束方面的多样性限制了模型组件在最初开发的平台之外的可重用性,使模型重用成为一个持久的问题。为了促进基于过程的模型的相互比较和改进以及模型组件的交换,该领域的几个小组联合起来创建了农业模型交换倡议(AMEI)。农业模型交换倡议提出了一个用于交换和重用模型组件的集中式框架。它提供了一种模块化和声明性的方法来描述单元模型的规范及其组成。模型算法与每个模型规范相关联,实现其数学行为。本文的重点是独立于平台特性的模型算法的表达,以及如何将模型算法无缝集成到不同的平台中。我们定义了CyML,这是一种Cython派生的语言,具有实现模型组件算法的最低规范。我们还提出了CyMLT,这是一个可扩展的源代码到源代码转换系统,可以将CyML源代码转换为不同的目标语言,如Fortran、C#、C++、Java和Python,以及不同的编程范式。CyMLT还能够为DSSAT、BioMA、Record、SIMPLACE和OpenAlea等建模平台生成模型组件。我们用一个简单的单元模型展示了我们的重用方法,以及用其他语言和平台扩展CyMLT的能力。我们在这里提出的方法将有助于提高基于过程的模型的再现性、交换和重用。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
in silico Plants
in silico Plants Agricultural and Biological Sciences-Agronomy and Crop Science
CiteScore
4.70
自引率
9.70%
发文量
21
审稿时长
10 weeks
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信