Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Introduccin
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
Los Algoritmos Genticos son buenos al tomar grandes, potencialmente enormes espacios de bsqueda y navegar por entre ellos, buscando por combinaciones ptimas de cosas, soluciones que de otra manera se tomaran toda una vida para encontrar.
- Salvatore Mangano Computer Design, Mayo 1995
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
D c mth d iret e o s
F o ac in n c i Nw n e to
In iret mth d d c e os
Eo tio a a o m v lu n ry lg rith s
S u te a n a g imla d n e lin
Dn m p g m in y a ic ro ra m g
S q e tia e un l
D trib te S a y ta Gn ra n l is u d te d -s te e e tio a
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Desarrollados: en los EUA en los 1970s Pioneros: J. Holland, K. DeJong, D. Goldberg Tpicamente aplicados a:
La optimizacin discreta no son muy rpidos Una buena heurstica para problemas combinatorios tradicionalmente enfatiza el combinar la informacin de padres saludables (cruzamiento) muchas variantes, e.g., modelos de reproduccin, operadores
Caractersticas Atribuidas :
Caractersticas Especiales:
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Algoritmos Genticos
El AG original de Holland se conoce ahora como el gentico algoritmo simple (AGS) Otros AGs usan diferentes:
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Seleccin de sobrevivientes Todos los hijos remplazan a los padres Especialidad nfasis en el cruzamiento
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Cadenas de Bits (0101 ... 1100) Nmeros Reales (43.2 -33.1 ... 0.0 89.2) Permutaciones de elementos (E11 E3 E7 ... E1 E15) Listas de reglas (R1 R2 R3 ... R22 R23) Elementos del programa (programacin gentica) ... cualquier estructura de datos ...
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Representacin
Espacio Fenotipo Espacio Genotipo = {0,1}L Codificado (representacin) 10010001 10010010 010001001 011101001 Decodificado (representacin inversa)
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Tipos de AGS
poblacin
miembros descartados
desechos
AG Generacional: poblaciones enteras son reemplazadas en cada iteracin AG Estado-estable: unos cuantos miembros son reemplazados en cada generacin
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
1. Seleccionar a los padres del pozo de apareamiento (tamao del pozo = tamao de la poblacin) 2. Mezclar el pozo de apareamiento 3. Para cada par consecutivo aplicar el cruzamiento con probabilidad pc , de lo contrario copiar los padres 4. Para cada prole aplicar la mutacin (cambiar el bit con probabilidad pm independientemente del bit) 5. Remplazar la poblacin entera con la prole resultante
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Escoja un punto al azar en los dos padres Separe a los padres en este punto de cruce D origen a nueva prole al intercambiar sus extremos Pc tpicamente en el intervalo (0.6, 0.9)
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Altere cada gen independientemente con una probabilidad pm pm es conocida como el ndice de mutacin
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Idea Principal: mejores individuos tienen mayor probabilidad Probabilidad proporcional a la aptitud Implementacin: tcnica de la ruleta Asignar a cada individuo una parte de la ruleta Gire la ruleta n veces para seleccionar n individuos
1/6 = 17%
A
3/6 = 50%
2/6 = 33%
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Representacin: cdigo binario, e.g. 01101 m 13 Tamao de la poblacin: 4 X-amiento de 1-punto, mutacin por bit Seleccin de ruleta Inicializacin azarosa
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
El AG simple
an se usa como referencia para AGs nuevos Representacin es muy restrictiva Mutacin & cruzamiento solo se aplica a cadenas de bits & representaciones de enteros Mecanismo de seleccin es sensitivo en la convergencia de poblaciones con valores de aptitud muy cercanos Modelo de poblacin generacional (paso 5 en AGS ciclo reproductivo) puede ser mejorado con la seleccin explicita del sobreviviente
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
El desempeo con cruzamiento de 1 punto depende del orden en el que las variables ocurren en la representacin
ms probablemente mantendr juntos a los genes que estn cercanos nunca podr mantener juntos a genes de los extremos opuestos de la cadena esto es conocido como la tendencia posicional Puede ser explotado si conocemos la estructura del problema, pero generalmente ste no es el caso
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Cruzamiento de n-puntos
Escjanse n puntos azarosos de cruce Seprense los genes en estos puntos Pegue las partes, alternndose entre los padres Generalizacin de 1 punto (todava con tendencia posicional)
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Cruzamiento uniforme
Asignar cabezas a un padre, y colas a el otro Eche una moneda al are para cada gen del primer hijo Haga una copia inversa del gen para el segundo hijo La herencia es independiente de la posicin
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Cruzamiento O mutacin?
Debate con ms de una dcada: cual es mejor / necesario / principales-antecedentes Respuesta (al menos, ms de comn acuerdo):
depende del problema, pero en general, es mejor tener a ambos ambos tienen un papel diferente es posible tener AE-solo-mutacin, AE-solo-Xamiento no trabajan
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
El cruzamiento es exploratorio, realiza un gran brinco a un La mutacin es explotadora, esta crea al azar pequeas
desviaciones, por lo cual permanece cerca (en el rea de) del padre
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Solo el cruzamiento puede combinar la informacin de dos padres Solo la mutacin puede introducir nueva informacin (alelos) El cruzamiento no cambia las frecuencias de los alelos en la poblacin (por medio de experimentos: 50% 0s en el primer bit en la poblacin, ?% despus de llevar a cabo n cruzamientos) Para pegarle al ptimo a menudo se necesita una mutacin suertuda
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Otras representaciones
la codificacin Gray es un mapeo que significa que pequeos cambios en el genotipo causan pequeos cambios en el fenotipo (a diferencia del cdigo binario). Un mapeo genotipofenotipo ms suave hace la vida ms fcil para el AG
Hoy en da es ms aceptado que es mejor codificar las variables numricas directamente como
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
Un ejemplo abstracto
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms
En resumen
A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Genetic Algorithms