¿Qué es la Complejidad?

Vistazo al primer capítulo de Complectere, Principios básicos para tomar decisiones en un mundo complejo

Oliver López Corona
6 min readApr 13, 2019

Complectere (https://www.lopezoliver.otrasenda.org/complectere-espanol/)se construye de la raíz latina plectere que significa “trenzar, enlazar” a la cual se le antepone el prefijo com-, con lo cual la palabra adquiere el sentido de la dualidad de dos elementos opuestos que se entrelazan íntimamente, pero sin anular su dualidad. Así pues, el término complejidad que proviene de Complectere, hace referencia a aquello que queda entrelazado por efecto de fuerzas opuestas y complementarias: la aleatoriedad y la auto-organización.

En general estas dos fuerzas actúan a través de componentes muy simples pero que interactúan entre ellos y con su entorno, muchas veces no linealmente, y sin un control central. Estas fuerzas dan pié así, a un conjunto de propiedades que hemos identificado comunes a la mayoría de los que llamamos sistemas complejos: la existencia de heterogeneidad, orden jerárquico, apertura, adaptación, memoria, emergencia y anticipación.

Las consecuencias de esto es que los sistemas complejos generan información nueva no contenida en la descripción original de sus partes, sino que surge de las interacciones. Además es común que estas interacciones o las propiedades que de ellas emergen cambien a una velocidad observable. Esto implica que en general, los sistemas complejos son impredecibles y no controlables.

Pero nos hemos adelantado demasiado hacia ésta que sería nuestra propuesta de definición de complejidad.

Una de las características más impresionantes de los sistemas complejos es que en el fondo son muy sencillos, en el sentido de que sus componentes son muy simples. Tomemos por ejemplo lo que se conoce como el juego de la vida.

El juego de la vida del matemático británico John Horton Conway, se presentó por primera vez en el número de octubre de 1970 de la revista Scientific American, en la columna de juegos matemáticos de Martin Gardner. Desde un punto de vista teórico, es interesante porque es equivalente a una máquina universal de Turing, es decir que todo lo que se puede computar (algorítmicamente) se puede computar en el juego de la vida.

Quizá hayas escuchado de Truing por la película que toma parte de su vida como argumento principal, Enigma (2001). El título de la película se tomó de la máquina de encriptamiento que usaban los Nazi durante la segunda guerra mundial y que finalmente fuera descifrada por la primera computadora construida por Turing, Ultra (les recuerda a Ultron?).

En la imagen una fotografía de dominio público tomada de wikipedia de Enigma.

Por supuesto esa versión sobre simplificada es muy injusta respecto de la heroica labor de los polacos antes de la aparición de turing quienes no solo interceptaron una máquina Enigma de grado no militar antes de la guerra sino que a partir de su estudio, Marian Rejewski, Jerzy Rozycki y Henryk Zygalski lograron romper su código desde una perspectiva matemática formal. Sin embargo como diría el personaje Fat Tony en la monumental obra sobre el papel de la aleatoriedad en la vida y las decisiones, el Incerto de Taleb, y que es en buena medida el origen de inspiración de muchas partes de esta obra. “En teoría no hay diferencia entre teoría y práctica, en la práctica si la hay”

Y es que una cosa es resolver un problema matemático formal y otra muy diferente es poder realizar los cálculos para poder aplicarlo en el mundo real. Fué ahí donde el genio de Turing y sus colaboradores (perdonen por ser sistemáticamente injusto) dieron un giro a la segunda guerra mundial al poder efectivamente decodificar mensajes de guerra encriptados con Enigma usando su computadora (mecánica) Ultra.

En honor a Turing se denomina “máquina de Turing” a un dispositivo que manipula símbolos sobre una tira de cinta de acuerdo a una tabla de reglas. A pesar de su simplicidad, una máquina de Turing puede ser adaptada para simular la lógica de cualquier algoritmo de computador. De la misma manera una máquina de Turing se define como un dispositivo que es capaz de simular cualquier otra máquina de Turing. Así pues cuando decimos que el juego de la vida es una máquina universal de turing, no estamos diciendo cualquier cosa.

An American-made version of the Bombe, a machine developed in Britain for decrypting messages sent by German Enigma cipher machines during World War II.

National Museum of the U.S. Air Force (070918-F-1234S-006)

Lo asombroso no es que sea una máquina universal de Turing, sino la simpleza del juego de la vida.

El juego de la vida es un juego de cero jugadores, lo que quiere decir que su evolución está determinada por el estado inicial y no necesita ninguna entrada de datos posterior. El juego tiene lugar en un tablero virtual pensado como una malla plana rectangular al estilo de un tablero de ajedrez en el que cada cuadrito es llamado una “célula” y que tiene un conjunto de variables o propiedades definidas en ella. El estado de todas las células se tiene en cuenta para calcular el estado de las mismas al turno siguiente, en un esquema de primeros vecinos (las ocho células contiguas a una cualquiera en particular). Todas las células se actualizan simultáneamente en cada turno, siguiendo estas reglas:

(1) una célula muerta pasa a un estado vivo, con exactamente 3 células vecinas vivas (es decir, al turno siguiente estará viva); (2)

una célula viva con 2 o 3 células vecinas vivas sigue viva, en otro caso muere (por “soledad” o “superpoblación”).

El lector interesado podría explorar esta implementación del juego de la vida en línea: https://pmav.eu/stuff/javascript-game-of-life-v3.1.1/ o bien si incluso desea aprender a programarlo o modificarlo, pueden visitar la implementación en NETLOGO que puede explorarse ya sea en línea o descargandolo: https://www.netlogoweb.org/launch#https://www.netlogoweb.org/assets/modelslib/Sample%20Models/Computer%20Science/Cellular%20Automata/Life.nlogo

En la imagen de arriba tomada de wikipedia con licencia CC, con esas muy simples reglas podemos observar cómo surgen (o emergen) patrones espacio-temporales como estos patrones que van viajando desde la parte central superior en diagonal hacia abajo a la izquierda. Estos patrones conocidos como sliders no pueden ser predichos en base sólo al estado inicial del sistema.

Otro gran ejemplo de esto son los tensoactivos, moléculas por ejemplo en forma de espermatozoides que pueden tener cabezas hidrofílicas y colas hidrofóbicas como las mostradas en la imagen de la izquierda tomada de wikipedia con licencia CC. Uno puede conocer a la perfección toda la fisicoquímica de un molécula de tensoactivo y no podríamos predecir la emergencia de estructuras espaciales como las micelas (estas esferas de moléculas de tensoactivos) una vez que se sobrepasa cierta concentración crítica a partir de la cual estas moléculas se auto-organizan (evidentemente sin control central).

Un excelente texto en que participé marginalmente sobre los principios fundamentales para entender la complejidad se puede encontrar aquí: https://complexityexplained.github.io/ComplexityExplained[Spanish].pdf

De igual manera hay muchos excelentes ejemplos en el sitio web general: https://complexityexplained.github.io/

--

--

Oliver López Corona
Oliver López Corona

Written by Oliver López Corona

Lévy walker of life, trying to have #SkinInTheGame and practicing #antifragility. https://www.lopezoliver.otrasenda.org/

No responses yet