Los algoritmos genéticos y la evolución “horizontal”

Por Cristian Aguirre

225

Los AG nos dan una brillante posibilidad de analizar con mayor claridad cual es el poder real del mecanismo evolutivo propuesto por el Darwinismo en el escenario de la biología real. Para analizar este asunto es conveniente proponer dos conceptos de evolución biológica que definan de que tipo de evolución hablamos.

El primer tipo de evolución la podríamos llamar “Evolución horizontal” y concierne a todo cambió adaptativo morfológico que no implica incremento de complejidad funcional.

El segundo tipo de evolución es la “Evolución vertical” la cual concierne a todo cambio con incremento de complejidad funcional. Esta es el tipo de evolución que implicaría que una simple célula procariota termine en un pluricelular complejo como un ser humano.

¿A cual de estos tipos de evolución refrendan los AG? ¿O puede refrendarlos a ambos?

Antes de responder a estas preguntas y describir con mayor profundidad en qué consisten estos tipos de evolución es necesario primero definir adecuadamente la complejidad y como cuantificarla.

Podemos definir la complejidad de un sistema como el conjunto de todos los casos posibles para un particular número de componentes, rangos de magnitudes y  las posibles disposiciones que puedan tener entre sí.

Un boleto de lotería de 5 dígitos nos da un ejemplo sencillo de complejidad. En este caso tenemos una estructura con la siguiente colección de restricciones que acotan el conjunto de casos posibles:

1º. Tiene que ser una colección de 5 caracteres (restricción numérica). N = 5

2º. Tienen que ser caracteres numéricos con base 10 (restricción de magnitud). carácter × {0,1,2,3,4,5,6,7,8,9}, por lo tanto R = 10

3º. Tienen un orden unidimensional único (restricción de orden) O = 1

Como los caracteres son homogéneos al tener el mismo rango podemos usar la siguiente expresión:

C = R^N.O

El número de casos posibles será entonces:

C = 10^5 x 1 = 100.000 casos

El resultado no sorprende puesto que es fácil deducir que entre 0 y 99999 hay 100000 números distintos. La probabilidad de que salga el número de lotería para un caso particular será por tanto:

P = 1/C = 10^-5 = 0.00001

El cálculo de complejidad ya no resulta ser tan sencillo si la colección de elementos es heterogénea, es decir, tienen rangos de magnitud diferentes. En dicho caso podemos entonces aplicar la siguiente generalización:

C = O. (R1 x R2 x R3 x….x Rn)

Siendo C la complejidad, O el orden de los componentes, n el número de componentes y Ri los rangos de magnitud de cada componente. (Nota: A diferencia del concepto de orden que formula David Abel que se entiende como disposición homogénea, el concepto de orden expresado aquí debe entenderse como disposición, no como homogeneidad).

En este caso a los organizadores del juego de lotería se les ocurre añadir una disposición bidimensional a cada número posible, de tal modo que, si coincide la forma y el número adecuado se gana la lotería. Supongamos que el número premiado es el siguiente:

7
3 0 8
4

Dispuesto de dicha manera, si el 7 estuviese encima del 8, por ejemplo, no será el número premiado. Veamos las distintas formas posibles que puede adaptar este número:

Tenemos entonces 39 formas bidimensionales distintas para 100.000 números cada una. En este caso O = 39 y de la expresión anterior para calcular la complejidad tenemos:

C = R^N . O = 10^5 . 39 = 3.900.000

Ahora es más difícil acertar, puesto que este sistema es más complejo que el juego de lotería inicial. Ahora incorpora un orden bidimensional y por ello existen más posibilidades distintas. Podemos incluso ganar en complejidad si adoptamos una tercera dimensión o incluso una dimensión temporal. La siguiente figura muestra los distintos modos que pueden adoptar cuatro cubos sin considerar sus rotaciones e imágenes especulares:

Los isómeros nos muestra un ejemplo natural en el cual una disposición distinta de compuestos químicos con el mismo juego de componentes presentan propiedades químicas muy diferentes. Por ejemplo el alcohol etílico y el dimetil éter presentaban diferentes propiedades pese a que ambos tienen la formula C2H6O.

En un principio se pensaba que la estructura química solo llegaba a lo que la formula empírica podía esclarecer, algo parecido al número de lotería. Pero conforme prosiguieron las investigaciones se encontraron nuevas restricciones. Descubrieron que un determinado átomo se podía combinar solo con cierto número de otros átomos. El hidrógeno solo se une con otro átomo de un elemento distinto mas no con dos, el oxigeno puede unirse a dos, el nitrógeno a 3 y el carbono a 4, podía pues haber CH4 pero no CH5. Esta propiedad de los átomos de poder unirse a otros en un número limitado de formas se denominó “valencia” y ello indujo a esquematizar las posibles uniones de una manera estructurada donde se viera bidimensionalmente como se conectan. En 1861, Kekule‚ publicó un texto en el que incorporó este sistema, popularizando desde entonces lo que se llama “formula estructural”.

El misterio de los isómeros quedo con este avance dilucidado, por cuanto se pudo saber que dos compuestos, aunque tengan la misma composición, pueden estar ensamblados de manera distinta y por ello tener propiedades diferentes. Si vemos ahora las fórmulas estructurales del alcohol etílico y el dimetil éter constataremos la diferencia:

Como se observa ambos compuestos están ensamblados de distinta forma y ello implicara comportamientos diferentes. Obviamente este no es el único caso existente, existen muchísimos, pues para compuestos con mayor número de elementos hay mayores posibilidades de isomería, lo que en conjunto permite esperar descubrir un número virtualmente ilimitado de ellos. Por ejemplo, un compuesto que tenga 40 átomos de carbono y 82 de hidrógeno podría mostrar 62,5 millones de disposiciones distintas o isómeros. Este conjunto de posibilidades constituye su complejidad y a su vez constituye también su espacio de búsqueda. Es importante señalar que un espacio de búsqueda de una estructura esta matemáticamente acotado superiormente por todos los casos permitidos por su complejidad, pero para casos reales como los AG informáticos y biológicos el espacio de búsqueda efectivo puede ser mucho menor que el matemático.

Ahora veamos cual es la complejidad de un aminoácido antes de ver la relativa a una proteína. Sabemos que un aminoácido se sintetiza mediante el concurso de 3 bases de ácido nucleico. Cada base puede tener 4 elementos que pueden ser Adenina, Timina, Guanina y Citosina en un orden lineal simple. Según esto la complejidad de un aminoácido será la siguiente:

Orden = 1; Magnitudes = 4; Número de componentes = 3

C = 1 x (4x4x4) = 4^3 = 64

Lo cual significa que con 3 bases se pueden sintetizar 64 aminoácidos. Pero, entonces ¿porque necesitamos solo 20? Lo que sucede es que existe redundancia en el juego de las 3 bases de tal modo que se puede sintetizar un aminoácido con más de un codón (juego de bases). De este modo hay aminoácidos codificados por un solo codón tal como es el caso del Triptofano y otro como la Leucina que puede ser codificada por 6 codones distintos.

De todos modos, como vemos, es una complejidad bastante modesta la de este monómero. Ahora vayamos a ver la complejidad de una proteína, el elemento más básico de los organismos biológicos. Según sabemos esta es una cadena de aproximadamente 100 o más eslabones que se pliega sobre si misma en la forma de un ovillo de acuerdo a las atracciones electrostáticas y enlaces débiles generados por los 20 aminoácidos distintos con los cuales puede estar constituido un eslabón. Su complejidad, suponiendo que tenga solo 100 eslabones, sería la siguiente:

C = 1 x (20x20x20x………..x20) 100 veces,

es decir:

C = 20^100 lo cual es aproximadamente 10^130

Como se observa la complejidad de una proteína es una cifra portentosa, si se estima que el universo contiene 10^80 protones, necesitaremos 10^50 universos para equiparar todos sus protones con todas las proteínas posibles. Pero no todas las proteínas posibles son funcionales para los sistemas biológicos.

Dicha restricción se denomina Restricción Funcional. La misma establece que toda estructura funcional, es decir, que tiene un objetivo y funciona para conseguirlo, es un subconjunto, más bien pequeño o incluso único, de todos los casos posibles permitidos por su complejidad. El número premiado de un juego de lotería sería un ejemplo de estructura funcional con restricción igual a 1 ya que dicho número es el único que funciona para cobrar el premio mayor.

¿Ahora bien cual es la complejidad de un cromosoma con una multitud de genes muchos de los cuales están asociados productivamente en maquinarias moleculares o cumplen funciones de regulación o catalización? Esto ya es mas difícil de calcular porque habría que tener en cuenta al detalle cómo están organizados entre sí los diversos genes, es decir, que tipos de asociación comprenden, ya sea esta productiva o aditiva, para así poder medir su complejidad. Esto es importante porque la complejidad de dos elementos asociados aditivamente es, como el nombre alude, la suma de ambas complejidades y la complejidad de dos elementos asociados productivamente es pues el producto de sus complejidades. Y la combinación de ambos casos arrojará una situación híbrida donde los complejidades se multiplique en unos casos y sumen en otros. Por ejemplo C= A*B*(C+D)

No importa de que caso se trate la complejidad de cada solución nunca podrá ser mayor a la complejidad de su cromosoma. Luego no puede una solución sorprendernos con una mayor complejidad. Si ello sucediera sería como encontrar un boleto de lotería que tuviera 6 dígitos y no 5, o que encontráramos un aminoácido formado con nuestro gen de 100 codones que tuviera 104 aminoácidos.

De hecho la realidad biológica debería desinflar el entusiasmo que despiertan los AG informáticos para inferir el poder de los biológicos al saber que, a diferencia de los primeros que disponen de un espacio de búsqueda cuya magnitud y recorrido solo puede limitarse por la potencia del computador que los recorre. En la biología real el espacio de búsqueda de un gen heterocigotico, es decir, que dispone de muchos alelos posibles y no solo uno, es miserablemente pequeño con respecto al informático así que, si bien con la informática podemos volar, con la biología solo podemos gatear.

Ahora bien, cuando hablamos de una evolución horizontal hablamos de un cambio morfológico con carácter adaptativo que muestra la enorme ductibilidad de los organismos biológicos para adaptarse a nuevos retos ambientales que es lo que en realidad observó Charles Darwin en su famoso viaje. Hasta aquí no estaba equivocado. En efecto los organismos biológicos tienen la capacidad de conmutar juegos de genes por varios mecanismos que permiten una descendencia que pueda exponer muchas soluciones que sean seleccionadas para la subsistencia. Por ejemplo, un sistema de mimetismo puede desarrollarse de dicha manera dentro de la visión evolutiva darwiniana permitiendo que un sistema de camuflaje sea cada vez mas afín al entorno mediante la supervivencia ante la depredación de los que no tienen sistemas de camuflaje más eficientes. Hasta aquí los AG pueden, aunque repito no son un símil perfecto del biológico y hay muchos aspectos discutibles, apoyar la plausibilidad del mecanismo evolutivo darwiniano.

Sin embargo, el dogma postulado por Darwin para refrendar su naturalismo consiste en que ésta evolución horizontal es extrapolable a una evolución vertical que explicara como la vida no solo a progresado en complejidad a lo largo de su historia, sino que incluso progreso desde la materia hasta la complejidad actual por efecto de la selección natural, el tiempo y el azar.

¿Refrendan los AG este tipo de evolución?

Se dijo en el anterior post de esta serie que tanto los AG informáticos como los biológicos necesitan para especificar una solución susceptible de ser seleccionada por la función de aptitud de un cromosoma. Este cromosoma esta formado por un juego de parámetros y su complejidad conforma precisamente su espacio de búsqueda. Los que conocen a fondo los AG saben que si el cromosoma y la función de aptitud no son especificados cuidadosamente el AG puede engañarnos y no por malicia, sino simplemente porque no supimos definir bien el problema y su teleología (finalidad). De este modo el AG trabaja y encuentra lo que se le especificó, pero ello no era lo que se quería porque no se supo plantearlo bien. Este ajuste requiere evidentemente de inteligencia para realizarse y no sale de la nada ni es gratis como tampoco lo son los resultados. Y si bien la solución particular no fue diseñada por ningún diseñador, el artificio general para conseguirlo si fue diseñado específicamente para alcanzar dicho propósito.

Hace unas semanas publique en este blog un post titulado: “Función y Desarrollo. Elementos claves”. En el mismo propuse una idea que a muchos lectores les parecería extravagante y de hecho fue criticada, pero que es muy enfática. Una función puede trabajar con distintos juegos de parámetros y con ellos producir distintas soluciones. Los desarrollos, dije, representan los fenómenos naturales y las funciones el diseño que los realiza físicamente. Expuse el ejemplo de un programa que desarrolle para generar hermosas figuras de colores. Cada una de ellas salía de un algoritmo que usaba funciones trigonométricas con un juego aleatorio de parámetros. De este modo ya no era el autor especifico de cada figura y de hecho si hubiera querido expresar mi arte habría empleado una aplicación de dibujo, pero no es el caso. No hubo aquí tampoco un diseñador de cada imagen, pero yo cree el algoritmo y afine el juego de parámetros con las condiciones de contorno necesarias para que cada imagen cumpliera ciertas restricciones en color, tamaño y forma. De este modo no soy el autor “artístico” de cada imagen, pero si soy el autor indirecto de todas ellas porque las he llevado a la existencia.

Del mismo modo las soluciones de un AG no las diseñó analíticamente ningún ingeniero, pero hubo uno o varios ingenieros que especificaron el cromosoma y la función de aptitud necesaria para hallarlo y allí tuvo un ineludible origen inteligente. Por lo tanto, recíprocamente podemos concluir que los algoritmos biológicos pueden producir soluciones de modo natural, pero el motor que los genera tiene un origen inteligente. La vida tiene ya incorporados los conjuntos de genes necesarios para que la variabilidad genética pueda mostrar su plasticidad con el ambiente mediante el AG biológico. Pero ya está incorporado, no nace de novo.

Por otra parte los espacios de búsqueda de un AG biológico son sumamente inferiores al espacio de búsqueda matemático. Consideremos que para un gen heterocigótico, es decir, que cuenta con un grupo de genes funcionales diferentes (a excepción de los que comportan defectos genéticos) llamados alelos, no hay más espacio de búsqueda que dicho conjunto y el mismo está, de hecho, muy lejos de la complejidad del gen.

Por último, la variabilidad genética de un ser viviente que se mide por el porcentaje de locis heterocigoticos (locis con más de un gen distinto) nunca es un 100%. Según, estimaciones realizadas mediante la electroforesis de gel, una técnica que mide la variabilidad mediante el examen de la tasa de variantes proteicas, las plantas son la que presentan mayor variabilidad con un 17% en promedio, en segundo lugar están los invertebrados con un 13,4% y en último lugar los vertebrados con un promedio de 6.6%. Esto significa que nunca todo el cromosoma esta sujeto al intercambio de parámetros distintos y con ello reduce sus espacios de búsqueda ostensiblemente.

En este sentido, habiendo evaluado los últimos aspectos reseñados, podemos apreciar que, aunque los AG informáticos comparten en gran medida la metodología de los biológicos en los cuales basan su inspiración, existe una diferencia de potencia significativa entre ellos. Sin embargo, aún siendo esto cierto el poder adaptativo de los organismos biológicos sigue siendo aún formidable.

Ahora bien, ¿No podríamos esperar que, por fenómenos de duplicación de genes, asimilaciones por transferencia genética horizontal, endosimbiosis u otros fenómenos de asimilación y ampliación genómica, se produjeran por el mecanismo de los AG nuevas funciones biológicas y se produjera con ello una evolución vertical, es decir, con incremento de complejidad funcional?.

Esto lo responderemos en el siguiente post titulado “Los algoritmos genéticos y la evolución vertical”

Referencias:

1. Francisco Ayala. Mecanismos de la Evolución. Especial Evolución de la revista Investigación y Ciencia.

2. Cristian Aguirre del Pino. Elementos de Estructuras funcionales. OIACDI 2010.

2 Respuestas para Los algoritmos genéticos y la evolución “horizontal”

  1. Y todo eso sin tener en cuenta la entropia quimica
    que tan bien explico Wilder-Smith el “The Great Debate”

  2. Doctor Cristian:
    Agradezco tus esfuerzos.
    Pero el que no quiere creer no cree ni en el teorema de pitágoras. Mira sino cómo les ha faltado tiempo a los materialistas, los que sólo creen en ondas-partículas y campos, a inventarse con ayuda de mate-mágicas (ad hoc) infinitos universos. Claro, si una probabilidad no es cero entonces en alguno de los multiversos se formará vida al azar, es más, habrá infinitos universos en que la haya, pues infinito multiplicado por cualquier número (por pequeño que sea) es siempre infinito, y encima cada uno de los multiversos es eterno en el tiempo, t= infinito. Está claro porqué con esos subterfugios (lo llaman ciencia) así habrá siempre gente insultándonos ¡creacionistas!

Deje una respuesta

Leer entrada anterior
Provine, el Darwinismo y el libre albedrío

Por Felipe Aizpún William Provine es profesor de Historia de la Biología en la Universidad estadounidense de Cornell (New York...

Cerrar