optimizaci¶on continua mediante la evoluci¶on de funciones ... · se basa en la evoluci¶on de...

8
Optimizaci´on Continua mediante la Evoluci´ on de Funciones de Densidad de Probabilidad con un Modelo de Dos Islas Alicia D. Ben´ ıtez y Jorge Casillas Dpto. de Ciencias de la Computaci´on e Inteligencia Artificial Universidad de Granada. Espa˜ na, 18071 E-mail: [email protected], [email protected] Resumen — El trabajo presenta un nuevo algorit- mo evolutivo dise˜ nado para la optimizaci´on continua. Se basa en la evoluci´ on de funciones de densidad de probabilidad, que se centran en las zonas del espa- cio de b´ usqueda m´ as prometedoras del dominio de cada variable. Se incluyen varios mecanismos para la auto-adaptaci´on del algoritmo a las caracter´ ısticas del problema. Gracias a los estudios emp´ ıricos, hemos ob- servado que nuestro algoritmo obtiene buenos resul- tados de precisi´on con respecto a otros algoritmos del estado del arte. Palabras clave — algoritmos evolutivos, optimizaci´on continua, funci´on de distribuci´on de probabilidad I. Introducci´ on La optimizaci´on continua es un problema impor- tante para la ingenier´ ıa, ya que es dif´ ıcil encontrar etodos que encuentren ´optimos globales en deter- minados problemas. Metaheur´ ısticas tales como los Algoritmos Gen´ eticos (AG) [8], Estrategias Evolu- tivas (EE) [4] y Algoritmos Mem´ eticos (AG hibri- dados con t´ ecnicas de b´ usqueda local) [13], son los que actualmente se est´an aplicando. Existen otros al- goritmos dise˜ nados originalmente para este tipo de optimizaci´ on, los Algoritmos de Estimaci´on de Dis- tribuci´ on (para referirnos a estos algoritmos, usare- mos su acr´onimo anglosaj´on EDA) [9], que no u- san operadores de cruce o de mutaci´ on, a diferencia de los AG y las EE. Para permitir la evoluci´ on de la poblaci´on, usa un mecanismo que consiste en el muestreo de individuos a partir de una densidad de probabilidad. En la l´ ınea de este algoritmo, encon- tramos el PBIL Continuo [19], con una densidad de probabilidad normal para cada variable a partir de la cual, se genera una poblaci´on que actualiza las normales. Tambi´ en incluye mecanismos para adap- tar las desviaciones t´ ıpicas de las normales. En muchos casos, un conjunto de poblaciones que evolucionen en paralelo [1] puede producir bastantes beneficios. Esta clase de algoritmos se conocen con el nombre de Algoritmos Evolutivos Paralelos (AEP) o modelo de islas. Consisten en un conjunto de sub- poblaciones que evolucionan independientemente y en ocasiones intercambian informaci´on entre ellas. Trabajo soportado en parte por el Proyecto TIN2005-08386- C05-01 del Ministerio de Educaci´on y Ciencia y fondos FED- ER En este trabajo, se propone un nuevo algoritmo que surge como resultado de la selecci´on de las ideas principales de varias metaheur´ ısticas: AG, EE, Algo- ritmos Mem´ eticos, EDA, y AEP. El algoritmo b´asico consiste en la evoluci´ on de una mixtura de distribu- ciones normales, manteniendo las mejores soluciones obtenidas. Dicho algoritmo est´a contenido en otro que considera dos islas de diferentes caracter´ ısticas para auto-adaptarse al problema. De acuerdo a es- to, el trabajo se organiza en las siguientes secciones: la secci´on II, describe el algoritmo que se propone en este trabajo; la secci´on III, relata brevemente las similitudes del algoritmo propuesto con otras meta- heur´ ısticas; la secci´on IV, muestra el estudio emp´ ıri- co del algoritmo con otros algoritmos propuestos; la secci´on V, muestra algunas conclusiones y trabajos futuros. II. Descripci´ on del Algoritmo EvolPDF-2 A continuaci´ on, describimos el algoritmo propues- to. Para un mejor entendimiento, hemos distinguido entre algoritmob´asico y el final que se propone (lla- mado EvolPDF-2). El algoritmo b´asico, que se puede considerar como el n´ ucleo del proceso de b´ usque- da, se describe en las subsecciones II-A, II-B y II-C (en la figura 1, se muestra la estructura del algorit- mo b´asico). Este algoritmo b´asico puede funcionar incorrectamente debido a su alto riesgo de caer en ´optimos locales y su alta dependencia de los valores de los par´ametros. Para hacer frente a esto, hemos dise˜ nado un algoritmo m´as complejo basado en el b´asico, que se describir´a en las subsecciones II-D y II-E. A. Componentes B´asicos: representaci´on, Iniciali- zaci´on, Muestreo y Reemplazamiento El algoritmo b´asico tiene cuatro componentes principales: representaci´on, que describe c´omo se codifican las soluciones; inicializaci´on, que crea un conjunto inicial de soluciones; muestreo, que genera nuevas soluciones con funciones de densidad de pro- babilidad (para referirnos a este tipo de funciones, usaremos su acr´onimo anglosaj´on PDF) estimadas de las mejores soluciones actuales; y reemplazamien- to, que actualiza el conjunto de soluciones considera-

Upload: others

Post on 10-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

Optimizacion Continua mediante la Evolucionde Funciones de Densidad de Probabilidad con

un Modelo de Dos IslasAlicia D. Benıtez y Jorge Casillas

Dpto. de Ciencias de la Computacion e Inteligencia ArtificialUniversidad de Granada. Espana, 18071

E-mail: [email protected], [email protected]

Resumen— El trabajo presenta un nuevo algorit-mo evolutivo disenado para la optimizacion continua.Se basa en la evolucion de funciones de densidad deprobabilidad, que se centran en las zonas del espa-cio de busqueda mas prometedoras del dominio decada variable. Se incluyen varios mecanismos para laauto-adaptacion del algoritmo a las caracterısticas delproblema. Gracias a los estudios empıricos, hemos ob-servado que nuestro algoritmo obtiene buenos resul-tados de precision con respecto a otros algoritmos delestado del arte.

Palabras clave— algoritmos evolutivos, optimizacioncontinua, funcion de distribucion de probabilidad

I. Introduccion

La optimizacion continua es un problema impor-tante para la ingenierıa, ya que es difıcil encontrarmetodos que encuentren optimos globales en deter-minados problemas. Metaheurısticas tales como losAlgoritmos Geneticos (AG) [8], Estrategias Evolu-tivas (EE) [4] y Algoritmos Memeticos (AG hibri-dados con tecnicas de busqueda local) [13], son losque actualmente se estan aplicando. Existen otros al-goritmos disenados originalmente para este tipo deoptimizacion, los Algoritmos de Estimacion de Dis-tribucion (para referirnos a estos algoritmos, usare-mos su acronimo anglosajon EDA) [9], que no u-san operadores de cruce o de mutacion, a diferenciade los AG y las EE. Para permitir la evolucion dela poblacion, usa un mecanismo que consiste en elmuestreo de individuos a partir de una densidad deprobabilidad. En la lınea de este algoritmo, encon-tramos el PBIL Continuo [19], con una densidad deprobabilidad normal para cada variable a partir dela cual, se genera una poblacion que actualiza lasnormales. Tambien incluye mecanismos para adap-tar las desviaciones tıpicas de las normales.

En muchos casos, un conjunto de poblaciones queevolucionen en paralelo [1] puede producir bastantesbeneficios. Esta clase de algoritmos se conocen conel nombre de Algoritmos Evolutivos Paralelos (AEP)o modelo de islas. Consisten en un conjunto de sub-poblaciones que evolucionan independientemente yen ocasiones intercambian informacion entre ellas.

Trabajo soportado en parte por el Proyecto TIN2005-08386-C05-01 del Ministerio de Educacion y Ciencia y fondos FED-ER

En este trabajo, se propone un nuevo algoritmoque surge como resultado de la seleccion de las ideasprincipales de varias metaheurısticas: AG, EE, Algo-ritmos Memeticos, EDA, y AEP. El algoritmo basicoconsiste en la evolucion de una mixtura de distribu-ciones normales, manteniendo las mejores solucionesobtenidas. Dicho algoritmo esta contenido en otroque considera dos islas de diferentes caracterısticaspara auto-adaptarse al problema. De acuerdo a es-to, el trabajo se organiza en las siguientes secciones:la seccion II, describe el algoritmo que se proponeen este trabajo; la seccion III, relata brevemente lassimilitudes del algoritmo propuesto con otras meta-heurısticas; la seccion IV, muestra el estudio empıri-co del algoritmo con otros algoritmos propuestos; laseccion V, muestra algunas conclusiones y trabajosfuturos.

II. Descripcion del Algoritmo EvolPDF-2

A continuacion, describimos el algoritmo propues-to. Para un mejor entendimiento, hemos distinguidoentre algoritmo basico y el final que se propone (lla-mado EvolPDF-2). El algoritmo basico, que se puedeconsiderar como el nucleo del proceso de busque-da, se describe en las subsecciones II-A, II-B y II-C(en la figura 1, se muestra la estructura del algorit-mo basico). Este algoritmo basico puede funcionarincorrectamente debido a su alto riesgo de caer enoptimos locales y su alta dependencia de los valoresde los parametros. Para hacer frente a esto, hemosdisenado un algoritmo mas complejo basado en elbasico, que se describira en las subsecciones II-D yII-E.

A. Componentes Basicos: representacion, Iniciali-zacion, Muestreo y Reemplazamiento

El algoritmo basico tiene cuatro componentesprincipales: representacion, que describe como secodifican las soluciones; inicializacion, que crea unconjunto inicial de soluciones; muestreo, que generanuevas soluciones con funciones de densidad de pro-babilidad (para referirnos a este tipo de funciones,usaremos su acronimo anglosajon PDF) estimadasde las mejores soluciones actuales; y reemplazamien-to, que actualiza el conjunto de soluciones considera-

Page 2: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

das para generar nuevas soluciones. Los componentesmencionados, estan disenados de la siguiente forma:

Entrada:Parametros: σ0, σf , P (numero de conjuntos de PDF)Sea n el numero de variables y T p = {Sp

1 , . . . , Spk} el

p-esimo conjunto de PDF, p ∈ {1, . . . , P}Algoritmo:

1. Inicializacion(Spi ∈ T p), para i ∈ {1, . . . , k} y p ∈

{1, . . . , P}2. Mientras (no se cumpla la condicion de parada)a) Para p ∈ {1, . . . , P}:

Rp ← Muestreo(T p)if (mejor(mejor(Rp), peor(T p)))

T p ← (T p − {peor(T p)}) ∪ {mejor(Rp)}b) if (condicion de recombinacion)

Recombinacion(T 1, . . . , T p)

Fig. 1. Algoritmo EvolPDF basico

Representacion: El algoritmo mantiene un conjun-to de k soluciones durante el proceso de busqueda.Cada solucion se representa de la siguiente forma:Si =

(µ1

i , ..., µvi , ..., µn

i

), siendo n el numero de va-

riables continuas del problema.Inicializacion: El algoritmo comienza generando

aleatoriamente k soluciones segun una distribucionuniforme.

Muestreo: En cada iteracion, se genera un numerode soluciones del conjunto actual. Para ello, conside-ramos que el conjunto actual de soluciones constitu-ye una PDF para cada variable.Para generar, es decir, muestrear nuevas soluciones,el proceso se realiza de la siguiente forma: para cadavariable, se escoge el 20% de soluciones mejores queconstituyen la PDF de esa variable, y a partir de el,se elige una solucion aleatoriamente, segun una dis-tribucion uniforme. Aunque este tipo de muestreono sea completamente proporcional al peso de cadanormal, permite que el algoritmo pueda funcionarcon maximizacion o minimizacion y sin necesidad deconocer el dominio de la funcion. No hemos proba-do otros valores de porcentaje de seleccion de solu-ciones, pero sı queremos destacar que gracias a laconsideracion de este porcentaje, podemos incremen-tar y disminuir la presion selectiva, es decir, con unalto porcentaje de seleccion de mejores soluciones,la presion selectiva sera menor; sin embargo, si dis-minuimos dicho porcentaje, tendremos una mayorpresion selectiva, ya que existirıa menor diversidad.Seguidamente, se genera un numero aleatorio conuna densidad normal, centrada en la media de lanormal elegida en el paso anterior. El valor obtenidosera el asignado a la correspondiente variable de lasolucion generada.Si cada variable tiene un dominio elegido y elmuestreo se sale de el, entonces existira una satu-racion, es decir, el valor se establecera de acuerdoal extremo correspondiente del intervalo. Esta satu-racion compensa la falta de acumulacion de densidaden esas regiones.Destacar que la desviacion tıpica es comun a todas

las variables.Reemplazamiento: Entre las soluciones generadas

en la iteracion actual, se elige la mejor segun el fit-ness f(Si) y reemplaza a la peor de las k mejoressoluciones actuales mantenidas por el algoritmo encaso de que las mejore. Este reemplazamiento, sepuede considerar como una clase de estimacion de laPDF.

B. Convergencia de la Desviacion Tıpica

En todas las metaheurısticas, es necesario que existatanto exploracion como explotacion. Al comienzo delalgoritmo, nos interesa que haya exploracion, con lafinalidad de favorecer la diversificacion en el espaciode busqueda. A medida que nos vamos acercandoal final del algoritmo, es mas conveniente una altaexplotacion, para alcanzar un optimo local o globalde la zona, que sea mas prometedora. De acuerdoa esto, nuestro algoritmo regula la desviacion tıpi-ca de las distribuciones, intentando hacerla mas altaal comienzo del algoritmo y mas baja al final. Paraconseguirlo, hemos definido un esquema de conver-gencia para la desviacion tıpica, segun la siguienteformula (la figura 2 muestra un ejemplo):

C(t) =

8>>><>>>:

σ0 si t ≤ α

(σ0 − σf )(1− 2( t−αβ−α

)2) si α < t ≤ α+β2

(σ0 − σf )(2( t−ββ−α

)2) + σf si α+β2

< t ≤ β

σf si t > β(1)

siendo t el numero de evaluacion, σ0 y σf losvalores inicial y final deseados para la desviaciontıpica respectivamente, y α y β dos constates fi-jadas dependiendo del numero de evaluaciones: α =evaluaciones · 0,1, β = evaluaciones · 0,8. Con es-ta formula, se regula el decremento de la desviaciontıpica, distinguiendo tres estados durante la evolu-cion de las PDF:1. Inicializacion: Al principio (10 % de evalua-

ciones), la desviacion tıpica se mantiene constantey se utiliza el algoritmo para configurar un conjuntode PDF iniciales.2. Consolidacion: Posteriormente, se produce la re-

duccion paulatina de la desviacion tıpica para fa-vorecer gradualmente la explotacion frente a la ex-ploracion.3. Refinamiento: Finalmente, durante el ultimo

20% de evaluaciones, se realiza un ajuste final delas PDF, manteniendo una desviacion tıpica baja yconstante.Los valores que se van a usar para σ0 y σf son: σ0 =10e-01 y σf = 10e-04. Estos valores han sido proba-dos en distintos problemas.

C. Recombinacion

El reemplazamiento elitista de nuestro algoritmopermite obtener con rapidez buenas soluciones, perocon un alto riesgo de convergencia prematura. Parahacer frente a esto, proponemos usar varios conjun-tos de PDF que, despues de un cierto numero de

Page 3: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

1

2

3

4

5

6

7

8

9

10

0 2 4 6 8 10

Fig. 2. Ejemplo de la convergencia de la desviacion tıpica(10 evaluaciones, α = 1, β = 8, σ0 = 8, σf = 3)

iteraciones, se combinen para de esta manera, ale-jarnos de optimos locales. Esta combinacion se rea-liza de la siguiente forma. Primero, se recogen todaslas soluciones de los distintos conjuntos de PDF, yentonces, cada solucion se distribuye aleatoriamenteentre los diferentes conjuntos. Este proceso se puedeconsiderar como una clase de operador de cruce. Elhecho de combinar los conjuntos de PDF hace quesi un conjunto cae en un optimo local, otro conjun-to puede trasladarlo y conducirlo a otra zona masprometedora del espacio de busqueda.

Se ha fijado el numero inicial de conjuntos de PDFa cinco y el numero de recombinaciones sigue unaproporcionalidad con respecto al numero de evalua-ciones de 0,01.

D. Modelo de Islas

Una vez definido el algoritmo basico en las tres sec-ciones previas, vamos a estudiar su comportamientoen distintas situaciones. Esta claro que dos de losparametros mas importantes del algoritmo basicoson el numero de muestreos y de normales. En laTabla I, se muestran los resultados obtenidos condistintas combinaciones de estos parametros para losproblemas Schwefel (unimodal) y Rastrigin (multi-modal), ambos con 25 variables. Se muestra la mediay la desviacion tıpica de 10 ejecuciones del algorit-mo basico (figura 1). En esta tabla, se puede obser-var como en el problema unimodal Schwefel, con unnumero bajo de muestreos y de normales, conducea buenos resultados. Con valores bajos de numerode normales y muestreos, aparece una alta intensifi-cacion, lo cual es bueno para el comportamiento delalgoritmo de cara a problemas unimodales. Si presta-mos atencion a Rastrigin (problema multimodal), sepuede observar que ocurre justo lo contrario que enSchwefel. Es decir, las soluciones mejoran a medidaque el numero de muestreos y normales se incremen-ta. Esto se debe al hecho de que, el incremento delvalor de estos parametros produce mas diversidad,y esto significa un funcionamiento apropiado paraproblemas multimodales.

Dadas estas premisas, decidimos especializar elalgoritmo en ambos comportamientos, fijando am-bos parametros a priori. Para ello, consideramos unmodelo paralelo basado en islas, como se muestra en

TABLA I

Resultados de la experimentacion del algoritmo

basico con las funciones Schwefel y Rastrigin (10

ejecuciones).

Funcion Muestreos Normales x σ1 2.42e-2 1.15e-15 2.34e-3 6.41e-3

5 10 3.21e-1 1.06e+020 5.15e+1 1.17e+230 2.53e+2 4.49e+21 1.05e-1 2.81e-15 6.15e-3 2,41e-2

10 10 7.20e-1 2.22e+020 1.33e+2 4.23e+2

Schwefel 30 2.19e+2 4.86e+21 2.22e-1 6.78e-15 2.62e-2 1.32e-1

15 10 2.08e+0 1.03e+120 9.05e+1 2.93e+230 1.83e+2 2.99e+21 1.33e+0 4.17e+05 1.24e-1 5.93e-1

20 10 2.38e+0 4.56e+020 7.33e+1 1.46e+230 1.32e+2 2.20e+21 6.40e+1 4.31e+15 4.06e+1 1.68e+1

5 10 1.09e+1 1.06e+120 8.55e+0 7.20e+030 4.47e+0 4.04e+01 7.32e+1 4.71e+15 4.42e+1 4.28e+1

10 10 1.59e+1 1.10e+120 6.76e+0 7.41e+0

Rastrigin 30 4.57e+0 7.47e+01 5.95e+1 4.71e+15 3.93e+1 3.74e+1

15 10 1.41e+1 1.07e+120 2.56e+0 7.98e+030 4.97e+0 5.26e+01 6.81e+1 4.46e+15 4.99e+1 4.02e+1

20 10 1.39e+1 8.44e+020 5.87e+0 6.36e+030 4.67e+0 4.88e+0

la figura 3.De esta forma, cada isla esta asignada a una carac-

terıstica diferente. Basicamente, cada isla implemen-ta el algoritmo basico, pero con parametros diferen-tes. Cuando transcurre un determinado numero deiteraciones, las mejores soluciones actuales de cadaisla migran de una a otra. En cada isla, sus conjun-tos de PDF evolucionan independientemente y enparalelo. El intercambio de informacion entre ellasfavorece la cooperacion entre islas para alcanzar eloptimo global. Una ventaja de este modelo basado enislas es que no es obligatorio usar el mismo algoritmoen ambas islas, lo cual indica que podemos usar cadaisla para una clase de aproximacion, y de esta for-ma usamos una isla para problemas que requierenmas intensificacion que diversificacion y otra paraproblemas que requieren mas diversificacion que in-tensificacion. Esto hace que el algoritmo sea capazde auto-adaptarse a la aproximacion mas promete-dora para resolver el problema. Cada isla tiene unaserie de caracterısticas propias: numero de normales

Page 4: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

Entrada:Parametros: σ0, σf , Pl (numero de conjuntos de PDF

para la l-esima isla)

Sea n numero de variables y T (l,pl) =

{S(l,pl)1 , . . . , S

(l,pl)kl

} el pl-esimo conjunto de PDF

para la l-esima isla, l ∈ {1, 2}, pL ∈ {1, . . . , Pl}.Algoritmo:

1. Inicializacion(S(l,pl)i ∈ T (l,pl), para l ∈ {1, 2}, i ∈

{1, . . . , kl} y pl ∈ {1, . . . , Pl}2. Repetir durante el 90 % de evaluacionesa) Para p1 ∈ {1, . . . , P1}:

R(1,p1)t ← Muestreo(T (1,p1))

if (mejor(mejor(R(1,p1)t ), peor(T (1,p1))))

r ← Simplex(mejor(R(1,p1)t ))

T (1,p1) ← (T (1,p1) − {peor(T (1,p1))}) ∪ {r}b) Para p2 ∈ {1, . . . , P2}:

R(2,p2)t ← Muestreo(T (2,p2))

if (mejor(mejor(R(2,p2)t ), peor(T (2,p2))))

T (2,p2) ← (T (2,p2) − {peor(T (2,p2))}) ∪{mejor(R

(2,p2)t }

c) if (condicion de recombinacion)

Recombination(T (1,1), . . . , T (1,p1))

Recombination(T (2,1), . . . , T (2,p2))d) if (condicion de migracion)

Migrar(mejor(T 2), T 1)Migrar(mejor(T 1), T 2)

3. Durante el restante 10% de evaluaciones, aplicar algo-ritmo Simplex a la mejor solucion encontrada.

Fig. 3. Algoritmo EvolPDF-2

que constituyen cada PDF para un valor fijo de k,numero de muestreos, e implementacion de Busque-da Local (BL).

Isla 1 (I1): el proposito de esta isla es intensi-ficar la busqueda en el espacio, manteniendo las solu-ciones mas prometedoras. Para ello, empleamos lossiguientes parametros del algoritmo basico:1. Numero de normales k = 1.2. Numero de muestreos por iteracion = 5.3. La BL es aplicada a la mejor solucion muestrea-

da, tan pronto como sea actualizada.Isla 2 (I2): el objetivo de esta segunda isla es

proporcionar la diversidad necesaria al algoritmo, yası no caer en un optimo local. Se usan los siguientesparametros y componentes:1. Numero de normales k = 30.2. Numero de muestreos por iteracion = 20.Con un rapido vistazo, podemos ver la configu-

racion de cada isla. El numero de normales es mu-cho mas alto en I2 que en I1. Las migraciones seproducen segun un numero dado de iteraciones dela siguiente forma: se elige la mejor solucion de cadaisla para migrar a la otra isla. El mejor individuode I2 se convierte en miembro de la isla I1 si mejo-ra a su mejor solucion actual de cada poblacion deI1. La solucion proveniente de I1 se convertira ensolucion de I2, reemplazando la peor solucion de ca-da poblacion de I2. El numero de migraciones sigueuna proporcionalidad con respecto al numero de e-valuaciones de 0,02. Queremos destacar que esta mi-gracion permite al algoritmo auto-adaptarse segunel problema que estemos considerando. Para proble-mas multimodales, la I2 funciona mejor debido a sus

caracterısticas; si se produce un estancamiento en laI1, y la migracion de una solucion de I2 a I1 tienelugar, esto hace que I1 abandone una zona con unoptimo local, porque saltara a otra zona prometedo-ra del espacio de busqueda dada por I2. De la mismaforma, para problemas unimodales, la solucion de I1migra a I2 con el objetivo de paralelizar la busqueday dar mas velocidad al proceso.

E. Busqueda Local

La BL es una metaheurıstica que consiste en labusqueda de buenas soluciones en un vecindario.Ocasionalmente, esta tecnica puede hacernos caer enun optimo local, pero puede ser una herramienta efi-caz en la busqueda de soluciones. En nuestro algo-ritmo, usaremos BL como una forma de refinar lassoluciones. En I1, aplicaremos BL a la mejor solu-cion muestreada, si es mejor que la mejor elitista desu isla. Esto refuerza mas la intensificacion del espa-cio de busqueda. Ademas tambien se aplica BL en elultimo 10% de evaluaciones para ası refinar la mejorsolucion encontrada. La BL usada en este trabajo,es el algoritmo Simplex, disponible en [14].

III. Relacion del Algoritmo con otrasMetaheurısticas

Nuestro algoritmo presenta una serie de semejan-zas con otras metaheurısticas existentes. A continua-cion analizamos brevemente algunas de ellas.

Nuestro algoritmo tiene claras similaridades conlos EDA [10]. Podemos considerar nuestro algoritmocomo un EDA en el que se mantiene una poblacionelite de las mejores soluciones obtenidas hasta el mo-mento, y en cada iteracion, se realiza una estimacionde las PDF segun un modelo incremental construidomediante normales univariantes. Este proceso sim-plifica nuestro algoritmo, evitando la necesidad deemplear otras tecnicas de estimacion de densidadesde probabilidad mas complejas.

Tanto nuestro algoritmo como el PBIL Continuo[19] y el algoritmo SHCLVND [18], utilizan funcionesde densidad de probabilidad para encontrar nuevassoluciones. Sin embargo, el modo de construir y mo-dificar las PDF difiere en nuestro algoritmo del resto.

En el PBIL Continuo y SHCLVND, cada PDFesta construida por una unica distribucion normal,por lo que dichos algoritmos no se pueden adaptara problemas multimodales, ya que la media de lanormal solo puede estar centrada en un unico pun-to. En nuestro algoritmo, ese problema no existe, yaque nuestra PDF esta constituida por un conjun-to de normales que sumadas constituyen una PDFmoldeable. De esta forma, nos podemos adaptar per-fectamente a la funcion que estemos resolviendo, in-cluso en casos de asimetrıa y multimodalidad.

El PBIL Continuo y el SHCLVND utilizan lassoluciones generadas para desplazar las PDF, lo cualralentiza el proceso de adaptacion. Sin embargo,nuestro algoritmo utiliza las soluciones generadas

Page 5: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

para formar parte de las PDF. Es decir, presentauna mejor perspectiva, ya que en el primer caso lainfluencia de las buenas soluciones tiene una caduci-dad que se pierde despues de algunas iteraciones,mientras que en nuestro caso, permanecen mientrasno se encuentren soluciones mejores. Nuestro algo-ritmo coincide con SHCLVND en el uso de una unicadesviacion tıpica global que va reduciendose con-forme avanza en algoritmo. Sin embargo, mientrasque el SHCLVND usa un enfriamiento geometrico(producto por una constante inferior a 1), nuestroproceso de reduccion de la desviacion tıpica dis-tingue entre las fases de inicializacion, consolidaciony refinamiento para una mejor regulacion del equi-librio entre exploracion/explotacion.

Nuestro algoritmo tambien tiene algunas simila-ridades con los AG. Podemos considerar cada solu-cion como un cromosoma, y cada PDF como un gen.La mutacion genetica corresponderıa a cuando gene-ramos un numero aleatorio procedente de la den-sidad normal escogida. Analogamente, podrıamosrelacionarlo con las Estrategias Evolutivas (1,1) [4],cuando empleamos una unica normal por PDF. Ennuestro caso, tenemos varias PDF por variables enparalelo, sobre las que se hacen recombinacionesperiodicas para intentar salir de los optimos locales.Esta idea esta muy relacionada con el operador decruce de los AG, ya que este operador recombina doso mas cromosomas que hereden las propiedades delos padres.

Tambien podemos considerar nuestro algoritmocomo un Algoritmo Memetico [13], ya que se hibri-da con una tecnica de busqueda local, que se aplicaa algunas soluciones durante la evolucion del algo-ritmo y al final del algoritmo para refinar la mejorsolucion encontrada.

IV. Estudio Empırico

Esta seccion presenta los resultados empıricos delos experimentos llevados a cabo, donde nuestro al-goritmo se compara con los resultados obtenidospor algunos algoritmos evolutivos para optimizacionglobal del estado del arte.

A. Experimentacion

Hemos considerado las 25 funciones propuestasen la Sesion Especial “Real-parameter optimization”del IEEE CEC 2005 [6], [21], con las especificacionesestablecidas en esta sesion: las experimentaciones sehan realizado con 10 y 30 variables para cada fun-cion, con un numero de 25 ejecuciones cada una; yun maximo de 100.000 evaluaciones para el caso de10 variables y 300.000 para el caso de 30. Hay tresclases de funciones: unimodales (de la funcion 1 ala 5), multimodales (de la 6 a la 14), e hibridacionesde funciones multimodales (de la funcion 15 a la 25).Hay que destacar el hecho de que todas las funcionesse encuentran desplazadas para evitar la simetrıa yla localizacion centrada del optimo. El maximo error

permitido en la funcion es 10e-8. En la tabla II, semuestra una relacion de las funciones consideradas,incluyendo el valor optimo de cada una de ellas. Lacuarta columna indica si para una determinada fun-cion se ha alcanzado el valor optimo por alguno delos algoritmos de comparacion (sin incluir nuestroalgoritmo) en 10 y 30 variables. Los resultados delos algoritmos con los que comparamos se han ex-traıdo de los correspondientes trabajos publicadosen la sesion especial [6].

Hemos considerado once algoritmos, pertenecientesa diferentes paradigmas de la metaheurıstica. A con-tinuacion describimos brevemente cada uno de ellos.BLX-GL50 [7] es un AG en donde se pone de mani-fiesto dos clases de cromosomas: masculino y femeni-no. El algoritmo BLX-MA [12] es un Algoritmo Evo-lutivo Memetico, que usa Solis-Wets como BusquedaLocal, y que divide la poblacion en tres grupos paraaplicar la Busqueda Local: los mas prometedores,prometedores y los menos prometedores. El algorit-mo DE [17] esta basado en la Evolucion Diferen-cial. L-SaDE [16] es un variante auto-adaptativa dela Evolucion Diferencial. Elige una estrategia segununa probabilidad, la cual se adapta de acuerdo a laproporcion de reemplazamiento de cada uno. DMS-L-PSO [11] actua de forma que cada n iteraciones,los grupos se reorganizan. Cada solucion solo afecta asu grupo, pero al final, afecta a todo el grupo. EDA[22] emplea una distribucion Gaussiana multivari-ante, siendo capaz de representar la correlacion entrevariables en los individuos seleccionados medianteuna matriz de covarianza. L-CMA-ES [3] introduceuna estrategia de reinicializacion de un algoritmo debusqueda local avanzado: el algoritmo CMA-ES conun paso inicial pequeno. G-CMA-ES [2] se basa en L-CMA-ES, donde la poblacion se incrementa en cadareinicializacion. K-PCX [20] es un algoritmo esta-cionario con busqueda basada en poblacion. CoEVO[15] es un Algoritmo Evolutivo que usa una evolu-cion cooperativa para crear y producir mutacionescon mayor exito. En SPC-PNX [5], se seleccionan dospadres y se generan λ hijos, que se producen a travesdel operador de cruce. Entonces, los descendientesse combinan de manera que la poblacion permanececon tamano constante, por medio del operador dereemplazamiento.

Usaremos las siguientes metricas para analizar losresultados obtenidos:1. Ranking : recoge el numero de veces que un algo-ritmo ha quedado en primera, segunda, tercera, cuar-ta y quinta posicion, segun los resultados obtenidos.Esta metrica se calcula de la siguiente forma. Paracada funcion, los algoritmos se ordenan por su errormedio. Entonces, asignamos una posicion a cada al-goritmo (primera, segunda, tercera, cuarta o quin-ta). Si varios algoritmos tienen el mismo valor demedia (o han alcanzado el valor optimo), estos ten-dran el mismo valor de posicion. Por lo tanto, si dosalgoritmos alcanzan el valor optimo, y el tercero no,asignaremos la posicion 1 a los dos primeros algorit-

Page 6: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

TABLA II

Funciones del IEEE CEC 2005

Num. NombreValor Resuelta

Optimo 10 var 30 var

UnimodalFuncion Esfera

1Desplazada

-450 Sı Sı

Problema de Schwefel2

Desplazado 1.2-450 Sı Sı

Funcion ElıpticaDesplazada Condicionada3

a alta Rotacion-450 Sı Sı

Problema Desplazadode Schwefel con Ruido4

en Fitness 1.2-450 Sı Sı

Problema de Schwefelcon optimo global5

en lımites 2.6-310 Sı Sı

MultimodalFuncion de Rosenbrock

6Desplazada

390 Sı Sı

Funcion de GriewankRotada Desplazada7

sin lımites-180 Sı Sı

Funcion de AckleyDesplazada Rotadacon optimo global8

en lımites

-140 Sı Sı

Funcion de Rastrigin9

Desplazada-330 Sı No

Funcion de Rastrigin10

Desplazada y Rotada-330 No No

Funcion de Weierstrass11

Desplazada y Rotada90 No No

Problema de Schwefel 2.1312 -460 No No

Funcion de Rosenbrockcon Griewank13

Extendida Expandida(F8F2)-130 No No

Funcion de Scaffer14

Expandida RotadaDesplazada F6

-300 No No

Hibridacion de MultimodalesFuncion de Composicion

15Hıbrida

120 No No

Funcion de Composicion16

Hıbrida Rotada120 No No

Funcion de ComposicionHıbrida Rotada

17con Ruido en Fitness

120 No No

Funcion de Composicion18

Hıbrida10 No No

Funcion de ComposicionHıbrida con

una curvatura estrecha19

para el optimo global

10 No No

Funcion de ComposicionHıbrida Rotada

con optimo global20

en el lımite

10 No No

Funcion de Composicion21

Hıbrida Rotada360 No No

Funcion de ComposicionHıbrida Rotada con Matriz22de alto numero de condicion

360 No No

Funcion de ComposicionHıbrida Rotada23

no Continua360 No No

Funcion de Composicion24

Hıbrida Rotada260 No No

Funcion de ComposicionHıbrida25

sin lımites260 No No

mos, y la posicion 3 al tercero. Para cada algoritmo,anadimos el numero de veces que aparece en cadaposicion para todas la funciones consideradas.2. Error medio total : este metodo consiste en elcalculo del error medio obtenido por cada algoritmonormalizado por el mejor resultado obtenido paracada funcion. Se calcula de la siguiente forma:

EMTalg =∑

i∈Funciones

fi(Salg)− θi

maxj∈Algoritmos

(fi(Sj))− θi(2)

donde θi es el umbral de error de la i-esima funcion(10e-8 en nuestro caso).Ademas del ranking de algoritmos, consideramos elerror medio total para tener una mejor idea de la pre-cision del algoritmo. Esta metrica es muy util cuandolos algoritmos no alcanzan el optimo global o cuan-do todos los algoritmos obtienen tasas de error muysimilares.

B. Resultados Obtenidos

A partir de los resultados obtenidos, se han cons-truido las tablas III y IV para resumir la posicion decada algoritmo (de acuerdo con el ranking descritoen la Seccion IV-A), ası como el error medio total(eq. 2). En estas tablas, los algoritmos estan ordena-dos segun el ranking excepto nuestro algoritmo, quese muestra en la ultima fila. Los mejores resultadospara la primera posicion del ranking y el error mediototal se muestran en negrita. Finalmente, mostramosel ranking de los algoritmos en una grafica de barraspara su mejor visualizacion (Figuras 4 y 5). Los al-goritmos estan ordenados de acuerdo al ranking.

TABLA III

Ranking y error medio total obtenido para la

dimension 10

RankingAlgoritmo 1o 2o 3o 4o 5o EMT

G-CMA-ES 12 4 2 0 3 7,1L-CMA-ES 7 1 1 2 1 13,21L-SaDE 6 2 5 2 1 8,46DMS-L-PSO 5 4 4 4 2 8,58BLX-GL50 5 3 3 2 3 8,96DE 5 3 2 1 4 9,18SPC-PNX 4 2 2 2 0 10,01EDA 4 1 0 3 4 11,51CoEVO 4 1 0 3 1 13,78K-PCX 3 4 2 2 2 12,58BLX-MA 3 1 3 2 1 10,75EvolPDF-2 11 2 0 0 1 8,45

Como podemos observar para la dimension 10,nuestro algoritmo es el segundo mejor con respectoal numero de primeras posiciones. Nuestro algoritmoes capaz de encontrar soluciones optimas (un valorde funcion por debajo de 10e-8) en 7 funciones y elmejor resultado de todos los algoritmos analizadosen 4 funciones. Esto situa a nuestro algoritmo en se-gunda posicion y solo es superado por G-CMA-ES.Si analizamos los resultados desde un punto de vista

Page 7: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

TABLA IV

Ranking y error medio total para 30 dimensiones.

RankingAlgoritmo 1o 2o 3o 4o 5o EMT

G-CMA-ES 7 7 1 2 1 8,32L-CMA-ES 7 2 3 5 0 12,94EDA 5 1 0 0 0 n/dK-PCX 4 5 2 3 2 10,82BLX-GL50 4 2 3 4 6 8,96DMS-L-PSO 4 1 4 1 2 n/dL-SaDE 3 2 3 2 2 n/dSPC-PNX 2 3 2 1 4 9,74DE 2 2 2 2 1 10,4BLX-MA 2 0 6 0 5 10,46CoEVO 0 1 0 2 0 19,26EvolPDF-2 10 0 2 2 1 7,07

0

5

10

15

20

25

BLX

-MA

K-P

CX

CoE

VO

ED

A

SP

C-P

NX

DE

BLX

-GL5

0

DM

S-L

-PS

O

L-S

aDE

L-C

MA

-ES

Evo

lPD

F

G-C

MA

-ES

54321

Fig. 4. Ranking de algoritmos analizados para dimension 10

0

5

10

15

20

CoE

VO

BLX

-MA

DE

SP

C-P

NX

L-S

aDE

DM

S-L

-PS

O

BLX

-GL5

0

K-P

CX

ED

A

L-C

MA

-ES

G-C

MA

-ES

Evo

lPD

F

54321

Fig. 5. Ranking de algoritmos analizados para dimension 30

global de la primera a la quinta posicion, nuestro al-goritmo junto con G-CMA-ES, L-CMA-ES, DMS-L-PSO y L-SaDE son los que aparecen como mejores.

Para dimension 30, nuestro algoritmo es el quemas aparece en primera posicion (10 veces). Los al-goritmos G-CMA-ES y L-CMA-ES muestran tam-bien buenos resultados, con 7 primeras posicionesen ambos casos. Si analizamos los resultados desdeun punto de vista global de la primera a la quin-ta posicion, podemos decir que los cinco algoritmosque tienen mejores posiciones son: BLX-GL50 con

19 apariciones y G-CMA-ES con 18, L-CMA-ES con17, K-PCX con 16 y el nuestro con 15.

Con respecto al error medio total, nosotros obte-nemos el error mas bajo en 30 variables y el segundoerror mas bajo en 10 variables. Esto muestra el buenalcance global de nuestro algoritmo.

El comportamiento de nuestro algoritmo se puedeapreciar en la Figura 6. Es una representacion graficaque muestra la evolucion del fitness (eje de ordenadasde la izquierda) y del numero de migraciones (ejede ordenadas de la derecha) de la funcion numero18 para 30 dimensiones, que es una hibridacion defunciones multimodales.

Esta representacion es la media de 25 ejecu-ciones. En ella se puede apreciar como los valoresdel muestreo de la I2 son mayores que los valoresdel muestreo de la I1; esto es debido a que en cadapoblacion de la I2, mantenemos 30 soluciones, lo cualproporciona mas diversidad al algoritmo, que es loque conviene siempre al principio. El muestreo de laI1, es menor por su definicion, ya que mantenemos1 solucion por poblacion, lo cual implica que refinemas y proporcione mas intensificacion a lo largo dela ejecucion del algoritmo. Por ello, la I1 exporta conmayor frecuencia a la I2 mas soluciones, intentandoque haya un equilibrio entre la exploracion y la ex-plotacion del espacio de busqueda.

Si atendemos al diseno del algoritmo, es obvio queel radio de accion de la I1 es menor que el radio de ac-cion de la I2 en el espacio de busqueda. Al principiode las evaluaciones, la I1 se dedicara a buscar bue-nas soluciones cercanas a la mejor encontrada hastael momento, mientras que la I2 explora el espaciode busqueda. Cuando se produce una migracion dela I2 a la I1, la I1 comienza a realizar una busque-da en el entorno de I2, lo cual contribuye a mejorarlas soluciones mantenidas por la I2. Como se apreciaen la Figura 6, la I1 (muestreo representado por un+) explota, pero no mejora con frecuencia las solu-ciones, de ahı que exista un trasvase de solucionesde I2 (muestreo representado por un punto hueco)a I1; una vez que la I1 se encuentra en el espaciode busqueda de I2 (en las evaluaciones intermedias),comienza a explotar dicho espacio. La explotacionse acentua mas en las evaluaciones finales, en dondela desviacion tıpica es mas pequena. Esto permitedisminuir la diversidad proporcionada por la I2 e in-crementar mas la explotacion de la I1. De esta for-ma, el algoritmo en su comienzo es capaz de detectarque zonas del espacio de busqueda son mas promete-doras, para despues centrarse en la mejor y tratar deexplotarla para ası obtener una solucion optima.

Resumiendo, podemos decir que nuestro algoritmoobtiene muy buenos resultados entre los algoritmosanalizados, siendo el segundo mejor en 10 variablesy el mejor en 30 variables. Ademas, se puede ob-servar que las funciones en donde nuestro algorit-mo encuentra la solucion optima o de menor errorestan entre las numero 15 y 23 (todas ellas son hi-

Page 8: Optimizaci¶on Continua mediante la Evoluci¶on de Funciones ... · Se basa en la evoluci¶on de funciones de densidad de probabilidad, que se centran en las zonas del espa-cio de

400

450

500

550

600

650

700

0 50000 100000 150000 200000 250000 0

5

10

15

20

25

30

35

40

45

50F

itnes

s

Num

. Mig

raci

ones

Num. Evaluaciones

Funcion 18 30 variables

Muestreo: Isla 1Mejor Elite: Isla 1 Migracion Sobre I1Muestreo: Isla 2Mejor Elite: Isla 2 Migracion Sobre I2

Fig. 6. Convergencia de la Funcion 18.Muestreo y solucion elitista en funcion del numero de

evaluaciones.

bridacion de funciones multimodales). Nuestro algo-ritmo es capaz de obtener soluciones optimas paraalgunos problemas que no son capaces de resolverotros algoritmos (funciones 15, 21 y 23 en 30 varia-bles y funciones 16, 21, 22 y 23 en 10 variables). Elalgoritmo se mantiene en buenas posiciones en lasfunciones multimodales de la 7 a la 14. Estos resul-tados nos sugieren que nuestro algoritmo, gracias almecanismo incluido para prevenir optimos locales,funciona mejor en problemas multimodales.

Destacar que un pequeno inconveniente que pre-senta el algoritmo es la inicializacion de los parame-tros al comienzo del algoritmo. Pero tambien hayque tener en cuenta, que un ajuste adecuado delos mismos, nos permitira encontrar buenas solu-ciones. Otro inconveniente, es que para problemasunimodales no funciona tan bien como en los pro-blemas multimodales.

V. Conclusiones y Trabajos Futuros

Hemos propuesto un algoritmo simple para opti-mizacion continua. Este algoritmo implica el uso devarias PDF para modelar la region que interesa acada variable y las evoluciona hacia el centro de laregion de busqueda. Se incluyen algunos mecanismospara prevenir la convergencia prematura y los opti-mos locales. El algoritmo no pertenece a ningun pa-radigma clasico de metaheurıstica, pero toma ideasde algunos de ellos como AG y EDA. Los resulta-dos empıricos obtenidos nos permiten pensar quenuestro algoritmo tiene una gran capacidad, obte-niendo los mejores resultados en problemas multi-modales. Como trabajos futuros, nos proponemos laauto-adaptacion de mas parametros (por ejemplo,σ0 y σf ) y ademas realizar una caracterizacion masprofunda del problema en el que el algoritmo tieneuna ventaja competitiva.

Agradecimientos

Los autores quieren agradecer a Carlos Garcıa yDaniel Molina (ambos de la Universidad de Grana-da, Espana) su ayuda con las herramientas usadas

en la comparacion empırica.

Referencias

[1] E. Alba, J.M. Troya. A survey of parallel distributed ge-netic algorithms. Complexity, 4:303-346, 1999.

[2] A. Auger, S. Kern, N. Hansen. A Restart CMA EvolutionStrategy with Increasing Population Size. In [6], pp. 1769-1776.

[3] A. Auger, S. Kern, N. Hansen. Performance Evaluationof an Advanced Local Search Evolutionary Algorithm. In[6], pp. 1777-1784.

[4] T. Back, M. Schutz, S. Khuri (1996). Evolution Strategies:an Alternative Evolution Computation Method. In J.M.Alliot, E. Lutton, E. Ronald, M. Schoenhauer, D. Snyers(Eds.), Artificial Evolution, pp. 3-20, Springer, Berlin.

[5] P.J. Ballester, J. Stephenson, J.N. Carter, K. Gallagher.Real-Parameter Optimization Performance Study on theCEC-2005 benchmark with SPC-PNX. In [6], pp. 498-505.

[6] K. Deb, D. Corne, Z. Michalewicz. Special Session onReal-parameter Optimization. IEEE Congress on Evolu-tionary Computation 2005, Edimburgh, UK, September2005.

[7] C. Garcıa-Martınez, M. Lozano. Hybrid Real-Coded Ge-netic Algorithms with Female and Male Differentiation.In [6], pp. 896-903.

[8] F. Herrera, M. Lozano, J.L. Verdegay (1998). Tack-ling real-coded genetic algorithms: operators and tools forthe behavioural analysis. Artificial Intelligence Reviews12(4):265-319.

[9] P. Larranaga, R. Etxeberria, J.A. Lozano, J. Pena (2000).Optimization in continuous domains by learning and sim-ulation of Gaussian networks.In Proceedings of the Work-shop in Optimization by Building and using ProbabilisticModels, Genetic and Evolutionary Computation Confer-ence, pp. 201-204, Las Vegas, Nevada, USA.

[10] P. Larranaga, J.A. Lozano (Eds.) (2001). Estimationof distribution algorithms. A new tool for evolutionarycomputation.Kluwer Academic Publishers.

[11] J.J. Liang, P.N. Suganthan. Dynamic Multi-Swarm Par-ticle Swarm Optimizer with Local Search. In [6], pp. 522-528.

[12] D. Molina, F. Herrera, M. Lozano. Adaptive Local SearchParameters for Real-Coded Memetic Algorithms. In [6],pp. 888-895.

[13] P.A. Moscato (1999). Memetic algorithms: a short in-troduction.In D. Corne, M. Dorigo, F. Glower, New Ideasin Optimization, pp. 219-234, McGraw-Hill, London.

[14] Numerical Recipes in C. The Art of Scientific Compu-ting. Second Edition.William H. Press, Saul A. Teukolsky,William T. Vetterling, Brian P. Flannery. Cambridge Uni-versity Press.

[15] P. Posik. Real Parameter Optimisation Using MutationStep Co-evolution. In [6], pp 872-879.

[16] A.K. Qin, P.N. Suganthan. Self-adaptive DifferentialEvolution Algorithm for Numerical Optimization. In [6],pp. 1785-1791.

[17] J. Ronkkonen, S. Kukkonen, K.V. Price. Real-ParameterOptimization with Differential Evolution. In [6], pp. 506-513.

[18] S. Rudolf, M. Koppen (1996). Stochastic hill clim-bing with learning by vectors of normal distributions.In 1st Online Workshop on Soft Computing, URL:http://www.bioele.nuee.nagoya-u.ac.jp/wscl/.

[19] M. Sebag, A. Ducoulombier (1998). Extendingpopulation-based incremental learning to continuoussearch spaces. Lecture Notes in Computer Science 1498:418-427.

[20] A. Sinha, S. Tiwari, K. Deb. A Population-Based,Steady-State Procedure for Real-Parameter Optimization.In [6], pp. 514-521.

[21] P.N. Suganthan, N. Hansen, J.J. Liang, K. Deb,T.K. Chen, A. Auger, S. Tiwari (2005). Problem Defi-nitions and Evaluation Criteria for the CEC 2005 Spe-cial Session on Real-Parameter Optimization. Technicalreport, Nanyang Tecnological University, Singapore, May2005, http://www.ntu.rdu.sg/home/EPNSugan.

[22] B. Yuan, M. Gallagher. Experimental Results for theSpecial Session on Real-Parameter Optimization at CEC2005: a Simple, Continuous EDA. In [6], pp. 1792-1799.