From Molecules To Landscapes: Rule-based FSPMs in the Language XL
Winfried Kurth
Brandenburg University of Technology at Cottbus, Chair for Graphics Systems
1. Strengths and weaknesses of traditional approaches in plant modelling
2. Relational Growth Grammars (RGGs) as a generic tool on a formal level
3. The language XL
4. Future perspectives
Cottbus, 10. 3. 2008
Cottbus, 10. 3. 2008
1. Strengths and weaknesses of traditional approaches in plant modelling
Challenges:
• connection of structure and function in a coherent model framework
• bridging the gap between different scales
bio-/geosphere
region
ecosystem
population
individual
organ
tissue
cell
organell / genome
molecule
GEOINFORMATICS
BIOINFORMATICS /SYSTEMS BIOLOGY
Cottbus, 10. 3. 2008
bio-/geosphere
region
ecosystem
population
individual
organ
tissue
cell
organell / genome
molecule
GEOINFORMATICS
BIOINFORMATICS /SYSTEMS BIOLOGY
Cottbus, 10. 3. 2008
ECOLOGICALINFORMATICS
Transfer of the Systems Biology viewpoint to higher scale levels
Tools for modelling and simulation:
(a) classical PBM (process-based models)
- pools of substrates in compartments
- fluxes between pools
Example:
STELLAflowcharts
mathematical formalisms:
- qualitative: Petri nets
- quantitative: systems of differential equations
tools:
- numerics software
- graphical modelling environments (e.g., STELLA)
Cottbus, 10. 3. 2008
Cottbus, 10. 3. 2008
PBM – drawbacks:
• spatial structure often poorly represented
Cottbus, 10. 3. 2008
PBM – drawbacks:
• spatial structure often poorly represented
• no representation of the objects with which the user really works
PBM – drawbacks:
• spatial structure often poorly represented
• no representation of the objects with which the user really works
• parameters partially difficult to measure and to interpret
Cottbus, 10. 3. 2008
(b) structural models
- entities: organs / modules (biologically senseful and visualizable entities)
- effects of interaction occur emergently
- parameters: relatively few, measurable
barley model
(Buck-Sorlin et al. 2005)
Cottbus, 10. 3. 2008
(b) structural models
- entities: organs / modules (biologically senseful and visualizable entities)
- effects of interaction occur emergently
- parameters: relatively few, measurable
Cottbus, 10. 3. 2008
most important approach from computer science for this type of models (until recently):
Lindenmayer systems (L-systems)
Examples of L-system based plant models:
Prusinkiewicz & Lindenmayer 1990
K. 1998, 1999
Applications:
virtual plant structures as a basis for simulations, e.g.,
light interception in a tree stand (Knyazikhin, Ibrom, K. 1997)
water flow in a tree (Früh & K. 1999)
structure has impact on function – example of xylem sap flow
(Früh & K. 1999)
spruce (L-system model)
spruce (3D measurement)
Thuja (3D measurement)
Cottbus, 10. 3. 2008
structural models – drawbacks:
• no (or very sparse) taking into acount of the functional aspects of organisms
• no metabolism, no linkage with lower scale levels
Cottbus, 10. 3. 2008
structural models – drawbacks:
• no (or very sparse) taking into acount of the functional aspects of organisms
• no metabolism, no linkage with lower scale levels
Cottbus, 10. 3. 2008
combination of model types
(c) Functional-structural plant models, FSPM
Idea: distribution of the processes to the modules
(c) Functional-structural plant models, FSPM
Idea: distribution of the processes to the modules
Tool: object-oriented programming
example of ALMIS
(Eschenbach 2000)
(c) Functional-structural plant models, FSPM
Idea: distribution of the processes to the modules
Tool: object-oriented programming
example of ALMIS
(Eschenbach 2000)
FSPM example LIGNUM (Perttunen et al. 1996, 1998, Dzierzon & K. 2002;Sievänen et al. 2006)
Drawbacks of ad hoc FSPMs from the last years:
isolated solutions, often strongly specialized
Cottbus, 10. 3. 2008
Drawbacks of ad hoc FSPMs from the last years:
isolated solutions, often strongly specialized
large, complex source code, containing technical details mixed with fundamental features of the model
Cottbus, 10. 3. 2008
Drawbacks of ad hoc FSPMs from the last years:
isolated solutions, often strongly specialized
large, complex source code, containing technical details mixed with fundamental features of the model
low compatibility of the models with each other
Cottbus, 10. 3. 2008
Drawbacks of ad hoc FSPMs from the last years:
isolated solutions, often strongly specialized
large, complex source code, containing technical details mixed with fundamental features of the model
low compatibility of the models with each other
complexity of the tool (for the user) has to be reduced
a further challenge:
Cottbus, 10. 3. 2008
traditional, commonly-used programming languages obviously not optimal for the purpose
Cottbus, 10. 3. 2008
formal basis for tools in ecological informatics?
grammars
Cottbus, 10. 3. 2008
Eric Mjolsness, Univ. of California 2006:
"Future multiscale models must be able to integrate all the major different types of dynamical systems models, ...
These goals are achieved by the modelling framework of... grammars."
Cottbus, 10. 3. 2008
formal basis for tools in ecological informatics?
grammars
2. Relational Growth Grammars (RGG) as a generic tool on a formal level
point from where to start:
L systems
(parallel string rewriting)
Cottbus, 10. 3. 2008
Limitations of L-systems:
• in L-systems, only 2 possible relations between objects: "direct successor" und "branching"
Cottbus, 10. 3. 2008
Limitations of L-systems:
• in L-systems, only 2 possible relations between objects: "direct successor" und "branching"
• multiscaled models are not supported
Cottbus, 10. 3. 2008
Limitations of L-systems:
• in L-systems, only 2 possible relations between objects: "direct successor" und "branching"
• multiscaled models are not supported
• object-oriented programming is not supported (only symbols, resp. "modules" = parameterized symbols, no objects, no classes)
Cottbus, 10. 3. 2008
Limitations of L-systems:
• in L-systems, only 2 possible relations between objects: "direct successor" und "branching"
• multiscaled models are not supported
• object-oriented programming is not supported (only symbols, resp. "modules" = parameterized symbols, no objects, no classes)
• structures must be serialized to strings
Cottbus, 10. 3. 2008
transgression to graph grammars
Limitations of L-systems:
• in L-systems, only 2 possible relations between objects: "direct successor" und "branching"
• multiscaled models are not supported
• object-oriented programming is not supported (only symbols, resp. "modules" = parameterized symbols, no objects, no classes)
• structures must be serialized to strings
"Relational Growth Grammars" (RGG) as generic tool on a formal level
= graph grammars with parallel application
Cottbus, 10. 3. 2008
"Relational Growth Grammars" (RGG) as generic tool on a formal level
= graph grammars with parallel application
• graph model:- with node attributes and types (type hierarchy for inheritance)- with edge labels (finitely many)- no multiple edges with the same label
Cottbus, 10. 3. 2008
Nodes:
correspond to the symbols in L-systems
Cottbus, 10. 3. 2008
Nodes:
correspond to the symbols in L-systems
simultaneously objects sensu OOP
Cottbus, 10. 3. 2008
Nodes:
correspond to the symbols in L-systems
simultaneously objects sensu OOP
e.g., plant organs, geometric transformations
Cottbus, 10. 3. 2008
Edges:
their labels can represent different sorts of relations:
• is successor of
• contains
• bears as a lateral shoot
• reacts with
• encodes (genetically)
• is mating with
• (...)
also possible: representation of multiscaled structures
Cottbus, 10. 3. 2008
multiscaled structures
(different geometric levels of resolution in one model)
relation of refinement
(AMAPmod software description, CIRAD Montpellier, 1998)
multiscaled structures
(different geometric levels of resolution in one model)
relation of refinement
(AMAPmod software description, CIRAD Montpellier, 1998)
in computer graphics: "Level of Detail"
● embedding model:Single-Pushout approach from algebraic graph grammartheory, extended by so-called connection transformations
● right-hand sides of rules are dynamically generated
RGG replacement mechanism
left-hand side of rule right-hand side of rule
Cottbus, 10. 3. 2008
an RGG rule and its application in graphical form:
rule:
application:
Cottbus, 10. 3. 2008
an RGG rule and its application in graphical form:
rule:
application:
rule in text form: i -b-> j -a-> k -a-> i = => j
Cottbus, 10. 3. 2008
original graph: A B C
Cottbus, 10. 3. 2008
implicit use of "connection edges" for the desired embedding:
a:A ==>> a C (SPO rule)
B ==> D E (rules of L-system type)
C ==> A
A B C
D E A
connection edges (auxiliary edges)
Cottbus, 10. 3. 2008
implicit use of "connection edges" for the desired embedding:
a:A ==>> a C (SPO rule)
B ==> D E (rules of L-system type)
C ==> A
A B C
D E A
a:
Cottbus, 10. 3. 2008
implicit use of "connection edges" for the desired embedding:
a:A ==>> a C (SPO rule)
B ==> D E (rules of L-system type)
C ==> A
implicit use of "connection edges" for the desired embedding:
a:A ==>> a C (SPO rule)
B ==> D E (rules of L-system type)
C ==> A
A AD Ea:
C
Cottbus, 10. 3. 2008
Advantages:
L-systems as a special case
Strings correspond to special graphs
Cottbus, 10. 3. 2008
example: crossing over
Two homologous chromosome strands, encoded as strings with "successor" relation
RGG rule:
application:
alignment of homologous alleles
pure SPO rules as a special case
Cottbus, 10. 3. 2008
further special case: rules which change only parameters
Cottbus, 10. 3. 2008
Example from barley model:
Cell [lue1:LUE1] ::>
lue1[concentration] :+= 0.5 * par.DELTA_T;
Realization of RGGs in a programming language:
XL (eXtended L-system language)
(Kniemeyer 2007)
• extension of Java
• nodes are Java objects
• additional constructions
Cottbus, 10. 3. 2008
3. The language XL
• Queries in the generated graphs
possibility to link structure and function
Cottbus, 10. 3. 2008
• Queries in the generated graphs
possibility to link structure and function
Example: look for all leaves which are successor of node c and sum up their areas
Cottbus, 10. 3. 2008
• Queries in the generated graphs
possibility to link structure and function
Example: look for all leaves which are successor of node c and sum up their areas
transitive closure
aggregation operator
Cottbus, 10. 3. 2008
• Queries in the generated graphs
possibility to link structure and function
Example: look for all leaves which are successor of node c and sum up their areas
transitive closure
aggregation operator
result can be transferred to procedural calculation (e.g., PBM)
Cottbus, 10. 3. 2008
Query in a plant / herbivore model:
p:Plant,
(* a:Animal, (distance(a,p) < p[radius]) *)
Cottbus, 10. 3. 2008
Query in a plant / herbivore model:
p:Plant,
(* a:Animal, (distance(a,p) < p[radius]) *)
looks for all animals in the radius of p
Cottbus, 10. 3. 2008
Cottbus, 10. 3. 2008
dynamics of networks
(e.g., neighbourship relation in a tree stand)
Cottbus, 10. 3. 2008
dynamics of networks
(e.g., neighbourship relation in a tree stand)
Cottbus, 10. 3. 2008
dynamics of networks
(e.g., neighbourship relation in a tree stand)
Cottbus, 10. 3. 2008
dynamics of networks
(e.g., neighbourship relation in a tree stand)
dynamics of networks
(e.g., neighbourship relation in a tree stand)
generally:
dynamical systems with a dynamical structure
Cottbus, 10. 3. 2008
Interactive 3D platform GroIMP (Growth-grammar related Interactive
Modelling Platform) with XL compiler
Cottbus, 10. 3. 2008
Interactive 3D platform GroIMP (Growth-grammar related Interactive
Modelling Platform) with XL compiler
• GroIMP is an Open Source project (http://www.grogra.de)
Cottbus, 10. 3. 2008
XL compiler
(time series of) structure(s)(attributed graphs)
modelspecification
Cottbus, 10. 3. 2008
XL compiler descriptionparser
(time series of) structure(s)(attributed graphs)
modelspecification
descriptions of real organisms
Cottbus, 10. 3. 2008
XL compiler descriptionparser
(time series of) structure(s)(attributed graphs)
renderer
visual representation
modelspecification
descriptions of real organisms
Cottbus, 10. 3. 2008
XL compiler descriptionparser
(time series of) structure(s)(attributed graphs)
XL console renderer
visual representation
statistical analysis software
request for analysis (query)
modelspecification
descriptions of real organisms
Cottbus, 10. 3. 2008
XL compiler descriptionparser
(time series of) structure(s)(attributed graphs)
XL console renderer interfaces
special simulation software
visual representation
statistical analysis software
request for analysis (query)
modelspecification
descriptions of real organisms
Cottbus, 10. 3. 2008
Cottbus, 10. 3. 2008
GroIMP provides complete XL libraries
e.g., node classes for the emulation of Xfrog graphs (cf. Deussen, Lintermann)
Diploma thesis Henke 2006, Henke et al. (submitted)
Cottbus, 10. 3. 2008
GroIMP provides complete XL libraries
e.g., node classes for the emulation of Xfrog graphs (cf. Deussen, Lintermann)
Diploma thesis Henke 2006, Henke et al. (submitted)
GroIMP provides complete XL libraries
e.g., node classes for the emulation of Xfrog graphs (cf. Deussen, Lintermann)
Diploma thesis Henke 2006, Henke et al. (submitted)
Cottbus, 10. 3. 2008
(Henke 2006)
Cottbus, 10. 3. 2008
GroIMP provides complete XL libraries
extension of the Xfrognode classes by an „arrange“ node
(Henke 2006)
Cottbus, 10. 3. 2008
GroIMP provides complete XL libraries
extension of the Xfrognode classes by an „arrange“ node
Input: „fields“ (given by image files) for spatial parameters
heights densities tree parameters
GroIMP provides complete XL libraries
extension of the Xfrognode classes by an „arrange“ node
Input: „fields“ (given by image files) for spatial parameters
(Henke 2006)
heights densities tree parameters
Cottbus, 10. 3. 2008
4. Future perspectives
Improvement of rendering / radiation simulation
currently under construction:
- Metropolis raytracing
- GPU-based raytracer
- Radiosity calculation
Cottbus, 10. 3. 2008
(Veach 1998)
Weakness of bidirectional raytracing in case of indirect illumination:
Improvement:
Metropolis algorithm (mutation of an already detected ray path)
Cottbus, 10. 3. 2008
e.g., molecule models (GroIMP filter for pdb files)
Extension of the possibilities for 3D modelling
Cottbus, 10. 3. 2008
exchange platform "OpenAlea" (Pradal 2007)
modular platform to improve the interoperability of plant models and analysis tools
Making XL available for this international project
Cottbus, 10. 3. 2008
3D data acquisition from real organisms
Cottbus, 10. 3. 2008
3D data acquisition from real organisms
and linked to that:
solution of the inference problem for RGGs
Aim: automatize the pipeline
real object 3D model RGG abstract model visualization of the abstract model
Cottbus, 10. 3. 2008
ongoing project:
development of a low-cost system for the acquisition of 3D data with structured light
(Jiang & Bunke 1997)
Cottbus, 10. 3. 2008
aerial photo + elevation model(ArcGIS)
aerial photo + elevation model(ArcGIS)
view into simulated stand
(Knauft 2001)
shadow calculation at forest soil level at different times of the day
(Knauft 2001)
"ViWa" (Virtueller Wald = virtual forest) –
landscape in the Solling region (Germany) (Knauft & K. 2001)
elevation model + forest inventory data + structural model of stand + structural model of tree + rendering:
Cottbus, 10. 3. 2008
Modelling of park landscapes
(Rogge & Moschner 2007, for Branitzer Park Foundation, Cottbus)
Cottbus, 10. 3. 2008
Thank you for your attention!
Cottbus, 10. 3. 2008