Modelling frameworks are used in
modelling and simulation and can consist of a software infrastructure to develop and run
mathematical models. They have provided a substantial step forward in the area of biophysical modelling with respect to monolithic implementations. The separation of
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s from data, the reusability of
I/O procedures and integration services, and the isolation of
modelling solutions in discrete units has brought a solid advantage in the development of simulation systems. Modelling frameworks for agriculture have evolved over time, with different approaches and targets
BioMA is a software framework developed focusing on platform-independent, re-usable components, including multi-model implementations at fine granularity.
BioMA - Biophysical Model Applications
BioMA (Biophysical Model Applications) is a
public domain
The public domain (PD) consists of all the creative work to which no Exclusive exclusive intellectual property rights apply. Those rights may have expired, been forfeited, expressly Waiver, waived, or may be inapplicable. Because no one holds ...
software framework
In computer programming, a software framework is a software abstraction that provides generic functionality which developers can extend with custom code to create applications. It establishes a standard foundation for building and deploying soft ...
designed and implemented for developing, parameterizing and running
modelling solutions based on biophysical models in the domains of agriculture and environment. It is based on discrete conceptual units codified in freely extensible
software components
Component-based software engineering (CBSE), also called component-based development (CBD), is a style of software engineering that aims to construct a software system from components that are loosely-coupled and reusable. This emphasizes the sep ...
.
The goal of this framework is to rapidly bridge from prototypes to operational applications, enabling running and comparing different modelling solutions. A key aspect of the framework is the transparency which allows for quality evaluation of outputs in the various steps of the modelling workflow. The framework is based on framework-independent components, both for the modelling solutions and the
graphical user's interfaces. The goal is not only to provide a framework for model development and operational use but also, and of no lesser importance, to provide a loose collection of objects re-usable either standalone or in different frameworks. The software is developed using Microsoft C# language in the
.NET framework.
The framework is a development of the work carried out under the APE
taskof the 6th EU Framework Program .
Deployments of the platform and its tools and components have been used:
* to create weather datasets for biophysical simulation,:
* to assess the impact on crop production in Europe, and adaptation,
* to simulate the development of soil pathogens under climate change,
* to reproduce the growth and development of tree species,
* to estimate the survival of insects damaging maize under climate change
* to estimate crop suitability to environment,
* to perform modelling solutions comparison at sub-model level,
* to develop a library of reusable models for crop development and growth,
* to estimate the impact of climate change on crop production in Latin America,
* to simulate fungal infections and the dynamics of plant epidemics,
* to estimate agro-meteorological variables,
* to develop a library of functions to estimate soil hydraulic properties,
* to estimate quality of agricultural products.
* to simulate the timing and the application of agricultural management practices
* to develop a library to perform sensitivity analysis on agricultural models
* to define a library to evaluate crop model performances in reproducing field experiments
* to develop a new model of quantitative and qualitative aspects of winter rapeseed productions
* to adapt the Canegro sugar cane model for giant reed
BioMA applications and modelling solutions are the simulation tools used by th
MARS unitof the European Commission to simulate agricultural production under scenarios of
climate change
Present-day climate change includes both global warming—the ongoing increase in Global surface temperature, global average temperature—and its wider effects on Earth's climate system. Climate variability and change, Climate change in ...
. BioMA is also used in the EU FP7 projec
MODEXTREME
The architecture
The simulation system is discretized in layers, each with its own features and requirements. Such layers are the Model Layer (ModL), where fine granularity models are implemented as discrete units, the Composition Layer (CompL), where basic models are linked into more complex, aggregated models, and the Configuration Layer (ConfL), which allows providing context specific parameterization (in the software sense) for operational use. Applications can span from simple console applications to user-interacting applications based on the
model-view-controller pattern, in the simplest cases linking either directly to either the ModL or the CompL, or accessing model ConfL. In all cases, the component oriented architecture allows implementing a set of functionalities which impact on the richness of functionality of the system and on its transparency. Layers implement no top-down dependency among them, hence facilitating the independent reuse of tools, utilities, and model components in different applications and frameworks.
Cloud Architecture
In the context of th
AgriDigitproject, carried out a
CREA the BioMA framework has been adapted to execution in the Cloud via a
SaaS
Software as a service (SaaS ) is a cloud computing service model where the provider offers use of application software to a client and manages all needed physical and software resources. SaaS is usually accessed via a web application. Unlike oth ...
architecture. Model calls will be treated as an
HTTP
HTTP (Hypertext Transfer Protocol) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web, wher ...
invocation, so the Model View Controller architecture is no longer needed. Hence, the Configuration Layer has been eliminated (it is not used) for cloud services. Also the Composition Layer has been simplified.
Applications

Advanced applications can be grouped under two categories:
* BioMA-Spatial, were models are run iteratively against spatially explicit units, as either grid cells or polygons. These application can include a layer to model interaction among the spatial units;
* BioMA-Site, were models are run against specific sites. These applications can be specialized for specific crops, and in general allow a more detailed access to model constituent blocks and outputs.
Applications can be built based on the libraries as in the following figure. The libraries can be extended implementing new models, as shown in the software development kits, and new libraries can be added.
Availability
Model components and tools can be autonomously downloaded with the SDK at the components' portal. Same for modelling solutions (the portal is being renovated).
Acces to modelling solutions as SaaS need to be requested.
The BioMA Intellectual Property Rights model
Code of core components is available under the
MIT
The Massachusetts Institute of Technology (MIT) is a private research university in Cambridge, Massachusetts, United States. Established in 1861, MIT has played a significant role in the development of many areas of modern technology and sc ...
license, however, the reuse of binaries falls under the Creative Commons license as below, implying the no-commercial, share-alike clauses.
Application and tools are available under the
Creative Commons license
A Creative Commons (CC) license is one of several public copyright licenses that enable the free distribution of an otherwise copyrighted "work". A CC license is used when an author wants to give other people the right to share, use, and bu ...
as binaries, however code can be shared under specific agreements between parties. Model component developers may make code available, however, they must make binaries available for reuse.
Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
/ref>
References
{{Reflist, 30em
Simulation software
Agronomy