Inicialmente, este artículo iba a tratar solo de la autoorganización, una característica fundamental y muy interesante de los sistemas complejos, pero me di cuenta de que no tiene sentido hablar de ella sin hablar primero de los agentes. Así que empecé este artículo sobre estos dos conceptos y, como me di cuenta de que se iba a quedar muy largo, decidí dividirlo en dos.
En este primero hablaré de los conceptos en sí, con algunos detalles interesantes y con ejemplos variados, para que se entiendan mejor.
En el próximo artículo hablaré de algunos fenómenos y mecanismos que pueden surgir a partir de los agentes y la autoorganización, como los comportamientos emergentes del sistema y los mecanismos de retroalimentación. También de los factores que influyen en la autoorganización y nos meteremos con la parte más práctica, explorando su utilidad y una de las herramientas más potentes que existen a día de hoy para trabajar con sistemas y problemas complejos: los modelos basados en agentes.
Índice
Introducción
¿Qué es la autoorganización?
¿Qué es un agente en un sistema complejo?
Percibir para actuar
Tipos de agentes
Resumen
Introducción
En los sistemas complejos, los agentes son los actores. Son los que toman las decisiones, interactúan entre sí y reaccionan a su entorno. Podrían ser células en un organismo, personas en una sociedad, animales en un ecosistema, o incluso organizaciones en un sistema económico.
La autoorganización es un proceso mediante el cual los patrones globales y las estructuras emergen en un sistema a partir de las interacciones entre los agentes, sin necesidad de un control o una guía externa. Es como si los agentes, simplemente haciendo lo suyo, terminaran creando una especie de danza coordinada sin que nadie les haya enseñado los pasos.
Pensemos en un grupo de pájaros volando juntos en el cielo, formando lo que se conoce como «el baile de los estorninos»:
Cada pájaro es un agente que sigue reglas simples: volar en la misma dirección que sus vecinos, mantener una cierta distancia de ellos y evitar obstáculos. Ningún pájaro tiene una visión global del grupo o controla a los demás. Sin embargo, a partir de estas simples interacciones, emergen patrones complejos y dinámicos de vuelo que parecen coordinados. Esto es la autoorganización en acción.
Ahora que tenemos una idea de lo que son, vamos a profundizar un poco más en estos conceptos.
¿Qué es la autoorganización?
Si miramos un partido de fútbol, los agentes son los jugadores y las distintas jugadas que vemos sería la autoorganización.
Podríamos pensar que en realidad los jugadores no se autoorganizan. Que, o bien hace cada uno lo que le parece y no existe organización ninguna, o bien siguen un plan preestablecido y existe una organización impuesta. Pero la realidad es muy diferente.
Los jugadores no se mueven de formas totalmente aleatorias, cada movimiento tiene un porqué y está relacionado con el objetivo (ganar el partido) y sigue unas reglas (el reglamento de fútbol), así que existe algún tipo de organización. Pero es imposible prever exactamente qué va a hacer cada jugador de antemano, ni de tu equipo ni (mucho menos) del contrario. Por otro lado, cada jugador tendrá que reaccionar a lo que hagan sus compañeros y sus contrarios en cada momento, algo que irá cambiando constantemente. Por lo que es imposible organizar cómo deben moverse. Y mucho menos desde el banquillo, es fundamental que se perciban los problemas desde la perspectiva de quien tiene que reaccionar. Algo de lo que hablaremos más adelante.
Entonces, ¿de dónde sale esa aparente organización que da lugar a movimientos coordinados, jugadas y a lo que llamamos «partido»? Pues de tener en un sistema distintos agentes que están interconectados de alguna manera (compañeros, contrarios, espacio en el que juegan, etc.) y que interaccionan siguiendo una serie de reglas sencillas (reglamento, responsabilidades según posiciones, objetivo del equipo y del individuo, etc.).
Este fenómeno se ve en multitud de sistemas complejos. Unos agentes que están interconectados de alguna forma, interaccionan siguiendo unas reglas sencillas y se crea una estructura y un comportamiento a nivel del sistema que es diferente al de la suma de los agentes.
Podríamos definirlo más formalmente como:
«La autoorganización es el proceso por el cual los sistemas complejos, compuestos por numerosos agentes, desarrollan estructuras, patrones y comportamientos emergentes a partir de las interacciones locales y sin una dirección o control centralizado. Estos fenómenos emergentes no son predecibles ni deducibles simplemente observando las propiedades individuales de los agentes, sino que son resultado de la dinámica colectiva del sistema completo.»
Aquí hay algunos ejemplos que ilustran cómo funciona la autoorganización en diferentes contextos:
Baile de los estorninos: Cuando estos pájaros vuelan juntos en grandes bandadas, siguen simples reglas individuales para mantener la distancia y la dirección de los pájaros vecinos. Sin ninguna coordinación central, las bandadas de estorninos crean patrones de vuelo increíblemente complejos y bellos.
Tráfico de vehículos: El flujo de tráfico es otro sistema autoorganizado. Cada conductor es un agente que sigue reglas simples, como seguir a la velocidad del tráfico, mantener una distancia segura del coche delantero, y ceder el paso a otros vehículos según las normas de tráfico. Sin embargo, a partir de estas interacciones simples, emergen patrones de tráfico más complejos, como atascos y tráfico fluido.
Comportamiento colectivo de los insectos: Algunos insectos, como las hormigas, las abejas y las termitas, exhiben comportamientos colectivos increíblemente complejos basados en la autoorganización. Por ejemplo, las termitas pueden construir montículos enormes y elaborados sin ninguna coordinación central. Cada termita sigue reglas simples, depositando el barro en lugares que huelen a otras termitas recientes, y este proceso da lugar a la construcción de montículos con estructuras complejas de túneles y cámaras.
Formación de cristales: En el mundo físico, un ejemplo clásico de autoorganización es la formación de cristales. Cuando las condiciones son las adecuadas, las moléculas de ciertas sustancias se alinean en patrones repetitivos para formar cristales. Cada molécula actúa como un agente que sigue reglas simples basadas en las fuerzas químicas y físicas, y la autoorganización emerge a partir de estas interacciones.
Balanceador de carga: En sistemas informáticos grandes, es normal tener que escalar (aumentar o disminuir) los recursos (red, servidores, etc.) en función de la demanda o de posibles fallos internos. Un sistema de balanceo de carga (o uno más complejo como puede ser Kubernetes) puede, basándose en unas reglas sencillas preestablecidas, asegurarse de que el sistema crezca o disminuya, de forma automática, en función de las necesidades.
Mercados de valores: En los mercados de valores, los precios fluctúan en respuesta a las decisiones de miles de inversores individuales, cada uno de los cuales está tratando de maximizar su beneficio personal. A pesar de la ausencia de un control centralizado, los mercados se autoorganizan formando patrones y ciclos.
Como podemos ver, es algo que podemos ver en casi cualquier área (física, química, biología, ecología, sociología, economía, ingeniería...) y no hacen falta complicadas reglas o un ente central que controle y organice. Unas simples reglas junto con la interacción de los agentes puede generar comportamientos y estructuras muy complejas.
Esta es una de las lecciones más importantes de la complejidad:
Los sistemas complejos no se pueden controlar ni organizar. Cualquier tipo de organización, comportamiento o estructura surge de las interacciones entre sus partes. Y su resultado es tan incontrolable como impredecible.
¿Qué es un agente en un sistema complejo?
Si algo nos ha quedado claro es que los protagonistas de la autoorganización son los agentes, así que veamos qué es un agente.
En la teoría de los sistemas complejos, un agente se define como una entidad autónoma con la capacidad de percibir su entorno, procesar información y tomar decisiones basadas en esa información. Los agentes pueden ser físicos o abstractos. Algunos ejemplos de agentes son los animales, los humanos, las organizaciones, las células, los programas de software o incluso los países.
Agente: entidad autónoma con la capacidad de percibir su entorno, procesar información y tomar decisiones basadas en esa información.
Es importante recordar que los agentes no necesitan ser conscientes o tener una inteligencia para ser considerados como tales. En nuestro cuerpo, por ejemplo, las células individuales actúan como agentes, aunque no tengan una conciencia propia. Siguen reglas simples, interactúan entre sí y responden a su entorno, lo que les permite participar en la creación y mantenimiento de los increíblemente complejos sistemas biológicos de los que formamos parte.
Un ejemplo fascinante es el del «moho deslizante», un moho formado por múltiples células sencillas e independientes que se comportan como un único ser vivo, llegando a presentar comportamientos tan complejos como desplazarse, adoptar diferentes formas o resolver problemas. Se han hecho experimentos con ellos y han sido capaces de resolver laberintos, encontrar la red de caminos óptimos para conectar ciudades e, incluso, recordar eventos y anticiparse a ellos.
Todo esto siendo células individuales y muy sencillas, sin un sistema nervioso. Simplemente usando unas sencillas reglas locales como buscar comida y secretar señales químicas en función de si hay o no comida, son capaces de crear estos comportamientos y estructuras.
Percibir para actuar
Antes de seguir profundizando sobre los agentes es importante resaltar que algo que se nos puede pasar por alto, por ser obvio, pero que vale la pena pararnos un momento a pensar en ello.
Los agentes reaccionan ante cambios en el entorno u otros agentes. Para poder «reaccionar» es necesario percibir. Es decir, los agentes no realizan acciones al azar, sus acciones siempre responden a percepciones internas (cambios de estado interno) o externas (cambios en el entorno).
Te dejo algunos ejemplos de cómo distintos tipos de agente «perciben» su entorno u otros agentes para reaccionar:
Átomos: Los átomos interactúan entre sí principalmente a través de fuerzas electromagnéticas. Un átomo puede «sentir» la presencia de otro átomo cuando los electrones de ambos átomos interactúan, lo cual puede conducir a la formación de un enlace químico. Un átomo también puede absorber o emitir fotones (partículas de luz) y cambiar su estado energético en respuesta a las condiciones energéticas de su entorno.
Células: Las células son expertas en percibir y responder a su entorno. Detectan cambios en el pH, temperatura, concentraciones de nutrientes y otras sustancias químicas a través de proteínas especializadas en sus membranas llamadas receptores. Por ejemplo, en condiciones de baja glucosa, las células de levadura pueden alterar su metabolismo para utilizar otros azúcares disponibles. Además, las células también pueden comunicarse entre sí mediante la liberación de señales químicas, un proceso conocido como señalización celular.
Organismos simples: Un organismo unicelular como la ameba detecta su entorno mediante quimiotaxis, el movimiento que realiza un organismo en respuesta a un estímulo químico. Si detecta más alimento en una dirección en particular, se moverá hacia esa dirección. Si detecta una sustancia dañina, se moverá en la dirección opuesta.
Entidades bancarias: Un banco puede detectar cambios en el comportamiento de otros bancos, en sus clientes o en los mercados mediante el análisis de datos financieros y económicos. Por ejemplo, si observa que muchos de sus clientes están retirando dinero, puede interpretarlo como una señal de falta de confianza y tomar medidas para mitigar este problema. De manera similar, si detecta que otros bancos están reduciendo las tasas de interés, puede considerar hacer lo mismo para mantenerse competitivo.
Esto tiene ciertas implicaciones que serán muy importantes más adelante:
Los agentes de un sistema complejos (por sencillos que sean) son capaces de percibir.
Los agentes no se comportan de forma aleatoria, siempre responden a sus reglas y su percepción del entorno y el resto de agentes.
Una percepción genera una respuesta (acción), lo que implica que siempre se actúa en función de algo que ya ocurrió. Es decir, existe un desfase entre lo que se percibió y la reacción. En algunos sistemas el desfase será mínimo (respuesta casi inmediata), mientras que en otros será muy larga.
Estas conclusiones pueden tener implicaciones importantes en algunos tipos de sistemas y profundizaré en ellas en futuros artículos. Por ahora, vamos simplemente a tenerlas presentes.
Esto conecta con algo que mencionaba antes, en el ejemplo del partido de fútbol:
La percepción es única para cada agente. Ningún otro agente perecibirá, ni interactuará, igual con el entorno.
Por eso, la visión o percepción de alguien, o algo, externo al sistema (o, incluso, de otro agente dentro del mismo sistema) jamás podrá dar la información necesaria para reaccionar.
El agente solo puede reaccionar a lo que percibe
Tipos de agentes
Se podría categorizar los agentes que podemos encontrarnos en los sistemas de muchas formas, pero una muy común es:
Débiles
Fuertes
Un agente fuerte, también conocido como agente inteligente o agente autónomo, tiene la capacidad de tomar decisiones de manera independiente, basándose en su propio conjunto de metas o reglas, y puede adaptarse y aprender de su entorno. Por ejemplo, personas en una organización o cualquier ser vivo en su ecosistema pueden ser considerados agentes fuertes.
En general, los agentes fuertes sueles ser sistemas complejos en sí mismos (sistemas que se adaptan, aprenden de su entorno). Algo que vimos que era muy común en los sistemas complejos: anidarse y crear múltiples niveles en los que los sistemas del nivel inferior, son agentes del nivel superior. Por ejemplo, las células del cuerpo son sistemas complejos y agentes del cuerpo; el individuo es un sistema complejo, pero un agente en un equipo de trabajo; el equipo es un sistema complejo, pero un agente dentro de una empresa; y así sucesivamente.
Un agente débil, por otro lado, sigue un conjunto fijo de reglas o comportamientos sin la capacidad de aprender o adaptarse a su entorno. Por ejemplo, una molécula en una reacción química puede ser considerada un agente débil: interactúa con otras moléculas de acuerdo con las leyes de la física y la química, pero no tiene la capacidad de cambiar su comportamiento en respuesta a estas interacciones.
Hay que tener en cuenta que esta es una clasificación arbitraria y que no existe tal diferenciación en el mundo real. Como en casi todo, lo que tenemos es un espectro en el que los agentes pueden ser más o menos fuertes o débiles.
Por simplificar, vamos a ceñirnos a esa clasificación y ver algunas características de estos tipos. Teniendo siempre en cuenta que serán características que se darán más o menos según hacia que lado del espectro se acerquen:
Agente débil:
Tipo de elemento: Elemento simple o sistema complejo sencillo (ej.: una célula simple)
Reacción basada en:
Reglas simples
Percepción del entorno y otros agentes
Predecible. Agentes débiles iguales con reglas iguales, se comportarán de la misma forma.
Agente fuerte:
Tipo de elemento: Sistema complejo
Tiene memoria
Aprende y se adapta
Puede crear nuevas reglas
Puede tener objetivos propios
Reacción basada en:
Reglas simples
Meta-reglas. Es decir, nuevas reglas sobre las reglas sencillas.
Percepción del entorno y otros agentes
Percepción interna (cambios de estados, comportamientos emergentes, etc.)
Memoria e historia. Tanto de experiencias propias como de interacciones previas con otros agentes o el entorno.
Impredecible.
Algunas aclaraciones:
Los agentes débiles suelen ser predecibles porque reaccionan solo basándose en reglas sencillas, que si las conocemos, nos permiten predecir sus comportamientos. Por ejemplo, conociendo las leyes de la física y la química, podemos predecir el comportamiento de ciertos átomos o moléculas.
Las meta-reglas son reglas que puede crear un sistema complejo, sobre sus reglas simples iniciales. Esto está relacionado con algo que hablaré en el siguiente artículo, los umbrales, y de cómo el sobrepasar uno puede cambiar la forma de comportarse y reaccionar de un agente. Si sistema sigue funcionando basándose en reglas simples y fijas, lo que ahora hay nuevas reglas que hacen más dinámico y complejo el sistema.
Un ejemplo sencillo de esto podría ser un jugador de ajedrez durante una partida. El juego tiene unas reglas fijas y simples que tiene que seguir, pero en función de su experiencia y aprendizaje, seguramente haya desarrollado una serie de aperturas, estrategias y jugadas que le funcionan mejor en cada situación. Estas serán unas reglas que aplica el agente, que no están presente en las reglas conocidas por el resto. Al ser desconocidas es más difícil predecir qué reglas se usarán y cuál será su resultado.
Resumen
Cada vez vamos viendo más elementos y características que se relacionan entre sí y que les dan a los sistemas complejos ese dinamismo, impredecibilidad y propiedades sorprendentes que los hacen tan interesante.
Sin duda los agentes y su autoorganización son una fuente de dinamismo, no linealidad y propiedades emergentes. En este artículo hemos visto la importancia del multinivel (sistemas formados por sistemas) y de la interconexión e interdependencia (algo que profundizaremos en el siguiente artículo) para esta autoorganización.
Pero también hemos aprendido que los agentes perciben su entorno y otros agentes, lo que les permite reaccionar. Además, son reglas locales muy simples las que crear esta complejidad y no complicadas reglas impuestas o diseñadas por un actor externo al sistema.
Entender esto último es fundamental para entender por qué ocurre cualquier cosa en un sistema complejo.
Como siempre, trata de identificar sistemas, agentes, qué tipo de agentes son, cuáles son las reglas que siguen, etc., en tu entorno, tu trabajo o tu área de conocimiento. Esto te ayudará mucho a entender mejor lo que estamos viendo y los sistemas con los que trabajas (quizás) sin saberlo.
Nos vemos en el próximo artículo con una parte más práctica del mismo tema. Espero que te sea útil.