The developed application allows interactive modelling of natural trees and has an integrated simulator which simulates life of trees within ecosystem considering real terrain data. The interactive modeller module firstly features rapid, yet flexible construction (parametrization) of new 3D procedural models for tree species. Parametrized procedural models can be used to instantiate differently personalized individual geometrical models of trees for same species, with different age and environmental impact. Obtained models of trees are used to animate spontaneous afforestation of forests during several centuries. To create a visually realistic distribution of trees across landscape, simulator for life of trees is used. The simulator considers real terrain data (DEM - Digital Terrain Model elevation data) and computes living conditions for trees to simulate biological principles. Main living conditions considered are height above sea level, slope, sun, and wind. Trees compete between them selves for survival. Seed distribution is also considered, emerging in communities of trees on similar areas. Several hints and experience is used from literature to gain performance of the simulation process and create a realistic visualization of an emerging ecosystems.
Progress: unpublished version is strongly parallelized, includes reconstruction of tree models from images, better statistical analysis, natural catastropy simulation, and interactive afforestation.
Author: Aleš Zamuda
The application allows geometry export and reuse for video rendering:
More video and previews: Presentation: EcoMod screencast
The EcoMod application is written in C++ and uses Qt4 and OpenGL, and is therefore operating system (Linux/Mac/Win32), processor architecture (32/64-bit), and C++ compiler (GCC, MinGW, MSVC) independent application, . It has three main interconnected modules, each having a special purpose:
1. Modeller of 3D geometrical natural trees is the first, very interactive component of the application. Procedural model of the tree bases on Holton strand model, but is modified/improved in many ways, e.g. for easier parametrization or additional animation techniques. It allows interactive parametrization of procedural tree model with use of graphs and other interactive widgets. Obtained parameters are saved in a flat file, where float numbers are saved in plain text format. These files can be loaded, as also some predefined library files are provided with the application. Rendering of a procedural model is done using OpenGL, and OpenGL context is reserved trough Qt4 widget QGLWidget.
2. Visualization of ecosystems is the second module, rendering a real terrain data landscape. Vertex buffer is used for landscape mesh visualization. The code uses the GLee library for work with the OpenGL extensions in a platform-independent manner. Tree models are obtained from the 3D modeller part, and placed on growth locations of trees from ecosystem growth simulation. A scene may include up to several hundred thousand trees, i.e. collectively more than 100,000,000 triangles. Instantiated procedural models are therefore simplified according to the level of detail, or removed by culling to speed up the visualization.
3. Artificial life simulation of trees/plants within the ecosystem is a real-data living condition, plant competition and plant spread model. Stochastic simulation with a LCG random generator is used. The real data is obtained from Digital Elevation Model (GIS-like data), and moisture, windiness and sunniness of loaded terrain is calculated on the fly. This component can be used as a framework, by using several of algorithms for other, multidisciplinary purposes.
Some scientific papers have already been published based on the application framework, as seen at http://labraj.uni-mb.si/~ales/ecomod, and everyone is encouraged to join the development (see http://sourceforge.net/projects/ecomod/ as well). The application is also listed in software encyclopedia Softpedia.
Application is licensed under the terms of the GPL license version 2. Current full author (i.e. 30.000+ lines of code) is Aleš Zamuda. If you are using the application or further developing it, I were happy of any mail.
Stable version (EcoMod 1.0) is accessible under GPL open source license:
- Linux (ecomod-linux-1.0.zip),
- BSD (ecomod-bsd-1.0.zip),
- Windows (ecomod-win32-1.0.zip),
- Source code (ecomod-src-1.0.zip).
Requirements to run: a feasible graphical card driver, and Qt4 under Linux and BSD.
- gold medal at International invention fair SIIF 2012
- most important scientific result of year 2011 in national research programme P2-0041 Computer Systems, Methodologies, and Intelligent Services
- University of Maribor award for research work (Andrej Perlach's award) - at Rector's Day of University of Maribor '08 (ratification),
- faculty awards for research work - at Day of faculty 2006 (ratification), Day of faculty 2007 (ratification) and Day of FERI 2008 (4.12.2008),
- vice champion (2nd place) of the Student Paper Competition of the IEEE Region 8, which was held at the conference EUROCON 2007 in Poland, between 9th and 12th Sept. 2007 (certificate),
- victory at competition of student papers ERK '06 (certificate) and then invitation (2 March 2007) to compete with the 5 best papers on the Student Paper Competition of the IEEE Region 8 (Europe, Africa, Middle East), which was held in Poland, between 9th and 12th Sept. 2007 (IEEE site news),
- memorial gift of MVZT minister for visible results on international competitions, at reception for students, university and faculty leaders and public research institutions,
- first award and golden plaque at competition for most inventive and business oriented project Eureka! mladi 2008, Ljubljana, 22. 10. 2008.
(pdf) H. Hamann, Y. Khaluf, J. Botev, M. Divband Soorati, E. Ferrante, O. Kosak, J.-M. Montanier, S. Mostaghim, R. Redpath, J. Timmis, F. Veenstra, M. Wahby, A. Zamuda. Hybrid Societies: Challenges and Perspectives in the Design of Collective Behavior in Self-organizing Systems. Frontiers in Robotics and AI, 2016, vol. 3, no. 14. DOI 10.3389/frobt.2016.00014.
(pdf) A. Zamuda, J. Brest. Vectorized Procedural Models for Animated Trees Reconstruction using Differential Evolution. Information Sciences, 2014, vol. 278, pp. 1-21. DOI 10.1016/j.ins.2014.04.037.
(pdf) A. Zamuda, J. Brest. Environmental Framework to Visualize Emergent Artificial Forest Ecosystems. Information Sciences, 2013, vol. 220, pp. 522-540. DOI 10.1016/j.ins.2012.07.031.
(pdf) A. Zamuda, J. Brest, B. Bošković, V. Žumer. Differential Evolution for Parameterized Procedural Woody Plant Models Reconstruction. Applied Soft Computing, 2011, vol. 11, no. 8, pp. 4904-4912. DOI 10.1016/j.asoc.2011.06.009.
(pdf) A. Zamuda, J. Brest. Tree Model Reconstruction Innovization Using Multi-objective Differential Evolution. 2012 IEEE World Congress on Computational Intelligence (IEEE WCCI 2012), Brisbane, Australia, 2012, pp. 575-582.
(pdf) A. Zamuda, J. Brest, B. Bošković, V. Žumer. Woody Plants Model Recognition by Differential Evolution. The 4th International Conference on Bioinspired Optimization Methods and their Applications (BIOMA 2010), 2010, pp. 205-215.
(pdf) A. Zamuda, J. Brest, N. Guid, and V. Žumer. Modelling, Simulation, and Visualization of Forest Ecosystems. The IEEE Region 8 EUROCON 2007: International conference on 'Computer as a tool', September 9-12, 2007, Warsaw, Poland, 2007, pp. 2600-2606.
(pdf) A. Zamuda, J. Brest, N. Guid, and V. Žumer. Construction of Virtual Trees within Ecosystems with EcoMod Tool. IPSI-2006 Slovenia, International Conference on Advances in the Internet, Processing, Systems, and Interdisciplinary Research, Book of Abstracts, 2006, pp. 15.
(pdf) A. Zamuda. Modeliranje, simulacija in upodabljanje drevesnih ekosistemov. Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, diplomska naloga, 2006, pp. .
(pdf) A. Zamuda, J. Brest, V. Žumer. Razpoznava numerično kodiranih proceduralnih modelov iz slik naravnih dreves z uporabo diferencialne evolucije. Zbornik osemnajste mednarodne Elektrotehniške in računalniške konference ERK, 2009, pp. 171-174.
(pdf) A. Zamuda, N. Guid. Modeliranje, simulacija in upodabljanje gozdov. Zbornik petnajste mednarodne Elektrotehniške in računalniške konference ERK, 2006, pp. 391-392.
(pdf) A. Zamuda, D. Strnad. Interaktivni modelirnik realističnih animiranih dreves. Zbornik trinajste mednarodne Elektrotehniške in računalniške konference ERK, 2004, pp. 11-14.
(pdf) A. Zamuda. Modeliranje, simulacija in upodabljanje gozdov z aplikacijo EcoMod. Eureka! Inovacije mladih - Natečaj najbolj inventivni in podjetniško usmerjeni projekti 2008, 2008, pp. 1-4.
(pdf) A. Zamuda. Modeliranje, simulacija in upodabljanje gozdov. Abakus, 2007, pp. 22-23.
Presentations and Events
- PhD Thesis Defence (Aleš Zamuda).
- Presentation: EcoMod screencast.
- ULPGC ERASMUS TS Mobility Lecture 2012: "Heterogeneous Computer Systems in the View of Ubiquitous Computing and Connectible Intelligent Services".
- Conference CEC 2012: Tree Model Reconstruction Innovization Using Multi-objective Differential Evolution.
- Conference BIOMA 2010: Woody Plants Model Recognition by Differential Evolution.
- National events and awards: Conference ERK 2010, Slovenski forum inovacij 2008.
- VIPSI-2006 Slovenia: Construction of Virtual Trees within Ecosystems with EcoMod Tool.