evolución diferencial
DESCRIPTION
Descripción y análisis de evolución diferencial para optimización global.TRANSCRIPT
Vision General, Evolución Diferencial
Evolución Diferencial
Rodrigo López Farías
UMSNH
23 de junio de 2009
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Breve Panorama de ED
Es un algoritmo estocástico aleatorio basado en población
Fue presentado en 1995 por Kenneth Price y Rainer Storn.
ED fue presentado en el First International Contest onEvolutionary Optimization, ganando un tercer lugar.
Hoy en día es una de las corrientes de investigación principalesen computación evolutiva.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
¾Porqué Estudiar ED?
Tiene amplio uso en problemas prácticos, en dónde la funciónobjetivo no es diferenciable, ni continuo, ruidosas, tienenmuchos mínimos locales...
Existen numerosos problemas complicados de resolveranalíticamente.
La optimización Global es necesario en muchos campos, comola Ingeniería, Estadística, Finanzas, Meteorología....
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Estructura de la población
La implementación mas versátil en ED. Es manejar un vector quecontiene Np Vectores D-dimensionales con parámetros en valoresreales.
Px ,g = (Xi , g), i = 0, 1...Np − 1, g = 0, 1...gmax
Xi ,g = (Xj ,i ,g ), j = 0, 1, ...,D − 1
g: Indica la generaciónx: individuo
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Estructura de la población
Una vez inicializado, ED muta aleatoriamente vectoresseleccionados para producir una población intermedia Pv ,g de Np
vectores mutantes vi ,g .
Pv ,g = (vi ,g ), i = 0, 1, ...,Np − 1, g = 0, 1, ..., gmax
poblaciónVi ,g = (vj ,i ,g ), j = 0, 1...,D − 1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Estructura de la población
Cada vector de la población actual es recombinada con un mutantepara producir la población Pv ,g de Np vectores de prueba ui ,g
Pu,g = (ui ,g ), i = 0, 1, ...,Np − 1, g = 0, 1, ...gmax
ui ,g = (uj ,i ,g ), j = 0, 1, ...,D − 1
En la recombinación los vectores de prueba sobreescriben en lapoblación mutante como un arreglo sencillo.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Inicialización
La manera de inicializar cada vector es como sigue:
xj ,i ,0 = randj(0, 1) ∗ (bj ,U − bj ,L) + bj ,L
Dónde:bL: Es la frontera mínimabu: Es la frontera máximarandj(0, 1): Es un generador de números aleatorios con unadistribución uniforme.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Mutación Diferencial
Una vez inicializada la población, ED muta y recombina paraproducir Np vectores de prueba.La mutación diferencial consiste en la diferencia escalada de dosvectores sumada a un vector base.
vi ,g = xr0,g + F (xr1,g − xr2,g )
F : es e factor de escala que es un numero real positivo, quecontrola la taza la cual la población evoluciona.r0: Vector base que hay diferentes maneras de seleccionarlo.r1 y r2: son vectores seleccionados aleatoriamente.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Figura: Mutación diferencial
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
ED emplea cruza uniforme.ED cruza cada vector, con un vector mutante.
ui ,g = uj ,i ,g =
{vj ,i ,g , if randj(0, 1) <= Cr or j = jrand
xj ,i ,g de otra manera
Donde:Cr ∈ [0, 1]: Es un parámetro �jado por el usuario que controla lafracción de los valores de parámetro que son copiados al mutante.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Figura: Los posibles vectores de prueba u′i,g y u′′
i,g cuado xi.g y vi.g sonuniformemente cruzados
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Selección
Si el vector de prueba ui ,g tiene un valor objetivo igual o menor queel vector objetivo xi ,g este reemplaza el vector objetivo en lasiguiente generación, de otra manera el objeto sse sitúa en lapoblación por lo menos una generación mas.
xi ,g+1 =
{ui ,g si f (ui ,g ) ≤ f (xi ,g )
xi ,g de otra manera
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Diagrama de Flujo
Figura: Diagrama de �ujo del ciclo generar y probar
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Efecto de la diferencia de vectores.
Muestra la diferencia de vectors formada por todos los posiblespares de los nueve vectores. Transportando la diferencia a un puntoorigen en común.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Efecto del escalamiento de la diferencia de vectores
El escalamiento asegura que los vectores de prueba no dupliquenpuntos iguales. Ademas el escalamiento puede cambiar el enfoquede búsqueda, ya sea local o global. Los vectores de tamañoconsiderable reducen la probabilidad de quedar atrapados en unmínimo local.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Contour Matching
La diferencia de vectores hace que la orientación y el tamaño delpaso se adapten autómaticamente a la función objetivo
Figura: Generacion 1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Figura: Generación 6, Se observan tres cúmulos, dos de ellos señalanbúsqueda local y uno búsqueda global
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Figura: Generación 24, El algoritmo ha convergido a un óptimo global
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Representación de los Parámetros por ED
ED Codi�ca los parámetros como números de punto �otante sinimportar el tipo.Esto conlleva a varias ventajas.
Facilidad de uso
E�ciente utilización
Baja complejidad Computacional
Libertad de diseño de distribución de la mutación
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Inicialización
ED Requiere una función de distribución para inicializar lapoblacion inicial.
Esta población debe inicializarse dentro las fronteras.
Por conveniencia los parámetros de la función de prueba soninicializados con valores que son contenidos dentro de loslímites superior e inferior.
Estos parámetros por lo regular son delimitados porpropiedades �sicas que representan o entidades matemáticas.
Las fronteras no solo delimitan la poblacion inicial, si no tambiéndelimitan la búsqueda subsecuente.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Inicialización
Para generar la población inicial se pueden usar diferentes funcionesde distribución de probabilidad.
DIstribuciones Uniformes
Distribución uniformeConjuntos de Halton (Método que esta basado en númerosprimos para generar puntos distribuidos de manera uniformepero irregular)
Función de distribucion normal.
La fórmula para generar un individuo que forma parte de lapoblación inicial.
Xj ,i ,0 = bj ,L + pdf () ∗ (bj ,U − bj ,L)
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Inicialización
Figura: Distribución aleatoria uniforme, Conjunto de Halton
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Seleccionando el Vector Base
Hay 4 vectores indices en ED clásica
i : el vector el cual el mutante es recombinado y en contra elcual el vector resultante de prueba compite.r0 r1 r2: Determinan los vectores que se cambinan para crear elmutante. Estos son escogidos cada vez para cada vector deprueba del rango 0,Np − 1.
Cuando los índices se seleccionan de manera aleatoria puede pasarque los vectores se repitan o que otros no se tomen en cuenta. Estoafecta al rendimiento de ED.El vector base se puede seleccionar sin tomar en cuenta algunarestricción.
r0 = �oor(randi (0, 1) ∗ Np)
El problema es que pueden repetirse algunos vectores y omitirotros, esto afecta al desempeño de ED.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Aleatorio Sin Restricciones
El índice base r0 especifíca que vector se suma a la diferenciaescalada de los vectores r1 y r2.
r0 = �oor(randi (0, 1) ∗ Np)
Esta selección provoca que algunos vectores puedan ser escogidosmas de una vez por generación, o que otros sean omitidos.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Muestra Aleatoria Universal
Los vectores son ordenados de acuerdo a su aptitud.
Cada vector tiene la misma posibilidad de ser elegido en ED adiferencia de AG en donde los mejores vectores tienen masposibiliidad de ser escogidos.
Garantiza la mínima disperción en la muestra.
Los Np punteros solo escogen un vector cada uno.
Los siguientes métodos de selección de vectores usan estemétodo,
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Muestra Aleatoria Universal
Garantiza una extensión mínima en la muestra.
Figura: Muestra estocástica Universal vs Ruleta
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Selección De Permutación
Para asegurar que cada vector sirva como un vector base solo unavez por generación, selección de permutacion apunta a índices devectores base consecutivos desde un arreglo conteniendo unapermutación aleatoria de la secuencia [0, 1, 2...Np − 1].El vector meta con índice i es cruzado con su vector base el cual esel i-ésimo elemento de la permutación.El arreglo de permutación puede ser iniciada con un vector deenteros consecutivos y el vector r0 es computado con una llamadaa un generador de números aleatorios.Otra manera de hacerlo es asignar a i el vector el cual es elproducto, módulo Np, de i y un entero relativamente primo a Np.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Selección Aleatoria Compensada
Computa la suma, módulo Np del índice meta y una compensaciónrg generado aleatoriamente.
r0 = (i + rg )Np
rg = �oor(randg (0, 1) ∗ Np)
rg es escogido al comienzo de cada nueva generaciónCada uno de los Np posibles valores para rg de�ne un mapeo uno auno entre el vector base y meta.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Figura: Tres maneras de relacionar los pares de vectores base y vectoresmeta.Np=7
El índice meta es la población actual.
Los métodos aseguran que cada vector sirva como un vectormeta una vez por generación.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Degenerando Combinaciones de Índices de Mutaciónr0,r1,r2.
Si los vectores se escogen sin restricciones puede que algunesse repitan y se reduzan a una simple cruza, a una duplicacióndel vector base.
Estos casos se examinarán considerando también la interacciónque hay con el indice meta i , con los índices mutantes.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
No Mutación: r1=r2, Cr<=1.
r1 = r2: No hay mutación. Si esto sucede la diferencialformada será cero, Por lo tanto:
r1 = r2(= r0) : vi ,g = Xr0,g
La probabilidad de que esto suceda es de 1/Np.
Y la probabilidad de que r0 = r1 = r2 es de (1/Np)2.
Esto implica una cruza convencional.
ui ,g = uj ,i ,g =
{vj ,r0,g , if randj(0, 1) <= Cr or j = jrand
xj ,i ,g de otra manera
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Duplicación: r1=r2 ,Cr = 1
Cuando r1 = r2 y Cr = 1 la duplicación es ciertamente:
r1 = r2(= r0) ∧ Cr = 1 : ui ,g = vi ,g = xr0,g
La probabilidad de que el vector base se duplique es elproducto de la pobabilidad que p(r1 = r2) y la probabilidadque todos los pareametros sean heredados del mutante vi ,g .
La probabilidad de heredar x parámetros en n pruebas es:
p(X = x) =n!
x!(n − x)Cr x(1− Cr)(n − x), n! =
n∏k=1
k
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Duplicación: r1=r2 ,Cr = 1
Desde que un parametro ciertamente será tomado del mutante,n = D − 1. La probabilidad dado Cr, que todos los D − 1parámetros restantes seran heredados del mutante (x = D − 1) es:
p(X = D − 1) =(D − 1)!
(D − 1)!0!CrD−1(1− Cr)0 = CrD−1, 0! = 1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Combinación Aritmética: r1=r0 o r2 = r0
Esto ocurre una vez por generación en promedio.
Este caso lleva a una relación lineal entre el vector base y unsimple vector de diferencias.
r1 = r0 : vi ,g = xr0,g + F ∗ (xr0,g − xr2,g )
r2 = r0 : vi ,g = xr0,g + F ∗ (xr1,g − xr0,g )
Cada dos vectores recombinaciones lineales de�nen una lineaque conecta el vector base ca uno de los dos diferentesvectores.
F juega el papel de coe�ciente de combinación qeu determinacual punto a lo largo de la línea es apuntado.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Combinación Aritmética: r1=r0 o r2 = r0
Figura: Mutación va en dos vectores con recombinación aritméticacuando r1 = r0 Izquierda, o r2 = r0 Derecha.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Solo Mutación: r0=i
Si r0 = i , entonces se reduce a una mutación, Cr juega el rolde probabilidad de mutación.
uj ,i ,g =
{xj ,i ,g , if randj(0, 1) <= Cr or j = jrand
xj ,i ,g de otra manera
El vector base indica que es aleatoriamente seleccionado sinrestricciones, este tipo de vectores ocurre con una probabilidad de1/Np
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
i=r1 o i=r2
Cada evento ocurre con probabilidad de 1/Np. Estacoincidencia no reduce el proceso generacional asumiendo quer0 6= i .
Figura: Combinaciones degeneradas de Primer Orden
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Combinaciones Degeneradas de Alto Orden
Este tipo de combinaciones restringe coincidencia de vectores.
Implementa Índices mutuamente Excluyentes como:
Forzar i 6= r0.Excluir todos los índices: i 6= r0 6= r1 6= r2
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Esquemas Sesgados de Selección para r0
Algunas versiones de DE seleccionan el vector base basado en elvalor de su función objetivo. Como aquel vector que tiene mejoraptitud en la población actual.
r0 = best, si ∀iε(0, 1, ...,Np−!), f (xbest,g ) ≤ f (xi ,g ))))
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Esquemas Sesgados de Selección para r0
Dos alternativas con mucha presión de seleccion han sidopropuestos:
1 Método �Best�
r0 = better , si f (xbetter ,g ≤ f (xi ,g ))
2 �Rand to Best�, que usa recombinación aritmética para generarun vector base que esta entre el vector meta y el mejor vectorhasta el momento según su aptitud.
xr0,g = xi ,g + k ∗ (xbest,g−xi,g ) kε[0, 1] = constant
La constante k, controla el sesgo a través de las mejores solucioneshasta el momento.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Compensando la Pérdida de Diversidad
Los métodos mencionados hacen que decrementen ladiversidad de la población e ir degradando el potencial de losvectores de prueba.
Una manera de compensar esto es Incrementando la población.
Para compensar la convergencia se propone:
1 Mutación Diferencial
2 Control de la escala de Mutación por medio del parámetro F
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Mutación Diferencial
Se da diversidad a la población
A diferencia de ES que usa una PDF, DE emplea un vector dediferencias.
∆xr1,r2 = (xr1 − xr2)
La distribución de la diferencia de vectores depnde de ladistribución de los vectores y siempre seran diferentes para cadafunción objetivo.
Todos los vectores de diferencias son igualmente probables.
La suma de todas las diferencias de vectores es cero.
< ∆x >=1
Np2
Np−1∑i ,k=0
(xi ,g − xk,g ) = 0
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
F >=1
El Factor F , cuando F > 1, ninguna función no ha sidoexitosamente optimizada. La convergencia es tardada.
Cuando F = 1, distintas combinaciones de vectores sonindistinguibles.
xr0,g + xr1,g − xr2,g =
xr0,g + F ∗ (xr1,g − xr2,g )
xr0,g + F ∗ (xr1,g − xr2,g )
Cuando F = 1
Puede haber convergencia herrática a menos que Cr<1.
Cr=1 evita que posible vectores de prueba no se muten o secrucen.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
F<1
Tiende a reducir la diversidad conforme la población se muta.
Para prevenir convergencia prematura es crucial que F tengaun valor adecuado para contrarrestar este efecto.
Zaharie ha demostrado la existencia de un limite bajo efectivopara F.
Encontrando una F adecuada la población puede convergeraún sin presión de selección.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
Zaharie ha podido medir la diversidad de la población pormedio de la varianza de un solo parámetro del vector, debido aque las variables son independientes de la función objetivo.
Var(Px ,g ) =1Np
Np−1∑i=0
(xi ,g− < x > g)2; < x >g=1Np
Np−1∑i=0
xi ,g
Esta fórmula calcula la varianza esperada de las poblacionesmutantes y y poblaciones de prueba dada la varianza de lapoblación Var(Px ,g ).
La Meta es determinar que parámetros de control son masprobables de resultar para la convergencia prematura,compensando la incapacidad del algoritmo de generar unapoblación de prueba tan diversa como la población.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
Para simpli�car el analisis, Zaharie que el vector base y elvector meta sean diferentes y asi como la diferencia devectores con el vector base y que por lo menos un parametrode prueba sea heredado para poder asumir que Cr es unverdadera probabilidad de cruza.
Se modi�có F, multiplicando por un número generado por ununa variable aleatoria Gaussiana
Vj ,i ,g = xj ,r0,g + F̃∗(xj ,r1,g −xj ,r2,g ); F̃j = F ∗ ξj ; ξj ≈ N(0, 1)
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
Con estas observaciones Zaharie determina que la varianzaesperada de la población Mutante esta relacionada a lavarianza de la población por la fórmula:
E (Var(Pv ,g ) = (2 ∗ F 2 +Np − 1Np
)Var(Px ,g )
Si la población mutante es cruzada con la población original,la población de prueba esperada es:
E (Var(Pu,g )) = (2F 2pCr −2pcrNp
+p2CrNp
+ 1)Var(Px ,g )
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
Parámetro de Control entonces debe satisfacer que:
2P2 − 2Np
+pCr
Np= 0
Puede ser considerada crítica desde que resulta en unapoblación la cual la varianza sigue siendo una constante sincontar las �uctuaciones aleatorias.
Resolviendo la ecuación anterior para F dado FCrit como
Fcrit =
√1− PCr/2
Np
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
FCrit Establece el límite F , el cuál si F < FCrit La poblaciónconverge sin contar la presión de selección. Y si F > FCrit lapoblación se diversi�ca.
Figura: La evolución de la varianza de un parámetro es desplegadapor cuatro diferentes valores de F. Notar que F 0̃,134 es critica en elsentido que la varianza es cercanamente constante. Resultados parauna evolucion en una super�cie plana, todos los vectores de pruebason aceptados. Los Resultaos son 100 promedios de prueba y frerongenerados usando la versión modi�cada de Zaharie,
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Factor de Escala: F
En la práctica F debe ser mas grande que FCrit , Paracontrarrestar el efecto de reducción de diversidad.
Figura: Grá�ca que ilustra el efecto de presión en la selecciónproducida por una Función Rastrigin en la varianza de la poblacionsobre las Generaciones. Los resultados son 100 promedios obtenidoscon la version ED de Zaharie's con Np = 50 y PCr = 0,2
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Aleatorizando el Factor de Escala
ED tiene la capacidad de determinar �size steps� adecuados.
F Solo afecta el relativo �size step�,
Transformando F en una variable aleatoria efectivamenteamplia la capacidad de búsqueda mas allá permitida por ladiferencia de vectores.
Podría ser útil para tamaño de poblaciones pequeñas, osimetricamente distribuidas.
Reduce el riesgo de estancamiento
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Frecuencia de Función de distribución de Probabilidad:Dither and Jitter
Generar un nuevo valor de F para cada parámetro llamadoJitter, y es representado comoFj .
Dithering escala la diferencia de vectores por el factor F .
Se han realizado pruebas utilizando la fórmula de la hiperesferade 10 dimesiones como función objetivo.
El conjunto de puntos (n+1)-espacio (x1,x1,x2,. . . ,xn+1) quede�ne una n-esfera, es representada por:
r2 =n+1∑i=1
(xi + Ci )2
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Dither and Jitter
Figura: Dithering (Derecha) Escala, Jitter (Izquierda), Escala y re-orienta.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Dither and Jitter
Figura: La grá�ca de la derecha muestra la implementación de �Jitter� y�Dither�, con N(0, 1) PDF, y se ve como afecta a la velocidad deconvergencia comparado con dejar F constante. En la grá�ca de laderecha se muestra el optimo Np al cual el mínimo número deevaluaciones ocurrió.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Dither and Jitter
�Jitter � y �Ditter� exhiben el mismo número de evaluacionescuando Cr = 0 y Np = 7.
Con Cr = 0,2, los tres métodos requieren el mismo número deevaluaciones. Y �Jitter� y �Dither� Usan el mismo Np .
�Jitter� Fué mas rápido y la población fue constante.
�Dither� requiere una población mas grande, pero sedesempeña igual que F = constant. Discrepan conforme Cr sehace mas grande.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Minimizando Hiper-elipsoide
Minimizar la elipsoide presenta un reto para los algoritmos deoptimización porque a diferencia de la hipere-esfera, el optimo�step-size� depende de la dirección que toma este.
fellipsoid(x) =D−1∑j=0
2jx2j
Figura: Contorno de una función con valor constante para la versiónbi-dimensional de fellipsoid
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño del algoritmo
Para este caso el desempeño es casi el mismo que optimizandola Hiperesfera.
Figura: Se muestra el efecto de �Jitter � y �Dither� conF = constant = 0,9. Y el número mínimo de evaluaciones que serequirieron para llegar a la solución. Asi como el Np que requerido.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
¾Que desempeño tendrá el algoritmo si rotamos la elipse45o?
Al rotar 45o , la función se vuelve en una con parámetrosdependientes.
felipse(x) = 2(x20 − x0x1x21 )
Ahora los resultados se presentan con Cr altos.�Jitter� es ahora el peor método.F = constante, es el mejor metodo, excepto cuando Cr = 1.
Figura: Desempeño con F = 0,9, Cr > 0,4. Probando el promedio de1000 pruebas y PDF = N(0, 1).
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Conclusiones Sobre el Parámetro F
�Jitter� es malo para funciones no separables.
Su pobre desempeño en funciones no separables ymultimodales hacen una estrategia cuestionable paraoptimización global no lineal.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Otras Distribuciones
La efectividad de �Jitter� y �Dither� se puede mejorarcontrolando la cantidad de variacion en Fj y Fi .
El problema de usar una distribución gaussiana para calcularF , es que cuando la varianza tiende a cero Fj = 0.
Fj = FNj(0, σ); limσ−>0(Fj) = 0
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Para prevenir esto F puede ser multiplicado por un PDF quesu valor promedio sea 1 y no 0 y evitar valores negativos.
Para pertubar la escala de las magnitudes de F , se usalog-normal distribución.
Fj = F exp(τ(Ni (0, 1)− τ
2))
τ : controla la disperción de la distribución.
τ/2: es un factor que normaliza la el valor esperado de ladistribución a 1.
Cuando τ = 0, Fj = F .
Se puede controlar la varianza de la distribución deindependientemente de F.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño con función de Distribución Log-Normal.
Figura: Ditther es mas rápido que F = constant, en la hiper-elipsoide. Laconvergencia mas rapida ocurre cuando τ = 0,4.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Distribucion Uniforme
Se puede tener una FDP donde F es la media y la dispersiónes una variable independiente.
Fj = F + d(randj(0, 1)− 0,5), d < 2F
Analogo a τ en la distribución log-normal, se tiene d , quecontrola la variacion de la distribución uniforme.
Esto degrada el rendimiento porque tienden a tener progresolento hacia el optimo porque genera perturbaciones muygrandes y pequeñas.
Una distribucion uniforme con d ∼ F , puede reducir lasperturbaciones extremosas.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño con función de Distribución Uniforme.
Figura: El desempeño empeora para �Jitter�, y �Ditter� converge masrápido que F = constante (d = 0) cuando 0 < d < 1,4. �Dither� sedesempeña mejor cuando d = 9. Resultados son promedio de 1000pruebas para el Hiper-ellipsoide 10-D.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Distribución Ley de La Energía.
Las distribuciones anteriores se tiene que decidir que nivel devariabilidad es mejor.
Esta Función de Distribución de Probabilidad previene estadi�cultad.
Una variable de ley de la energía puede ser generada por unvalor aleatorio uniformemente distribuido creciente entre 0 y 1,a la potencia, dónde q = (1/F )− 1.
Fj = pow(randj(0, 1), q) = randj(0, 1)q, q =1F− 1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño con Ley de la Energía
Figura: Con F = 0,9, la Ley de la Energía tiene pequeña varianza, asi quelos resultados para �Jitter� y �Ditter� en el hiper-elipsoide 10 -dimensional estan cerca a aquellos para Fi = constante.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Recombinación
La recombinación intercambia paremetros de dos o masvectores para crear uno o mas vectores de prueba.
Se aplica a datos simbólicos, binarios y reales.
recombinación aritmetica o continua expresa vectores deprueba como combinaciones lienales de vectores.
Estas operaciones tienen una variedad de implementaciones.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
La Cruza ayuda a la convergencia.
Existe la recombinación Global discreta en donde dos vectoresson escogidos cada vez para cada parámetro de prueba (CruzaDual).
Figura: Cruza de un solo punto. Cada cadena es un vector de 8parámetros tipo enteros. Cada vector contribuye con parámetroscontiguos que se cruzan hasta el punto de cruza.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
Cruza de Un Solo Punto
Se selecciona solo un punto tal que todos los parámetros de laizquierda de un vector son heredados al vector hasta el punto,y del punto a la derecha se heredan los parámetros del otrovector.
Crosover de N-Puntos
Este tipo de cruza subdivie el vector de pruebas en n + 1particiones tal que los parametros en particiones adhiacentesson heredados de los diferentes vectores.
Se ha demostrado que un número par de puntos de cruza,incrementa la disrupción de parámetros que están cercamenteagrupados. Para evitar esto se emplea cruza de uno o dospuntos.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
Crosover Exponencial
Alcanza un resultado similar a la cruza de uno y dos puntos.El numero de mparametros mutantes heredados es unavariable exponensialmente distribuida.
Figura: La cruza exponencial, selecciona un parametro del indice jrand , losparametros de prueba son heredados al mutante vi,g , cuandorandj(0, 1) ≤ Cr , Cuando randj(0, 1) > Cr , todos los parametros deprueba son heredados al vector objetivo xi,g .
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
La probabilidad que el parametro inicial esogido aleatoriamentees igual a r3 < Cr . Por lo tanto:
p(x = 1) = 1− Cr
la probabilidad que dos parametros mutantes sean heredadoses:
p(x = 2) = (1− Cr)Cr
En base a esto, la probabilidad que el vector de prueba seaheredado exactamente n parámetros mutantes es:
p(x = n) = (1− Cr)Crn−1 = Crn−1 − Crn
Sumando los terminos da la funcion acumulada.
p(x ≤ n) =n∑
k=1
Crk−1 − Crk = 1− Crn
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
Cruza Uniforme (Binomial)
G.Syswerda de�ne este tipo de cruza como un proceso en elcual independientes pruebas determinan la fuente de cadaparametro de prueba.
Figura: Cruza binomial. Una vez que un indice j es escogidoaleatoriamente. D − 1 pruebas independientes son hechas paradeterminar la fuente de los parametros restantes.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
El número de mutantes heredados sigue una distribucionbinomal.
En particular, las probabilidades de éxito de eredar un soloparametro del mutante es la porbabilidad que D − 1 falleocurriendo la probabilidad 1− Cr .
p(x = 1) = (1− Cr)d−1
p = n,D =D−1 Crn−1Crn−1(1− Cr)D−n
Donde:
D−1Cn−1 =D − 1
(n − 1)!(D − n)!
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
El término D−1Cn−1 representa el número de combinaciones deD − 1 elementos tomados de n − 1, a la vez. Sumando los primerosn terminos da la probabilidad que el vector de prueba sea heredadoa lo menos n parámetros mutantes.
Lampinen and Zelinka mostraron que el número de posiblesvectores de prueba ntrials , que puede ser creado con cruzabinomial de ED. es:
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Cruza
Cruza uniforme sufre de un sesgo de distribución porque no todaslas con�guraciones tienen la misma probabilidad. ED no elimina elsesgo pero se basa en Cr para proveer la media para controlarla. Enun extremo, Cr ∼ 0 minimiza la disrupción incrementalmentealterando solo unos parámetros de un vector a la vez. mientras porel otro extremo Cr ∼ 0 favorece la exploración al apuntar vectoresde prueba directamente de la población mutante.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
El Rol de Cr en Optimización
Limitaciones de Baja tasa de mutación.
Una función separable puede ser escrita como una suma de D
funciones unidimesionales.
f (x) =D−1∑j=0
fj(xj)
Cada parametro puede ser optimizado independientemente.permitiendo romper el problema en diferentes dimensiones.
Al encontrar el óptimo de las funciones D − dimensionales , secombinan para formar la función D − dimensional
f (x∗) = f (x∗0 , x∗1 , ...., x
∗D−1)min(fj(xj))) = fj(x
∗j ), j = 0, 11....,D−1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desventajas de Baja Tasa de Mutación
Salomon provee de dos razon que explican el porque una bajatasa de mutación es una mala estrategia para las funciones deparámetros dependientes.
Figura: La función de elipse, a la izquierda es una función de parámetrosseparables, y derecha una función de parámetros independientes.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desventajas de Baja Tasa de Mutación
Las dos razones son:
1 En la �gura anterior, la elipse alineada a los ejes, es separableen diferentes funciones independientes. Y pude alcanzar elóptimo en dos movimientos.
En la elipse rotada 45o , el óptimo no podria alcanzarse en dosmovimientos, si cada paso fuera tomado paralelo al eje de lascoordenadas. Se necesitan muchas mutaciones para poderalcanzar el óptimo global.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desventajas de Baja Tasa de Mutación
2. Cuando se tiene un problema de optimización multimodal. Laúnica manera de alcanzar x∗, es moviendo simultaneamente x1 y x2.Para este caso sigue siendo mas e�ciente una búsqueda aleatoria.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Conclusiones del Rol de Cr
Provee el aprovechamiento de las funciónes separables.
Si son separables, provee de diversidad al �pool� de posiblesvectores de prueba, especialmente cuando Cr = 1.
En general los parámetros de funciones dependientes, CR debeestar cerca a 1, de manera que no se pierda el desempeñousando baja tasa de mutación.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Invarianza Rotacional
Se necesita un algoritmo de búsqueda que sea rotacionalmenteinvariante, que no dependa de la orentacion de el sistema decoordenadas el cual la funcion objetivo es evaluada.
La cruza no es un proceso rotacionalmente invariante.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Invarianza Rotacional
Se re�ere a que el desempeño del algoritmo depende de laalineacón de la función objetivo en el sistema de coordenadas.
Figura: La cruza no es un proceso rotacionalmente invariante.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño Rotando el Hiper-Elipsoide D-Dimensional
Figura: La Grá�ca muestra el numero de evaluaciones segun el angulo derotación de la hiper-Ellipsoide. Con Cr=1 y F=0.9. El resultado sonpromedios de 100 pruebas obtenidas con ED clásica.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Invarianza Rotacional Con Jitter
Figura: Jitter no es rotacionalmente invariante porque los componentesde las diferenciales son alterados independientemente. Como los ejes delas coordenadas cambian, el rango de posibilidades cambian.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Desempeño Jitter y Dither
Figura: Usando solo mutación (Cr =1)� Dither es rotacionalmenteinvariante, Usando Np =50, Cr= 1 y F1 = ,9 + d(randi (0, 1)− 5) cond = ,2, para Dither, y Fj = 0,9 + d(randj(0, 1)− 0,5), con d = 0,2 yd = 00,001 para Ditter.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Recombinacion Aritmética
La cruza crea nuevas combinaciones de parámestro,Recombinación continua o aritmética cambia los valores de losvectores.
La recombinación aritmética selecciona parámetros de ambosvectores para formar un nuevo vector xi ,g .
wi ,g = xr0,g + ki (xr1,g − xr0,g )
k : es el coe�ciente de combinación que puede ser unaconstante.
Si el coe�ciente de combinación es muestreado para cadaparámetro entonces se habla de recombinación intermedia.
wj ,i ,g = xj ,i ,g + kj(xj ,r2,g − xj ,r1,g )
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Recombinacion Aritmética
Figura: Posibles vectores recombinantes generados usando distreto lineal,y recombinación intermedia.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Recombinación de Tres Vectores
Para recombinar tres vectores primero se tiene:
u = xr0 + k1 ∗ (xr1 − xr0) + k2 ∗ (xr2 − xr0)
Haciendo un Cambio de Variable
k1 =(K + F )√
2
k2 =(K − F )√
2
Se obtiene:
u = xr0 +K + F√
2∗ (xr1 − xr0) +
K − F√2∗ (xr2 − xr0)
u = xr0 +K√2∗ (xr1 + xr2 − 2xr0) +
F√2∗ (xr1 − xr2)
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Recombinación de Tres Vectores
Figura: Descomponiendo las posiciones del vector de pruebas encomponentes cada paso de mutación en el plano K -F, El ángulo entrek1 − j2 y K − F es un sistema de coorenadas de 45 grados.
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial
Bibliografía
V.Price - M.Storn. (1998): Di�erential Evolution , A practical
Approach to Global Optimization. Springer, New York.
Rodrigo López Farías Evolución Diferencial