Free Standard AU & NZ Shipping For All Book Orders Over $80!
Register      Login
Functional Plant Biology Functional Plant Biology Society
Plant function and evolutionary biology
RESEARCH ARTICLE (Open Access)

OpenAlea: a visual programming and component-based software platform for plant modelling

Christophe Pradal A D , Samuel Dufour-Kowalski B , Frédéric Boudon A , Christian Fournier C and Christophe Godin B
+ Author Affiliations
- Author Affiliations

A CIRAD, UMR DAP and INRIA, Virtual Plants, TA A-96/02, 34398 Montpellier Cedex 5, France.

B INRIA, UMR DAP, Virtual Plants, TA A-96/02, 34398 Montpellier Cedex 5, France.

C INRA, UMR 759 LEPSE, 2 place Viala, 34060 Montpellier cedex 01, France.

D Corresponding author. Email: christophe.pradal@cirad.fr

This paper originates from a presentation at the 5th International Workshop on Functional–Structural Plant Models, Napier, New Zealand, November 2007.

Functional Plant Biology 35(10) 751-760 https://doi.org/10.1071/FP08084
Submitted: 18 March 2008  Accepted: 29 July 2008   Published: 11 November 2008

Abstract

The development of functional–structural plant models requires an increasing amount of computer modelling. All these models are developed by different teams in various contexts and with different goals. Efficient and flexible computational frameworks are required to augment the interaction between these models, their reusability, and the possibility to compare them on identical datasets. In this paper, we present an open-source platform, OpenAlea, that provides a user-friendly environment for modellers, and advanced deployment methods. OpenAlea allows researchers to build models using a visual programming interface and provides a set of tools and models dedicated to plant modelling. Models and algorithms are embedded in OpenAlea ‘components’ with well defined input and output interfaces that can be easily interconnected to form more complex models and define more macroscopic components. The system architecture is based on the use of a general purpose, high-level, object-oriented script language, Python, widely used in other scientific areas. We present a brief rationale that underlies the architectural design of this system and we illustrate the use of the platform to assemble several heterogeneous model components and to rapidly prototype a complex modelling scenario.

Additional keywords: dataflow, interactive modelling, light interception, plant modeling, software architecture.


Acknowledgements

The authors thank Mrs and Mr Hopkins for editorial help, and the two anonymous reviewers for their constructive criticism. This research has been supported by the developer community of OpenAlea, by grants from INRIA, CIRAD, and INRA (Réseau Ecophysiologique de l’Arbre), and by the ANR project NatSim.


References


Agarwal PK, Varadarajan KR (2000) Efficient algorithms for approximating polygonal chains. Discrete & Computational Geometry 23, 273–291.
Crossref | GoogleScholarGoogle Scholar | open url image1

Ascher D , Lutz M (1999) ‘Learning Python.’ (O’Reilly and Associates: Sebastopol, CA)

Chelle M, Andrieu B (1998) The nested radiosity model for the distribution of light within plant canopies. Ecological Modelling 111, 75–91.
Crossref | GoogleScholarGoogle Scholar | open url image1

Chopard J , Godin C , Traas J (2007) Toward a formal expression of morphogenesis: a mechanics based integration of cell growth at tissue scale. In ‘Proceedings of the 7th International Workshop on Information Processing in Cells and Tissues. IPCAT’. pp. 388–399. (Crook N and Scheper T: Oxford, UK)

Councill B , Heineman G T (2001) Definition of a software component and its elements. In ‘Component-based software engineering: putting the pieces together’. pp. 5–19. (Addison–Wesley Longman Publishing Co. Inc.: Boston, MA)

Da Silva D, Boudon F, Godin C, Puech O, Smith C, Sinoquet H (2006) A critical appraisal of the box counting method to assess the fractal dimension of tree crowns. Lecture Notes in Computer Science 4291, 751–760.
Crossref | GoogleScholarGoogle Scholar | open url image1

Demsar J , Zupan B , Leban G (2004) Orange: from experimental machine learning to interactive data mining. White Paper, Faculty of Computer and Information Science, University of Ljubljana.

Dufour-Kowalski S , Bassette C , Bussière F (2007) A software for the simulation of rainfall distribution on 3-D plant architecture: PyDrop. In ‘Proceedings of the 5th International Workshop on Functional–structural Plant Models’. (Eds P Prusinkiewicz, J Hanan, B Lane) pp. 29.1–29.3. (HortResearch: Auckland, New Zealand)

Durand JB , Caraglio Y , Heuret P , Nicolini E (2007) Segmentation-based approaches for characterising plant architecture and assessing its plasticity at different scales. In ‘Proceedings of the 5th international workshop on functional–structural plant models’. (Eds P Prusinkiewicz, J Hanan, B Lane) pp. 39.1–39.3. (HortResearch: Auckland, New Zealand)

Evers JB, Vos J, Chelle M, Andrieu B, Fournier C, Struik PC (2007) Simulating the effects of localized red: far-red ratio on tillering in spring wheat (Triticum aestivum) using a three-dimensional virtual plant model. New Phytologist 176, 325–336.
Crossref | GoogleScholarGoogle Scholar | PubMed | open url image1

Federl P , Prusinkiewicz P (1999) Virtual laboratory: an interactive software environment for computer graphics. In ‘Proceedings of Computer Graphics International’. pp. 93–100. (IEEE Computer Society: Washington, DC)

Fournier C, Andrieu B (1998) A 3-D architectural and process-based model of maize development. Annals of Botany 81, 233–250.
Crossref | GoogleScholarGoogle Scholar | open url image1

Fournier C, Andrieu B (1999) ADEL-maize: an L-system based model for the integration of growth processes from the organ to the canopy. Application to regulation of morphogenesis by light availability. Agronomie 19, 313–327.
Crossref | GoogleScholarGoogle Scholar | open url image1

Godin C, Sinoquet H (2005) Functional–structural plant modelling. New Phytologist 166, 705–708.
Crossref | GoogleScholarGoogle Scholar | PubMed | open url image1

Godin C, Costes E, Caraglio Y (1997) Exploring plant topological structure with the AMAPmod software: an outline. Silva Fennica 31, 355–366. open url image1

Godin C, Costes E, Sinoquet H (1999) A method for describing plant architecture which integrates topology and geometry. Annals of Botany 84, 343–357.
Crossref | GoogleScholarGoogle Scholar | open url image1

Goreaud F, Alvarez I, Courbaud B, de Coligny F (2006) Long-term influence of the spatial structure of an initial state on the dynamics of a forest growth model: a simulation study using the Capsis platform. Simulation 82, 475–495.
Crossref | GoogleScholarGoogle Scholar | open url image1

Guédon Y , Caraglio Y , Heuret P , Lebarbier E , Meredieu C (2007) Identifying and characterizing the ontogenetic component in tree development. In ‘Proceeding of the 5th International Workshop on Functional–structural Plant Models’. (Eds P Prusinkiewicz, J Hanan, B Lane) pp. 38.1–38.5. (HortResearch: Auckland, New Zealand)

Higham DJ , Higham NJ (2005) ‘MATLAB Guide SIAM: Society for Industrial and Applied Mathematic.’ (Society for Industrial and Applied Mathematics: Philadelphia, PA)

Johnston WM, Hanna JRP, Millar RJ (2004) Advances in dataflow programming languages. ACM Computing Surveys 36, 1–34.
Crossref | GoogleScholarGoogle Scholar | open url image1

Kniemeyer O , Buck-Sorlin G , Kurth W (2006) GroIMP as a platform for functional–structural modelling of plants. In ‘Functional–structural plant modelling in crop production’. pp. 43–52. (Springer-Verlag: Dordrecht, The Netherlands)

Knight S (2005) Building software with Scons. Computing in Science & Engineering 7, 79–88.
Crossref | GoogleScholarGoogle Scholar | open url image1

Ludascher B, Altintas I, Berkley C, Higgins D, Jaeger E, Jones M, Lee EA, Tao J, Zhao Y (2006) Scientific workflow management and the Kepler system. Concurrency and Computation: Practice and Experience 18, 1039–1065.
Crossref | GoogleScholarGoogle Scholar | open url image1

Mech R , Prusinkiewicz P (1996) Visual models of plants interacting with their environments. In ‘SIGGRAPH ’96’. (Ed. H Rushmeier) pp. 397–410. (Addison-Wesley: New York)

Oliphant TE (2007) Python for scientific computing. Computing in Science & Engineering 9, 10–20.
Crossref | GoogleScholarGoogle Scholar | open url image1

Ousterhout JK (1998) Scripting: higher-level programming for the 21st century. Computer 31, 23–30.
Crossref | GoogleScholarGoogle Scholar | open url image1

Piegl L , Tiller W (1997) ‘The Nurbs book.’ (Springer-Verlag: New York)

Pommel B, Sohbi Y, Andrieu B (2001) Use of virtual 3-D maize canopies to assess the effect of plot heterogeneity on radiation interception. Agricultural and Forest Meteorology 110, 55–67.
Crossref | GoogleScholarGoogle Scholar | open url image1

Pradal C , Boudon F , Nouguier C , Chopard J , Godin C (2007) PlantGL: a Python-based geometric library for 3-D plant modelling at different scales. INRIA Research Report. (INRIA: Sophia Antipolis, France)

Prévot L, Aries F, Monestiez P (1991) Modélisation de la structure géométrique du maïs. Agronomie 11, 491–503.
Crossref | GoogleScholarGoogle Scholar | open url image1

Prusinkiewicz P (2004) Art and science for life: designing and growing virtual plants with L-systems. Acta Horticulturae 630, 15–28. open url image1

Prusinkiewicz P , Hanan J (2007) ‘Proceedings of the 4th International Workshop on Functional–structural Plant Models, FSPM05.’ (HortResearch: Napier, New Zealand)

Prusinkiewicz P , Lindenmayer A (1990) ‘The algorithmic beauty of plants.’ (Springer-Verlag: New York)

Prusinkiewicz P , Karkowski R , Lane B (2007) The L + C plant-modelling language. In ‘Functional–structural plant modelling in crop production’. pp. 27–42. (Springer-Verlag: Dordrecht, The Netherlands)

R Development Core Team (2007) ‘An introduction to R.’ (Network Theory Limited: Bristol, UK)

Raymond ES (2003) ‘The art of Unix programming.’ (Pearson Education: UK)

Sanner MF (1999) Python: a programming language for software integration and development. Journal of Molecular Graphics & Modelling 17, 57–61.
PubMed |
open url image1

Sanner MF , Stoffler D , Olson AJ (2002) ViPEr, a visual programming environment for Python. In ‘Proceedings of the 10th International Python Conference’. pp. 103–115.

Sinoquet H, Roux XL, Adam B, Ameglio T, Daudet FA (2001) RATP: a model for simulating the spatial distribution of radiation absorption, transpiration and photosynthesis within canopies: application to an isolated tree crown. Plant, Cell & Environment 24, 395–406.
Crossref | GoogleScholarGoogle Scholar | open url image1

Szyperski C (1998) ‘Component software: beyond object-oriented programming.’ (Addison-Wesley: Harlow, England)

Upson C, Faulhaber TA, Kamins D, Laidlaw D, Schlegel D, Vroom J, Gurwitz R, van Dam A (1989) The application visualization system: a computational environment for scientific visualization. Computer Graphics and Applications 9, 30–42.
Crossref | GoogleScholarGoogle Scholar | open url image1

Vos J , Marcelis LFM , De Visser PHB , Struik PC , Evers JB (2007) ‘Functional–structural plant modelling in crop production.’ (Springer-Verlag: Dordrecht, The Netherlands)

Weber J , Penn J (1995) Creation and rendering of realistic trees. In ‘Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques’. pp. 119–128. (ACM Press: New York)