stringtranslate.com

Computación natural

La computación natural , [1] [2] también llamada computación natural , es una terminología introducida para englobar tres clases de métodos: 1) aquellos que se inspiran en la naturaleza para el desarrollo de nuevas técnicas de resolución de problemas; 2) aquellos que se basan en el uso de ordenadores para sintetizar fenómenos naturales; y 3) aquellos que emplean materiales naturales (por ejemplo, moléculas) para realizar los cálculos. Los principales campos de investigación que componen estas tres ramas son las redes neuronales artificiales , los algoritmos evolutivos , la inteligencia de enjambre , los sistemas inmunes artificiales , la geometría fractal, la vida artificial , la computación del ADN y la computación cuántica , entre otros.

Los paradigmas computacionales estudiados por la computación natural se abstraen de fenómenos naturales tan diversos como la autorreplicación , el funcionamiento del cerebro , la evolución darwiniana , el comportamiento grupal , el sistema inmunológico , las propiedades definitorias de las formas de vida, las membranas celulares y la morfogénesis . Además del hardware electrónico tradicional , estos paradigmas computacionales se pueden implementar en medios físicos alternativos como biomoléculas (ADN, ARN) o dispositivos de computación cuántica de iones atrapados.

De manera dual, se pueden considerar los procesos que ocurren en la naturaleza como procesamiento de información. Tales procesos incluyen el autoensamblaje , los procesos de desarrollo , las redes de regulación genética , las redes de interacción proteína-proteína , las redes de transporte biológico ( transporte activo , transporte pasivo ) y el ensamblaje de genes en organismos unicelulares . Los esfuerzos para comprender los sistemas biológicos también incluyen la ingeniería de organismos semisintéticos y la comprensión del universo mismo desde el punto de vista del procesamiento de información. De hecho, incluso se propuso la idea de que la información es más fundamental que la materia o la energía. La tesis de Zuse-Fredkin, que se remonta a la década de 1960, afirma que todo el universo es un enorme autómata celular que actualiza continuamente sus reglas. [3] [4] Recientemente se ha sugerido que todo el universo es una computadora cuántica que calcula su propio comportamiento. [5] El universo/naturaleza como mecanismo computacional se aborda mediante, [6] la exploración de la naturaleza con la ayuda de las ideas de computabilidad, y [7] el estudio de los procesos naturales como cálculos (procesamiento de información).

Modelos de computación inspirados en la naturaleza

Los modelos de computación inspirados en la naturaleza más establecidos y "clásicos" son los autómatas celulares, la computación neuronal y la computación evolutiva. Los sistemas computacionales más recientes, abstraídos de los procesos naturales, incluyen la inteligencia de enjambre, los sistemas inmunológicos artificiales, la computación de membrana y la computación amorfa. Se pueden encontrar revisiones detalladas en muchos libros. [8] [9]

Autómatas celulares

Un autómata celular es un sistema dinámico que consiste en una matriz de células. El espacio y el tiempo son discretos y cada una de las células puede estar en un número finito de estados . El autómata celular actualiza los estados de sus células sincrónicamente de acuerdo con las reglas de transición dadas a priori . El siguiente estado de una célula se calcula mediante una regla de transición y depende solo de su estado actual y de los estados de sus vecinas.

El Juego de la Vida de Conway es uno de los ejemplos más conocidos de autómatas celulares, que ha demostrado ser computacionalmente universal . Los autómatas celulares se han aplicado para modelar una variedad de fenómenos como la comunicación, el crecimiento, la reproducción, la competencia, la evolución y otros procesos físicos y biológicos.

Computación neuronal

La computación neuronal es el campo de investigación que surgió de la comparación entre las máquinas de computación y el sistema nervioso humano . [10] Este campo tiene como objetivo tanto comprender cómo funciona el cerebro de los organismos vivos (teoría del cerebro o neurociencia computacional ), como diseñar algoritmos eficientes basados ​​en los principios de cómo el cerebro humano procesa la información (Redes Neuronales Artificiales, ANN [11] ).

Una red neuronal artificial es una red de neuronas artificiales . [12] Una neurona artificial A está equipada con una función , recibe n entradas de valor real con pesos respectivos , y genera . Se seleccionan algunas neuronas para que sean las neuronas de salida, y la función de red es la función vectorial que asocia a los n valores de entrada, las salidas de las m neuronas de salida seleccionadas. Tenga en cuenta que diferentes elecciones de pesos producen diferentes funciones de red para las mismas entradas. La retropropagación es un método de aprendizaje supervisado por el cual los pesos de las conexiones en la red se ajustan repetidamente para minimizar la diferencia entre el vector de salidas reales y el de salidas deseadas. Se pueden utilizar algoritmos de aprendizaje basados ​​en la propagación hacia atrás de errores para encontrar pesos óptimos para una topología dada de la red y pares de entrada-salida.

Computación evolutiva

La computación evolutiva [13] es un paradigma computacional inspirado en la evolución darwiniana .

Un sistema evolutivo artificial es un sistema computacional basado en la noción de evolución simulada. Comprende una población de individuos de tamaño constante o variable, un criterio de aptitud y operadores inspirados genéticamente que producen la siguiente generación a partir de la actual. La población inicial se genera típicamente de forma aleatoria o heurística, y los operadores típicos son mutación y recombinación . En cada paso, los individuos se evalúan de acuerdo con la función de aptitud dada ( supervivencia del más apto ). La siguiente generación se obtiene a partir de individuos seleccionados (padres) mediante el uso de operadores inspirados genéticamente. La elección de los padres puede guiarse por un operador de selección que refleja el principio biológico de selección de pareja . Este proceso de evolución simulada finalmente converge hacia una población de individuos casi óptima, desde el punto de vista de la función de aptitud.

El estudio de los sistemas evolutivos ha evolucionado históricamente a lo largo de tres ramas principales: Las estrategias de evolución proporcionan una solución a los problemas de optimización de parámetros para parámetros de valor real, así como para tipos de parámetros discretos y mixtos. La programación evolutiva originalmente apuntaba a crear "agentes inteligentes" óptimos modelados, por ejemplo, como máquinas de estados finitos. Los algoritmos genéticos [14] aplicaron la idea de la computación evolutiva al problema de encontrar una solución (casi) óptima a un problema dado. Los algoritmos genéticos inicialmente consistían en una población de entrada de individuos codificados como cadenas de bits de longitud fija, los operadores genéticos mutación (cambios de bits) y recombinación (combinación de un prefijo de un padre con el sufijo del otro), y una función de aptitud dependiente del problema. Los algoritmos genéticos se han utilizado para optimizar programas de computadora, llamados programación genética , y hoy también se aplican a problemas de optimización de parámetros de valor real, así como a muchos tipos de tareas combinatorias.

Por otro lado, los algoritmos de estimación de distribución (EDA) son algoritmos evolutivos que sustituyen los operadores de reproducción tradicionales por otros guiados por modelos. Dichos modelos se aprenden de la población empleando técnicas de aprendizaje automático y se representan como modelos gráficos probabilísticos, a partir de los cuales se pueden muestrear nuevas soluciones [15] [16] o generarlas a partir de un cruce guiado. [17] [18]

Inteligencia de enjambre

La inteligencia de enjambre , [19] a veces denominada inteligencia colectiva , se define como el comportamiento de resolución de problemas que surge de la interacción de agentes individuales (por ejemplo, bacterias , hormigas , termitas , abejas , arañas , peces , pájaros ) que se comunican con otros agentes actuando sobre sus entornos locales .

La optimización por enjambre de partículas aplica esta idea al problema de encontrar una solución óptima a un problema dado mediante una búsqueda a través de un espacio de soluciones (multidimensional) . La configuración inicial es un enjambre de partículas , cada una representando una posible solución al problema. Cada partícula tiene su propia velocidad que depende de su velocidad anterior (el componente de inercia), la tendencia hacia la mejor posición personal pasada (el componente de nostalgia) y su tendencia hacia un óptimo de vecindario global o un óptimo de vecindario local (el componente social). De este modo, las partículas se mueven a través de un espacio multidimensional y finalmente convergen hacia un punto entre el mejor global y su mejor personal. Los algoritmos de optimización por enjambre de partículas se han aplicado a varios problemas de optimización y a aplicaciones de aprendizaje no supervisado , aprendizaje de juegos y programación .

En la misma línea, los algoritmos de las hormigas modelan el comportamiento de búsqueda de alimento de las colonias de hormigas. Para encontrar el mejor camino entre el nido y una fuente de alimento, las hormigas se basan en la comunicación indirecta dejando un rastro de feromonas en el camino de regreso al nido si encontraron alimento, o siguiendo la concentración de feromonas si están buscando alimento. Los algoritmos de las hormigas se han aplicado con éxito a una variedad de problemas de optimización combinatoria en espacios de búsqueda discretos.

Sistemas inmunológicos artificiales

Los sistemas inmunes artificiales (también conocidos como computación inmunológica o inmunocomputación ) son sistemas computacionales inspirados en los sistemas inmunes naturales de los organismos biológicos.

Considerado como un sistema de procesamiento de información, el sistema inmunológico natural de los organismos realiza muchas tareas complejas en paralelo y de manera distribuida . [20] Estas incluyen la distinción entre lo propio y lo ajeno , [21] la neutralización de patógenos ajenos ( virus , bacterias, hongos y parásitos ), el aprendizaje , la memoria , la recuperación asociativa, la autorregulación y la tolerancia a fallos . Los sistemas inmunológicos artificiales son abstracciones del sistema inmunológico natural, que enfatizan estos aspectos computacionales. Sus aplicaciones incluyen la detección de virus informáticos , la detección de anomalías en una serie temporal de datos, el diagnóstico de fallos , el reconocimiento de patrones , el aprendizaje automático, la bioinformática , la optimización, la robótica y el control .

Computación de membrana

La computación de membrana investiga modelos computacionales abstraídos de la estructura compartimentalizada de células vivas afectadas por membranas . [22] Un sistema de membrana genérico (sistema P) consiste en compartimentos similares a células (regiones) delimitados por membranas , que se colocan en una estructura jerárquica anidada . Cada región envuelta por membrana contiene objetos, reglas de transformación que modifican estos objetos, así como reglas de transferencia, que especifican si los objetos serán transferidos fuera o permanecerán dentro de la región. Las regiones se comunican entre sí a través de la transferencia de objetos. El cálculo por un sistema de membrana comienza con una configuración inicial, donde el número ( multiplicidad ) de cada objeto se establece en algún valor para cada región ( multiconjunto de objetos ). Procede eligiendo, de manera no determinista y de manera máximamente paralela , qué reglas se aplican a qué objetos. La salida del cálculo se recopila de una región de salida determinada a priori .

Las aplicaciones de los sistemas de membrana incluyen el aprendizaje automático, el modelado de procesos biológicos ( fotosíntesis , ciertas vías de señalización , detección de quórum en bacterias, inmunidad mediada por células ), así como aplicaciones informáticas como gráficos por computadora , criptografía de clave pública , algoritmos de aproximación y clasificación , así como el análisis de varios problemas computacionalmente difíciles.

Computación amorfa

En los organismos biológicos, la morfogénesis (el desarrollo de formas bien definidas y estructuras funcionales) se logra mediante las interacciones entre células guiadas por el programa genético codificado en el ADN del organismo.

Inspirada en esta idea, la computación amorfa apunta a la ingeniería de formas y patrones bien definidos, o comportamientos computacionales coherentes, a partir de las interacciones locales de una multitud de elementos computacionales simples, no confiables, colocados irregularmente, asincrónicos e idénticamente programados (partículas). [23] Como paradigma de programación, el objetivo es encontrar nuevas técnicas de programación que funcionen bien para entornos de computación amorfa. La computación amorfa también juega un papel importante como base para la "computación celular" (ver los temas biología sintética y computación celular , a continuación).

Computación morfológica

La comprensión de que la morfología realiza cálculos se utiliza para analizar la relación entre la morfología y el control y para guiar teóricamente el diseño de robots con requisitos de control reducidos, se ha utilizado tanto en robótica como para la comprensión de los procesos cognitivos en organismos vivos, consulte Cálculo morfológico y . [24]

Computación cognitiva

La computación cognitiva (CC) es un nuevo tipo de computación, generalmente con el objetivo de modelar funciones de detección, razonamiento y respuesta humana a estímulos, véase Computación cognitiva y . [25]

Las capacidades cognitivas de la computación cognitiva actual están lejos del nivel humano. El mismo enfoque info-computacional se puede aplicar a otros organismos vivos más simples. Las bacterias son un ejemplo de un sistema cognitivo modelado computacionalmente; véase Eshel Ben-Jacob y Microbes-mind.

Sintetizando la naturaleza mediante la informática

Vida artificial

La vida artificial (Vida Artificial) es un campo de investigación cuyo objetivo último es comprender las propiedades esenciales de los organismos vivos [26] mediante la construcción, dentro de computadoras electrónicas u otros medios artificiales, de sistemas ab initio que exhiban propiedades normalmente asociadas solo con organismos vivos. Los primeros ejemplos incluyen los sistemas Lindenmayer (sistemas L), que se han utilizado para modelar el crecimiento y desarrollo de las plantas. Un sistema L es un sistema de reescritura paralela que comienza con una palabra inicial y aplica sus reglas de reescritura en paralelo a todas las letras de la palabra. [27]

Los experimentos pioneros en vida artificial incluyeron el diseño de "criaturas de bloques virtuales" en evolución que actuaban en entornos simulados con características realistas como cinética , dinámica , gravedad , colisión y fricción . [28] Estas criaturas artificiales fueron seleccionadas por sus habilidades para nadar, caminar o saltar, y compitieron por un recurso común limitado (controlar un cubo). La simulación resultó en la evolución de criaturas que exhibían un comportamiento sorprendente: algunas desarrollaron manos para agarrar el cubo, otras desarrollaron piernas para moverse hacia el cubo. Este enfoque computacional se combinó además con tecnología de fabricación rápida para construir realmente los robots físicos que evolucionaron virtualmente. [29] Esto marcó el surgimiento del campo de la vida artificial mecánica .

El campo de la biología sintética explora una implementación biológica de ideas similares. Otras direcciones de investigación dentro del campo de la vida artificial incluyen la química artificial , así como los fenómenos tradicionalmente biológicos explorados en sistemas artificiales, que van desde procesos computacionales como la adaptación y el desarrollo coevolutivos , hasta procesos físicos como el crecimiento, la autorreplicación y la autorreparación .

Hardware novedoso inspirado en la naturaleza

Todas las técnicas computacionales mencionadas anteriormente, aunque inspiradas en la naturaleza, se han implementado hasta ahora principalmente en hardware electrónico tradicional . En cambio, los dos paradigmas presentados aquí, la computación molecular y la computación cuántica, emplean tipos de hardware radicalmente diferentes.

Computación molecular

La computación molecular (también conocida como computación biomolecular, biocomputación, computación bioquímica, computación de ADN ) es un paradigma computacional en el que los datos se codifican como biomoléculas , como cadenas de ADN , y las herramientas de biología molecular actúan sobre los datos para realizar diversas operaciones (por ejemplo, operaciones aritméticas o lógicas ).

La primera realización experimental de una computadora molecular de propósito especial fue el experimento innovador de 1994 de Leonard Adleman , quien resolvió una instancia de 7 nodos del Problema de la Ruta Hamiltoniana únicamente manipulando cadenas de ADN en tubos de ensayo. [30] Los cálculos de ADN comienzan con una entrada inicial codificada como una secuencia de ADN (esencialmente una secuencia sobre el alfabeto de cuatro letras {A, C, G, T}), y proceden por una sucesión de biooperaciones como cortar y pegar (por enzimas de restricción y ligasas ), extracción de cadenas que contienen una cierta subsecuencia (mediante el uso de la complementariedad de Watson-Crick), copia (mediante el uso de la reacción en cadena de la polimerasa que emplea la enzima polimerasa) y lectura. [31] Investigaciones experimentales recientes lograron resolver instancias más complejas de problemas NP-completos , como una instancia de 20 variables de 3SAT e implementaciones de ADN húmedo de máquinas de estados finitos con aplicaciones potenciales para el diseño de medicamentos inteligentes .

Autoensamblaje de una tesela de ADN de un triángulo de Sierpinski, a partir de una semilla obtenida mediante la técnica del origami de ADN [32]

Una de las contribuciones más notables de la investigación en este campo es la comprensión del autoensamblaje . [33] El autoensamblaje es el proceso de abajo hacia arriba por el cual los objetos se unen de forma autónoma para formar estructuras complejas. Los ejemplos en la naturaleza abundan, e incluyen átomos que se unen por enlaces químicos para formar moléculas , y moléculas que forman cristales o macromoléculas . Los ejemplos de temas de investigación de autoensamblaje incluyen nanoestructuras de ADN autoensambladas [34] como triángulos de Sierpinski [35] o nanoformas arbitrarias obtenidas utilizando la técnica del origami de ADN [36] , y nanomáquinas de ADN [37] como circuitos basados ​​en ADN ( contador binario , XOR acumulativo bit a bit), ribozimas para operaciones lógicas, interruptores moleculares (pinzas de ADN) y motores moleculares autónomos (caminantes de ADN).

La investigación teórica en computación molecular ha producido varios modelos nuevos de computación de ADN (por ejemplo, los sistemas de empalme introducidos por Tom Head ya en 1987) y se ha investigado su poder computacional. [38] Ahora se sabe que varios subconjuntos de biooperaciones pueden alcanzar el poder computacional de las máquinas de Turing [ cita requerida ] .

Computación cuántica

Un ordenador cuántico [39] procesa datos almacenados como bits cuánticos ( qubits ) y utiliza fenómenos mecánicos cuánticos como la superposición y el entrelazamiento para realizar cálculos. Un qubit puede contener un "0", un "1" o una superposición cuántica de estos. Un ordenador cuántico opera con qubits con puertas lógicas cuánticas . A través del algoritmo polinomial de Shor para factorizar números enteros y el algoritmo de Grover para la búsqueda de bases de datos cuánticas que tiene una ventaja temporal cuadrática, se demostró que los ordenadores cuánticos poseen potencialmente un beneficio significativo en relación con los ordenadores electrónicos.

La criptografía cuántica no se basa en la complejidad del cálculo , sino en las propiedades especiales de la información cuántica , como el hecho de que la información cuántica no se puede medir de forma fiable y cualquier intento de medirla da como resultado una perturbación inevitable e irreversible. En 2007 se informó de un exitoso experimento al aire libre en criptografía cuántica, en el que los datos se transmitieron de forma segura a una distancia de 144 km. [40] La teletransportación cuántica es otra aplicación prometedora, en la que un estado cuántico (no materia ni energía) se transfiere a una ubicación distante arbitraria. Las implementaciones de ordenadores cuánticos prácticos se basan en varios sustratos, como trampas de iones , superconductores , resonancia magnética nuclear , etc. A partir de 2006, el experimento de computación cuántica más grande utilizó procesadores de información cuántica de resonancia magnética nuclear en estado líquido y podía funcionar con hasta 12 qubits. [41]

La naturaleza como procesamiento de información

El doble aspecto de la computación natural es que pretende comprender la naturaleza considerando los fenómenos naturales como procesamiento de información. Ya en la década de 1960, Zuse y Fredkin sugirieron la idea de que todo el universo es un mecanismo computacional (de procesamiento de información), modelado como un autómata celular que actualiza continuamente sus reglas. [3] [4] Un enfoque mecánico-cuántico reciente de Lloyd sugiere que el universo es un ordenador cuántico que calcula su propio comportamiento, [5] mientras que Vedral [42] sugiere que la información es el elemento fundamental de la realidad.

El universo/naturaleza como mecanismo computacional se elabora en [6] , explorando la naturaleza con ayuda de las ideas de computabilidad, mientras que [7], basándose en la idea de la naturaleza como red de redes de procesos de información en diferentes niveles de organización, se estudian los procesos naturales como computaciones (procesamiento de información).

Las principales direcciones de investigación en esta área son la biología de sistemas, la biología sintética y la computación celular.

Biología de sistemas

La biología de sistemas computacionales (o simplemente biología de sistemas) es un enfoque integrador y cualitativo que investiga las complejas comunicaciones e interacciones que tienen lugar en los sistemas biológicos. Por lo tanto, en la biología de sistemas, el enfoque del estudio son las redes de interacción en sí mismas y las propiedades de los sistemas biológicos que surgen debido a estas redes, en lugar de los componentes individuales de los procesos funcionales en un organismo. Este tipo de investigación sobre los componentes orgánicos se ha centrado fuertemente en cuatro redes de interacción interdependientes diferentes: [43] redes de regulación genética, redes bioquímicas, redes de transporte y redes de carbohidratos.

Las redes reguladoras de genes comprenden interacciones gen-gen, así como interacciones entre genes y otras sustancias en la célula. Los genes se transcriben en ARN mensajero (ARNm), y luego se traducen en proteínas de acuerdo con el código genético . Cada gen está asociado con otros segmentos de ADN ( promotores , potenciadores o silenciadores ) que actúan como sitios de unión para activadores o represores para la transcripción genética . Los genes interactúan entre sí ya sea a través de sus productos génicos (ARNm, proteínas) que pueden regular la transcripción genética, o a través de pequeñas especies de ARN que pueden regular directamente los genes. Estas interacciones gen-gen, junto con las interacciones de los genes con otras sustancias en la célula, forman la red de interacción más básica: las redes reguladoras de genes . Realizan tareas de procesamiento de información dentro de la célula, incluido el ensamblaje y mantenimiento de otras redes. Los modelos de redes reguladoras de genes incluyen redes booleanas aleatorias y probabilísticas , autómatas asincrónicos y motivos de red .

Otro punto de vista es que todo el sistema regulador genómico es un sistema computacional, una computadora genómica . Esta interpretación permite comparar la computación electrónica creada por el hombre con la computación tal como ocurre en la naturaleza. [44]

Además, a diferencia de una computadora convencional, la robustez en una computadora genómica se logra mediante varios mecanismos de retroalimentación por los cuales los procesos poco funcionales se degradan rápidamente, las células poco funcionales mueren por apoptosis y los organismos poco funcionales son superados por especies más aptas.

Las redes bioquímicas se refieren a las interacciones entre proteínas, y realizan varias tareas mecánicas y metabólicas dentro de una célula. Dos o más proteínas pueden unirse entre sí a través de la unión de sus sitios de interacción, y formar un complejo proteico dinámico ( complejación ). Estos complejos proteicos pueden actuar como catalizadores para otras reacciones químicas, o pueden modificarse químicamente entre sí. Tales modificaciones causan cambios en los sitios de unión disponibles de las proteínas. Hay decenas de miles de proteínas en una célula, e interactúan entre sí. Para describir interacciones a una escala tan masiva, se introdujeron los mapas de Kohn [45] como una notación gráfica para representar interacciones moleculares en imágenes sucintas. Otros enfoques para describir de forma precisa y sucinta las interacciones proteína-proteína incluyen el uso de biocálculo textual [46] o cálculo pi enriquecido con características estocásticas. [47]

Las redes de transporte se refieren a la separación y transporte de sustancias mediadas por membranas lipídicas. Algunos lípidos pueden autoensamblarse en membranas biológicas. Una membrana lipídica consiste en una bicapa lipídica en la que se incrustan proteínas y otras moléculas, pudiendo viajar a lo largo de esta capa. A través de las bicapas lipídicas, las sustancias se transportan entre el interior y el exterior de las membranas para interactuar con otras moléculas. Los formalismos que representan las redes de transporte incluyen los sistemas de membrana y los cálculos de brana. [48]

Biología sintética

La biología sintética tiene como objetivo la ingeniería de componentes biológicos sintéticos, con el objetivo final de ensamblar sistemas biológicos completos a partir de sus componentes constituyentes. La historia de la biología sintética se remonta a la década de 1960, cuando François Jacob y Jacques Monod descubrieron la lógica matemática de la regulación genética. Las técnicas de ingeniería genética, basadas en la tecnología del ADN recombinante , son precursoras de la biología sintética actual, que extiende estas técnicas a sistemas completos de genes y productos génicos.

Junto con la posibilidad de sintetizar cadenas de ADN cada vez más largas, se hizo realidad la perspectiva de crear genomas sintéticos con el fin de construir organismos sintéticos totalmente artificiales. De hecho, el ensamblaje rápido de cadenas cortas de ADN sintetizadas químicamente hizo posible generar un genoma sintético de 5386 pb de un virus. [49]

Por otra parte, Smith et al. descubrieron unos 100 genes que pueden eliminarse individualmente del genoma de Mycoplasma Genitalium . Este descubrimiento abre el camino al ensamblaje de un genoma artificial mínimo pero aún viable que consta únicamente de los genes esenciales.

Un tercer enfoque para la ingeniería de células semisintéticas es la construcción de un solo tipo de molécula similar al ARN con la capacidad de autorreplicarse. [50] Tal molécula podría obtenerse guiando la rápida evolución de una población inicial de moléculas similares al ARN, mediante la selección de los rasgos deseados.

Otro esfuerzo en este campo se dirige hacia la ingeniería de sistemas multicelulares mediante el diseño, por ejemplo, de módulos de comunicación de célula a célula utilizados para coordinar poblaciones de células bacterianas vivas. [51]

Computación celular

La computación en células vivas (también conocida como computación celular o computación in vivo ) es otro enfoque para entender la naturaleza como computación. Un estudio particular en esta área es el de la naturaleza computacional del ensamblaje de genes en organismos unicelulares llamados ciliados . Los ciliados almacenan una copia de su ADN que contiene genes funcionales en el macronúcleo y otra copia "encriptada" en el micronúcleo . La conjugación de dos ciliados consiste en el intercambio de su información genética micronuclear, lo que lleva a la formación de dos nuevos micronúcleos, seguido por cada ciliado reensamblando la información de su nuevo micronúcleo para construir un nuevo macronúcleo funcional. El último proceso se llama ensamblaje de genes o reordenamiento de genes. Implica reordenar algunos fragmentos de ADN ( permutaciones y posiblemente inversión ) y eliminar otros fragmentos de la copia micronuclear. Desde el punto de vista computacional, el estudio de este proceso de ensamblaje de genes condujo a muchos temas de investigación y resultados desafiantes, como la universalidad de Turing de varios modelos de este proceso. [52] Desde el punto de vista biológico, se propuso una hipótesis plausible sobre el "bioware" que implementa el proceso de ensamblaje de genes, basado en la recombinación guiada por plantillas. [53] [54]

Otros enfoques para la computación celular incluyen el desarrollo de un autómata de estados finitos autónomo y programable in vivo con E. coli , [55] el diseño y la construcción in vivo de puertas lógicas celulares y circuitos genéticos que aprovechan los procesos bioquímicos existentes de la célula (ver por ejemplo [56] ) y la optimización global de la apertura de los estomas en las hojas, siguiendo un conjunto de reglas locales que se asemejan a un autómata celular . [57]

Véase también

Referencias

  1. ^ G. Rozenberg, T. Back, J. Kok, Editores, Manual de computación natural, Springer Verlag, 2012
  2. ^ A. Brabazon, MO'Neill, S. McGarraghy. Algoritmos de computación natural, Springer Verlag, 2015
  3. ^ ab Fredkin, F. Mecánica digital: un proceso informativo basado en CA universal reversible. Physica D 45 (1990) 254-270
  4. ^ ab Zuse, K. Rechnender Raum. Elektronische Datenverarbeitung 8 (1967) 336-344
  5. ^ de Lloyd, S. Programando el universo: un científico informático cuántico se enfrenta al cosmos. Knopf, 2006
  6. ^ ab Zenil, H. Un universo computable: comprensión y exploración de la naturaleza como computación. World Scientific Publishing Company, 2012
  7. ^ de Dodig-Crnkovic, G. y Giovagnoli, R. COMPUTING NATURE. Springer, 2013
  8. ^ Olarius S., Zomaya AY, Manual de algoritmos y aplicaciones bioinspirados, Chapman & Hall/CRC, 2005.
  9. ^ de Castro, LN, Fundamentos de la computación natural: conceptos básicos, algoritmos y aplicaciones, CRC Press, 2006.
  10. ^ von Neumann, J. La computadora y el cerebro. Yale University Press, 1958
  11. ^ Arbib, M., editor. Manual de teoría cerebral y redes neuronales. MIT Press, 2003.
  12. ^ Rojas, R. Redes neuronales: una introducción sistemática. Springer, 1996
  13. ^ Bäck, T., Fogel, D., Michalewicz, Z., editores. Manual de computación evolutiva. IOP Publishing, Reino Unido, 1997
  14. ^ Koza, J. Programación genética: sobre la programación de computadoras por medio de la selección natural. MIT Press, 1992
  15. ^ Pelikan, Martín; Goldberg, David E.; Cantú-Paz, Erick (1 de enero de 1999). BOA: El algoritmo de optimización bayesiano. Gecco'99. págs. 525–532. ISBN 9781558606111. {{cite book}}: |journal=ignorado ( ayuda )
  16. ^ Pelikan, Martin (2005). Algoritmo de optimización bayesiana jerárquica: hacia una nueva generación de algoritmos evolutivos (1.ª ed.). Berlín [ua]: Springer. ISBN 978-3-540-23774-7.
  17. ^ Thierens, Dirk (11 de septiembre de 2010). "El algoritmo genético del árbol de ligamiento". Resolución de problemas paralelos de la naturaleza, PPSN XI . pp. 264–273. doi :10.1007/978-3-642-15844-5_27. ISBN 978-3-642-15843-8. Número de identificación del sujeto  28648829.
  18. ^ Martins, Jean P.; Fonseca, Carlos M.; Delbem, Alexandre CB (25 de diciembre de 2014). "Sobre el rendimiento de los algoritmos genéticos de árboles de ligamiento para el problema multidimensional de la mochila". Neurocomputing . 146 : 17–29. doi :10.1016/j.neucom.2014.04.069.
  19. ^ Engelbrecht, A. Fundamentos de la inteligencia computacional de enjambre. Wiley and Sons, 2005.
  20. ^ Dasgupta, D. editor. Sistemas inmunológicos artificiales y sus aplicaciones. Springer, 1998
  21. ^ de Castro, L., Timmis, J. Sistemas inmunes artificiales: un nuevo enfoque de inteligencia computacional. Springer, 2002.
  22. ^ Paun, G. Computación de membrana: una introducción. Springer, 2002
  23. ^ Abelson, H., Allen, D., Coore, D., Hanson, C., Homsy, G., Knight Jr., T., Nagpal, R., Rauch, E., Sussman, G., Weiss, R. Computación amorfa. Communications of the ACM 43, 5 (mayo de 2000), 74-82
  24. ^ Pfeifer, R. y Füchslin R. Computación morfológica. (comienza en la p. 11), 2013
  25. ^ Pfeifer, R. y Bondgard, J. Cómo el cuerpo moldea nuestra manera de pensar: una nueva visión de la inteligencia. MIT Press, 2006
  26. ^ Langton, C., editor. Vida artificial. Addison-Wesley Longman, 1990
  27. ^ Rozenberg, G. y Salomaa, A. La teoría matemática de los sistemas L. Academic Press, 1980
  28. ^ Brooks. R. Vida artificial: de los sueños robóticos a la realidad. Nature 406 (2000), 945-947
  29. ^ Lipson, P., Pollack, J. Diseño y fabricación automáticos de formas de vida robóticas. Nature 406 (2000), 974-978
  30. ^ Adleman, L. Cálculo molecular de soluciones a problemas combinatorios Archivado el 6 de febrero de 2005 en Wayback Machine . Science 266 (1994), 1021-1024
  31. ^ Kari, L. Computación del ADN: la llegada de las matemáticas biológicas. The Mathematical Intelligencer 19, 2 (1997) 9-22
  32. ^ Fujibayashi, K., Hariadi, R., Park, SH., Winfree, E., Murata, S. Hacia un autoensamblaje algorítmico confiable de mosaicos de ADN: un patrón de autómata celular de ancho fijo. Nano Letters 8(7) (2007) 1791-1797.
  33. ^ Reif, J. y LaBean, T. Dispositivos biomoleculares autónomos programables que utilizan nanoestructuras de ADN autoensambladas. Communications of the ACM 50, 9 (septiembre de 2007), 46-53
  34. ^ Seeman, N. Nanotecnología y la doble hélice. Scientific American Reports, 17. 3 (2007), 30-39
  35. ^ Rothemund, P., Papadakis, N., Winfree, E. Autoensamblaje algorítmico de triángulos de Sierpinski de ADN. PLoS Biology 2, 12 (diciembre de 2004)
  36. ^ Rothemund, P. Plegado de ADN para crear formas y patrones a escala nanométrica. Nature 440 (2006) 297-302.
  37. ^ Bath, J., Turberfield, A. Nanomáquinas de ADN. Nature Nanotechnology 2 (mayo de 2007), 275-284
  38. ^ Paun, G., Rozenberg, G., Salomaa, A. Computación con ADN: nuevos paradigmas informáticos. Springer, 1998
  39. ^ Hirvensalo, M. Computación cuántica, 2.ª edición, Springer, 2004
  40. ^ Ursin, R. et al. Comunicación cuántica basada en entrelazadores a lo largo de 144 km. Nature Physics 3 (2007) 481-486
  41. ^ Negrevergne, C. et al. Evaluación comparativa de métodos de control cuántico en un sistema de 12 qubits. Physical Review Letters 96:art170501, 2006
  42. ^ Vedral, V. [Descifrando la realidad: el universo como información cuántica]. Oxford University Press, 2010
  43. ^ Cardelli, L. Máquinas abstractas de la biología de sistemas Archivado el 19 de abril de 2008 en Wayback Machine Boletín de la EATCS 93 (2007), 176-204
  44. ^ Istrail, S., De-Leon, BT., Davidson, E. El genoma regulador y la computadora. Biología del desarrollo 310 (2007), 187-195
  45. ^ Kohn, K. Mapa de interacción molecular de los sistemas de control del ciclo celular y reparación del ADN en mamíferos. Molecular Biology of the Cell 10(8) (1999) 2703-2734.
  46. ^ Nagasaki, M., Onami, S., Miyano, S., Kitano, H. Biocálculo: su concepto e interacción molecular [ enlace muerto permanente ] . Genome Informatics 10 (1999) 133-143.
  47. ^ Regev, A., Shapiro, E. Abstracciones celulares: las células como computación. Nature 419 (2002) 343
  48. ^ Cardelli, L. Cálculos de brana: interacciones de membranas biológicas. En LNCS 3082, páginas 257-280. Springer, 2005.
  49. ^ Smith, H., Hutchison III, C., Pfannkoch, C. y Venter, C. Generación de un genoma sintético mediante ensamblaje del genoma completo: bacteriófago {phi}X174 a partir de oligonucleótidos sintéticos. PNAS 100 , 26 (2003), 15440-15445.
  50. ^ Sazani, P., Larralde, R., Szostak, J. Un pequeño aptámero con reconocimiento fuerte y específico del trifosfato de ATP. Journal of the American Chemical Society , 126(27) (2004) 8370-8371
  51. ^ Weiss, R., Knight, Jr., T. Comunicaciones diseñadas para robótica microbiana. En LNCS 2054, páginas 1-16, Springer, 2001
  52. ^ Landweber, L. y Kari, L. La evolución de la computación celular: la solución de la naturaleza a un problema computacional [ enlace muerto permanente ] . Biosystems , 52, 1/3 (1999) 3-13.
  53. ^ Angeleska, A.; Jonoska, N.; Saito, M.; Landweber, L. (2007). "Ensamblaje de ADN guiado por ARN". Journal of Theoretical Biology . 248 (4): 706–720. Bibcode :2007JThBi.248..706A. doi :10.1016/j.jtbi.2007.06.007. PMID  17669433.
  54. ^ Prescott, David M.; Ehrenfeucht, A.; Rozenberg, G. (7 de junio de 2003). "Recombinación guiada por plantilla para la eliminación de IES y la descodificación de genes en ciliados esticotricos". Journal of Theoretical Biology . 222 (3): 323–330. doi :10.1016/S0022-5193(03)00037-7. PMID  12732478.
  55. ^ Nakagawa, Hirotaka; Sakamoto, Kensaku; Sakakibara, Yasubumi (2006). "Desarrollo de una Computadora in vivo basada en Escherichia coli". Computación del ADN . Apuntes de conferencias sobre informática. vol. 3892, págs. 203–212. doi :10.1007/11753681_16. ISBN 978-3-540-34161-1.
  56. ^ Zabet NR, Hone ANW, Chu DF Principios de diseño de circuitos lógicos transcripcionales Archivado el 7 de marzo de 2012 en Wayback Machine . En Artificial Life XII Proceedings of the Twelfth International Conference on the Synthesis and Simulation of Living Systems, páginas 186-193. MIT Press, agosto de 2010.
  57. ^ Duran-Nebreda S, Bassel G (abril de 2019). "Comportamiento de las plantas en respuesta al entorno: procesamiento de información en estado sólido". Philosophical Transactions of the Royal Society B . 374 (1774): 20180370. doi :10.1098/rstb.2018.0370. PMC 6553596 . PMID  31006360. 

Lectura adicional

Este artículo fue escrito con base en las siguientes referencias con el amable permiso de sus autores:

Muchas de las áreas de investigación que constituyen la computación natural tienen sus propias revistas especializadas y series de libros. Las revistas y series de libros dedicadas al amplio campo de la computación natural incluyen las revistas Natural Computing (Springer Verlag), Theoretical Computer Science, Series C: Theory of Natural Computing (Elsevier), la serie de libros Natural Computing (Springer Verlag) y el Handbook of Natural Computing (G. Rozenberg, T. Back, J. Kok, Editors, Springer Verlag).

Para los lectores interesados ​​en artículos de divulgación científica, consideren este en Medium: Algoritmos inspirados en la naturaleza