Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Difference between revisions of "EcoMod"


 
(48 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Image:EcoMod splashscreen.png]]
 +
 
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 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 features rapid, yet flexible construction of new  3D procedural models for tree species. Procedural models can be used to instantiate differently personalized individual geometrical models of trees for  same species, with different age and environmental impact.
+
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.
 
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 space. Seed distribution is also considered, emerging in communities of trees on similar areas.
+
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.
 
Several hints and experience is used from literature to gain performance of the simulation process and create a realistic visualization of an emerging ecosystems.
  
In not so distant future: version v1.1 will be published, featuring stronger statistical analyses and natural catastropy simulation.
+
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]]
 +
 
 +
'''Contact:''' [mailto:ales.zamuda@uni-mb.si ales.zamuda@uni-mb.si]
 +
 
 +
== Screenshots ==
 +
<gallery>
 +
Image:ecomodSCR_01.PNG
 +
Image:ecomodSCR_02.PNG
 +
Image:ecomodSCR_03.PNG
 +
Image:ecomodSCR_04.PNG
 +
Image:ecomodSCR_05.PNG
 +
Image:ecomodSCR_06.PNG
 +
Image:ecomodSCR_07.PNG
 +
Image:ecomodSCR_08.PNG
 +
Image:ecomodSCR_09.PNG
 +
Image:ecomodSCR_10.PNG
 +
Image:ecomodSCR_11.PNG
 +
</gallery>
  
[[Image:EcoMod splashscreen.png]]
+
'''The application allows geometry export and reuse for video rendering:'''
 +
<table><tr><td>{{#ev:youtube|O0HUQR1mTbg}}</td><td>{{#ev:youtube|V9YJgYO_sIA}}</td></tr></table>
  
'''Contact:''' ales.zamuda@uni-mb.si
+
'''More video and previews:''' [[Presentation: EcoMod screencast]]
  
 
== Implementation specifics ==
 
== Implementation specifics ==
EcoMod application is a Qt4 and OpenGL OS-independent application, written in
+
The EcoMod application is written in [http://en.wikipedia.org/wiki/C++ C++] and uses [http://en.wikipedia.org/wiki/Qt_(toolkit) Qt4] and [http://en.wikipedia.org/wiki/OpenGL 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:
C++. It has three main interconnected modules, each having a special purpose.
 
  
 
1. Modeller of 3D geometrical natural trees is the first, very interactive
 
1. Modeller of 3D geometrical natural trees is the first, very interactive
 
component of the application. Procedural model of the tree bases on Holton
 
component of the application. Procedural model of the tree bases on Holton
strand model, but is modified/improved in many ways. It allows interactive
+
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
 
parametrization of procedural tree model with use of graphs and other
 
interactive widgets. Obtained parameters are saved in a flat file, where float
 
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
 
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
 
predefined library files are provided with the application. Rendering of a
procedural model is done using OpenGL, and OpenGL context is reserved trough
+
procedural model is done using OpenGL, and OpenGL context is reserved trough Qt4 widget
QGLWidget.
+
[http://doc.trolltech.com/latest/qglwidget.html QGLWidget].
  
 
2. Visualization of ecosystems is the second module, rendering a real terrain
 
2. Visualization of ecosystems is the second module, rendering a real terrain
data landscape. Vertex buffer is used for landscape mesh visualization. Tree
+
data landscape. Vertex buffer is used for landscape mesh visualization. The code uses the [http://en.wikipedia.org/wiki/GLEE GLee library] for work with the [http://en.wikipedia.org/wiki/OpenGL#Extensions OpenGL extensions] in a [http://en.wikipedia.org/wiki/Cross-platform platform-independent] manner. Tree
 
models are obtained from the 3D modeller part, and placed on growth locations of
 
models are obtained from the 3D modeller part, and placed on growth locations of
trees. Instantiated geometrical models are simplified according to the LOD, or
+
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 [http://en.wikipedia.org/wiki/Level_of_detail_(programming) level of detail], or removed by culling to speed up the visualization.
removed by culling. Up to several hundred thousand trees on scene can be used.
 
  
3. Artificial life simulation of trees/plants within the ecosystem is a
+
3. [http://en.wikipedia.org/wiki/Artificial_life Artificial life] simulation of trees/plants within the ecosystem is a
 
real-data living condition, plant competition and plant spread model. Stochastic
 
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
 
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
+
[http://en.wikipedia.org/wiki/Digital_Elevation_Model 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
 
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.
 
framework, by using several of algorithms for other, multidisciplinary purposes.
 
The code uses the GLee library for work with the OpenGL extensions in a
 
platform-independent manner.
 
  
 
Some scientific papers have already been published based on the application
 
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
+
framework, as seen at [http://labraj.uni-mb.si/~ales/ecomod http://labraj.uni-mb.si/~ales/ecomod], and everyone is
encouraged to join the development.
+
encouraged to join the development (see [http://sourceforge.net/projects/ecomod/ http://sourceforge.net/projects/ecomod/] as well). The application is also listed in software encyclopedia [http://mac.softpedia.com/get/Developer-Tools/EcoMod.shtml Softpedia].
 
 
Application is licensed under the terms of the GPL license.
 
  
== Files ==
+
Application is licensed under the terms of the [http://en.wikipedia.org/wiki/GNU_General_Public_License 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.
  
 +
== Files Download ==
 
Stable version (EcoMod 1.0) is accessible under GPL open source license:
 
Stable version (EcoMod 1.0) is accessible under GPL open source license:
 
* Linux ([http://labraj.uni-mb.si/~ales/ecomod-linux-1.0.zip ecomod-linux-1.0.zip]),
 
* Linux ([http://labraj.uni-mb.si/~ales/ecomod-linux-1.0.zip ecomod-linux-1.0.zip]),
Line 55: Line 71:
 
* Source code ([http://labraj.uni-mb.si/~ales/ecomod-src-1.0.zip ecomod-src-1.0.zip]).
 
* Source code ([http://labraj.uni-mb.si/~ales/ecomod-src-1.0.zip ecomod-src-1.0.zip]).
  
Requirements for run: a feasible graphical card driver, and Qt4 under Linux and BSD.
+
Requirements to run: a feasible graphical card driver, and Qt4 under Linux and BSD.
 +
 
 +
== Awards ==
 +
* gold medal at [[International invention fair SIIF 2012]]
 +
* [http://sicris.izum.si/search/prj_biblio_report.aspx?lang=eng&id=6131&type=PRG&signific=world&period=year&year=2011 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 [http://www.vecer.si/clanek2008010905282810 Rector's Day of University of Maribor '08] ([[Media:unimb08_zamuda_priznanje.pdf|ratification]]),
 +
* faculty awards for research work - at [[Day of faculty '06 | Day of faculty 2006]] ([[Media:feri06_zamuda_priznanje.pdf|ratification]]), [http://www.feri.uni-mb.si/Fotogalerije/DanFeri2007/index.html Day of faculty 2007] ([[Media:feri07_zamuda_priznanje.pdf|ratification]]) and [http://www.feri.uni-mb.si/Fotogalerije/DanFeri2008/index.html Day of FERI 2008] (4.12.2008),
 +
* vice champion (2nd place) of the [http://www.sps.ele.tue.nl/members/m.j.bastiaans/spc/ Student Paper Competition of the IEEE Region 8], which was held at the conference EUROCON 2007 in Poland, between 9th and 12th Sept. 2007 ([[Media:ieee07_zamuda_certificate.pdf|certificate]]),
 +
* victory at competition of student papers [[Conference ERK '06|ERK '06]] ([[Media:erk06_zamuda_potrdilo.pdf|certificate]]) and then invitation (2 March 2007) to compete with the 5 best papers on the [http://www.sps.ele.tue.nl/members/m.j.bastiaans/spc/ Student Paper Competition of the IEEE Region 8] (Europe, Africa, Middle East), which was held in Poland, between 9th and 12th Sept. 2007 ([http://ieee-r8sac.org/?p=89 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.
  
 
== Papers ==
 
== Papers ==
{{cite conference local |
+
<table style="position: relative"><tr>
 +
<td style="vertical-align: top;">
 +
{{cite |
 +
  authors = 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 |
 +
  title = Hybrid Societies: Challenges and Perspectives in the Design of Collective Behavior in Self-organizing Systems |
 +
  url = http://journal.frontiersin.org/article/10.3389/frobt.2016.00014/full |
 +
  journal = Frontiers in Robotics and AI |
 +
  year = 2016  |
 +
  pages = ?? |
 +
  volume = 3 |
 +
  issue = 14 |
 +
  doi = 10.3389/frobt.2016.00014  |
 +
  citetype = Article |
 +
  name = HamannKhalufBotevDivbandFerranteKosakMontanierMostaghimRedpathTimmisVeenstraWahbyZamuda-2016-HybridSocieties-FRAI}}
 +
</td>
 +
<td style="vertical-align: top;" width="150px" height="120px">[[File:HybridSocieties_FRAI_2016_thumb.png|link=]]</td>
 +
</tr></table>
 +
 
 +
<table style="position: relative"><tr><td width="150px" height="120px">[[File:Zamuda-EcoMod-vectorized.png|link=]]</td><td>
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest |
 +
  title = Vectorized Procedural Models for Animated Trees Reconstruction using Differential Evolution |
 +
  url = http://www.aleszamuda.si/w/wp-content/uploads/2010/05/INS-Zamuda-Vectorized_Procedural_Models_for_Animated_Trees_Reconstruction_using_Differential_Evolution-manuscript.pdf |
 +
  journal = Information Sciences |
 +
  year = 2014 |
 +
  pages = 1-21 |
 +
  volume = 278 |
 +
  issue = ?? |
 +
  doi = 10.1016/j.ins.2014.04.037 |
 +
  citetype = Article |
 +
  name = Zamuda2014VectorizedAnimReconstrPrInfSci}}
 +
</td></tr></table>
 +
 
 +
<table style="position: relative"><tr><td width="150px" height="65px">[[File:Zamuda-EcoMod-environ.png|link=]]</td><td>
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest |
 +
  title = Environmental Framework to Visualize Emergent Artificial Forest Ecosystems |
 +
  url = http://www.aleszamuda.si/w/arts/#publications |
 +
  journal = Information Sciences |
 +
  year = 2013 |
 +
  pages = 522-540 |
 +
  volume = 220 |
 +
  issue = ?? |
 +
  doi = 10.1016/j.ins.2012.07.031 |
 +
  citetype = Article |
 +
  name = Zamuda:2012:EnvironForestEcosystems-InfSci}}
 +
</td></tr></table>
 +
 
 +
<table width="100%"><tr><td width="150px">[[File:Zamuda-ecomod-jde.png|link=]]</td><td>
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest, B. Bošković, V. Žumer |
 +
  title = Differential Evolution for Parameterized Procedural Woody Plant Models Reconstruction |
 +
  url = http://www.aleszamuda.si/w/arts/#publications |
 +
  journal = Applied Soft Computing |
 +
  year = 2011 |
 +
  pages = 4904-4912|
 +
  volume = 11 |
 +
  issue = 8 |
 +
  citetype = Article |
 +
  name = ZamudaASC2011 |
 +
  doi = 10.1016/j.asoc.2011.06.009}}
 +
</td></tr></table>
 +
 
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest |
 +
  title = Tree Model Reconstruction Innovization Using Multi-objective Differential Evolution |
 +
  url = http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6256413 |
 +
  journal =  2012 IEEE World Congress on Computational Intelligence (IEEE WCCI 2012), Brisbane, Australia |
 +
  year = 2012 |
 +
  pages = 575-582 |
 +
  volume = ?? |
 +
  issue = ??  |
 +
  citetype = InProceedings |
 +
  name = ZamudaWCCI2012 |
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest, B. Bošković, V. Žumer |
 +
  title = Woody Plants Model Recognition by Differential Evolution |
 +
  url=http://labraj.uni-mb.si/images/3/31/BIOMA_2010_Zamuda_Woody_Plants_Model_Recognition_by_Differential_Evolution.pdf |
 +
  journal = The 4th International Conference on Bioinspired Optimization Methods and their Applications (BIOMA 2010) |
 +
  year = 2010 |
 +
  pages = 205-215 |
 +
  citetype = InProceedings |
 +
  name = ZamudaBIOMA2010
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest, N. Guid, and V. Žumer |
 +
  title = Modelling, Simulation, and Visualization of Forest Ecosystems|
 +
  url = http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4400683 |
 +
  journal = The IEEE Region 8 EUROCON 2007: International conference on 'Computer as a tool', September 9-12, 2007, Warsaw, Poland |
 +
  year = 2007 |
 +
  pages = 2600-2606 |
 +
  citetype = InProceedings |
 +
  name = ZamudaEUROCON2007
 +
}}
 +
 
 +
{{cite |
 
   authors = A. Zamuda, J. Brest, N. Guid, and V. Žumer |
 
   authors = A. Zamuda, J. Brest, N. Guid, and V. Žumer |
 
   title = Construction of Virtual Trees within Ecosystems with EcoMod Tool |  
 
   title = Construction of Virtual Trees within Ecosystems with EcoMod Tool |  
   url = Media:Ales ipsi06.pdf |
+
   media = Media:Ales ipsi06.pdf |
 
   journal = IPSI-2006 Slovenia, International Conference on Advances in the Internet, Processing, Systems, and Interdisciplinary Research |
 
   journal = IPSI-2006 Slovenia, International Conference on Advances in the Internet, Processing, Systems, and Interdisciplinary Research |
 
   year = Book of Abstracts, 2006 |
 
   year = Book of Abstracts, 2006 |
   pages = 15}}
+
   pages = 15 |
 +
  citetype = InProceedings |
 +
  name = ZamudaIPSI2006
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda |
 +
  title = Modeliranje, simulacija in upodabljanje drevesnih ekosistemov |
 +
  url = http://labraj.uni-mb.si/~ales/papers/ales_zamuda_diploma_with_front_pages_and_signatures.pdf |
 +
  journal = Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko |
 +
  year = diplomska naloga, 2006 |
 +
  pages = |
 +
  citetype = thesis |
 +
  name = Zamuda2006dipl
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda, J. Brest, V. Žumer |
 +
  title = Razpoznava numerično kodiranih proceduralnih modelov iz slik naravnih dreves z uporabo diferencialne evolucije |
 +
  media = Media:erk09-zamuda.pdf |
 +
  journal = Zbornik osemnajste mednarodne Elektrotehniške in računalniške konference ERK |
 +
  year = 2009|
 +
  pages = 171-174 |
 +
  citetype = InProceedings |
 +
  name = ZamudaERK2009
 +
}}
  
{{cite conference local |  
+
{{cite |  
 
   authors = A. Zamuda, N. Guid |
 
   authors = A. Zamuda, N. Guid |
 
   title = Modeliranje, simulacija in upodabljanje gozdov |  
 
   title = Modeliranje, simulacija in upodabljanje gozdov |  
   url = Media:Ales erk06.pdf |
+
   media = Media:Ales erk06.pdf |
 
   journal = Zbornik petnajste mednarodne Elektrotehniške in računalniške konference ERK |
 
   journal = Zbornik petnajste mednarodne Elektrotehniške in računalniške konference ERK |
   year = 2006|
+
   year = 2006 |
   pages = 391-392}}
+
   pages = 391-392 |
 
+
   citetype = InProceedings |
{{cite journal nopages nodoi |  
+
   name = ZamudaERK2006
   authors = A. Zamuda |
+
}}
   title = Modeliranje, simulacija in upodabljanje drevesnih ekosistemov |
 
  url = http://labraj.uni-mb.si/~ales/papers/ales_zamuda_diploma_with_front_pages.pdf |
 
  journal = Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko |
 
  year = diplomska naloga |
 
  issue = 2006}}
 
  
{{cite conference local |  
+
{{cite |  
 
   authors = A. Zamuda, D. Strnad |
 
   authors = A. Zamuda, D. Strnad |
 
   title = Interaktivni modelirnik realističnih animiranih dreves |  
 
   title = Interaktivni modelirnik realističnih animiranih dreves |  
   url = Media:Ales erk04.pdf |
+
   media = Media:Ales erk04.pdf |
 
   journal = Zbornik trinajste mednarodne Elektrotehniške in računalniške konference ERK |
 
   journal = Zbornik trinajste mednarodne Elektrotehniške in računalniške konference ERK |
   year = 2004|
+
   year = 2004 |
   pages = 11-14}}
+
   pages = 11-14 |
 +
  citetype = InProceedings |
 +
  name = ZamudaERK2004
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda |
 +
  title = Modeliranje, simulacija in upodabljanje gozdov z aplikacijo EcoMod |
 +
  url = http://www.inovativnost.net/projekti/Inovacije08-zlate-BL/01_ecomod.pdf |
 +
  pages = 1-4 |
 +
  journal = Eureka! Inovacije mladih - Natečaj najbolj inventivni in podjetniško usmerjeni projekti 2008 |
 +
  year = 2008 |
 +
  citetype = Article |
 +
  name = ZamudaEUREKA2008
 +
}}
 +
 
 +
{{cite |
 +
  authors = A. Zamuda |
 +
  title = Modeliranje, simulacija in upodabljanje gozdov |
 +
  media = Media:abakus-jan07_web-zamuda.pdf |
 +
  journal = Abakus |
 +
  year = 2007 |
 +
  volume = 7 |
 +
  pages = 22-23 |
 +
  citetype = Article |
 +
  name = ZamudaABAKUS2007
 +
}}
 +
 
 +
== 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]], [http://labraj.uni-mb.si/Slovenski_forum_inovacij_2008 Slovenski forum inovacij 2008].
 +
*[[VIPSI-2006 Slovenia]]: Construction of Virtual Trees within Ecosystems with EcoMod Tool.
  
 +
== External links ==
 +
* [http://en.wikipedia.org/wiki/Artificial_life Artificial life (Wikipedia)]
 +
*[http://algorithmicbotany.org/papers/ Publications of Algorithmic Botany @ University of Calgary]
 +
*[http://www.swarm-design.org/ Swarm design]
 +
*[http://graphics.cs.uni-sb.de/Publications/index.htmlhttp://graphics.cs.uni-sb.de/Publications/index.html Publications of Computer Graphics Lab @ University of Saarbrücken]
 +
** [http://www.openrt.de/ OpenRT Realtime Ray-Tracing Project]
  
 
[[Category:Aleš Zamuda]]
 
[[Category:Aleš Zamuda]]

Latest revision as of 16:56, 14 March 2016

EcoMod splashscreen.png

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

Contact: ales.zamuda@uni-mb.si

Screenshots

The application allows geometry export and reuse for video rendering:

More video and previews: Presentation: EcoMod screencast

Implementation specifics

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.

Files Download

Stable version (EcoMod 1.0) is accessible under GPL open source license:

Requirements to run: a feasible graphical card driver, and Qt4 under Linux and BSD.

Awards

Papers

(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.

HybridSocieties FRAI 2016 thumb.png
Zamuda-EcoMod-vectorized.png

(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.

Zamuda-EcoMod-environ.png

(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.

Zamuda-ecomod-jde.png

(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

External links