• No se han encontrado resultados

2. Algoritmos Genéticos (AGs)

2.3. Funciones defectivas

2.3.5. Un método de mapeo evolutivo

En [19] se propone un método basado en el modelo de AG con una población simple, aunque puede extenderse fácilmente a múltiples poblaciones.

En lugar de una población de cromosomas, se mantiene una población de celdas, es decir que cada individuo consiste en una de estas celdas. Cada celda contiene dos cromosomas: un cromosoma binario de datos, que almacena el genotipo para la función de optimización, y un cromosoma de mapeo, que almacena las posiciones de los bits en forma de enteros.

Ejemplo

Una celda inicial podría tener los dos siguientes cromosomas:

El primer cromosoma es el de los datos, y almacena los bits del genotipo, y el segundo es el cromosoma de mapeo, y define el mapeo del genotipo al fenotipo, es decir, el segundo cromosoma indica la posición de los genes del primero.

El cromosoma de mapeo del ejemplo mapea el genotipo a un fenotipo (1, 1, 0, 1, 1, 1, 0, 0) exactamente igual al propio genotipo. Otro cromosoma de mapeo producirá un fenotipo diferente. Así, el cromosoma de mapeo:

mapea el cromosoma de datos al fenotipo (0, 0, 1, 1, 0, 1, 1, 1), que puede ser un parámetro de una función de optimización.

„

1 1 0 1 1 1 0 0 0 1 2 3 4 5 6 7

En el proceso de evolución, los cromosomas de datos y mapeo sufren operaciones genéticas independientes. Los cromosomas de mapeo atraviesan además operaciones de permutación adicionales, que alteran la ordenación de los bits.

Mientras que las operaciones genéticas que se aplican a los cromosomas de datos son las tradicionales ([19] sugiere el cruce por dos puntos y la mutación habitual), las diferentes implementaciones de los operadores genéticos para cromosomas de mapeo producen salidas significativamente distintas.

Si la ordenación de bits del cromosoma de mapeo se mantiene constantemente como permutación de las posiciones de bits originales, la aproximación es muy similar a la que usaba el bit etiqueta, citada anteriormente. Sin embargo, este método de permutación por sí mismo no ha demostrado ser muy eficiente afrontando problemas defectivos [19].

En [19] se sugiere un desacoplamiento del genotipo y del proceso de mapeo, permitiendo para ello que los cromosomas de mapeo se crucen y muten libremente usando operadores genético enteros, sin mantener un mapeo uno-a-uno entre un bit genotípico y uno fenotípico.

Operadores genéticos

Como se ha indicado, los operadores que se aplican a los cromosomas de datos son los habituales en AGs. Para los cromosomas de mapeo, [19] sugiere operadores genéticos especiales.

El operador de cruce que se emplea es un operador tradicional entero de cruce por dos puntos.

El operador de mutación es un operador entero que altera aleatoriamente un gen en una de la posiciones de bits. Además, se incluye una operación de reemplazamiento de genes en el proceso de mutación. A través de esta operación, un gen del cromosoma de mapeo puede ser copiado a otro gen. El proceso completo de la operación genética romperá el mapeo uno-a-uno entre un bit genotípico y uno fenotípico. Un bit genotípico del cromosoma de datos puede ser mapeado a más de un bit en el fenotipo.

Ejemplo

Dado un cromosoma de datos (1,0,0,1,1,1,0,0) y un cromosoma de mapeo (1,4,0,1,2,7,4,5), se puede construir el fenotipo (0,1,1,0,0,0,1,1). En dicho fenotipo, las posiciones de bits 3 y 6 del cromosoma de datos no se usan.

„

Los fundamentos de esta aproximación son:

Se fuerza a los cromosomas de datos a concentrarse en la exploración y supervivencia en el espacio genotípico donde los materiales genómicos sufren constantemente construcción y destrucción de esquemas. Por otra parte, los cromosomas de mapeo se concentran en el esfuerzo de obtener un mapeo óptimo entre el genotipo y el fenotipo.

Con celdas de múltiples cromosomas pueden desarrollarse diferentes modos de mapeo al mismo tiempo, puesto que cada mapeo se asocia a un genotipo particular. Por el contrario, algunas aproximaciones anteriores desarrollaban un único mapeo para toda la población. La introducción de mapeos que no son uno-a-uno permite la posibilidad de capturar esquemas útiles, como se detalla más abajo. Ésta es quizá la mayor ventaja de este método.

Captura de esquemas

Supongamos un esquema de orden n que consiste en r bits a 0 y s bits a 1 (entonces n = r + s). Los bits a 0 forman juntos un subesquema de orden r llamado subesquema-0, mientras que los bits a 1 forman un subesquema de orden s llamado subesquema-1. Por ejemplo, el esquema 1*0*1*0*1 de orden 5 consiste en un subesquema-1 1***1***1 de orden 3, y un subesquema **0***0** de orden 2. Según los bits definidos de un subesquema emergen durante la evolución, el sistema intentará mantener los mismos valores de bits en dichas posiciones.

Debido a que se permite que los cromosomas de mapeo evolucionen libremente para formar un mapeo no uno-a-uno, la presión de selección podría mapear la posición de un bit definido en la posición de otro bit definido en el mismo subesquema. El resultado es una formación explícita de un esquema. Por ejemplo, el subesquema fenotípico 1***1***1 puede ser reconstruido también desde le patrón genotípico 1***0***0 si el cromosoma de mapeo es (0,1,2,3,0,5,6,0).

Una vez que un subesquema está formado explícitamente, el cambio de un bit genotípico puede disparar el cambio de múltiples bits definidos en el fenotipo. Así, la habilidad de alterar los valores de múltiples bits acorta mucho la distancia de Hamming entre dos hiperplanos distantes en el espacio de soluciones. Por ejemplo, la distancia entre 1***1***1 y 0***0***0 puede ser reducida a uno. Por tanto, la búsqueda puede escapar de un atractor defectivo o dirigirse hacia un óptimo global más rápidamente. En los problemas defectivos, a menudo el óptimo global es el complemento del atractor defectivo. En consecuencia, la formación explícita de subesquemas-1 o subesquemas-0 puede ayudar a que la búsqueda salte desde un atractor defectivo directamente hasta el óptimo global.

La teoría de esquemas propone, como hemos visto, que esquemas de orden superior y de gran longitud tienen menos posibilidades de sobrevivir porque son más propensos a ser destruidos por los operadores genéticos [3]. Por el contrario, en el método propuesto por Chow un orden superior de subesquema permite una reducción mayor de la distancia Hamming entre dos hiperplanos distantes.

Conclusiones

Los experimentos descritos en [19] demuestran que el algoritmo descrito en este apartado es muy efectivo a la hora de resolver algunos de los problemas defectivos. Más generalmente, resulta también eficiente en la resolución de otros problemas GA-Hard descritos en [14] y [15].

Nosotros hemos implementado un prototipo que aplica este mapeo evolutivo para solucionar el problema defectivo. Para ello hemos añadido un segundo cromosoma (el de mapeo) a cada individuo y modificado los operadores genéticos del modo descrito. Los detalles concretos pueden verse en el apartado 4.5 del capítulo dedicado a la implementación.

Documento similar