Complejidad
La complejidad caracteriza el comportamiento de un sistema o modelo cuyos componentes interactúan de múltiples maneras y siguen reglas locales, lo que conduce a la no linealidad, la aleatoriedad, la dinámica colectiva, la jerarquía y la emergencia.
El término generalmente se usa para caracterizar algo con muchas partes donde esas partes interactúan entre sí de múltiples maneras, culminando en un orden superior de emergencia mayor que la suma de sus partes. El estudio de estos enlaces complejos en varias escalas es el objetivo principal de la teoría de sistemas complejos.
La ciencia a partir de 2010 adopta una serie de enfoques para caracterizar la complejidad; Zayed et al. reflejan muchos de estos. Neil Johnson afirma que "incluso entre los científicos, no existe una definición única de complejidad, y la noción científica tradicionalmente se ha transmitido usando ejemplos particulares..." En última instancia, Johnson adopta la definición de "ciencia de la complejidad" como "el estudio de los fenómenos que emergen de una colección de objetos que interactúan".
Visión general
Las definiciones de complejidad a menudo dependen del concepto de "sistema": un conjunto de partes o elementos que tienen relaciones entre ellos diferenciadas de las relaciones con otros elementos fuera del régimen relacional. Muchas definiciones tienden a postular o asumir que la complejidad expresa una condición de numerosos elementos en un sistema y numerosas formas de relaciones entre los elementos. Sin embargo, lo que uno ve como complejo y lo que ve como simple es relativo y cambia con el tiempo.
Warren Weaver postuló en 1948 dos formas de complejidad: complejidad desorganizada y complejidad organizada. Los fenómenos de 'complejidad desorganizada' se tratan utilizando la teoría de la probabilidad y la mecánica estadística, mientras que la 'complejidad organizada' se ocupa de fenómenos que escapan a tales enfoques y se enfrentan a "tratar simultáneamente con un número considerable de factores que están interrelacionados en un todo orgánico". El artículo de Weaver de 1948 ha influido en el pensamiento posterior sobre la complejidad.
Los enfoques que incorporan conceptos de sistemas, elementos múltiples, regímenes relacionales múltiples y espacios de estado pueden resumirse como que la complejidad surge del número de regímenes relacionales distinguibles (y sus espacios de estado asociados) en un sistema definido.
Algunas definiciones se relacionan con la base algorítmica para la expresión de un fenómeno o modelo complejo o expresión matemática, como se establece más adelante en este documento.
Desorganizado vs organizado
Uno de los problemas al abordar cuestiones de complejidad ha sido formalizar la distinción conceptual intuitiva entre el gran número de variaciones en las relaciones existentes en las colecciones aleatorias y el número a veces grande, pero menor, de relaciones entre elementos en sistemas donde las restricciones (relacionadas con la correlación de por lo demás, elementos independientes) reducen simultáneamente las variaciones de la independencia de los elementos y crean regímenes distinguibles de relaciones o interacciones más uniformes o correlacionadas.
Weaver percibió y abordó este problema, al menos de manera preliminar, al establecer una distinción entre "complejidad desorganizada" y "complejidad organizada".
Desde el punto de vista de Weaver, la complejidad desorganizada resulta del sistema particular que tiene un gran número de partes, digamos millones de partes, o muchas más. Aunque las interacciones de las partes en una situación de "complejidad desorganizada" pueden verse como en gran medida aleatorias, las propiedades del sistema en su conjunto pueden entenderse mediante el uso de métodos estadísticos y de probabilidad.
Un buen ejemplo de complejidad desorganizada es un gas en un recipiente, con las moléculas de gas como partes. Algunos sugerirían que un sistema de complejidad desorganizada puede compararse con la (relativa) simplicidad de las órbitas planetarias; estas últimas pueden predecirse aplicando las leyes de movimiento de Newton. Por supuesto, la mayoría de los sistemas del mundo real, incluidas las órbitas planetarias, eventualmente se vuelven teóricamente impredecibles incluso usando la dinámica newtoniana; como lo descubrió la moderna teoría del caos.
La complejidad organizada, en opinión de Weaver, reside en nada más que la interacción no aleatoria o correlacionada entre las partes. Estas relaciones correlacionadas crean una estructura diferenciada que puede, como sistema, interactuar con otros sistemas. El sistema coordinado manifiesta propiedades que no llevan ni dictan las partes individuales. Se puede decir que el aspecto organizado de esta forma de complejidad frente a otros sistemas distintos del sistema sujeto "emerge", sin ninguna "mano guía".
El número de partes no tiene que ser muy grande para que un sistema en particular tenga propiedades emergentes. Un sistema de complejidad organizada puede entenderse en sus propiedades (comportamiento entre las propiedades) a través de modelado y simulación, particularmente modelado y simulación con computadoras. Un ejemplo de complejidad organizada es el barrio de una ciudad como mecanismo vivo, con la gente del barrio entre las partes del sistema.
Fuentes y factores
En general, existen reglas que se pueden invocar para explicar el origen de la complejidad en un sistema dado.
La fuente de la complejidad desorganizada es la gran cantidad de partes en el sistema de interés y la falta de correlación entre los elementos del sistema.
En el caso de los sistemas vivos autoorganizados, la complejidad organizada útilmente proviene de organismos mutados beneficiosamente seleccionados para sobrevivir por su entorno por su capacidad reproductiva diferencial o al menos por su éxito sobre materia inanimada u organismos complejos menos organizados. Véase, por ejemplo, el tratamiento de los ecosistemas de Robert Ulanowicz.
La complejidad de un objeto o sistema es una propiedad relativa. Por ejemplo, para muchas funciones (problemas), tal complejidad computacional como el tiempo de cálculo es menor cuando se usan máquinas de Turing de múltiples cintas que cuando se usan máquinas de Turing con una cinta. Las Máquinas de Acceso Aleatorio permiten disminuir aún más la complejidad del tiempo (Greenlaw y Hoover 1998: 226), mientras que las máquinas de Turing inductivas pueden disminuir incluso la clase de complejidad de una función, lenguaje o conjunto (Burgin 2005). Esto muestra que las herramientas de actividad pueden ser un factor importante de complejidad.
Significados variados
En varios campos científicos, "complejidad" tiene un significado preciso:
- En la teoría de la complejidad computacional se estudian las cantidades de recursos necesarios para la ejecución de algoritmos. Los tipos más populares de complejidad computacional son la complejidad temporal de un problema igual al número de pasos que se necesitan para resolver una instancia del problema en función del tamaño de la entrada (generalmente medido en bits), utilizando el método más eficiente. algoritmo, y la complejidad espacial de un problema igual al volumen de la memoria utilizada por el algoritmo (por ejemplo, celdas de la cinta) que se necesita para resolver una instancia del problema en función del tamaño de la entrada (generalmente medido en bits), utilizando el algoritmo más eficiente. Esto permite la clasificación de problemas computacionales por clase de complejidad (como P, NP, etc.). Manuel Blum desarrolló un enfoque axiomático de la complejidad computacional.
- En la teoría algorítmica de la información, la complejidad de Kolmogorov (también llamada complejidad descriptiva, complejidad algorítmica o entropía algorítmica) de una cadena es la longitud del programa binario más corto que genera esa cadena. La longitud mínima del mensaje es una aplicación práctica de este enfoque. Se estudian diferentes tipos de complejidad de Kolmogorov: la complejidad uniforme, la complejidad de prefijo, la complejidad monótona, la complejidad de Kolmogorov limitada en el tiempo y la complejidad de Kolmogorov limitada en el espacio. Mark Burgin introdujo un enfoque axiomático de la complejidad de Kolmogorov basado en los axiomas de Blum (Blum 1967) en el artículo presentado para su publicación por Andrey Kolmogorov.El enfoque axiomático abarca otros enfoques de la complejidad de Kolmogorov. Es posible tratar diferentes tipos de complejidad de Kolmogorov como casos particulares de complejidad de Kolmogorov generalizada definida axiomáticamente. En lugar de probar teoremas similares, como el teorema básico de invariancia, para cada medida en particular, es posible deducir fácilmente todos esos resultados de un teorema correspondiente probado en el entorno axiomático. Esta es una ventaja general del enfoque axiomático en matemáticas. El enfoque axiomático de la complejidad de Kolmogorov se desarrolló más en el libro (Burgin 2005) y se aplicó a las métricas de software (Burgin y Debnath, 2003; Debnath y Burgin, 2003).
- En la teoría de la información, la complejidad de la fluctuación de la información es la fluctuación de la información sobre la entropía de la información. Se deriva de las fluctuaciones en el predominio del orden y el caos en un sistema dinámico y se ha utilizado como medida de complejidad en muchos campos diversos.
- En el procesamiento de información, la complejidad es una medida del número total de propiedades transmitidas por un objeto y detectadas por un observador. Este conjunto de propiedades a menudo se denomina estado.
- En los sistemas físicos, la complejidad es una medida de la probabilidad del vector de estado del sistema. Esto no debe confundirse con la entropía; es una medida matemática distinta, una en la que dos estados distintos nunca se combinan y se consideran iguales, como se hace con la noción de entropía en la mecánica estadística.
- En los sistemas dinámicos, la complejidad estadística mide el tamaño del programa mínimo capaz de reproducir estadísticamente los patrones (configuraciones) contenidos en el conjunto de datos (secuencia). Mientras que la complejidad algorítmica implica una descripción determinista de un objeto (mide el contenido de información de una secuencia individual), la complejidad estadística, como la previsión de la complejidad,implica una descripción estadística y se refiere a un conjunto de secuencias generadas por una determinada fuente. Formalmente, la complejidad estadística reconstruye un modelo mínimo que comprende la colección de todas las historias que comparten un futuro probabilístico similar y mide la entropía de la distribución de probabilidad de los estados dentro de este modelo. Es una medida computable e independiente del observador basada únicamente en la dinámica interna del sistema, y ha sido utilizada en estudios de emergencia y autoorganización.
- En matemáticas, la complejidad de Krohn-Rhodes es un tema importante en el estudio de semigrupos finitos y autómatas.
- En la teoría de redes, la complejidad es el producto de la riqueza en las conexiones entre los componentes de un sistema, y se define por una distribución muy desigual de ciertas medidas (algunos elementos están muy conectados y otros muy pocos, ver red compleja).
- En ingeniería de software, la complejidad de la programación es una medida de las interacciones de los diversos elementos del software. Esto difiere de la complejidad computacional descrita anteriormente en que es una medida del diseño del software.
- En sentido abstracto, Complejidad abstracta, se basa en la percepción de estructuras visuales. Es la complejidad de una cadena binaria definida como un cuadrado de número de características dividido por el número de elementos (0 y 1). Las características comprenden aquí todos los arreglos distintivos de 0 y 1. Aunque el número de características tiene que ser siempre aproximado, la definición es precisa y cumple con el criterio intuitivo.
Otros campos introducen nociones de complejidad definidas con menos precisión:
- Un sistema adaptativo complejo tiene algunos o todos los siguientes atributos:
- El número de partes (y tipos de partes) en el sistema y el número de relaciones entre las partes no es trivial; sin embargo, no existe una regla general para separar "trivial" de "no trivial";
- El sistema tiene memoria o incluye retroalimentación;
- El sistema puede adaptarse según su historia o retroalimentación;
- Las relaciones entre el sistema y su entorno no son triviales ni lineales;
- El sistema puede verse influido por su entorno o puede adaptarse a él;
- El sistema es altamente sensible a las condiciones iniciales.
Estudiar
La complejidad siempre ha sido parte de nuestro entorno y, por lo tanto, muchos campos científicos se han ocupado de sistemas y fenómenos complejos. Desde una perspectiva, lo que es de alguna manera complejo (que muestra variaciones sin ser aleatorio) es más digno de interés dadas las recompensas que se encuentran en las profundidades de la exploración.
El uso del término complejo a menudo se confunde con el término complicado. En los sistemas actuales, esta es la diferencia entre la miríada de "tubos de estufa" que se conectan y las soluciones "integradas" efectivas. Esto significa que complejo es lo opuesto a independiente, mientras que complicado es lo opuesto a simple.
Si bien esto ha llevado a que algunos campos presenten definiciones específicas de complejidad, hay un movimiento más reciente para reagrupar las observaciones de diferentes campos para estudiar la complejidad en sí misma, ya sea que aparezca en hormigueros, cerebros humanos o sistemas económicos, sistemas sociales. Uno de esos grupos interdisciplinarios de campos son las teorías del orden relacional.
Temas
Comportamiento
A menudo se dice que el comportamiento de un sistema complejo se debe a la emergencia y la autoorganización. La teoría del caos ha investigado la sensibilidad de los sistemas a las variaciones en las condiciones iniciales como una de las causas del comportamiento complejo.
Mecanismos
Los desarrollos recientes en la vida artificial, la computación evolutiva y los algoritmos genéticos han llevado a un énfasis creciente en la complejidad y los sistemas adaptativos complejos.
Simulaciones
En ciencias sociales, el estudio sobre el surgimiento de macro-propiedades de las micro-propiedades, también conocido como visión macro-micro en sociología. El tema se reconoce comúnmente como la complejidad social que a menudo se relaciona con el uso de la simulación por computadora en las ciencias sociales, es decir, la sociología computacional.
Sistemas
La teoría de sistemas se ha ocupado durante mucho tiempo del estudio de sistemas complejos (en tiempos recientes, la teoría de la complejidad y los sistemas complejos también se han utilizado como nombres del campo). Estos sistemas están presentes en la investigación de una variedad de disciplinas, incluidas la biología, la economía, los estudios sociales y la tecnología. Recientemente, la complejidad se ha convertido en un dominio natural de interés de los sistemas sociocognitivos del mundo real y la investigación sistémica emergente. Los sistemas complejos tienden a ser de alta dimensión, no lineales y difíciles de modelar. En circunstancias específicas, pueden exhibir un comportamiento de baja dimensión.
Datos
En la teoría de la información, la teoría algorítmica de la información se ocupa de la complejidad de las cadenas de datos.
Las cadenas complejas son más difíciles de comprimir. Si bien la intuición nos dice que esto puede depender del códec utilizado para comprimir una cadena (teóricamente, se podría crear un códec en cualquier lenguaje arbitrario, incluido uno en el que el comando muy pequeño "X" podría hacer que la computadora emita una cadena muy complicada como "18995316"), cualquiera de los dos idiomas completos de Turing se puede implementar entre sí, lo que significa que la longitud de dos codificaciones en diferentes idiomas variará como máximo en la longitud del idioma de "traducción", que terminará siendo insignificante para suficientemente grandes cadenas de datos.
Estas medidas algorítmicas de complejidad tienden a asignar valores altos al ruido aleatorio. Sin embargo, aquellos que estudian sistemas complejos no considerarían la aleatoriedad como complejidad.
La entropía de la información también se usa a veces en la teoría de la información como indicativo de complejidad, pero la entropía también es alta para la aleatoriedad. La complejidad de la fluctuación de la información, las fluctuaciones de la información sobre la entropía, no considera que la aleatoriedad sea compleja y ha sido útil en muchas aplicaciones.
El trabajo reciente en el aprendizaje automático ha examinado la complejidad de los datos, ya que afecta el rendimiento de los algoritmos de clasificación supervisada. Ho y Basu presentan un conjunto de medidas de complejidad para problemas de clasificación binaria.
Las medidas de complejidad cubren ampliamente:
- las superposiciones en los valores de las características de las diferentes clases.
- la separabilidad de las clases.
- medidas de geometría, topología y densidad de variedades. La dureza de la instancia es otro enfoque que busca caracterizar la complejidad de los datos con el objetivo de determinar qué tan difícil es clasificar correctamente un conjunto de datos y no se limita a problemas binarios.
La dureza de instancias es un enfoque de abajo hacia arriba que primero busca identificar instancias que probablemente se clasifiquen incorrectamente (o, en otras palabras, qué instancias son las más complejas). Las características de las instancias que probablemente se clasifiquen incorrectamente se miden luego en función del resultado de un conjunto de medidas de dureza. Las medidas de dureza se basan en varias técnicas de aprendizaje supervisado, como medir el número de vecinos en desacuerdo o la probabilidad de la etiqueta de clase asignada dadas las características de entrada. La información proporcionada por las medidas de complejidad ha sido examinada para su uso en metaaprendizaje para determinar para qué conjunto de datos filtrar (o eliminar instancias sospechosas de ruido del conjunto de entrenamiento) es el más beneficioso y podría expandirse a otras áreas.
En reconocimiento molecular
Un estudio reciente basado en simulaciones moleculares y constantes de cumplimiento describe el reconocimiento molecular como un fenómeno de organización. Incluso para moléculas pequeñas como los carbohidratos, el proceso de reconocimiento no se puede predecir ni diseñar, ni siquiera asumiendo que se conoce con exactitud la fuerza de cada enlace de hidrógeno individual.
La ley de la complejidad requerida
Partiendo de la ley de la variedad requerida, Boisot y McKelvey formularon la 'Ley de la Complejidad Requerida', que sostiene que, para ser eficaz en la adaptación, la complejidad interna de un sistema debe coincidir con la complejidad externa a la que se enfrenta.
Complejidad positiva, apropiada y negativa
La aplicación en la gestión de proyectos de la Ley de la Complejidad Requerida, propuesta por Stefan Morcov, es el análisis de la complejidad positiva, apropiada y negativa.
En gestión de proyectos
La complejidad del proyecto es la propiedad de un proyecto que hace que sea difícil comprender, prever y mantener bajo control su comportamiento general, incluso cuando se proporciona información razonablemente completa sobre el sistema del proyecto.
En ingenieria de sistemas
Maik Maurer considera la complejidad como una realidad en la ingeniería. Propuso una metodología para gestionar la complejidad en la ingeniería de sistemas :
1. Definir el sistema.
2. Identificar el tipo de complejidad.
3. Determinar la estrategia.
4. Determinar el método.
5. Modele el sistema.
6. Implementar el método.
Aplicaciones
La teoría de la complejidad computacional es el estudio de la complejidad de los problemas, es decir, la dificultad de resolverlos. Los problemas se pueden clasificar por clase de complejidad según el tiempo que tarda un algoritmo, generalmente un programa de computadora, en resolverlos en función del tamaño del problema. Algunos problemas son difíciles de resolver, mientras que otros son fáciles. Por ejemplo, algunos problemas difíciles necesitan algoritmos que toman una cantidad de tiempo exponencial en términos del tamaño del problema a resolver. Tome el problema del viajante de comercio, por ejemplo. Se puede resolver en el tiempo (donde n es el tamaño de la red a visitar – el número de ciudades que el viajante de comercio debe visitar exactamente una vez). A medida que crece el tamaño de la red de ciudades, el tiempo necesario para encontrar la ruta crece (más que) exponencialmente.
Aunque un problema puede resolverse computacionalmente en principio, en la práctica real puede no ser tan simple. Estos problemas pueden requerir grandes cantidades de tiempo o una cantidad excesiva de espacio. La complejidad computacional puede abordarse desde muchos aspectos diferentes. La complejidad computacional se puede investigar sobre la base del tiempo, la memoria u otros recursos utilizados para resolver el problema. El tiempo y el espacio son dos de las consideraciones más importantes y populares cuando se analizan problemas de complejidad.
Existe una cierta clase de problemas que, aunque en principio son solucionables, requieren tanto tiempo o espacio que no es práctico intentar resolverlos. Estos problemas se llaman intratables.
Hay otra forma de complejidad llamada complejidad jerárquica. Es ortogonal a las formas de complejidad discutidas hasta ahora, que se denominan complejidad horizontal.
Contenido relacionado
Filosofía analítica
Necesidad y suficiencia
Argumentum ad baculum