Download - Clase7 2004

Transcript
Page 1: Clase7 2004

Clase 7: Componentes Básicos del Algoritmo Genético (Continuación)

Computación Evolutiva

Gabriela Ochoa

http://www.ldc.usb.ve/~gabro/

Page 2: Clase7 2004

Componentes Básicos de un AG

Representación o codificación Inicialización de la Población Función de Fitness (Función de Aptitud) Selección Operadores Genéticos Reemplazo de la Población Elitismo Criterio de Terminación Medidas de Desempeño

Page 3: Clase7 2004

Selección por Ranking

La población se ordena de acuerdo a sus valores de la función objetivo

El fitness asignado a cada individuo depende de su posición en el rango y no de su valor objetivo

Solventa los problemas de la selección proporcional Estancamiento: cuando la presión selectiva es muy baja Convergencia prematura: Súper-individuo

El rango de reproducción es limitado, ningún individuo genera un número excesivo de hijos

Escalamiento Uniforme, permite control sobre la presión selectiva

Page 4: Clase7 2004

Selección por Ranking

Sea Nind en número de individuos en la población, Pos la posición del individuo en la población (el menos apto tiene Pos=1, el mas aptop Pos=Nind). SP es la presion selectiva. El fitness de cada individuo se calcula como:

El Ranking lineal perimte valores de la presión selectiva en el rango [1.0, 2.0].

Page 5: Clase7 2004

Selección por Ranking

Best … … … … worst0.0

1.0

2.0

Los valores recomendados para ranking lineal es una pendiente lineal de 2.0 to 0.0 como se ve en la figura.

Esto significa que el mejor individuo espera tener el doble de la descendencia que el individuo promedio. Los individuos debajo del promedio tienen un chance pequeño de reproducirse

Page 6: Clase7 2004

Operadores Genéticos

Introducen diversidad en la población Crean nuevos individuos a partir de estructuras en

la población actual 2 tipos principales de operador

Mutación (reproducción asexual) Recombinación (reproducción sexual)

Cada operador tiene un parámetro que controla la probabilidad de su aplicación

Page 7: Clase7 2004

Mutación (Bit Strings)

1 1 1 1 1 1 1 Antes

1 1 1 0 1 1 1 Despues

La Mutación se aplica con probabilidad pm para cada gen

Gen Mutado

Page 8: Clase7 2004

Mutación

Para otras representaciones, puede tenerse mas de un operador de mutación

Al menos uno de ellos debe permitir el espacio de búsqueda sea explorado en su totalidad

La magnitud de la mutación es importante y debe ser controlada

La mutación debe producir cromosomas válidos

Page 9: Clase7 2004

Mutación (Números Reales)

Perturbar los valores agregando ruido aleatorio Comúnmente se usa una distribución

Normal/Gaussiana N(0,): x’i = xi + N(0,i) Otros Operadores de Mutación: ( No Uniforme,

Uniforme, de limite etc.)

Page 10: Clase7 2004

Mutación (Permutaciones)

Mutación por inserción Mutación por Desplazamiento Mutación por Intercambio Recíproco Mutación Heurística

Page 11: Clase7 2004

Mutación por Inserción

Se selecciona un valor en forma aleatoria y se le inserta en una posición arbitraria.

Ejemplo:

P = 9 4 2 1 5 7 6 10 3 8 ^

Elegimos la posición 7 y movemos ese valor a la posición 2, tendríamos:

P'= 9 6 4 2 1 5 7 10 3 8

Page 12: Clase7 2004

Mutación por DesplazamientoGeneralización de la mutación por inserción. En vez de mover un solo valor, se cambian de lugar varios a la vez. Por ejemplo:

P= 9 4 2 1 5 7 6 10 3 8

La cadena después de mutación sería:

P'=9 2 4 1 3 5 6 7 10 8

Page 13: Clase7 2004

Mutación por Intercambio Recíproco(2-swap)Se seleccionan dos puntos al azar y se intercambian estos valores de posición.

P = 9 4 2 1 5 7 6 10 3 8

^ ^

P‘ = 9 10 2 1 5 7 6 4 3 8

Page 14: Clase7 2004

Mutación Heurística (1/2)

1. Seleccionar genes al azar.

2. Generar vecinos de acuerdo a todas las permutaciones posibles de los genes seleccionados.

3. Evaluar todos los vecinos y seleccionar el mejor

P = 9 4 2 1 5 7 6 10 3 8

^ ^ ^Generar todas las permutaciones de: 4 5 10

1) 4 10 5 2) 5 4 10 3) 5 10 4

4) 10 5 4 5) 10 4 5

Page 15: Clase7 2004

Mutación Heurística (2/2)

Individuos generados:P1 = 9 4 2 1 10 7 6 5 3 8

P2 = 9 5 2 1 4 7 6 10 3 8

P3 = 9 5 2 1 10 7 6 4 3 8

P4 = 9 10 2 1 5 7 6 4 3 8

P5 = 9 10 2 1 4 7 6 5 3 8

De entre ellas, se selecciona a la mejor. En este caso, supondremos que es P4:P'= 9 10 2 1 5 7 6 4 3 8

Page 16: Clase7 2004

Recombinación

Naturaleza: proceso complejo que ocurre entre cromosomas homólogos. Los cromosomas se alinean, luego se fraccionan en ciertas partes y posteriormente intercambian fragmentos entre sí.

Computación Evolutiva: se simula la recombinación intercambiando segmentos de cadenas lineales de longitud fija (los cromosomas).

Page 17: Clase7 2004

Recombinación o Crossover

Población: . . .

Cada cromosoma es cortado en n porciones que son luego recombinadas (Ejemplo para n=1)

1 1 1 1 1 1 1 0 0 0 0 0 0 0 padrescorte corte

1 1 1 0 0 0 0 0 0 0 1 1 1 1 hijos

Parámetro pC controla la aplicación de la precombinación

Page 18: Clase7 2004

Recombinación

El cruce de un punto presenta varias desventajas. Ej., trata preferencialmente algunas posiciones del cromosoma: los extremos de una cadena.

No existe consenso en torno al uso de valores para n que sean mayores o iguales a 3.

En general, es aceptado que la cruza de dos puntos es mejor que la cruza de un punto.

Asimismo, el incrementar el valor de n se asocia con un mayor efecto disruptivo de la cruza.

Page 19: Clase7 2004

Cruce de 2 Puntos

Se seleccionan 2 puntos, y se intercambian los substrings entre ellos

P1 = 10|1010|1010 P2 = 11|1000|1110

H1 = 11|1010|1110 H2 = 10|1000|1010

Page 20: Clase7 2004

Cruce Uniforme Se intercambian bits. Para cada bit del hijo se

selecciona aleatoriamente de que padre viene

Page 21: Clase7 2004

Recombinación

Parents offspring

1-point crossover

2-point crossover

Uniform crossover = 50/50 at each locus

Page 22: Clase7 2004

Recombinación

Para otras representaciones, puede tenerse mas de un operador de recombinación

Los hijos deben heredar algo de cadacada padre, sino sería un operador de mutación

La recombinación debe producir cromosomas válidos

Page 23: Clase7 2004

Recombinación Discreta (Representación Real)

Crossover Uniforme

a db fc e g h

FD GE HCBAa b C Ed Hgf

Page 24: Clase7 2004

Crossover Aritmético

a db fc e

FD ECBA

(a+A)/2 (b+B)/2 (c+C)/2 (e+E)/2(d+D)/2 (f+F)/2

Recombinación Intermedia (Representación Real)

Page 25: Clase7 2004

Recombinación para Permutaciones Order Crossover (Davis, 1995) Partially Mapped Crossover PMX (Goldberg

y Lingle, 1985). Position-Based Crossover Order-Based Crossover Cycle Crossover Otros

Page 26: Clase7 2004

Order Crossover (1/3)

Sean P1 y P2 los padres Seleccionar (aleatoriamente) una subcadena de P1 Producir un hijo copiando la subcadena en las posiciones

correspondientes a P1, las restantes se dejan en blanco. Borrar los valores que ya se encuentren en la subcadena

de P2. La secuencia resultante contiene los valores faltantes. Colocar los valores en posiciones no conocidas del hijo de

izquierda a derecha. Para obtener el segundo hijo, se repiten los pasos del 1 al

4, pero tomando ahora

Page 27: Clase7 2004

Order Crossover (2/3)

P1 = 9 8 4 5 6 7 1 2 3 10

P2 = 8 7 1 2 3 10 9 5 4 6

Sub-cadena elegida: 5 6 7 1 (de P1)

Primer hijo:

H1 = X X X 5 6 7 1 X X X

Page 28: Clase7 2004

Order Crossover (3/3)

Borrar de P2 la sub-cadena tomada de P1:

P2' = 8 X X 2 3 10 9 X 4 X

Determinar los valores faltantes de H1 sustituyendo (de izquierda a derecha) los valores que aparecen en P2':

H1 = 8 2 3 5 6 7 1 10 9 4 Para obtener H2, el procedimiento es similar, aunque ahora la sub-cadena se tomará de P2 y la sustitución se hará a partir de P1'.

Page 29: Clase7 2004

Partially Mapped Crossover (PMX)1. Elegir aleatoriamente dos puntos de cruce

2. Intercambiar estos 2 segmentos en los hijos que se generan

3. El resto de las cadenas se obtienen haciendo mapeos entre los 2 padres:

1. Si un valor no está contenido en el segmento intercambiado, permanece igual.

2. Si está contenido en el segmento intercambiado, entonces se sustituye por el valor que tenga dicho segmento en el otro padre.

Page 30: Clase7 2004

Partially Mapped Crossover (PMX)P1 = 9 8 4 | 5 6 7 | 1 3 2 10P2 = 8 7 1 | 2 3 10 | 9 5 4 6 Seleccionar 2 pts., intercambiar segmentosH1 = X X X | 2 3 10 | X X X XH2 = X X X | 5 6 7 | X X X X Copiar valores que no están en el segmento intercambiado:H1 = 9 8 4 | 2 3 10 | 1 X X XH2 = 8 X 1 | 5 6 7 | 9 X 4 X Mapear los valores restantes:H1 = 9 8 4 2 3 10 1 6 5 7H2 = 8 10 1 5 6 7 9 2 4 3

Page 31: Clase7 2004

Valores para de los Parámetros

Probabilidad de cruce, pc, es normalmente escogida en el rango {0.6,…1.0}

Crossover aplicado con probabiliad pc y clonación con probabibildad 1- pc

Probabilidad de mutación pm normalmente baja, generalmente en el rango {0.001,0.01}

Una buena regla heurística es :

ppmm =1/(longitud del cromosoma) =1/(longitud del cromosoma)

Page 32: Clase7 2004

Reemplazo de la Población

Generacional: toda la población es reemplazada en cada generación

Estado – Estacionario (steady – state): Solo pocos individuos son reemplazados cada generación (típicamente uno o dos)

Gap Genracional: Entre los dos esquemas anteriores, se define un porcentaje (gap) de los individuos que serán reemplazados cada generación

Page 33: Clase7 2004

GA de Estado Estacionario

Dos decisiones deben considerarsea) Cómo seleccionar los individuos que serán padresb) Cómo seleccionar los individuos que serán eliminados

3 Maneras1) Padres de acuerdo al fitnees, indiv. a eliminar aleatoriamente2) Padres aleatoriamente, indiv. a eliminar por fitness inverso3) Tanto padres como indiv. A eliminar según fitness (inverso)

Ejemplo GENITOR, selecciona padres según fitness ordenado, los hijos reemplazan a los 2 peores miembros de la población

Page 34: Clase7 2004

Criterios de Terminación

Número fijo de generaciones o evaluaciones Considerando medidas de diversidad en la

población Cuando se alcance el óptimo (si es conocido) Luego de varias generaciones sin ninguna mejora Luego de un tiempo de computo fijo

Page 35: Clase7 2004

Elitismo

Asegura que al menos una copia del mejor individuo de la población, siempre pasa a la siguiente generación

Ventaja: Se garantiza la convergencia, i.e si se encuentra el óptimo, el GA converge a ese valor

Desventaja: Hay riesgo de quedar atrapado en máximos locales

Page 36: Clase7 2004

Alternativa al Elitismo

Salvar al mejor individuo encontrado hasta el momento, en una variable para tal fin

Al final de la corrida se considera este la solución del problema, si es mejor que el mejor individuo de la ultima generación

Page 37: Clase7 2004

Medidas de Desempeño (Medidas Estándard)

Dado que los GAs son métodos estocásticos, no pueden sacarse conclusiones de un sola corrida

Deben considerarse estádisticas (promedio, Desv. Estándard), de un número suficientemente grande de corridas independientes

Medidas éstandard: valores de fitness promedio y mejor, promediados sobre varias corridas

Page 38: Clase7 2004

Medidas de Desempeño (Aspectos Dinámicos) Es común correr el GA hasta un criterio fijo de

terminación y luego presentar los resultados. Esto ignora el aspecto dinámico del Algoritmo

Las conclusiones pueden ser fuertemente dependientes del criterio de terminación, pueden invertirse si se utilizan distintos puntos de parada del algoritmo

Es buena práctica mostrar resultados a lo largo de toda la corrida

Page 39: Clase7 2004

Medidas de Desempeño (Evaluaciones antes de solución) Número de generaciones o evaluaciones requeridas

antes de que el algoritmo encuentre una solución aceptable (o el óptimo global si este es conocido)

La meta es minimizar el número de generaciones o evaluaciones requeridas para encontrar la solución

Nro. de evaluaciones es preferido sobre nro. de generaciones, pues la evaluación del fitness domina el tiempo de ejecución


Top Related