Upload
daniel-torres
View
219
Download
0
Embed Size (px)
Citation preview
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 1/40
Estrategias Evolutivas
Computación EvolutivaGregorio Toscano Pulido
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 2/40
Computación EvolutivaEstrategias Evolutivas
Las siguientes diapositivas están basadas enlas notas de A.E. Eiben, J.E. Smith (Capítulo 4de su libro Introction to Evolutionary Computing)y en las notas de clase de Carlos Coello Coello
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 3/40
Computación EvolutivaEstrategias Evolutivas
Resumen de EEs
Autoadaptación de los tamañosde paso de la mutación
Especialidad
Selección de sobrevivientes
Aleatoria uniformeSelección de padres
Perturbación gaussianaMutación
Discreta o intermediaRecombinación
Vectores de valores realesRepresentación
(µ,λ) o (µ+λ)
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 4/40
Computación EvolutivaEstrategias Evolutivas
Historia
Las estrategias evolutivas fueron desarrolladasen 1964 por un grupo de estudiantes alemanesde ingeniería encabezado por Ingo Rechenbergy Hans-Paul Schwefel. Su objetivo era resolver problemas hidrodinámicos de alto grado decomplejidad
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 5/40
Computación EvolutivaEstrategias Evolutivas
Versión original
La versión original (1 + 1) − EE usaba un solopadre y con él se generaba un solo hijo. Estehijo se mantenía si era mejor que el padre, o delo contrario se eliminaba (a este tipo deselección se le llama extintiva, porque lospeores individuos tienen una probabilidad decero de ser seleccionados).
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 6/40
Computación EvolutivaEstrategias Evolutivas
Versión original
En la (1 + 1) − EE , un individuo nuevo esgenerado usando:
donde t se refiere a la generación (o iteración)en la que nos encontramos, y N(0, σ) es un
vector de números Gaussianos independientescon una media de cero y desviación estándar σ
xt 1= x
t N 0,
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 7/40
Computación EvolutivaEstrategias Evolutivas
Versión con poblaciones
Ingo Rechenberg (1973) introdujo el conceptode población, al proponer una estrategiaevolutiva llamada (µ + 1) − EE , en la cual hay µpadres y se genera un solo hijo, el cual puedereemplazar al peor padre de la población(selección extintiva).
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 8/40
Computación EvolutivaEstrategias Evolutivas
EE características adicionales
Aplicadas típicamente a: – Optimización numérica
Características atribuidas: – Rápidas – Buenos optimizadores para problemas con valores reales – Existe relativamente mucha teoría
Características especiales: – Auto-adaptación de parámetros
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 9/40
Computación EvolutivaEstrategias Evolutivas
Ejemplo introductorio
Tarea: minimimizar f : Rn R
Algoritmo: “EE de dos miebros”: – Vectores Rn directamente como cromosomas – Tamaño de población 1 – Una mutación crea un único hijo
– Selección voraz o selección extintiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 10/40
Computación EvolutivaEstrategias Evolutivas
Ejemplo introductorio: pseudo-
código
Set t = 0 Create initial point xt = ⟨ x1
t,…,xnt ⟩
REPEAT UNTIL (TERMIN.COND satisfied) DO Draw zi from a normal distr. for all i = 1,…,n yi
t = xit + zi
IF f(xt) < f(yt) THEN xt+1 = xt
– ELSE xt+1 = yt FI
– Set t = t+1 OD
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 11/40
Computación EvolutivaEstrategias Evolutivas
Ejemplo introductorio:
Supongamos que queremos maximizar:
donde:
Ahora, supongamos que nuestra poblaciónconsiste del siguiente individuo (generado deforma aleatoria):
f x1 , x2=100 x1 − x221− x1
2
−2.048≤ x1 , x2 ≤ 2.048
xt ,σ =−1.0,1.0 ,1.0,1.0
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 12/40
Computación EvolutivaEstrategias Evolutivas
Ejemplo introductorio
Supongamos también que las mutaciones
producidas son las siguientes:
x1
t 1= x1
t N 0,1.0=−1.00.61=−0.39
x2
t 1= x2
t N 0,1.0=10.57=1.57
C ió E l i
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 13/40
Computación EvolutivaEstrategias Evolutivas
Ejemplo introductorio:
Ahora, comparamos al padre con el hijo:Padre:Hijo:
Dado que: 201.416 > 4.0 el hijo reemplazaría alpadre en la siguiente generación.
f xt = f −1.0,1.0=4.0
f xt 1= f −0.39, 1.57=201.416
C t ió E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 14/40
Computación EvolutivaEstrategias Evolutivas
Mecanismo de mutación
Convergencia de las Estrategias EvolutivasEsta regla se conoce como la “regla del éxito1/5”, y en palabras dice: “ La razón entremutaciones exitosas y el total de mutacionesdebe ser 1/5. Si es más, entonces debeincrementarse la desviación estándar. Si es
menos, entonces debe decrementarse”.
C t ió E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 15/40
Computación EvolutivaEstrategias Evolutivas
Mecanismo de mutación
z valores tomados de una distribución normal N(ξ,σ) – el promedio ξ es 0
– la variación σ es llamado tamaño de paso de la mutación
σ es modificado por la “regla del éxito 1/5”:
Esta regla ajusta σ después de cada k iteraciones de
acuerdo a: – σ = σ / c if ps > 1/5
σ = σ • c if ps < 1/5
σ = σ if ps = 1/5
donde ps es el % de mutaciones exitosas, 0.8 ≤ c ≤ 1,=
C t ió E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 16/40
Computación EvolutivaEstrategias Evolutivas
Ilustración de una distribución
normal
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 17/40
Computación EvolutivaEstrategias Evolutivas
Otro ejemplo histórico:el experimento de la boquilla de un
jet
forma inicial
Forma final
Ejemplo: optimizar la forma de una turbinaEnfoque: mutaciones aleatorias a la forma y selección más
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 18/40
Computación EvolutivaEstrategias Evolutivas
Operadores genéticos: mutaciones (2)
CCaso dimensional
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 19/40
Computación EvolutivaEstrategias Evolutivas
Representación
Los cromosomas se componen de tres partes – Variables objeto: x1,…,xn
– Parámetros de la estrategia:Tamaño de paso de la mutación: σ1,…,σnσ
Angulos de rotación: α1,…, αnα
No está siempre presente cada componente Tamaño completo: ⟨ x1,…,xn, σ1,…,σn
,α1,…, αk ⟩
donde k = n(n-1)/2
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 20/40
Computación EvolutivaEstrategias Evolutivas
Mutación
Mecanismo principal: cambiar valoresmediante la suma de un ruido aleatorio tomadode la distribución normal
x’i = xi + N(0,σ) La idea clave:
σ sea parte del cromosoma ⟨ x1,…,xn, σ ⟩ σ sea también mutado en σ’ (ver cómo más
adelante) Por lo tanto: tamaño de paso de la mutación σ
coevoluciona con la solución x
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 21/40
Computación EvolutivaEstrategias Evolutivas
Mutar primero σ
Mutación con efecto de red: ⟨ x, σ ⟩ ⟨ x’, σ’ ⟩
El orden es importante: – first σ σ’ – then x x’ = x + N(0,σ’)
Fundamento: los nuevos ⟨ x’ ,σ’ ⟩ son
evaluados dos veces – Primario: x’ es bueno si f(x’) es bueno – Secundario: σ’ es bueno si el x’ que se crea es
bueno
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 22/40
Computación EvolutivaEstrategias Evolutivas
Mutación caso 1:Mutaciones no correlacionadas con
una σ
Cromosomas: ⟨ x1,…,xn, σ ⟩
σ’ = σ • exp(τ • N(0,1)) x’i = xi + σ’ • N(0,1)
Típicamente la “tasa de aprendizaje” τ ∝ 1/ n½
Y tenemos una regla de límite σ’ < ε0 ⇒ σ’ = ε0
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 23/40
Computación EvolutivaEstrategias Evolutivas
Mutantes con igual probabilidad
Círculo: los mutantes tienen la misma oportunidad de ser
creados
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 24/40
Computación EvolutivaEstrategias Evolutivas
Mutación, caso 2:Mutaciones no correlacionada con
n σ’s
Cromosomas: ⟨ x1,…,xn, σ1,…, σn ⟩
σ’i = σi • exp(τ’ • N(0,1) + τ • Ni (0,1)) x’i = xi + σ’i • Ni (0,1) Dos parámetros de tasa de aprendizaje:
– τ’ tasa de aprendizaje global τ tasa de apredizaje experimentado coordinado
τ ∝ 1/(2 n)½ y τ ∝ 1/(2 n½) ½
Y σi’ < ε0 ⇒ σi’ = ε0
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 25/40
Computación EvolutivaEstrategias Evolutivas
Muntates con igual probabilidad
Elipse: mutantes tienen la misma probabilidad de ser creados
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 26/40
Computación EvolutivaEstrategias Evolutivas
Mutación caso 3:
Mutaciones correlacionadas
Cromosomas: ⟨ x1,…,xn, σ1,…, σn ,α1,…, αk ⟩
donde k = n • (n-1)/2 y la matriz de covarianza C está definida como:
– cii = σi2
– cij= 0 si i e j no están correlacionadas
– cij = ½ • ( σi2 - σ j
2 ) • tan(2 αij) si i e j estáncorrelacionadas
Note que los números / índices de las α‘s
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 27/40
Computación EvolutivaEstrategias Evolutivas
Mutaciones correlacionadas cont.
El mecanismo de mutación es: σ’i = σi • exp(τ’ • N(0,1) + τ • Ni (0,1))
α’ j = α j + β • N (0,1)
x ’ = x + N (0,C’ ) – x representa el vector ⟨ x1,…,xn ⟩ – C’ es la matriz de covarianza C después de la mutación de
los valores α τ ∝ 1/(2 n)½ y τ ∝ 1/(2 n½) ½ y β ≈ 5° σi’ < ε0 ⇒ σi’ = ε0 y
| α’ j | > π ⇒ α’ j = α’ j - 2 π signo(α’ j)
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 28/40
pEstrategias Evolutivas
Mutantes con igual similitud
Elipse: los mutantes tienen la misma oportunidad de ser creados
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 29/40
pEstrategias Evolutivas
Recombinación
Las estrategias evolutivas simulan el procesoevolutivo al nivel de los individuos, por lo que la
recombinación es posible.
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 30/40
pEstrategias Evolutivas
Recombinación
Los operadores de recombinación de lasestrategias evolutivas pueden ser: – Sexuales: el operador actúa sobre los individuos
elegidos aleatoriamente de la población de padres. – Panmíticos: se elige un solo padre al azar, y se
mantiene fijo mientras se elige al azar un segundo
padre (de entre toda la población) para cadacomponente de sus vectores.
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 31/40
pEstrategias Evolutivas
Recombinación
Crea un hijo
Actúa por variable/posición: – Promediando los valores de los padres, o – Seleccionando uno de los valores de los padres
Si se usan 2 o más padres:
– Usando los dos padres seleccionados para crear elhijo – Selecionando dos padres por cada nueva posición
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 32/40
pEstrategias Evolutivas
Nombres de las recombinaciones
Discreta globaldiscreta localzi es xi o yi seleccionadasaleatoriamente
Intermedia globalIntermedia localzi = (xi + yi)/2
2 padresseleccionados
con cada i
2 padres fijos
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 33/40
Estrategias Evolutivas
Selección de padres
Los padres son seleccionados usando unadistribución aleatoria uniforme cuando un
operador necesite uno o muchos padres De esta manera: la selección de padres de la
EE es imparcial – cada individuo tiene lamisma probabilidad de ser seleccionado
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 34/40
Estrategias Evolutivas
Selección de sobrevivientes
Se aplica una vez que se crean λ hijos de los
µ padres usando mutación y recombinación Deterministicamente se eliminan los peores La base de la selección es cualquiera de:
– El conjunto de hijos únicamente: selección-(µ,λ)
– El conjunto de padres e hijos: selección-(µ+λ)
Computación Evolutiva
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 35/40
Estrategias Evolutivas
Selección de sobrevivientes cont.
Selección-(µ+λ), es una estrategia elitista
Selección-(µ,λ) puede “olvidar”
A menudo la selección-(µ,λ) se prefiere para: – salirse de un óptimo local – cuándo el óptimo es dinámico – Usando la estretegia + pueden sobrevevir malos valores de σ
en ⟨x,σ⟩ por mucho tiempo en caso que su x “portador” seamuy apto
La presión de selección en EE es muy alta (λ ≈ 7 • µ esuna configuración común)
Computación EvolutivaE t t i E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 36/40
Estrategias Evolutivas
Auto-adaptación
Dado paisaje de aptitud dinámicamentecambiante (la posición del óptimo se muevecada 200 generaciones)
La auto-adaptación le permite a la EE – encontrar el óptimo y –
ajustar el tamaño de paso de la mutación en cadamovimiento
Computación EvolutivaE t t i E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 37/40
Estrategias Evolutivas
Auto-adaptación ilustrada cont.
Cambios en el valor de aptitud (izquierda) y tamaños enel paso de la mutación (derecha)
Computación EvolutivaE t t i E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 38/40
Estrategias Evolutivas
Prerequisitos para auto-adaptación
µ > 1 para portar diferentes estratégias
λ > µ generar excedente de hijos Una selección que no sea demasiado fuerte,
e.g., λ ≈ 7 • µ
selección-(µ,λ) para librarse de los σdesadaptados Mezclar estratégias de parámetros usando
recombinación (intermedia)
Computación EvolutivaE t t i E l ti
5/14/2018 estrategias-evolutivas - slidepdf.com
http://slidepdf.com/reader/full/estrategias-evolutivas 39/40
Estrategias Evolutivas
Ejemplo de aplicación:
La función Ackley (Bäck et al ’93)
La función Ackley (con n =30):
Estrategia Evolutiva: – Representación:
-30 < xi < 30 30 tamaños de paso
– Selección-(30,200) – Término : después de 200000 evaluaciones de la función
objetivo (ffe, o efo)
f x =−20⋅exp
−0 .2
1
n⋅∑i=1
n
x i
2
−exp
1
n∑i=1
n
cos x2π i
20e
Computación EvolutivaEstrategias Evolutivas