Growth grammars simulating trees -- an extension of L-systems incorporating local variables and sensitivity

The rule-based formal language of \stochastic sensitive growth grammars" was designed to describe algorithmically the changing morphology of forest trees during their lifetime under the impact of endogenous and exogenous factors, and to generate 3-D simulations of tree structures in a systematic manner. The description in the form of grammars allows the precise speciication of structural models with functional components. These grammars (extended L-systems) can be interpreted by the software GROGRA (Growth grammar interpreter) yielding time series of attributed 3-D structures representing plants. With some recent extensions of the growth-grammar language (sensitive functions , local variables) it is possible to model environmental control of shoot growth and some simple allocation strategies, and to obtain typical competition eeects in tree stands qualitatively in the model.


Introduction
1993, Kranigk et al. 1994) and water flow (Kurth 1994, Friih 1995, Rapidel 1995) in tree crowns.However, most of these models were "purely Several simulation models of plant architecture structural" in an exclusive sense: They ignored were developed for the purposes of visualization external influences and physiological constraints (Prusinkiewicz and Lindenmayer 1990, Jaeger on growth and therefore represented an equally and Reffye 1992), in agronomical projects (Goel unbalanced concept of reality than the typical et al. 1991al. , Reffye et al. 1995b)), for botanical-physiological or stand-level process models (like morphological research (Bell 1976) as well as Bossel 1994) which ignored (to a great extent) for the simulation of light interception (Dauzat the structural aspect.It was only in the last years that attempts were made to reconcile structure and process in the framework of integrated plant simulation models (List et al. 1994, Reffye et al. 1995, Perttunen et al. 1996, Breckling 1996, IVTech and Prusinkiewicz 1996).Most of the above-cited architectural plant models were implemented in some standard programming language without much effort to provide explicit and complete descriptions of their basic algorithms on a formal level higher than the source-code itself.In contrast, the approach presented here is based on a formal specification language, the language of sensitive growth grammars (Kurth 1994), which forms an extension of the well-known Lindenmayer systems (Prusinkiewicz and Lindenmayer 1990).Rule systems for growth written in this specification language can be read and interpreted by an appropriate generic software shell named GROGRA (Growth Grammar interpreter).The growth grammar syntax and semantics as well as a thorough description of the program functionality are given by Kurth (1994Kurth ( , 1997)).
But why such a rather formalistic approach to growth and architecture modelling instead of utilizing some of the above-cited models?The main reasons for working with grammars are the following: -The reachable level of universality is probably higher when a rather general language is chosen as the basis for modelling, -models gain a higher transparency when they are described in an exact specification language designed for that purpose -in contrast to the situation when a lengthy computer source code in some general-purpose programming language has to be analyzed to understand a model completely, -the specifications are normally shorter and more elegantly expressed when a formal language is used, -like in the formalisms of mathematical physics, the essential causalities and laws can better be separated from unimportant boundary conditions, and can be more precisely stated when an exact formal language is at hand, -some general theories and tools for formal languages become possibly applicable.
Another important aspect is the consistency of growth models with botanical knowledge.The fulfillment of this requirement does certainly not depend on the use of formal languages and was also realized with software systems not relying on a complete explicit formal description, like AMAP (Reffye et al. 1995b).But a clear formal specification can help to ensure botanical validity; some botanical rules can directly be encoded as growth grammar rules.
In section 2 below, the basic technicalities of the growth grammar framework are shortly presented, including the notion of global sensitivity, which is essential for the attempts to model environmental influences and competition effects.Section 3 outlines the modelization of two alternative strategies for carbon allocation in trees and presents first results about the effects of these differing assumptions on growth in height and diameter under competition.In section 4, some perspectives and open problems are discussed.The syntactic basis of the grammar approach as well as the formal specifications of the examples will be presented in a more detailed way in a longer, forthcoming paper (Kurth 1997).However, it has to be emphasized that the model and the results are of a very preliminary nature.The purpose of this modelling approach is at the moment not to give a true picture of processes in trees, but to stimulate discussion and to generate researchable questions -questions of apparent relevance for forestry, when, e.g., competition effects are modelled.

Stochastic, Sensitive Growth Grammars
Lindenmayer systems (L-systems, named after the biologist Aristid Lindenmayer) are parallel rewriting systems operating on words (strings).
The ingredients of an L-system are -an alphabet, consisting of symbols which can stand for morphological units (e.g.internodes, growth units, leaves ...) or for geometrical operations, -a start symbol or start string, -a set of replacement rules, each one of the form symbol -* string of symbols which are to be applied to all symbols of a string at time t in order to get a new string at time t+\, -a geometrical interpretation for some of the symbols, e.g. the so-called turtle geometry.This translates a string into a spatial structure.
The rewriting process, i.e. the application of the rules to the given string, can be iterated many times.Each string in the obtained sequence of strings is interpreted as a description of the modelled plant (or set of plants) at a given stage of its development.Thus, a sequence of strings O], G7, o 3 , ..., obtained from the iterated application of the rule system, is translated into a sequence of geometrical structures S\, S 2 , S3,..., representing a time series of plants.This sequence of structures is the output of the GROGRA software, when a set of rules (specified in a file) and a start word were given as input.
The interpretation of a string is done by a drawing (or branch-constructing) device, named turtle.Generally, the symbols which serve as commands for the turtle have local meaning, i.e. no information about the global position of the turtle in space is used.There are, however, some exceptions to this rule, e.g. in the case of modelling geotropism.Branching is encoded by square brackets which let the turtle adopt its old state and position again when the part enclosed by the brackets is finished.
For example, let a stand for a terminal bud of a main axis, b for a bud of a lateral axis, let F be the turtle command for a shoot (growth unit), and RU that for a rotation of the turtle.Then the L-system composed of the two rules gives, when applied to the start word a, the sequence of strings and the corresponding sequence of structures which are depicted in Figure 1 (only the two first developmental steps are sketched).The buds symbolized by a and b will normally not be visible in the turtle interpretation (unless they are subject to further rules), but they are depicted as small ovals here to enhance the understanding of the process.The symbol F remains unchanged in the second transformation step because no rule is applicable on F.
In a parametric L-system (Prusinkiewicz and Lindenmayer 1990), to each symbol there can be attached a list of real-valued parameters, e.g.ail, 42, -0.5) instead of a.The rules may contain some formal parameters now (letters x, y, ...) which are to be replaced by numbers in the matching process preceding the application of a rule.The applicability of a rule can be constrained by conditions involving the parameters.
In a stochastic L-system, there may exist several rules with the same symbol on the left-hand side, each of them being attributed by a probability.In the repeated application of rules, the choice is done randomly with the given probabilities.This implies that the structure-generating process now is no longer deterministic.The potential stochasticity of rule applications is further enlarged by the possible declaration of variables as "random" -with a specified distribution controlling the outcome of their valuesand by their use in arithmetical expressions attached to symbols on the right-hand sides of rules.E.g., the declaration "War x\ binomial 0.3 20" specifies xl as a random variable with binomial distribution, described by the parameters p = 0.3 and n = 20 (see Kurth (1994Kurth ( , 1997) ) for a full account of the possible declarations).The use of discrete, stochastic variables for numbers of buds, internodes, flowers etc. is essential in stochastic growth modelling (Jaeger and Reffye 1992).
The most important extension to the classical L-system concept is the inclusion of sensitivity, i.e. the possibility to let a rule application depend on environmental influence (as well as on influences from -near or far -parts of the gener- ated plant structure itself).Here, context sensitivity of L-systems like in Prusinkiewicz and Lindenmayer (1990) does not suffice because the signals having impact on the development of a plant do not necessarily come from the immediate context (in the sense of the string encoding) of the plant organ under consideration.Thus, global sensitivity (Kurth 1994) is required.
Independently from the approach to sensitive growth grammars presented here, environmentally sensitive L-systems were also developed by the workgroup of Prusinkiewicz (Prusinkiewicz et al. 1994, NTech and Prusinkiewicz 1996, Prusinkiewicz et al. 1996).Sensitivity -though not in connection with a formal grammar description -was also included in the AMAPpara plant growth and architecture model by Blaise (1991) and in other modelling approaches partially inspired by ecological or physiological questions, like Gavrikov and Sekretenko (1992), List et al. (1994), Hauhs et al. (1995), Perttunen et al. (1996), Breckling (1996).
The key feature of globally sensitive growth grammars in the GROGRA system is that functional parameters (i.e.variables declared as "function") which depend on the last generated geometrical structure are allowed in the rules.Hence we have an influence from the already created structure Sk on the creation of the next string Gk+i from o k (and thereby on the structure S k+ \), indicated by dotted arrows in the scheme of Figure 2.
Principally, all kinds of information from the (local or global) context of a plant part can be used in the sensitive rules which are to be applied on that plant part.The perhaps most important types of information relevant for the simulation of plant growth are orientation in space, density of plant organs in space and availability of light.GROGRA offers different sensitive functions for these types of information (Kurth 1994(Kurth , 1997)).
In the examples of the next section only a very simple sensitive function is used, which estimates the light conditions of a shoot by investigating a cone with its axis of symmetry pointing straight upwards and with its apex positioned exactly in the apical bud of the shoot under consideration (Figure 3).The function sums up the leaf surface (handled by GROGRA as a shoot attribute like length) in this "shadow-relevant cone".If the value exceeds a threshold (specified in the grammar), a rule, e.g. for the transformation of the bud into a shoot, can be switched off.Despite of the simplicity of this algorithm, there is some evidence from former investigations (Pfreundt and Sloboda 1996) that there is a good relation between the leaf area located in a shadow-relevant cone and the potential photosynthetic productivity at its apex, yielding a certain justification for using a sensitive function of this kind.However, the function itself does not imply any model of carbon relations, but acts simply as a sensor scanning the cone.

Grammars for Plants with a Carbon Economy
The key question in modelling the carbon relations of trees is how the photosynthetically produced assimilates are distributed among the parts of the plant and among the different processes consuming assimilates (respiration, turnover, growth of new plant organs).This is referred to as the allocation problem.There is a vast literature about the empirical findings as well as on refined concepts for modelling allocation in trees, see e.g.Cannell and Dewar (1994).Here we restrict ourselves to very simple assumptions about allocation and concentrate on their realization in the grammar framework.We consider two extreme concepts.If the growth grammar formalism is capable of handling them both, it is reasonable to believe that it will also manage the more realistic concepts resulting from some "mixture" of the extreme strategies.In the first approach, which we call the "centralistic concept", the assimilates produced during one year are completely collected in a "carbon pool" of the individual tree and are distributed according to some (fixed or variable) key to the different tree parts for maintenance and next year's growth (Fig. 4a).This concept -with some variations, especially concerning the distribution key -can be found rather often in the literature, e.g. in the LIGNUM model of structural tree growth for Scots pine (Perttunen et ai. 1996).
The other approach will be called the "branch-autonomy concept" (Fig. 4b).It assumes that newly produced assimilates can only be consumed in the shoot where they were producedfor maintenance and growth from the buds located there -or in the segments belonging to the path downwards to the roots.(We will not consider the allocation in the root system here, but such an extension could easily be included.)A trivial consequence of this approach is that branches having a negative net carbon balance during one year will die immediately, i.e. they get no carbon support from the rest of the tree.Again, the distribution key defining which part of assimilate produced by a shoot is used for new growth and which part is transferred down the path can be varied.This concept of assimilate distribution was implemented in the AMAPpara software (Reffye et al. 1997).With some reasonable assumptions about diameter growth, the empirical relations associated to the so-called "pipe model" (Shinozaki et al. 1964) -correlating sapwood diameter and leaf area -are fulfilled almost automatically in this concept (Reffye et al. 1997), whereas in the centralistic concept some structural assumption of pipe-model type has explicitely to be included in the distribution key to meet empirical findings.
In order to encode a carbon distribution following the first, centralistic pattern, some variables are necessary in the grammar for the C-pool and also for the number of active buds to which the content of the pool has to be distributed.If only one single tree is to be considered, global variables would meet these purposes.But since we are interested in the interactions of several trees, each tree must have its own C-pool.To this end, the grammar formalism was extended: By a certain turtle command, the K command, it is possible to create local variables which stand in connection with the part of the structure which was just generated.If the command K(x) is applied more than one time, several instances of the variable are created which are accessible under the same name x but which are associated with different parts of a plant (Figure 5) or with different plants.This formalism, together with an assignment command A(x, ft) which assigns to x the value of the arithmetical expression /3, allows to create and update the individual car-bon pools of several trees in a stand.It seems to be better suited to the grammar-based realization of the centralistic concept than interactions based solely on context-sensitive rules like those employed for resource allocation by Prusinkiewicz etal. (1996).
For the morphology of our model trees, which do not refer to a certain species in the moment, a very simple scheme was chosen: There is only one branching order, orthotropic growth, leaf dieback after a certain number nmax of growth periods (nmax=3 in the example below), and each growth unit of the stem bears the same number of 5 lateral buds in subapical position.The branching angle is 50° in the beginning and increases to 75° when the branch grows older.The survival and shoot-production of a bud depends on its shadow-relevant cone: if the summed leaf surface in this cone exceeds a given threshold, there is no growth.(It can be specified in the rules whether a bud dies completely in this case or whether it just becomes dormant.In the present example, no overshadowed bud can recover, reflecting a strictly "shadow-intolerant" behaviour.) A self-pruning of branches occurs when the ratio between the leaf-surface sum and the shootlength sum of a branch falls below a given threshold.Assimilates are produced in all shoots having a non-zero leaf surface.In the present version of the example, the amount of produced assimilate depends -for the sake of simplicityonly on the leaf surface and not on the content of the shadow-relevant cone, however, such an additional dependence could easily be introduced in the grammar.Each new shoot growing from a bud consumes a certain amount of assimilates for length growth.The length of a new shoot is thus obtained as c x a, where a is the amount of assimilate invested in that shoot and c a constant.Assimilate is also consumed by all existing stem and branch segments (old shoots), each of them requiring an amount proportional to the surface of the segment.This amount of assimilate is meant to satisfy the needs of maintenance respiration as well as diameter growth, which are both considered as activities of constant intensity here.
The consumption by the old shoots is calculated together with the photosynthetic production.The remaining assimilate -the net balance -is collected in the central C-pool of the tree, represented by a local variable, and is redistributed among all active buds for new shoot growth.The growth potential of a bud, and thereby the amount of assimilate which it receives, depends in this model only upon its morphological position: The length of lateral axis segments is always shorter by a fixed factor compared to the corresponding stem segment of the same developmental step.
All morphological and carbon-balance calculations are completely specified in a sensitive growth grammar with 30 rules.The only exception is the sensitive function calculating the leaf area in the shadow-relevant cone; this function is called in "black box" style in the grammar.(A complete listing and discussion of the grammar specifying a similar 2-D example is given by Kurth 1997.) Figure 6 shows the result of a simulation run with 9 trees, placed in an equidistant square pattern, after 30 developmental steps of the grammar, corresponding to 15 growth periods.In the beginning, when the trees were not in contact with each other, their development was fairly equal, with only small differences due to a stochastic component in branch positions and orientations.However, when crown contact begins,  Values are given only for purpose of comparison to each other, no reproduction of quantitative field data was intended in these conceptual models.
the central tree of the nine is pruned more rigorously than those surrounding it because it is overshadowed from all sides.Consequently, it has less active buds than the other trees, and more assimilates are left for the upper branches and for the stem, resulting in a small advantage in height growth.Growth in thickness is not affected by competition in this model of allocation.
It is also possible to implement an allocation strategy of "branch autonomy" type in a growth grammar.To this purpose, the handling of assimilates is completely done in a shoot-related variable standing for "carbon content".Hence we have the extreme case of a local variable with one separate instance for each individual shoot.The distribution key which we have chosen is a uniform one (cf.Reffye et al. 1997), i.e. each segment a of the path P(b) down from a shoot b receives from b an amount of assimilate proportional to len{a)IL for diameter growth, if L = XceP(&) len(c) is the total length of the path (here, len means the length of a shoot).Previous to this distribution along the path, a fixed proportion of the assimilates produced by the distal shoots is allocated into new shoots emerging from the buds.There is no longer a central C-pool in the model.
When applied to 9 trees, the modified rules encoding this allocation strategy enforce a uniform height growth of all the competing trees (Figure 7).However, if one compares the stem shape of the central tree of these nine (Fig. 8b) with that of a solitary tree, i.e. a tree without a Fig. 8.Comparison of the stem shapes resulting from "branch-autonomy" carbon allocation, (a) Solitary tree, (b) central tree from a group of 9 trees (cf.Fig. 7).Diameters are artificially enlarged with respect to tree height (horizontal axis) but are of the same scale in (a) and (b).Diameters at base: 66.0 units (a), 19.3 units (b); height in both cases: 1674 units.
competitors (Fig. 8a), it becomes visible that competition does now have influence on secondary growth (confirming the results of AMAPpara simulations in Reffye et al. 1997).

Discussion
By the above examples, sensitive growth grammars have revealed a certain potential for specifying tree growth models which do not only take architectural features into account, but also the physiological basis of plant growth, i.e. carbon uptake and allocation.Surely, neither the resulting height-growth curves nor the stem shapes of Figure 8 have a realistic form in comparison with field data -the models will have to be refined to a great extent.Exploration of the parameter space and sensitivity analysis is not yet done.However, in a gross qualitative sense, the models -however simple their basic assumptions -are already capable to reproduce certain effects of competition (slightly enhanced height growth, slim stems) which are well-known from forestry experience.A strategy which would repair the oversimpli-fications of the above models and which would lead to quantitative models capable of incorporating field data would be the unification of the sensitive grammar approach discussed here with that of botanically-accurate tree modelling which is also possible in the growth-grammar framework (cf.Kurth and Lanwert 1995).However, to succeed with this unification, more data are necessary about the morphological sensitivity of tree growth (i.e., about reactions on the meristem level) on environmental conditions.A relevant question would e.g.be the relative importance of shadow, mechanical stress and other constraints on the production of new buds and on the elongation of shoots.Only few investigations have addressed such problems on the appropriate scale so far (for the influence of light conditions, see Tsel 'niker 1994'niker , Stoll 1995).
Besides this lack of a sound empirical basis, some other disadvantages and problems of the presented approach will have to be resolved in the future: -The calculation time required by the globallysensitive functions in GROGRA is not negligible under the present implementation and hardware conditions.The time necessary for the above 9-tree-arrays on an SGI workstation lies in the range of some minutes, but for more refined models and larger tree stands, calculation time becomes inhibitive.This is due to the "brute force"-realization of most of the sensitive functions, which scan all elements of the structure to find e.g. the possible intersections with a shadow-relevant cone.However, there are possibilities to accelerate these search operations which are partially already realized in other plant growth models like AMAPpara (Blaise 1991), Madeira (List et al. 1994) or GPM (Breckling 1996), especially an organisation of the model space into voxels (3-D cells) which allows to restrict search to a subset of all voxels.
-In its present state, the formalism of sensitive growth grammars is a mixture of a precisely defined rule language and some auxiliary functions (like the shadow cone function) which can also be defined precisely in mathematical terms or in some standard programming language like C, but not in the rule language.The borderline between those functions and processes which are part of the growth grammar language and those which have to be specified separately is not always quite clear.There are two strategies to handle this discontinuity: -One can define a strict border, e.g. between plant and environment, and treat the processes in the two realms by completely different formalisms.In the model implementation, the two systems will then be managed as communicating concurrent processes.This is the approach followed in M v ech and Prusinkiewicz (1996).-One could extend the rule language to enable it also to describe the processes which are excluded so far.This would lead to a unified model not only on the software level, but also in an abstract sense.Both strategies are applied to GROGRA at the moment.Whereas the first approach is advantageous to combine quickly the morphological plant model concept with well-tried simulation models based on physics or physiology (see, e.g., Dauzat 1993, Friih 1995), the second approach is more appealing in a theoretical sense.It also has the advantage to avoid the somewhat artificial barrier between plant and environment.
-Some relevant mechanisms for the development of tree architecture are not included in the models presented here, e.g.hormone regulation, or the interaction between growth and water flow in the plant (cf.Reffye et al. 1995).However, a contextsensitive L-system implementation (Prusinkiewicz et al. 1996) of a model of Borchert and Honda (1984) simulating a dependence between growth and mass flow shows that growth grammars are generally capable of taking such mechanisms into account.Again, it is more a lack in the empirical basis which lets one hesitate to include such approaches in realistic tree models.Advanced growth grammars like those specifying the above allocation examples are not easy to read and to understand at first sight.Future developments will have to account for improved readability and transparency.On the other hand, some level of abstraction, like in formulas from physics or chemistry, will be unavoidable if a universal formalism for tree architecture and growth is to be developed.

Fig. 2 .
Fig. 2. Structure generation by a sensitive growth grammar, a is the start string, &k is the string which is used by the turtle to create the (plant) structure Sk-Sensitive rules take Sk into account when cfy is rewritten into Ojt+i.

Fig. 4 .
Fig. 4. The centralistic concept (a) and the branchautonomy concept (b) for carbon allocation in trees.In (a), the assimilates produced by shoot x are distributed to potentially all shoots via the central C-pool.In (b), the assimilates from x can be consumed only by x itself and by shoots belonging to the path from x downwards.

Fig. 5 .
Fig. 5.The relation of local variables to shoots.The local variable x yields 17 when evaluated for shoot a, and 5, when evaluated for shoot b.

Fig. 7 .
Fig. 7. Nine trees with "branch-autonomy" carbon allocation and light-dependent shoot growth, produced by GROGRA from a sensitive growth grammar.Number of steps: 40 (= 20 growth periods), distance of trees: 200 units, height: 1674 units (constant for all trees), mean diameters at base: 50.4 units (corner trees), resp.43.7 units (middle trees of side rows), resp.19.3 units (central tree).Values are given only for purpose of comparison to each other, no reproduction of quantitative field data was intended in these conceptual models.