Modeling Plant Form
Download
Report
Transcript Modeling Plant Form
Modeling Plant Form
Is plant form an emergent
property of simple module
systems?
L-Systems
L-systems are basically a way to rewrite something
following a set of rules
For instance: you have two letters a and b.
The rules for rewriting are a->ab and b->a
If we start with a b and start rewriting we get:
The Turtle interpretation of strings
So we have a turtle with a string on its back,
the turtle’s state is a triplet (x,y,α). This
represents the turtle’s Cartesian coordinates
and the angle (α) at which it is traveling.
Now, d = step size and ƒ =angle increment
So we can tell the turtle where to go if we give it
directions. We will use the following symbols:
F = Move forward by one step length d
+ = Turn counterclockwise by angle ƒ
- = Turn clockwise by angle ƒ
Let’s put our turtle to work
Given the axiom w = F-F-F-F and the production successor p =
F->F-F+FF-F-F+
We can rewrite the phrase n times and tell out turtle to walk.
Now let’s make it a little bit more
complex
Edge rewriting productions substitute figures for polygon edges
Fl and Fr represent the turtle obeying the “move forward”
command, but now Fl and Fr edges by lines forming left or
right turns.
These curves can be space-filling and self avoiding (FASS).
FASS curves generated from
edge-rewriting L-systems
Node rewriting substitutes polygons for nodes on the curve
Now we need more things: Entry and exit points (Pa and Qa)
and an entry vector and an exit vector (pa and qa)
You can also consider an array of m x m square tiles.
Each m x m contains a small box inside of it called a frame.
Each frame bounds an open self-avoiding polygon.
Now when we connect many tiles we will get a macrotile
3-D
Axial Trees
All of the previous examples were all a single line, but trees are
not!
An axial tree starts from a base node
At each of its nodes there is at most one outgoing straight
segment
All other edges are lateral segments
A terminal segment is an apex
An axis must:
The first segment in the sequence originates from the
base or a lateral segment at a node
Each subsequent segment is straight
The last segment is not followed by any straight segment
So each axis is a mini axial tree!
An axis with all of its descendants is a branch
Axes and branches
are ordered as order
0 If they originated
At the base and you
Can guess the rest
Let’s build a tree
We need to have a rewriting mechanism that acts on axial trees
Our rewriting rule, or tree production, must replace an edge with
an axial tree
Bracketed system
Examples of bracketed system
Note: The system for adding
Leaves to this bush is
Biologically whack
Stochastic L-Systems
Since all plants don’t look the same we
will add in some randomization.
Context-sensitive L-Systems
We can make an L-System that show signal propagation so we
can send signals from the leaves down or from the roots up.
Removing
P2 makes
Permanent
signal
Plants
Really
Use
Signals!
Parametric L-Systems
Will help us show time, angles, and irrational line lengths (if d = 1,
you cannot express sqrt(2).
Is easier than trying to add stuff to non-parametric model.
Now for the real stuff…Let’s try to
simulate herbaceous plants
Emphasis on space-time relation between plant parts
So there can be flowers and buds on the tree at the same
time
Inherent capability of growth simulation
Our model is good for growing and we can simulate plants at
different times and watch how they grow
Let’s only do herbaceous plants because:
The model assumes that the plant controls its own
development (endogenous interaction).
Herbaceous plants have a lot of directions from their parents
(lineage interaction).
Woody plants are much more sensitive to their environment,
competition among branches and trees, and accidents
(exogenous interaction).
A glimpse at the models
http://algorithmicbotany.org/vmmdeluxe/QT/Greenash/apexview.qt
http://algorithmicbotany.org/vmm-deluxe/QT/Bluebell/field.qt
We can use confocal microscopes to get a real idea of how
plants develop and then write a computer model that fits the
behavior
We can also use empirical data on plant development
Other models try to use known mechanisms to explain the
emergence of plant forms
Three Main Type of Models
Partial L-Systems: Your basic model that is supposed to show us
the possible structures of plants
L-System Schemata: Topology and temporal aspects of plants
expressed, could help us understand mechanisms
Complete L-Systems: Geometric aspects added in (growth rates
of internodes, values f branching angles, appearance of organs)
Partial L-System
Examples of cool things in Lsystem Schemata
Examples of cool things in LSystem Schemata
Examples of cool things in L-System Schemata
Plants actually use signals and feedback loops a lot
(WUS acts on SAM)!
This says that the apex (a) produces internodes (I) and leaves (L)
[p2]. The time in between growth is m [p1].
After delay (d) a signal (s) [p3 an p4]. The signal is sent down the
main axis with delay (u) steps per internode (I) [p5 and p7].
[p6] removes the signal from the node by using an empty string (e)
When the signal reaches the apex (a), the a is transformed into a
flowering state (A), which turns into a flower (K) [p8 and p9].
Note: u<m or the signal is slower than growth!
COMPLETE MODELS…MUAHAHA
These are good enough to make images
We can tell the model when to make branches using subapical
growth
Plants actually grow like this!
I like flowers!
There are a few different types of flowers we can make:
Monopoidal branching - lateral buds make flowers and can not
make any more branches (raceme inflorescence)
I still like flowers!
In sympodial branching the apex produces a flower bud (which
cannot branch further) and two new lateral apices (cyme
florescence).
I hope you aren’t allergic to pollen
In polypodial branching, the apex makes three active apices, and
at some point they change into buds (panicle inflorescence).
Leaf model created trying to represent
known biology (auxin), not bad right? ->
But I want more!
Modeling exogenous effects are improving
http://algorithmicbotany.org/vmm-deluxe/QT/OpenLsys/two.qt
How leaves develop
How flowers develop
How roots develop
A photosynthesis model
--->
Clovers sense different wavelengths of light to
perceive self-shade (light reflected off leaves is far-red)
A model that makes branches fall off when
The amount of energy leaves get from
Photosynthesis isn’t enough to maintain
Leaves and branch (self-thinning)
--->
Other models
Large trees don’t exhibit the recursive branching described in
models because of exogenous factors. One group decided to
model tree branching as a function of branch competition for
space.
By changing values for the number of attraction
points, the kill distance, influence distance, and
the distribution of attraction points…
Resource Acquisition Model
Colasanti and Hunt wanted to see if their
model could produce properties on different
levels:
S-shaped growth curve for individuals
Equilibrium between shoots and roots
Plasticity in root and shoot foraging
Self thinning according to geometric power laws
Competitive exclusion
They used two binary trees
One for roots and one for shoots
Wait…what’s a binary tree
Modules linked together.
Each module is linked to one parent module and potentially
two offspring modules
A module “knows” the identity and state of its parent and
offspring modules, but not the state of the whole plant
Base module has no parent and end module has no offspring
Spatial area made into cells, these cells can have resource units
(light units for shoots/mineral nutrient units for roots)
The module can transport the units to base module
New growth requires a light unit and a mineral unit
They mutated the plant by giving it a competitive advantage for
resources at the expense of extra energy
Their Results
Success.
S-Shaped growth curve
Self-thinning
Plasticity in roots and shoots of modified plants
When resources are high, modified plants did well
When resources are low, regular plants did better
Could always make it better
Conclusion
These models show that a very simple module
behavior can account for many aspects of trees and
herbaceous plants
By comparing these models to nature, we can learn
more about the actual mechanisms in nature
Nature is math-y and pretty (or is math pretty and
nature-y?)
Now when you see a tree, a bush, a leaf, a flower, or a
root system…think about L-Systems and how cool
nature is
References
S. Wolfram, A New Kind of Science. Chapter 3, 6, 8.5, 8.6, 8.7
P. Prusinkiewicz and A. Lindenmayer, The Algorithmic Beauty of
Plants
R. L. Colassanti and R. Hunt, Resource Dynamics and Plant
Growth: A Self-Assembling Model for Individuals
Runions et al., Modeling Trees with a Space Colonization
Algorithm
Runions et al., Modeling and visualization of leaf venation
patterns
O. Prusinkiewicz and Anne-Gaëlle Rolland-Lagan, Modeling plant
morphogensis
P. Prusinkiewicz, Simulation Modeling of Plants and Plant
Ecosystems