• Keine Ergebnisse gefunden

2 Plant modelling: State of the art

2.2 Structure models

2.2.4 Forest models and the transition to functional-structural models

2.2.4.2 Lindenmayer Systems and GROGRA

LINDENMAYER (1968) developed a formalism for modelling filamentous organisms based on parallel string rewriting. The general approach got the name Lindenmayer- or Systems. L-Systems can be used for the modelling of tree structures and their growth, through the description of their geometry and its development in time. The representation of tree structure consists of a series of concatenated symbols called string and includes the topological and geometrical information of each element (see section 1.2) and optionally also other, non-structural attributes as colour, leaf mass, chemical composition, etc. (KURTH, 1999). The modelling of the temporal development of structures is achieved through the application of rules which describe how the structure may change from one time step to another. L-systems consist of the following elements:

1. A set Σ of symbols (alphabet) for the representation of structure elements and operators.

2. An initial structure represented by a start symbol or start string (axiom) α consisting of symbols from Σ.

3. A set of rules for the rewriting of strings. These rules are applied to every symbol in the string at time t to generate a new string at time t+1. Symbols that do not match any rule remain unchanged. These are called generative rules, and take the form:

symbol -> string of symbols

4. For the (graphical) representation of the string, it must be interpreted and translated into a spatial structure. This process is called geometrical interpretation or semantic.

The application of the generative rules to the string is normally iterated many times. The string at each iteration step represents a plant at different stages of its development. For each time step t or generation, a string σt is generated, where σ0 = α. For most simple models, each time step corresponds to one year, which is reasonable for trees and other long term simulations. For the modelling of other processes like the development of flowers and fruits or leaf fall in autumn other temporal scaling can be used. The geometrical interpretation is implemented using turtle geometry (ABELSON AND DISESSA, 1981). Turtle geometry was developed for the programming language Logo in order to control a graphical device called

“turtle”. The first “turtles” were mechanical devices carrying pens to draw on paper on the floor. In modern applications the turtle is a virtual device that helps to draw structures on a monitor. Turtle geometry describes paths "from within" rather than "from outside". For example, "turn right" means turn right relative to the original heading direction of the turtle and not relative to an absolute reference point. The user manipulates the graphical turtle by telling it to move forward or back some number of steps, or by telling it to turn left or right some number of degrees. The advantage of turtle geometry is that many paths are more simply described in relative than in absolute terms. In L-Systems, the virtual “turtle” is controlled by a subset of the alphabet Σ. The subset of commands can vary in complexity and size (compare PRUSINKIEWICZ AND LINDENMAYER, 1990; KURTH, 1994; KURTH, 1997;

KURTH, 1999). The interpretation of the string σt produces a geometrical structure St. The development of an L-system is represented in Figure 2-17, where the horizontal arrows represent the generative rules and the vertical arrows represent the geometrical interpretation.

KURTH (1999) describes three main levels for the description of geometric plant structures (Figure 2-18): The representation of a structure at a given time, the definition of rules for the development of the structure, and the possibility of controlling the dynamics of development by choosing between different applicable rules.

Figure 2-17: Working scheme of an L-system. α is the initial string, σt the string at time t, and St the corresponding geometrical structure. Horizontal arrows represent the application of generative rules, vertical arrows the geometrical interpretation. After KURTH, 1999.

The concept of L-System and their application for plant modelling have been used and expanded by many authors to include for example stochastic rules (NISHIDA, 1980), parametric grammars (LINDENMAYER, 1974; HERMAN AND SCHIFF, 1975; CHIEN AND

JÜRGENSEN, 1992) and context sensitivity (PRUSINKIEWICZ AND LINDENMAYER, 1990). The use of all these expansions have made of the original L-Systems a powerful modelling tool capable of going beyond simple structure models, and thus enabling the creation of structural-functional models that can be combined with different graphical tools for impressive graphical simulations (KURTH, 1994; KURTH, 1997; KURTH, 1999; KURTH, 2002; KURTHAND

ANZOLA, 1997; KURTH AND FRÜH, 1998; KURTH AND SLOBODA, 1997; KURTH AND

SLOBODA, 2001; MĚCH AND PRUSINKIEWICZ, 1996; PRUSINKIEWICZ, 1987; PRUSINKIEWICZ, 1994; PRUSINKIEWICZ, 1997; PRUSINKIEWICZ AND LINDENMAYER, 1990; PRUSINKIEWICZ ET AL., 1998; PRUSINKIEWICZ ET AL., 1994a; PRUSINKIEWICZET AL., 1994b; PRUSINKIEWICZET AL., 1997; PRUSINKIEWICZ ET AL., 1999; PRUSINKIEWICZ ET AL., 2001; ANZOLA JÜRGENSON, 1998).

In context sensitive systems the application of generative rules depends not only on the respective symbol but also on the neighbour symbols. PRUSINKIEWICZ AND LINDENMAYER

(1990) applied context sensitivity to simulate hormone activity in plants. The inclusion of stochastic rules in L-systems permits to control the application of generative rules (Figure 2-18c). Rules can be provided with a probability value, and then a rule is selected randomly and applied to the symbol. The selection is made for each instance of the symbol separately.

Further, stochastic L-systems permit the simulation of Markov chains for modelling meristem state transition (MAILLETTE, 1990; GUÉDON, 1997). In parametric L-systems each symbol can be equipped with a list of real-valued parameters defining attributes like age, vitality or C-reserves.

The software GROGRA developed by KURTH (1994) at the University of Göttingen is a growth grammar interpreter based on L-Systems. GROGRA offers different possibilities for (1) structure generation based on different kinds of L-systems, (2) reading pre-generated structures, (3) analysis of a given structure under different criteria, (4) converting data from and into other data formats (AMAP, HYDRA, etc) and (5) graphical representation of structures.

Figure 2-18: Three levels of the formal description of plant structures. a) static geometrical description. b) Development of a structure over time as achieved by basic L-systems. c) Control of the development as achieved with stochastic or sensitive L-Systems. The arrows represent the application of generative rules (after KURTH, 1994).

L-systems are written in two formats, lsy for non-sensitive and ssy for sensitive L-systems. In this context, sensitivity means more than context sensitivity as described above. Kurth refers to it as global sensitivity, where both the structure St and its environment can exert influence on the generative rules. Further, both formats include the possibility to define parameter values for each symbol, and thus, they support parametric L-systems. For more details about the language formalisms for L-systems in GROGRA see KURTH, 1999. Although the software is written in the programming language C, knowledge about C is not required to use GROGRA. Only the syntax for arithmetical expressions is the same as in C. However, GROGRA also provides the possibility to call pre-defined functions in L-systems. These

C-functions are included in the source code and cannot be changed by the user. The C-functions and their respective code are listed in KURTH, 1999.

For the description of structures, GROGRA provides the formats dtg for the most explicit description of generated structures, dtd (descriptive tree data, see 3.1.3) for the description of empirically mapped tree structures, dtb for data exchange with AutoCAD, pbg and sbg for data exchange with HYDRA. Furthermore, GROGRA can read and generate linetree files for data exchange with AMAP. As shown here, GROGRA provides a vast range of interfaces with other models and tools, and thus it is well suited as a base for model interconnection.

KURTH (1999) describes the possibilities of GROGRA and demonstrates the “universality” of L-systems by reproducing existing plant models from the literature, as e.g. the light model of TAKENAKA (1994) and the model LIGNUM (PERTTUNEN ET AL., 1996). GROGRA is per se not a model, but a growth engine which implements single models in form of L-systems. The range of models that can be implemented this way is very vast and not limited to structural models. The application of the advanced features of L-systems – stochastic and parametric systems – allows the implementation of structural-functional models based for example on light distribution, spatial competition, mechanics and allocation of assimilates.