CRÍTICA
Tachas 563 • Arte generativo: exploración creativa de la geometria fractal • Rafael Miranda Molina
Rafael Miranda Molina

El término “arte generativo” se utilizó por varias décadas para referirse a cierto arte generado por computadoras. La que suele describirse como la primera exhibición de este tipo se llamó "Generative Computergraphik" y se realizó en Stuttgart en Febrero de 1965 (Boden, 2009), con el trabajo de Georg Nees que era generado por un programa computacional. En años sucesivos, otros artistas adoptan el término para describir dibujos o incluso sonidos generados a través de la programación de computadores, aunque algunos también utilizaran el término “process art”.
No todo arte generativo es necesariamente computacional. Boden & Edmons (2009) mencionan el caso de Kenneth Martin quien en 1949 realiza pinturas con figuras geométricas que involucraban cierta aleatoriedad, eligiendo un número al azar para definir determinadas combinaciones. Actualmente por “generativo” también se suele describir este sentido de aleatoriedad de un determinado proceso, como un adjetivo que da cuenta de lo impredecible que el resultado puede ser para el artista / programador.
En el área de la Geometría Fractal, Benoit Mandelbrot solía hacer una descripción de sus hallazgos que es consistente con el sentido de descubrimiento del arte generativo: “Para mí el primer paso para resolver problemas difíciles de matemáticas, era programarlo y observar cómo se veía.” (Stewart, 2010). También Mandelbrot hacía frecuentemente referencia a la relación entre lo simple y lo complejo, cuya conexión es el concepto de recursividad: "de las leyes más simples nacen infinitas maravillas que se repiten indefinidamente" (Mandelbrot, 2010), descripción que hiciera para referirse lo fractal de las formas de la naturaleza. En esencia el ejercicio que describe Mandelbrot es de arte generativo, dado que parte de una definición de una regla (z → z2 + c) para descubrir su representación gráfica a partir de un programa computacional.
En las últimas décadas, los avances en las capacidades de procesamiento de los computadores personales, especialmente la capacidad de procesamiento gráfico, como también la aparición de entornos de desarrollo integrado con orientación gráfica, como Processing (Reas, 2005), han generado la creación de comunidades crecientes de usuarios que comparten conocimiento en torno al arte digital.
Un conjunto de programas, con sus correspondientes comunidades de aprendizaje online, orientados particularmente al arte generativo, surgen hace 6 años, haciendo uso de gramáticas formales, como los Sistemas L descritos inicialmente por el Biólogo Húngaro Aristid Lindenmayer (Christensen, 2009). El primer software que destaca, es Context Free, creado por Chris Coyne para construir imágenes fractales a partir de formas primitivas como cuadrados y círculos, con el uso de gramáticas libres de contexto. Más adelante, en la 12ª Conferencia Internacional de Arte Generativo (2009), celebrada en la Universidad Politécnica de Milano, Mikael Christensen presenta una extensión de Context Free en un entorno 3D que denomina Structure Synth (sintetizador de estructuras). Ambos programas son actualmente los principales exponentes del arte generativo, dado que permiten implementar los conceptos de recursividad y aleatoriedad con códigos particularmente eficientes como se mostrará más adelante.
Arte generativo: Del algoritmo a la imagen
El presente trabajo se desarrolla en el contexto del Programa PENTA UC, un programa de enriquecimiento extracurricular orientado a Niños y Jóvenes con Talento Académico, de la Universidad Católica de Chile. En su oferta académica, el curso “Arte Generativo: Del algoritmo a la imagen” se ha desarrollado en cuatro ocasiones desde el año 2010, con jóvenes de 2º medio.
Este curso se propone como una instancia de exploración de la complejidad gráfica propia de la geometría fractal, con el uso de Context Free y Structure Synth, en una secuencia en la que progresivamente se implementan experimentos relativos a la recursividad y aleatoriedad en el plano y el espacio. A continuación se describen los 12 niveles en los que se estructura tal secuencia didáctica en su forma actual, ilustrando los resultados gráficos y códigos que permiten generarlos.
Context Free
Context Free es un software libre, bajo Licencia Pública General de GNU, que se distribuye a través de su sitio web: http://contextfreeart.org. Para generar imágenes en Context Free, es necesario escribir códigos que hacen referencia a figura primitivas, como círculos, cuadrados o triángulos, y a transformaciones geométricas como traslaciones, rotaciones y escalamientos. Tómese el siguiente ejemplo en el que se describe una regla llamada “prueba” que consiste en un cuadrado que se gira en 33º (r 33) y escala al 95% de su tamaño original (s .95) 10 veces. Además, los cuadrados se trasladan un 100% de su tamaño horizontalmente (x 1) y verticalmente (y 1) (Coyne, 2013).
![]() |
startshape prueba rule prueba { 10* {r 33 s .95 x 1 y 1} SQUARE{} } |
Nivel 1: Iteraciones
Se define una transformación que se itera una cantidad determinada de veces, en este caso, 7 veces. La transformación está formada, en este ejemplo, por un giro en 45º, escalamiento al 70,7%, traslación de media unidad a la izquierda y una hacia arriba.
![]() |
startshape espiral rule espiral { 7* {r 45 s .707 x -.5 y 1} SQUARE{} } |
Nivel 2: Recursividad
Se introduce la definición recursiva de reglas, lo que genera una cantidad significativamente mayor de figuras en escena. Las reglas definidas se van iterando hasta que las figuras son más pequeñas que un pixel, de manera que es necesario utilizar escalamientos con valores entre 0 y 1.
![]() |
startshape nube rule nube { SQUARE{} nube{s .75 r 45 x 1.03 y .5} nube{s .7 r 340 x -.67 y -.97} } |
Nivel 3: Transformaciones de colores
La superposición de figura de un mismo color genera la dificultad de que hay detalles que se tienden a perder. Para ello el controlar el color de las figuras permite develar detalles de los fractales, lo que se logra modificando los tres atributos esenciales del color: brillo (b), tinte (h) y saturación (sat).
![]() |
startshape fractal rule fractal { fractal {r -21 s .8 x 1 y 1} fractal {r -33 s .6 x -.6 y 1 h 12 b .1} SQUARE{ } } |
|
En este nivel es interesante observar cómo un determinado fractal va variando a partir de la modificación sucesiva de un parámetro, por ejemplo, de un ángulo, como en este caso que se obtiene al modificar el ángulo de -21º (r -21) a 250º (r 250). |
Imagen 5 |
|
Nivel 4: Ramificaciones
Un caso particular de imagen que se puede construir en el nivel anterior, corresponde a árboles o plantas:
![]() |
startshape arbol rule arbol { SQUARE{h 30 b .3 sat 1} arbol{y .94 s .95 r 1 h 2} arbol{y 1 x -.5 r 35 s .25} arbol{y 1 x .5 r -35 s .25} } |
Es interesante también el modificar los parámetros de la construcción anterior para obtener distintas variedades de árboles o plantas, como por ejemplo, pinos o helechos.
Nivel 5: Aleatoriedad
La aleatoriedad en Context Free se introduce al definir una misma regla de dos o más formas, de manera que en cada iteración se elegirá aleatoriamente una u otra definición.
![]() |
startshape tallo rule tallo { CIRCLE{sat 1 b .2 h 30} tallo {y .4 r 10 s .95} tallo {r 10 s .5 b .1 h 5} } rule tallo { CIRCLE{ sat 1 b .2 h 30} tallo {y .4 r -12 s .98} tallo {r 10 s .2 b .1 h 8} } |
Un alcance de la aleatoriedad en este entorno, es que cada vez que se ejecute un mismo código se obtiene un resultado en apariencia diferente, de manera que un mismo código representa una familia de imágenes con una misma estructura. Hasta este nivel sólo se ha trabajado con transformaciones en el plano, y los resultados esperados apuntan a generar gran variedad de imágenes de gran nivel de complejidad, aunque aquellas asociadas a plantas y árboles tienden a ser las más frecuentes.
3.2 Structure Synth
La segunda mitad del curso se aborda con el uso de Structure Synth, software gratuito, que se distribuye desde su sitio oficial: http://structuresynth.sourceforge.net.
La sintaxis básica de Structure Synth es levemente diferente, haciendo uso de las mismas ideas geométricas que Context Free, aunque añadiendo transformaciones en el espacio, es decir, un tipo más de traslación (por el eje Z) y dos tipos más de rotaciones.
Nivel 6: Del plano al espacio
Si se traduce un código de Context Free a Structure Synth, lo que se obtiene es una estructura que se involucra traslaciones paralelas al plano XY y giros en torno al eje Z. En este nivel se realiza tal traducción, reemplazando cuadrados por cubos y círculos por esferas.
![]() |
r1 rule r1 { {} box {x -0.34 y 1.09 rz 30 s 0.87} r1 {x 0.59 y 0.84 rz -60 s 0.5} r1 } |
Nivel 7: Añadir volumen
Al nivel anterior se le puede añadir mayor sensación de volumen incluyendo las nuevas transformaciones geométricas, como es la traslación según el eje Z (z), y las rotaciones respecto a los ejes x (rx) e y (ry).
![]() |
r1 rule r1 { {} box {rx 15 x -0.34 y 1.09 rz 45 s 0.87 } r1 {rx 15 x 0.59 y 0.84 rz -45 s 0.5} r1} |
Nivel 8: Aleatoriedad
Análogamente al caso de Context Free, al definir de más de una forma una regla, el resultado es también aleatorio.
![]() |
rule r1 { {} box {rx 15 x -0.34 y 1.09 rz 45 s 0.87 } r1 {rx 15 x 0.59 y 0.84 rz -45 s 0.5} r1 } rule r1 { {} box {rx -15 x -0.34 y 1.09 rz 45 s 0.87 } r1 {rx 45 x 0.59 y 0.84 rz -45 s 0.5} r1} |
Nivel 9: Automatización de animaciones
Destaca en Structure Synth, la posibilidad de automatizar la creación de animaciones de estructuras fractales, a medida que un parámetro cambia (Christensen, M. H. 2013c), por ejemplo, el explorar el cambio de una estructura en la que un ángulo cambia sucesivamente como se ilustra en las siguientes imágenes (Miranda, 2012).
![]() |
![]() |
![]() |
Conclusiones
La secuencia antes descrita se puede tomar como una progresiva revisión de recursos que involucran ideas matemáticas, pero que son principalmente orientadas a la creación artística. En este sentido, todos los desafíos del curso se orientan a la creación de diseños originales y que son validados por cada estudiante según su propio juicio estético. Eso deja en evidencia cómo se ha buscado poner la matemática al servicio de la creación artística.
Asimismo surgen distintos conceptos a partir de las exploraciones geométricas, que no habían sido previstos y que se van convirtiendo en contenidos de las versiones posteriores del curso, a saber:
- Manejar el color para develar detalles geométricos de los fractales.
- Modificar distancias y escalas para minimizar el solapamiento de figuras.
- Diseñar objetos con apariencias orgánicas.
Finalmente es importante destacar que el curso está en permanente evolución, dados los frecuentes hallazgos técnicos y estéticos que los estudiantes van desarrollando, de manera que esta secuencia didáctica es una representación de un proceso de aprendizaje colectivo, del cual el autor es un gestor y guía.
4. Bibliografía y referencias
- Arancibia, V. (2008). “Programa Educacional para Niños y jóvenes con Talentos Académicos”.
- Boden, M. A., & Edmonds, E. A. (2009). What is generative art?. Digital Creativity, 20(1-2), 21-46.
- Christensen, M. H. (2009). Structural Synthesis using a Context Free Design Grammar Approach. In Generative Art Conf. Milan.
- Christensen, M. H. (2009). Structural Synthesis using a Context Free Design Grammar Approach. In Generative Art Conf. Milan.
- Christensen, M. H. (2013c, Noviembre 19): Scripting in Structure Synth. http://blog.hvidtfeldts.net/index.php/2010/11/scripting-in-structure-synth/
- Christensen, M. H. (2013a, Noviembre 19): Creating a Raytracer for Structure Synth. http://blog.hvidtfeldts.net/index.php/2010/09/creating-a-raytracer-for-structure-synth/
- Christensen, M. H. (2013b, Noviembre 19): Structure Synth Reference. http://structuresynth.sourceforge.net/reference.php
- Coyne, C. (2013, Noviembre 19): Context Free Art. http://www.contextfreeart.org/
- De Smedt, T., Lechat, L., & Daelemans, W. (2011). Generative art inspired by nature, using NodeBox. In Applications of Evolutionary Computation (pp. 264-272). Springer Berlin Heidelberg.
- Galanter, P. (2003). What is Generative Art? Complexity theory as a context for art theory. En GA2003–6th Generative Art Conference.
- Lesmoir-Gordon, N. (2004). The Colours of Infinity: The Beauty, The Power and the Sense of Fractals. ISBN 1-904555-05-5.
- Mandelbrot, B. 2010. Fractals and the art of roughness. TED2010: What the world needs now, 13 Febrero, Long Beach. [Online]. Disponible: http://www.ted.com/talks/benoit_mandelbrot_fractals_the_art_of_roughness.html
- Miranda, Rafael (2012). Explorando la recursividad en el espacio. Geometría dinámica. http://www.geometriadinamica.cl/2012/09/explorando-la-recursividad-enel-espacio/
- Reas, C., & Fry, B. (2005, July). Processing.org: a networked context for learning computer programming. In ACM SIGGRAPH 2005 Web program (p. 14). ACM.
- Stewart, I. (2010). The Colours of Infinity: The Beauty and Power of Fractals. N. Lesmoir-Gordon (Ed.). Springer.
***
Rafael Miranda Molina. Profesor de matemática e informática educativa, magíster en educación matemática y estudios de diplomado sobre Educación en Derechos Humanos y Métodos Cualitativos para la Investigación Social. A nivel docente se ha desempeñado en carreras de pregrado, programas de perfeccionamiento docente y de enriquecimiento extracurricular, con foco en la educación matemática y el desarrollo del pensamiento computacional. Actualmente es docente de la carrera de Pedagogía en Matemática de la Universidad Alberto Hurtado y gestor del sitio GeometriaDinamica.cl, plataforma desde la que promueve el aprendizaje de la geometría con tecnología.
En los últimos nueve años se ha desempeñado en roles de coordinación en cuatro universidades, participando de la formulación, ejecución y evaluación de proyectos asociados a políticas de equidad en la Educación Superior, como son las Becas de Nivelación Académica, Convenios de desempeño y el Programa de Acompañamiento y Acceso Efectivo a la Educación Superior (PACE).