El último aleteo de la mariposa


Introducción
Los sistemas dinámicos son la base del caos y de los atractores, debemos sumergirnos en ellos para comprender el concepto de "caos" y de "atractor".
Un sistema dinámico es un sistema matemático que estudia procesos en movimiento y que podemos encontrar por doquier en la Naturaleza y en nuestra sociedad:
|
Ciencia
|
Ejemplo
|
| Economía | Distribución de rentas |
| Demografía | Crecimiento de población |
| Física | Mecánica de fluidos |
| Astronomía | Órbitas estelares |
| … | … |
Estos sistemas dinámicos pueden simularse en el ordenador e incluso con una simple calculadora científica, si se conocen las ecuaciones que los rige.
Iteración
Usemos Excel u otra hoja de cálculo para probar con unas funciones simples, como por ejemplo cos(x) en radianes o bien raiz cuadrada. Como las iteraremos, partiremos de un valor cualquiera y el resultado obtenido será el argumento de la función en la 2ª iteración y así sucesivamente.
Iterar es usar la salida de una función como entrada en el siguiente cálculo.
Si usamos la calculadora, es tan fácil como escoger el modo ‘radianes’, introducir el primer valor de la función e ir pulsando repetidamente la tecla del coseno y/o la de la raiz cuadrada.
En el ejemplo propuesto obtendríamos el siguiente resultado:
|
n
|
raiz (x)
|
cos (x)
|
|
1
|
5424
|
0.5
|
|
2
|
73.64781056
|
0.877583
|
|
3
|
8.581830257
|
0.639012
|
|
4
|
2.929476106
|
0.802685
|
|
5
|
1.711571239
|
0.694778
|
|
6
|
1.308270323
|
0.768196
|
|
7
|
1.143796452
|
0.719165
|
|
8
|
1.069484199
|
0.752356
|
|
9
|
1.034158691
|
0.730081
|
|
10
|
1.016935933
|
0.74512
|
|
11
|
1.008432414
|
0.735007
|
|
12
|
1.004207356
|
0.741826
|
|
13
|
1.00210147
|
0.737236
|
|
14
|
1.001050183
|
0.740329
|
|
15
|
1.000524954
|
0.738247
|
|
16
|
1.000262443
|
0.739649
|
|
17
|
1.000131213
|
0.738705
|
|
18
|
1.000065604
|
0.739341
|
|
19
|
1.000032802
|
0.738913
|
|
20
|
1.000016401
|
0.739201
|
|
21
|
1.0000082
|
0.739007
|
|
22
|
1.0000041
|
0.739138
|
|
23
|
1.00000205
|
0.73905
|
|
24
|
1.000001025
|
0.739109
|
|
25
|
1.000000513
|
0.739069
|
|
26
|
1.000000256
|
0.739096
|
|
27
|
1.000000128
|
0.739078
|
|
28
|
1.000000064
|
0.73909
|
|
29
|
1.000000032
|
0.739082
|
|
30
|
1.000000016
|
0.739087
|
|
31
|
1.000000008
|
0.739084
|
|
32
|
1.000000004
|
0.739086
|
|
33
|
1.000000002
|
0.739085
|
|
34
|
1.000000001
|
0.739085
|
|
35
|
1.000000001
|
0.739085
|
|
36
|
1
|
0.739085
|
|
37
|
1
|
0.739085
|
1er paso
Daremos un valor fijo a c, por ejemplo c=0.5 y un valor inicial a X, por ejemplo X0=0.6. Los introduciremos en la función y obtenemos X1=0.12. Este valor lo metemos otra vez en la función y seguimos calculando e iterando. Recordemos que c sigue valiendo 0.5, pues es un valor fijo y prefijado de antemano.
Volvemos pues, al concepto de sucesión recurrente. Calcularemos unos cuantos términos y veremos que a cada valor de Xn,Xn+1 se hace más y más pequeña, es decir, que iterando suficiente veces tiende a 0, lo que se conoce en Análisis Matemático como que el límite en el infinito del término general de la sucesión tiende a 0.
2º paso
Probaremos con distintos valores de c y X0y para que no os canseis los he reproducido en tabla inferior con suficientes iteraciones (las necesarias para la explicación).
|
Xn+1=c*Xn(1-Xn)
|
|||||
|
X1
|
0,12
|
0,225
|
0,8
|
0,8246
|
0,5688
|
|
X2
|
0,0528
|
0,4359375
|
0,512
|
0,50622194
|
0,87192262
|
|
X3
|
0,02500608
|
0,61473999
|
0,7995392
|
0,87486451
|
0,39699952
|
|
X4
|
0,012190388
|
0,59208684
|
0,51288406
|
0,38316811
|
0,85103465
|
|
X5
|
0,006020891
|
0,60380004
|
0,7994688
|
0,82722608
|
0,45068396
|
|
X6
|
0,00299232
|
0,59806388
|
0,51301899
|
0,50023082
|
0,88010398
|
|
X7
|
0,001491683
|
0,60095869
|
0,79945762
|
0,87499981
|
0,37512702
|
|
X8
|
0,000744729
|
0,59951836
|
0,51304043
|
0,38281299
|
0,83331595
|
|
X9
|
0,000372087
|
0,60024024
|
0,79945583
|
0,82693522
|
0,49379119
|
|
X10
|
0,000185974
|
0,59987974
|
0,51304386
|
0,50089678
|
0,88861296
|
|
X11
|
9,29699E-05
|
0,6000601
|
0,79945554
|
0,87499719
|
0,35187379
|
|
X12
|
4,64806E-05
|
0,59996994
|
0,51304441
|
0,38281989
|
0,81074842
|
|
X13
|
2,32392E-05
|
0,60001503
|
0,7994555
|
0,82694088
|
0,54546292
|
|
X14
|
1,16193E-05
|
0,59999249
|
0,51304449
|
0,50088382
|
0,88140225
|
|
X15
|
5,80961E-06
|
0,60000376
|
0,79945549
|
0,87499727
|
0,37161241
|
|
X16
|
2,90479E-06
|
0,59999812
|
0,51304451
|
0,38281968
|
0,83015161
|
|
X17
|
1,45239E-06
|
0,60000094
|
0,79945549
|
0,8269407
|
0,50125471
|
|
X18
|
7,26193E-07
|
0,59999953
|
0,51304451
|
0,50088422
|
0,8887444
|
|
X19
|
3,63096E-07
|
0,60000023
|
0,79945549
|
0,87499726
|
0,35151054
|
|
X20
|
1,81548E-07
|
0,59999988
|
0,51304451
|
0,38281968
|
0,81036538
|
|
X21
|
9,0774E-08
|
0,60000006
|
0,79945549
|
0,82694071
|
0,54630869
|
|
X22
|
4,5387E-08
|
0,59999997
|
0,51304451
|
0,50088421
|
0,88112632
|
|
X23
|
2,26935E-08
|
0,60000001
|
0,79945549
|
0,87499726
|
0,3723604
|
|
X24
|
1,13468E-08
|
0,59999999
|
0,51304451
|
0,38281968
|
0,83083241
|
|
X25
|
5,67338E-09
|
0,6
|
0,79945549
|
0,82694071
|
0,49965495
|
|
X26
|
2,83669E-09
|
0,6
|
0,51304451
|
0,50088421
|
0,88874958
|
|
X27
|
1,41834E-09
|
0,6
|
0,79945549
|
0,87499726
|
0,35149624
|
|
X28
|
7,09172E-10
|
0,6
|
0,51304451
|
0,38281968
|
0,81035028
|
|
X29
|
3,54586E-10
|
0,6
|
0,79945549
|
0,82694071
|
0,54634201
|
|
X30
|
1,77293E-10
|
0,6
|
0,51304451
|
0,50088421
|
0,88111535
|
|
X31
|
8,86465E-11
|
0,6
|
0,79945549
|
0,87499726
|
0,37239013
|
|
X32
|
4,43233E-11
|
0,6
|
0,51304451
|
0,38281968
|
0,83085939
|
|
X33
|
2,21616E-11
|
0,6
|
0,79945549
|
0,82694071
|
0,49959148
|
|
X34
|
1,10808E-11
|
0,6
|
0,51304451
|
0,50088421
|
0,88874941
|
|
X35
|
5,54041E-12
|
0,6
|
0,79945549
|
0,87499726
|
0,35149671
|
|
X36
|
2,7702E-12
|
0,6
|
0,51304451
|
0,38281968
|
0,81035078
|
|
X37
|
1,3851E-12
|
0,6
|
0,79945549
|
0,82694071
|
0,54634091
|
|
X38
|
6,92551E-13
|
0,6
|
0,51304451
|
0,50088421
|
0,88111571
|
|
X39
|
3,46275E-13
|
0,6
|
0,79945549
|
0,87499726
|
0,37238916
|
|
X40
|
1,73138E-13
|
0,6
|
0,51304451
|
0,38281968
|
0,8308585
|
|
X41
|
8,65689E-14
|
0,6
|
0,79945549
|
0,82694071
|
0,49959357
|
|
X42
|
4,32844E-14
|
0,6
|
0,51304451
|
0,50088421
|
0,88874941
|
|
X43
|
2,16422E-14
|
0,6
|
0,79945549
|
0,87499726
|
0,35149669
|
|
X44
|
1,08211E-14
|
0,6
|
0,51304451
|
0,38281968
|
0,81035076
|
|
X45
|
5,41055E-15
|
0,6
|
0,79945549
|
0,82694071
|
0,54634095
|
|
X46
|
2,70528E-15
|
0,6
|
0,51304451
|
0,50088421
|
0,88111569
|
|
X47
|
1,35264E-15
|
0,6
|
0,79945549
|
0,87499726
|
0,37238919
|
|
X48
|
6,76319E-16
|
0,6
|
0,51304451
|
0,38281968
|
0,83085854
|
|
X49
|
3,3816E-16
|
0,6
|
0,79945549
|
0,82694071
|
0,4995935
|
|
X50
|
1,6908E-16
|
0,6
|
0,51304451
|
0,50088421
|
0,88874941
|
|
X51
|
8,45399E-17
|
0,6
|
0,79945549
|
0,87499726
|
0,35149669
|
|
X52
|
4,22699E-17
|
0,6
|
0,51304451
|
0,38281968
|
0,81035076
|
|
X53
|
2,1135E-17
|
0,6
|
0,79945549
|
0,82694071
|
0,54634095
|
|
X54
|
1,05675E-17
|
0,6
|
0,51304451
|
0,50088421
|
0,8811157
|
|
X55
|
5,28374E-18
|
0,6
|
0,79945549
|
0,87499726
|
0,37238919
|
|
X56
|
2,64187E-18
|
0,6
|
0,51304451
|
0,38281968
|
0,83085853
|
|
X57
|
1,32094E-18
|
0,6
|
0,79945549
|
0,82694071
|
0,4995935
|
|
…
|
…
|
…
|
…
|
…
|
…
|
|
Xn
|
0
|
0.6
|
2-periódico
|
4-periódico
|
8-periódico
|
Fijémonos que en el caso nº 1 con c=0.5 y Xo=0.6 la sucesión tiende a 0, pues a cada iteración se hace menor. En el caso nº 2 con c=2.5 y Xo=0.1 la sucesión de términos obtenidos en las sucesivas iteraciones tiende a 0.6 y en el caso nº 3 con c=3.2 y Xo=0.5 nos encontramos con que tras suficientes iteraciones, los resultados se repiten cada 2 términos. Entonces se dice que la función tiene un comportamiento 2-periódico. En el caso nº4 con c=3.5 y Xo=0.38 tiene un comportamiento 4-periódico y en el caso nº5 con c=3.555 y Xo=0.2 un comportamiento 8-periódico.
3er paso
El comportamienton-periódico de la función depende del valor de c. De hecho, según sea c, podemos encontrarnos con comportamientos 16-periódico, 32-periódico, …, y en general, 2n-periódico.
El secreto del comportamiento caótico de la función, también está en el parámetro c, pues a partir de cierto valor de c la función se vuelve caótica.
Probaremos con c=3.9 y Xo=0.4 y calcularemos 200 o más iteraciones. Pincha aquí para abrir una nueva ventana con la tabla. Observaremos que no aparece ningún comportamiento repetitivo.
Su representación gráfica quedaría como sigue, siendo la recta y=x

El efecto mariposa
Cogeremos la función anterior Xn+1=3.9 Xn (1-Xn) y comenzaremos a iterar para el valor Xo=0.40001. Tan sólo apreciar que hemos variado el parámetro inicial en una cienmilésima.
Si comparamos la sucesión de resultados obtenida con la anterior (Xo=0.4) y representamos gráficamente la diferencia entre las 2 sucesiones, obtendríamos un gráfico como este:

Esta es otra representación del efecto mariposa del que tanto nos hablan. Es más bonita la mariposa de Lorenz, pero esta gráfica nos muestra lo diferente que puede ser el futuro dependiendo de un ridículo cambio en los parámetros iniciales.
Hacer notar que en la Naturaleza hay un incontable número de variables que pueden hacer cambiar el rumbo de las ecuaciones matemáticas que rigen su comportamiento. Sería, pues, como nuestro ejemplo de la "ecuación logística" pero multiplicado por un 1 y muchos 0. ¿Demasiada complejidad para una simple ecuación?
Sucesión recurrente
Fijémonos en una sucesión recurrente expresada algebraicamente:
Xn+1=f (Xn)
Esta expresión indica como calcular el siguiente término (Xn+1) a partir del anterior (Xn ) mediante una operación matemática. Esta operación matemática es la función (f), por lo tanto f puede ser el seno, coseno, raiz cuadrada o cualquier otra combinación de las funciones conocidas. Estas funciones no tienen porque pertenecer únicamente al ámbito de los números reales, las funciones complejas también tienen cabida y de hecho, son las relacionadas con los fractales, pero no voy a complicar excesivamente la cosa. Ahora lo importante es entender el concepto de "sucesión recurrente" y como podemos crear funciones caóticas.
En este tipo de sucesiones, "iterar" significa calcular el siguiente término de la sucesión, pero para ello hay que calcular el anterior, que a su vez depende del anterior, … Este es el motivo de que para comenzar tengamos que dar un valor arbitrario a X0. Veamos un ejemplo:
|
Xn+1=2Xn+1 |
||
|
X0=0.50 |
X0=0.51 |
|
| X0 |
0.50 |
0.51
|
| X1 |
2 |
2.02 |
| X2 |
5
|
5.04
|
| X3 |
11 |
11.08 |
| X4 |
23
|
23.16
|
| X5 |
47
|
47.32
|
|
…
|
…
|
|
Estamos ante un "sistema lineal", en el que puntos de arranque parecidos dan sucesiones parecidas.
No todos los sistemas evolucionan de forma similar y partiendo de valores ligeramente diferentes pueden tomar derroteros bien distintos. Veamos como evoluciona la siguiente función y a que dos sucesiones da lugar ese mínimo cambio inicial que experimenta la variable X0.
|
Xn+1=8Xn-(2*(Xn)2) |
||
|
X0=0.50 |
X0=0.51 |
|
|
X0
|
0.50 |
0.51
|
|
X1
|
3.5 |
3,5598 |
|
X2
|
3.5
|
3,13404792
|
|
X3
|
3.5 |
5,42787063 |
|
X4
|
3.5
|
-15,50059412
|
|
X5
|
3.5
|
-604,5415888
|
|
X6
|
3.5
|
-735777,3979
|
|
…
|
…
|
|
Fijémonos que para X0=0.50 la sucesión se estabiliza en la primera iteración y que para X0=0.51 no se estabiliza sino que va disminuyendo de forma creciente. Podríamos decir que para X0=0.50 la sucesión es atraida hacia el punto 3.5, pero estoy adelantando el orden natural de la explicación. Ya volveremos a ese punto de atracción más tarde.
Veamos otro ejemplo mucho más clarificador para nuestros propósitos. Fijémonos en la siguiente tabla y en como evolucionan las sucesiones para los distintos valores iniciales dados a X0.
|
Xn+1=4Xn*(1-Xn) |
||
|
X0=0.30 |
X0=0.31 |
|
|
X0
|
0,30
|
0,31
|
|
X1
|
0,84
|
0,8556
|
|
X2
|
0,5376
|
0,49419456
|
|
X3
|
0,99434496
|
0,999865187
|
|
X4
|
0,022492242
|
0,000539177
|
|
X5
|
0,087945365
|
0,002155547
|
|
X6
|
0,32084391
|
0,008603602
|
|
X7
|
0,871612381
|
0,034118321
|
|
X8
|
0,447616953
|
0,131817043
|
|
X9
|
0,989024066
|
0,457765241
|
|
X10
|
0,043421853
|
0,9928649
|
|
X11
|
0,166145584
|
0,028336759
|
|
X12
|
0,554164917
|
0,11013515
|
|
X13
|
0,988264647
|
0,392021595
|
|
X14
|
0,046390537
|
0,953362656
|
|
…
|
…
|
|
Observamos que el comportamiento es totalmente distinto para las 2 sucesiones y que toma caminos diferentes. Tras unas pocas iteraciones nadie puede deducir que los puntos de inicio de la función están tan próximos pues ambas sucesiones, a primera vista, siguen un "comportamiento caótico". Es pues, un "sistema caótico".
Ecuación logística
El ejemplo de sistema caótico propuesto con anterioridad se basa en la conocida "ecuación logística" tan utilizada en el estudio de poblaciones. Acordémonos de los ejemplos típicos de estudio:
Xn+1=c Xn (1-Xn)
Esta ecuación logística se usó muchísimo a finales del siglo XIX y principios del XX, por su carácter impredecible y por su posibilidad de ajustar el parámetro ca diversas restricciones, de ahí que se le llame "factor ecológico" (climatología, depredadores, desastres naturales, escasez de alimento, …).
Desde luego que se puede jugar con ecuaciones de este tipo para representar evoluciones ficticias de poblaciones animales, pero no pretendamos sacar conclusiones reales porque no se ajusta a la realidad y la ecuación carece del rigor científico necesario.
Manos a la obra
Ahora toca crear caos y para ello nada mejor que hacer uso de la calculadora científica de nuestro sitema operativo o de una hoja de cálculo tipo Excel. Opción esta última mucho más recomendable pues ganaremos tiempo y evitaremos errores.
Partamos de una función. No hace falta que sea complicada, el caos tiene la manía de aparecer en la simplicidad. Por ejemplo la "ecuación logística" vista anteriormente y formulada por P. F. Verhulst en 1845 para explicar el crecimiento de una población de una especie que se reproduce en un entorno cerrado sin ningún tipo de influencia externa.
Xn+1=c Xn (1-Xn)
Simple y extraño
A este físico francés nacido en París en 1931, se le debe uno de los atractores extraños más reveladores y simples.
Durante su tesis doctoral en 1960 empezó a trabajar con el tema de cúmulos globulares y las consecuencias de la llegada de un tercera estrella a un sistema binario, que desencadenaron en lo que Hénon bautizó como "colapso gravotérmico".
Trabajaba en el Instituto de Astrofísica de París, cuando 5 años más tarde de que Lorenz diera a conocer sus trabajos, Hénon descubría un sistema dinámico capaz de explicar las oscilaciones sufridas por ciertos entes astronómicos que se desviaban ligeramente de la trayectoria elíptica predicha por las leyes que rigen la Astronomía.
El sistema ideado por Hénon es de una simplicidad aplastante, y aún ahora, los matemáticos se maravillan al contemplar su sistema de ecuaciones y ver los sorprendentes resultados que con él se obtienen. Se diría que son necesarias docenas de variables matemáticas para obtener un resultado parecido, pero Hénon con sólo 2 ecuaciones de 2 variables lo consiguió.
Éste es el sistema cuadrático de Hénon:
![]() |
Donde A y B son parámetros que Hénon fijó en A=1.4 yB=0.3.
Este sistema genera valores aprentemente aleatorios y en nuestro pantalla se concretan en unos puntos difusos y amorfos que tras un suficiente número de iteraciones se ordenan formando una especie de "boomerang": el atractor de Hénon.

Con la sucesiva ampliación visual del atractor de Hénon ocurre lo mismo que con el de Lorenz, donde había una línea de puntos aparecen 2 que si a su vez se amplían, cada una de ellas se convierten en otras 2, y así hasta el infinito. Ninguna de ellas se corta en el plano en ningún momento.
Como en todo atractor, dependiendo de los valores iniciales a aplicar en la función, ésta presenta unos resultados diferentes, pero su representación gráfica tras un número suficiente de iteraciones es siempre la misma, es decir, el sistema tiende a estabilizarse en unos valores y su comportamiento a largo plazo es el mismo, independientemente de sus valores iniciales.
Es como un botafumeiro dejado a la mano de Dios, su destino final siempre será el mismo: pararse.
Últimos Comentarios