Gramaticas generativas - Sistemas de Lindenmayer - Kolam - City Engine - Chomsky y la jerarquia de la complejidad - Sistemas recursivos - Gift Siromoney
2. Objetivos (1/2)
• Comprender aspectos de la complejidad
• Definir complejidad gramatical
• Profundizar en modelos gramaticales de tipo
sistemas-L
– Idem en jerarquía de la complejidad y sus
autómatas
• Ejemplificar investigaciones en arquitectura,
arte, antropología y ciencias sociales que
usan formalismos semejantes
• Clarificar diferencias con modelos
rizomáticos (Deleuze & Guattari)
3. Objetivos (2/2)
– Identificar recursos bibliográficos y
examinar herramientas de modelado
– Experimentar y producir objetos
novedosos
• Fachadas, caminos, edificios, ciudades o cosas
complejas que haya en ella
• Proyectar transformaciones de objetos e
híbridos estilísticos
4. Referencias
• Carlos Reynoso. 2006. Complejidad y caos: Una
exploración antropológica. Bs. Aires, Editorial Sb
•Antropología
•Estudios culturales
•Lingüística-Semiótica
•Computación
•Inteligencia Artificial
•Modelos complejos
•Lenguajes
•Arquitectura de software
•Ciencias cognitivas
•Musicología
•http://carlosreynoso.com.ar
5. Referencias
• Reynoso, Carlos.
2010. Análisis y
diseño de la ciudad
compleja.
Perspectivas desde
la antropología
urbana. Buenos
Aires, Editorial Sb
– Capítulo 4, págs.
159-207
7. Agenda
• Prehistoria – Freeman: chain coding
• Definiciones de sistema-L – Gramáticas
– Lenguajes artísticos
• Posicionamiento entre los sistemas basados en
gramáticas (o reglas de reescritura de strings, o
gramáticas basadas en formas)
• Tipos de sistema-L
• Software de modelado
• Ejemplos culturales
– Reconstrucción arqueológica, diseños, patrones de
asentamiento, simulación musical, GIS, gramáticas
culturales, diseño de edificios y plantas urbanas
• Conclusiones – Recursos – Desafíos – Trabajos
8. Prehistoria
• Chain coding (Freeman, 1961)
– Correspondencias entre cadenas de
símbolos e imágenes
– Narasinham (1970s) – Primera aplicación
• Reconocimiento de patrones en fotografía
aérea, reconocimiento de firmas, OCR
• Almacenamiento de datos gráficos y su
comparación
• Examinemos la nomenclatura
9. Ejemplo – Chain coding
• Izquierda: Brújula de referencia
• Mesh o malla regular
– Cartesiana 22020200
– Circular 221010
– De intersección 221100
11. Jerarquía de la complejidad
Chomsky
• Gramáticas regulares (Tipo 3). Pueden consistir sólo de reglas de re-escritura
de tipo Ab, o AbC. Corresponden a los lenguajes y conjuntos que pueden
ser tratados por autómatas deterministas de estado finito. Estos autómatas no
tienen memoria. Reconocen o generan lenguajes regulares.
• Gramáticas independientes de contexto (Tipo 2). Sólo tienen reglas de forma
A, y por lo tanto no tienen restricción en cuanto a la forma que pueden
tomar las reglas de producción de la derecha. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas no deterministas de almacén
o de pushdown (PDA). Estos autómatas tienen una memoria limitada y pueden,
por ejemplo, llevar a cabo una comparación. Reconocen o generan lenguajes
independientes del contexto.
• Gramáticas sensibles al contexto (Tipo 1). Pueden tener reglas de forma
A, donde no es un elemento vacío. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas ligados linealmente. Poseen
una memoria auxiliar semi-infinita, proporcional a la cantidad de elementos que
deben tratar. Reconocen o generan lenguajes sensibles al contexto.
• Gramáticas irrestrictas (Tipo 0). Son idénticas a las anteriores, excepto por el
hecho que puede ser nulo. Corresponden a los lenguajes y conjuntos
susceptibles de ser tratados por máquinas de Turing. Poseen memoria
irrestricta y pueden efectuar cualquier computación. Reconocen o generan
lenguajes recursivamente enumerables.
13. Jerarquía de la complejidad
Chomsky
• Gramáticas regulares (Tipo 3). Pueden consistir sólo de reglas de re-escritura
de tipo Ab, o AbC. Corresponden a los lenguajes y conjuntos que pueden
ser tratados por autómatas deterministas de estado finito. Estos autómatas no
tienen memoria. Reconocen o generan lenguajes regulares.
• Gramáticas independientes de contexto (Tipo 2). Sólo tienen reglas de forma
A, y por lo tanto no tienen restricción en cuanto a la forma que pueden
tomar las reglas de producción de la derecha. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas no deterministas de almacén
o de pushdown (PDA). Estos autómatas tienen una memoria limitada y pueden,
por ejemplo, llevar a cabo una comparación. Reconocen o generan lenguajes
independientes del contexto.
• Gramáticas sensibles al contexto (Tipo 1). Pueden tener reglas de forma
A, donde no es un elemento vacío. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas ligados linealmente. Poseen
una memoria auxiliar semi-infinita, proporcional a la cantidad de elementos que
deben tratar. Reconocen o generan lenguajes sensibles al contexto.
• Gramáticas irrestrictas (Tipo 0). Son idénticas a las anteriores, excepto por el
hecho que puede ser nulo. Corresponden a los lenguajes y conjuntos
susceptibles de ser tratados por máquinas de Turing. Poseen memoria
irrestricta y pueden efectuar cualquier computación. Reconocen o generan
lenguajes recursivamente enumerables.
15. Jerarquía de la complejidad
Chomsky
• Gramáticas regulares (Tipo 3). Pueden consistir sólo de reglas de re-escritura
de tipo Ab, o AbC. Corresponden a los lenguajes y conjuntos que pueden
ser tratados por autómatas deterministas de estado finito. Estos autómatas no
tienen memoria. Reconocen o generan lenguajes regulares.
• Gramáticas independientes de contexto (Tipo 2). Sólo tienen reglas de forma
A, y por lo tanto no tienen restricción en cuanto a la forma que pueden
tomar las reglas de producción de la derecha. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas no deterministas de almacén
o de pushdown (PDA). Estos autómatas tienen una memoria limitada y pueden,
por ejemplo, llevar a cabo una comparación. Reconocen o generan lenguajes
independientes del contexto.
• Gramáticas sensibles al contexto (Tipo 1). Pueden tener reglas de forma
A, donde no es un elemento vacío. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas ligados linealmente. Poseen
una memoria auxiliar semi-infinita, proporcional a la cantidad de elementos que
deben tratar. Reconocen o generan lenguajes sensibles al contexto.
• Gramáticas irrestrictas (Tipo 0). Son idénticas a las anteriores, excepto por el
hecho que puede ser nulo. Corresponden a los lenguajes y conjuntos
susceptibles de ser tratados por máquinas de Turing. Poseen memoria
irrestricta y pueden efectuar cualquier computación. Reconocen o generan
lenguajes recursivamente enumerables.
16. Jerarquía de la complejidad
Chomsky
• Gramáticas regulares (Tipo 3). Pueden consistir sólo de reglas de re-escritura
de tipo Ab, o AbC. Corresponden a los lenguajes y conjuntos que pueden
ser tratados por autómatas deterministas de estado finito. Estos autómatas no
tienen memoria. Reconocen o generan lenguajes regulares.
• Gramáticas independientes de contexto (Tipo 2). Sólo tienen reglas de forma
A, y por lo tanto no tienen restricción en cuanto a la forma que pueden
tomar las reglas de producción de la derecha. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas no deterministas de almacén
o de pushdown (PDA). Estos autómatas tienen una memoria limitada y pueden,
por ejemplo, llevar a cabo una comparación. Reconocen o generan lenguajes
independientes del contexto.
• Gramáticas sensibles al contexto (Tipo 1). Pueden tener reglas de forma
A, donde no es un elemento vacío. Corresponden a los lenguajes y
conjuntos que pueden ser tratados por autómatas ligados linealmente. Poseen
una memoria auxiliar semi-infinita, proporcional a la cantidad de elementos que
deben tratar. Reconocen o generan lenguajes sensibles al contexto.
• Gramáticas irrestrictas (Tipo 0). Son idénticas a las anteriores, excepto por el
hecho que puede ser nulo. Corresponden a los lenguajes y conjuntos
susceptibles de ser tratados por máquinas de Turing. Poseen memoria
irrestricta y pueden efectuar cualquier computación. Reconocen o generan
lenguajes recursivamente enumerables.
21. Sistemas-L
• Gramáticas recursivas de crecimiento
• Smith, Prusinkiewicz: gráficos de
tortuga
Profundidad Cadena resultante
0 B
1 F[-B]+B
2 FF[-F[-B]+B]+F[-B]+B
3 FFFF[-FF[-F[-B]+B]+F[-B]+B]+FF[-F[-B]+B]+F[-B]+B
Axioma: B
Reglas: B F-[B]+B
F FF
22. Comando Acción
F Dibujar hacia adelante un número determinado de
posiciones
G Mover la tortuga hacia atrás un número de posicio-
nes, sin dibujar
+ Girar la tortuga hacia la derecha un ángulo determi-
nado. Si se especifica un número entero antes del
signo, la tortuga realiza el giro esa cantidad de ve-
ces.
- Idem, hacia la izquierda
[ Guardar la posición y ángulo actual para uso ulte-
rior en una pila de estados guardados
] Eliminar el último estado guardado en la pila y res-
taurar la última posición y ángulo guardados
| Mover la tortuga hacia adelante una longitud com-
putada, dibujando una línea desde la posición ante-
rior hasta la nueva – En algunas aplicaciones, girar
90° o 180°
23. Sistemas-L
• En principio fue un modelo topológico
– No había monitores gráficos en 1968
• Es posible aplicar una interpretación geométrica (p.
ej. gráfico de tortuga*)
– *Inventado por Seymour Papert para Logo (1967) – Versión
simplificada de LISP – Antecesor de StarLogo
• También interpretación sonora (música karnática en
base a modelos D0L)
• Es un sistema de re-escritura, igual que una
gramática chomskyana context-free
• Szilard y Quinton (1979): Teorema – Los sistemas
D0L pueden generar fractales
26. Gramáticas - ¿No van más?
• Demostración de Stanley Peters y
Robert Ritchie (1969)
– Aún los autómatas más simples son
demasiado poderosos
• Chomsky abandonó las gramáticas
ulteriormente
• Ahora se definen más bien
constreñimientos (constraints)
27. Gramáticas vs Rizomas
• Deleuze & Guattari – Mil mesetas
– Rizomas análogos a colecciones de autómatas finitos
igualitarios
– Gramáticas análogas a jerarquías
• Solamente representación ocasional en lenguajes
independientes de contexto
• Los árboles nunca han sido aplicados (ni son aplicables) a
lenguajes naturales
• Culturas “rizomáticas”
– China – Yingzao Fashi, esclavos del Zenj
– India – Pāṇini, código de leyes de Manu
• Eventuales usos de la metáfora en la teoría urbana
posmoderna
• Conclusión obligada:
– Los autores no demuestran tener una imagen sólida de la
lingüística chomskyana
– Idem en lo que respecta a los modelos de auto-correlación
espacial
– La ejemplificación es antropológicamente ofensiva
28. Algunos tecnicismos
• Cuando se reescribe F o algunos de
sus equivalentes, el sistema es “edge
rewriting”
• Cuando se reescribe X, se habla de
“node rewriting”
• Este último se utiliza generalmente para
estructuras ramificadas.
– Analogía con percolación de vínculo [bond]
y de sitio respectivamente
• Recursividad...
30. Ejemplares teóricos
• Benjamin Colby – El Contador de los Días.
• Robert Randall – Modelo de toma de
decisiones (pesca Samal).
• Young, 1980 – Modelo de decisiones de
diagnóstico de enfermedad entre los Tarasco.
• Schoepfle, Burton & Morgan 1984 – Los
Navajo y el desarrollo energético – Decisión
económica bajo incertidumbre política.
31. Colby – Gramáticas culturales
• El contador de los
días (1981)
• Los cuentos Ixil están
regidos por una
gramática.
• Idones o unidades
narrativas.
• Cartas eidocrónicas
• Reynoso: Esta
gramática no tiene
valor predictivo.
33. Crítica de la GC de Colby
• Una gramática IC consiste (básicamente)
en un conjunto de reglas de reescritura:
• O SN+SV
• SN A + N
• SV V + SN
O
SN SV
A N V SN
A N
Los fenomenólogos distorsionan la antropología
34. Crítica (Continuación)
• Un template de posiciones posibles no es una
gramática.
• Una gramática independiente de contexto no puede
generar un texto.
• Sólo puede generar frases. Un texto no se reduce a
un conjunto de frases.
• Al no especificarse constraints complejos y
conocimiento enciclopédico, el relato de una
gramática simple no tiene coherencia.
• En el caso de la GC de Colby, el protagonista se
puede morir primero y casarse después, escaparse
sin haber sido atrapado, resucitar sin haber muerto.
35. Alan Turing
[1912-1954]
• Problemas computables
• Máquinas de Turing – Modelos
ideales
– Dispositivo de manipulación de símbolos
que puede simular la lógica de cualquier computadora
– Proporciona una definición precisa de un algoritmo o
procedimiento mecánico
• Sistemas-L – Modelo de autómata mucho más
simple que las máquinas de Turing (aunque
extensible)
• Ejemplo: Visual Turing – Prueba: multiplicar 2x2
36. Problemas formales
• Prueba de [Kurt] Gödel (1931)
– Escasa consecuencia práctica
• Problema de la detención (o decisión)
(Entscheidungsproblem)
– Planteado por David Hilbert, 1928
– 1936: Alonzo Church, Alan Turing
– Es imposible decidirlo a priori, algorítmica y
generalmente
– Inmensas consecuencias prácticas
• Problemas NP-completos, NP-duros, etc
– Elaboración de métodos inspirados en evolución y
biología
37. Definición de problema (Hopcroft)
• Determinar si una expresión pertenece a un
lenguaje (o si un elemento a un conjunto)
– Gramática narrativa ixil de Benjamin Colby
• No se puede generar un texto con gramáticas independientes
de contexto.
– Epistemología de la complejidad de Morin
• No define problemas ni objetivos – El “método” no establece
procedimientos de resolución. No existen criterios de
validación, ni implementaciones de referencia.
– Análisis estructural del mito (Lévi-Strauss)
• La determinación de pertenencia de elementos a clases incluye
elecciones indecidibles, que tampoco pueden resolverse al
azar.
– Modelo axiomático de matrimonio Kariera de Kemeny, Snell
& Thompson
• Sistema axiomático mal construido.
38. Tipos de Sistemas-L
• Deterministas (D0L)
– Formas más simples, trayectorias
• Sensible al contexto (IL)
• L-Systems con corchetes [bracketed]
– Permiten modelar ramificación
• Estocásticos
• Paramétricos
• Tabulados
• Temporales, Propagativos, Ambientalmente
sensitivos, etc*
* Stelios Manousakis, tesis
40. Programas de Sistemas-L
• **Fractal Grower
• **Treebag
• *Fractree
• *Fractal Play (Fractal Games)
• *Lyndyhop
• Lsystems 4
• LinSys 3D
• LStudio (Prusinkiewicz)
• *LS Sketch Book
• *L-Systems Application applet
• JFLAP – Programa de teoría de autómatas
• A Musical Generator
• *Visions of Chaos
43. *Fractree
• Antiguo y discontinuado (1993), pero decente
• Permite probar iteraciones con teclado, lo cual es
práctico
• No posee prestaciones demasiado elaboradas (p. ej.
3D) pero se puede avanzar sin escribir
• Admite una sola sustitución
• No se puede saber cuál es la secuencia de
comandos de una iteración
• A los archivos básicos agregué algunos que
comienzan con BR que son modelos culturales
– Polvo y Alfombra de Cantor, kōlaṁ s, Espirales
44. *Fractal Play (Fractal Games)
• Requiere JRE – No hay datos de autoría
• Buen programa simple en 2D
• Interface un poco incómoda, pero con
información sobre el estado del string
– Útil para comprender la complejidad recursiva
• Formato de archivo y comando no
documentado
• A los archivos originales, agregué modelos
de kōlaṁ (Krishna y Serpiente) y espirales
complejas
45.
46. *Lyndyhop
• Requiere JRE
• Muy simple pero práctico para aprender
• Tiene visualización de evolución, mejor que
la de Fractal Play
• También se visualiza el sistema a medida
que se lo compone con botones (único)
• No tiene movimiento sin escritura (f) – No
puede modificarse el tamaño del paso
• Ejercicio: Curva de Koch (F+F—F+F, 60°)
Go...
47.
48. LSystems 4
• Capacidad tridimensional
• Propósito general
• Sintaxis incompatible
• Formato de archivo imposible de migrar
• Texturas, pero no ray tracing (POV)
Go...
49. LinSys 3D
• Programado en 2001 y discontinuado
ahora
• Sistema bracketed, sensible al
contexto, estocástico y paramétrico
• Permite examinar evolución del sistema
• Lenguaje de comandos complejo, con
alfabeto y reglas de producción
• Cargar Spiral.lsys y examinar Go...
50. Fractal Studio
• El más elaborado y poderoso, tal vez
demasiado
• Evaluación expirada – Usar con fecha
anterior a 2005
• Utiliza lenguaje L+C, que combina
constructos de L-System (módulos y
producciones) con C++
• Cargar objeto de directorio interno y
probar
53. LS SketchBook
• Poderoso, profesional y bien documentado,
pero un poco peculiar
• Discontinuado hace años, pero técnicamente
vigente
• Sintaxis y formato de archivos incompatibles
• Buena documentación geométrica y evolutiva
• *Ejecutar secuencia de desarrollo una vez
visualizado (de buen efecto con espirales o
con sympodial pruning)
Go...
54.
55. LSystems Application Applet
• Interesante, con ejemplos raros
• Puede procesar rectas o curvas
– Hermitte, Bspline
• 38 muestras excelentes, incluidos
kōlaṁ s con curvas
• No puede procesar muchas iteraciones
56.
57. JFLAP
• Modelado de autómatas
• No es particularmente apto ni bien
documentado, pero permite alinear
gramáticas y autómatas dentro de un
mismo concepto
• L-Systems: Ejemplos de capítulo 10
58. *Visions of Chaos
• Programa de fractales de propósito
general
• El módulo de L-Systems es excelente
• Posee la mayor colección de ejemplos
de la industria
• Único que puede generar música y
figuras simultáneamente
Go...
61. Gift Siromoney
[1932-1988]
• Matemático, teórico de la información, arqueólogo y
etnógrafo
• Picture languages, 1972 – Array languages, 1974
• Los L-Systems no tenían entonces implementación
gráfica
• Identificó procedimientos regulares para el diseño de
kōlaṁ s:
– kōlaṁ de matriz finita, kōlaṁ de matriz regular, kōlaṁ
regular independiente de contexto
• Los sistemas-L son más simples, pero las ideas de
Siromoney fueron avanzadas para su época
75. Nomenclatura
• La matriz del kōlaṁ se considera como una serie de
rombos de 5 pulli, con 1 punto en cada extremo de la
cruz y un punto en el medio.
• En figuras 1-5-1 hay 9 rombos
• Se empieza de arriba y de la izquierda
• Se examina si existen cruzamientos de líneas en
torno al rombo central
• Cada cruzamiento vale 1, si no es 0.
• El 1er rombo es 1010 – Eso es 10 decimal, A
hexadecimal
• La cantidad de variantes para rombos 1-5-1 es
FFFFFFFFF=68.719.476.735dec + 1
76. Cómo se hace un kambi
kōlaṁ
• Primero se construye la
grilla
• Luego se trazan líneas
en un disño simétrico,
dejando claros
• Después se añaden
líneas diagonales
• Desde cualquier punto
se traza una línea sobre
la grilla
• Se dobla cuando
termina o cuando sólo
hay dos líneas que se
cruzan
• Cuando todos los
puntos se cierran, la
línea se encuentra
consigo misma.
77. Ejercicios posibles
• Establecer nomenclatura hexadecimal
para dos kambi kōlaṁ definidos.
• Trazar dos figuras de kōlaṁ simétricos
diferentes a los de los ejemplos.
80. Metáforas arquitectónicas
• Christopher Alexander
– 1977. A Pattern Language: Towns, Buildings,
Construction. Oxford, Oxford University Press.
– 1979. The Timeless Way of Building. Oxford,
Oxford University Press.
• Patterns arquitectónicos
• Revolución en técnicas de programación
• Revolución en ingeniería y arquitectura de
software
• AS – Promovido en CMU – SEI (Instituto de
ingeniería de sistemas de Carnegie Mellon)
83. Arquitectura algorítmica
(cont.)
• Simulación
– Simulación algorítmica de flujos para
evaluar funcionalidad de diseño
• Optimización
– Uso de algoritmo genético para optimizar
configuración y diseño de edificio/zona
• Permutación
– Proceso de diseño paramétrico
• Generación
– Desarrollo de lenguaje de diseño
algorítmico generativo basado en
sistemas-L
• Transformación
– Diseño mediante traslación y visualización
de sitio
121. Requisitos
• Instalar City Engine en entorno Windows
– Configurar en Control Panel – Configuración internacional,
de modo que la numeración considere el punto como
separador decimal.
– CityEngine requiere hardware NVIDIA. Si no se cumple este
requisito, la representación gráfica puede ser defectuosa.
• Si no se puede instalar o ejecutar City Engine, otras
dos opciones de modelado urbano y arquitectónico
son:
– GRO Imp – El instalador se encuentra bajo el directorio de
Fractals-Lsystems. Funciona en Win32. Para otros
sistemas operativos, consultar sitio de Web.
– GML Studio – Instalar en directorio de nombre corto,
cercano a la raíz (p. ej. C:fractalGmlStudio). El instalador
se encuentra en el directorio de Software del folder Diseño
Urbano – Lo que se ejecuta es GMLStudio.Net.exe
122. Opción #1 – City Engine
• Ejercicio de creación de ciudad compleja
– Correr File/New
– Escoger opción de City Wizard
– Seguir los pasos del procedimiento, al inicio con
los valores por defecto para evitar mayores
incongruencias
– Generar otro workspace con valores distintos
– Una vez generada la ciudad, moverse por ella
mediante controles de cursor y tecla Alt
– Consultar intensivamente los archivos de ayuda
para explorar opciones de drill down
– En breve se agregarán instrucciones adicionales
123. Ejercicio con City Engine
Seminario de Complejidad
Santiago de Chile, 2013
139. Extrusión de edificios a partir de lotes
• Crear lotes en las manzanas
– Graph Create lot shapes
• Seleccionar manzana(s)
• Initial shapes Subdivide
– En elevation elegir EVEN_ANG para
generar lotes horizontales
• Seleccionar lotes
• Finish
140. Extrusión de edificios a partir de
lotes (1/2)
• Seleccionar un lote en el Scene Editor
• Asignar archivo de regla:
– Initial Shapes → Assign Rule File... and
select the rule file
rules/simpleBuildingShells_01.cga
• Ver resto de procedimiento en Map
Control Tutorial – CGA Shape
Attributes
141.
142.
143.
144. Opcion #3 – City Engine
• Creación y transformación de edificios
– Véase la documentación en los DVDs
distribuidos y en el sitio de CityEngine
– Más información en las próximas horas...
145.
146. Opción #4 - GroImp
• Elaboración de conjunto de edificios
– Ver requisitos de instalación en este slide
– Entorno Java 2 JRE, 1.4 o posterior
– Requisito adicional: programación en Java
– Hay documentación sobre el producto y sus modelos en el
directorio del software Fractals-LSystemsGroImp
– Instalar modelos de prueba zipeados
• G1 – G2 – G3 - Structure9 – Skycraper – Treppe – Wandwohnblock
• Crear un archivo de ejemplos y armar otros archivos donde
desempaquetar los ejemplos
– Para abrir proyectos, seleccionar archivo de proyecto con
extensión project.gs
– Leer cuidadosamente la documentación
– Hay ejemplos y galerías en:
– http://www-gs.informatik.tu-cottbus.de/grogra.de/software/groimp/
149. Opción #5 – GML Studio
• Transformación de edificio complejo
– Ver requisitos de instalación en este slide
– Requiere experiencia previa en modelado en tres
dimensiones y comprensión de programación
declarativa de tipo XML
– Los archivos de prueba y los documentos que
detallan los tecnicismos se encuentran en el
directorio del disco de Diseño Urbano Software
GML Generative Modeling Language
– Leer en particular la disertación de Sven
Havemann
150. Plan B
• Si todo falla:
• Realizar ejercicio de práctica sobre
Sintaxis Espacial
– Nivel Ciudad
– Nivel Campus
– Nivel Edificio Complejo
– Ver materiales sobre Sintaxis Espacial en
página de Carlos Reynoso
152. Conclusiones
• Uno de los formalismos más poderosos en
geometría fractal y ciencias de la complejidad
• Epistemológicamente importante, aunque no
se utilice esta clase de modelos en el trabajo
empírico
• Infinidad de aplicaciones posibles
• Un poco difícil de implementar, pero no
imposible
153. Tareas a realizar
• Averiguar si existen muchos diseños culturales regidos
por “gramáticas”
– Pongal kōlaṁ , rangoli, alpana, aripoma, lusona, mandala
• Verificar analogías en los métodos constructivos a
través de las culturas
• Ejercitar definición de axiomas y reglas (no es fácil)
– Es un problema inverso
• Realizar composición musical usando sistema-L
• Investigar modelos derivados de simulación para
reconstrucción virtual de sitios, paisajes, objetos,
ciudades y patrones de asentamiento
154. Recursos
• Przemyslaw Prusinkiewicz, Aristid Lindenmayer. The
algorithmic beauty of the plants. Springer, 2004
• Przemyslaw Prusinkiewicz. L-Systems and beyond.
2003.
• Prusinkiewicz, P., K. Krithivasan and M. G.
Vijayanarayana. Application of L-systems to
algorithmic generation of South India folk art patterns
and Karnatic music, 1989
• Stelios Manousakis. Musical L-Systems, 2006