stringtranslate.com

CMA-ES

La estrategia de evolución de adaptación de matriz de covarianza (CMA-ES) es un tipo particular de estrategia para optimización numérica . Las estrategias de evolución (ES) son métodos estocásticos , sin derivadas, para la optimización numérica de problemas de optimización continua no lineal o no convexa . Pertenecen a la clase de algoritmos evolutivos y computación evolutiva . Un algoritmo evolutivo se basa ampliamente en el principio de evolución biológica , es decir, la interacción repetida de variación (a través de recombinación y mutación) y selección: en cada generación (iteración) se generan nuevos individuos (soluciones candidatas, denotadas como ) por variación de los individuos parentales actuales, generalmente de manera estocástica. Luego, se seleccionan algunos individuos para convertirse en los padres en la próxima generación en función de su aptitud o valor de función objetivo . De esta manera, se generan individuos con valores cada vez mejores a lo largo de la secuencia generacional.

En una estrategia de evolución , las nuevas soluciones candidatas suelen muestrearse de acuerdo con una distribución normal multivariante en . La recombinación equivale a seleccionar un nuevo valor medio para la distribución. La mutación equivale a añadir un vector aleatorio, una perturbación con media cero. Las dependencias por pares entre las variables de la distribución se representan mediante una matriz de covarianza . La adaptación de la matriz de covarianza (CMA) es un método para actualizar la matriz de covarianza de esta distribución. Esto es particularmente útil si la función está mal condicionada .

La adaptación de la matriz de covarianza equivale a aprender un modelo de segundo orden de la función objetivo subyacente similar a la aproximación de la matriz hessiana inversa en el método cuasi-Newton en la optimización clásica . A diferencia de la mayoría de los métodos clásicos, se realizan menos suposiciones sobre la función objetivo subyacente. Debido a que solo se explota una clasificación (o, equivalentemente, ordenación) de las soluciones candidatas, el método no requiere ni derivadas ni siquiera una función objetivo (explícita). Por ejemplo, la clasificación podría surgir de competencias por pares entre las soluciones candidatas en un torneo del sistema suizo .

Principios

Ilustración de una ejecución de optimización real con adaptación de la matriz de covarianza en un problema bidimensional simple. El paisaje de optimización esférico se representa con líneas continuas de valores iguales. La población (puntos) es mucho mayor de lo necesario, pero muestra claramente cómo cambia la distribución de la población (línea de puntos) durante la optimización. En este problema simple, la población se concentra por encima del óptimo global en unas pocas generaciones.

En el algoritmo CMA-ES se explotan dos principios fundamentales para la adaptación de los parámetros de la distribución de búsqueda.

En primer lugar, un principio de máxima verosimilitud , basado en la idea de aumentar la probabilidad de soluciones candidatas exitosas y pasos de búsqueda. La media de la distribución se actualiza de modo que se maximice la probabilidad de soluciones candidatas exitosas anteriores. La matriz de covarianza de la distribución se actualiza (de manera incremental) de modo que se aumente la probabilidad de pasos de búsqueda exitosos anteriores. Ambas actualizaciones se pueden interpretar como un descenso de gradiente natural . Además, en consecuencia, el CMA realiza un análisis iterado de componentes principales de los pasos de búsqueda exitosos mientras conserva todos los ejes principales. Los algoritmos de estimación de distribución y el método de entropía cruzada se basan en ideas muy similares, pero estiman (de manera no incremental) la matriz de covarianza maximizando la probabilidad de puntos de solución exitosos en lugar de pasos de búsqueda exitosos .

En segundo lugar, se registran dos rutas de evolución temporal de la media de distribución de la estrategia, denominadas rutas de búsqueda o de evolución. Estas rutas contienen información significativa sobre la correlación entre pasos consecutivos. En concreto, si se dan pasos consecutivos en una dirección similar, las rutas de evolución se alargan. Las rutas de evolución se aprovechan de dos maneras. Una de ellas se utiliza para el procedimiento de adaptación de la matriz de covarianza en lugar de pasos de búsqueda únicos y exitosos, y facilita un aumento de la varianza posiblemente mucho más rápido en direcciones favorables. La otra ruta se utiliza para llevar a cabo un control adicional del tamaño de los pasos. Este control del tamaño de los pasos tiene como objetivo hacer que los movimientos consecutivos de la media de distribución sean ortogonales en la expectativa. El control del tamaño de los pasos evita eficazmente la convergencia prematura, pero permite una convergencia rápida hacia un valor óptimo.

Algoritmo

A continuación se describe el ( μ / μ wλ )-CMA-ES más comúnmente utilizado, donde en cada paso de iteración se utiliza una combinación ponderada de las μ mejores de λ nuevas soluciones candidatas para actualizar los parámetros de distribución. El ciclo principal consta de tres partes principales: 1) muestreo de nuevas soluciones, 2) reordenamiento de las soluciones muestreadas en función de su aptitud, 3) actualización de las variables de estado internas en función de las muestras reordenadas. Un pseudocódigo del algoritmo se ve como sigue.

set // número de muestras por iteración, al menos dos, generalmente > 4 initialize , , , , // inicializa variables de estado while not ends do // iterar for in do // muestrea nuevas soluciones y las evalúa sample_multivariate_normal(mean , covariance_matrix ) ← with // ordena soluciones // que necesitamos después and ← update_m // mueve la media a mejores soluciones ← update_ps // actualiza la ruta de evolución isotrópica ← update_pc // actualiza la ruta de evolución anisotrópica ← update_C // actualiza la matriz de covarianza ← update_sigma // actualiza el tamaño del paso usando la longitud de la ruta isotrópica return or          

El orden de las cinco asignaciones de actualización es relevante: deben actualizarse primero, deben actualizarse antes y deben actualizarse al final. Las ecuaciones de actualización para las cinco variables de estado se especifican a continuación.

Se dan la dimensión del espacio de búsqueda y el paso de iteración . Las cinco variables de estado son

, la media de distribución y la solución favorita actual al problema de optimización,
, el tamaño del paso,
, una matriz de covarianza simétrica y definida positiva con y
, dos caminos de evolución, inicialmente establecidos en el vector cero.

La iteración comienza con el muestreo de soluciones candidatas de una distribución normal multivariada , es decir, para

La segunda línea sugiere la interpretación como perturbación imparcial (mutación) del vector de solución favorito actual (el vector de media de distribución). Las soluciones candidatas se evalúan en la función objetivo que se debe minimizar. Denotando las soluciones candidatas ordenadas como

El nuevo valor medio se calcula como

donde los pesos positivos (de recombinación) suman uno. Normalmente, y los pesos se eligen de manera que . La única retroalimentación utilizada de la función objetivo aquí y en lo sucesivo es un ordenamiento de las soluciones candidatas muestreadas debido a los índices .

El tamaño del paso se actualiza mediante la adaptación acumulativa del tamaño del paso (CSA), a veces también denominada control de longitud de ruta . La ruta de evolución (o ruta de búsqueda) se actualiza primero.

dónde

es el horizonte temporal hacia atrás para la trayectoria de evolución y mayor que uno ( es reminiscente de una constante de decaimiento exponencial como donde es la vida útil asociada y la vida media),
es la varianza de la masa de selección efectiva y por definición de ,
es la única raíz cuadrada simétrica de la inversa de , y
El parámetro de amortiguamiento suele ser cercano a uno. Para o el tamaño del paso permanece sin cambios.

El tamaño del paso aumenta si y solo si es mayor que el valor esperado

y disminuye si es menor. Por esta razón, la actualización del tamaño de paso tiende a hacer que los pasos consecutivos sean -conjugados , en el sentido de que después de que la adaptación haya sido exitosa . [1]

Finalmente se actualiza la matriz de covarianza , donde nuevamente se actualiza primero la respectiva trayectoria de evolución.

donde denota la transposición y

es el horizonte temporal hacia atrás para la trayectoria de evolución y mayor que uno,
y la función indicadora evalúa a uno si y solo si o, en otras palabras, , que suele ser el caso,
Compensa en parte la pequeña pérdida de varianza en caso de que el indicador sea cero,
es la tasa de aprendizaje para la actualización de rango uno de la matriz de covarianza y
es la tasa de aprendizaje para la actualización de rango de la matriz de covarianza y no debe exceder .

La actualización de la matriz de covarianza tiende a aumentar la probabilidad de que y de sean muestreados a partir de . Esto completa el paso de iteración.

El número de muestras candidatas por iteración, , no se determina a priori y puede variar en un amplio rango. Valores más pequeños, por ejemplo , conducen a un comportamiento de búsqueda más local. Valores más grandes, por ejemplo con el valor predeterminado , hacen que la búsqueda sea más global. A veces, el algoritmo se reinicia repetidamente con un aumento de un factor de dos para cada reinicio. [2] Además de la configuración (o posiblemente en su lugar, si por ejemplo está predeterminado por el número de procesadores disponibles), los parámetros introducidos anteriormente no son específicos de la función objetivo dada y, por lo tanto, no están destinados a ser modificados por el usuario.

Código de ejemplo en MATLAB/Octave

función  xmin = purecmaes % ( mu/mu_w, lambda ) - CMA - ES % -------------------- Inicialización -------------------------------- % Parámetros de entrada definidos por el usuario (deben editarse) strfitnessfct = 'frosenbrock' ; % nombre de la función objetivo/aptitud N = 20 ; % número de variables objetivo/dimensión del problema xmean = rand ( N , 1 ); % punto inicial de las variables objetivo sigma = 0.3 ; % desviación estándar por coordenadas (tamaño del paso) stopfitness = 1e-10 ; % parada si la aptitud < stopfitness (minimización) stopeval = 1e3 * N ^ 2 ; % parada después de stopeval número de evaluaciones de la función % Configuración de parámetros de estrategia: Selección lambda = 4 + floor ( 3 * log ( N )); % tamaño de la población, número de descendientes mu = lambda / 2 ; % número de padres/puntos para pesos de recombinación = log ( mu + 1 / 2 ) - log ( 1 : mu ) ' ; % matriz muXone para recombinación ponderada mu = floor ( mu ); pesos = pesos / suma ( pesos ); % normalizar matriz de pesos de recombinación mueff = suma ( pesos ) ^ 2 / suma ( pesos .^ 2 ); % efectividad de varianza de la suma w_i x_i                                                   % Configuración de parámetros de estrategia: Adaptación cc = ( 4 + mueff / N ) / ( N + 4 + 2 * mueff / N ); % constante de tiempo para acumulación para C cs = ( mueff + 2 ) / ( N + mueff + 5 ); % constante t para acumulación para control sigma c1 = 2 / (( N + 1.3 ) ^ 2 + mueff ); % tasa de aprendizaje para actualización de rango uno de C cmu = min ( 1 - c1 , 2 * ( mueff - 2 + 1 / mueff ) / (( N + 2 ) ^ 2 + mueff )); % y para actualización de rango mu amortiguamientos = 1 + 2 * máx ( 0 , sqrt (( mueff - 1 ) / ( N + 1 )) - 1 ) + cs ; % amortiguamiento para sigma % usualmente cerca de 1 % Inicializar parámetros y constantes de estrategia dinámica (interna) pc = zeros ( N , 1 ); ps = zeros ( N , 1 ); % trayectorias de evolución para C y sigma B = eye ( N , N ); % B define el sistema de coordenadas D = ones ( N , 1 ); % diagonal D define la escala C = B * diag ( D .^ 2 ) * B ' ; % matriz de covarianza C invsqrtC = B * diag ( D .^- 1 ) * B '                                                                      ; % C^-1/2 eigeneval = 0 ; % actualización de seguimiento de B y D chiN = N ^ 0.5 * ( 1 - 1 / ( 4 * N ) + 1 / ( 21 * N ^ 2 )); % expectativa de % ||N(0,I)|| == norm(randn(N,1)) % -------------------- Bucle de generación -------------------------------- counteval = 0 ; % las siguientes 40 líneas contienen las 20 líneas de código interesante mientras counteval < stopeval % Generar y evaluar la descendencia lambda para k = 1 : lambda arx (:, k ) = xmean + sigma * B * ( D .* randn ( N , 1 )); % m + sig * Normal(0,C) arfitness ( k ) = feval ( strfitnessfct , arx (:, k )); % llamada a la función objetivo counteval = counteval + 1 ; fin % Ordenar por aptitud y calcular la media ponderada en xmean [ arfitness , arindex ] = sort ( arfitness ); % minimización xold = xmean ; xmean = arx (:, arindex ( 1 : mu )) * pesos ; % recombinación, nuevo valor medio % Acumulación: Actualizar rutas de evolución ps = ( 1 - cs ) * ps ... + sqrt ( cs * ( 2 - cs ) * mueff ) * invsqrtC * ( xmean - xold ) / sigma ; hsig = norm ( ps ) / sqrt (                                                                           1 - ( 1 - cs ) ^ ( 2 * counteval / lambda )) / chiN < 1.4 + 2 / ( N + 1 ); pc = ( 1 - cc ) * pc ... + hsig * sqrt ( cc * ( 2 - cc ) * mueff ) * ( xmean - xold ) / sigma ;                 % Adaptar la matriz de covarianza C artmp = ( 1 / sigma ) * ( arx (:, arindex ( 1 : mu )) - repmat ( xold , 1 , mu )); C = ( 1 - c1 - cmu ) * C ...   % considerar la matriz anterior + c1 * ( pc * pc ' ...   % más actualización de rango uno + ( 1 - hsig ) * cc * ( 2 - cc ) * C ) ...  % corrección menor si hsig==0 + cmu * artmp * diag ( pesos ) * artmp ' ; % más actualización de rango mu                                 % Adaptar tamaño de paso sigma sigma = sigma * exp ( ( cs / amortiguamientos ) * ( norma ( ps ) / chiN - 1 )); % Descomposición de C en B*diag(D.^2)*B' (diagonalización) si counteval - eigeneval > lambda / ( c1 + cmu ) / N / 10 % para lograr O(N^2) eigeneval = counteval ; C = triu ( C ) + triu ( C , 1 ) ' ; % imponer simetría [ B , D ] = eig ( C ); % descomposición propia, B==vectores propios normalizados D = sqrt ( diag ( D )); % D es un vector de desviaciones estándar ahora invsqrtC = B * diag ( D .^- 1 ) * B ' ; fin % Break, si la aptitud es suficientemente buena o la condición excede 1e14, se recomiendan mejores métodos de terminación si arfitness ( 1 ) <= stopfitness || max ( D ) > 1e7 * min ( D ) break ; fin                                                         fin % while, fin del bucle de generación  xmin = arx (:, arindex ( 1 )); % Devuelve el mejor punto de la última iteración. % Nótese que se espera que xmean sea incluso % mejor. fin % --------------------------------------------------------------- function f = frosenbrock ( x ) if size ( x , 1 ) < 2 error ( 'la dimensión debe ser mayor que uno' ); fin f = 100 * suma (( x ( 1 : fin - 1 ) .^ 2 - x ( 2 : fin )) .^ 2 ) + suma (( x ( 1 : fin - 1 ) - 1 ) .^ 2 ); fin                    

Fundamentos teóricos

Dados los parámetros de distribución (media, varianzas y covarianzas), la distribución de probabilidad normal para el muestreo de nuevas soluciones candidatas es la distribución de probabilidad de entropía máxima sobre , es decir, la distribución de muestra con la cantidad mínima de información previa incorporada en la distribución. A continuación se realizan más consideraciones sobre las ecuaciones de actualización de CMA-ES.

Métrica variable

El CMA-ES implementa un método estocástico de métrica variable . En el caso muy particular de una función objetivo convexa-cuadrática

La matriz de covarianza se adapta a la inversa de la matriz hessiana , hasta un factor escalar y pequeñas fluctuaciones aleatorias. De manera más general, también en la función , donde es estrictamente creciente y, por lo tanto, preserva el orden, la matriz de covarianza se adapta a , hasta un factor escalar y pequeñas fluctuaciones aleatorias. Para la razón de selección (y, por lo tanto, el tamaño de la población ), las soluciones seleccionadas producen una matriz de covarianza empírica que refleja la matriz hessiana inversa incluso en estrategias de evolución sin adaptación de la matriz de covarianza. Este resultado se ha demostrado para en un modelo estático, basándose en la aproximación cuadrática. [3]

Actualizaciones de máxima verosimilitud

Las ecuaciones de actualización de la matriz de media y covarianza maximizan una probabilidad, al mismo tiempo que se asemejan a un algoritmo de maximización de expectativas . La actualización del vector de media maximiza una probabilidad logarítmica, de modo que

dónde

denota la verosimilitud logarítmica de una distribución normal multivariada con media y cualquier matriz de covarianza definida positiva . Para ver que es independiente de , observe primero que este es el caso para cualquier matriz diagonal , porque el maximizador por coordenadas es independiente de un factor de escala. Entonces, la rotación de los puntos de datos o la elección de una matriz no diagonal son equivalentes.

La actualización de rango de la matriz de covarianza, es decir, el sumando más a la derecha en la ecuación de actualización de , maximiza una verosimilitud logarítmica en que

para (de lo contrario es singular, pero se obtiene sustancialmente el mismo resultado para ). Aquí, denota la probabilidad de a partir de una distribución normal multivariada con media cero y matriz de covarianza . Por lo tanto, para y , es el estimador de máxima verosimilitud anterior . Consulte la estimación de matrices de covarianza para obtener detalles sobre la derivación.

Descenso de gradiente natural en el espacio de distribuciones de muestras

Akimoto et al. [4] y Glasmachers et al. [5] descubrieron de forma independiente que la actualización de los parámetros de distribución se asemeja al descenso en dirección de un gradiente natural muestreado del valor de la función objetivo esperado (a minimizar), donde la expectativa se toma bajo la distribución de muestra. Con la configuración de parámetros de y , es decir, sin control del tamaño del paso y actualización de rango uno, CMA-ES puede verse como una instanciación de Estrategias de Evolución Natural (NES). [4] [5] El gradiente natural es independiente de la parametrización de la distribución. Tomado con respecto a los parámetros θ de la distribución de muestra p , el gradiente de puede expresarse como

donde depende del vector de parámetros . La llamada función de puntuación , , indica la sensibilidad relativa de p con respecto a θ , y la expectativa se toma con respecto a la distribución p . El gradiente natural de , que cumple con la métrica de información de Fisher (una medida de distancia informativa entre distribuciones de probabilidad y la curvatura de la entropía relativa ), ahora se lee

donde la matriz de información de Fisher es la esperanza del hessiano de −ln p y hace que la expresión sea independiente de la parametrización elegida. Combinando las igualdades anteriores obtenemos

Una aproximación de Monte Carlo de la última expectativa toma el promedio sobre λ muestras de p

donde se utiliza la notación anterior y por lo tanto son monótonamente decrecientes en .

Ollivier et al. [6] finalmente encontraron una derivación rigurosa para los pesos, , tal como se definen en el CMA-ES. Los pesos son un estimador asintóticamente consistente de la CDF de en los puntos del estadístico de orden th , tal como se definió anteriormente, donde , compuesto con una transformación fija monótonamente decreciente , es decir,

.

Estos pesos hacen que el algoritmo sea insensible a los valores específicos. En términos más concisos, si se utiliza el estimador CDF de en lugar de sí mismo, el algoritmo solo depende de la clasificación de los valores, pero no de su distribución subyacente. Esto hace que el algoritmo sea invariante a las transformaciones estrictamente crecientes . Ahora definimos

tal que es la densidad de la distribución normal multivariante . Entonces, tenemos una expresión explícita para la inversa de la matriz de información de Fisher donde es fija

y para

y, después de algunos cálculos, las actualizaciones en el CMA-ES resultan como [4]

y

donde mat forma la matriz apropiada a partir del subvector de gradiente natural respectivo. Esto significa que, al establecer , las actualizaciones de CMA-ES descienden en la dirección de la aproximación del gradiente natural mientras se utilizan diferentes tamaños de paso (tasas de aprendizaje 1 y ) para los parámetros ortogonales y respectivamente. Las versiones más recientes también permiten una tasa de aprendizaje diferente para la media . [7] La ​​versión más reciente de CMA-ES también utiliza una función diferente para y con valores negativos solo para este último (el llamado CMA activo).

Estacionariedad o imparcialidad

Es relativamente fácil ver que las ecuaciones de actualización de CMA-ES satisfacen algunas condiciones de estacionariedad, en el sentido de que son esencialmente imparciales. Bajo una selección neutral, donde , encontramos que

y bajo algunas suposiciones adicionales leves sobre las condiciones iniciales

y con una corrección menor adicional en la actualización de la matriz de covarianza para el caso donde la función indicadora evalúa a cero, encontramos

Invariancia

Las propiedades de invariancia implican un rendimiento uniforme en una clase de funciones objetivo. Se ha argumentado que son una ventaja, porque permiten generalizar y predecir el comportamiento del algoritmo y, por lo tanto, fortalecen el significado de los resultados empíricos obtenidos en funciones individuales. Se han establecido las siguientes propiedades de invariancia para CMA-ES.

Cualquier método serio de optimización de parámetros debe ser invariante en cuanto a la traducción, pero la mayoría de los métodos no exhiben todas las propiedades de invariancia descritas anteriormente. Un ejemplo destacado con las mismas propiedades de invariancia es el método Nelder-Mead , donde el símplex inicial debe elegirse respectivamente.

Convergencia

Consideraciones conceptuales como la propiedad de invariancia de escala del algoritmo, el análisis de estrategias de evolución más simples y evidencia empírica abrumadora sugieren que el algoritmo converge en una gran clase de funciones rápidamente al óptimo global, denotado como . En algunas funciones, la convergencia ocurre independientemente de las condiciones iniciales con probabilidad uno. En algunas funciones la probabilidad es menor que uno y típicamente depende de las condiciones iniciales y . Empíricamente, la tasa de convergencia más rápida posible en para métodos de búsqueda directa basados ​​en rangos a menudo se puede observar (dependiendo del contexto denotado como convergencia lineal o convergencia log-lineal o exponencial ). De manera informal, podemos escribir

para algunos , y con mayor rigor

o de manera similar,

Esto significa que, en promedio, la distancia al óptimo disminuye en cada iteración en un factor "constante", es decir, en . La tasa de convergencia es aproximadamente , dado que no es mucho mayor que la dimensión . Incluso con óptimos y , la tasa de convergencia no puede superar ampliamente a , dado que los pesos de recombinación anteriores son todos no negativos. Las dependencias lineales reales en y son notables y son en ambos casos lo mejor que se puede esperar en este tipo de algoritmo. Sin embargo, falta una prueba rigurosa de convergencia.

Interpretación como transformación del sistema de coordenadas

El uso de una matriz de covarianza no identidad para la distribución normal multivariada en estrategias de evolución es equivalente a una transformación del sistema de coordenadas de los vectores de solución, [8] principalmente porque la ecuación de muestreo

puede expresarse de forma equivalente en un "espacio codificado" como

La matriz de covarianza define una transformación biyectiva (codificación) para todos los vectores de solución en un espacio, donde el muestreo se lleva a cabo con una matriz de covarianza identidad. Debido a que las ecuaciones de actualización en el CMA-ES son invariantes bajo transformaciones de sistemas de coordenadas lineales, el CMA-ES puede reescribirse como un procedimiento de codificación adaptativa aplicado a una estrategia de evolución simple con una matriz de covarianza identidad. [8] Este procedimiento de codificación adaptativa no se limita a algoritmos que toman muestras de una distribución normal multivariada (como las estrategias de evolución), sino que, en principio, puede aplicarse a cualquier método de búsqueda iterativo.

Rendimiento en la práctica

A diferencia de la mayoría de los demás algoritmos evolutivos , el CMA-ES es, desde la perspectiva del usuario, casi libre de parámetros. El usuario tiene que elegir un punto de solución inicial, , y el tamaño de paso inicial, . Opcionalmente, el usuario puede modificar el número de muestras candidatas λ (tamaño de la población) para cambiar el comportamiento de búsqueda característico (ver arriba) y las condiciones de terminación pueden o deben ajustarse al problema en cuestión.

El CMA-ES ha tenido éxito empíricamente en cientos de aplicaciones y se considera que es útil en particular en funciones objetivo no convexas, no separables, mal condicionadas, multimodales o ruidosas. [9] Una encuesta de optimizaciones de caja negra descubrió que superó a otros 31 algoritmos de optimización, con un desempeño especialmente sólido en "funciones difíciles" o espacios de búsqueda de dimensiones más grandes. [10]

La dimensión del espacio de búsqueda varía normalmente entre dos y unos pocos cientos. Suponiendo un escenario de optimización de caja negra, donde los gradientes no están disponibles (o no son útiles) y las evaluaciones de funciones son el único costo considerado de la búsqueda, es probable que el método CMA-ES sea superado por otros métodos en las siguientes condiciones:

En el caso de las funciones separables, la desventaja de rendimiento probablemente sea más significativa, ya que CMA-ES podría no ser capaz de encontrar soluciones comparables. Por otro lado, en el caso de las funciones no separables que están mal condicionadas o son difíciles de resolver o que solo se pueden resolver con más de una evaluación de función, CMA-ES muestra con mayor frecuencia un rendimiento superior.

Variaciones y ampliaciones

El (1+1)-CMA-ES [11] genera sólo una solución candidata por paso de iteración que se convierte en la nueva media de distribución si es mejor que la media actual. El (1+1)-CMA-ES es una variante cercana de la adaptación gaussiana . Algunas estrategias de evolución natural son variantes cercanas del CMA-ES con configuraciones de parámetros específicos. Las estrategias de evolución natural no utilizan rutas de evolución (es decir, en la configuración CMA-ES ) y formalizan la actualización de varianzas y covarianzas en un factor de Cholesky en lugar de una matriz de covarianza. El CMA-ES también se ha extendido a la optimización multiobjetivo como MO-CMA-ES. [12] Otra extensión notable ha sido la adición de una actualización negativa de la matriz de covarianza con el llamado CMA activo. [13] El uso de la actualización CMA activa adicional se considera como la variante predeterminada en la actualidad. [7]

Véase también

Referencias

  1. ^ Hansen, N. (2006), "La estrategia de evolución de CMA: una revisión comparativa", Hacia un nuevo cómputo evolutivo. Avances en la estimación de algoritmos de distribución , Springer, pp. 1769–1776, CiteSeerX  10.1.1.139.7369
  2. ^ Auger, A.; N. Hansen (2005). "Una estrategia de evolución de reinicio de CMA con un tamaño de población creciente" (PDF) . 2005 IEEE Congress on Evolutionary Computation, Actas . IEEE. págs. 1769–1776. Archivado desde el original (PDF) el 2016-03-04 . Consultado el 2012-07-13 .
  3. ^ Shir, OM; A. Yehudayoff (2020). "Sobre la relación covarianza-hessiana en las estrategias de evolución". Ciencias de la Computación Teórica . 801 . Elsevier: 157–174. arXiv : 1806.03674 . doi : 10.1016/j.tcs.2019.09.002 .
  4. ^ abc Akimoto, Y.; Y. Nagata; I. Ono; S. Kobayashi (2010). "Relación bidireccional entre las estrategias de evolución de CMA y las estrategias de evolución natural". Solución de problemas paralelos a partir de la naturaleza, PPSN XI . Springer. págs. 154–163.
  5. ^ ab Glasmachers, T.; T. Schaul; Y. Sun; D. Wierstra; J. Schmidhuber (2010). "Estrategias de evolución natural exponencial" (PDF) . Conferencia sobre computación genética y evolutiva GECCO . Portland, OR.
  6. ^ Ollivier, Y.; Arnold, L.; Auger, A.; Hansen, N. (2017). "Algoritmos de optimización geométrica de la información: una imagen unificadora a través de principios de invariancia" (PDF) . Revista de investigación en aprendizaje automático . 18 (18): 1−65.
  7. ^ ab Hansen, N. (2016). "La estrategia de evolución de CMA: un tutorial". arXiv : 1604.00772 [cs.LG].
  8. ^ ab Hansen, N. (2008). "Codificación adaptativa: cómo hacer que el sistema de coordenadas de búsqueda sea invariante". Resolución de problemas paralelos de la naturaleza, PPSN X . Springer. págs. 205–214.
  9. ^ "Referencias a aplicaciones CMA-ES" (PDF) .
  10. ^ Hansen, Nikolaus (2010). "Comparación de resultados de 31 algoritmos del estudio comparativo de optimización de caja negra BBOB-2009" (PDF) .
  11. ^ Igel, C.; T. Suttorp; N. Hansen (2006). "Una actualización de la matriz de covarianza computacionalmente eficiente y un (1+1)-CMA para estrategias evolutivas" (PDF) . Actas de la Conferencia sobre computación genética y evolutiva (GECCO) . ACM Press. págs. 453–460.
  12. ^ Igel, C.; N. Hansen; S. Roth (2007). "Adaptación de la matriz de covarianza para la optimización multiobjetivo". Computación evolutiva . 15 (1): 1–28. doi :10.1162/evco.2007.15.1.1. PMID  17388777. S2CID  7479494.
  13. ^ Jastrebski, GA; DV Arnold (2006). "Mejora de las estrategias de evolución mediante la adaptación de la matriz de covarianza activa". Actas del Congreso Mundial IEEE sobre Inteligencia Computacional de 2006. IEEE. págs. 9719–9726. doi :10.1109/CEC.2006.1688662.

Bibliografía

Enlaces externos