01-05-2007
Autor
Dr. Rubens Arizmendi
Systems Engineer, Expert in Mathematics, Computation and Systems. Ingeniero de la Universidad de Montevideo-Uruguay. Studies in M.I.T. (USA). Doctor of Science in Information Systems Engineering, Tecana American University.

La Computación Natural, o Biocomputación, como todas las áreas de la Inteligencia Artificial, está inspirada en el comportamiento de los organismos vivos y su objetivo fundamental es la simulación e implementación de los procesos dinámicos que se dan en la Naturaleza y que son susceptibles de ser considerados como “procedimientos” de cálculo.

En realidad, el ser humano experimenta a diario con estos procesos. Un ejemplo comprensible es el acto de atravesar una calle o camino (que para simplificar se supondrá de un solo sentido. El proceso sería: 1) mirar para ver si viene carro, si no viene, cruzar; 2) si viene carro lejos, basado en el aumento de la imagen, el  computador biológico calcula el tiempo que demorará en llegar al punto de cruce;  calcula igualmente cuánto demorará la persona en llegar al mismo punto, ya sea caminando o corriendo, y –lo que es más importante– compara  todos estos tiempos mentales a efectos de una decisión: cruzar – despacio o corriendo– o esperar.

¿Qué parte del cuerpo humano hizo estos cálculos y trasmitió los resultados al cerebro para que éste decidiera el siguiente efecto motriz? Los cálculos fueron aritméticos, y para quien usa lápiz, papel y memoria, le requiere tiempo, físico, real; todo el mundo sabe (biológica e instintivamente) qué hacer para cruzar la vía (aunque algunos pocos se equivoquen, fatalmente...)

Los científicos de varias ramas, un poco antes de la década de los 50, iniciaron la llamada “computación a nivel molecular”, casi como una extensión de la miniaturización y con ayuda de los ordenadores de aquella época. Ya se conocía que los cromosomas se trasmitían en las células de generación en generación, pero por estar constituidos por proteínas, ADN y otros elementos no se sabía cual de ellos trasmitía la herencia, hasta que en 1955 los estadounidenses McLeod y McCarty identificaron al ADN como el responsable de esa tarea.

En adelante, Watson y Krick descifran la estructura de las moléculas de ADN y demuestran que esas moléculas son responsables del soporte de la información genética de los organismos vivos, la cual está basada en una secuencia de otras moléculas muchísimo menores llamadas nucleótidos justificando a la vez la posibilidad de usar ciertas técnicas de laboratorio (reacciones químicas controladas) para la manipulación de algoritmos que usan a dichas moléculas como espacios de memoria.

Cada nucleótido dispone de tres elementos: una base nitrogenada, un azúcar (la desoxirribosa) y un grupo fosfato. La base es la verdadera responsable de la especificidad de la información, y existen cuatro diferentes que se denominan con las letras A (Adenina), G (Guanina), C (Citosina) y T (Timina), y filosóficamente “representan las cuatro letras con que se escribirá el libro de la vida”. Los otros dos componentes representan una función estructural y facilitadora de la polimerización mediante el engarce consecutivo de los diferentes nucleótidos.

 

La Estructura de Doble Hélice

Cada cromosoma posee una sola molécula de ADN, de conformación extendida como una hebra, en la que cada gen ocupa un segmento. La molécula humana, en su totalidad tendría la longitud de 1.7 cm a 8.5 cm, de donde el DNA presente en todos los cromosomas de una célula tendría una fabulosa longitud superior a un metro.

El mensaje genético solo consiste en información que determina el número, el tamaño y la secuencia de los aminoácidos de cada uno de los distintos tipos de proteína de un organismo. Y a su vez cada grupo consecutivo de tres bases codifica un aminoácido a ser incorporado en la proteína o codifica una información de control simple.

El DNA almacena la información en base a su estructura semejante a una doble hélice compuesta de dos hebras entrelazadas de DNA, con una hebra que soporta la información genética (hebra sensible) y la otra su información llamada “complementaria” que está definida por reglas: a la hebra sensible le corresponde el complemento T, a la T la A, a la C la G, y a la G la C. Esta doble hélice es sostenida mediante vínculos de hidrógeno entre la hebra sensible y su complemento, estructura resistente a daños externos aún cuando cualquier hebra puede auto-repararse a partir de la información de su complemento.

 

El Algoritmo de Adleman

La Bioinformática, entonces, es la rama de la Ciencia que usa la información para comprender la Biología, un nuevo campo interdisciplinario que agrupa a biólogos moleculares, bioquímicos, físicos, matemáticos y computólogos; la magnitud de este campo es tal que se llevan detectados y estudiados 35,000 genes, formados por 3000 millones de pares de bases químicas (A-T y C-G) presentes en cada una de los 100 Billones de células de una persona.

Queda mucho camino para recorrer sobre la interacción de estos genes, su regulación y control, así como los productos proteicos que expresan y producen.

Inclusive se podría saber cuales son los genes cuyo mal funcionamiento origina enfermedades para reemplazarlos por otros corregidos. Comienza la era “post genómica” que asistirá al relevo del genoma por el proteoma, que serían redes de proteínas. Así mismo, surgen los ADN “microarrays” (biochips o chips de genes) en los que se pueden monitorear simultáneamente decenas de miles de genes en distintas condicione celulares, lo que a su vez implica un tratamiento de imágenes y de los datos obtenidos “en bruto” para su posterior cuantificación.

El trabajo que dio inicio a la computación ADN fue realizado por Leonard Adleman en 1994 quien experimentó con el problema del “Camino Hamiltoniano”, que consiste en determinar si en un grafo con vértice de inicio y final existe alguna secuencia de pasos mediante los cuales cada vértice en el grafo es visitado una sola vez. (Conocido en Investigación Operativa como el problema del vendedor)

Los pasos de este algoritmo son:

1.- Generar caminos aleatorios a través del grafo.

2.- Remover los caminos que comienzan con vértices diferentes del “p”(partida) y aquellos que terminan con vértices diferentes del “f”(final).

3.- Remover los caminos que visitan una cantidad de vértices diferente al tamaño del conjunto.

4.- Remover los caminos que visitan algún vértice más de una vez.

5.- Si existe algún camino restante la respuesta es positiva, de otro modo será negativa.

Este algoritmo es sencillo para pocos vértices pero su complejidad es exponencial y su ejecución puede tardar horas (y más) en un computador electrónico. Para un computador ADN esas horas se reducen a minutos.

En razón de los enormes avances de los biólogos moleculares en esta área, que queda representada en los centenares de libros, artículos y publicaciones Internet, donde puede encontrarse el detalle de estos trabajos, se concreta esta exposición a la participación de la Computación, que corrobora la posibilidad de inferir procesos biológicos secuenciados en relación con los mecanismos de la visión y otros sentidos del humano, cuyas funciones como sistemas de información son temas de otros análisis por parte del suscrito.

En este caso, para generar secuencias ADN que representen todos los caminos a través del grafo se toma una representación de vértices y aristas por medio de hebras únicas para cada vértice, y en cuanto a las aristas se usa la noción de Complemento ya explicada y se seleccionan aquellos pares (de hebras asignadas a los vértices) de extremos iguales pero que no contengan demasiados segmentos comunes. Se crean así tubos de ensayo que contienen múltiples hebras que representan cada arista y cada vértice. Una vez que estos tubos de ensayo sean mezclados de manera conjunta, los caminos legales a través del grafo son generados por la atracción mutua de segmentos ('strings') y sus complementos de cadenas de hidrógeno lo cual conlleva a la solución después de una o varias iteraciones. Todo ello determinado por fenómenos y procesos químicos o electroquímicos, según el caso.

Comandos básicos para esta programación

A la gente de Computación e Informática seguramente le llamará la atención el tipo de comandos que rigen mediante distintas reacciones químicas la materialización de los algoritmos mencionados. La descripción de dichos comandos básicos es la siguiente:

1.- RESET (S).- Se considera una inicialización para el conjunto S. Se encarga de generar todas las hebras para las operaciones restantes, las cuales pueden representar un mismo valor o distintos valores según requieran los datos.

2.- ADDIN (x,S).- Este comando adiciona un valor (x) a todos los números que se encuentran dentro del conjunto S.

3.- SUB (x,S).- Esta operación se encarga de sustraer un valor (x) de todos los números que se encuentran dentro del conjunto S.

4.- DIVIDE (S, S1, S2, C).- Este comando separa el conjunto S en dos conjuntos diferentes S1 y S2, basado en el criterio C. Si no se proporciona criterio alguno, entonces los componentes de los conjuntos se toman de modo aleatorio y el conjunto S se distribuirá uniformemente en dos conjuntos S1 y S2.

5.- UNION (S1, S2, S).- Esta operación combina en paralelo todos los componentes de los conjuntos S1 y S2, en el conjunto S.

6.- COPY (S, S1).- Esta operación copia completamente el conjunto S sobre el S1.

7.- SELECT (S, C).- Permite seleccionar un elemento de S siguiendo el criterio C. Si no se proporciona este criterio, el comando actuará seleccionando aleatoriamente un elemento.

 

También los Ceros y los Unos...

Pero la Computación ADN no se va a quedar en la solución de problemas de alta complejidad que puedan ser descompuestos en problemas de caminos hamiltonianos. El equipo de Adleman introdujo otro concepto de computación digital llamado Modelo Sticker en 1996, que puede codificar ceros y unos en secuencias de ADN y procesarlos mediante un algoritmo.

En este modelo se usan secuencias de bases ADN para representar los ceros y los unos, por supuesto en diversas combinaciones de segmentos tipo TA, AT, CG, GC, de tal forma que se pueden crear cadenas de bits (8, 12, 24, etc.) los cuales serán activados usando las cadenas complementarias.

Adleman sostiene que se podrán hacer cuatro tipos de operaciones:

1.- Combinar el contenido de bits de dos tubos en uno.

2.- Separar el contenido de un tubo en dos tubos, de modo arbitrario por un bit que se encuentre en determinado punto de la cadena.

3.- Asignar un 1 al bit que se encuentre en determinada posición en todas la cadenas de un tubo dado.

4.- La misma operación anterior, asignando un Cero.

La computación en este modelo Sticker se hace mediante múltiples operaciones de Mezcla, Separación por uno o varios bits, Set y Reset por un bit según los comandos vistos.

La programación es similar a la programación en ensamblador pero bastante más ardua por la profundidad de su nivel, sobre todo para los programadores modernos, acostumbrados a la facilidad de los lenguajes de alto nivel.

Para el modelo físico del sticker, la gente de Adleman describe una serie de tubos de ensayo, tantos como sean necesarios según la complejidad del problema que debe resolverse, manipulados por brazos robots y una serie de cabezales que realizan las operaciones. Importante: Los tubos que dejen de tener datos han de ser rigurosamente esterilizados antes de volverlos a usar en una nueva operación. Las ventajas que se asignan a este modelo consisten en el ahorro de muchos procesos químicos costosos y cuyos componentes no pueden ser reutilizados.

 

El computador microscópico israelí

En materia de computadores  ADN, uno de los más impactantes desarrollos está siendo llevado a cabo por un grupo de científicos israelíes del Instituto Weizmann quienes armaron un computador microscópico a base de moléculas de ADN, el conocido material que compone las células portadoras de la herencia biológica. Las dimensiones de las computadoras así creadas son tales que un millón de millones de ellas podrían funcionar en forma paralela, según el jefe del grupo, Profesor Shapiro.- Y para ilustrar acerca de su capacidad de proceso, se estima que podrían llevar a cabo un Billón de operaciones por segundo con una precisión superior al. 99.8% en un tubo de ensayo. Hay más aún: los científicos sostienen que su invento podría llevar a la creación de un dispositivo capaz de procesar el ADN dentro del cuerpo humano que permitirá aplicaciones médicas de gran alcance. Los computadores están hechos con hebras de ADN mezcladas con enzimas. Se supone que podrían pasar décadas (talvez años, o menos...) antes de que estos microscópicos computadores puedan ser perfeccionados, aunque evidentemente son algo más que una seudoutopía. En teoría estos ordenadores podrían ser mil veces más rápidos que los PC normales y utilizarían menos energía.

Como conclusión: así como Einstein y advirtió al Mundo que bombardear el átomo podría desencadenar energía incontrolable ('remember Hiroshima'), véase como los científicos actuales esterilizan y destruyen residuos de sus experimentos como prueba de que estos espectaculares avances de la ciencia deben ser manejados con extrema prudencia. Científica y política.