RESEARCH ARTICLE

This paper presents the use of self similarity with random variations and probabilistic growth of branches as the basis of generating natural forms of trees. Bifurcation branching geometry has been considered as the fundamental element in the formation of tree structures and Honda’s model was used to generate the recursive branching patterns. In order to simulate the dynamic variations of natural trees, the model was extended by introducing random variation to control the branch lengths and branching angles at each stage. The probabilistic occurrences have been introduced to control the formation of new branches. The resultant tree structures show that the addition of random variation and the introduction of probabilistic occurrence of branches have made a greater impact to the generation of visually convincing natural tree structures. J.Natn.Sci.Foundation Sri Lanka 2013 41 (3): 229-235 DOI: http://dx.doi.org/10.4038/jnsfsr.v41i3.6058


INTRODUCTION
Simulation of plants or trees is challenging but has a wide range of applications in the sciences and the arts.A landscape may contain many different trees and each tree may contain a large number of branches oriented in various directions, with each branch containing a large number of leaves creating a highly complex structure.Even if all the variables are determined, simulating complex vegetation in three dimensions within a reasonable time period is not an easy task.Biologists are interested in reproducing plant morphology to understand the fundamental mechanisms that govern plant development and its structure under the influence of external effects.In the case of computer generated scenes, the computer graphics community is interested in generating visually realistic plants that could be used in numerous artistic and commercial applications such as games and movies.
Simulating natural trees has a relatively long history.The first model was proposed by Ulam (1962), which employed the concept of cellular automata.Ulam (1962) considered trees as self-organizing structures in which branching patterns emerge from the competition of individual units for space.This basic idea has given birth to several extensions but the common feature of models based on cellular automata is the emphasis on interactions between various elements of a growing structure, as well as the structure and the environment.Although interactions clearly influence the development of real plants, they also increase the complexity of the models.Honda (1971) presented a simpler model, which considered a tree as a recursive structure characterized by a few numerical parameters such as branching angles and the ratio of branch lengths at consecutive iterations.Tree structures developed using this model are based on the following assumptions.
Tree segments are straight and their thickness is a • constant.
A mother segment produces two daughter segments • through one branching process.
The length of the two daughter segments are • shortened by constant ratios, R 1 and R 2 , with respect to the mother segment.
The mother segment and its two daughter segments • are contained in the same branch plane.The daughter segments form constant branching angles, θ 1 and θ 2 , with respect to the mother branch.
September 2013 Journal of the National Science Foundation of Sri Lanka 41 (3) With improvements and extensions, Honda's model has been applied to investigate structures of real trees (Fisher & Honda, 1977;Honda et al., 1981;Borchert & Honda, 1984).The results of Honda's model served as a basis for the tree models proposed by Aono and Kunii (1984).They modified Honda's model by adding biasing of branch positions in a particular direction to produce the effects of wind, phototropism and gravity.
Although Honda's model and its variants are capable of simulating trees with substantial visual realism, they do not provide a sufficient mechanism to introduce variability in the development of trees.Therefore, subsequent tree structures simulated with identical or similar development conditions do not exhibit variations compared to the original tree structure.However, in nature, even if the growth conditions are identical, the tree structures are different from one another and show further diversity due to their age and the environmental conditions.This has been confirmed by a survey carried out by Fisher and Honda (1979) on branching angles, the angle between branch units of lateral branch complexes, and effective leaf area of 32 species of tropical trees with Terminalia-branching pattern.This study revealed that there is a variability in branch geometry, which deviates from the theoretical model.Some of the highlighted reasons for the observed deviations are, unpredictable violations of branching rules in real trees and the complexities of crown structure that develop with age.
There are a number of models, which describe stochastic development of trees using different terminologies.One such method was developed by Reffye and Jaeger (1992) where the development of branches depends on stochastic rules that describe bud activity.Another method is the L-systems (Prusinkiewicz & Lindenmayer, 1990), which describes tree structure by recursive grammatical rules.
While the results produced with stochastic models are quite closer to real plants, complexities in developing such algorithms are quite high when compared to Honda's model.The objective of the present work was to combine Honda's model with model parameters controlled by random probabilities to generate tree structures with a relatively simple algorithm.Growth of sub branches was determined based on the Monte Carlo technique rather than through the deterministic method.Random variations were introduced to the modelling parameters in order to develop visually realistic tree structures.

METHODOLOGY
From a morphological perspective, branching patterns can be divided into two categories: the monopodial branching pattern and the sympodial branching pattern.Monopodial branching exists if a continuous main shoot has delicate apical shoots and the branching structure is determined by dominant main axis (Figure 1a).Sympodial branching applies if the growths of lateral branches are dominant in which the apical meristem is terminated.If two buds of a sympodial branch develop at the same time, a more or less fork-shaped pattern, a dichasium is formed (Figure 1b).If only one of the apical shoots has the same direction as the main shoot would have had, then a monochasium results, which may sometimes be difficult to distinguish from monopodial branching (Figure 1c).Halle et al. (1978) had grouped all the known vascular plants into 23 architectural models according to simple morphological characteristics.This research revealed that many trees and shrubs possess sympodial branching in appearance.In computational perspective, sympodial branching pattern can be topologically equivalent to mathematical binary trees.Typical binary tree consists of nodes and edges in which each node has at most two child nodes.An edge refers to the link from the parent to the child.Therefore, the data related to sympodial branching can be stored computationally using a binary tree data structure.This work focused on two parts to simulate natural trees: topological model and graphical model.Topological model defines the structural deviations between a botanical tree and a binary tree while the graphical model was used to illustrate the geometrical arrangement and appearance of the branching structure to generate visually convincing trees.

Graphical model
Many internal and external factors take part in deciding the structure of a natural tree.The two most important factors of the tree structure are the branch angle and the branch unit length.Branching angles (θ 1 , θ 2 ) were assumed to be consistent in all levels of tree structure to simplify the modelling.In order to calculate the length of a sub branch unit, a scaling factor (S l ) was used.
The geometrical representation of branching pattern was accomplished with Honda's model, which considers the formation of new branch units is a deterministic process that takes place uniformly all over the tree.Using this model, Cartesian coordinates of sub branches can be calculated using coordinates of the main branch and a few basic parameters such as branching angle and ratio of branch lengths.Two models were formulated by Honda (1971) to describe bifurcating branching geometries.
H-model; where mother branch unit P A P B and the daughter branching units P B P 2i and P B P 2i+1 are in the same branch plane.θ 1 (not labelled) and θ 2 branching angles with respect to mother branch P A P B (Figure 2a).I-model; which is based on the H-model but the difference in this model is that branching units P B P 2i and P B P 2i+1 are not in the same branch plane.Branching point P B P 2 i +1 is inclined δ from the plane, which mother branch P A P B and daughter branch P B P 2i are in (Figure 2b).
Formulas for calculating new spacial coordinates (x j , y j , z j using initial coordinates and a basic set of parameters according to Honda's I model were given in equation 1, 2 and 3. ...( 2) In addition to branching angles and branch unit lengths, the thickness of branches was also considered for modelling trees in this research.The formula derived by Leonardo da Vinci claims that if a branch with diameter D splits into an arbitrary number (n) of secondary branches of diameters d 1 , d 2 …etc, the sum of the secondary branches' diameters squared equals the square of the original branch's diameter (equation 4).
‫ܦ‬ ൌ ݀ ଶ ୀଵ ...( 4) Mandelbrot (1982) stated that in order to satisfy self similar property, a botanical tree would need the exponent in the equation that describes Leonardo's hypothesis should equal to fractal dimension of the tree and with that, the above relationship can be generalized for botanical trees with bifurcating branching geometry as follows (equation 5).
where Δ is the diameter exponent ...( 5) For most botanical trees, the above equation with Δ ≈ 2 applies (Deussen & Lintermann, 2005).But since trees can be considered as space filling structures as well, Δ ≈ 3 can be also assumed.Therefore, value for Δ can be considered as a decisive factor between self similarity and space filling nature of natural trees.

Topological model
The Honda's model is well suited for implementing the bifurcation branching geometry, which enables the representation of branch topology as a binary tree.One of the important conditions in Honda's model is, a mother Honda's I-model was chosen specifically in this research for generating tree structures mainly due to its ability to simulate non planar branching structures making it possible to produce space filling trees in 3D.The formation of branches in natural trees is controlled by buds.Buds can be classified into two types, namely, the terminal buds when the bud is located at the tip of a stem and the lateral buds when the bud is located in the axil of a leaf.
It was assumed that the branching occurs based on fixed probabilities (P t , P l ), which are assigned to the formation of a branch from a terminal and lateral bud, respectively.The decision of growing a sub branch from a branching point (bud) was calculated using Monte-Carlo simulations where the growth of a sub branch segment will occur only if a random number R ܲ ሺ௧ǡሻ ‫א‬ ሾͲǡͳ ൏ ܲ ሺ௧ǡሻ ‫א‬ ሾͲǡͳ [0,1] is less than Figure 3a shows an outline of the tree growth algorithm.In each iteration of the simulation, conditions for branching, represented with probabilities (P t , P l ) are fetched as the first step.Then the developments of sub branches are determined with Monte-Carlo method.If the growth of a sub branch is decided in a previous step, spatial coordinates of the new branch is calculated with Honda's model with the addition of random variations or otherwise the branching point marked as a dormant node.
If a dormant node appears in the n th level, it would result in all nodes in sub branches to be dormant in the next iteration steps.Using binary tree properties it can be obtained that a sub tree in n th with tree height h contains ʹ ାଵି െ ͳ nodes.In real trees, branching can be instantaneous (sylleptic branching), or delayed (proleptic branching).With proleptic branching, there's a probability of emerging a branch with time.In order to simulate this behaviour, a mechanism for storing the current state of the branching point was introduced to the model.This was done by assigning an index for each branching point depending on the possible growth opportunities (Figure 3b).Indexes were defined considering four possibilities of branching for a branching point.order to simulate the proleptic branching where a sub branch occurs from a dormant node (i.e.index = 3), postorder traversal method was used to find the successive dormant mother nodes and checked whether each node is ready to grow as a branch at that point of the development.If it satisfies the probability of occurring, a sub branch will emerge with properties related to the current point of development.Otherwise that branching point remained dormant and the iteration continued until a successive branching unit grows to a sub branch.

Parameters used in the simulation
The main objective of this study was to simulate tree structures in a visually convincing manner.To accomplish this, a procedural approach with several control parameters (Table 1) was used to define the tree structure.The default values of the control parameters were taken from a study of real trees of Tabebuia, carried out by Borchert and Honda (1984).
In a natural tree, randomness is connected to every aspect of growth and plays a major role in distinguishing the realistic appearance.For an example, branching angles and the length of branches vary around mean values of branch population, which results in its unique shape.In order to simulate the randomness of the tree structure, the parameters used to generate the tree structure were defined with lower and upper bounds of variations, and the random variations within these bounds were fed into parameters for generation of sub branches.Statistical data collected by Aono and Kunii (1984) showed that the deviation from the measured average value for branching angles can be ± 26 % and for scaling of branch lengths can be ± 32 % for Aucuba japonica, a shrub which exhibits sympodial branching pattern.Similar results were obtained by Fisher and Honda (1979) for the genus Terminalia.

Effects due to random variation
During the first part of the research, the tree structures were generated with the addition of random variations to control branching angles (θ 1 , θ 2 , δ ) and a scaling factor for branch lengths (S l ). Figure 4a shows a tree structure generated purely based on Honda's model, which has a highly symmetrical shape and has exact self similar properties.The results obtained after introducing random variations into growth parameters shows significant difference (Figure 4b).It can be seen that the introduction of random variations has resulted in producing distinct change at each iteration leading to a simulated tree structure, which is closer in appearance to natural trees deviating from perfect self similarity.
At the next step of the algorithm, tree structures were simulated with addition of probabilistic shoot of branches (Figure 4c) by keeping the branch length and the branch angles fixed.Although the topology of the resultant tree structure is distinguishable from binary trees, it still appears to be visually unrealistic in appearance due to the high geometrical regularity.In contrast, Figure 4d shows a tree structure generated using the same probabilities as in figure 4c with random variations added to branch lengths and branching angles.The appearance of trees generated with random variations can be made closer to natural trees with highly irregular patterns typically seen in nature.

Structural variation with growth parameters
was observed that the addition of probability of the occurring branches has made a greater impact to the branching structure.Figure 5 shows a series of tree structures generated with different sets of fixed probabilities, which clearly illustrates the structural change of trees with the probabilities.It can be seen that when P (t ,l) increases, the 'dense' nature of the tree structure increases rapidly with a higher number of branches appearing in the upper layers of the tree.This is due to the fact that, in a complete binary tree, there are 2 (h-l+1) -2 dependent nodes existing for a node included in level l of a tree of height h.Therefore if a dormant node occurs in lower levels it has a major impact on the overall tree structure.

September 2013
Journal of the National Science Foundation of Sri Lanka 41 (3) This model was also used to simulate the growth forms of trees such as excurrent growth, where a tree exhibits a strong main stem with relatively small lateral branches and deccurent growth where there is no leading main stem.Figure 6a shows a typical excurrent tree generated with the model.In order to simulate the dominancy of the main stem, branching angle of the terminal branch was kept in a low value and the P t was assigned as 1.0 to always generate a terminal branch.Additionally, P l was assigned a lower value (0.6) to decrease the population of lateral branches and the scaling factors for branch length and branch thickness (S l, S t ) were assigned lower values to simulate shorten and weaker lateral branches.
Figure 6b shows a deccurent tree growth simulated with the model.Properties of decurrent growth were introduced to the model simply by assigning equal probabilities of generating branches and using similar values for branching angles.
to the bark of the modelled trees.It can be seen that the output of the model can be fine -tuned by varying the parameters and graphical details to produce different forms of trees, which are much closer to natural trees.P t = 0.5, P l = 0.5 P t = 0.8, P l = 0.8 P t = 0.9, P l = 0.9 Total branches = 320 Total branches = 1732 Total branches = 5866

Enhanced graphical details
Figure 7 shows a set of different tree structures generated with adding more graphical details to the model such as addition of leaves to the top most branches and different

CONCLUSION
Computer simulation of natural objects and natural phenomenon has been an ongoing challenge in computational physics for decades.Many natural objects exhibit complex structural forms that defy traditional geometric patterns.Therefore it is difficult to design a drawing algorithm using traditional geometric and mathematical constructs to represent natural objects in a compelling way.While the shapes and structures of natural objects often appear irregular and chaotic, they also exhibit a high degree of self-similarity.This suggests a recursive or iterated approach to the dynamic modelling of natural objects.
This research has examined the simulation of tree structures using Honda's model (1971).One of the major drawbacks in Honda's model is the use of a deterministic approach to define the branching structure.Therefore the implementation of Honda's model does not give much room to simulate the structural variations due to internal and external factors.
As a solution to the limitations of Honda's model, probabilistic growth of sub branches was examined in this study.While keeping the deterministic implementation, formation of sub branches was controlled by probabilities assigned to the growth of each sub branch and Monte-Carlo techniques has been used to determine the branch growth stochastically.In addition to this, random were added to the intuitive parameters.The results showed that visually realistic tree structures can be generated with modification to the Honda's model.The development of branches was considered to be straight and smooth in this phase of the research.In order to generate visually convincing tree structures, more enhancements are required in graphical perspective to enable the generation of different shapes of branches and smoothening branching joints.
Although the use of fixed probabilities for occurring branches result in fairly natural tree structures, occurring a branch in natural tree is a quite complex process, which deals with many internal and external factors.As the future work of this research, it would be interesting to see the impact of environmental factors on the development of trees and structural variations of trees.

Figure 2 :
Figure 2: Honda's models (a) H-model: branching geometry in horizontal plane; (b) I-model: branching geometry in inclined plane

Figure 3 :
Figure 3: (a) Outline of the tree growth algorithm.(b) Indexing the branching points -Index = 0: Both left and right branches have developed; Index = 1: Only the left branch has developed; Index = 2: Only the right branch has developed; Index = 3: Both branches ceased development

Figure 4 :
Figure 4: (a) Tree structure generated with Honda's model.(b) Tree structure generated with Honda's model and added random factor into branching angles (θ 1, θ 2, δ) and scaling factor for branch lengths (S l ).(c) Tree structure generated with added probability.(d) Tree structure generated with added probability and random deviation to growth parameters.

Figure 5 :
Figure 5: trees with different probabilities of occurring sub branches P (t ,l)

Table 1 :
Parameters and default values used in simulation of random trees