Vous êtes sur la page 1sur 90

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 on


Evolutionary Optimization, ganando un tercer lugar.

Hoy en día es una de las corrientes de investigación principales


en 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ón


objetivo no es diferenciable, ni continuo, ruidosas, tienen
muchos mínimos locales...

Existen numerosos problemas complicados de resolver


analíticamente.

La optimización Global es necesario en muchos campos, como


la 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 que


contiene Np Vectores D-dimensionales con parámetros en valores
reales.

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ón
x: 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 vectores


seleccionados 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ón
Vi ,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 mutante


para 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 la
població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ínima
bu : Es la frontera máxima
randj (0, 1): Es un generador de números aleatorios con una
distribució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 para


producir Np vectores de prueba.
La mutación diferencial consiste en la diferencia escalada de dos
vectores sumada a un vector base.

vi ,g = xr 0,g + F (xr 1,g − xr 2,g )


F : es e factor de escala que es un numero real positivo, que
controla la taza la cual la población evoluciona.
r 0: Vector base que hay diferentes maneras de seleccionarlo.
r 1 y r 2: 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.

vj ,i ,g , if randj (0, 1) <= Cr or j = jrand


(
ui ,g = uj ,i ,g =
xj ,i ,g de otra manera
Donde:
Cr ∈ [0, 1]: Es un parámetro jado por el usuario que controla la
fracció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 ui0,g y ui00,g cuado xi .g y vi .g son


uniformemente 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 que


el vector objetivo xi ,g este reemplaza el vector objetivo en la
siguiente generación, de otra manera el objeto sse sitúa en la
población por lo menos una generación mas.

ui ,g si f (ui ,g ) ≤ f (xi ,g )
(
xi ,g +1 =
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 posibles


pares de los nueve vectores. Transportando la diferencia a un punto
origen 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 dupliquen


puntos iguales. Ademas el escalamiento puede cambiar el enfoque
de búsqueda, ya sea local o global. Los vectores de tamaño
considerable reducen la probabilidad de quedar atrapados en un
mí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 del


paso 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ñalan


bú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 Codica los parámetros como números de punto otante sin


importar el tipo.
Esto conlleva a varias ventajas.

Facilidad de uso

Eciente 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 la


poblacion inicial.

Esta población debe inicializarse dentro las fronteras.

Por conveniencia los parámetros de la función de prueba son


inicializados con valores que son contenidos dentro de los
límites superior e inferior.

Estos parámetros por lo regular son delimitados por


propiedades sicas que representan o entidades matemáticas.

Las fronteras no solo delimitan la poblacion inicial, si no también


delimitan 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 funciones


de distribución de probabilidad.

DIstribuciones Uniformes

Distribución uniforme
Conjuntos de Halton (Método que esta basado en números
primos para generar puntos distribuidos de manera uniforme
pero irregular)

Función de distribucion normal.

La fórmula para generar un individuo que forma parte de la


població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 el


cual el vector resultante de prueba compite.

r0 r1 r2 : Determinan los vectores que se cambinan para crear el


mutante. Estos son escogidos cada vez para cada vector de
prueba del rango 0, Np − 1.
Cuando los índices se seleccionan de manera aleatoria puede pasar
que los vectores se repitan o que otros no se tomen en cuenta. Esto
afecta al rendimiento de ED.
El vector base se puede seleccionar sin tomar en cuenta alguna
restricción.

r0 = oor (randi (0, 1) ∗ Np )


El problema es que pueden repetirse algunos vectores y omitir
otros, 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 r 0 especifíca que vector se suma a la diferencia


escalada de los vectores r 1 y r 2.

r 0 = oor (randi (0, 1) ∗ Np )


Esta selección provoca que algunos vectores puedan ser escogidos
mas 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 a


diferencia de AG en donde los mejores vectores tienen mas
posibiliidad 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 este


mé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 una
vez por generación, selección de permutacion apunta a índices de
vectores base consecutivos desde un arreglo conteniendo una
permutación aleatoria de la secuencia [0, 1, 2... Np − 1].
El vector meta con índice i es cruzado con su vector base el cual es
el i-ésimo elemento de la permutación.
El arreglo de permutación puede ser iniciada con un vector de
enteros consecutivos y el vector r 0 es computado con una llamada
a un generador de números aleatorios.
Otra manera de hacerlo es asignar a i el vector el cual es el
producto, 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ón


rg generado aleatoriamente.

r 0 = (i + rg )Np
rg = oor (randg (0, 1) ∗ Np )
rg es escogido al comienzo de cada nueva generación
Cada uno de los Np posibles valores para rg dene un mapeo uno a
uno 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 vectores


meta.Np=7

El índice meta es la población actual.

Los métodos aseguran que cada vector sirva como un vector


meta una vez por generación.

Rodrigo López Farías Evolución Diferencial


Vision General, Evolución Diferencial

Degenerando Combinaciones de Índices de Mutación

r0,r1,r2.

Si los vectores se escogen sin restricciones puede que algunes


se repitan y se reduzan a una simple cruza, a una duplicación
del vector base.

Estos casos se examinarán considerando también la interacción


que 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.

r 1 = r 2: No hay mutación. Si esto sucede la diferencial


formada será cero, Por lo tanto:

r 1 = r 2(= r 0) : vi ,g = Xr 0,g

La probabilidad de que esto suceda es de 1/ Np .


Y la probabilidad de que r 0 = r 1 = r 2 es de (1/Np )2 .
Esto implica una cruza convencional.

vj ,r 0,g , if randj (0, 1) <= Cr or j = jrand


(
ui ,g = uj ,i ,g =
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 r 1 = r 2 y Cr = 1 la duplicación es ciertamente:

r 1 = r 2(= r 0) ∧ Cr = 1 : ui ,g = vi ,g = xr 0,g

La probabilidad de que el vector base se duplique es el


producto de la pobabilidad que p (r 1 = r 2) y la probabilidad
que todos los pareametros sean heredados del mutante vi ,g .
La probabilidad de heredar x parámetros en n pruebas es:
n
n! x
p (X = x ) = Cr (1 − Cr ) n − x ), n! = k
Y
(
x !(n − x ) k =1

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 − 1
parámetros restantes seran heredados del mutante (x = D − 1) es:

(D − 1)!
p (X = D − 1) = Cr D −1 (1 − Cr )0 = Cr D −1 , 0! =1
(D − 1)!0!

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 un


simple vector de diferencias.

r 1 = r 0 : vi ,g = xr 0,g + F ∗ (xr 0,g − xr 2,g )


r 2 = r 0 : vi ,g = xr 0,g + F ∗ (xr 1,g − xr 0,g )

Cada dos vectores recombinaciones lineales denen una linea


que conecta el vector base ca uno de los dos diferentes
vectores.

F juega el papel de coeciente de combinación qeu determina


cual 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ética


cuando r 1 = r 0 Izquierda, o r 2 = r 0 Derecha.

Rodrigo López Farías Evolución Diferencial


Vision General, Evolución Diferencial

Solo Mutación: r0=i

Si r 0 = i , entonces se reduce a una mutación, Cr juega el rol


de probabilidad de mutación.

xj ,i ,g , if randj (0, 1) <= Cr or j = jrand


(
uj ,i ,g =
xj ,i ,g de otra manera
El vector base indica que es aleatoriamente seleccionado sin
restricciones, este tipo de vectores ocurre con una probabilidad de
1/ 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 . Esta


coincidencia no reduce el proceso generacional asumiendo que
r 0 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= r 0.
Excluir todos los índices: i 6= r 0 6= r 1 6= r 2

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 el


valor de su función objetivo. Como aquel vector que tiene mejor
aptitud en la población actual.

r 0 = 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 sido


propuestos:

1 Método Best

r 0 = better , si f (xbetter ,g ≤ f (xi ,g ))


2 Rand to Best, que usa recombinación aritmética para generar
un vector base que esta entre el vector meta y el mejor vector
hasta el momento según su aptitud.

xr 0,g = xi ,g + k ∗ (xbest ,g −xi ,g ) k [0, 1] = constant


La constante k, controla el sesgo a través de las mejores soluciones
hasta 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 la


diversidad de la población e ir degradando el potencial de los
vectores 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 de


diferencias.

∆xr 1,r 2 = (xr 1 − xr 2 )


La distribución de la diferencia de vectores depnde de la
distribución de los vectores y siempre seran diferentes para cada
función objetivo.

Todos los vectores de diferencias son igualmente probables.

La suma de todas las diferencias de vectores es cero.


Np −1
1
< ∆x >= (x − xk ,g ) = 0
X
Np 2 i ,k =0 i ,g

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 sido


exitosamente optimizada. La convergencia es tardada.

Cuando F = 1, distintas combinaciones de vectores son


indistinguibles.

xr 0,g + F ∗ (xr 1,g − xr 2,g )




xr 0,g + xr 1,g − xr 2,g =
xr 0,g + F ∗ (xr 1,g − xr 2,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 se


crucen.

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 tenga


un valor adecuado para contrarrestar este efecto.

Zaharie ha demostrado la existencia de un limite bajo efectivo


para F.

Encontrando una F adecuada la población puede converger


aú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 por


medio de la varianza de un solo parámetro del vector, debido a
que las variables son independientes de la función objetivo.

Np −1 Np −1
1 1
Var (Px ,g ) = (x − < x > g )2 ; < x >g = x
X X
Np i =0 i ,g Np i =0 i ,g

Esta fórmula calcula la varianza esperada de las poblaciones


mutantes y y poblaciones de prueba dada la varianza de la
población Var (Px ,g ).
La Meta es determinar que parámetros de control son mas
probables de resultar para la convergencia prematura,
compensando la incapacidad del algoritmo de generar una
població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 simplicar el analisis, Zaharie que el vector base y el


vector meta sean diferentes y asi como la diferencia de
vectores con el vector base y que por lo menos un parametro
de prueba sea heredado para poder asumir que Cr es un
verdadera probabilidad de cruza.

Se modicó F, multiplicando por un número generado por un


una variable aleatoria Gaussiana

Vj ,i ,g = xj ,r 0,g + F̃∗ (xj ,r 1,g − xj ,r 2,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 varianza


esperada de la población Mutante esta relacionada a la
varianza de la población por la fórmula:

Np − 1
E (Var (Pv ,g ) = (2 ∗ F 2 + )Var (Px ,g )
Np
Si la población mutante es cruzada con la población original,
la población de prueba esperada es:

pcr pCr
2
2
E (Var (Pu,g )) = (2F 2 pCr − + + 1)Var (Px ,g )
Np Np

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:

2 pCr
2 P2 − + =0
Np Np
Puede ser considerada crítica desde que resulta en una
población la cual la varianza sigue siendo una constante sin
contar las uctuaciones aleatorias.

Resolviendo la ecuación anterior para F dado FCrit como


s
1 − PCr /2
Fcrit =
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ón


converge sin contar la presión de selección. Y si F > FCrit la
población se diversica.

Figura: La evolución de la varianza de un parámetro es desplegada


por cuatro diferentes valores de F. Notar que F 0̃,134 es critica en el
sentido que la varianza es cercanamente constante. Resultados para
una evolucion en una supercie plana,
Rodrigo López Farías
todos los vectores de prueba
Evolución Diferencial
Vision General, Evolución Diferencial

El Factor de Escala: F

En la práctica F debe ser mas grande que FCrit , Para


contrarrestar el efecto de reducción de diversidad.

Figura: Gráca que ilustra el efecto de presión en la selección


producida por una Función Rastrigin en la varianza de la poblacion
sobre las Generaciones. Los resultados son 100 promedios obtenidos
con 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 efectivamente


amplia la capacidad de búsqueda mas allá permitida por la
diferencia de vectores.

Podría ser útil para tamaño de poblaciones pequeñas, o


simetricamente 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 llamado


Jitter, y es representado como Fj .
Dithering escala la diferencia de vectores por el factor F.
Se han realizado pruebas utilizando la fórmula de la hiperesfera
de 10 dimesiones como función objetivo.

El conjunto de puntos (n+1)-espacio (x1,x1,x2,. . . ,xn+1) que


dene una n-esfera, es representada por:

n+1
2
r = (xi + Ci )2
X

i =1

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


N (0, 1) PDF, y se ve como afecta a la velocidad de
Dither, con
convergencia comparado con dejar F constante. En la gráca de la
derecha se muestra el optimo Np al cual el mínimo número de
evaluaciones 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 evaluaciones


cuando Cr = 0 y Np = 7.
Con Cr = 0,2, los tres métodos requieren el mismo número de
evaluaciones. 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 se


desempeña igual que F = constant . Discrepan conforme Cr se
hace 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 de


optimización porque a diferencia de la hipere-esfera, el optimo
step-size depende de la dirección que toma este.
DX
−1
fellipsoid (x ) = jx2
2 j
j =0

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 optimizando


la Hiperesfera.

Figura: Se muestra el efecto de Jitter  y Dither con


F = constant = 0,9. Y el número mínimo de evaluaciones que se
requirieron 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 elipse


o
45 ?

o
Al rotar 45 , la función se vuelve en una con parámetros
dependientes.

felipse (x ) = 2(x02 − x0 x1 x12 )


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 Rodrigo


con F = 0,9, Cr
López Farías > 0,4. Probando el promedio de
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 y


multimodales hacen una estrategia cuestionable para
optimizació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 mejorar


controlando la cantidad de variacion en Fj y Fi .
El problema de usar una distribución gaussiana para calcular
F , 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 que


su valor promedio sea 1 y no 0 y evitar valores negativos.

Para pertubar la escala de las magnitudes de F , se usa


log-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 la


distribución a 1.

Cuando τ = 0, Fj = F .
Se puede controlar la varianza de la distribución de
independientemente 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. La


convergencia 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ón


es una variable independiente.

Fj = F + d (randj (0, 1) − 0,5), d < 2F

Analogo a τ en la distribución log-normal, se tiene d , que


controla la variacion de la distribución uniforme.

Esto degrada el rendimiento porque tienden a tener progreso


lento hacia el optimo porque genera perturbaciones muy
grandes y pequeñas.

Una distribucion uniforme con d ∼ F , puede reducir las


perturbaciones 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 mas


rápido que F = constante (d = 0) cuando 0 < d < 1,4. Dither se
desempeña mejor cuando d = 9. Resultados son promedio de 1000
pruebas 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 de


variabilidad es mejor.

Esta Función de Distribución de Probabilidad previene esta


dicultad.

Una variable de ley de la energía puede ser generada por un


valor 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 =
1
−1
F

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 que
los 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 mas


vectores para crear uno o mas vectores de prueba.

Se aplica a datos simbólicos, binarios y reales.

recombinación aritmetica o continua expresa vectores de


prueba 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 vectores


son escogidos cada vez para cada parámetro de prueba (Cruza
Dual).

Figura: Cruza de un solo punto. Cada cadena es un vector de 8


parámetros tipo enteros. Cada vector contribuye con parámetros
contiguos 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 la


izquierda de un vector son heredados al vector hasta el punto,
y del punto a la derecha se heredan los parámetros del otro
vector.

Crosover de N-Puntos

Este tipo de cruza subdivie el vector de pruebas en n+1


particiones tal que los parametros en particiones adhiacentes
son 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 cercamente
agrupados. Para evitar esto se emplea cruza de uno o dos
puntos.

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 una
variable exponensialmente distribuida.

Figura: La cruza exponencial, selecciona un parametro del indice jrand , los


parametros de prueba son heredados al mutante vi ,g , cuando
randj (0, 1) ≤ Cr , Cuando randj (0, 1) > Cr , todos los parametros de
prueba 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 aleatoriamente


es igual a r3 < Cr . Por lo tanto:
p (x = 1) = 1 − Cr
la probabilidad que dos parametros mutantes sean heredados
es:

p (x = 2) = (1 − Cr )Cr
En base a esto, la probabilidad que el vector de prueba sea
heredado exactamente n parámetros mutantes es:

p (x = n) = (1 − Cr )Cr n−1 = Cr n−1 − Cr n


Sumando los terminos da la funcion acumulada.
n
p (x ≤ n ) = Cr k −1 − Cr k = 1 − Cr n
X

k =1
Rodrigo López Farías Evolución Diferencial
Vision General, Evolución Diferencial

Cruza

Cruza Uniforme (Binomial)

G.Syswerda dene este tipo de cruza como un proceso en el


cual independientes pruebas determinan la fuente de cada
parametro de prueba.

Figura: Cruza binomial. Una vez que un indice j es escogido


aleatoriamente. D − 1 pruebas independientes son hechas para
determinar 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 distribucion


binomal.

En particular, las probabilidades de éxito de eredar un solo


parametro del mutante es la porbabilidad que D − 1 falle
ocurriendo la probabilidad 1 − Cr .
p (x = 1) = (1 − Cr )d −1

p = n, D =D −1 Crn−1 Cr n−1 (1 − Cr )D −n
Donde:

D −1
D −1 Cn−1 =
(n − 1)!(D − n)!

Rodrigo López Farías Evolución Diferencial


Vision General, Evolución Diferencial

Cruza

El términoD −1 Cn−1 representa el número de combinaciones de


D − 1 elementos tomados de n − 1, a la vez. Sumando los primeros
n terminos da la probabilidad que el vector de prueba sea heredado
a lo menos n parámetros mutantes.

Lampinen and Zelinka mostraron que el número de posibles


vectores de prueba ntrials , que puede ser creado con cruza
binomial 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 todas


las conguraciones tienen la misma probabilidad. ED no elimina el
sesgo pero se basa en Cr para proveer la media para controlarla. En
un extremo, Cr ∼ 0 minimiza la disrupción incrementalmente
alterando solo unos parámetros de un vector a la vez. mientras por
el otro extremo Cr ∼ 0 favorece la exploración al apuntar vectores
de 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.
DX
−1
f (x ) = fj (xj )
j =0

Cada parametro puede ser optimizado independientemente.


permitiendo romper el problema en diferentes dimensiones.

D − dimensionales
Al encontrar el óptimo de las funciones , se
combinan para formar la función D − dimensional

f (x ∗ ) = f (x0∗ , x1∗ , ...., xD∗ −1 ) min(fj (xj ))) = fj (xj∗ ), 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 baja


tasa de mutación es una mala estrategia para las funciones de
parámetros dependientes.

Figura: La función de elipse, a la izquierda es una función de parámetros


separables, 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 separable


en diferentes funciones independientes. Y pude alcanzar el
óptimo en dos movimientos.

o
En la elipse rotada 45 , el óptimo no podria alcanzarse en dos
movimientos, si cada paso fuera tomado paralelo al eje de las
coordenadas. Se necesitan muchas mutaciones para poder
alcanzar 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 eciente 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 posibles


vectores de prueba, especialmente cuando Cr = 1.
En general los parámetros de funciones dependientes, CR debe
estar cerca a 1, de manera que no se pierda el desempeño
usando 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 rotacionalmente


invariante, que no dependa de la orentacion de el sistema de
coordenadas 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 reere a que el desempeño del algoritmo depende de la


alineacó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 de


rotación de la hiper-Ellipsoide. Con Cr=1 y F=0.9. El resultado son
promedios 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 componentes


de las diferenciales son alterados independientemente. Como los ejes de
las 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 rotacionalmente


invariante, Usando Np =50, Cr= 1 y F1 = ,9 + d (randi (0, 1) − 5) con
d = ,2, para Dither, y Fj = 0,9 + d (randj (0, 1) − 0,5), con d = 0,2 y
d = 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 los
vectores.

La recombinación aritmética selecciona parámetros de ambos


vectores para formar un nuevo vector xi ,g .
wi ,g = xr 0,g + ki (xr 1,g − xr 0,g )

k : es el coeciente de combinación que puede ser una


constante.

Si el coeciente de combinación es muestreado para cada


parámetro entonces se habla de recombinación intermedia.

wj ,i ,g = xj ,i ,g + kj (xj ,r 2,g − xj ,r 1,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 = xr 0 + k1 ∗ (xr 1 − xr 0 ) + k2 ∗ (xr 2 − xr 0 )
Haciendo un Cambio de Variable
(K + F )
k1 = √
2

(K − F )
k2 = √
2

Se obtiene:

K +F K −F
u = xr 0 + √ ∗ (xr 1 − xr 0 ) + √ ∗ (xr 2 − xr 0 )
2 2

K F
u = xr 0 + √ ∗ (xr 1 + xr 2 − 2xr 0 ) + √ ∗ (xr 1 − xr 2 )
2 2

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 en


componentes cada paso de mutación en el plano K -F, El ángulo entre
k1 − 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): Dierential Evolution , A practical


Approach to Global Optimization. Springer, New York.

Rodrigo López Farías Evolución Diferencial

Vous aimerez peut-être aussi