Algoritmo genético mejorado

En este enlace se puede ver el algoritmo genético que podemos llamar bruto, en este algoritmo el individuo a reproducirse, x, se elige con mayor probabilidad cuanto más adaptado está al medio, es decir, cuanto menor sea el valor de la función en ese punto, funcion[x], pero a la hora de reproducirse lo hace al azar, como sucede en la naturaleza.

Tomemos como ejemplo a los ciervos, muflones, o gamos y su comportamiento en la naturaleza. Vemos que el macho que gana la pelea a sus rivales es el que se reproduce con las hembras, pero no importa si las hembras son las mejores o las peores adaptadas. El macho ganador copulará con todas ellas y será el azar el que dé la próxima descendencia. Algo parecido sucede si tomamos como ejemplo a las hembras más adaptadas, supuestamente estas hembra más adaptadas son las que vivirán más años y con mejor salud y por tanto las que se reproducirán más veces que sus semejantes menos adaptadas, pero lo harán con quien le toque, ellas no pueden elegir al macho.

Por tanto, en la naturaleza se reproducen más veces los individuos más adaptados pero lo hacen con parejas aleatorias.

Supongamos ahora que el individuo más adaptado puede elegir a su pareja, como lo hacemos los seres humanos, y la elige cercana a su nicho, es decir, de su clase social, de su cultura, de su zona geográfica, etc. Una pareja muy cercano al individuo adaptado, y por tanto, supuestamente, también es un individuo bien adaptado. Con lo que sus descendientes estarán bien adaptados. Eso sí, adaptados a su nicho de habitabilidad, quizás haya otros nicho más productivos que den individuos más adaptados, y por tanto, puede suceder que con el tiempo los individuos con nichos menos productivos desaparezcan. Para alcanzar esos otros nichos se necesitan mutaciones aleatorias que exploren todo el conjunto habitable.

Traducido a funciones matemáticas, quiere decir, que el individuo x se reproducirá con otro individuo cercano a x, dando como resultado un hijo que esté en ese intervalo y por tanto seguirá explotando ese nicho. Ésto es muy bueno para el algoritmo, pues la mayoría de las funciones, en entornos muy pequeños, resultan ser más simples y siempre que haya individuos en ese entorno, al algoritmo le resulta más fácil convergen al punto óptimo de ese entorno. Puede que haya otros valores mejores pero para llegar a ellos se necesitan las mutaciones.

Ilustremos ésto con unos ejemplos:

Cuando nos acercamos los suficiente a un entorno del dominio de la función vemos que la función deja de tener altibajos y se muestra más simple, tiene un único punto óptimo fácil de alcanzar.

Algo similar le sucede a esta otra función, cuando calculamos la función en un entorno del dominio lo suficientemente pequeño, la gráfica se simplifica. Aquí se muestra un punto óptimo local, es decir, se ve que en este nicho podemos alcanzar el punto óptimo lo que no significa que no haya otros puntos mejores en otro lugar de dominio de la función.

En este ejemplo, la gráfica no es cóncava como sucede en los ejemplos anteriores, es creciente, pero igualmente es fácil de calcular el punto óptimo en un entorno pequeño del dominio de la función.

Bien, ya hemos introducido un cambio, el de elegir a la pareja cercana al individuo adaptado. Ahora vamos a introducir otra mejora que consiste en elegir al hijo que se quiere tener, es como la ingeniería genética, se toman varios óvulos y varios espermatozoides, se fecundan artificialmente y se ven las características de los zigotos para elegir al más adaptado de ellos y descartar a los demás. De este modo estamos seguros de que nuestra descendencia estará más adaptada que si se genera de forma aleatoria como sucede en la naturaleza.

Pero no solo eso, sino que además supongamos que se pueden modificar algunos genes de forma artificial para que la descendencia esté cercana a los progenitores pero no entre ellos, es decir, supongamos que si el padre es a y la madre b, en la naturaleza el hijo toma parte de los genes de a y el resto de b, por tanto, el hijo está en el intervalo [a,b]; pero si modificamos algunos genes artificialmente, por ejemplo, porque ellos podrían producir una enfermedad hereditaria del padre y también de la madre, podemos conseguir un hijo que esté cercano al intervalo [a,b] pero no dentro de él, es decir, un hijo que está en el intervalo [a-e,b+e], con e>0, y que por tanto, no tenga la posibilidad de contraer esa enfermedad.

Estamos ampliando el abanico de posibilidades y quitando herencias nocivas, además elegimos al hijo mejor adaptado, por tanto, la descendencia así creada convergerá más rápidamente al punto óptimo, crearemos seres que se adapten mejor al medio y por tanto, que sean los que más se reproduzcan en un futuro.

Todo ésto hace que este nuevo algoritmo sea mucho más eficiente que el anterior y su convergencia más rápida, de hecho, podemos ver en el ejemplo del algoritmo genético mejorado, que solo necesita tres iteraciones para dar un resultado mejor que en el ejemplo del algoritmo genético bruto.

Veamos a continuación las gráficas de esas tres iteraciones junto con las condiciones iniciales:

Condiciones iniciales del algoritmo.

Primera iteración

Segunda iteración

Tercera iteración

Claramente vemos que el algoritmo ha encontrado el mejor entorno global de la función y rápidamente converge a la solución óptima del problema.

Sin duda es un mejor algoritmo de optimalidad y una buena aportación al mundo de las matemáticas y de la empresa. Pero si nos ponemos a pensar en las implicaciones que algo así conlleva en el mundo real vemos que da miedo.

Ya se está dando que los seres humanos elegimos a la pareja con la que vamos a tener nuestros hijos, y con ello conseguimos que nuestros hijos estén mejor adaptados a la zona donde vivimos, que aprovechen mejor los recursos de esa zona y sean más eficientes. Por ejemplo, los hijos de los esquimales están mejor adaptados al frio que los hijos de los pigmeos, y los hijos de éstos están mejor adaptados al calor y a la selva que los hijos de los esquimales.

Si ahora podemos elegir a la descendencia para que tengan mayores y mejores habilidades que las que hemos tenido nosotros, y además podemos quitarle los genes indeseables, para evitar enfermedades y deficiencias que nosotros sí que podríamos padecer. Al paso del tiempo habrá una población mucho más adaptada al medio de lo que estamos nosotros. Y eso implica que explotarán los recursos del medio mucho más rápido de lo que lo hacemos nosotros. Y qué sucede cuando se agotan los recursos del planeta, que los seres vivos que no están tan adaptados desaparecen, con lo cual, se producirán extinciones en masa, una disminución de las selvas y bosques para usarlo como terreno de cultivos, etc.

Con el tiempo serán los seres humanos con un perfil muy concreto y muy especializado en el medio donde viven los que sobrevivirán, pero su proximidad genética, será su peor enemigo, pues los harán muy vulnerables a enfermedades especificas para ellos. Corriendo el riesgo de desaparecer por una nueva epidemia.

En definitiva, el futuro no resulta muy prometedor ni estable a largo plazo. Más bien, todo lo contrario, la nueva ingeniería genética, producirá descendientes que aprovechen más recursos del planeta que se traducirá en un rápido deterioro del planeta y un aumento en la probabilidad de extinción de la raza humana.

Y para los que ponen en duda este razonamiento les pongo el ejemplo de las bombillas y el consumo eléctrico. Por los años 1950 se usaban unas bombillas incandescentes, que daban luz pero consumían mucha energía. Años después se inventaron las bombillas de bajo consumo que eran más eficientes y funcionan con una quinta parte de la energía consumida por sus predecesoras. Pero ¿ustedes dirían que el consumo energético global ha disminuido por tener bombillas más eficientes? Claro que no, peor aún, el consumo energético ha aumentado muchísimo desde 1950, pues si bien es verdad que las bombillas consumen menos, también es cierto que hay muchísimas más bombillas que antes. Dando como resultado un mayor consumo energético a nivel global.

Algo similar es lo que pasaría con los individuos, cada uno de ellos será más eficiente, pero habrá muchísimos más, el número de habitantes en el planeta se disparará, pues estos individuos tienen menos enfermedades y vivirán más años. Dando como resultado un mayor consumo de los recursos del planeta que son finitos y limitados, y por tanto, agotables.

También hay que ver que no toda la población podría optar a esta ingeniería genética, que sólo los que tengan posibilidades económicas podrían elegir a los descendientes y por tanto, habría dos clases sociales bien distintas, la clase artificial con descendencia más adaptada y la clase natural que se convertirían en poco más que en esclavos de los anteriores.

Lo peor de todo, es que todo indica que vamos en esa dirección y que ya no hay vuelta atrás.

Más artículos relacionados con este tema:

Deja un comentario

Tu e-mail no será publicado. Los campos requeridos están marcados con *