Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Escuela de Informática
Tema:
L–SYSTEM
Curso:
Integrantes:
3 de Diciembre de 2018
RESUMEN
I
II
Índice general
RESUMEN I
Lista de figuras IV
INTRODUCCIÓN VII
1. CONCEPTOS BÁSICOS 1
1.1. Definiciones Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Gramática Formal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2.1. Contexto de usos . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Fractal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3.1. Caracterı́sticas . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Fractales Naturales . . . . . . . . . . . . . . . . . . . . . . . . . 3
Conjunto de Mandelbrot . . . . . . . . . . . . . . . . . . . . . . 3
Paisajes Fractales . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Fractales de Pinturas . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3.2. Sistema Iterativo de Funciones . . . . . . . . . . . . . . . . . . . 3
Algoritmo de Representación . . . . . . . . . . . . . . . . . . . . 4
1.3.3. Vida Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Filosofı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
III
IV ÍNDICE GENERAL
3. EJEMPLOS 17
3.1. Ejemplo 1: Algas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2. Ejemplo 2: Árbol Fractal (binario) . . . . . . . . . . . . . . . . . . . . . 17
3.3. Curva Dragón . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
CONCLUSIONES 25
BIBLIOGRAFÍA 27
Índice de figuras
V
VI ÍNDICE DE FIGURAS
INTRODUCCIÓN
En el curso de geometrı́a se aprende sobre las formas en una dimensión, dos dimen-
siones y tal vez incluso tres.
Cuál es la circunferencia de un cı́rculo? El área de un rectángulo? La distancia entre
un punto y una lı́nea?, utilizando vectores para describir el movimiento de los cuerpos
en el espacio cartesiano.
Este tipo de geometrı́a se conoce generalmente como geometrı́a euclidiana, después
del matemático griego Euclides. Ahora, nos planteamos la siguiente cuestión: Pode-
mos describir nuestro mundo con geometrı́a euclidiana? La pantalla LCD que se está
mirando ahora mismo parece un rectángulo. Y la ciruela que una persona comió es
circular.
Pero qué pasarı́a si se mirará más lejos y considerara losárboles que bordean la calle,
las hojas que cuelgan de esos árboles, los rayos de la tormenta de la noche anterior, la
coliflor que se comió para cenar, los vasos sanguı́neos en el cuerpo, las montañas y las
costas que cubren la tierra más allá de la ciudad de Trujillo? La mayorı́a de las cosas
que se encuentran en la naturaleza no pueden ser descritas por las formas geométricas
idealizadas de la geometrı́a euclidiana.
Entonces, si queremos comenzar a construir diseños computacionales con patrones
más allá de las formas simples elipse (), rect () y line (), es hora de que se aprenda sobre
los conceptos subyacentes y las técnicas para simular la geometrı́a de la naturaleza: los
fractales y su forma de expresión mediante L–System o Sistemas Lindenmayer.
VII
VIII ÍNDICE DE FIGURAS
Capı́tulo 1
CONCEPTOS BÁSICOS
1
2 CAPÍTULO 1. CONCEPTOS BÁSICOS
1.2.2. Ejemplo
Hay distintos tipos de gramáticas formales que generan lenguajes formales Imagi-
nemos una gramática con estas dos reglas:
A → bA
A→c
A→bA→bbA→bbbA→bbbc
Esta gramática da lugar a un lenguaje formal que consiste en el conjunto de todas las
cadenas de caracteres que pueden ser generadas por medio ellas.
Por ejemplo: bbbc, bbbbbbbbc, c, bc, etc.
1.3. Fractal
Un fractal es un objeto geométrico cuya estructura básica, fragmentada o aparen-
temente irregular, se repite a diferentes escalas. El término fue propuesto por el ma-
temático Benoit Mandelbrot en 1975 y deriva del latı́n fractus, que significa quebrado o
fracturado. Muchas estructuras naturales son de tipo fractal. La propiedad matemáti-
ca clave de un objeto genuinamente fractal es que su dimensión métrica fractal es un
número racional no entero.
1.3.1. Caracterı́sticas
A un objeto geométrico fractal se le atribuyen las siguientes caracterı́sticas:
Las copias son similares al todo: misma forma, pero diferente tamaño. Ejemplos
de autosimilaridad:
Fractales Naturales
son objetos naturales que se pueden representar con muy buena aproximación me-
diante fractales matemáticos con autosimilaridad estadı́stica. Los fractales encontrados
en la naturaleza se diferencian de los fractales matemáticos en que los naturales son
aproximados o estadı́sticos y su autosimilaridad se extiende solo a un rango de esca-
las (por ejemplo, a escala cercana a la atómica su estructura difiere de la estructura
macroscópica).
Conjunto de Mandelbrot
Paisajes Fractales
Fractales de Pinturas
Algoritmo de Representación
Algoritmo Determinista: Simplemente construye los sucesivos conjuntos A, F(A),
F(F(A)), .... Como dicha sucesión converge al atractor del SIF independientemente del
conjunto A de partida, puede usarse cualquier valor inicial, con frecuencia una caja
cuadrada.
Se demuestra que la sucesión ası́ formada converge, al atractor del SIF. Este algoritmo
permite una generalización en que se asignan distintas probabilidades pi a la hora de
escoger cada fi .
Diferentes probabilidades permiten obtener diversas texturas y densidades, útiles para
el modelado de escenas naturales. Un SIF en que cada función fi va acompañada de un
número positivo pi de modo que p1 + ... + pn = 1 se denomina SIF con probabilidades.
Filosofı́a
La filosofı́a en el modelado de vida artificial difiere de manera importante con el
modelado tradicional, ya que no sólo se estudia la vida como la conocemos, sino que
también abarca como podrı́a ser la vida. Un modelo tradicional de un sistema biológico
se enfocarı́a en capturar los parámetros más importantes. En contraste, el acercamiento
que toma el modelado de la vida artificial, en términos generales, buscarı́a descifrar
el principio más simple y genérico subyacente e implementarlo en una simulación.
Posteriormente, la simulación ofrecerı́a la posibilidad de analizar nuevos y diferentes
sistemas similares a la vida.
Aplicaciones
Las aplicaciones de la vida artificial se pueden encontrar en alguno de estos casos:
Los sistemas complejos adaptativos, que han dado paso a una nueva generación
de sistemas expertos, que son capaces de aprender y evolucionar.
Los autómatas celulares, que imitan funciones de los organismos celulares en pro-
gramas complejos, aplicando el conocimiento biológico de los mismos a principios
prácticos de organización en sistemas de cómputo.
Los agentes autónomos, que son cada dı́a más usados en aplicaciones de búsqueda.
La primera de ellas se centra en los aspectos de ”más alto nivel”, en cada pro-
blema, utilizando fórmulas y reglas, o hechos históricos, que ayudan a la toma
de decisiones. Un ejemplo de esto pueden ser las fórmulas del tiro parabólico, ya
que estas pueden entenderse como modelos de simulación.
La segunda pone atención en los aspectos de ”más bajo nivel”, mediante fórmulas
o reglas. Una de las ventajas de este tipo de simulaciones es que sus caracterı́sticas
son más sencillas, ya que suelen ser más fáciles de detectar los aspectos de bajo
nivel que aquellos de alto nivel.
8 CAPÍTULO 1. CONCEPTOS BÁSICOS
Capı́tulo 2
L–SYSTEM (SISTEMAS
LINDENMAYER)
2.2. Historia
El concepto de Sistema de Lindenmayer fue concebido por el biólogo y botánico
teórico húngaro Aristid Lindenmayer de la Universidad de Utrecht, en 1968. Sin em-
bargo, fueron dos de sus estudiantes, Ben Hesper y Pauline Hogeweg los primeros en
darse cuenta del potencial de los sistemas-L para representar plantas (en un principio).
En 1970, Hesper y Hogeweg en dos semanas crearon el primer programa que, a partir
de una secuencia de 5,000 caracteres generados por un sistema-L, imprimió algo que se
parecı́a mucho a una hoja vegetal. Esta primera idea digital no le gustó mucho a Lin-
demayer, ya que él consideraba que no debı́an perder el tiempo y desperdiciar recursos
en esas cosas. Lo cierto es que la idea comenzó a circular. Campos Muñoz (2011)
Cuando en 1986 Lindemayer conoció a Przemyslaw Prusinkiewicz se convenció ple-
namente de las posibilidades de los sistemas–L y empezó también a utilizarlos para
generar imágenes cada vez más realistas de plantas. Juntos, en 1990, escribieron el
libro ”La belleza algorÃtmica de las plantas”,(The Algorithmic Beauty of Plants).
Prusinkiewicz (1990)
2.3. Definición
Un sistema–L es un lenguaje, una gramática formal de derivación paralela, un
conjunto de reglas y sı́mbolos principalmente utilizados para modelar el proceso de
crecimiento de las plantas, aunque también puede modelar la morfologı́a de una gran
variedad de organismos. El concepto central de los sistemas–L es el de re–escritura,
9
10 CAPÍTULO 2. L–SYSTEM (SISTEMAS LINDENMAYER)
G = { V, S, ω, P }
Donde:
Definen la forma en la que las variables pueden ser reemplazadas por combinacio-
nes de constantes y otras variables. Las reglas de producción generan cadenas formadas
únicamente por los sı́mbolos del alfabeto y por lo tanto todas las cadenas pertenecerán
al lenguaje definido por el sistema–L. Campos Muñoz (2011) Una consideración
importante es que las reglas de producción se aplican simultáneamente a todos los
sı́mbolos de la cadena de entrada, sea ésta el axioma o las cadenas resultantes de cada
derivación. Esta propiedad refleja el origen biológico de los sistemas–L, ya que los orga-
nismos vivos crecen simultáneamente en todas sus partes y no secuencialmente. Cabe
señalar que, en cada iteración, la estructura del sistema aumenta su complejidad por lo
que hay que ser cuidadosos en derivar demasiadas veces al sistema. Además, se pueden
incorporar a la definición del sistema un conjunto de parámetros para su interpretación
ya que debemos tener en cuenta que no le hemos dado ningún significado a los sı́mbolos
del alfabeto. Estos sistemas hipotéticamente podrı́an describir muy diversos procesos
reales según su significado (gráfico o sonoro); podrı́an representar la reproducción de
células o el crecimiento de ramas en un árbol. Para generar imágenes se requiere que
los sı́mbolos en el modelo hagan referencia a elementos de un dibujo, interpretando
cada constante en el sistema–L como una operación de dibujo y para generar sonidos,
que se asocien a una nota musical, por mencionar algunos.
2.5. FAMILIAS DE SISTEMAS–L 11
El lado izquierdo de la regla de producción debe ser un solo sı́mbolo del alfabeto.
Con estas restricciones aseguramos que para cualquier axioma o cadena introducida en
el sistema–D0L, ésta podrá derivar en exactamente otra única cadena. Y que significa
¿D0L? Determinı́stico 0–context L–systems; sistemas determinı́sticos libres de con-
texto. Campos Muñoz (2011). Algunas definiciones, un sistema–L puede ser:
Libre de contexto, si cada producción se refiere sólo a un sı́mbolo individual y no a
sus vecinos.
Sensitivo al contexto, cuando la aplicación de una regla depende también de sus
vecinos (sistema–IL).
Determinista, si existe exactamente una producción para cada sı́mbolo.
No Determinista si hay al menos un sı́mbolo al que le corresponde más de una pro-
ducción.
Estocástico, Probabilı́stico cuando hay varias producciones para un mismo sı́mbolo y
cada una de ellas es elegida con una probabilidad determinada (sistema–PL).
Con corchetes o extensiones, permiten modelar ramificaciones de organismos (tie-
nen una memoria de pila).
Temporal, porque el tiempo cambia su comportamiento.
Propagativo, si ningún sı́mbolo produce la cadena vacÃa.
No Propagativo, si algún sı́mbolo produce la cadena vacı́a.
Tabular, contiene tablas de producción de modo que cada uno de sus elementos es un
conjunto de reglas de producción sobre el alfabeto (sistemaTL).
Sensitivos al ambiente, cuando en la evolución intervienen factores externos al
sistema–L (reglas que no pertenecen al lenguaje).
Haciendo una relación entre algunos de estos tipos, podemos decir que los sistemas–L
deterministas son un caso particular de los probabilistas, pues asignan implı́citamente
a sus únicas producciones la probabilidad igual a 1, dando la certeza absoluta de que
esa será la cadena elegida en cada derivación para ese sı́mbolo.
2.6. Tipos
Un sistema o modelo de desarrollo tiene un alfabeto y un conjunto de producciones
que son aplicadas en paralelo a todos los sı́mbolos de la cadena para formar la siguiente
cadena en la secuencia de desarrollo. Al alfabeto y las producciones se les conoce como
12 CAPÍTULO 2. L–SYSTEM (SISTEMAS LINDENMAYER)
el esquema de desarrollo. Además, este sistema especifica uno o más sı́mbolos iniciales,
llamados axiomas. Una secuencia de desarrollo es una serie de cadenas v0, v1, v2... de
sı́mbolos del alfabeto tal que v0 es el axioma, y para toda i, vi+1 se obtiene de aplicar
las producciones en paralelo a todos los sı́mbolos de vi . Sandoval (2002)
Los sistemas Lindenmayer pueden representar los diferentes estadios por los que
pasa un organismo vegetal. Para ello se sigue una secuencia de desarrollo utilizando
reglas de producción, las que utilizan un alfabeto de sı́mbolos; que a su vez representan
estructuras del organismo a modelar y estas producciones, dependiendo de sus carac-
terı́sticas, pertenecen a un tipo diferente de L–system como se describe a continuación.
2.6.1. Sistemas 0L
Los sistemas-0L son el conjunto más simple de los sistemas Lindenmayer, los de
contexto libre (para abreviar, sistemas-0L, donde el cero significa cero interaccio-
nes”)Sandoval (2002) Explican que este tipo de sistemas–L imitan un desarrollo
unidimensional, como el de un organismo filamentoso, donde la descendencia se da
por linajes celulares y es independiente de otros factores como las condiciones de las
células vecinas o el clima. Explican que este tipo de sistemas–L imitan un desarrollo
unidimensional, como el de un organismo filamentoso, donde la descendencia se da por
linajes celulares y es independiente de otros factores como las condiciones de las células
vecinas o el clima.
V = { { a, b, c, λ
Figura 2.1: Tres estados transitorios de una célula y sus reglas.Fuente: Sandoval(2002)
2.6. TIPOS 13
(sistemas 0L), la célula a tiene tres reglas diferentes de producción, mientras que, en
este ejemplo, la célula a con cierta polaridad tiene solo una regla de producción. Esta
es la caracterı́stica que hace la diferencia entre los sistemas–0L y los sistemas–D0L.
Definición: Un esquema T0L está definido por G =< V, ω >, donde V (el alfabeto de
G) es un conjunto finito no vacı́o y es un conjunto no vacı́o de tablas de G. Donde cada
elemento P de (llamado una tabla) es un subconjunto no vacı́o de V xV ∗, tal que (∀ α)
V (∃α) V ∗ (< α, β >) ∈ P y W es la cadena inicial o axioma. Donde una producción
de P se puede escribir como α → β, α → β representa la transformación del ρ estado
a de la cadena al estado b. Explica que los sistemas T0L constan de un alfabeto V,
un conjunto finito de tablas de decisión, compuestas a su vez, por un conjunto finito
de reglas de producción P y un sı́mbolo inicial o axioma ω. Dentro de la secuencia de
derivación se puede cambiar de una tabla a otra. En el caso de las plantas que cambian
14 CAPÍTULO 2. L–SYSTEM (SISTEMAS LINDENMAYER)
Figura 2.4: Probabilidad de que una producción se lleve a cabo. Fuente: Sandoval(2002)
Donde B es un botón, Fb son flores blancas, Fr son flores rojas y Fm son flores
moradas. Cada producción puede ser seleccionada con la misma probabilidad de 0.33.
2.6.5. Sistemas–IL
Este tipo de sistemas–L modela las plantas que responden a interacciones celulares,
y sistemas–IL significa ”sistemasL de contexto sensitivo”. Prusinkiewicz explica que las
producciones son de la forma d g R b, donde la letra .a”, puede producir ”b”, si y sólo
2.7. CÓMO GENERAR UN SISTEMA–L 15
si .a”, es precedido por ”d”, y seguido por ”g”. Las letras ”d”, y ”g”forman el contexto
izquierdo y derecho de a en esta producción. Sandoval (2002) Los sistemas–IL se
dividen en los sistemas–2L y en los sistemas lL. Los sistemas–2L tienen dos contextos,
uno izquierdo y uno derecho. Los sistemas–lL, como su nombre lo indica, tienen un
solo contexto, que puede ser de la forma d¡a R b o a¿g R b. Un ejemplo de cómo se
aplican estos sistemas es la difusión de una hormona a lo largo de células filamentosas.
Supongamos que, V = a, b , w = baaaaaaa P=b < aRb Donde w es el estado inicial
del filamento, a es una célula con una concentración baja de hormona y b es una
célula con una concentración excedente. El proceso de difusión se dará de la siguiente
manera: baaaaaaa bbaaaaaa bbbaaaaa bbbbaaaa . . . En estos sistemas, los sı́mbolos:
y R”, sirven para separar los tres componentes de una producción: el predecesor, la
condición y el sucesor.
2.8. Alcances
Como bien se sabe, el Sistema–L fue creado por el biólogo y botánico teórico húngaro
Aristid Lindenmayer, por lo cuál este sistema en sus inicios fue usado principalmente
para moldear procesos de crecimiento de las plantas y en otras variedades de orga-
nismos; pero, esta gramática formal también tiene uso en la generación de fractales
auto–similares como los sistemas de función iterada. Castillo Barrera (2017)
Capı́tulo 3
EJEMPLOS
17
18 CAPÍTULO 3. EJEMPLOS
1. Etapa: F + F − − F + F
IMPLEMENTACIÓN DE
SISTEMAS LINDEMAYER
4.1.1. Alfabeto
Axioma AB: A Reglas: (A → AB) (B → A)
4.1.2. Generación
Al igual que con las formas fractales recursivas, podemos considerar que cada apli-
cación sucesiva de las reglas del sistema L es una generación. La generación 0 es, por
definición, el axioma:
19
20 CAPÍTULO 4. IMPLEMENTACIÓN DE SISTEMAS LINDEMAYER
4.1.3. Implementación
Se comenzará usando un objeto String para almacenar el axioma.
Pantallazo
4.2.2. Organización
El siguiente ejemplo se organiza en tres clases:
Regla: una clase que almacena las cadenas del predecesor y sucesor para una regla
del sistema–L.
L–System: una clase para iterar una nueva generación de sistema L (como se
demuestra con la técnica StringBuffer ).
Tortuga: una clase para administrar la lectura de la oración del sistema L y seguir
sus instrucciones para dibujar en la pantalla.
4.2.3. Implementación
4.2.4. Pantallazo
APLICABILIDAD DE LOS
SISTEMAS LINDEMAYER
5.2. Argumento
Existen varios métodos para la generación automática de música en un lado están
los métodos aleatorios, que consisten en la obtención de una serie de notas por medios
aleatorios o al azar, también se pueden utilizar tablas de probabilidad condicionada,
tales como las cadenas de Márkov o Montecarlo; también está el método determinista,
el cual consiste en aplicar directamente un método de composición, o bien, aplicando
transformaciones a un material musical de entrada; y por otro lado están los métodos
procedentes de las matemáticas, la fı́sica y otros campos extra musicales, este método
se basa mucho en los fractales, los sistemas dinámicos no lineales y los autómatas
celulares.
[3] La generación de música basada en la técnica del fractal muestra el potencial
23
24 CAPÍTULO 5. APLICABILIDAD DE LOS SISTEMAS LINDEMAYER
Los sistemas de Lindenmayer son una herramienta muy poderosa, tienen una
gran capacidad expresiva en la simulación de procesos e interacciones.
25
26 CAPÍTULO 5. APLICABILIDAD DE LOS SISTEMAS LINDEMAYER
BIBLIOGRAFÍA
1 Aho V. Alfred, Sethi, Rabı́ y Ullman Jeffrey D., Compiladores: Principios, Técni-
cas y Herramientas,1998, (2da edición), Addison-Wesley.
2 Castro, David, Esteban. ”Teorı́a de Autómatas, Lenguajes Formales y Gramáticas”,2003–
2004, Apuntes de Clase, Universidad de Alcalá.
3 Desportes, Yvonne–Bernaud, Alain., Manual Práctico para el Reconocimiento de
los Estilos desde Bach a Ravel, Real Musical.
4 DuBois,R., .Applications of Generative String–Substitution Systems in Computer
Music”,2003,Submitted in partial fulfillment of the requirements for the degree
of Doctor of Musical Arts in the Graduate School of Arts and Sciences,Columbia
University.
5 Herrera,Enric,Teorı́a Musical y Armonı́a Moderna,Vol.I,1984,Antoni Bosch Edi-
tor,S.A.
6 Ibaibarriaga, Iigo,KURAIA,Grupo de Música Contemporánea de Bilbao, Música
y Matemáticas. De Schoenberg a Xenakis.
7 Lindenmayer, Aristid y Prusinkiewicz, Przemyslaw,”The Algorithmic Beauty of
Plants”, New York: SpringerVerlag,1990.
8 Mandelbrot,Benoit,Frame, Michael y Nial Neger, Fractal Geometry,2008.
9 Manousakis,S.,”Musical LSystems”,Tesis de Maestrı́a en Sonologı́a, The Royal
Conservatory,The Hague,Junio,2006.
10 Miyara,Federico,”La música de las esferas: de Pitágoras a Xenakis. . . y más
aca”, Apuntes para el coloquio del Departamento de Matemáticas,Facultad de
Ingenierı́a, Universidad Nacional de Rosario,Julio,2005.
11 Prusinkiewicz P. y Hammel,M., Language–Restricted Iterated Function Systems,
Koch Constructions, and L–systems,From New Directions for Fractal Modeling
in Computer Graphics,SIGGRAPH 94 Course Notes. ACM Press, 1994.
12 Prusinkiewicz P., Lindenmayer,and Hanan,”Developmental models of herbaceous
plants for computer imagery purposes”, Computer Graphics (SIGGRAPH 88
Conference Proceedings), vol. 222, no. 4,1988,pp.141–150.
13 Rodriguez,B. y Castillo,F., Üsing Algorithmic Musical Composition in Java to
Generate Musical Sequences”,Proceedings at the 9th World Multiconference on
Systemics, Cybernetics and Informatics (WMSCI 2005),July,Orlando, USA.
27