Herencia (algoritmo genético)

En los algoritmos genéticos, la herencia es la capacidad de los objetos modelados para aparearse, mutar (similar a la mutación biológica ) y propagar sus genes de resolución de problemas a la próxima generación, con el fin de producir una solución evolucionada a un problema en particular. La selección de objetos que se heredarán en cada generación sucesiva está determinada por una función de aptitud, que varía según el problema que se aborde.

Los tratos y beneficios que son llevados a través de los cromosomas que también asemejan a la reproducción biológica. Generalmente estos cromosomas son representados por una serie de genes, que además son representados utilizando números binarios. Esta propagación es similar a la herencia biológica que ganamos de nuestros organismos. Este proceso además puede ser visto como una forma de refuerzo del aprendizaje porque la evolución de ello está conducido por la composición de los rasgos de una manera útil, la cual puede ser renumerada por su éxito, fomentando así rasgos benéficos.

Proceso 
Una vez que una nueva generación está lista para ser creada, todos los individuos que han tenido éxito y han sido elegidos para la reproducción se emparejan al azar. Luego, los rasgos de estos individuos se transmiten a través de una combinación de transversalidad y mutación. Este proceso sigue estos pasos básicos:

 Empareje objetos convenientes para el apareamiento.
 Determine al azar un punto de cruce para cada par.
 Cambie los genes después del punto de cruce en cada par.
 Determine aleatoriamente si algún gen está mutado en los objetos secundarios.

Luego de seguir estos pasos, se producirán dos objetos secundarios por cada par de objetos principales utilizados. Después  de determinar el éxito de los objetos en la nueva generación, este proceso puede repetirse utilizando los objetos nuevos que hayan tenido más éxito. Esto generalmente se repetirá hasta que se alcance una generación deseada o se encuentre un objeto que cumpla con un resultado mínimo deseado de la función de aptitud.

Si bien el cruce y la mutación son los operadores genéticos comunes que se utilizan en la herencia, también existen otros operadores, como la reagrupación y la colonización-extinción.

Ejemplo 
Suponga que estas dos cadenas de bits representan las características que transmiten dos objetos principales:

 Objeto 1: 1100011010110001
 Objeto 2: 1001100110011001

Ahora, considere que el punto de cruce se coloca aleatoriamente después del quinto bit:

 Objeto 1: 11000 | 11010110001
 Objeto 2: 10011 | 00110011001

Durante el cruce, los dos objetos intercambiarán todos los bits después del punto de cruce, lo que conducirá a:

 Objeto 1: 11000 | 00110011001
 Objeto 2: 10011 | 11010110001

Finalmente, la mutación se simula en los objetos al haber cero o más bits invertidos al azar. Asumiendo que el décimo bit para el objeto 1 está mutado, y el segundo y séptimo bits están mutados para el objeto 2, los hijos finales producidos por esta herencia serían:

 Objeto 1: 1100000111011001
 Objeto 2: 1101110010110001

Véase también 

 Artificial intelligence
 Bioinformatics
 Speciation (genetic algorithm)

Referencias

Enlaces externos 

 BoxCar 2D Un ejemplo interactivo del uso de un algoritmo genético para construir coches bidimensionales.
Algoritmos genéticos