Recombinación (computación evolutiva)

Recombinación (computación evolutiva)

La recombinación (en inglés, crossover) es un operador genético utilizado en los algoritmos genéticos para generar variación en la programación de un cromosoma o cromosomas de una generación a la siguiente. Es análogo a la recombinación de la reproducción sexual biológica, en la que los algoritmos genéticos se inspiran.

Contenido

Técnicas de recombinación

Existen muchas técnicas de recombinación para organismos que utilizan diferentes estructuras para almacenar los datos.

Recombinación en un punto

Se selecciona un punto en el vector del primer parental. Todos los datos más allá de este punto en el vector del organismo se intercambiarán entre los dos organismos parentales. Los organismos resultantes son los hijos:

Computational.science.Genetic.algorithm.Crossover.One.Point.svg

Recombinación en dos puntos

La recombinación en dos puntos requiere seleccionar dos puntos en los vectores de los organismos parentales. Todos los datos entre los dos puntos se intercambian entre los organismos parentales, creando dos organismos hijos:

Computational.science.Genetic.algorithm.Crossover.Two.Point.svg

Corte y empalme

Otra variante de recombinación, el enfoque "cortar y empalmar", ocasiona un cambio de la longitud de los vectores de los hijos. la razón para esta diferencia es que se selecciona un punto de corte diferente para cada vector parental:

Computational.science.Genetic.algorithm.Crossover.Cut.and.Splice.svg

Recombinación uniforme y uniforme media

En ambos de estos esquemas los dos padres se combinan para producir los descendientes.

En el esquema de recombinación uniforme (UX por el inglés Uniform Crossover), los bits del vector se comparan individualmente entre ambdos padres. Los bits se intercambian con una probabilidad fijada, usualmente 0.5.

Computational.science.Genetic.algorithm.Crossover.Uniform.Crossover.svg

En el esquema de recombinación uniforme media (HUX del inglés Half Uniform Crossover), exactamente la mitad de los bits que son diferentes se intercambian. Por esto se necesario calcular la distancia de Hamming (número de bits diferentes). Este número se divide entre dos, y el número resultante es la cantidad de bits diferentes que tiene que ser intercambiada entre los parentales.

Computational.science.Genetic.algorithm.Crossover.Half.Uniform.Crossover.svg

Recombinación de cromosomas ordenados

Dependiendo de cómo representa la solución el cromosoma, un cambio directo puede no ser posible.

Un caso de ello se da cuando el cromosoma es una lista ordenada, como la lista ordenada de las ciudades visitadas en el problema del viajero. Un punto de recombinación se selecciona en los padres. Puesto que el cromosoma es una lista ordenada, un cambio directo introduciría duplicados y extraería candidatos necesarios de la lista. En cambio, el cromosoma hasta el punto de cruzamiento se retiene para cada padre. La información después del punto de cruzamiento se ordena como está ordenada en el otro padre. Por ejemplo, si nuestros dos padres son ABCDEFGHI e IGAHFDBEC y nuestro punto de cruzamiento se establece después del cuarto carácter, entonces los hijos que resultan serían ABCDIGHFE e IGAHBCDEF.

Tendencias de la recombinación

Para operadores de recombinación que intercambian secciones contiguas de los cromosomas (p. ej. k-point) la ordenación de las variables se puede tornar importante. Esto es especialmente cierto cuando las buenas soluciones contienen bloques de construcción que podrían ser interrumpidas por un operador de recombinación no respetuoso.

Véase también


Wikimedia foundation. 2010.

Игры ⚽ Поможем сделать НИР

Mira otros diccionarios:

  • Computación evolutiva — La computación evolutiva es una rama de la inteligencia artificial que involucra problemas de optimización combinatoria. Se inspira en los mecanismos de la Evolución biológica. Contenido 1 Historia 2 Algoritmos evolutivos 3 Aspectos a considerar …   Wikipedia Español

  • Sobrecruzamiento (computación evolutiva) — Saltar a navegación, búsqueda El sobrecruzamiento es un operador genético utilizado en los algoritmos genéticos para generar variación en la programación de un cromosoma o cromosomas de una generación a la siguiente. Es análogo a la recombinación …   Wikipedia Español

  • Estrategia evolutiva — Saltar a navegación, búsqueda En informática, las estrategias evolutivas son métodos computacionales que trabajan con una población de individuos que pertenecen al dominio de los números reales, que mediante los procesos de mutación y de… …   Wikipedia Español

  • Evolución biológica — «Evolución» redirige aquí. Para otras acepciones, véase Evolución (desambiguación). «Evolucionismo» redirige aquí. Para otras acepciones, véase Evolucionismo (desambiguación). Parte de la serie de …   Wikipedia Español

  • Evolución diferencial — Saltar a navegación, búsqueda La Evolución Diferencial (ED) es un método de optimización perteneciente a la categoría de computación evolutiva, aplicado en la resolución de problemas complejos. Al igual que otros algoritmos de esta categoría, la… …   Wikipedia Español

  • Algoritmo evolutivo — Los algoritmos evolutivos son métodos de optimización y búsqueda de soluciones basados en los postulados de la evolución biológica. En ellos se mantiene un conjunto de entidades que representan posibles soluciones, las cuales se mezclan, y… …   Wikipedia Español

  • Algoritmo genético — Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico. En los años 1970, de la mano de John Henry Holland, surgió una de las líneas más prometedoras de la… …   Wikipedia Español

  • Operador genético — Un operador genético es una función empleada en los algoritmos genéticos para mantener la diversidad genética de una población. La variación genética es necesaria para el proceso de evolución. Los operadores genéticos utilizados en los algoritmos …   Wikipedia Español

  • Historia de la biología — La portada del poema sobre la evolución de Erasmus Darwin The Temple of Nature muestra a una diosa que retira el velo de la naturaleza (en la persona de Artemisa). La alegoría y la metáfora han desempeñado a menudo un papel importante en la… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”