L-System
aus Wikipedia, der freien Enzyklopädie
Ein L-System ist eine Zeichenkette (Generation 0) gepaart mit einer Ersetzungsregel, die besagt, welche Teile einer Zeichenkette durch eine neue Zeichenkette ersetzt werden sollen, um die nächste Generation (wieder eine Zeichenkette) zu erhalten. Die Idee für die L-Systeme kam von Aristid Lindenmayer, daher der Name.
Die durch L-Systeme beschriebenen Zeichenketten sind in der Regel Fraktale. Man kann auch versuchen, die Zeichenketten zu visualisieren, wobei eine Interpretation von Buchstaben als Kommandos für Turtle-Grafik nahe liegt. Lässt man zwei besondere Zeichen zu, nämlich '[' für "aktuelle Position und Richtung abspeichern" und ']' für "gespeicherte Position wieder abrufen", so lassen sich effizient L-Systeme schaffen, deren Visualisierung dem Bild von Pflanzen erstaunlich ähnlich ist.
[Bearbeiten] Beispiel
- Generation 0: "ACAB"
- Ersetzungsregel: "A"->"ACAB"
Dann sehen die nachfolgenden Generationen so aus:
- "ACABCACABB"
- "ACABCACABBCACABCACABBB"
- "ACABCACABBCACABCACABBBCACABCACABBCACABCACABBBB"
- ...
[Bearbeiten] Visualisierungen
- http://www.geocities.com/ffrog.geo/rays/smallbush.jpg
- http://www.jjam.de/Java/Applets/Fraktale/Lindenmayer.html
- http://www.irtc.org/ftp/pub/stills/2001-06-30/warm_up.jpg (besonders imposant von Norbert Kern)
Siehe auch:
[Bearbeiten] Literatur
- Przemyslaw Prusinkiewicz, Aristid Lindenmayer: The Algorithmic Beauty of Plants, Springer, ISBN 0-387-94676-4
- Hans Meinhardt, Przemyslaw Prusinkiewicz, Deborah R. Fowler: The Algorithmic Beauty of Sea Shells, Springer, ISBN 3-540-57842-0