90

Evolución Diferencial

  • Upload
    rdglpz

  • View
    114

  • Download
    2

Embed Size (px)

DESCRIPTION

Descripción y análisis de evolución diferencial para optimización global.

Citation preview

Page 1: Evolución Diferencial

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

Page 2: 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

Page 3: 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

Page 4: 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

Page 5: 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

Page 6: 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

Page 7: 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

Page 8: 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

Page 9: Evolución Diferencial

Vision General, Evolución Diferencial

Figura: Mutación diferencial

Rodrigo López Farías Evolución Diferencial

Page 10: 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

Page 11: 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

Page 12: 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

Page 13: 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

Page 14: 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

Page 15: 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

Page 16: 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

Page 17: 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

Page 18: 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

Page 19: 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

Page 20: 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

Page 21: 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

Page 22: 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

Page 23: 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

Page 24: 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

Page 25: 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

Page 26: 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

Page 27: 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

Page 28: 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

Page 29: 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

Page 30: 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

Page 31: 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

Page 32: 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

Page 33: 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

Page 34: 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

Page 35: 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

Page 36: 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

Page 37: 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

Page 38: 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

Page 39: 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

Page 40: 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

Page 41: 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

Page 42: 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

Page 43: 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

Page 44: 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

Page 45: 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

Page 46: 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

Page 47: 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

Page 48: 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

Page 49: 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

Page 50: 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

Page 51: 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

Page 52: 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

Page 53: 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

Page 54: 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

Page 55: 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

Page 56: 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

Page 57: 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

Page 58: 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

Page 59: 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

Page 60: 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

Page 61: 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

Page 62: 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

Page 63: 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

Page 64: 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

Page 65: 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

Page 66: 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

Page 67: 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

Page 68: 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

Page 69: 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

Page 70: 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

Page 71: 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

Page 72: 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

Page 73: 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

Page 74: 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

Page 75: 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

Page 76: 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

Page 77: 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

Page 78: 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

Page 79: 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

Page 80: 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

Page 81: 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

Page 82: 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

Page 83: 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

Page 84: 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

Page 85: 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

Page 86: 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

Page 87: 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

Page 88: 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

Page 89: 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

Page 90: 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