Libro de notas

Edición LdN
Computacion creativa y otros sueños por Francisco Serradilla

Francisco Serradilla es poeta y doctor en Informática. Su línea principal de investigación se refiere al desarrollo de Softbots (Robots Software) y Agentes Inteligentes en Internet. Ha colaborado abundamentemente con Almacén como articulista. Computación creativa y otros sueños se publicará los 25 de cada mes.

Computación evolutiva

Como ejemplo de la simbiosis hombre/máquina que proponía en el artículo anterior, vamos a hablar de una rama de la Inteligencia Artificial denominada Computación Evolutiva.

En pocas palabras, lo que pretende la Computación Evolutiva es la simulación de los procesos de selección natural en un ordenador, respetando los principios básicos que rigen la evolución de las especies, a saber:

  1. Los individuos tienden a transmitir sus rasgos a sus descendientes.
  2. Los individuos más adaptados tienen más probabilidades de sobrevivir.
  3. La naturaleza introduce ocasionalmente nuevos rasgos, fruto del azar.

Para respetar estos principios básicos utilizaremos tres operadores, o tres procesos computacionales: emparejamiento (para el principio 1), selección (principio 2) y mutación (principio 3).

Con esto en mente, pensemos en un ejemplo sencillo: propongámonos construir un generador de melodías, el Electrobardo, por homenajear a Stanislaw Lem.

Una melodía es una secuencia de notas, cada una con su duración, que podemos representar como una cadena de símbolos (no quiero bajar demasiado a detalles de implementación; al informático le sobrarán, y al no informático no le dirían gran cosa). ¿Cómo podemos (más o menos burdamente) introducir aquí los tres operadores definidos?

Operador emparejamiento: 2 cadenas (melodías) se cortan en dos trozos y se pegan cruzados. De este modo, la melodía hija 1 se construye como el primer trozo de la melodía padre 1 y el segundo trozo de la melodía padre 2. La melodía hija 2 se construye de modo similar.

Operador mutación: aleatoriamente se modifica algún símbolo de la cadena (alguna nota o alguna duración) por otro.

Y aquí viene la clave de la participación humana; el criterio, el gusto musical, la sabiduría milenaria, con el…

Operador selección: el humano escucha las melodías, asignando una puntuación (o un orden de calidad) según lo buena o mala que considere a la melodía.

Ya sólo nos queda juntar las piezas. Construimos un conjunto de N melodías aleatorias, generando notas y duraciones sin ton ni son. Llamaremos a este conjunto de melodías la población inicial. Las presentamos al humano para que las valore, y con esta valoración seleccionamos (con una probabilidad proporcional al valor de cada melodía) un par de melodías. Las emparejamos, las mutamos y las guardamos como miembros de la siguiente generación. Repetimos el proceso hasta completar N nuevas melodías, que presumiblemente estarán más adaptadas (al criterio impuesto por el humano) que las anteriores.

Repetimos todo este proceso una y otra vez hasta que encontramos, si somos Bach, una cantata, si somos Satie, una gymnopedie, y si somos de la SGAE, la melodía que gana Eurovisión.

Dejo a los lectores como ejercicio plantear la construcción del verdadero Electrobardo de Stanislaw Lem, que en lugar de melodías componía poemas, a ver si alguno gana el Loewe, que este año quedó aparatosamente desierto.

Francisco Serradilla | 25 de diciembre de 2004

Comentarios

  1. Bauta
    2004-12-27 17:22 ¿que tal si buscamos en el baúl?
    http://raymondscott.com/Electron.html
  2. Bauta
    2004-12-27 18:35 y gracias a cayetano

    http://www.palaciodurazno.com/slp/
  3. Cayetano
    2004-12-28 10:24 Bauta: Hay fronteras trazadas con lápiz sobre un mapa, hace falta una goma de borrar que no dañe al papel, que no lo rompa. Estoy cansado de explicar y me pongo manos a la obra. Parece imposible el entendimiento, la colaboración entre disciplinas, colaboración en horizontal. Parece imposible, pero es posible:

    Cuando escuché por primera vez La Pasión según San Mateo de Bach descubrí que es posible hacer música usando el espacio. Después me interesé por su construcción pregunté al especialista, al músico, al historiador, consulté fuentes y a la emoción que me produce esta pieza se unió otro conocimiento, mi amor por esta pieza aumentó.

    La obra está compuesta ensamblando pequeñas composiciones previas. Bach disponía de un almacén de memoria y en La Pasión según San Mateo podemos reconocer Cantatas . La música tambien tiene código abierto y podemos imaginar a Bach como una enorme computadora musical procesando los datos de su memoria (su cerebro, sus notas, etc.). La Pasión según San Mateo se compuso para una iglesia concreta, para un espacio determinado, dos orquestas separadas, coros, coro de ripienos y los solistas, colocados para crear un efecto espacial. Imposible entender la obra completamente fuera del espacio para el que fue concebida.

    Saber o conocer una obra y amarla requiere mucho tiempo, consultar con especialistas de otras disciplinas. En este proceso de conocer y sentir tambien yo (u otros) llegamos a conclusiones, a intuiciones, que el “especialista” ignora encerrado en los límites de su disciplina. Bach hace arquitectura, trabaja como un computador moderno, etc. sin embargo no interesa (en esos aspectos) al ingeniero o al arquitecto. ¿Como sujeta las columnas de esa obra Bach? ¿Tecnología poética?

    Escribí esto en Junio del 2002:

    La secuencia, según narra Jeremy Bernstein, puede ser la siguiente:

    En 1937, Howard Aiken comienza un trabajo que requiere realizar complejos y largos cálculos matemáticos, así que se plantea la necesidad de construir un calculador mecánico y tras unos años de darle a la moyera desarrolló una idea para construir una máquina de uso general y capaz de resolver cualquier problema.

    En el año 1939 consigue el apoyo de IBM y el apoyo de sus ingenieros, para 1944 terminan y dan nombre a la criatura: Mark I

    Tres años despues descubre los trabajos de Babbage y se sorprende de la coincidencia en los planteamientos teóricos de una máquina calculadora.

    Charles Babbage nace en Inglaterra en 1792, y gracias a que su padre era banquero heredó una fortuna que dedicó a desarrollar sus experimentos. Su vida es realmente interesante, pero sus ideas sorprendentes. Hacia 1883 comienza un proyecto que llama ‘La máquina analítica’ o ‘Máquina de diferencias’.

    Scherezada Lovelace nace en 1815, y siendo aun niña acompaña a su madre, Ada Augusta condesa de Lovelace, a una presentación de esa
    máquina, queda impresionada. Y es gracias a ella y a sus descripciones que conocemos las características de aquella máquina.

    En 1871 muere Babbage, sus trabajos no serán recordados hasta 40 años más tarde. Cabe señalar que ninguna de las máquinas funcionó como se suponía que debían hacerlo, pero sentó las bases de como ha de organizarse un calculador.

    Lovelace dice respecto a esta máquina posible “Puede hacer cualquier cosa que sepamos como ordenarle que la ejecute …”

    Esta frase es la que me llamó la atención, posiblemente tengamos la capacidad de construir una máquina muy potente, pero desconocemos la forma de ordenarla como hacer arte, por ejemplo, quizás no nos interese o quizás sí.

    Añado hoy una nota más. Babbage fue el primero que tuvo la idea de separar conceptualmente almacén de datos almacén de proceso y procesador . Algo que hoy nos parece sencillo y natural no lo era tanto en 1939 y mucho menos aún en la época de Babbage.

    Más cosas que decir, pero ahora no tengo tiempo.

Librería LdN


LdN en Twiter

Publicidad

Publicidad

Libro de Notas no se responsabiliza de las opiniones vertidas por sus colaboradores.
Esta obra está bajo una licencia de Creative Commons
Desarrollado con TextPattern | Suscripción XML: RSS - Atom | ISSN: 1699-8766
Diseño: Óscar Villán || Programación: Juanjo Navarro
Otros proyectos de LdN: Pequeño LdN || Artes poéticas || Retórica || Librería
Aviso legal