**IAIC** Sistemas Complejos # Introducción
Esta introducción está basada en [esta entrada](https://santiferris.com/inteligencia-artificial/los-sistemas-complejos-y-la-inteligencia-artificial/), de Santiago Ferris.
Para entender la relación existente entre la IA y los Sistemas Complejos es imprescindible conocer la evolución del objeto de la Ciencia y cómo ha abordado el fundamental objetivo de ampliar el conocimiento y entender el mundo. !!!Def: Tipos de Problemas en Ciencia ([Warren Weaver](https://es.wikipedia.org/wiki/Warren_Weaver)) ![W. Weaver](.\img\WarrenW.png align="right" width=150px)La Ciencia ha tratado históricamente con tres tipos de problemas: * los problemas de simplicidad, * los problemas de complejidad desorganizada y * los problemas de complejidad organizada. ![](.\img\cradle.gif align="left") Durante los siglos XVII a XIX, la Ciencia, representada principalmente por la Física, desarrolló las herramientas matemáticas necesarias para manejar **problemas simples** de baja dimensionalidad (esencialmente, de dos variables), lo que produjo desarrollos tecnológicos que han caracterizado la evolución del S.XX. Estas herramientas iban enfocadas a un tratamiento simplificado del problema por medio de herramientas como el Álgebra y el Cálculo, en particular el inicio del tratamiento de relaciones entre variables por medio de ecuaciones diferenciales. Por otra parte, otras disciplinas, como la Biología y la Medicina, donde frecuentemente aparecen problemas de dimensionalidad más alta (con docenas de variables), aunque también experimentaron indudables avances, no tuvieron la suerte de disponer del mismo auge en las herramientas matemáticas necesarias, y apenas empezaron a proporcionar explicaciones causales y fenomenológicas de los mecanismos subyacentes que se observaban. A partir del S.XX la Física y la Matemática, consciente de las limitaciones de las herramientas disponibles, cambia de enfoque y, en un intento de tratar con problemas de dimensionalidad más alta, idea métodos analíticos para tratar con miles de millones de variables por medio de la aplicación de técnicas provenientes de la **Teoría de la Probabilidad**, lo que provoca la creación de la **Mecánica Estadística**. Con esta nueva herramienta en la mano es el momento de tratar problemas de **complejidad desorganizada** (siguiendo la nomenclatura de Weaver). ![](.\img\manyparticle.gif align="left" width=350px) ¿Qué diferencia hay entre estas dos aproximaciones? Las herramientas del S.XIX eran adecuadas para analizar y predecir el movimiento de una partícula en un entorno simple (pensemos en los típicos problemas de dinámica newtoniana, por ejemplo). Con una mayor destreza en su uso, estas herramientas son capaces de analizar un conjunto pequeño de partículas, pero si aumentamos ligeramente el número de ellas (incluso apenas a un puñado) el problema acaba siendo inmanejable desde un punto de vista técnico (no por su dificultad teórica), convirtiéndose en un problema intratable desde el punto de vista práctico. Sin embargo, si imaginamos un conjunto con millones de partículas, la gran sorpresa es que algunas partes del problema se vuelven abordables si se usan las herramientas estadísticas desarrolladas en el S.XX. Estas nuevas herramientas no son capaces de detallar el comportamiento de una partícula específica de ese conjunto inmenso, pero pueden responder a otro tipo de importantes preguntas que con las herramientas anteriores no se podían enfrentar, por ejemplo: ¿cuál será el recorrido en promedio que hará una partícula antes de chocar con otra?, ¿cuántas partículas atraviesan en cada unidad de tiempo una cierta frontera del espacio?, ¿cuántos impactos (en media) por segundo experimenta una partícula? Este tipo de preguntas caen dentro de la **complejidad desorganizada**, es decir, cuando existen un gran número de variables y, además, cada una de ellas tiene un comportamiento individual errático, relativamente independiente, e incluso totalmente desconocido. ![](.\img\accidente.jpg align="right") Al contrario de lo que sucede con las herramientas de la simplicidad, gracias a las leyes de los grandes números, estas nuevas herramientas estadísticas incrementan su precisión cuando el número de variables crece. Además, su aplicación va más allá de la dinámica de partículas de física, por ejemplo, aunque una empresa de seguros de coches no puede saber cuándo va a tener un accidente una persona determinada, tiene un conocimiento bastante preciso sobre la distribución de accidentes de los conductores en general, que depende de la frecuencia media con la que suceden según las características del tomador del seguro y de su vehículo, y gracias a este conocimiento puede establecer sus primas de manera que tenga estabilidad financiera y no quiebre por tener que hacer efectivas las pólizas suscritas por acumular demasiados siniestros (en realidad, pone las primas para asegurarse unas ganancias cuantiosas). Pero entre la simplicidad y la complejidad desorganizada queda un territorio muy amplio por explorar, y donde se encuentran muchísimos de los problemas más interesantes que se pueden enfrentar desde la Ciencia. La importancia de esta región no es tanto la dimensionalidad del número de variables involucradas (que frecuentemente es alta, pero no en exceso), sino que en estas variables existe una forma de organización parcial que permite observar una estructura que, lejos de ser caótica, establece relaciones que convierten un problema de complejidad desorganizada en uno de **complejidad organizada**. La diferencia es muy sutil, pues si las relaciones son tan fuertes que permiten expresar todo el sistema de variables a partir de unas pocas, el problema dejará de ser complejo para convertirse en un problema complicado (y abordable por técnicas reduccionistas de nuevo, es decir, un problema de simplicidad). ![](.\img\bolsa.gif align="right" width=50%)Aunque este tipo de problemas se reconoce inicialmente en campos como la Biología (hay una gran diferencia entre la organización presente en las partículas de un gas y la presente en las células de un organismo), con el tiempo se reconocen problemas similares en muchos otros campos. Por ejemplo, a mediados del S.XX aparecen ya preguntas similares en la Economía: ¿de qué depende el precio de un determinado producto?, ¿cómo se puede estabilizar la cotización de un cierto activo de la bolsa?, ¿hasta qué punto es predecible el mercado bajo la interacción libre de la oferta y la demanda en un mercado?. Estos problemas obviamente son complejos, mucho más que analizar el comportamiento de una partícula en el espacio, pero implican analizar los sistemas como un todo estructurado, en el que encontramos partes íntimamente interrelacionadas, y no con tanta independencia como en el caso de sistemas de partículas desorganizadas. Estos problemas y muchos otros de la biología, la medicina, la psicología, la economía o la política son demasiado complicados para las técnicas de la simplicidad del S.XIX, pero tampoco pueden ser tratados adecuadamente mediante los métodos estadísticos del S.XX. Hace falta pues, desarrollar un conjunto de técnicas completamente nuevo para tratar con ellos, y es el nuevo objetivo al que se ha dedicado parte de la Ciencia en los últimos 50-70 años. Un breve espacio de tiempo para la Ciencia, por lo que el camino por recorrer en esta dirección es aún largo y habrá que esperar años para disponer de un repertorio de herramientas maduro y cohesionado. !!!Def:Vías de estudio de la Complejidad Organizda En este tiempo, los desarrollos para estudiar este nuevo territorio de complejidad organizada se han venido haciendo mediante dos vías: 1. A través de los desarrollos teóricos sobre los Sistemas Complejos, Sistemas Caóticos, Fractales, Sistemas Dinámicos, Sistemas con Incertidumbre y Teoría de la Información. Es la razón por la que introducimos aquí un capítulo de Sistemas Complejos. 2. A través de la exploración computacional. Los dispositivos de cómputo se han convertido en las grandes herramientas que están permitiendo lidiar cada vez mejor con la complejidad organizada. Con una velocidad y memoria crecientes, pueden llevar a cabo cálculos de una enorme complejidad que permiten tratar problemas que son demasiado complicados para las técnicas anteriores, manteniendo un equilibrio entre las técnicas de exploración individualizadas que aporta la aproximación simplista, y la escalabilidad que aportan las técnicas de complejidad desorganizada. Si, como puede comprobarse a través de la historia, la Ciencia necesita cada vez más datos para dar soporte a sus teorías, podemos asegurar que sin la computación la Ciencia habría tenido grandes dificultades para avanzar. Y dentro de la computación tenemos, por una parte, **los dispositivos** (ordenadores de todo tipo), que se convierten en la herramienta y, por otra parte, **los procesos de modelado y simulación**, que se convierten en la técnica necesaria para su uso. Muchos de estos problemas son los que hemos planteado como esenciales y fundamentales dentro de la IA, donde muchos de los problemas planteados parecen ocupar esa región, intermedia y difusa, que caracteriza la complejidad organizada, y donde la inteligencia (natural o artificial) parece ser un representante claro de característica que precisa de un sistema complejo para emerger. En el resto del capítulo haremos una breve introducción a los Sistemas Complejos, destacando sus características fenomenológicas más aparentes, y nos centraremos en una de sus posibles vías de modelado, las Redes Complejas. Dejamos fuera partes esenciales de la Ciencia que se han desarrollado para abordar este tipo de complejidad, como son los Sistemas Dinámicos y áreas asociadas al tratamiento de las Ecuaciones Diferenciales o la Mecánica Estadística, ya que sería inabordable una aproximación mínimamente coherente de ellos en los tiempos que tiene asignada la asignatura. # Sistemas ![](./img/system1.png align="left")Un **sistema** *es una entidad con límites y con partes interrelacionadas e interdependientes*. En consecuencia, para que el comportamiento de un sistema esté adecuadamente descrito, es necesario conocer, además de sus elementos, las interacciones o relaciones entre ellos. Pero no sólo eso: también se requiere saber sus estados (los valores instantáneos de todos los elementos) y sus transiciones (los cambios dinámicos de esos estados). En otras palabras, se deben describir tanto la **estructura** (lo que es el sistema) como la **función** (lo que hace el sistema). Un sistema es algo más (y algo menos) que la simple suma de sus elementos constitutivos. Por un lado, emergen propiedades nuevas que no pueden atribuirse a ninguno de sus elementos de forma independiente (por ejemplo, piénsese en la funcionalidad completa de un automóvil, donde ningunas de sus partes es responsable del comportamiento completo del vehículo). Y, por otra parte, en los más elaborados se reprimen o inhiben algunas de sus propiedades intrínsecas (por ejemplo, la capacidad de reacción y autoregulación de un órgano de un ser vivo). Existen muchos ejemplos de ello, pero por destacar algunos podemos indicar: los cardúmenes (o bancos de peces), los enjambres de insectos, y las manadas de algunos animales se comportan -como conjunto- de manera distinta a como lo hacen sus individuos componentes; una neurona por sí misma no posee ningún tipo de inteligencia, pero miles de millones de ellas interactuando entre sí pueden originar una mente, algo totalmente diferente a una simple agrupación espacial de neuronas. Este comportamiento surge únicamente cuando el sistema se considera como un todo, como algo global y colectivo, y cuando existen relaciones internas que van más allá de la simple coexistencia en el mismo conjunto (un gas es una agregación de moléculas, como un cerebro es una agregación de neuronas, pero las relaciones existentes entre las moléculas del gas no son suficientemente ricas como para emerger una funcionalidad nueva en el gas completo). !!!Def: Clasificación de Sistemas Existe una clasificación heterogénea de los sistemas atendiendo a diferentes perspectivas: - Dado que **todo sistema se encuentra inmerso en un medio ambiente**, en general, éste va a afectar tanto a su funcionamiento como a su rendimiento. Para medir, en cierta forma, esta influencia o interacción aparece el concepto de **permeabilidad**. Los sistemas escasamente permeables (es decir, aquellos que no intercambian o intercambian poca materia, energía o información con el entorno) se conocen con el nombre de **sistemas cerrados**. Por el contrario, los sistemas de permeabilidad alta son los que presentan mucha interacción con el medio ambiente y se denominan **sistemas abiertos**. Entre estos dos extremos existe toda una gama de diferentes grados de permeabilidad. - Asimismo, y dentro de la categoría de sistemas abiertos, están aquellos que son influidos pasivamente por el medio ambiente, llamados **no adaptativos**, y los que reaccionan y se adaptan al entorno, llamados **adaptativos**. - Los sistemas también pueden dividirse en **dinámicos** y **estáticos**, según modifiquen o no su estado interno a medida que transcurre el tiempo. Un sistema particular que, a pesar de estar inmerso en un entorno cambiante, mantiene su estado interno, se llama **homeostático**. Los sistemas altamente homeostáticos siguen las transformaciones del contexto a través de ajustes estructurales internos. No obstante, si el sistema no puede acomodarse al *esfuerzo tensional* (estrés) que padecen por parte del medio ambiente -modificando su estructura o su función- puede transformarse o deteriorarse parcial o totalmente, temporal o permanentemente. La resistencia de un sistema al estrés, **resiliencia**, depende tanto de su estructura como de su función. Existe toda un área de trabajo dedicada al estudio de los sistemas desde un punto de vista general y abstracto, y que mezcla conceptos provenientes de Sociología, Psicología, Filosofía y ciencias más experimentales (como Física, Química y Biología) que es la conocida como **Teoría General de Sistemas** [#Bertalanffy68], [#Luhmann13]. ## Sistemas caóticos Durante el siglo pasado, los científicos clasificaban a los sistemas según su grado de predictibilidad. Así, un sistema es **determinista** cuando su comportamiento inmediato es predecible, determinado por las condiciones previas, y es **probabilístico** (**estocástico**) cuando no hay certeza de su estado futuro, sólo una probabilidad en su comportamiento. No obstante, esta clasificación ha sufrido severos embates durante el último medio siglo. Por ejemplo, se descubrió que muchos sistemas dinámicos no lineales se comportan, en ciertas condiciones, de forma tan compleja que parecen probabilísticos, aunque, en realidad, son deterministas. En otras palabras, a pesar de que las reglas (a nivel local) son muy simples, el sistema (a nivel global) puede tener un comportamiento inesperado, no predecible. Se trata de un **sistema caótico** [#Devaney03]. ![](./img/animated-lorenz-attractor.gif align="right")Una de las singularidades que caracterizan a los sistemas caóticos es que **dependen sensiblemente de las condiciones iniciales**. Un insignificante cambio en las condiciones iniciales se amplifica y propaga exponencialmente a lo largo del sistema y es capaz de desencadenar, a futuro, un comportamiento totalmente diferente. Es decir, configuraciones iniciales casi idénticas, sometidas a influencias externas casi iguales, acaban transformándose en configuraciones finales absolutamente distintas. Y es este el motivo por el cual es prácticamente imposible hacer una predicción del estado final de estos sistemas complejos. Sin embargo, el caos no es más que un desorden solamente en apariencia, tiene muy poco que ver con el azar. Aunque parecen evolucionar de forma aleatoria y errática, estos sistemas tienen en realidad un orden interno subyacente. Por eso, aun cuando son impredecibles, también son deterministas. Esto significa que su estado futuro está determinado por su estado actual y obedece estrictas leyes de evolución dinámica. Pero estos sistemas son tan irregulares que jamás repiten su comportamiento pasado, ni siquiera de manera aproximada. Por ejemplo, y aún cuando se conozcan con gran precisión las ecuaciones meteorológicas y se puedan medir las variables críticas (temperatura, humedad, presión, masa y velocidad del viento), es muy difícil predecir con exactitud las variaciones climáticas más allá de un cierto tiempo posterior. Otros sistemas caóticos lo constituyen los fluidos en régimen turbulento, la dinámica de la atmósfera, las reacciones químicas, la propagación de enfermedades infecciosas, los procesos metabólicos de las células, el mercado financiero mundial, los movimientos de grupos animales (cardúmenes o enjambres), la aparición aperiódica de epidemias, la arritmia del corazón, la red neuronal del cerebro humano, etc. El caos parece formar parte de la estructura misma de la materia y está muy ligado a los fenómenos de auto-organización, ya que el sistema puede saltar espontánea y recurrentemente desde un estado hacia otro de mayor complejidad y organización. Un ejemplo típico es el agua que se desliza a través de una canilla en un goteo desordenado y, súbitamente, forma un chorro ordenado. Estos sistemas se caracterizan por su flexibilidad y adaptación (y, en consecuencia, por su estabilidad), lo cual les permite enfrentar las condiciones cambiantes e impredecibles del entorno. Operan bajo una extensa gama de condiciones, ya que parecen estar formados por una compleja estructura de muchos estados ordenados, aunque normalmente ninguno de ellos se impone sobre los demás (a diferencia de un sistema ordenado, que presenta un único comportamiento dominante). Por lo tanto, se puede controlar su evolución con ínfimas correcciones, a fin de forzar la repetición de ciertas trayectorias. En otras palabras, con la perturbación adecuada, se les puede obligar a que tomen uno de los muchos posibles comportamientos ordenados. En este principio se ha basado toda la Teoría del Control de Ingeniería desarrollada desde mediados del siglo pasado. ## Sistemas Complejos Los sistemas complejos se caracterizan fundamentalmente porque su comportamiento es imprevisible. Sin embargo, **complejo no es sinónimo de complicado**: este último hace referencia a algo enmarañado, enredado, de difícil comprensión, pero donde el comportamiento del sistema se deduce por mecanismos simplistas de sus elementos componentes. !!!Def: Sistemas Complejos ![](./img/system2.png align="right" width="50%")En realidad, y por el momento, *no existe una definición precisa y absolutamente aceptada de lo que es un Sistema Complejo*, pero pueden darse algunas peculiaridades comunes [#Bar-Yam02] que se observan en la multitud de ejemplos que se analizan desde todos los ángulos del conocimiento (damos, pues, una aproximación **fenomenológica**): - En primer lugar, **está compuesto por una gran cantidad de elementos relativamente idénticos**. Por ejemplo, las células en un organismo, o las personas en una sociedad. - En segundo lugar, **la interacción entre sus elementos es local** y origina un comportamiento emergente que no puede explicarse a partir de dichos elementos tomados aisladamente. Un desierto puede contener billones de granos de arena, pero sus interacciones son excesivamente simples comparadas con las que se observan en las abejas de un enjambre. - Por último, es **muy difícil predecir su evolución dinámica futura**; o sea, es prácticamente imposible vaticinar lo que ocurrirá más allá de un cierto horizonte temporal. En la naturaleza se pueden encontrar una gran cantidad de ejemplos de sistemas complejos que se extienden desde la Física hasta la Neurología, desde la Economía hasta la Biología Molecular, desde la Sociología hasta las Matemáticas. Por ese motivo, esta clase de sistemas no constituye un caso raro ni excepcional sino que se manifiesta en la inmensa mayoría de los fenómenos que se observan a diario. Sin embargo, y a pesar de su gran diversidad y abundancia, se pueden identificar conductas dinámicas genéricas, no importa su naturaleza (física, química, biológica o social), entre las que podemos destacar las leyes de crecimiento, la auto-organización y los procesos colectivos emergentes. Como ejemplos de sistemas complejos se pueden mencionar -entre otros- una célula, un cerebro, un organismo, un ecosistema, una sociedad de insectos, un sistema inmunológico o una economía de mercado. Como hemos visto, aunque con las herramientas actuales no es posible analizar matemáticamente la evolución de muchos de estos sistemas, pueden ser explorados por medios computacionales. Desde el punto de vista computacional, estos sistemas son **irreducibles**, es decir, la única forma de estudiar su evolución es mediante la observación directa. Por ello, para su estudio *en laboratorio* se pueden emplear sistemas computacionales en donde se simulan sus componentes, sus conexiones y sus interacciones, observándose la dinámica emergente. ### Auto-organización La mayoría de los sistemas complejos son inestables, se mantienen delicadamente equilibrados. Cualquier variación mínima entre sus elementos componentes puede modificar, de forma imprevisible, las interrelaciones y, por lo tanto, el comportamiento de todo el sistema. Así, la evolución de esta clase de sistemas se caracteriza por la **fluctuación**, situación en la que el orden y el desorden se alternan constantemente. Sus estados evolutivos no transcurren a través de procesos continuos y graduales, sino que suceden por medio de reorganizaciones y saltos. Cada nuevo estado es sólo una transición, un período de *reposo entrópico*, en palabras del Premio Nobel ruso-belga Ilya Prigogine [#Prigogine80]. Estos sistemas nunca llegan a un óptimo global, al estado de mínima energía. En general, crecen progresivamente hasta que llegan al límite de su desarrollo potencial. En ese instante, sufren un desorden, una especie de ruptura que induce una fragmentación del orden pre-existente. Pero después, comienzan a surgir regularidades que organizan al sistema de acuerdo con nuevas leyes, produciendo otra clase de desarrollo. Este comportamiento es típico en los sistemas naturales: por ejemplo, el tránsito en los insectos del huevo a la larva y de ésta a la crisálida. En consecuencia, la organización de los sistemas complejos se da en diferentes niveles. Las leyes que gobiernan la causalidad de un nivel pueden ser totalmente diferentes a las de un nivel superior. Cuando esta transformación se consigue sin que intervengan factores externos al sistema, se dice que el sistema ha sufrido una **auto-organización** [#Bak96]. ![](img/system3.png) Los sistemas auto-organizados se mantienen dentro del estrecho dominio que oscila entre el orden inmutable y el desorden total, y muy a menudo se dan de forma repentina bajo cambios mínimos de alguno de los parámetros que intervienen en el modelado de las condiciones del sistema. Es lo que se conoce como **transiciones de fase** (que podemos observar también en sistemas caóticos más simples, como las transiciones de estados en el agua, pasando repentinamente de estado gaseoso a líquido, o de líquido a sólido), o como lo llama Christopher Langton [#Langton98], el **borde del caos**. Parece ser que, a menudo, es en esta delgada franja de cambios en donde se encuentran los fenómenos más complejos de este tipo de sistemas. Es en estos estrechos límites donde podemos observar auto-organizaciones como la vida, las organizaciones sociales y, muy posiblemente, donde aparecen los órdenes mentales que caracterizan la inteligencia. # Redes complejas ![](./img/redes1.jpg align="left" width="50%") Muchos sistemas se pueden describir adecuadamente a través de redes complejas cuyos **nodos representan los elementos** constitutivos del sistema y los **enlaces simbolizan las interacciones** entre ellos. En la actualidad, las **redes complejas** se estudian por su relación con muchos campos de la ciencia, y sin duda, muchos sistemas en la naturaleza se pueden describir por medio de redes complejas, que topológicamente son **grafos** (estructuras matemáticas formadas por **nodos**, o vértices, conectados por **enlaces**, o aristas) a los que se agregan algunas características dinámicas que hacen necesario estudiarlos desde varios puntos de vista. Los ejemplos de la presencia de las redes complejas en la vida real son numerosos; por ejemplo, Internet es una red de routers o dominios conectados por líneas físicas, la World Wide Web es una red de sitios web conectados por hiperenlaces, el cerebro es una red de neuronas conectados por medio de las sinapsis, una organización es una red de personas con diversos tipos de conexiones entre ellas, la economía mundial es una red formada por las economías nacionales, que a su vez son redes de mercados, y éstos son redes de productores y consumidores que interactúan, las redes alimentarias y las rutas metabólicas pueden ser representadas por redes, así como las relaciones (semánticas o sintácticas) entre las palabras de un idioma, los temas en una conversación, e incluso las estrategias para resolver un problema matemático o las redes culturales en las que se mueven los objetos e ideas generadas por el hombre. Hasta aquí nos quedaríamos con la representación de estos sistemas por medio de la estructura de grafo matemático, pero si consideramos por ejemplo las enfermedades que se transmiten a través de redes sociales, los virus informáticos que en ocasiones se extienden a través de la Internet, o la energía que se distribuye a través de las redes de transporte, nos damos cuenta de que, junto a esa **estructura organizativa en forma de grafo** es importante conocer la **dinámica** que se produce en el flujo de información a través de ella, o incluso la dinámica que se puede producir en la **evolución temporal** de dicha estructura, que a menudo no es fija ni en el conjunto de nodos que interviene ni en las conexiones que se producen entre ellos. ![](./img/redes2.jpg align="left" width="40%") La **ubicuidad de las redes complejas**, es decir, su aparición con características similares en muchas áreas de conocimiento, ha llevado de forma natural al establecimiento de un conjunto de problemas de investigación comunes e importantes en todas esas áreas, relativos a la forma en que la propia estructura de la red facilita y limita los comportamientos dinámicos de la misma y que, en gran medida, han sido descuidados en los estudios de las disciplinas tradicionales, posiblemente por la ausencia de una teoría matemática que permitiera abordarlos y la incapacidad técnica de almacenar y manipular las grandes cantidades de datos asociadas a cada una de esas redes. Algunas de estas preguntas para redes concretas son: ¿cómo interviene la estructura de las redes sociales en la transmisión de una enfermedad? ¿Cómo se propagan fallos en cascada a través de una red de transmisión de energía o de una red financiera global? ¿Cuál es la arquitectura más eficiente y robusta para una organización particular bajo un entorno cambiante e incierto? ![](./img/ep58.jpg align="right" width="25%")Durante más de un siglo, el modelado de muchos de estos procesos y sistemas se ha realizado bajo la suposición implícita de que los patrones de interacción entre los elementos del sistema podían ser representados por medio de una estructura regular al estilo de un retículo euclídeo. A finales de 1950, dos matemáticos, **Erdös** y **Rényi** (ER), hicieron un gran avance en la teoría matemática clásica de grafos que revolucionaría la forma en que se pueden modelar estos problemas describiendo una red con topología compleja por medio de un grafo aleatorio, estableciendo los fundamentos de la **teoría de redes aleatorias**. Aunque la intuición indica claramente que muchas redes complejas de la vida real no son ni totalmente regulares ni completamente aleatorias, el modelo ER fue el único enfoque sensato y riguroso que dominó el pensamiento de los científicos acerca de las redes complejas durante la segunda mitad del siglo XX. En los últimos años, gracias a la automatización del proceso de adquisición de datos y a las herramientas computacionales generadas para el tratamiento posterior de estos datos, se tiene capacidad para trabajar sobre grandes bases de datos relativas a muchas y variadas redes complejas. Además, el acceso público a esta enorme cantidad de datos ha estimulado un gran interés por tratar de descubrir las propiedades genéricas de los diferentes tipos de redes complejas a las que podemos acceder. En este sentido, los descubrimientos del **efecto de mundo pequeño** y la característica de **libre de escala** de la mayoría de las redes complejas han sido especialmente significativos y supusieron un avance más en el estudio de estas redes. ![](./img/DuncanWatts.jpg align="left" width="25%")En 1998, con el fin de describir la transición de una red regular en una red aleatoria, **Watts** y **Strogatz** (WS) introdujeron el concepto de **red de mundo pequeño**. Debe notarse que el fenómeno de mundo pequeño es de hecho muy común, y nada alejado de nuestras experiencias diarias. A menudo, poco después de conocer a un extraño, uno se sorprende al descubrir que tenemos un amigo común con él, de modo que es habitual la expresión: *¡Qué pequeño es el mundo!*. Un experimento que se realizó hace más de 40 años dio lugar al llamado *principio de los seis grados de separación*, sugerido por el psicólogo social **Milgram** a finales de 1960, y que establece que entre cualesquiera dos personas del mundo hay una media de 6 conexiones de amistad, independientemente de lo lejanas que estén dichas personas. Aunque este punto sigue siendo controvertido, el patrón del mundo pequeño ha demostrado estar presente en muchas redes reales. Una característica importante y común al modelo de redes aleatorias (ER) y al de mundo pequeño (WS) es que la función de distribución de grados tiene un máximo en el valor medio del grado y decae exponencialmente, lo que quiera decir que casi todos los nodos de la red tienen el mismo número de conexiones. Por ello, es común denominar a estos tipos de redes de manera conjunta como **redes exponenciales** o **redes homogéneas**. ![](./img/Barabasi3.jpg align="right" width="15%") Otro descubrimiento fundamental en el ámbito de las redes complejas, y que supuso un hito al reconocer de qué forma podíamos enfrentarnos a ellas, fue la observación de que muchas son **libres de escala**, es decir, la función de distribución de grados sigue una ley de potencias. A diferencia de una red exponencial, una red libre de escala es **no homogénea**: la mayoría de los nodos tienen muy pocas conexiones y, hay unos pocos nodos que tienen muchas, de forma que los nodos no se agrupan alrededor de un valor medio característico. ## Algunos conceptos básicos Aunque se han propuesto e investigado en las últimas décadas muchas **medidas cuantitativas** de redes complejas, hay tres conceptos clásicos que juegan un papel clave: * la **longitud media de los caminos**, * el **coeficiente de clustering**, y * la **distribución de grados**. Debido a la imposibilidad de manejar la información de las redes de una forma individual para los nodos, era necesario definir algunas medidas globales que permitieran caracterizar las redes con el fin de poder comparar la similitud entre ellas, así como la adecuación de los diversos modelos matemáticos con las redes reales que pretende modelar. De hecho, el intento inicial de Watts y Strogatz en su trabajo de redes de mundo pequeño fue la construcción de un nuevo modelo matemático que permitiera construir redes con longitudes medias de caminos pequeñas, tal y como ocurre en los grafos aleatorios, y que tuvieran un coeficiente de clustering relativamente alto, como ocurre con las redes regulares. Por otro lado, la generación de modelos que crean redes libres de escala se basa en la observación de que las distribuciones de grado de muchas redes reales siguen una forma similar a una ley de potencias. Ha de indicarse que, debido a la alta complejidad de las redes reales, no se han encontrado todavía caracterizaciones completas de las mismas, es decir, en la actualidad todavía **no disponemos de un conjunto de medibles que caractericen por completo a cada red** (algo así como un código genético que nos permita con absoluta precisión establecer comparaciones entre ellas). ## Longitud promedio de los caminos !!!Def: Distancia, Diámetro y Longitud Promedio ![](./img/networkmindist.gif align="right" width="25%") El conjunto de definiciones relacionadas con la medición de distancias internas que necesitamos son: - La **distancia** $d_{ij}$ entre dos nodos ($i$ y $j$) se define como **el número de enlaces del camino más corto que los conecta**. - El **diámetro**, $D$, de la red se define como **la máxima distancia entre cualesquiera par de nodos de la red**. - La **longitud promedio**, $L$, se define como **la media de las distancias entre todos los pares de nodos**, es decir, la separación típica entre pares de nodos. A medida que se tenían más datos de redes complejas reales se constató que la longitud promedio de los caminos de la mayoría de ellas era relativamente pequeña, incluso en los casos en los que estos tipos de redes tuvieran muchos menos enlaces de los posibles que se podrían dar (a menor cantidad de conexiones en el mundo, parece claro que haya que hacer recorridos más largos para poder llegar de un nodo a otro). Esta característica es lo que se llamó **efecto de mundo pequeño**, y de ahí el nombre de redes de mundo pequeño que intentan modelarlo. ## Distribución de Grados La más simple, y quizás también la más usada, característica individual de un nodo es su **grado**. !!!Def:Grado, Grado Medio y Distribución de Grados El grado, $k_i$, de un nodo $i$ se define generalmente como **el número total de sus conexiones**. El promedio de los grados de los nodos de una red se llama **grado medio de la red**, y se denota por $\bar{k}$. La **distribución de grados** de los nodos en una red viene dado por la función de distribución $P(k)$, que es **la probabilidad de que un nodo seleccionado al azar tenga exactamente $k$ enlaces**. Una red regular tiene una distribución de grados muy simple, porque todos los nodos tienen el mismo número de enlaces, por lo que su gráfica vendría representada por una distribución de tipo delta (es decir, la función se anula para todos los posibles grados, menos para el grado que tienen todos sus nodos, donde se alcanza el valor $1$). Cualquier aleatoriedad en la red ampliará la forma de este pico, y en el caso límite de una red completamente aleatoria, la distribución de grados sigue una **distribución de Poisson**, donde la forma de la distribución cae de manera exponencial a medida que nos alejamos del valor máximo, $\bar{k}$. Debido a este descenso exponencial, la probabilidad de encontrar un nodo con $k$ enlaces se convierte en insignificante para $k>>\bar{k}$. En los últimos años, muchos resultados empíricos muestran que en la mayoría de las redes reales de gran escala el grado de distribución se desvía significativamente de la distribución de Poisson. En particular, para muchas redes el grado de distribución se describe mucho mejor por una ley de potencias de la forma $P(k)\sim k^{-\gamma}$. Esta distribución cae de forma más gradual que una exponencial, lo que permite la existencia de algunos nodos de grado muy alto. Debido a que estas leyes de potencia no se concentran alrededor de una media (escala), es por lo que se llaman **libres de escala**. ## Coeficiente de Clustering ![](./img/220px-Clustering_coefficient_example.svg.png align="right" width="12%") En tu red de amigos es muy posible que los amigos de tus amigos sean también amigos tuyos. Esta propiedad se refiere a la **agrupación** (o **clustering,** por su nombre en inglés) de la red. Más precisamente, podemos definir un **coeficiente de clustering**, $C$, como **la proporción media de pares de vecinos de un nodo que también son vecinos entre sí**: !!!def:Coeficiente de Clustering Supongamos que un nodo $i$ de la red tiene $k_i$ vecinos (o enlaces). Es evidente que, a lo sumo, pueden existir $k_i(k_i−1)/2$ enlaces entre ellos (y esto solo ocurre si todos están conectados entre sí). El coeficiente de clustering, $C_i$, del nodo $i$ se define entonces como la proporción entre, $E_i$, el número de enlaces que de verdad existen entre los vecinos de $i$, y la máxima cantidad posible, es decir: $$C_i=\frac{E_i}{k_i(k_i−1)/2}$$ El **coeficiente de clustering de la red** será la media de los coeficientes de clustering de todos sus nodos. Obviamente, $C\leq 1$ y solo tomará el valor $1$ en el caso de que la red sea completa (es decir, aquella que tiene todas las posibles conexiones entre todos sus nodos). En una red completamente aleatoria de $N$ nodos se puede probar que $C\sim 1/N$, un valor que sería muy pequeño en la mayoría de las redes reales, que tienen un número muy elevado de nodos. Sin embargo, se ha constatado numéricamente que la mayoría de las redes reales tienen tendencia a la agrupación, en el sentido de que sus coeficientes de clustering son mucho mayores que $O(1/N)$, a pesar de ser significativamente menores que $1$, de donde podemos inferir que la mayoría de las **redes complejas reales no son ni aleatorias ni completas**. ## Modelos de Redes Complejas Medir algunas propiedades básicas de una red compleja, como las que hemos definido en el apartado anterior, es el primer paso para comprender su estructura. El siguiente paso es, entonces, desarrollar un modelo matemático de la red que proporcione una topología con propiedades estadísticas similares a las reales, obteniendo una plataforma en la que sea posible aplicar diversos métodos matemáticos para analizar comportamientos generales de redes similares. ### Redes regulares ![](./img/Complex_network_K6_complete_graph.png align="left" width="100px") Intuitivamente, una **red completa** tiene la menor longitud de camino promedio ($L=1$ ya que todos los nodos están conectados) y el mayor coeficiente de clustering ($C=1$). Aunque el modelo de red completa captura las propiedades de mundo pequeño y alto clustering de muchas redes reales, es fácil darse cuenta de sus limitaciones: una red completa con $N$ nodos tiene $N(N−1)/2$ enlaces, mientras que la mayoría de las redes reales de gran escala parecen tener un número de enlaces de orden $O(N)$ en lugar de $O(N^2)$. !!!Def: Redes Regulares ![](./img/Fig2a-regular.jpg align="left" width="80px") De forma menos extrema, podemos considerar las **redes regulares de grado $k$**, que son aquellas en las que todos los nodos tienen el mismo grado, que tienen una cantidad lineal de enlaces si $k < < N$, un alto coeficiente de clustering, y una longitud promedio alta. ### Redes aleatorias En el extremo opuesto del espectro de una red totalmente regular están las redes completamente aleatorias que, como notamos al principio de este texto, fueron estudiadas por Erdös y Rényi (ER) a finales de las década de los 50. !!!Def:Redes Aleatoria ER Supongamos que tenemos un gran número de nodos ($N>>1$) y que con una cierta probabilidad $p$ (la misma siempre), se conecta cada par de nodos con un enlace. El resultado es un grafo aleatorio ER con $N$ nodos y aproximadamente $pN(N−1)/2$ enlaces. ![](img/sci2figure4.17.jpg width=400px) El objetivo principal de la **teoría de redes aleatorias** es determinar para qué valores de $p$ aparecerán propiedades específicas en la red. Un resultado sorprendente que se obtuvo fue que algunas de las propiedades importantes podían aparecer de repente, es decir, que si poco a poco modificábamos el valor de $p$ las redes obtenidas verificaban esa propiedad, y de repente, para un intervalo muy pequeño de variación el comportamiento de las redes obtenidas era completamente distinto... es lo que se conoce como una transición de fase, en donde el cambio de la propiedad medida no es lineal en el cambio del parámetro. Por ejemplo, una propiedad de este tipo es la de la **conectividad global**, que se puede medir por medio del tamaño de la componente conexa más grande (la componente gigante): ER mostraron que si la probabilidad $p$ es superior a un determinado umbral, $p_c\sim(\ln N)/N$, prácticamente todo el grafo está conectado (se puede llegar de un nodo a otro por medio de los enlaces), y por debajo de dicho umbral la conectividad era sensiblemente inferior (casi desconectado), en contra de la intuición que parece decirnos que a medida que incrementamos la probabilidad de conexión, $p$, aumenta proporcionalmente la conectividad global de la red. ![](./img/random-network.gif align="right") El grado medio de una red aleatoria es $\bar{k}= p(n−1)\sim pN$, y la longitud del camino promedio es $L\sim \ln(N)/\bar{k}$, por lo que, debido a que $\ln N$ crece lentamente en función de $N$, la longitud del camino promedio se mantiene bastante bajo incluso en una red con muchos nodos. Este aumento logarítmico de la longitud del camino promedio con el tamaño de la red es un efecto típico de mundo pequeño. Por otro lado, en una red aleatoria el coeficiente de clustering es $C=p=\bar{k}/N << 1$, lo que significa que si tiene muchos nodos apenas mostrará clusterización. De hecho, como ya vimos en el apartado anterior, para un valor de $N$ muy grande, las redes aleatoria ER son redes casi homogéneas, donde la conectividad sigue aproximadamente una distribución de Poisson. ### Redes de Mundo Pequeño Como hemos comentado, las redes regulares tienen el efecto de clusterización, pero no el de mundo pequeño en general. Por otro lado, los grafos aleatorios muestran el efecto de mundo pequeño, pero no el de clusterización. Por tanto, no debe sorprendernos ver que ninguno de estos modelos reproduce algunas características importantes de muchas redes reales. Después de todo, la mayoría de las redes del mundo real no son ni enteramente regulares ni totalmente aleatorias. Con el fin de describir la transición de una red regular en una aleatoria y disponer de un modelo que mezcle las propiedades deseadas que tienen ambos modelos, Watts y Strogatz introdujeron un interesante **modelo de red de mundo pequeño**. !!!Def:Modelo Watts-Strogatz Las redes del modelo WS pueden ser generadas siguiendo el siguiente algoritmo: 1. Se comienza por una red regular de $N$ nodos. 2. Se selecciona cada enlace al azar con probabilidad $p$ y se reconecta uno de sus extremos con cualquiera de los otros nodos de la red. Este proceso introduce $pNK/2$ enlaces de largo alcance que conectan nodos que, de otra forma, estarían en diferentes vecindarios. Tanto el comportamiento del coeficiente de clustering, $C(p)$, como de la longitud del camino promedio, $L(p)$, pueden considerarse como una función de la probabilidad de reconexión, $p$. ![](img/pattern-nature-network-merl.jpg width="50%") Partiendo de un retículo regular en forma de anillo, sabemos que $C(0)\sim 3/4$, pero $L(0)\sim N/2K>>1$. Se ha comprobado que, para una pequeña probabilidad de reconexión, cuando las propiedades locales de la red son todavía casi las mismas que las de la red regular original, el coeficiente de cluesterización no difiere excesivamente, es decir, que $C(p)\sim C(0)$, pero que la longitud del camino promedio cae rápidamente y está en el mismo orden que el de las redes aleatorias, es decir, $L(p)>>L(0)$. Este resultado es bastante natural: por una parte, basta hacer varias reconexiones aleatorias para disminuir la longitud del camino promedio significativamente, pero por otra parte, unas pocas reconexiones no pueden cambiar de manera crucial el valor de clusterización local de la red. Este modelo de mundo pequeño (WS) también se puede ver como una red homogénea en la que todos los nodos tienen aproximadamente el mismo número de enlaces. En este sentido, es similar al modelo aleatorio ER. Se han realizado algunas variantes sobre la misma idea, una de ellas fue la propuesta por Newman y Watts, en la que no se rompen conexiones, sino que solo se añaden conexiones entre nodos lejanos con probabilidad $p$. Si $p=0$, tenemos la red original, y si $p=1$ se convierte en una red completa. El modelo NW es algo más fácil de analizar que el modelo de WS original, ya que no produce grupos aislados al mantener los enlaces originales. Para valores de $p$ suficientemente pequeños y $N$ suficientemente grandes, el modelo NW es esencialmente equivalente al modelo de WS. En la actualidad, estos dos modelos se denominan, comúnmente, **modelos de mundo pequeño**. Los modelos de mundo pequeño tienen sus raíces en las redes sociales no virtuales, donde la mayoría de la gente es amiga de sus vecinos físicos inmediatos, por ejemplo los vecinos en la misma calle o compañeros en la misma oficina. Por otro lado, muchas personas tienen un par de amigos que están lejos, en la distancia, como amigos de otros países, que están representados por las conexiones de largo alcance creadas por el procedimiento de reconexión que hemos visto. ### Modelos libres de escala Como hemos comentado, una característica común de las redes aleatorias y los modelos de mundo pequeño es que la distribución de grados es homogénea, con un pico en el valor promedio y con un decaimiento exponencial. Sin embargo, se ha comprobado que las redes complejas de gran tamaño son libres de escala y sus distribuciones de grado siguen una ley de potencias. Para explicar el posible origen de esta distribución de grados, Barabási y Albert (BA) propusieron otro modelo argumentando que muchos modelos actuales no tienen en cuenta dos atributos importantes de la mayoría de las redes reales: - Las redes reales son abiertas y tienen una dinámica que añade continuamente nuevos nodos a la red, pero los modelos vistos son estáticos en el sentido de que, si bien los enlaces se pueden añadir o reordenar, el número de nodos es constante durante todo el proceso de formación. - Tanto las redes aleatorias como los modelos de mundo pequeño suponen probabilidades uniformes en el momento de la creación de nuevos enlaces, algo que no es realista. Intuitivamente, las páginas web que ya tienen muchos enlaces (como la página de inicio de Google) tienen más probabilidad de adquirir aún más enlaces; un nuevo artículo es más propenso a citar un artículo ya reconocido, y por tanto éste será mucho más citado que otros menos reconocidos. ![](img/fig_complex_networks_powerlaw_scalefree_node_degree_distribution_large.png width=600px) El modelo BA sugiere que dos ingredientes principales de la auto-organización de una red en una estructura libre de escala son el **crecimiento** y **el enlace preferencial**. !!!def:Enlace Preferencial El esquema de generación de un modelo libre de escala por BA es el siguiente: 1. **Crecimiento**: comenzaremos con un número pequeño ($m_0$) de nodos; en cada unidad de tiempo, se introduce un nuevo nodo y se conecta a $m\leq m_0$ de los nodos ya existentes. 2. **Enlace preferencial**: La probabilidad, $p_i$, de que un nuevo nodo se conecte al nodo $i$ (uno de los nodos ya existentes) depende del grado, $k_i$, de éste: $p_i=\frac{k_i}{\sum_j k_j}$. Tras $t$ pasos, el algoritmo da como resultado una red con $N=t+m_0$ nodos y $m\cdot t$ enlaces, y se obtiene una red libre de escala: la forma de la distribución de grados no cambia con el tiempo, es decir, no cambia debido a un aumento de la escala de la red. La distribución de grados sigue una ley de potencias con exponente $-3$, es decir, la probabilidad de encontrar un nodo con $k$ enlaces es proporcional a $k^{−3}$. ![](img/scalefree.png width=500px) Los resultados numéricos muestran que, en comparación con una red aleatoria con el mismo número de nodos y el mismo grado medio, la longitud del camino promedio del modelo libre de escala es algo menor, y sin embargo el coeficiente de clustering es mucho mayor. Esto implica que la existencia de unos pocos nodos con grado alto desempeña un papel clave en acercar los nodos entre sí. El modelo BA es un modelo minimalista que captura los mecanismos responsables de la distribución de grados que sigue una ley de potencias, aunque tiene algunas limitaciones evidentes cuando se compara con algunas redes del mundo real, lo que ha provocado que se haya intensificado la búsqueda de otros modelos evolutivos que superen estas limitaciones. #### Vulnerabilidad de las redes libres de escala Un fenómeno interesante de las redes complejas libres de escala (y de muchas redes complejas en general) es su **robustez**. Vamos a ilustrarla por medio del siguiente caso: !!!Tip Vamos a suponer que comenzamos con una red grande y conectada, y que en cada unidad de tiempo eliminamos un nodo al azar (la eliminación del nodo implica la eliminación de todas sus conexiones, lo que altera algunos de los caminos entre los nodos restantes). Si había múltiples caminos entre dos nodos $i$ y $j$, la eliminación de uno de los nodos que forma parte de uno de esos caminos puede suponer que la distancia entre ellos, $d_{ij}$, se incrementará, lo que, a su vez, puede causar el aumento de la longitud del camino promedio de toda la red. En el peor de los casos, si inicialmente había un solo camino entre esos dos nodos, la interrupción de este camino en particular significaría que los dos nodos quedarían desconectados (pudiendo pasar de una red conexa a una formada por islas desconectadas entre sí). Se considera que **la conectividad de una red es robusta (o tolerante a borrados) si, tras la eliminación de muchos de sus nodos, sigue conteniendo una componente conexa gigante**. Las redes libres de escala verifican esta propiedad, mostrándose robustas frente a eliminaciones aleatorias. Sin embargo, la mala noticia es que la mayoría de las **redes libres de escala son muy sensibles a eliminaciones dirigidas**, no aleatorias, basta eliminar una proporción muy baja de nodos específicos (por ejemplo, aquellos de grado alto, los concentradores) para que la red quede completamente dividida y muy dispersa. Este último hecho indica que la red es muy **frágil**. Esta fragilidad tiene su raíz en la naturaleza extremadamente no homogénea de la distribución de grados de las redes libres de escala. # Conclusiones Las reglas que determinan la dinámica de un sistema complejo suelen ser simples, sin embargo predecir el comportamiento del sistema a largo plazo resulta casi imposible en la mayoría de las ocasiones. Es muy complicado obtener resultados teóricos sobre el modelo. Los científicos suelen utilizar algoritmos para aproximar la solución de estos sistemas, aunque a menudo tales algoritmos son poco eficientes o carecen de un tratamiento riguroso, de modo que la información que proporcionan es muy limitada. Por ello, en muchos casos la simulación por ordenador es la única forma de obtener progreso en la comprensión del fenómeno, ya que las herramientas de análisis matemático no son suficientes para explicar el fenómeno en cuestión. Pero la simulación por ordenador también se convierte en una forma de experimentar. Los datos y gráficas generados pueden proporcionar claves para entender el problema y ayudar en la búsqueda de resultados teóricos rigurosos, actuando así como generadores de intuiciones y comprensión cualitativa sobre el sistema que pueden servir de guía para encontrar pruebas matemáticas. # Referencias [#Bertalanffy68]: Ludwig von Bertalanffy. *General System Theory: Foundations, Development, Applications* New York: George Braziller. 1968. [#Luhmann13]: Niklas Luhmann. *Introduction to Systems Theory*, Polity. 2013. [#Bar-Yam02]: Bar-Yam, Yaneer. *General Features of Complex Systems*. Encyclopedia of Life Support Systems. 2002. [#Prigogine80]: Ilya Prigogine. *From Being to Becoming: Time and Complexity in the Physical Sciences.* W H Freeman & Co. 1980. [#Bak96]: Per Bak. How Nature Works: The Science of Self-Organized Criticality, Copernicus, New York. 1996. [#Langton98]: Christopher G Langton. Artificial life: an overview. MIT Press. ISBN 0-262-62112-6. 1998. [#Devaney03]: Devaney, Robert L. An Introduction to Chaotic Dynamical Systems (2nd ed.). Westview Press. ISBN 978-0-8133-4085-2. 2003. [#Strogatz00]: Strogatz, Steven. Nonlinear Dynamics and Chaos. Perseus Publishing. ISBN 978-0-7382-0453-6. 2000. [#Cohen10]: Reuven Cohen and Shlomo Havlin, Complex Networks: Structure, Robustness and Function, Cambridge University Press, ISBN 978-0-521-84156-6. 2010. [#Newman10]: Mark Newman, Networks: An Introduction, Oxford University Press, ISBN 978-0-19-920665-0. 2010. [#Dorogovtsev03]: S.N. Dorogovtsev and J.F.F. Mendes, Evolution of Networks: From biological networks to the Internet and WWW, Oxford University Press, ISBN 0-19-851590-1. 2003.