california software homepage california site map california search IT Consultants and E-Business Solution Providers
IT Consultants and E-Business Solution Providers Company Services Products Industry Solutions Portfolio Techguide Contactus

corporate image
テックセンター
テックセンターについて
テクニカルペーパー
Calsoftコンサルタントへのお問合わせ
corporate image
openinventor programming
テクニカルペーパー

Life-time Selection and Self-Organization in Tree Growth - White Papers

Simple rules of growth can lead to interesting patterns in the way trees grow and branch. No two trees grow exactly alike. Within any tree some branches are thicker and some form odd shapes and wiggles. The leaves may form an umbrella-like cluster to get the most out of sunlight. The way a tree grows and branches is determined partly by its genome, but mostly by its interactions with the environment. The growth of such a tree is self-organized, and the shape it takes is an emergent property of the tree-environment system. The technique we present here may be classified as a morphogenetic algorithm which is based on complex interactions. It does not need to resort to probabilistic methods to generate variety. Variety stems from the complexity of the tree's environment. A slight variation in the position of a shade may cause an entire branch to disappear or new branches and turns to appear. Two trees growing side by side affect each other's growth indirectly. The branching patterns result from complex interactions, branch efficiencies and a principle we call life-time selection. Unlike natural selection which works over evolutionary time, life-time selection involves applying a "survival of the fitter" rule to the components of the growing tree, and selecting those that are successful, for reproduction (branching). This simple principle, combined with the complexity of the environment, is able to generate complex branching patterns akin to those found in nature.

openinventor programming Download this document in Adobe Acrobat PDF [136k] [Zipped PDF (106K)].

Rekesh John,Technology Director.
California Software Co. Ltd.
E139A First Floor,
M.G.Road,
Besant Nagar,
Chennai - 600 090 INDIA.
http://www.calsoft.co.in

C.R.Muthukrishnan
Dept. of Computer Science and Engineering
Indian Institute of Technology
Madras, India
crm@iitm.ernet.in

February 1997

Index

Introduction

Simple rules of growth can lead to interesting patterns in the way trees grow and branch. No two trees grow exactly alike. Within any tree some branches are thicker and some form odd shapes and wiggles. The leaves may form an umbrella-like cluster to get the most out of sunlight. The way a tree grows and branches is determined partly by its genome, but mostly by its interactions with the environment. The growth of such a tree is self-organized, and the shape it takes is an emergent property of the tree-environment system. The technique we present here may be classified as a morphogenetic algorithm which is based on complex interactions. It does not need to resort to probabilistic methods to generate variety. Variety stems from the complexity of the tree's environment. A slight variation in the position of a shade may cause an entire branch to disappear or new branches and turns to appear. Two trees growing side by side affect each other's growth indirectly. The branching patterns result from complex interactions, branch efficiencies and a principle we call life-time selection. Unlike natural selection which works over evolutionary time, life-time selection involves applying a "survival of the fitter" rule to the components of the growing tree, and selecting those that are successful, for reproduction (branching). This simple principle, combined with the complexity of the environment, is able to generate complex branching patterns akin to those found in nature.

Back to Index

Basics

The components of the artificial tree are its branches and leaves. A branch or a leaf interacts only with the components that are connected to it. Sunlight is the only criteria used for growth. Gravity, phototaxis, and other factors are not considered so as to make the simulation easier to study. The idea is not to create a visually perfect and attractive tree. Unlike the work described in [1] this is an attempt to test the effect of a primary criteria, namely sunlight and shade, on the structure of a growing tree when simple rules are applied to its components.

The rules involved are the following:

  1. Only leaves process sunlight. Every leaf adds a contribution of energy to its connected branch.
  2. The energy acquired by a branch is the sum total of the energies it receives from its sub-branches/leaves. The more energy that a branch processes, the longer and thicker it becomes.
  3. A branch has an associated efficiency value, which is the ratio of the energy it actually processes to that it could have processed at best (with its sub-components also at their best efficiency). A leaf is at its peak efficiency when fully exposed to light. Thus the efficiency of a branch is defined recursively. When the efficiency of a branch falls below a threshold for some specified time, it dies. Branching takes place only if the efficiency is above a specified branching threshold.

Back to Index

Simulation

We used the OpenInventorTM programming system on Silicon Graphics workstations to model the artificial trees. The branches are idealized as long, thin cylinders. The leaves are idealized as flat discs. A tree data structure is used to represent connectivity, with nodes storing properties of the individual components. In this simulation, branches that once formed sub-branches do not branch again. Simple branching rules are used to define how a branch forms sub-branches. Between consecutive branching, a simple form of phylotaxis is used by rotating the sub-branches about its mother branch through an angle.

The energy contribution of a leaf is dependent on its orientation and any obstacles in the environment that shade it from sunlight. This contribution is calculated as follows. Rays are traced along an inverted vertical cone with its apex at the center of the leaf surface. A ray originates from the apex at the leaf and is sent out into the "sky". The set of rays so traced are limited by the three dimensional angle of the cone. Each ray has associated with it, some quanta of energy. The more slant a ray has from the vertical, the less energy it contributes. If a ray meets any object in the world (including the leaf itself, depending on its orientation), then its contribution is taken as nil. The energy contribution of a leaf in a single iteration of the simulation run is computed as the sum of energies of all the rays which did not meet any obstacles in the world.

Figures 1 through 14 show a tree growing in the shade. The area to the right is completely blacked out from sunlight. In this simulation, whenever branching occurs, three new sub-branches are formed. The angle that a sub-branch makes with its mother branch is set to 40 degrees. The energy of a vertical ray is set to one energy unit. The cone angle is 120 degrees at the apex. About 25 rays are traced per leaf through the cone. The cut-off efficiency level for a branch to die is set to 30% of the maximum efficiency possible. Even if a branch's efficiency is below the cut-off, it is allowed to survive for a few more iterations of growth before it is pruned. The thickness of a branch is approximated based on that of its sub-branches, such that the sum of the cross-sectional areas of the sub-branches equal that of their mother branch. The length of a branch is increased by 5% for 100% branch efficiency.

It can be seen that the tree "bends" without incorporting any phototaxis mechanism. Note that the bends here are restricted in their geometric configuration by our graphics implementation and should actually be thought of as curves. Variation in thickness along various paths through the tree can be observed. Some paths show sharp turns as well. Clusters of leaves can be seen, each cluster forming an umbrella over the branches (fig 17). Depending on variations in the parameters and branching rules, the resulting patterns vary, but share the above properties. Figures 16 shows two trees growing next to each other. The tree on the right was grown under a shade as before. The one on the left is younger than the other by 20 iterations of growth. It can be seen that the younger tree also "bends" and forms similar branching patterns. Figure 15 shows where the branches of the two trees come together and spread out.

Back to Index

Conclusions

Here we see that complex branching patterns can be induced by a simple set of rules that are applied to the components of the tree. The pattern is dependent on mutual interactions between the components and the environment as well as on life-time selection. The pattern dynamically modifies itself based on these interactions (self-organization) and leads to emergent properties (bends, clusters, umbrellas, varying thickness paths). If two trees are grown side by side, they affect each other's growth indirectly. Like in most complex systems, the best way to predict how exactly a cluster of such trees will grow will be to actually run the system and observe!

Back to Index

References

[1] Prusinkiewicz, P., Lindenmayer, A. The Algorithmic Beauty of Plants. New York: Springer-Verlag 1990

Back to Index

openinventor programming
openinventor programming
openinventor programming
openinventor programming
openinventor programming
openinventor programming

Back to Index

For More Information

Calsoft helps companies develop software products & applications using state of the art technologies & tools. Visit http://www.calsoft.co.in for more information on California Software Pvt Ltd.

openinventor programming Download this document in Adobe Acrobat PDF [136k] or [Zipped PDF (106K)]

Back to Top

openinventor programming

openinventor programming