Esta es una continuación de Algoritmo evolutivo: selecciones explicadas.
Si está leyendo para obtener una comprensión de alto nivel de la recombinación y las mutaciones en la representación basada en premutaciones, este artículo será autosuficiente.
Sin embargo, para comprender todos los detalles de cada paso del proceso, será útil leer primero el artículo vinculado anteriormente antes de continuar aquí.
Junto con los fragmentos de código del artículo anterior, podrás resolver el famoso problema del viajante (TSP) en tu computadora personal. Más importante aún, apreciará todo lo que sucede detrás de escena.
En la primera parte, describí el marco del algoritmo evolutivo de la siguiente manera:
Después de analizar un par de terminologías utilizadas en EA, profundizamos en los detalles de la inicialización del genotipo apropiado (en la Sección 3.1, para <1>), así como en la rueda de la ruleta y la selección de torneos (en la Sección 3.2, para <2>).
Continuaremos con la Sección 3.3 ahora.
Las variaciones pueden ser unarias (que involucran un solo genotipo) o binarias (que involucran dos genotipos). El objetivo es terminar con nuevos genotipos que, con suerte, tendrán una mayor aptitud que sus predecesores.
Las estadísticas nos ayudan a hacer realidad esta esperanza. Simplemente por casualidad, algún genotipo sería mejor, mientras que otros serían peores. Al trabajar mano a mano con la selección de padres (sección 3.2) y la selección de supervivencia (sección 3.4), los “éxitos” cuentan mucho más que los “fracasos”.
En las secciones 3.3.1 y 3.3.2, nos centramos en las variaciones realizadas para genotipos basados en permutación.
Técnicamente, el proceso de recombinación puede involucrar a más de dos padres, pero más no es necesariamente mejor [1]y el alcance de este artículo se mantiene en dos padres.