Opinión

Creatividad Computacional

Creatividad Computacional

Creatividad Computacional

La Crónica de Hoy / La Crónica de Hoy

La creatividad es tal vez la capacidad más humana, muchos consideran que sólo las personas pueden ser creativas. Hay tres tipos de creatividad: a) Exploratoria, se basa en modificar algo que ya existe, explorar diversas variaciones. b) Combinatoria, consiste en tomar dos o más conceptos y combinarlo para crear algo nuevo. c) Transformacional, es crear algo completamente nuevo.

Dados los avances actuales de la computación, en particular de la inteligencia artificial, nos preguntamos: ¿llegarán las computadoras a ser creativas? Dado que el arte es una de las actividades humanas en la cuál es más evidente la creatividad, nos enfocaremos en la creatividad computacional en el arte, en particular en la pintura.

La primera persona en plantear la posibilidad de hacer arte por computadora fue Ada Lovalace, considerada la primera programadora en la historia. Ella colaboró con Charles Babbage, un científico inglés que diseño la primera computadora a mediados del siglo XIX, la “máquina analítica”. Dicha máquina estaba pensada para poder hacer cálculos matemáticos, pero Ada planteo que también podría producir arte —componer música, literatura—. Sin embargo, escribió: “la máquina analítica no puede crear nada … sólo lo que le ordenan realizar”. Surge entonces la pregunta ¿cómo sabremos cuando las computadoras lleguen a ser creativas? Esto es cuando la computadora produzca algo verdaderamente creativo —nuevo, sorprendente, de valor— y que no pueda explicarlo el programador. Marcus Du Santoy [“The Creativity Code”, Harvard Univ. Press, 2019] le llama “Prueba de Lovelace”.

Para programar una computadora para hacer algo, por ejemplo, arte, existen básicamente dos estrategias. Una es la de arriba hacia abajo, donde una persona le dice a la computadora todos los pasos en forma explícita; esto es análogo a una receta de cocina. La otra estrategia es la de abajo hacia arriba, en la cual la computadora “aprende” a realizar la tarea. Por ejemplo, puede aprender a reconocer rostros en una imagen si le damos muchos ejemplos de imágenes que sean rostros y muchas que no lo sean. La computadora aprende, por ejemplo, una red neuronal (es una función con ciertos pesos que se ajustan), para reconocer rostros. Otro tipo de aprendizaje es el llamado “aprendizaje por refuerzo”, en donde la computadora aprende a través de prueba y error; por ejemplo, para aprender a jugar “gato”, la computadora juega muchas veces con personas (u otras computadoras), y al final sabe cuál es el mejor movimiento de acuerdo a la posición en el tablero.

Uno de los primeros intentos de generar arte por computadora fue el de Georg Ness, quien desarrolló en 1965 un programa que dibuja líneas introduciendo un factor aleatorio para la dirección de las líneas; de esta forma genera diversas figuras que pueden dar la impresión de arte. Otro de los trabajos pioneros (1973) es el de Harold Cohen, quien construyó un robot pintor al que nombró “Aaron”. Aaron crea obras pictóricas irrepetibles mediante un programa de computadora que tiene en su “corazón” un generador de números aleatorios y conocimiento sobre construcción, figuras humanas, etc. Aaron sigue pintando aún después de que Harold ya no está con nosotros.

Un desarrollo más reciente (2001) es “The Painting Fool”, realizado por Simon Colton. Este sistema simula el proceso físico de pintar. Su aspecto más novedoso es que puede detectar las emociones de personas mediante cámaras o a partir de noticias de periódicos y de acuerdo a esto seleccionar varios estilos. Sus obras han sido exhibidas en galerías. Este desarrollo nos hace ver que una computadora al interactuar con el ambiente ya no está limitada a lo que definió su programador y puede ser más “creativa”.

Los desarrollos anteriores están basados en el paradigma de “arriba hacia abajo”, donde el programador define lo que hace el sistema, aunque con elementos para generar cierta novedad, como la aleatoriedad o interactuar con el ambiente.

Recientemente ha habido un mayor énfasis en sistemas que aprenden, en particular mediante el uso de “aprendizaje profundo”. Estos modelos consisten de muchas etapas de procesamiento y pueden aprender funciones más complejas. Un desarrollo que genera imágenes muy diferentes es “Deep Dream”, creado por Google. Utiliza redes neuronales profundas que se entrenan para reconocer cierta clase de objetos, cómo perros; y luego se ejecutan a la “inversa”, con una imagen diferente de entrada, por ejemplo, medusas. Entonces el sistema produce una imagen que es una combinación de medusas y perros, ¡parece algo que vemos en los sueños!

Un desarrollo reciente que es una extensión de las redes neuronales profundas son las redes generativas adversarias, en que hay dos funciones que se aprenden en forma competitiva: una genera imágenes (como se fuera el artista) y otras las evalúa (como si fuera un crítico de arte). Este tipo de técnicas se utilizaron para crear una pintura en el estilo de Rembrandt; aprendió su estilo al ser entrenado con muchas pinturas del artista. Otro ejemplo es el de “La Familia de Belamy”, un retrato de un personaje imaginario generado con un sistema que fue entrenado con 15,000 retratos de diferentes periodos. ¡Esta pintura fue vendida por Christie’s en $432,500 USD!

La pregunta es ¿estas pinturas son creación del programador o de la máquina? Considero que la respuesta no es binaria, más bien es un continuo donde podemos pensar que las primeras obras son creación del programador, pero las últimas son una colaboración entre el programador y la computadora. ¿Llegaremos en el futuro a tener máquinas que pasen la Prueba de Lovelace? Es difícil saberlo, pero por ahora la colaboración de las máquinas y los humanos puede ser más creativa que cada uno por separado.