Un sistema de L-sistema o Lindenmayer es un paralelo del sistema de reescritura , es decir, una variante de una gramática formal , lo más famoso utilizado para modelar los procesos de crecimiento de desarrollo de la planta , sino también capaz de modelar la morfología de una variedad de organismos. L Los sistemas también pueden ser utilizados para generar auto-similar fractales como los sistemas de función iterada . L-systems were introduced and developed in 1968 by the Hungarian theoretical biologist and botanist from the University of Utrecht , Aristid Lindenmayer (1925–1989). L-sistemas se han introducido y desarrollado en 1968 por el húngaro teórico biólogo y botánico de la Universidad de Utrecht , Aristid Lindenmayer (1925-1989).
El recurrente naturaleza de las reglas del sistema L-conduce a la auto-similitud y por lo tanto fractal -como las formas son fáciles de describir con un L-sistema. Plant models and natural-looking organic forms are easy to define, as by increasing the recursion level the form slowly 'grows' and becomes more complex. Modelos de planta y de aspecto natural las formas orgánicas son fáciles de definir, ya que al aumentar el nivel de recursividad la forma poco a poco "crece" y se vuelve más compleja. Lindenmayer systems are also popular in the generation of artificial life. Sistemas de Lindenmayer son también populares en la generación de vida artificial .
L-system grammars are very similar to the semi-Thue grammar (see Chomsky hierarchy ). Sistema de L-gramáticas son muy similares a la gramática semi-Thue (ver jerarquía de Chomsky ). L-systems are now commonly known as parametric L systems, defined as a tuple L-sistemas son comúnmente conocidos como sistemas paramétricos L, definida como una tupla
- G = ( V , ω, P ), G = (V, ω, p),
- V (the alphabet ) is a set of symbols containing elements that can be replaced ( variables ) V (el alfabeto) es un conjunto de símbolos que contiene elementos que pueden ser reemplazados (variables)
- ω ( start , axiom or initiator ) is a string of symbols from V defining the initial state of the system ω (inicio, axioma o iniciador) es una cadena de símbolos de V que define el estado inicial del sistema
- P is a set of production rules or productions defining the way variables can be replaced with combinations of constants and other variables. P es un conjunto de reglas de producción o de producción que define la forma en las variables puede ser sustituida por una combinación de constantes y otras variables. A production consists of two strings, the predecessor and the successor . A la producción se compone de dos cadenas, el antecesor y el sucesor. For any symbol A in V which does not appear on the left hand side of a production in P, the identity production A → A is assumed; these symbols are called constants or terminals . Para cualquier símbolo A en V, que no aparece en el lado izquierdo de una producción en P, la producción de la identidad de A → A se supone, estos símbolos se llaman constantes o terminales.
An L-system is context-free if each production rule refers only to an individual symbol and not to its neighbours. Un sistema L es independiente del contexto, si cada regla de producción se refiere sólo a un símbolo individual y no a sus vecinos. Context-free L-systems are thus specified by either a prefix grammar , or a regular grammar . Libre de contexto L-sistemas son lo especificado por una gramática prefijo , o una gramática regular . If a rule depends not only on a single symbol but also on its neighbours, it is termed a context-sensitive L-system. Si una regla no sólo depende de un solo símbolo, sino también de sus vecinos, lo que se denomina un contexto sensible a L-sistema.
If there is exactly one production for each symbol, then the L-system is said to be deterministic (a deterministic context-free L-system is popularly called a D0L-system ). Si no es exactamente una producción para cada símbolo, entonces el sistema L se dice que es determinista (determinista libre de contexto L-sistema se conoce popularmente como un sistema de D0L). If there are several, and each is chosen with a certain probability during each iteration, then it is a stochastic L-system. Si hay varios, y cada uno es elegido con una cierta probabilidad en cada iteración, entonces es un modelo estocástico L-sistema.
Using L-systems for generating graphical images requires that the symbols in the model refer to elements of a drawing on the computer screen. Utilizando L-sistemas de generación de imágenes gráficas requiere que los símbolos en el modelo de referencia a los elementos de un dibujo en la pantalla del ordenador. For example, the program Fractint uses turtle graphics(similar to those in the Logo programming language) to produce screen images. Por ejemplo, el programa Fractint utiliza gráficos de tortuga (similares a los del lenguaje de programación Logo) para producir imágenes de la pantalla. It interprets each constant in an L-system model as a turtle command. Interpreta cada constante en un modelo L-sistema como un comando de las tortugas.
Aqui un pequeño ejemplo:
Las algas
Lindenmayer's original L-system for modelling the growth of algae. Lindenmayer originales de L-sistema para el modelado del crecimiento de algas.
- variables : AB variables: AB
- constants : none constantes: ninguno
- start : A inicio: A
- rules : (A → AB), (B → A) reglas: (A → AB), (B → A)
- n = 0 : A n = 0:
- n = 1 : AB n = 1: AB
- n = 2 : ABA n = 2: ABA
- n = 3 : ABAAB n = 3: ABAAB
- n = 4 : ABAABABA n = 4: ABAABABA
- n = 5 : ABAABABAABAAB n = 5: ABAABABAABAAB
- n = 6 : ABAABABAABAABABAABABA n = 6: ABAABABAABAABABAABABA
- n = 7 : ABAABABAABAABABAABABAABAABABAABAAB
- n=7: ABAABABAABAABABAABABAABAABABAABAAB
The following images were generated by an L-system. Las siguientes imágenes fueron generadas por un L-sistema. They are related and very similar to Penrose tilings , invented by Roger Penrose. Están relacionados y muy similar a mosaicos de Penrose , inventado por Roger Penrose .
As an L-system these tilings are called Penrose's rhombuses and Penrose's tiles . Como un sistema L estos mosaicos se llaman rombos de Penrose y baldosas de Penrose. The above pictures were generated for n = 6 as an L-system. Las imágenes de arriba se generaron para n = 6 como un L-sistema. If we properly superimpose Penrose tiles as an L-system we get next tiling: Si bien superponer las baldosas de Penrose como un L-sistema nos mosaico siguiente:
otherwise we get patterns which do not cover an infinite surface completely: de lo contrario, conseguir patrones que no cubren completamente una superficie infinita: