domingo, 18 de febrero de 2007

Creación y caos


Parece irresistible la idea de que la computación efectuada en los cerebros es de carácter caótico: una hoja cayendo, el sonido de unos pasos, el reflejo del sol en la ventana de la casa de enfrente pueden sacarnos del curso de nuestros pensamientos para acabar descubriendo la ley de la gravedad u olvidando lo que nunca se descubrió.

Una ecuación caótica enormemente simple es la ecuación logística, ideada con la pretensión de representar la fluctuación del número de individuos de dos especies predador/presa en un ecosistema.

Parece obvio que si el número de predadores aumenta, consumirán más presas, de modo que el número de presas debe disminuir en el siguiente lapso de tiempo. Pero si el número de presas disminuye será más complicado para los predadores encontrar comida, y el número de predadores disminuirá en el siguiente lapso de tiempo, con lo que el número de presas volverá a aumentar.

Si llamamos x al ratio de predadores (número de predadores dividido entre el número total de individuos de ambas especies), podemos formular esta ley con la expresión

x(t+1) = r * x(t) * (1- x(t))

donde el factor r depende de las especies consideradas (la capacidad de consumo de una especies es mayor que la de otras).

Esta expresión cumple lo anteriormente expuesto, es decir, que si el número de predadores es muy bajo tiende a crecer, y si es muy alto tiende a disminuir.

Hasta donde yo sé, esta ecuación es la forma matemática más simple que genera caos, aunque sólo lo hace para ciertos valores de r.

Partiendo de x(0) = 0,5 (por ejemplo), y para valores menores de 3,5699457… (conocido como punto de Feigenbaum) la ecuación converge, lo que quiere decir que al cabo de cierto número de iteraciones el valor se estabiliza. Por ejemplo, para r = 2, x(1) = 2 * 0,5 * 0,5 = 0,5, x(2) = 0,5, etc. Pero ¡sorpresa! Una vez superado el punto de Feigenbaum x(t) comienza a oscilar entre dos valores. Incrementando un poco más r, x(t) oscila entre cuatro valores; con un r un poco mayor, entre ocho, etc. Es más, llega un momento en que oscila entre infinitos valores (se vuelve caótica).

Aquí teneis un gráfico de los puntos de oscilación de la ecuación logística para distintos valores de r

De este modo, fijado un r entre 3,5699457 y 4, podemos generar una secuencia infinita de valores numéricos en el intervalo [0,1] que podríamos utilizar para emitir notas musicales a un dispositivo MIDI.

Repito aquí lo dicho cuando hablamos del mandelbus: al aplicar la traslación de número a nota tendremos que aplicar ciertos criterios musicales para que el resultado no sea (salvo que queramos eso) una simple secuencia de notas en la escala cromática.

Pero ya se me ha ido el tiempo (el espacio) de este mes. Si todo va bien intentaré el mes que viene que podáis oír el resultado de alguna de estas técnicas.


Publicado originariamente en Computación creativa y otros sueños (Libro de Notas) el 25/4/2005