| |
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-Grafiknahe 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 Visualisierungdem Bild von Pflanzenerstaunlich ähnlich ist.
Beispiel
- Generation 0: "ACAB"
- Ersetzungsregel: "A"->"ACAB"
Dann sehen die nachfolgenden Generationen so aus:
- "ACABCACABB"
- "ACABCACABBCACABCACABBB"
- "ACABCACABBCACABCACABBBCACABCACABBCACABCACABBBB"
- ...
Visualisierungen
-
- http://www.jjam.de/Java/Applets/Fraktale/Lindenmayer.html
-
(besonders imposant von Norbert Kern)
Siehe auch:
- L-System-Invertierungs-Problem
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-0en:L-System
es:Sistema-L
pl:L-system
sv:Lindenmayersystem
Dieser Artikel basiert auf dem Artikel aus der freien Enzyklopädie Wikipedia und steht unter der GNU-Lizenz für freie Dokumentation. In der Wikipedia ist eine Liste der Autoren verfügbar.
|