Redirected from Lindenmayer system
Lindenmayer systems are also popular in the generation of artificial life.
An Lsystem provides mathematical formalisms to describe the growth of simple and even complex plants. Lindenmayer Systems are very often selfsimilar and thereby fractals.
An Lsystem is a rulelike description of a 2D or 3D form. It contains descriptions of parts and how they should be assembled together. The description is applied to itself a number of times (e.g., recursion levels) so fractal and recursive forms are very easy to describe in an Lsystem. This is why they are used a lot for plants and naturallylooking organic forms. By increasing the recursion level, the form slowly 'grows' and becomes more complex. Lsystems are now commonly known as parametric L systems, defined as a set G = {V, S, ω, P}. Such simple parametric Lsystems contain four elements:

Example 1: Original Lindenmayer Lsystem for his algae:
what produces:
Example 2: Fibonacci numbers. If we define a simple grammar, defined by:
this Lsystem produces the following sequence of strings:
and if we count the length of each string, we obtain the famous Fibonacci sequence of numbers:
This example yields the same result (in terms of the length of each string, not the sequence of A's and B's) if the rule (B → AB) is replaced with (B → BA).
Example 3: Cantor dust:
Let A mean "draw forward" and B mean "move forward".
This produces the famous Cantor's fractal set on a real straight line R.
Example 4: A variant of the Koch snowflake which uses only rightangles:
Here, F means "draw forward", + is "turn left 90°", and  is "turn right 90°".
F
F+FFF+F
F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F
F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F+ F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F+ F+FFF+F+F+FFF+FF+FFF+FF+FFF+F+F+FFF+F
...
A Lindenmayer system consists of a start symbol, a set of production rules and some definitions of the meaning of the symbols. Using Lsystems for generating graphical images requires that the symbols in the model refer to elements of a drawing on the computer screen. For example, the program FractInt (see external links below) uses turtle graphics (similar to those in the Logo programming language) to produce screen images. It interprets each constant in an Lsystem model as a turtle command.
An Lsystems is contextfree if each production rule (like in the above examples) refers only to an individual symbol and not to its neighbours. If a rule depends not only on a single symbol but also on its neighbours, it is termed a contextsensitive Lsystem.
If there is exactly one production for each symbol, then the Lsystem is said to be deterministic. If there are several, and each is chosen with a certain probability during each iteration, then it is a stochastic Lsystem.
A deterministic contextfree Lsystem is popularly called a D0Lsystem.
There are many open problems involving studies of Lsystems. For example:
Lsystems on a real straight line R:
Another well known Lsystem on a plane R^{2} are:
The following images were generated by an Lsystem. They are related and very similar to Penrose tilings.
As an Lsystem these tilings are called Penrose's rhombuses and Penrose's tiles. The above pictures were generated for n=6 as an Lsystem. If we properly superimpose Penrose tiles as an Lsystem we get next tiling:
otherwise we get patterns which do not cover an infinite surface completely:
Search Encyclopedia

Featured Article
