Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Director/es
Facultad de Ciencias.
Departamento de Mtodos Estadsticos
2011
Dirigida por
Dr. D. Pedro M. Mateo Collazos
Departamento de Metodos Estadsticos
Universidad de Zaragoza
Indice general
Presentaci
on
Autorizaci
on para la presentaci
on de Tesis Doctoral en modalidad de compendio de publicaciones
III
Certificaci
on
Financiaci
on
VII
1. Introducci
on
1.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Conceptos basicos y metodologa general . . . . . . . . . . . . .
1.3.1. Problema de optimizacion multiobjetivo . . . . . . . . .
1.3.2. Algoritmos evolutivos . . . . . . . . . . . . . . . . . . .
1.3.3. Operadores de recombinacion . . . . . . . . . . . . . . .
1.3.4. Operadores de mutacion . . . . . . . . . . . . . . . . . .
1.3.5. Operadores de seleccion . . . . . . . . . . . . . . . . . .
1.3.6. Medidas para la evaluacion de la calidad de las poblaciones
1.3.7. Colecciones de problemas test . . . . . . . . . . . . . . .
1
1
4
5
5
6
8
11
14
15
16
21
21
22
22
23
23
26
27
in
.
.
.
.
.
.
.
Indice general
3.2. Aportaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1. Deniciones previas y notacion . . . . . . . . . . . . . .
3.3.2. Grafos de dominacion . . . . . . . . . . . . . . . . . . .
3.3.3. Construccion del grafo de dominacion irreducible . . . .
3.3.4. Actualizacion del grafo de dominacion irreducible . . . .
3.3.5. Calculo de la complejidad de los algoritmos propuestos .
3.4. Resultados obtenidos. Experimento computacional . . . . . . .
3.4.1. Primer experimento: Requerimientos de almacenamiento
3.4.2. Segundo experimento: Tiempo computacional para la
construccion del grafo de dominacion irreducible . . . .
3.4.3. Tercer experimento: Insercion y eliminacion de nodos . .
3.4.4. Cuarto experimento: Modicacion del proceso de seleccion del algoritmo N SGA II . . . . . . . . . . . . . .
3.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4. A crossover operator that uses Pareto Optimality in its definition
4.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2. Aportaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1. Esquema general . . . . . . . . . . . . . . . . . . . . . .
4.3.2. Factores de correccion . . . . . . . . . . . . . . . . . . .
4.3.3. Planteamiento de los experimentos . . . . . . . . . . . .
4.4. Resultados obtenidos . . . . . . . . . . . . . . . . . . . . . . . .
4.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5. A Mutation Operator based on a Pareto Ranking for MultiObjective Evolutionary Algorithms
5.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2. Aportaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1. Mecanismo basado en el ranking . . . . . . . . . . . . .
5.3.2. Mecanismo basado en la iteracion . . . . . . . . . . . . .
5.3.3. Seleccion de parametros en los operadores RM O, P M O,
N U M O y GM O . . . . . . . . . . . . . . . . . . . . . .
5.3.4. Planteamiento de los experimentos . . . . . . . . . . . .
5.4. Resultados obtenidos . . . . . . . . . . . . . . . . . . . . . . . .
5.4.1. Primer experimento: Comparacion de P RBM O frente
a RM O, N U M O, P M O y GM O . . . . . . . . . . . . .
5.4.2. Segundo experimento: implementacion de N SGA II .
5.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ap
endices
30
31
31
32
34
36
38
40
40
40
41
41
42
43
43
44
44
44
46
47
48
49
51
51
52
52
52
54
55
57
58
58
59
59
63
A. Artculos publicados
63
A.1. Optimization with simulation and multiobjective analysis in industrial decision-making: A case study . . . . . . . . . . . . . . 63
A.2. Representation and management of MOEA populations based
on graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.3. A crossover operator that uses Pareto Optimality in its denition 91
A.4. A Mutation Operator based on a Pareto Ranking for MultiObjective Evolutionary Algorithms . . . . . . . . . . . . . . . . 119
B.
Indices de impacto
157
Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Indice general
Indice de figuras
1.1. Esquema de un algoritmo evolutivo basico. . . . . . . . . . . . . . .
1.2. Ilustracion del ranking propuesto por Goldberg (1989) para un problema de dos funciones objetivo de mnimo. . . . . . . . . . . . . . .
1.3. Recombinacion nave. . . . . . . . . . . . . . . . . . . . . . . . .
1.4. Recombinacion lineal. . . . . . . . . . . . . . . . . . . . . . . . .
1.5. Recombinacion blend. . . . . . . . . . . . . . . . . . . . . . . . .
1.6. Recombinacion binaria simulada. . . . . . . . . . . . . . . . . . . .
1.7. Mutacion aleatoria. . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8. Mutacion polinomial. . . . . . . . . . . . . . . . . . . . . . . . . .
1.9. Mutacion no uniforme. . . . . . . . . . . . . . . . . . . . . . . . .
7
8
9
9
10
11
12
13
25
33
34
35
37
39
46
53
56
B.1.
B.2.
B.3.
B.4.
Research. . . . . . . . . . . . . . 158
. . . . . . . . . . . . . . . . . . . 159
. . . . . . . . . . . . . . . . . . . 160
. . . . . . . . . . . . . . . . . . . 161
Indice de figuras
Indice de tablas
1.1. Coleccion de problemas test. . . . . . . . . . . . . . . . . . . . .
1.2. Problemas test ZDT y DT LZ originales relacionados con los
utilizados en los experimentos. . . . . . . . . . . . . . . . . . .
1.3. Propiedades de los problemas test de las versiones rotadas y/o
desplazadas de los problemas de la Tabla 1.2. S: Separable; NS:
No separable; U: Unimodal; M: Multimodal. . . . . . . . . . . .
17
18
20
56
10
Indice de tablas
Presentaci
on
De acuerdo con la normativa actual de la Universidad de Zaragoza, que
regula la elaboracion y defensa de tesis doctorales, Ttulo IV, Captulo II
del Acuerdo de 17 de diciembre de 2008 del Consejo de Gobierno de esta
Universidad, la memoria titulada Herramientas para algoritmos evolutivos
multiobjetivo que presenta Da . Isolina Alberto Moralejo para optar al grado
de Doctor se presenta como compendio de las siguientes publicaciones:
Alberto I., Azcarate C., Mallor F. and Mateo P. M. (2002), Optimization with simulation and multiobjective analysis in industrial decisionmaking: A case study. European Journal of Operational Research, 140(2):
373-383.
Alberto I. and Mateo P. M. (2004), Representation and management of
MOEA populations based on graphs. European Journal of Operational
Research, 159(1): 5265.
Alberto I. and Mateo P. M. (2009), A crossover operator that uses Pareto
Optimality in its denition. TOP, DOI 10.1007/s11750-009-0082-7.
Mateo P. M. and Alberto I. (2011), A Mutation Operator based on a
Pareto Ranking for Multi-Objective Evolutionary Algorithms. Journal
of Heuristics, DOI 10.1007/s10732-011-9156-4.
Esta memoria ha sido realizada dentro del programa de doctorado Estadstica e Investigaci
on Operativa del Departamento de Metodos Estadsticos
de la Universidad de Zaragoza, bajo la direccion del Doctor D. Pedro M. Mateo
Collazos.
Zaragoza, mayo de 2011
La doctoranda
El director
Autorizaci
on para la
presentaci
on de Tesis
Doctoral en modalidad de
compendio de publicaciones
D. Pedro Mateo Collazos, Profesor Titular del Departamento de Metodos
Estadsticos de la Universidad de Zaragoza,
AUTORIZA
iii
Certificaci
on
D. Pedro Mateo Collazos, Profesor Titular del Departamento de Metodos
Estadsticos de la Universidad de Zaragoza,
CERTIFICA
Financiaci
on
Los trabajos que se incluyen en esta memoria han sido parcialmente nanciados por los siguientes proyectos de investigacion:
Por el Gobierno de Navarra y Reciclauto S.L. a traves del Proyecto LIFE
Project of European Community LIFE99 ENV/E/000375.
Por la Universidad de Zaragoza a traves del proyecto Algoritmos Evolutivos Multiobjetivo del 1 de enero de 2004 al 31 de diciembre de 2004.
Por el Ministerio de Educacion y Ciencia a traves del proyecto Programacion binivel: Propiedades y algoritmos. Aplicacion a la evaluaci
on
del rendimiento de sistemas hidrologicos, MTM2004-00177, del 13 de
diciembre de 2004 al 13 de diciembre de 2007.
Por el Ministerio de Educacion y Ciencia a traves del Proyecto MTM200766893.
vii
Captulo 1
Introducci
on
1.1.
Introducci
on
Captulo 1 Introduccion
La definici
on de este concepto est
a en la Secci
on 1.3.2 de la p
agina 7.
1.1. Introduccion
Destacar ademas, que los cuatro artculos que componen esta Tesis estan
publicados en revistas recogidas en posiciones relevantes del Journal Citation
Report, como se muestra en el Apendice B. Ademas, hasta la fecha, el primero
de ellos ha sido citado en 13 trabajos, y el segundo, en 3 (citas localizadas
utilizando la herramienta Scopus (www.scopus.com) y Google academico).
Los dos u
ltimos, dada su reciente aparicion, todava no han recibido citas.
La continuacion de estos u
ltimos artculos es la incorporacion de estas herramientas, tanto el mecanismo de almacenamiento como los operadores de
variacion, en dos algoritmos evolutivos clasicos como N SGA II y SP EA2,
para comprobar como su uso mejora el rendimiento de estos. Un trabajo preliminar sobre este tema fue presentado en The Pyrenees International Workshop and Summer School on Statistics, Probability and Operations Research,
celebrado en Jaca en septiembre de 2009, y aparecera en los Proceedings of
the Pyrenees International Workshop and Summer School on Statistics, Probability and Operations Research, (Alberto y Mateo, 2009b). Actualmente se
esta trabajando en este problema.
Existen muchos elementos de la Computacion Evolutiva Multiobjetivo en
los que es deseable la aportacion de nuevos trabajos y esfuerzos. En esta memoria se presentan resultados para tres de estos: un primer trabajo de modelado
y resolucion de un problema real, un segundo trabajo dedicado al manejo eciente de poblaciones y dos trabajos dedicados al desarrollo de operadores de
variacion especcos para problemas de optimizacion multiobjetivo.
Dado que esta Tesis se presenta como compendio de publicaciones, puede
no haber uniformidad en cuanto a la notacion utilizada en los distintos artculos que la forman. Sin embargo, cada uno de estos artculos es autocontenido
en el sentido de que en el se presentan las notaciones y los conceptos necesarios
para su desarrollo.
Esta memoria esta estructurada de la siguiente manera. En la Seccion
1.2 de este captulo, se presentan los objetivos generales de la investigacion.
A continuacion, la Seccion 1.3 muestra los conceptos basicos relativos a la
investigacion: problemas multiobjetivo, algoritmos evolutivos y operadores de
recombinacion y mutacion; y las cuestiones metodologicas generales relativas
a los experimentos realizados: las medidas de evaluacion de la calidad de las
soluciones y las colecciones de problemas test utilizadas en los experimentos.
En los cuatro captulos siguientes, del 2 al 5, se resumen cada una de las
publicaciones. Finalmente, en el Apendice A se incluyen copias de los cuatro
trabajos; y en el Apendice B, los factores de impacto de las revistas.
Captulo 1 Introduccion
1.2.
Objetivos
Los problemas con mas de un objetivo surgen de forma natural en la mayora de las disciplinas y, durante mucho tiempo, su resolucion ha sido un reto
para los investigadores. A pesar de que se han desarrollado muchas tecnicas
de Investigacion Operativa para abordar estos problemas, la complejidad de
su resolucion demanda tecnicas alternativas.
El uso de tecnicas y metodos heursticos ha permitido a los investigadores
tratar problemas reales que, debido a su tama
no o caractersticas (incumplimiento de alguna condicion de regularidad, por ejemplo), eran inabordables
utilizando las tecnicas clasicas. En particular, el uso de Algoritmos Evolutivos
(AEs) para resolver problemas de optimizacion multiobjetivo ha sido motivado, principalmente, por la naturaleza de aquellos, basada en poblaciones, que
permite la generacion de varios elementos del conjunto Pareto optimo en una
u
nica ejecucion del algoritmo. Ademas, la complejidad de la optimizacion de los
problemas multiobjetivo (por ejemplo, espacios muy amplios, incertidumbre,
ruido, curvas Pareto disjuntas, etc.) puede hacer que las tecnicas tradicionales
de Investigacion Operativa para resolver estos problemas sean poco u
tiles.
Como se ha mencionado, todos los artculos que se presentan en esta memoria estan dentro del ambito de los Algoritmos Evolutivos Multiobjetivo.
El objetivo principal de la Tesis es el desarrollo de herramientas que aumentaran la eciencia de los Algoritmos Evolutivos Multiobjetivo. Mas concretamente se pretende:
Denir nuevas formas de representacion y manipulacion de los individuos
de las poblaciones de los Algoritmos Evolutivos que permitan disponer
de la informacion sobre las relaciones de dominacion entre ellos mas a
mano, que ahorren tiempo y espacio de computacion y que nos permitan
denir nuevos operadores de recombinacion y mutacion.
Denir nuevos operadores de recombinacion y mutacion que utilicen la
informacion sobre la calidad de las soluciones involucradas y que den
lugar a individuos mejores.
Dado que la Tesis se presenta como compendio de publicaciones, para
detallar las aportaciones de la doctoranda se va a seguir el orden cronologico
de los artculos presentados, dedicando un captulo a cada uno de ellos. As,
al nalizar este captulo se presentan cuatro mas, uno para cada uno de los
artculos que componen la memoria. En cada captulo se detallan los objetivos,
las aportaciones, el resumen, los resultados obtenidos y las conclusiones.
1.3.
Conceptos b
asicos y metodologa general
1.3.1.
Problema de optimizaci
on multiobjetivo
Captulo 1 Introduccion
1.3.2.
Algoritmos evolutivos
Operador de mutaci
on. El papel de este operador nuevamente depende del tipo de algoritmo en el que se incluya. Por ejemplo, en Algoritmos Geneticos es el encargado de contribuir a la diversidad de la
poblacion, y en Programacion Evolutiva es el u
nico operador encargado
de toda la b
usqueda. Otra caracterstica importante es que el operador
de mutacion es el responsable de garantizar que cualquier solucion del
espacio es alcanzable (Eiben y Smith (2007), p. 21). En general, es un
operador unario que altera localmente los individuos para crear otros
que, con suerte, seran mejores.
Operador de selecci
on. Basado en una medida de adecuacion de las
soluciones, se encarga de decidir que individuos formaran parte de la
siguiente poblacion. En el caso de problemas uniobjetivo, la funcion que
mide la adecuacion de las soluciones puede ser directamente el valor de
la funcion objetivo. Sin embargo, en el caso multiobjetivo, no es posible
denir un orden total sobre el conjunto de soluciones. Debido a esto,
suelen utilizarse distintos rankings que denen un orden parcial en los
individuos de la poblacion. En los trabajos que se presentan posteriormente, se utilizo uno de ellos aunque se podra haber utilizado otro
cualquiera de los existentes en la literatura. El ranking utilizado fue
el propuesto por Goldberg (1989), que asigna un valor igual a 1 a las
soluciones ecientes. A continuacion, estas soluciones se eliminan de la
poblacion y a las ecientes de este nuevo conjunto se les asigna ranking
2. El proceso contin
ua de esta forma hasta que no quedan soluciones.
En la Figura 1.2 se muestra un ejemplo con las soluciones agrupadas
siguiendo este procedimiento. Las soluciones con ranking 1 formaran la
primera capa Pareto; las de ranking 2, la segunda; etc.
Figura 1.2: Ilustracion del ranking propuesto por Goldberg (1989) para un problema
de dos funciones objetivo de mnimo.
Captulo 1 Introduccion
1.3.3.
Operadores de recombinaci
on
En el artculo: A crossover operator that uses Pareto optimality in its definition se denio un nuevo operador de recombinacion que utilizaba la informacion de las soluciones ecientes de una forma mas provechosa que los
operadores habituales. Con el objeto de comprobar su buen comportamiento,
este operador se comparo con otros operadores habituales en la literatura y
utilizados en gran cantidad de algoritmos. Dichos operadores se muestran a
continuacion.
(1,t)
(1,t)
(2,t)
(2,t)
Recombinaci
on lineal (C2 ), Wright (1991): Este operador crea tres descendientes a partir de dos padres. El valor de la i-esima componente de
los descendientes se obtiene de acuerdo con las expresiones:
(1,t)
(2,t)
0.5 (xi + xi ),
(1,t)
(2,t)
1.5 xi 0.5 xi , y
(1,t)
(2,t)
0.5 xi + 1.5 xi .
Posteriormente se seleccionan los dos mejores descendientes y el tercero
se descarta. En el artculo se ha utilizado una ligera modicacion de este
Recombinaci
on blend (C3 ), Eshelman y Schaer (1993): Este operador,
tambien denotado con BLX-, genera los individuos de acuerdo con la
(1,t)
(2,t)
siguiente formula (suponiendo que xi
< xi ):
(1,t)
(1 i ) xi
(2,t)
+ i xi
10
Captulo 1 Introduccion
Recombinaci
on binaria simulada (C4 ), Deb y Agrawal (1995): Este operador genera las componentes de los descendientes de la siguiente manera:
[
(1,t+1)
(1,t)
(2,t) ]
xi
= 0.5 (1 + i ) xi + (1 i ) xi
y
[
(2,t+1)
(1,t)
(2,t) ]
xi
= 0.5 (1 i ) xi + (1 + i ) xi
,
donde
1
(2 ui ) +1 ,
si ui 0.5,
(
) 1
i =
+1
1
, en otro caso,
2(1ui )
ui U(0, 1) y es un n
umero real no negativo. Valores grandes de
dan probabilidades altas de crear soluciones proximas a los padres,
mientras que valores peque
nos permiten seleccionar como descendientes
a soluciones distantes. Notar que los dos descendientes son simetricos
respecto a los padres. En la Figura 1.6, la lnea representa la funcion
de densidad de la distribucion utilizada para generar los descendientes.
En caso de que los padres esten alejados entre si, habra una mayor
probabilidad de crear soluciones alejadas de los padres. Sin embargo,
si los padres estan proximos, sera menos probable crear descendientes
alejados.
1.3.4.
11
Operadores de mutaci
on
En el artculo: A mutation operator based on a Pareto ranking for multiobjective evolutionary algorithms se denio un nuevo operador de mutaci
on
que utilizaba la informacion sobre la calidad de la solucion que se va a mutar,
medida en terminos de la capa Pareto en la que la solucion esta localizada,
con el objeto de modular la amplitud maxima de la mutacion.
Para contrastar si el funcionamiento del operador propuesto era mejor que
el de otros operadores existentes, de entre los operadores de mutacion clasicos
se consideraron cuatro de ellos frente a los que comparar el nuevo. Todos
ellos son operadores unarios, es decir, operadores que act
uan solo sobre un
individuo. Estos operadores son los siguientes:
Mutaci
on aleatoria (RM O), (Michalewicz, 1996, p. 102), (Deb, 2001, p.
118): Este operador fue uno de los primeros operadores de mutacion.
En la version original de Michalewicz (1996), dado un individuo x(t) =
(t)
(t)
(x1 , . . . , xp ) perteneciente a la t-esima poblacion Pt , el operador crea
(L) (U )
un valor distribuido uniformemente en el intervalo (xi , xi ), donde
(L)
(U )
xi y xi son las cotas inferior y superior, respectivamente, de la componente i-esima (i = 1, . . . , p). Utilizaremos una version modicada, introducida en Deb (2001), en la cual el valor nuevo de una componente
mutada de x(t) se crea en el vecindario del padre de acuerdo con:
(t+1)
xi
(t)
(U )
= xi + ui (xi
(L)
xi ),
Mutaci
on polinomial (P M O), Deb y Goyal (1996): Dada una solucion
que act
ua como padre, este operador genera soluciones cercanas con una
probabilidad mas alta que soluciones lejanas a el, independientemente
12
Captulo 1 Introduccion
donde
i =
(2 ui )1/(+1) 1,
si ui < 0.5,
1 [2 (1 ui
si ui 0.5,
)]1/(+1) ,
ui U[0, 1] y es un parametro que controla la variabilidad de la perturbacion. Este operador se ha utilizado, entre otros, en los algoritmos
SP EA2 de Zitzler et al. (2001) y N SGA II de Deb et al. (2002a).
En la Figura 1.8 esta representado el comportamiento de este operador
para diferentes valores del parametro .
Mutaci
on no uniforme (N U M O), (Michalewicz, 1996, p. 103): Este operador hace, en las generaciones iniciales, una b
usqueda uniforme en el
espacio (exploracion), pero esta b
usqueda es mas local en las generaciones nales (explotacion). La probabilidad de crear una solucion cercana
al padre es mayor que la de crearla alejado de el, pero seg
un avanzan
las iteraciones, esta probabilidad se hace mas y mas grande. Para el
caso uniobjetivo, este operador ha proporcionado buenos resultados y ha
sido incluso utilizado como elemento principal en el dise
no de algoritmos
nuevos, como por ejemplo en Zhao et al. (2007) y Deep y Thakur (2007).
En la version de Deb (2001) (p. 119), este operador tiene la siguiente
forma:
(
) (
)
(t+1)
(t)
(U )
(L)
(1t/tmax )b
xi
= xi + xi xi
1 ui
,
donde ui U [0, 1], tmax es el n
umero maximo de iteraciones permitido,
vale +1 o -1, con probabilidad 0.5, y b es un parametro que determina el
grado de dependencia de la iteracion. La Figura 1.9 representa la funcion
de densidad empleada para la creacion de la nueva componente.
13
Mutaci
on gaussiana (GM O), Schwefel (1981) y Beyer y Schwefel (2002):
Se va a utilizar una de las variantes del operador de mutacion gaussiano
que es estandar en las Estrategias Evolutivas. Su principal diferencia
respecto a los operadores anteriores recae en el hecho de que los individuos se representan por medio de dos vectores: el primero de ellos
representa un punto en el espacio de b
usqueda, como es habitual, y el
segundo es un vector de desviaciones estandar, normalmente llamado
vector de parametros de estrategia, que contiene los parametros que establecen la amplitud de la mutacion. Ademas, cuando se evolucionan
los individuos, se evoluciona toda la representacion, la parte correspondiente a la solucion y la correspondiente a las desviaciones estandar. Si
(t)
(t)
(t)
(t)
(x1 , . . . , xp , 1 , . . . , p ) representa un individuo y sus parametros, el
operador de mutacion trabaja de la siguiente manera:
(t+1)
= i e
(t)
z+ z
(t+1)
= xi + i
(t)
(t+1)
xi
, i = 1, . . . , p,
zi , i = 1, . . . , p,
donde z, zi y zi denotan n
umeros aleatorios siguiendo una distribucion
gaussiana de media 0 y desviacion tpica 1. Este tipo de operadores en
los que algunos de los parametros evolucionan junto con las soluciones se
llaman operadores auto-adaptativos. En este caso, las amplitudes de la
mutacion evolucionan junto con las soluciones. En las formulas anteriores, los parametros y pueden interpretarse como un tipo de tasa de
aprendizaje. Seg
un Schwefel (1995), un buen heurstico para la eleccion
de estas constantes es:
=
2 p
1
.
2p
(t)
14
Captulo 1 Introduccion
1.3.5.
Operadores de selecci
on
En los dos trabajos comentados en los puntos anteriores se plantean experimentos similares en los cuales se utiliza un Algoritmo Evolutivo basico
como el de la Figura 1.1 en el que, tras la aplicacion del operador de mutacion
o de recombinacion, se crea una nueva poblacion temporal consistente en la
poblacion actual junto con los nuevos individuos creados. Sobre esta poblacion
temporal hay que aplicar el operador de seleccion para obtener la poblacion
siguiente. En los trabajos, se han utilizado tres operadores de seleccion diferentes: dos de ellos del tipo ruleta (seleccion de supervivientes y de muertes) y
otro de tipo elitista. Los tres operadores que se van a presentar necesitan establecer un ranking de los individuos de la poblacion. Para ello se ha utilizado
el propuesto por Goldberg (1989) ya mencionado antes pero se podra haber
utilizado cualquier otro, por ejemplo el introducido por Fonseca y Fleming
(1993) o incluso el denido por Zitzler et al. (2001) para el algoritmo SP EA2.
ri
x(j,t) Pt rj
15
A continuacion, se ejecuta una seleccion de tipo ruleta con estas probabilidades para eliminar los individuos sobrantes hasta que se alcanza
el tama
no jado de la poblacion. Con este mecanismo la poblacion no
recibe dos copias del mismo individuo.
Selecci
on elitista (S3 ): Teniendo en cuenta el tama
no de la poblacion,
los individuos de mayor ranking se eliminan de la poblacion sin seleccion
aleatoria, hasta que se alcanza el tama
no jado de poblacion. Si en un
momento dado hay varios individuos con el mismo ranking, de entre
los cuales hay que eliminar unos cuantos, entonces se sigue un proceso
que consiste en utilizar una medida de la densidad de soluciones en el
entorno de la solucion. Aquella que posea un entorno menos poblado
sera seleccionada. Este proceso es similar al utilizado en el algoritmo
clasico N SGA II. Para una descripcion mas detallada del proceso, se
puede consultar, por ejemplo, Deb et al. (2002a)).
1.3.6.
16
Captulo 1 Introduccion
2 y 3 objetivos, respectivamente. En contraste con el hipervolumen original, para esta medida, cuanto menor es el valor, mejor es la poblacion.
Distancia generacional (GD): Esta medida, que tambien requiere el
conocimiento de un conjunto de referencia contenido en P F true , informa
de cuan lejos, en media, esta P F respecto de P F true . Matematicamente
se dene como
( 2 )1/2
di
GD =
,
|P F |
donde |P F | es el n
umero de soluciones en P F y di es la distancia
eucldea entre cada miembro xi de P F y el miembro de P F true mas
cercano a xi . Para esta medida, cuanto menor es el valor, mejor es la
poblacion.
Cubrimiento de conjuntos (C): Sean P1 y P2 los conjuntos de soluciones
no dominadas resultantes de la ejecucion de dos algoritmos diferentes.
La medida C(P1 , P2 ) calcula la proporcion de soluciones en el conjunto
P2 que son debilmente dominadas por soluciones en P1 . Es decir:
C(P1 , P2 ) =
|{b P2 |a P1 , a b}|
.
|P2 |
1.3.7.
El uso de un conjunto de problemas test ayuda a garantizar que los metodos propuestos se enfrentaran con espacios de soluciones ecientes de diferentes
caractersticas, y por tanto, puede obtenerse una idea mas precisa del comportamiento de estos. A continuacion se describen brevemente los dos conjuntos
de problemas test que se utilizaron en los trabajos.
Primer conjunto de problemas test
La primera coleccion de problemas test utilizada para los experimentos
fueron los propuestos por Van Veldhuizen (1999) que tambien aparecen en
Deb (2001). Este conjunto de problemas contiene ejemplos con 1, 2 o 3 variables de decision y 2 o 3 funciones objetivo, conjuntos Pareto optimos conexos,
disconexos, simetricos, asimetricos, etc. La denicion de los problemas se puede
ver en la Tabla 1.1.
17
MOP4
MOP5
MOP6
Funciones objetivo
f1 = x2
f2 = (x 2)2(
3
f1 = 1 exp i=1 (xi
(
3
f2 = 1 exp i=1 (xi +
4 xi 4
1 )2
3 )
1 )2
3
(A2 B2 )2
2
i = 1, 2, 3
f1 = 1 + (A1 B1 )2 +
f2 = (x1 + 3)2 + (x2 + 1)
A1 = 0.5 sen 1 2 cos 1 + sen 2 1.5 cos 2
A2 = 1.5 sen 1 cos 1 + 2 sen 2 0.5 cos 2
B1 = 0.5 sen x1 2 cos x1 + sen x2 1.5 cos x2
B2 = 1.5 sen x1 cos
2 sen x2 0.5
) cos x2
( x1 +
2
f1 = i=1 10 exp 0.2 x2i + x2i+1
)
3 (
f2 = i=1 |xi |a + 5 sin(xi )b
f1
f2
f3
f1
f2 = (1 + 10x2 ) 1
MOP7
Restricciones
(D Rp )
4 x 4
f1 =
f2 =
f3 =
x1
1+10x2
x1
1+10x2
(x1 2)2
+1)2
+ (x213
+3
2
2
(x1 +x2 3)
(x1 +x2 +2)2
+
17
36
8
(x1 +2x2 1)2
(x1 +2x2 )2
+
13
175
17
]
sen(2qx1 )
xi
i = 1, 2
5 xi 5
i = 1, 2, 3
a = 0.8, b = 3
30 xi 30
i = 1, 2
0 xi 1
q = 4, = 2
400 xi 400
i = 1, 2
18
Captulo 1 Introduccion
Funciones objetivo
f1 (x1 ) = x1
f2 (x) = g h(f
1 , g)
30
g(x2 ) = 1 + 9 k=2
29
h(f1 , g) = 1 fg1
ZDT 2
f1 (x1 ) = x1
f2 (x) = g h(f
1 , g)
30
ZDT 4
DT LZ2
DT LZ3
xk
Pareto front
g(x2 ) = 1
x2 = (x2 , . . . , x30 )
xk [0, 1]
k = 1, . . . , 30
k
g(x2 ) = 1 + 9 k=2
29
h(f1 , g) = 1 (f1 /g)2
f1 (x1 ) = x1
f2 (x) = g h(f1 , g)
g(x2 )= 1 +[ 10(p 1)+
]
p
2
10 cos(4xk )
k=2 xk
h(f1 , g) = 1
ZDT 6
Variables
xk [0, 1]
k = 1, . . . , 30
g(x2 ) = 1
x2 = (x2 , . . . , x30 )
x1 [0, 1]
xk [5, 5]
k = 2, . . . , p
x = (x2 , . . . , xp )
f1
g
g(x2 ) = 1
Mejor PF
optimo local:
g(x2 ) = 1.25
xk [0, 1]
k = 1, . . . , 30
g(x2 ) = 1
x2 = (x2 , . . . , x30 )
xk [0, 1]
k = 1, . . . , p
x3 = (x3 , . . . , xp )
xk [0, 1]
k = 1, . . . , 30
x3 = (x3 , . . . , x30 )
PF
optimo
esferico
3
2
j=1 fj = 1
19
219 Pareto fronts optimos locales y por tanto, comprueba la habilidad del
algoritmo evolutivo para enfrentarse a la multifrontalidad; ZDT6 incluye dos
dicultades causadas por la no uniformidad del espacio de b
usqueda (el P true
true
no esta uniformemente distribuido a lo largo del P F
y la densidad de
true
soluciones es menor cerca del P F
y mayor alejada de el); en DTLZ2 las
soluciones Pareto optimas se corresponden
3 con 2xi = 0.5, i = 3, . . . , p, y todas
las funciones objetivo deben satisfacer j=1 fj = 1; nalmente, DTLZ3 es
igual a DTLZ2 excepto por la funcion g, que introduce 83 Pareto fronts optimos
locales y un Pareto front optimo global (todos los Pareto fronts optimos locales
son paralelos al global y el algoritmo evolutivo multiobjetivo puede quedarse
atascado en uno de los fronts locales antes de converger al global), el P F true es
concavo y multimodal y este problema comprueba la habilidad del algoritmo
evolutivo multiobjetivo para converger al P F true .
Sin embargo, las colecciones ZDT y DTLZ tienen algunos inconvenientes
ya que los problemas test comparten algunas caractersticas y por lo general tienen fallos en el dise
no. Por ejemplo, para todos los problemas el optimo global tiene los mismos valores de los parametros para distintas variables/dimensiones y cae en el centro del espacio de b
usqueda o en las fronteras.
Tambien, todos estos problemas son separables. Por tanto, para llevar a cabo
las comparaciones se han utilizado las versiones rotadas y/o desplazadas de algunos de estos problemas, versiones que han sido propuestas por Huang et al.
(2007a), y que corrigen las deciencias se
naladas. Una descripcion de algunas
de sus caractersticas se muestra en la Tabla 1.3. Para los problemas 1 a 3 y 5,
el n
umero de funciones objetivo es 2 y el de variables de decision 30. Para los
problemas 6 y 8 estos valores son 3 y 30, respectivamente. Los problemas 4 y
7 tienen 10 variables de decision y 2 y 3 funciones objetivo, respectivamente.
En todos estos problemas test, el conjunto Pareto optimo es conocido.
20
Captulo 1 Introduccion
Tabla 1.3: Propiedades de los problemas test de las versiones rotadas y/o
desplazadas de los problemas de la Tabla 1.2. S: Separable; NS: No separable;
U: Unimodal; M: Multimodal.
Problema
test
Funciones
objetivo
f1
N
umero de
variables
1
Separabilidad
S
Modalidad
f2
f1
>1
1
S
S
U
U
f2
f1
>1
1
S
S
U
U
f2
f1 , f2
f1
>1
>1
1
S
NS
S
M
M
M
f2
f1 , f2 , f3
f1 , f2 , f3
f1 , f2 , f3
>1
>1
>1
>1
S
S
NS
S
M
U
M
M
1. S-ZDT1
convexo
2. S-ZDT2
concavo
3. S-ZDT4
4. R-ZDT4
convexo
5. S-ZDT6
6. S-DTLZ2
7. R-DTLZ2
8. R-DTLZ3
Geometra
convexo
concavo
concavo
concavo
concavo
Captulo 2
Objetivos
22
Investigacion Operativa: modelos de redes de colas, optimizacion con simulacion y algoritmos evolutivos.
2.2.
Aportaciones
2.3.
Resumen
2.3. Resumen
23
2.3.1.
Simulaci
on del sistema
Debido a las caractersticas del sistema, se considero la tecnica de simulacion de eventos discretos como la herramienta que permitio construir un
modelo mas realista.
Uno de los problemas de la simulacion tradicional es que no proporciona
soluciones concretas a los problemas, sino que proporciona soluciones posibles,
evaluando el funcionamiento del sistema bajo unas condiciones particulares.
As, para encontrar una buena solucion al problema se necesita un conjunto
de soluciones sucientemente amplio y representativo de todas las soluciones
factibles.
La simulacion moderna trata de evitar este problema combinando el proceso de simulacion con un metodo de optimizacion que cambie automaticamente
de una solucion a otra, buscando la optima.
2.3.2.
Optimizaci
on del sistema
Una vez construido el sistema de simulacion que dependa de varios parametros, se planteo la b
usqueda de la mejor combinacion de los valores de estos
con el objeto de optimizar ciertos objetivos. En particular, se trabajo con cuatro variables de decision: tiempo de trabajo diario en planta, tiempo de trabajo
diario del camion, tama
no del almacen y tiempo de descontaminacion (relacionado con el n
umero de empleados). Se consideraron seis funciones objetivo
a minimizar, clasicadas en tres grupos: objetivos de tipo economico, de tipo
24
2.3. Resumen
25
padre y un hijo por generacion, que compiten el uno con el otro para formar
parte de la siguiente generacion. El operador de mutacion crea el descendiente
a partir del padre y se ejecuta siguiendo la regla de 1/5 en la que la varianza
de la perturbacion depende de la proporcion de mutaciones exitosas (aquellas
en las que el descendiente es mejor que el padre).
Como cuestiones tecnicas del algoritmo de optimizacion, y en contraste con
la implementacion habitual, se generaron valores enteros para las variables de
decision, lo que hizo que se debiera modicar la regla de 1/5 para evitar la convergencia prematura a optimos locales. Se jo una varianza maxima y mnima
para la perturbacion y se aplico la regla de 1/5 de forma cclica. Cuando el
tama
no de la mutaci
on alcanzaba el mnimo, este valor se mantena, como
mucho, durante un cierto n
umero de iteraciones y, al acabar, se consideraba
de nuevo el tama
no maximo de la varianza.
Las funciones objetivo previamente construidas se evaluaron por medio
del modelo de simulacion de eventos discretos. Cada ejecucion del simulador
proporciono una estimacion de la media y la varianza de la funcion objetivo dividiendo la ejecucion en tramos (batches), con la amplitud del tramo
denida previamente. Para denir la longitud de las simulaciones se establecio un test estadstico de forma que haba un n
umero maximo de simulaciones,
pero esta poda ser interrumpida si dicho test encontraba diferencias signicativas que indicaran que la nueva solucion (hijo) era peor que la actual (padre),
en cuyo caso se interrumpa la simulacion y se pasaba a considerar una nueva
solucion.
26
La regla de parada para el algoritmo de optimizacion con simulacion combino dos reglas: un n
umero total de generaciones y un n
umero jo de generaciones sin mejorar las funciones objetivo.
2.4.
Resultados obtenidos
2.5. Conclusiones
27
2.5.
Conclusiones
Captulo 3
Representation and
management of MOEA
populations based on graphs
3.1.
Objetivos
30
3.2.
Aportaciones
3.3. Resumen
31
3.3.
3.3.1.
Resumen
Definiciones previas y notaci
on
32
3.3.2.
Grafos de dominaci
on
3.3. Resumen
33
a
(0,3)
b
(3,0)
c
(1,7)
d
(4,4)
e
(5,1)
f
(2,9)
g
(6,5)
h
(7,2)
i
(8,8)
j
(9,6)
Las relaciones de dominacion existentes entre las soluciones son las enumeradas en la Tabla 3.2. As, las soluciones ecientes son a y b, por lo que
ellas formaran la primera capa del grafo de dominacion. A continuacion, del
conjunto de soluciones restantes, {c, d, e, f, g, h, i, j}, las ecientes son c, d, y
e, por lo que ellas formaran la segunda capa del grafo. Aplicamos nuevamente
el proceso a las soluciones restantes, y la tercera capa del grafo esta formada
por las soluciones f, g y h, quedando i y j en la u
ltima capa.
En el grafo de dominacion, las soluciones se representan mediante nodos y
las relaciones mediante arcos, con lo que resulta el grafo de la Figura 3.2.
34
Domina a
c, d, f, g, i, j
d, e, g, h, i, j
f, i
g, i, j
g, h, i, j
Solucion
f
g
h
i
j
Domina a
i, j
i, j
3.3.3.
Construcci
on del grafo de dominaci
on irreducible
3.3. Resumen
35
de que los hubiera. Para este proceso se usa un proceso de marcado como por
ejemplo Breadth First Search (BFS) o Depth First Search (DFS). Ademas, en
el Lema 2 del trabajo se demuestra que el grafo construido con este algoritmo
es irreducible.
El algoritmo es el siguiente:
Paso 1. Paux = Pt , Nt = Pt , At =
Paso 2. Determinar X1 = {xi Paux |xi eciente}; l = 1
Paso 3. Paux = Paux \ X1
Paso 4. Determinar Xl+1 = {xi Paux |xi eciente}
Paso 5. xj Xl+1
xi Xt t = l, . . . , 1
si xi esta sin marcar y xi xj
At = At {(xi , xj )}
marcar xi y todos los xk Ai sin marcar
36
3.3.4.
Actualizaci
on del grafo de dominaci
on irreducible
3.3. Resumen
37
Inserci
on
Una insercion en el grafo se produce cuando un individuo nuevo entra
a formar parte de Pt+1 . Al insertar un nuevo nodo en G, lo primero que
hay que hacer es buscar la posicion (capa) en la que este nodo va a entrar.
Hay que identicar a los dominadores y los dominados del nodo xi , para lo
cual, con objeto de ahorrar tiempo computacional, se utiliza un proceso de
etiquetado que asegura que, en general, no se van a tener que hacer todas las
comparaciones con todos los individuos.
Una vez encontrada la capa en la que el nodo va a entrar, hay que reejar
las relaciones de dominacion mediante arcos y actualizar el grafo eliminando
los posibles arcos redundantes entre dominadores y dominados, puesto que
estas relaciones se reejan ahora a traves de xi .
El algoritmo es el siguiente:
Paso 0. Bi = , bi =
Paso 1. xj Nt y xj sin marcar
si xj xi , marcar todos los nodos de Aj sin marcar
38
Bi = Bi {xj }
si xj xi , marcar todos los nodos de Dj sin marcar
bi = bi {xj }
Paso 2. Determinar el conjunto Bi de nodos de Bi sin marcar
Paso 3. Determinar el conjunto bi de nodos de bi sin marcar
Paso 4. At = At \ {(xj , xk )|xj Bi , xk bi }
Paso 5. Nt = Nt {xi }
Paso 6. xj Bi
At = At {(xj , xi )}
Paso 7. xj bi
At = At {(xi , xj )}
Supongamos que en el ejemplo anterior, con la poblacion de la Tabla 3.1,
un nuevo individuo, k, entra a formar parte de la poblacion. Si, por ejemplo, los
valores de las funciones objetivo en k son (8, 6), las relaciones de dominacion
que aparecen al introducir este individuo en la poblacion son las siguientes:
a, b, d, e, g, h k i, j, es decir, a, b, d, e, g, h son los ancestros de k, e i y j
son sus descendientes. Entre estos individuos hay que encontrar a los padres
e hijos de k y eliminar los arcos que los unen. A continuacion, se a
nadiran
los arcos entre los padres de k y k, y entre k y sus hijos. En este ejemplo, los
padres de k son g y h y los hijos de k son i y j. Estos pasos se muestran en la
Figura 3.5.
Para ambos procesos de eliminacion e insercion de nodos se demostro en los
Lemas 4 y 5 del trabajo (ver paginas 80 y 81 del Apendice A.2) la correccion de
los algoritmos, garantizando que tras su aplicacion el nuevo grafo segua siendo
un GDI que contena todas las relaciones existentes en la nueva poblacion.
3.3.5.
C
alculo de la complejidad de los algoritmos propuestos
Sea m el n
umero de arcos de G; n el n
umero de nodos de G, que se corresponde con el n
umero de individuos de la poblacion P; y sea q el n
umero
de funciones objetivo del problema. En el artculo se calculo la complejidad
computacional, tanto de almacenamiento como en tiempo, para los algoritmos de construccion y actualizacion (eliminacion e insercion de nodos) de los
grafos. Estas complejidades se muestran en la Tabla 3.3, donde C(q, n) es la
complejidad del algoritmo de obtencion de las capas del grafo.
3.3. Resumen
39
6:
7:
8:
9:
Almacenamiento
Construccion grafo
Eliminacion de nodo
Insercion de nodo
Complejidad
O(m)
3
O(n + n2 q + C(q, n))
O(m n + n2 )
O(m + n q)
40
3.4.
3.4.1.
3.4.2.
41
3.4.3.
3.4.4.
En este experimento se implemento una modicacion del proceso de seleccion del algoritmo N SGA II con y sin la metodologa que proponemos.
En cada iteracion del algoritmo, este proceso selecciona para la poblacion siguiente a aquellos individuos de las capas mas altas del GDI construido con la
poblacion de padres y la de descendientes juntas. Como la poblacion conjunta
tiene 2n individuos y hay que seleccionar n, algunas de las soluciones de las
capas mas bajas del GDI no entraran a formar parte de la nueva poblacion. En
el experimento realizado, en lugar de utilizar la distancia de crowding habitual del algoritmo N SGA II, se simplico el proceso eligiendo las primeras
soluciones de la capa en la que este el proceso de seleccion.
En este experimento se observo que, en general, obtenemos menores tiempos de ejecucion con la metodologa propuesta y que ademas, cuanto mayor
es el tama
no de la poblacion mayor es la ventaja de utilizarla frente al metodo habitual, ahorrando gran cantidad de tiempo (ver Figura 5 del artculo,
pagina 88 del Apendice A.2).
42
3.5.
Conclusiones
La metodologa propuesta es una nueva forma de representacion y manipulacion de las poblaciones de los algoritmos evolutivos multiobjetivo que
mostro ser mas rapida que las utilizadas habitualmente mediante vectores o
matrices, sobre la coleccion de problemas test y los experimentos considerados.
Ademas, esta metodologa nos va a permitir denir de una forma mas comoda
operadores de recombinacion y mutacion que hagan un uso mas eciente que
los operadores actuales de la informacion sobre las relaciones de dominacion
entre las soluciones.
Captulo 4
Objetivos
44
capacidad de explotacion.
Una vez presentado el operador de recombinacion, se llevo a cabo un experimento computacional para comparar el comportamiento del operador propuesto con el de otros operadores habituales en la literatura como son nave
o standard one-point crossover, linear crossover, blend crossover y simulated binary crossover, y que han sido presentados en la Seccion 1.3.3
del Captulo 1. Los resultados de los experimentos mostraron que el nuevo
operador se comportaba mejor que los restantes en la coleccion de problemas
test utilizada. Exceptuando casos puntuales, el nuevo operador obtiene mejores
valores de las medidas consideradas (diferencia de hipervolumen, distancia
generacional y cubrimiento de conjuntos) que los otros.
4.2.
Aportaciones
La aportacion de este trabajo fue la construccion de un operador de recombinacion cuya principal novedad era el uso de la informacion sobre la eciencia
de las soluciones, haciendo que las soluciones ecientes explotaran el espacio de soluciones y las no ecientes lo exploraran, tratando de encontrar un
equilibrio adecuado entre explotacion y exploracion. Esto se hizo teniendo en
cuenta la eciencia o no de los padres a recombinar y su proximidad o no,
comparada esta con la distancia media entre los individuos ecientes de la
poblacion.
En el experimento realizado se puso de maniesto la superioridad del operador presentado frente a los otros operadores considerados.
4.3.
4.3.1.
Resumen
Esquema general
4.3. Resumen
45
(1,t)
xi
(1,t)
(2,t)
+ xi
2
(1,t)
|xi
(2,t)
xi |
N ef f
xi
(2,t)
+ xi
2
(1,t)
|xi
(2,t)
xi |
N ef f
Caso 2: Ambas son ecientes. Las componentes se generan aleatoriamente en los intervalos:
[
]
3
3
(1,t)
(2,t)
(1,t)
(2,t)
(ef f,t)
h
(ef f,t)
h
xi | f
xi | f
, xi + |xi
,
xi |xi
4
4
donde:
xhi =
(h,t)
xi ,
(3h,t)
xi
,
h = 1, 2,
con probabilidad 34 ,
con probabilidad 14 .
con
(1,t)
xi ,
(2,t)
xi ,
x1i =
con probabilidad 43 ,
con probabilidad 14 ,
con
x2i
(1,t)
xi ,
(2,t)
xi ,
con probabilidad 41 ,
con probabilidad 34 .
46
4.3.2.
Factores de correcci
on
Asociadas a las soluciones no ecientes y ecientes de Pt hay unas cantidades, denotadas con f N ef f y f (ef f,t) , respectivamente, que inicialmente
toman el siguiente valor:
f N ef f = 1,
t
,
f (ef f,t) = 1 0.11 stepsIter
donde stepsIter es el n
umero maximo de iteraciones ejecutadas por el algoritmo dividido por 10 y representa la funcion suelo. Estas cantidades se
multiplicaran por un factor de correccion, denido como la siguiente funcion,
representada gracamente en la Figura 4.1:
4/3,
1 + 0.11
f actor =
2/3,
d(ef f,t) d
(ef f,t)
Es decir, cuando las soluciones x(1,t) y x(2,t) estan muy proximas (primer
caso), el factor de correccion es constante e igual a 4/3, lo que hace que aumente en un 33 % el intervalo en el que se van a generar las soluciones. Si
las soluciones estan muy alejadas (tercer caso), el factor es constante e igual
a 2/3, lo que reduce este intervalo tambien en un 33 %. En las situaciones
4.3. Resumen
47
d(ef f,t) d
,
(ef f,t)
4.3.3.
48
4.4.
Resultados obtenidos
4.5. Conclusiones
49
presenta mejor comportamiento que C3 . Por tanto, globalmente se puede concluir que el operador propuesto P BC presenta mejor comportamiento que
Ci , i = 1, 2, 3, 4 cuando se consideran todas las medidas y de acuerdo con la
solucion de compromiso adoptada.
A la vista de las Figuras 3 a 11 y de las Tablas 3 a 6 del artculo, se puede
concluir que ninguno de los operadores considerados es claramente mejor que
P BC en todos los problemas. Es mas, C1 siempre se comporta peor que P BC
excepto en tres escenarios del problema R-DTLZ3, y son equivalentes en un
escenario del problema R-DTLZ2. P BC es siempre mejor que C2 . C3 no se
comporta mejor que P BC en los problemas S-ZDT1, S-ZDT4, R-ZDT4, SDTLZ2, R-DTLZ2 y R-DTLZ3 en los que P BC es mejor que C3 en todos.
Solo en los problemas S-ZDT2 y S-ZDT6, el operador C3 es mejor que P BC
en algunos escenarios (dos para S-ZDT2 y cuatro para S-ZDT6), por lo que
solo es en el problema S-ZDT6 en el que C3 es mejor que P BC. Finalmente,
P BC se comporta mejor que C4 excepto en dos escenarios en los que son
equivalentes y tres en los que C4 es mejor, todos ellos del problema R-DTLZ2.
4.5.
Conclusiones
Captulo 5
Objetivos
51
52
5.2.
Aportaciones
5.3.
Resumen
5.3.1.
t
0 < (r) < 1, r {1, 2, . . . , rmax } y (r) < (r ) si r < r . Tambien sera deseable que la funcion (r) tenga la cualidad de equilibrar adecuadamente la
5.3. Resumen
53
aportacion de las soluciones en funcion de su calidad. Si se introduce un parametro de forma, , en la denicion de la funcion, resultara mas facil modular
su comportamiento.
Entre las muchas funciones que verican las propiedades antes mencionadas,
se ha denido la funcion (r) de la siguiente manera:
(r) =
1 e(r1)
1 e(rmax 1)
t
0.0
0.2
0.4
(r)
0.6
0.8
1.0
10
15
20
rank value
54
mas grandes a aquellos individuos con valores altos del ranking (es decir, a
los de las capas inferiores del grafo de dominacion irreducible asociado) y
amplitudes maximas mas peque
nas a los individuos con valores peque
nos del
ranking (es decir, soluciones de las capas superiores del grafo).
5.3.2.
xk
(L)
(
)
(t)
(U )
(L)
= xk + u (t,r) xk xk
,
(U )
donde u U(0, 1), xk y xk son las cotas inferior y superior, respectivamente, de la componente k-esima de x y (t,r) dene la amplitud dependiendo
del ranking r y de la iteracion t de acuerdo con:
{
(t,r)
2 (t) + (1 (t)),
(t) + (1 (t)) (r),
donde
(
(t) = 0.25
tmax t
tmax
t
si rm
ax = 1,
t
si rm
ax 2,
)2
,
tmax es el n
umero maximo de iteraciones y es un parametro que habra que
jar.
t
Si todas las soluciones son ecientes, es decir, rm
ax = 1, la amplitud de las
mutaciones esta basada u
nicamente en la iteracion t y disminuye conforme t
5.3. Resumen
55
5.3.3.
Selecci
on de par
ametros en los operadores RM O, P M O,
N U M O y GM O
56
0.8
r=5
0.6
r=4
0.4
r=3
0.2
r=2
r=1
0.0
1.0
10
20
30
40
50
Iteration
Par
ametro
NUMO
PMO
GM O
P RBM O
Caractersticas
A mayor ,
mayor amplitud de mutacion
A mayor b, menor probabilidad
de obtener amplitud grande
A mayor , menor probabilidad
de obtener amplitud grande
0 representa la mnima
amplitud maxima permitida
Equilibrio en la aportacion
de las soluciones buenas y las malas
Valores
0.1, 0.25,
0.5, 0.75
1, 2,
5, 8
5, 10,
15, 20
105 , 104 ,
103 , 102
-0.5, -0.1,
0.1, 0.5
5.3. Resumen
57
diferentes.
Para cada problema se generaron 30 poblaciones iniciales que se hicieron
evolucionar considerando cada uno de los distintos operadores de mutacion con
los distintos valores de los parametros en cada uno de los nueve escenarios. De
estas poblaciones nales, se extrajo el conjunto de soluciones ecientes sobre
las que se calculo el valor de la medida diferencia de hipervolumen, HD. Se
selecciono u
nicamente una medida para simplicar el proceso, y, en particular,
se tomo HD ya que esta medida tiene en cuenta a la vez la distribucion
uniforme de las soluciones a lo largo del Pareto front y la parte del Pareto
front cubierta.
A continuacion se calculo, para cada operador de mutacion, el n
umero de
veces en las que el operador, con un valor determinado del parametro, ganaba,
respecto a la medida HD, al mismo operador pero con otro valor del parametro
cuando evolucionaba la misma poblacion inicial bajo los mismos escenarios.
Con estos valores se ejecuto un test de hipotesis para determinar cuales podan
ser considerados estadsticamente equivalentes, comparando todas las parejas.
Despues de este proceso, los valores seleccionados para los parametros, que
se utilizaran en los dos experimentos posteriores, fueron los que se muestran
en la Tabla 5.1 en negrita. Una descripcion mas detallada puede verse en la
Seccion 5.5 del trabajo original, en la pagina 137 del Apendice A.4.
5.3.4.
Para llevar a cabo la comparacion del nuevo operador de mutacion propuesto con los operadores de mutacion considerados se realizaron dos experimentos similares al del artculo anterior. En el primero de ellos, en el que
comparamos el funcionamiento del operador propuesto con los restantes, se
dise
no un algoritmo evolutivo como el de la Figura 1.1 del Captulo 1 en el
que en el paso variar Pt se considero u
nicamente el operador de mutacion.
Se comparo el operador de mutacion propuesto con los cuatro operadores de
mutacion, aleatorio, polinomial, no uniforme y gaussiano, mencionados en el
Captulo 1, en la Seccion 1.3.4, y denotados mediante RM O, P M O, N U M O
y GM O, respectivamente.
En el segundo experimento comparamos la implementacion clasica del algoritmo N SGA II con una nueva en la que se sustituyo el operador de
mutacion por el nuevo que proponemos.
Los problemas test, los operadores de seleccion y las medidas utilizadas
para llevar a cabo las comparaciones de los conjuntos de soluciones ecientes
fueron los mismos que los utilizados en el trabajo anterior.
58
5.4.
Resultados obtenidos
5.4.1.
5.5. Conclusiones
59
5.4.2.
5.5.
Conclusiones
Ap
endices
61
Ap
endice A
Artculos publicados
A.1.
63
64
b,*
, P.M. Mateo
Department of Statistical Methods, Faculty of Mathematics, University of Zaragoza, 50009 Zaragoza, Spain
b
Department of Statistics and Operations Research, Public University of Navarra, 31006 Pamplona, Spain
Received 26 August 2000; accepted 24 July 2001
Abstract
In order to ensure that end of life vehicles (ELVs) are discarded without endangering the environment, appropriate
collection systems should be set up. In accordance with the European Community Directive, the construction of an
industrial plant for the decontamination and recycling processes of ELVs is currently being planned in Navarra (Spain).
The aim of this study is to optimize the design and management of this industrial plant. We will provide a modelling
framework that integrates different OR methodologies: queueing networks, optimization with simulation, evolutionary
computation and multiobjective methods. 2002 Elsevier Science B.V. All rights reserved.
Keywords: Simulation; Optimization; Multiobjective
1. Introduction
A current serious ecological problem in modern
countries is the impact of end of life vehicles
(ELVs) on the environment. To handle this issue
the European Community has recently (June 2000)
adopted a new Directive laying down measures
which are aimed, as first priority, at the prevention
of waste from vehicles and, in addition, at the reuse (any operation by which components of ELV
are used for the same purpose for which they were
Corresponding author.
E-mail addresses: isolina@posta.unizar.es (I. Alberto),
cazcarate@unavarra.es (C. Azcarate), mallor@unavarra.es
(F. Mallor), mateo@posta.unizar.es (P.M. Mateo).
conceived), recycling (the reprocessing in a production process of the waste materials for the
original purpose or for other purposes excluding
the processing for use as fuel or as other means of
generating energy) and other forms of recovery
(any of the applicable operations provided for in
Annexe II B to Directive 75/442/EEC) of vehicles
and their components.
In accordance with the polluter-pays principle
and in order to implement the principle of producer responsibility, collection and recovery of
ELVs should no longer be a responsibility of
public authorities and should be shifted to economic operators (producers of materials and of
vehicles, distributors, dismantlers, shredders, recoverers and recyclers). This means that the Governments of the European Community States shall
0377-2217/02/$ - see front matter 2002 Elsevier Science B.V. All rights reserved.
PII: S 0 3 7 7 - 2 2 1 7 ( 0 2 ) 0 0 0 7 5 - 9
65
374
66
375
67
376
68
377
Table 1
Parameters of the system
Parameter
Description
Table 2
Statistics and distributions from the simulation
Percentage of time with n non-decontaminated/
decontaminated/total vehicles in plant
Mean number of vehicles lost by saturation of the plant
Average of idle time in the decontamination line
Percentage of days with overtime for the transport trucks
Average of idle time for trucks and average overtime
Average number of truck trips
Average load per trip
Distribution of the load size
Percentage of vehicles returned after the agreement deadline
with the scrap heap, for each scrap heap
Distribution of input and output number of vehicles, for each
scrap heap
Distribution of the time that the ELVs of each scrap heap
spend in the system. Also the average and the maximum time
in the system are calculated
69
378
i 1; . . . ; 6;
the six criteria, the weighted sum of the appropriate deviation variables is minimized:
3
X
wi zi ai
6
X
wi zi ai :
i4
i1
3
X
wi Ezi ai
i1
6
X
wi Ezi ai :
i4
Furthermore, as the objective functions expected values, Ezi hi x; p, do not have an explicit functional expression in terms of x and p, it is
through the simulation that the value of such expected values can be estimated.
Thus, for the resolution of this optimization
problem we combined optimization with simulation according to Fig. 3.
Starting from some initial values of the decision
variables, x0 , the following process is repeated: at
step k 1, the simulation model receives the values
of the decision variables, xk , from the optimization
algorithm; the simulation of the queueing network
is run with these values. A set of system performance measures, sk , directly obtained from the
statistical accumulators of the simulation program, allows us to estimate the expected values of
the objective functions as well as the goal programming objective function, Z^xk f sk . Now,
both the vector of the decision variables, xk , and
the estimated value for Z; Z^k , are the inputs for the
optimization algorithm, which returns a new vec-
70
379
71
380
H0 : Zx Zx
k1
H1 : Zxk 6 Zxk1 :
We used the sample mean, Z^xk , and the sample standard deviation, S^z xk , obtained from the b
batches simulated until then, to test the hypothesis
that the expected value Zxk is equal to the expected value Zxk1 . We also used in this test the
values Z^xk1 and S^z xk1 obtained in the previous iteration of the algorithm.
Note that if the difference shows a better solution or no difference is detected, the simulation
continues until bmax is reached with the aim of
getting solutions with lower variance. Otherwise,
the evaluation of non-promising solutions is interrupted. These stopping criteria are shown in an
algorithm (Fig. 6).
This procedure has been shown to be very
useful in advanced states of the system optimization when a reference solution of small value and
small variance is available, which makes the discrimination of non-promising solutions faster.
The stopping criteria for the simulationoptimization algorithm combine two rules: a fixed total
number of generations and a fixed number of generations without improving the objective function.
4. Results
In this section we shall show some of the results
obtained when applying the proposed algorithm to
72
381
the model of the industrial plant for the decontamination and recycling of ELV.
As an example, we present the results for the
following parameters and bounds for the variables:
minutes of work of the industrial plant,
360 6 x1 6 480;
minutes of work of the trucks, 360 6 x2 6 480;
size of the storage area, 50 6 x3 6 100;
exponential time for decontamination, with
mean between 15 and 25 minutes (x4 );
one truck with capacity for three ELVs;
aspiration level of 80 for the maximum objective
functions (ai 80 for i 1; 2; 3) and 10 for the
minimum objective functions (ai 10 for
i 4; 5; 6) (expressed in percentages);
same weights for the goals wi 1 8i;
the maximum fixed number of iterations equals
2000;
the initial sigma of the mutation operator equals
75% of the variable range;
the minimum sigma equals 5% of the variable
range;
the verification of the proportion of successful
mutations every 20 individuals and the preservation of the minimum sigma through 5 further iterations;
bmin 5 and bmax 15.
Table 3
Autocorrelations
Lag
Auto-corr.
Stand
err.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
)0.036
0.021
0.001
)0.155
)0.024
0.063
0.033
)0.133
)0.095
)0.152
)0.075
0.043
)0.138
0.074
)0.121
)0.052
0.137
0.136
0.134
0.133
0.132
0.130
0.129
0.127
0.126
0.124
0.122
0.121
0.119
0.118
0.116
0.114
BoxLjung
0.068
0.091
0.091
1.456
1.488
1.725
1.790
2.881
3.454
4.950
5.326
5.454
6.783
7.179
8.263
8.471
Prob.
0.795
0.955
0.993
0.834
0.914
0.943
0.971
0.942
0.944
0.894
0.914
0.941
0.913
0.928
0.913
0.934
Decision variables
point
363
367
368
360
365
371
360
360
373
391
O.F.
S.D.
463
464
465
465
475
470
464
463
476
467
50
50
50
50
50
50
50
50
50
50
20
21
21
20
21
21
20
20
21
22
98.85
98.56
97.86
97.96
98.23
97.84
97.51
98.52
98.51
98.21
3.85
2.62
2.13
2.49
2.63
2.65
2.59
4.94
1.60
1.66
391
365
373
373
390
477
473
465
479
469
50
50
50
50
51
22
21
21
21
22
98.94
98.49
97.36
98.24
98.35
2.01
1.65
1.78
1.70
2.38
Upper bound
710
360
288
361
202
393
562
372
1033
377
466
475
465
478
474
51
51
51
50
50
20
20
22
21
21
98.76
98.09
99.57
98.25
97.18
4.09
3.31
2.12
3.27
2.32
Lower bound
693
368
186
394
249
378
1078
371
168
368
478
467
473
466
463
50
50
51
50
50
21
22
21
21
21
97.52
99.05
98.26
97.64
97.41
2.18
3.22
3.65
1.93
1.87
Midpoint
46
303
1415
1370
272
73
382
5. Conclusions
The proposed program provides a useful tool
for the analysis of the industrial plant for the decontamination and recycling processes of ELV,
allowing the agents of Reciclauto S.L. to evaluate,
74
goal programming technique, based on the method proposed by Reeves and Hedin (1993), and on
the construction of a Genetic Algorithm (GA)
with the ability to handle the interactive methodology and the special characteristics of the problem. The main idea of this GA is to evolve a
population of individuals which, at the end, includes an estimation of the best solution for the
weighted goal function, one estimation for each of
the individual objectives and other individuals that
are estimations of efficient solutions and introduce
and keep diversity in the population. The algorithm uses different mutation and recombination
operators for the individuals, depending on the
type of individual in which they are applied.
Acknowledgements
This research was partially financed by the
Government of Navarra (Spain), and Reciclauto
S.L. through a LIFE Project of European Community (LIFE99 ENV/E/000375). The authors are
grateful to both the editor and referees for their
comments, which greatly improved the presentation of this paper.
References
B
ack, T., Schwefel, H.P., 1995. Evolution strategies I: Variants
and their computational implementation. In: Winter, G.,
Periaux, J., Galan, M., Cuesta, P. (Eds.), Genetic Algorithms in Engineering and Computer Science, Proceedings
of 1st Short Course EUROGEN-95. Wiley, New York, pp.
111126.
B
ack, T., Fogel, D.B., Michalewicz, Z. (Eds.), 1997. Handbook
of Evolutionary Computation. IOP Publishing and Oxford
University Press, Oxford.
383
A.2.
76
Discrete Optimization
Department of Statistical Methods, Faculty of Mathematics, University of Zaragoza, C/Pedro Cerbuna 12, 50009 Zaragoza, Spain
Received 3 September 2002; accepted 20 May 2003
Available online 23 September 2003
Abstract
Until now, in the literature, little attention has been paid to the storage and handling of populations of multiobjective evolutionary algorithms (MOEAs). In this work, we present a new tool for representing and managing populations of MOEAs by means of the use of graphs that keep the information on the relations among the individuals of
the population. In the paper, we establish the theoretical basis of this sort of graph. In addition, we develop algorithms
for its construction and updating (addition and removal of individuals in the population), analyzing their theoretical
complexities. We also study several aspects of their practical behaviour including storage requirements, time needed for
the construction and the management of these graphs. Finally, we present a selection process time comparison with and
without the proposed methodology.
2003 Elsevier B.V. All rights reserved.
Keywords: Evolutionary computation; Multiple objective programming; Graph theory; Heuristics
1. Introduction
The great number of publications about multiobjective evolutionary algorithms (MOEAs) during the last years (Fonseca and Fleming, 1995;
Coello, 1999; Van Veldhuizen and Lamont, 2000)
have shown their great importance in the multiobjective field. This fact is presumably due to their
natural population-approach which makes these
methods very well suited for complex multiobjective problems.
*
Corresponding author. Tel.: +34-976-761000; fax: +34-976761115.
E-mail addresses: isolina@unizar.es (I. Alberto), mateo@unizar.es (P.M. Mateo).
The different MOEAs can be classified according to several criteria. One of them is how the
MOEA manages the objective functions. In this
classification we can distinguish methods that use
Pareto ranking orders (Fonseca and Fleming,
1995; Goldberg, 1989; Deb, 2001; Srinivas and
Deb, 1994).
In this paper we present a process based on
graphs for managing populations sorted by using
Pareto ranking orders. Until now, the storage of
individuals of a population has mostly been carried out by means of linear lists. In the literature, some works that use quad-trees structures
(Habenicht, 1983; Mostaghim et al., 2002) can be
found, but the purposes of those works are different. While quad-tree structures are used to
0377-2217/$ - see front matter 2003 Elsevier B.V. All rights reserved.
doi:10.1016/S0377-2217(03)00405-3
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
77
53
78
54
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Ai fxj 2 N j xj is an ancestor of xi g,
Pi fxj 2 N j xj is a parent of xi g,
Ci fxj 2 N j xj is a child of xi g,
Di fxj 2 N j xj is a descendant of xi g.
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Since our graphs are acyclic, the transitive reduction (IDG) is contained in any of the DGs of
the population (Aho et al., 1972). Then, we can
also define an IDG as a DG such that there exists
no subgraph contained in it and which is also a
DG for the population. In other words, if any of
the arcs is removed from A, the resulting graph
does not reflect all the domination relations, i.e., if
it does not contain any redundant arc.
The following lemma establishes a characterization of our IDG that we will later use.
79
55
Paux Pt , Nt Pt , At ;
Determine X1 fxi 2 Paux j xi efficientg; l 1
Paux Paux n X1
Determine Xl1 fxi 2 Paux j xi efficientg
8xj 2 Xl1
8xi 2 Xt , t l; . . . ; 1
if xi is unmarked and xi xj
At At [ fxi ; xj g
mark xi and all currently unmarked
xk 2 Ai
S
unmark nodes of t1;...;l Xt
(6) Paux Paux n Xl1 ; l l 1
(7) If Paux 6 ; go to step 4
The following result can be found in other papers but here we present another proof based on
the previous lemma (Aho et al., 1972).
Theorem 1. Given a population Pt , the irreducible
domination graph associated with it is unique.
Proof. Suppose that there are two different IDGs,
Gt Nt ; At and G0t Nt ; A0t . Then there exist xi and xj such that xi xj and there would exist
two different directed paths from xi to xj , one in At
and another in A0t . Without loss of generality, we
can suppose that these directed paths in which At
and A0t differ are: xi ! xj in At and xi ,!xj in A0t ,
i.e., in At the arc xi ; xj exists, and in A0t we go
(1)
(2)
(3)
(4)
(5)
80
56
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Lemma 4. Let Gt be an IDG and G0t the graph obtained by applying the former algorithm to eliminate
the node xi . Then G0t is an IDG (it preserves all the
existing relations and does not reflect fictitious
ones).
81
57
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Bi ; xk
bi g
Lemma 5. Let Gt be an IDG and G0t the graph obtained by applying the former algorithm to add the
node xi . Then G0t is an IDG (it preserves all the
existing relations, adds the new ones and does not
add fictitious relations).
Proof. We shall see first that G0t is an IDG. As the
node xi is new in G0t , the new arcs added in steps 6
and 7 of the algorithm cannot be redundant. The
existing arcs that could have been made redundant
are those that went from xr 2 Bi to xs 2 bi because
in G0t there is a new directed path with two arcs
xr ! xi ! xs . But those arcs have been removed in
step 4 of the algorithm.
G0t preserves all the existing relations because
the only ones that could be affected by the insertion of xi are those that passed through an arc
xr ! xs in Gt with xr 2 Bi and xs 2 bi . But the
domination relation xr xs is reflected in G0t by
means of the directed path xr ! xi ! xs , therefore
it is preserved.
G0t reflects the new domination relations because
the algorithm adds the arcs from Bi to xi and from
xi to bi and the domination relation is transitive.
Finally, the algorithm does not add fictitious
relations because the only arcs that have been
added are those that reflect the existing domination relations xr xi with xr 2 Bi and xi xs with
xs 2 bi . h
As we have mentioned before, this algorithm
can also be used for constructing the initial IDG
associated with the initial population, without
more ado than considering N0 ; and inserting
nodes successively.
In order to finish this section we show a small
example in which we construct an IDG, we remove
one node and we add a new solution. In Fig. 2(a)
we can observe the process of construction of the
IDG associated with the population shown in
Table 1.
82
58
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
a
c
b
e
(a)
(b)
j
i
(c)
b
d
b
d
In the following, the complexities will be calculated in function of the number of objective
functions (q) and the node and arc numbers (n and
m respectively) of the considered IDG associated
with the population at the beginning of the processes.
Observe that these graphs are not necessarily
connected, and then m is bounded by 0 and
n2 n=2. Later we will show that, although we
have this upper bound for m, in practice this value
is substantially below its upper bound.
Lemma 7. The algorithm for constructing the initial
IDG has complexity in time On3 n2 q Cq; n
where Cq; n is the complexity of the process for
calculating the layers Xt .
Proof. The establishment of the structures in step 1
and the updating of Paux in steps 3 and 6 have
order On. By hypothesis, steps 2 and 4 have
complexity Cn; q. Let us see that each iteration of
Table 1
Population and its objective function values f1 ; f2
Sol.
0; 3
3; 0
1; 7
4; 4
5; 1
2; 9
6; 5
7; 2
8; 8
9; 6
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
2
83
59
84
60
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
storage requirements have order Om, and therefore they could reach order On2 , in our computational experiments, these requirements have had
a nearly linear behaviour. To test this we have
tried several regression models finding that the
b b0 nb1
best one is a power regression model m
where m is the arc number and n is the population
size. In Fig. 3, the scatter-plot and the adjusted
model for each test problem are presented. In the
graph we have plotted this maximum number of
arcs for each population size. In Table 2, the
square of Pearsons correlation coefficient and the
coefficients of the adjusted model are presented.
Observe that the adjusted model suggests that the
average complexity is Onb where b is approximately equal to 1 except for MOP5, which has a
higher value of b1 but a smaller value of b0 .
For analyzing the IDGs construction time, we
have used successively the node addition algorithm
because it has shown a slightly better behaviour in
x 10
MOP1
x 10
2.5
MOP2
2.5
1.5
1.5
0.5
0.5
0.5
2000
4
x 10
3000
1000
2000
4
MOP4
x 10
2.5
3000
1.5
1.5
0.5
0.5
0.5
2000
3000
1000
2000
x 10
MOP6
2000
3000
1000
MOP7
2.5
observed
adjusted
2
1.5
1
0.5
1000
2000
3000
2.5
1.5
x 10
1000
MOP5
2.5
1000
MOP3
2.5
1.5
1000
x 10
3000
2000
3000
85
61
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Table 2
Pearsons correlation and adjusted model coefficients
R2
b0
b1
MOP1
MOP2
MOP3
MOP4
MOP5
MOP6
MOP7
1
1.1706
1.0327
1
1.7045
1.1627
1
1.6739
1.1635
1
1.8198
1.1612
0.885
0.0210
1.5929
1
2.5546
1.1079
0.999
1.3527
1.2472
our experiments than the IDG construction algorithm. Again, 140 sets of 10 populations with the
same characteristics as before have been generated,
and the maximum time (in microseconds) for
constructing the IDG associated to each set has
been computed. Fig. 4 shows for each test problem, the scatter-plot and the new best adjusted
d
model (again a power regression model time
b0 nb1 ). The points correspond to the maximum
time needed for each population size. In Table 3,
the square of Pearsons correlation coefficient and
the coefficients of the adjusted model are shown.
x 10
MOP1
x 10
MOP2
x 10
10
10
10
1000
2000
5
x 10
3000
1000
2000
5
MOP4
x 10
3000
1000
x 10
10
10
2
2000
5
x 10
3000
2000
5
MOP5
10
1000
2000
3000
1000
observed
adjusted
8
6
4
2
1000
2000
3000
MOP6
1000
MOP7
10
MOP3
3000
2000
3000
86
62
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Table 3
Pearsons correlation and adjusted model coefficients
R2
b0
b1
MOP1
MOP2
MOP3
MOP4
MOP5
MOP6
MOP7
1
0.0192
2.0907
0.993
0.0326
2.1135
0.997
0.0308
2.0941
0.996
0.0232
2.1597
0.999
0.0533
1.9771
0.998
0.0282
2.1191
0.996
0.0016
2.5532
Table 4
Mean and variance of the time needed for adding a node, for each problem and population size
Pop. size
MOP1
MOP2
MOP3
MOP4
MOP5
MOP6
MOP7
1000
Mean
Variance
72.44
11.43
139.13
146.61
114.04
199.94
137.66
323.47
84.58
33.25
125.37
396.32
156.15
425.66
1100
Mean
Variance
83.08
6.16
155.87
223.46
129.28
347.96
155.73
305.18
98.18
167.31
138.00
547.47
171.72
534.04
1200
Mean
Variance
89.43
6.60
169.19
170.48
137.73
406.85
170.52
535.29
101.18
26.15
154.41
566.39
191.64
617.38
1300
Mean
Variance
98.59
12.33
186.42
267.12
150.25
529.15
185.26
520.77
110.34
50.37
161.81
563.91
225.81
953.32
1400
Mean
Variance
105.45
13.01
201.57
318.88
163.30
800.21
200.09
497.74
122.27
103.71
182.62
749.55
247.52
1143.05
1500
Mean
Variance
114.82
7.68
214.55
352.21
172.04
621.43
219.38
938.85
130.35
185.68
191.60
765.86
297.43
1619.39
1600
Mean
Variance
123.42
14.29
228.72
348.16
189.88
790.35
226.36
939.62
138.31
153.28
208.71
1273.82
336.11
3272.81
1700
Mean
Variance
132.42
32.29
267.10
695.56
221.51
898.82
259.88
1183.21
145.96
134.92
227.51
1191.19
402.20
3947.31
1800
Mean
Variance
141.93
25.19
273.94
719.20
233.07
1374.58
294.13
1701.22
156.32
138.30
289.13
2039.83
467.21
6155.96
1900
Mean
Variance
148.92
9.46
332.31
1109.22
252.40
1729.55
326.97
1461.21
163.48
148.62
305.26
2368.95
553.19
10320.77
87
63
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
Table 5
Mean and variance of the time needed for removing a node, for each problem and population size
Pop. size
MOP1
MOP2
MOP3
MOP4
MOP5
MOP6
MOP7
1000
Mean
Variance
16.70
189.01
124.14
5433.86
100.05
3967.33
139.46
9398.95
10.55
16.91
115.96
3870.63
230.82
20293.79
1100
Mean
Variance
23.83
347.58
133.47
5624.84
105.05
3687.72
149.69
7328.55
8.96
8.10
123.87
5844.28
242.13
22686.13
1200
Mean
Variance
21.54
323.34
153.39
7671.08
121.29
5458.07
170.45
8355.01
9.60
10.03
134.30
6120.96
265.56
44664.44
1300
Mean
Variance
28.66
572.29
163.85
8791.95
122.43
5590.17
179.39
9328.90
10.77
11.80
151.33
11146.84
286.23
37433.89
1400
Mean
Variance
27.50
591.40
164.92
9233.13
155.70
10945.07
192.38
14738.08
19.70
174.49
178.15
10422.14
395.50
81312.98
1500
Mean
Variance
33.62
778.31
184.79
10388.65
156.86
7657.19
217.64
19684.02
12.98
112.27
183.59
10164.63
393.20
76594.26
1600
Mean
Variance
37.01
914.32
215.24
15832.38
161.50
10716.48
254.24
19056.70
27.63
570.36
196.77
12071.38
455.10
78663.50
1700
Mean
Variance
37.85
1001.11
230.80
15027.57
182.13
31220.09
277.20
22795.72
18.84
94.32
218.89
16578.64
551.92
115521.2
1800
Mean
Variance
40.28
1039.44
281.27
24087.74
212.35
21907.03
316.33
30993.06
14.39
19.22
211.06
12115.96
665.52
195145.6
1900
Mean
Variance
47.03
1385.15
317.99
33763.04
258.64
29512.27
349.25
46516.42
15.23
24.33
270.65
20432.33
765.38
257204.1
a direct process, given Rt we carry out the nondominated sorting and selection of the best n solutions, using the On2 q non-dominated sorting
procedure proposed by Deb (2001, pp. 4243).
Secondly, we have measured the time needed for
doing the same process with our tools. Given Pt
and its IDG associated, and given Qt , we add the n
solutions of Qt to the IDG and then we remove the
n worse solutions resulting in Pt1 . In order to
compare the methods, the populations Pt and Qt
are the same for both.
Fig. 5 shows the comparison between the two
processes. It can be clearly noticed that the behaviour of the process using our tools is better than
other methods proposed, it always provides a
smaller computation time. Furthermore, the bigger
the size of population, the bigger the advantage of
our implementation. It can also be noticed that,
whereas in our implementation the storage requirements are, in practice, almost linear, the nondominated sorting method always needs On2
storage requirements. In the light of these results,
88
64
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
6
14
12
10
8
6
4
2
x 10
14
12
10
8
6
4
2
1000
14
12
10
8
6
4
2
x 10
14
12
10
8
6
4
2
x 10
2000
14
12
10
8
6
4
2
1000
14
12
10
8
6
4
2
2000
3000
MOP2
x 10
3000
MOP4
1000
6
MOP1
2000
3000
1000
6
MOP5
x 10
14
12
10
8
6
4
2
1000
MOP3
x 10
2000
3000
2000
3000
2000
3000
MOP6
x 10
1000
MOP7
mean time needed method 1
mean time needed proposed method
2000
3000
We wish to emphasize that in the last experiment, the use of our tools manages an important
reduction of the performance times opposite to a
implementation that uses a classical representation
of populations.
We have therefore proposed a framework for
managing MOEA populations that behaves efficiently and that can also be used to re-implement
existing algorithms, and by means of which some
of the elements used are automatically defined (for
example, Goldbergs ranking, depth of the node in
the graph, Fonseca and Flemings ranking, cardinal of the ancestor set of the node, and so on).
We are now working on the use of the graph
structure to define new operators bearing in mind
the neighbourhood of each individual, selection
strategies that let us control the size of the graph (arc
number, layer number, parent/child numbers per
node, and so on). The main idea of these operators is
that they will use all the information contained in
I. Alberto, P.M. Mateo / European Journal of Operational Research 159 (2004) 5265
89
65
Fonseca, C.M., Fleming, P.J., 1995. An overview of evolutionary algorithms in multiobjective optimization. Evolutionary
Computation 3 (1), 116.
Goldberg, D.F., 1989. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison Wesley, Reading,
MA.
Habenicht, W., 1983. Quad-Trees, A Data Structure for
Discrete Vector Optimization Problems. In: Lecture Notes
in Economic and Mathematical Systems, vol. 209. SpringerVerlag. pp. 136145.
Kung, H.T., Luccio, F., Preparata, F.P., 1975. On finding the
maxima of a set of vectors. Journal of the Association for
Computing Machinery 22 (4), 469478.
Mostaghim, S., Teich, J., Tyagi, A., 2002. Comparison of data
structures for storing Pareto-sets in MOEAs. Proceedings of
the 2002 Congress on Evolutionary Computation CEC
2002, Hawaii, USA, pp. 843848.
Poutre, J.A., van Leeuwen, J., 1988. Maintenance of Transitive
Closure and Transitive Reduction of a Graph. In: Lecture
Notes in Computer Science, vol. 314. pp. 106120.
Srinivas, N., Deb, K., 1994. Multi-objective function optimization using nondominated sorting genetic algorithms.
Evolutionary Computation Journal 2 (3), 221248.
Van Veldhuizen, D.A., 1999. Multiobjective evolutionary
algorithms: Classifications, analyses, and new innovations,
Ph.D. Thesis, TR-AFIT/DS/ENG/99-01, Air Force Institute
of Technology, Dayton, OH.
Van Veldhuizen, D.A., Lamont, G.B., 2000. Multiobjective
evolutionary algorithms: Analyzing the state-of-the-art.
Evolutionary Computation 8 (2), 125147.
A.3.
91
92
Top
DOI 10.1007/s11750-009-0082-7
O R I G I N A L PA P E R
Abstract Evolutionary Algorithms are search and optimisation methods based on the
principles of natural evolution and genetics that attempt to approximate the optimal
solution of a problem. Instead of only one, they evolve a population of potential
solutions to the problem, using operators like mutation, crossover and selection.
In this work, we present a new crossover operator, in the context of Multiobjective
Evolutionary Algorithms, which makes use of the concept of Pareto optimality. After
that it is compared to four common crossover operators. The results obtained are very
promising.
Keywords Multiobjective decision making Metaheuristics Evolutionary
algorithms
Mathematics Subject Classification (2000) 90C29 90C59 68T20
1 Introduction
In order to model problems in a more realistic way, complex formulations of real
systems have to be established. A great amount of these formulations constitute multiobjective problems in which there are more than one objective function for comparing the quality of solutions. Often, these complex models are unapproachable with
I. Alberto
Department of Statistical Methods, Technical School of Industrial Engineers, University of Zaragoza,
C/Mara de Luna 3, 50018 Zaragoza, Spain
e-mail: isolina@unizar.es
P.M. Mateo (B)
Department of Statistical Methods, Faculty of Sciences (Mathematics), University of Zaragoza,
C/Pedro Cerbuna 12, 50009 Zaragoza, Spain
e-mail: mateo@unizar.es
93
classical techniques, but the use of heuristic methods allows the researchers to deal
with them.
Evolutionary Algorithms, EAs, can be considered the most adequate methods
for solving complex Multiobjective Optimisation Problems (MOOPs). The general
schema of an EA is shown in Fig. 1. For a general vision in this field, the reader is
referred to these classical books: Holland (1975), Goldberg (1989) and Michalewicz
(1996), and the more recent book with a complete description of the different techniques by Eiben and Smith (2007).
Regarding the multiobjective optimisation field, since the Vector Evaluated Genetic Algorithm (VEGA) was proposed by Schaffer in the mid-1980s Schaffer (1984,
1985), a large amount of different EA implementations have been proposed and a
great quantity of papers on this matter have appeared. The web site by Coello (2008)
and the books by Coello et al. (2007) and Deb (2001) provide a good and complete
introduction as well as a broad list of references about Evolutionary Multiobjective
Optimisation.
Researchers are aware of the importance of efficiency in these kinds of algorithms
in the sense of obtaining different elements whose improvement provide us with better solutions in a faster way. These elements can be: solution representation, management of solutions, design of operators (mutation, crossover, selection), techniques
for improving the coverage of the Pareto front, and so on.
The crossover operator is an important element in the design of EAs. Together
with the mutation operator, both are responsible for the exploration of the space of
solutions. A great amount of crossover operators can be found in the literature, for
example, in Deb (2001) and in Coello (2005) some of the most widely used are presented.
In this work, a new crossover operator is introduced and compared to the following
operators (Deb 2001): nave crossover, linear crossover, blend crossover, and simulated binary crossover. As it will be shown, the new crossover operator outperforms
the other ones.
The paper is organised as follows: In the next section, we briefly present the definitions and notations on multiobjective problems that we will need later. In Sect. 3, we
present the four crossover operators we will use to compare them to the new crossover
operator, which is explained in Sect. 4. Next, we explain the experiment carried out
for accomplishing the comparison. Finally, the conclusions are presented in Sect. 6.
94
3 Crossover operators
Among the crossover operators that can be found in the literature, we have considered
four of them. These operators and their characteristics are the following:
Nave crossover or standard one-point crossover (C1 ) (Holland 1975): Given x(1,t)
and x(2,t) two solutions of the current population in iteration t of an EA, the
nave crossover operator selects a random crossover point j (between 2 and n)
and then the components j to n in both solutions are swapped. In Fig. 2, the
95
(L)
(U )
Fig. 2 Crossover operators considered. The values xi and xi represent the lower and upper bounds
of component xi , respectively. Parents are marked by filled circles. This is a reprint of Figs. 57, 58, 59, 61,
and 62 of Deb (2001). Copyright John Wiley & Sons Limited, 2001. Reproduced with permission
solutions x(1,t) = (x1(1,t) , x2(1,t) ) and x(2,t) = (x1(2,t) , x2(2,t) ) are recombined taking
as the crossover point the second component, obtaining the offsprings x(1,t+1) =
(1,t) (2,t)
(2,t) (1,t)
(x1 , x2 ) and x(2,t+1) = (x1 , x2 ).
Linear crossover (C2 ) (Wright 1991): This operator creates three solutions from
two parents. The value of the ith component of the offsprings are obtained according to:
(1,t)
(2,t)
0.5 xi
+ xi
,
(1,t)
1.5xi
(2,t)
0.5xi
(1,t)
0.5xi
(2,t)
+ 1.5xi
Unlike the original version of this operator, we have used a slight modification
which consists of keeping the three offsprings instead of selecting the two best
ones. In Fig. 2, the offsprings are marked with empty circles.
Blend crossover (C3 ) (Eshelman and Schaffer 1993): This operator, also denoted BLX-, generates individuals according to the following formula (assuming
(1,t)
(2,t)
xi
< xi ):
(1,t)
(1 i )xi
(2,t)
+ i x i
96
parents are usually not close to each other, the operator tends to search through the
whole variable space. And when the algorithm iterates and the solutions tend to be
closer, the operator carries out a focused search. In Fig. 2, marked with a line is the
range where the offsprings are generated using a uniform distribution.
Simulated binary crossover (C4 ) (Deb and Agrawal 1995): This operator simulates
the behaviour of the single-point crossover operator on binary strings in the sense
that common interval schemata between the parents are kept in the offspring. It
works generating the components of the offsprings as follows:
(1,t+1)
(1,t)
(2,t)
xi
= 0.5 (1 + i )xi
+ (1 i )xi
,
(2,t+1)
(1,t)
(2,t)
xi
= 0.5 (1 i )xi
+ (1 + i )xi
,
where
(
i =
(2u) +1
1
1
( 2(1u)
) +1
if u 0.5,
otherwise.
For parameter , we have considered the value 20 as used in Deb et al. (2002) and
Zitzler et al. (2001). In Fig. 2, the line represents the probability density function
for generating offsprings in the corresponding interval: The higher the line, the
greater the probability of the offspring to be generated there.
4 The new Pareto based crossover operator
The new Pareto based crossover operator, PBC, is a uniform crossover operator which
has a different maximum range of variation depending on the quality of the solution.
The main idea of the operator is to use good parents (efficient ones) to improve the
quality of the offspring (exploitation) and to use not so good parents (non-efficient
ones) to explore the whole space (exploration).
More specifically, when pairs of non-efficient solutions are considered for
crossover, they are recombined with a BLX- with initially equal to 0.5. But
is slightly modified depending on the distance between the solutions in such a way
that, if the solutions are very close, the parameter is increased, and, if the solutions
are distant, is decreased, with the objective of keeping the capacity of exploration
more or less stable.
In any other case, two efficient solutions, or one efficient and the other nonefficient, are recombined generating points in intervals centred around them, with
the amplitude of the interval depending on both the solutions and the iteration. If
both solutions are efficient, the amplitude of the interval depends on the distance between them and on the iteration t. If only one of the solutions is efficient, the efficient
one behaves as in the previous case, and the non-efficient one has an amplitude of the
interval that only depends on the distance between the solutions. Also, in both cases,
with probability equal to 0.25, the centres of the intervals are interchanged with the
objective of increasing the capacity of sharing information between the solutions.
Let Pt be the current population in iteration t, POSt its Pareto optimal set, and
pt = |POSt |. In order to decide whether or not the parents are close to each other, a
fact that will be used in the design of the operator, we use the following process:
97
Step 1: Let dist(x, y) be the Euclidean distance between x and y. Calculate d (eff,t) ,
the mean distance between all pairs of solutions in POSt , and (eff,t) , the standard
deviation, according to:
d (eff,t) =
pt2
2
pt
v
u 2
(eff,t) = u
u 2
t pt pt
2
dist x(i,t) , x(j,t) d (eff,t) .
Step 2: Let f Neff and f (eff,t) be the amplitude factors associated to the non-efficient
and efficient solutions, respectively, calculated according to
f Neff = 1,
f (eff,t) = 1 bt/stepsIterc 0.11,
where stepsIter corresponds to the maximum number of iterations performed by the
algorithm divided by 10 and bc represents the floor function, i.e. the greatest integer
less than or equal to its argument. Observe that f (eff,t) is a decreasing step function
that takes values in [0.01,1].
The amplitude factors f (eff,t) and f Neff will act in such a way that, if the individuals are close, the factors extend the default amplitude of the interval, 1(i) =
(1,t)
(2,t)
3
xi |, i = 1, . . . , n, in which the components of the descendants will take
4 |xi
values. Otherwise, they will reduce the amplitude.
After the above establishments, let x(1,t) and x(2,t) be the parent solutions selected
for crossover. At that moment, and depending on the distance between x(1,t) and
x(2,t) and on the values of d (eff,t) and (eff,t) , the factors f (eff,t) and f Neff are both
multiplied by one of the following quantities:
(i)
(ii)
4
3
2
3
(iii)
(iv) (1 +
(v)
if d (eff,t) = 0 or (eff,t) = 0,
if dist(x(1,t) , x(2,t) ) < d (eff,t) 3 (eff,t) ,
(1
d 0.11
)
(eff,t)
d 0.11
)
(eff,t)
98
After these calculations and in order to carry out the crossover, three cases are
considered: neither solution is efficient, both solutions are efficient, and only one is
efficient.
Case 1: Neither of the parents is efficient. In this situation, the new components
(1,t+1)
(2,t+1)
xi
and xi
, will be generated taking two random values in the interval
(1,t)
xi
(1,t)
(2,t)
+ xi
2
x
4
1(i) f Neff , i
3
(2,t)
+ xi
2
4
1(i) f Neff .
3
h
xi 1(i) f (eff,t) , xih + 1(i) f (eff,t) , h = 1, 2,
where, when we are obtaining xi(h,t+1) , xih is equal to xi(h,t) with probability 0.75
(3h,t)
or equal to xi
with probability 0.25, h = 1, 2.
Case 3: Only one of the parents is efficient. This situation is similar to Case 2.
Assuming that x(1,t) is the efficient solution (the other case is analogous), then one
value is obtained in the interval
1
xi 1(i) f (eff,t) , xi1 + 1(i) f (eff,t) ,
(1,t)
(2,t)
2
xi 1(i) f Neff , xi2 + 1(i) f Neff ,
with probability
where xi2 is equal to xi(2,t) with probability 0.75 or equal to xi(1,t) with probability
0.25.
In all these situations, the solutions are randomly generated in the corresponding
intervals using the uniform distribution (i.e. using a constant probability density function in the interval). In all the cases, if the obtained solution is not feasible, another
one is generated in the same way.
From the former cases, the following key ideas can be observed: All the values of
the new components are obtained using the uniform distribution in an interval centred in (xi(1,t) + xi(2,t) )/2 or xih , and with a default amplitude equal to 43 1(i) or 1(i)
depending on whether Case 1, 2 or 3 holds. Our aim is to use non-efficient solutions to broadly explore the space and the efficient ones to maintain the capacity of
exploitation. Then, in the case of non-efficient solutions, their default amplitude is
increased or reduced by a maximal amount of 33%, maintaining an important capacity of exploration. On the other hand, in the case of efficient solutions, their default
amplitude is also multiplied by a factor that tends to zero when the number of iterations is advanced in such a way that initially it has also an exploratory capacity
which is subsequently substituted, when iterations proceed, by a higher capacity of
exploitation.
99
5 Computational experiment
In this section, the computational experiment we have carried out to test the performance of PBC is explained. We should remark that the aim of the paper is to compare the PBC with some of the existing crossover operators and not to create a new
Evolutionary Algorithm. Therefore, the comparison is accomplished using a nave
algorithm as the one shown in Fig. 1, and in which the variate step only involves
one of the crossover operators considered and no mutation operator is used.
All the calculations were carried out on a PC Pentium 2.66 Ghz with 512 MB of
RAM under Linux Mandriva 2006, and all programmes were coded in C language
and compiled with a GNU GCC compiler. A precision of 108 has been taken for all
arithmetical calculations, one unit of accuracy more than the one used in the Pareto
Fronts supplied by CEC (2007). All the codes used in the paper were written by
the authors, except the code for the hypervolume calculation that was obtained from
Fonseca et al. (2006b) based on Fonseca et al. (2006a), and all the codes for the
function evaluations that were extracted from the available codes provided in CEC
(2007).
This section contains four subsections. The first focuses on showing the performance measures used to accomplish the comparison of the results, and the second
shows the test problems that we have considered. In the third subsection, we describe
how the experiment is carried out and, finally, in the last part we report the obtained
results.
5.1 Measures for comparing the operators
In order to compare our crossover operator with the other operators pointed out before, we have considered three measures: hypervolume difference to a reference set
(CEC 2007; Huang et al. 2007), generational distance (Coello et al. 2007), and set
coverage (Zitzler 1989).
The outline of these measures is the following: Given P , the set of non-dominated
solutions resulting from the execution of an optimisation algorithm, and PF , its image in the objective space,
Hypervolume difference to a reference set (HD): The original hypervolume measure (Zitzler and Thiele 1999) calculates the volume covered by the hypercube
formed by the vectors of PF (considering that all the objectives are to be minimised) and a reference point. The reference point is placed in such a way so as to
be at least weakly dominated by every member in P , and can be found, for example, by constructing a vector of worst objective function values in PF . Since this
metric is not free from arbitrary scaling of objectives, we will normalise the objective values first. In order to obtain the value of the hypervolume difference, HD,
we calculate the difference between the hypervolume of a reference set contained
in PFtrue and the hypervolume of PF . This reference set consists of 500 points for
two objective problems and of 5000 points for three objective problems, they have
all been obtained from CEC (2007). For this measure, the smaller the value, the
better the population, in contrast to the original hypervolume measure.
100
Generational distance (GD): This measure, which also requires a reference set
contained in PFtrue to be known, reports how far, on average, PF is from PFtrue .
Mathematically, it is defined as:
P
( ni=1 di2 )1/2
,
GD =
|PF |
where |PF | is the number of vectors in PF and di is the Euclidean phenotypic
distance between each member, i, of PF and the closest member in PFtrue to that
member i. For this measure, the smaller the value, the better the population.
Set coverage (C): Let P1 and P2 the non-dominated sets resulting from the execution of two different algorithms. This measure calculates the proportion of solutions in set P2 which are weakly dominated ( means or =) by solutions in
set P1 :
C(P1 , P2 ) =
|{b P2 |a P1 , a b}|
.
|P2 |
Since this operator is not symmetrical, both C(P1 , P2 ) and C(P2 , P1 ) have to be
calculated. In the best situation, P1 is better than P2 if C(P1 , P2 ) is close to one
and C(P2 , P1 ) is close to zero. In general, P1 is better than P2 if C(P1 , P2 ) is
notably greater than C(P2 , P1 ).
5.2 The test problems
The use of a set of test problems helps to guarantee that the proposed operator will
confront efficient solution spaces of different characteristics. The test suites ZDT (Zitzler et al. 2000) and DTLZ (Deb et al. 2002) have been extensively used. However,
these suites have some drawbacks since the test problems share some characteristics
and often have some design flaws. Then, we have used the extended and rotated or
shifted version of some of these problems proposed by Huang et al. (2007). A short
description of their characteristics is shown in Table 1.
For problems 1 to 3 and 5, the number of objective functions is 2 and the number
of decision variables is 30; for problems 6 and 8, these numbers are equal to 3 and
10, respectively; and finally, problems 4 and 7 have 10 decision variables and 2 and
3 objective functions, respectively. In all of these test problems, the Pareto optimal
set is known. For a review on multiobjective test problems the reader is addressed to
Huband et al. (2007).
5.3 Selection operators
After applying the crossover operator, we conform a temporary population consisting
of the current one together with the new individuals obtained in order to apply the
selection process. We have used three different selection operators: two of them of
the roulette wheel selection type (surviving and death selection) and the other of
the elitist type. The operators use a ranking of the individuals of the population. To
establish this ranking, we have used the one proposed by Goldberg (1989), but any
other can be used, for example, the one introduced by Fonseca and Fleming (1993)
101
Objective
problem
1. S-ZDT1
2. S-ZDT2
3. S-ZDT4
Number of
Separability
Modality
Geometry
Convex
variables
f1
f2
>1
f1
f2
>1
f1
f2
>1
Concave
Convex
4. R-ZDT4
f1:2
>1
NS
Convex
5. S-ZDT6
f1
Concave
f2
>1
6. S-DTLZ2
f1:3
>1
Concave
7. R-DTLZ2
f1:3
>1
NS
Concave
8. R-DTLZ3
f1:3
>1
Concave
or even the raw fitness defined in Zitzler et al. (2001) for the algorithm SPEA2. The
ranking proposed by Goldberg assigns a value equal to 1 to the efficient solutions,
then these solutions are removed from the population. The efficient solutions of this
new set are assigned ranking 2, and the process continues until there are no solutions
left.
The selection operators considered are the following:
Surviving selection (S1 ) (Michalewicz 1996) (pp. 34): This operator assigns a
higher probability to those individuals with smaller ranking. In iteration t, the
selection probability pi (t) is defined for each individual x(i,t) Pt according
to:
pi (t) = P
rmax + 1 ri
,
x(j,t) Pt (rmax + 1 rj )
where rj is the ranking value of individual x(j,t) in Pt and rmax = maxj {rj }. Then,
using these probabilities, a roulette wheel selection is performed in order to fill the
whole new population.
Death selection (S2 ) (Michalewicz 1996) (pp. 62): In this case, each individual
receives a probability of not surviving (a higher probability to those individuals
with greater ranking) defined according to:
pi (t) = P
ri
x(j,t) Pt rj
102
Elitist selection (S3 ): Taking into account the size of the population, the spare
individuals with higher ranking, i.e. the worst solutions, are removed from the
population without random selection. The process is similar to the selection operator used in the algorithm NSGA-II (Deb et al. 2002): It uses a crowding distance to
keep a diverse front by making sure each member stays a crowding distance apart.
This keeps the population diverse and helps the algorithm to explore the fitness
landscape.
5.4 Implementation and execution
For implementing the experiment we have considered a usual fixed population size
equal to 100 individuals as in Zitzler et al. (2001) and Deb et al. (2002). The comparison of our PBC with C1 , C2 , C3 , and C4 is carried out taking into account different
scenarios. A scenario is defined by any combination of the levels of the factors: number of iterations and selection operator. The number of iterations takes three different
values (levels of this factor): 100, 500 and 1000 times which represent 104 , 5 104
and 105 function evaluations since, for each individual x Pt , the probability of
crossover is 1, which means that in every generation all the individuals are recombined. Also, when two individuals are selected for crossover, all their components
are recombined. The factor selection operator has three different levels which correspond to the three different selection operators of the previous subsection. Since both
factors have 3 levels, the number of different scenarios is equal to 9.
For each problem, 50 initial populations are generated. We apply the algorithm
using a different crossover operator each time, considering each of the 9 different scenarios. By doing so, we obtain 50 final populations for each combination of
crossover operator and scenario. In each of these populations, we obtain the set of efficient solutions, P , and we calculate the measures of Sect. 5.1. For calculating HD,
for each problem and number of iterations, the reference point is placed by obtaining the worst objective function value among all the P populations obtained with
the different crossover and selection operators. That is to say, for each problem the
same reference point is used for all the P once the number of iterations has been
fixed.
Figures 3 to 11 summarise the results for the three measures considered: Figs. 3,
4 and 5 for a number of iterations equal to 100; Figs. 6, 7 and 8 for a number of
iterations equal to 500, and finally, Figs. 9, 10 and 11 for a number of iterations equal
to 1000. The figures show the mean value of the 50 executions in each scenario. To
be able to slightly distinguish the results in Figs. 4, 7 and 10 (those corresponding
to the measure GD) the scale of edge y is limited to 500. In this measure and for
Problem 8 (R-DTLZ3), values around 2500 are reached in some scenarios. Some
relevant results for Problem 8 and the measure GD are the following: In the case of
100 iterations, the best value of GD is reached by C1 for all the selection operators
and the second best by PBC. For 500 iterations, the best is C1 for selections S1 and
S2 , and PBC for selection S3 . The second best is PBC for selections S1 and S2 , and
C1 for selection S3 . And for 1000 iterations, the best crossover operator is always
PBC followed by C1 .
Since only the mean values themselves are not enough to decide whether an operator is better for a given measure than other or not, we have considered carrying
103
Fig. 3 Mean values of hypervolume difference (HD) for each scenario and crossover operator considered.
Results for 100 iterations
Fig. 4 Mean values of generational distance (GD) for each scenario and crossover operator considered.
Results for 100 iterations
104
Fig. 5 Mean values of coverage for each scenario; C(PBC, Ci ) in grey and C(Ci , PBC) in white. The
black dot represents the difference C(PBC, Ci ) C(Ci , PBC). Results for 100 iterations
out a statistical test to determine this fact (Casella and Berger 2002). To perform
statistical hypothesis tests for comparing PBC with Ci , i = 1, 2, 3, 4, and with the
objective of determining the effect of the crossover when using them in the algorithm
starting from identical initial conditions, the data are paired in the following way: For
each scenario, the measure obtained in the resulting population using crossover Ci is
paired with the measure obtained in the resulting population using crossover PBC.
Two different hypothesis tests are performed. For each measure, the first hypothesis test is H0 : PBC performs worse than or equal to Ci versus H1 : PBC performs
strictly better than Ci , i = 1, 2, 3, 4. Note that this hypothesis test is the one that
least favours our operator PBC, since the fact of PBC being strictly better than Ci
is placed in the alternative hypothesis. The second hypothesis test, applied when the
former null hypothesis H0 is accepted, is H0 : PBC performs equally to Ci versus H1 :
PBC is different from Ci , i = 1, 2, 3, 4. For both tests, the significance level is equal
to 0.05.
In Table 2, the results of these tests are shown. A + sign appears when the first
null hypothesis is rejected (and so, PBC is strictly better than Ci ). If the first null
hypothesis is accepted, an = sign appears when the second null hypothesis H0 :
PBC is equal to Ci is accepted (then, both operators PBC and Ci have an equivalent
behaviour); and a sign otherwise (which means that PBC cannot be considered
equal to or better than Ci , i = 1, 2, 3, 4). Then, in this table, the fewer signs
105
Fig. 6 Mean values of hypervolume difference (HD) for each scenario and crossover operator considered.
Results for 500 iterations
Fig. 7 Mean values of generational distance (GD) for each scenario and crossover operator considered.
Results for 500 iterations
106
Fig. 8 Mean values of coverage for each scenario; C(PBC, Ci ) in grey and C(Ci , PBC) in white. The
black dot represents the difference C(PBC, Ci ) C(Ci , PBC). Results for 500 iterations
Fig. 9 Mean values of hypervolume difference (HD) for each scenario and crossover operator considered.
Results for 1000 iterations
107
Fig. 10 Mean values of generational distance (GD) for each scenario and crossover operator considered.
Results for 1000 iterations
Fig. 11 Mean values of coverage for each scenario; C(PBC, Ci ) in grey and C(Ci , PBC) in white. The
black dot represents the difference C(PBC, Ci ) C(Ci , PBC). Results for 1000 iterations
S3
S2
+ : 0.992 0.004
+ : 0.730 0.042
+ : 0.122 0.013
+ : 48.13 7.500
+ : 0.047 0.004
: 130.9 33.06
HD
GD
+ : 0.783 0.039
+ : 0.418 0.054
+ : 0.301 0.016
: 17.43 15.19
+ : 0.062 0.010
: 202.9 46.63
HD
GD
+ : 0.734 0.043
+ : 0.450 0.051
+ : 0.325 0.014
+ : 32.19 16.03
+ : 0.122 0.014
: 164.2 41.62
HD
S1
+ : 0.993 0.004
+ : 71.79 9.764
+ : 0.120 0.013
+ : 0.849 0.038
+ : 84.05 13.14
+ : 0.306 0.017
+ : 0.776 0.043
+ : 142.6 22.96
+ : 0.320 0.015
+ : 0.856 0.034
+ : 182.1 33.24
+ : 0.102 0.009
+ : 0.732 0.048
+ : 79.26 19.51
+ : 0.109 0.009
+ : 0.674 0.042
+ : 87.81 15.14
+ : 0.095 0.005
100
100
1000
No. iterations
500
C2
No. iterations
C1
PBC versus
GD
Mea.
Sel.
+ : 0.957 0.016
+ : 355.5 66.16
+ : 0.181 0.017
+ : 0.827 0.033
+ : 215.5 48.50
+ : 0.236 0.016
+ : 0.766 0.039
+ : 271.4 50.36
+ : 0.182 0.013
500
+ : 0.957 0.016
+ : 376.7 70.74
+ : 0.172 0.016
+ : 0.789 0.033
+ : 270.4 60.50
+ : 0.214 0.018
+ : 0.672 0.039
+ : 374.4 74.66
+ : 0.172 0.015
1000
Table 2 Results of the hypothesis tests performed considering all problems simultaneously. A + sign means that the hypothesis PBC performs better than Ci is accepted.
An = means that the hypothesis PBC performs equally to Ci is accepted. And a represents that the hypothesis PBC performs worse than Ci is accepted. The
numbers represent the 95% confidence interval for the mean of the paired difference of measures MCi MPBC , by means of the mean value and the semiamplitude
108
Apendice A.3 A crossover operator ...
S3
S2
+ : 0.285 0.066
+ : 0.407 0.065
=: 0.001 0.002
+ : 115.1 29.99
+ : 0.007 0.002
+ : 102.8 24.88
HD
GD
+ : 0.565 0.061
+ : 0.509 0.058
+ : 0.008 0.004
+ : 220.4 51.50
+ : 0.017 0.002
+ : 78.02 16.98
HD
GD
+ : 0.157 0.082
+ : 0.452 0.062
=: 0.002 0.006
+ : 155.1 39.91
+ : 0.028 0.004
+ : 63.09 14.26
HD
S1
+ : 0.231 0.066
+ : 84.12 23.11
+ : 0.002 0.002
+ : 0.532 0.061
+ : 299.3 70.25
: 0.008 0.006
+ : 0.087 0.082
+ : 211.6 55.78
: 0.022 0.008
+ : 0.768 0.050
+ : 107.5 26.60
+ : 0.134 0.010
+ : 0.667 0.057
+ : 76.15 22.94
+ : 0.141 0.010
+ : 0.688 0.050
+ : 149.0 33.16
+ : 0.180 0.013
100
100
1000
No. iterations
500
C4
No. iterations
C3
PBC versus
GD
Mea.
Sel.
Table 2 (Continued)
+ : 0.950 0.013
+ : 203.7 41.60
+ : 0.162 0.015
+ : 0.702 0.047
+ : 90.07 28.40
+ : 0.295 0.015
+ : 0.667 0.045
+ : 209.5 43.90
+ : 0.358 0.015
500
+ : 0.962 0.013
+ : 215.8 43.53
+ : 0.140 0.014
+ : 0.603 0.047
+ : 127.3 27.63
+ : 0.285 0.015
+ : 0.543 0.045
+ : 284.4 61.36
+ : 0.350 0.013
1000
109
appear, the better the operator PBC is. With the same codification, in Tables 3 to 6
the results for all the problems appear separately.
Table 2 also shows, for every combination of crossover Ci , i = 1, 2, 3, 4, and
scenario, the confidence interval for the mean of the paired difference of measures
MCi MPBC , where MCi is the hypervolume difference or the generational distance
calculated in the final population using crossover Ci in a specific scenario and MPBC
is the measure calculated in the final population using PBC in the same scenario.
Since for both measures the smaller is the better, when the interval lays above 0, it
means that MCi > MPBC , PBC performing then better than Ci for that measure in
that scenario. In the case of coverage, for each scenario, we have calculated the interval for the mean of the difference C(PBC, Ci ) C(Ci , PBC). In this case, when
the interval lays above 0, we can also say that PBC performs better than Ci in this
measure.
5.5 Results from the experiment
First and foremost, we have to point out that, in the great majority of the scenarios
and for both hypothesis tests, the decision to accept or reject the corresponding null
hypothesis is taken with p-values higher than 30% (accepting H0 ), or of the order of
105 or smaller (rejecting H0 ). That is to say, there are not many indecisive situations
for accepting or rejecting H0 with p-values close to the chosen significance level.
Before starting the analysis of the results obtained, note that, since there are three
measures for judging the behaviour of the crossover operators to be compared, the decision of which crossover operator behaves better is itself a multiobjective problem.
Then, we have decided to make the following compromise decision: For commenting
on the remaining tables we have organised the results in such a way that if the difference between the number of + and signs in a scenario is positive, we will say
that PBC performs better than Ci in that scenario; if that difference is negative, we
will say that Ci performs better than PBC in that scenario; Ci and PBC performing
in an equivalent way otherwise.
In Table 2, it can be observed that there is no combination of scenario and
crossover for which PBC performs worse than Ci in the three measures simultaneously. It can be observed that for C2 and C4 , under the 9 scenarios considered,
PBC always obtains a behaviour strictly superior in the three measures considered.
With respect to C1 , the only measure in which C1 is superior to PBC is in the generational distance with 100 iterations with all the selection operators, and with 500
iterations with selection operator S2 ; this fact is due mainly to the values obtained in
this measure for problem R-DTLZ3. With respect to hypervolume and coverage, the
values obtained with PBC are better than those obtained with C1 in all the scenarios.
In relation to C3 , this operator presents a better behaviour than PBC only in hypervolume in two of the nine scenarios considered, PBC being better than C3 in the other
measures in most cases and in two cases equal to C3 . Also, as it was commented at
the beginning of the subsection, the confidence intervals corroborate that there are no
indecisive situations in which the p-value of the test is close to the significance level.
Then, globally, we can conclude that the new operator PBC has clearly a better behaviour than Ci , i = 1, 2, 3, 4, when considering all the measures together, according
to the compromise solution established.
111
S1
S2
S3
Measure
C1
C2
No. iterations
No. iterations
No. iterations
No. iterations
100
500
1000
100
500
1000
100
500
1000
100
500
1000
HD
GD
HD
GD
HD
GD
C3
S1
S2
S3
C1
C4
C3
C4
HD
GD
HD
GD
HD
GD
However, when considering the problems separately, there exist some scenarios for
some problems in which the behaviour of PBC is not the best, and then, we comment
on the previous results separately for each problem. If we observe Figs. 3 to 11 and
Tables 3 to 6, we can conclude the following:
S-ZDT1 If we observe Figs. 3, 6 and 9 which correspond to HD and with regard to
this problem, our operator PBC obtains better values than C1 , C2 and C4 . For C3 ,
the values are too close to appreciate the difference in the figures. This also happens
in Figs. 4, 7 and 10 due to the high values of GD obtained for problems S-ZDT4,
R-DTLZ2 and R-DTLZ3. With respect to the coverage measure, Figs. 5, 8 and 11
clearly show that PBC presents better behaviour than the other operators. In a more
rigorous way, if we look at the results of the hypothesis tests performed in Table 3,
we can conclude that for this problem PBC clearly outperforms Ci , i = 1, 2, 3, 4.
There is only one scenario in which a sign appears, which corresponds to C3 ,
112
S1
S2
S3
Measure
C1
C2
No. iterations
No. iterations
No. iterations
No. iterations
100
500
1000
100
500
1000
100
500
1000
100
500
1000
HD
GD
HD
GD
HD
GD
C3
S1
S2
S3
C1
C4
C3
C4
HD
GD
HD
GD
HD
GD
but the other two measures have a + and an = sign, and so PBC and C3 can
be considered equivalent in this scenario. In the other scenarios, the number of +
signs is 2 or 3.
S-ZDT2 Figures 3, 6 and 9 for HD and Figs. 5, 8 and 11 for coverage show that PBC
only alternates the first position with C3 , and only in two scenarios (S1 with 500
and 1000 iterations). When considering the hypothesis tests performed, as Table 3
shows, for this problem PBC clearly outperforms Ci , i = 1, 2, 4. C3 outperforms
PBC in scenarios (S1 , 500 and 1000 iterations) for all the measures. In the other
seven scenarios, PBC clearly outperforms C3 in 4 cases, PBC performs better than
C3 in two cases, and both are equivalent in one case.
S-ZDT4 If we observe the values of HD corresponding to this problem in Figs. 3, 6
and 9, it can be noticed that PBC obtains better values than C1 , C2 and C4 . With
respect to C3 , it presents values which are close but, in general, slightly worse than
those obtained with PBC. Something similar happens with respect to GD (Figs. 4,
113
S1
S2
S3
Measure
C1
C2
No. iterations
No. iterations
No. iterations
No. iterations
100
500
1000
100
500
1000
100
500
1000
100
500
1000
HD
GD
HD
GD
HD
GD
C3
S1
S2
S3
C1
C4
C3
C4
HD
GD
HD
GD
HD
GD
7 and 10) and coverage (Figs. 5, 8 and 11). On the other hand, the hypothesis tests
presented in Table 4 show that PBC clearly performs better than Ci , i = 1, 2, 3, 4
for all the scenarios, except when compared to C3 in scenarios (S1 , 1000 iterations)
and (S3 , 1000 iterations) where they can be considered equivalent.
R-ZDT4 It can be observed in Figs. 3, 4, 6, 7, 9, and 10 that the only operator that
presents values of these measures close but, in general, slightly worse than those
obtained with PBC is C3 . With respect to coverage, in Figs. 5, 8 and 11, the only
operators and scenarios that present values better than those obtained with PBC are
C2 (S1 , 100 iterations) and C3 (S1 500 and 1000 iterations). Also, attending to the
results of Table 4, we can say that PBC clearly performs better than Ci , i = 1, 2, 4 in
all the scenarios. With respect to C3 , PBC clearly outperforms C3 in five scenarios,
in one scenario PBC performs better than C3 and in the remaining three scenarios
PBC and C3 are equivalent.
114
S1
S2
S3
Measure
C1
C2
No. iterations
No. iterations
No. iterations
No. iterations
100
500
1000
100
500
1000
100
500
1000
100
500
1000
HD
GD
HD
GD
HD
GD
C3
S1
S2
S3
C1
C4
C3
C4
HD
GD
HD
GD
HD
GD
S-ZDT6 After examining Figs. 3 to 11 and Table 5, we observe that when comparing
PBC with Ci , i = 1, 2, 4, PBC clearly outperforms the other operators since all the
signs are +. When comparing PBC with C3 , C3 outperforms PBC in four scenarios, PBC outperforms C3 clearly in two scenarios. So, globally, in this problem, C3
outperforms PBC.
S-DTLZ2 In Figs. 3, 6 and 9, it can be noticed that the operator C2 obtains better
values in the measure HD than PBC in three out of nine scenarios, and C3 obtains
better values than PBC in four out of nine scenarios. However, with respect to coverage, in Figs. 5, 8 and 11, it can be observed that the values obtained with PBC are
better than those obtained with all the other operators. These facts are also reflected
in the hypothesis tests of Table 5. For this problem, PBC performs better than Ci ,
i = 1, 2, 3, 4 in all the scenarios, with only some signs appearing in the measure
HD.
115
116
considered (hypervolume difference, generational distance and set coverage) than the
other operators.
Considering the mutation operator proposed by the authors in Alberto and
Mateo (2008) and this new crossover operator, the next step is to carry out a
study of some of the well-established algorithms in the literature (NSGA-II Deb
et al. 2002, SPEA2 Zitzler et al. 2001, etc.) by substituting the operators proposed by their authors with our operators and some of the currently most promising algorithms as those based on Differential Evolution for Multiobjective Optimisation. This approach was first introduced for uniobjective optimisation problems by Storn and Price (1995) and subsequently adapted for multiobjective optimisation problems. An updated survey can be found in Mezura-Montes et al.
(2008).
Acknowledgements This research work has been supported by the Spanish Ministry of Education and
Science under grant MTM2007-66893.
The authors are also grateful to both the editor and referees for their comments, which greatly improved
the presentation of this paper.
References
Alberto I, Mateo PM (2008) Using Pareto optimality for defining the mutation operator step size. Technical
report. In: Prepublicaciones del seminario matemtico Garca Galdeano, University of Zaragoza, 8,
pp 119
Casella G, Berger RL (2002) Statistical inference, 2nd edn. Duxbury advanced series. Duxbury, Pacific
Grove
CEC (2007) Special session and competition on performance assessment of multi-objective optimization
algorithms. Available in web page http://www3.ntu.edu.sg/home/epnsugan/. Accessed August 2008
Coello CA (2005) Recent trends in evolutionary multiobjective optimization. In: Abraham A, Jain L,
Goldberg R (eds) Evolutionary multiobjective optimization: theoretical advances and applications.
Springer, London, pp 732
Coello CA (2008) EMOO repository (online). Available in http://delta.cs.cinvestav.mx/~ccoello/EMOO/.
Accessed September 2008
Coello CA, Lamont GB, Van Veldhuizen DA (2007) Evolutionary algorithms for solving multi-objective
problems, 2nd edn. Springer, Berlin
Deb K (2001) Multi-objective optimization using evolutionary algorithms, 2nd edn. Wiley, Chichester
Deb K, Agrawal S (1995) Simulated binary crossover for continuous search space. Complex Syst 9(2):115
148
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm:
NSGA-II. IEEE Trans Evol Comput 6(2):182197
Deb K, Thiele L, Laumanns M, Zitzler E (2002) Scalable multi-objective optimization test problems. In:
Congress on evolutionary computation CEC2002, vol 1. IEEE Press, Piscataway, pp 825830
Eiben AE, Smith JE (2007) Introduction to evolutionary computing, 2nd edn. Springer, Berlin
Eshelman LJK, Schaffer JD (1993) Real-coded genetic algorithms and interval-schemata. In: Whitley LD
(ed) Foundations of genetic algorithms II. Morgan Kaufmann, Los Altos, pp 187202
Fonseca CM, Fleming PJ (1993) Genetic algorithms for multi-objective optimization: formulation, discussion and generalization. In: Forrest S (ed) Genetic algorithms: proceedings of the fifth international
conference. Morgan Kaufmann, San Mateo, pp 416423
Fonseca CM, Paquete L, Lopez-Ibanez M (2006a) An improved dimension-sweep algorithm for the hypervolume indicator. In: Congress on evolutionary computation CEC2006. IEEE Press, Vancouver,
pp 11571163
Fonseca CM, Paquete L, Lopez-Ibanez M (2006b) Computation of the hypervolume indicator, codes available in web page http://sbe.napier.ac.uk/~manuel/hypervolume. Accessed August 2008
Goldberg DE (1989) Genetic algorithms in search, optimization and machine learning. AddisonWesley,
Reading
117
A.4.
119
120
J Heuristics
DOI 10.1007/s10732-011-9156-4
Abstract Evolutionary Algorithms, EAs, try to imitate, in some way, the principles
of natural evolution and genetics. They evolve a population of potential solutions to
the problem using operators such as mutation, crossover and selection. In general, the
mutation operator is responsible for the diversity of the population and helps to avoid
the problem of premature convergence to local optima (a premature stagnation of the
search caused by the lack of population diversity).
In this paper we present a new mutation operator in the context of Multi-Objective
Evolutionary Algorithms, MOEAs, which makes use of the definition of Pareto optimality and manages the maximal amplitude or maximal step size of the mutation
according to the Pareto layer of the individual and also of the iteration number. The
behaviour of our mutation operator reveals that the use of variation operators which
take into consideration the quality of the solutions, in terms of Pareto dominance or
Pareto layers, can help to improve them. The Pareto based mutation operator proposed is compared with four well established and extensively used mutation operators: random mutation, non-uniform mutation, polynomial mutation and Gaussian
mutation. The accomplished experiments reveal that our mutation operator performs,
in most of the test problems considered, better than the others.
Keywords Multi-objective decision making Metaheuristics Evolutionary
algorithms
121
1 Introduction
The formulation of real problems fits the multi-objective optimisation field in a natural way because, in general, these complex real problems take into consideration
more than one criterium when comparing or measuring the quality of the candidate
solutions. Besides, these formulations become so complicated that classical techniques do not allow us to solve them directly. As a consequence, Operations Research
practitioners must resort to EAs.
The enormous amount of papers on Evolutionary Algorithms that can be found
in the literature shows that they can be considered as one of the most appropriate
methods for solving real complex optimisation problems with one or more objective
functions. A simple schema of an EA is shown in Fig. 1. For an overall view on
this field, the reader is referred, for example, to the books: Holland (1975), Goldberg
(1989) and Michalewicz (1996) and a more recent book with a complete description
of the different techniques by Eiben and Smith (2007).
As for the topic of multi-objective optimisation, a large number of papers and
different EA implementations have been written since the pioneering Vector Evaluated Genetic Algorithm (VEGA) was presented by Schaffer in his PhD in Schaffer
(1984, 1985). The books by Coello et al. (2007) and Deb (2001) and the web site by
Coello (2009), with more than 4 300 papers, provide a good, complete and updated
introduction as well as a broad list of references about Evolutionary Multi-Objective
Optimisation.
In general EAs and MOEAs are highly time consuming algorithms so a great
amount of the research on them is focused on developing algorithms reaching better solutions in a faster way. The elements researchers try to improve are solution representation, the management of solutions, the design of operators (mutation,
crossover, selection), techniques for improving the coverage of the Pareto front, and
so on. However, the number of papers devoted to building variation operators, mutation and crossover, that bear in mind the specific issues of Multi-Objective Optimisation Problems is scarce. On reading recent publications, we can find different
works devoted to the mutation operator (the majority considering the single objective case), operators which are designed taking characteristics from other kinds of
algorithms like in Xing et al. (2009), where they use ideas from immune systems,
calculating the distribution of the values of the variables for guiding the mutation. In
the Estimation of Distribution Algorithms, Larraaga and Lozano (2002) instead of
mutating individuals by means of the perturbation of current values they try to learn
Fig. 1 General Schema of an
Evolutionary Algorithm
122
the locations of the most promising regions of the search space in order to sample
in them. In Yuen and Chow (2009a, 2009b), the amplitude of the mutation depends
on an estimation of the diversity of the solution space previously visited. Deep and
Thakur (2007) present a mutation operator based on a potential distribution. Other
works define operators that manipulate the mutation probability: Oliveto et al. (2009)
and Gomes et al. (2008) establish the mutation probabilities based on a predefined
ranking on the value of the objective function: the worse the value of the objective
function, the greater the mutation probability and viceversa. Similarly, Zhang et al.
(2007) settle the mutation and crossover probabilities by means of a fuzzy system
based on the size of some clusters built with the best solutions of the population.
Other works define mutation operators by means of the combination of other existing
ones. Some examples of these are Xue et al. (2005); Yang et al. (2005); Dong et al.
(2007); Teo et al. (2007); Huang et al. (2007b); Fu et al. (2008); Chen and Lu (2008);
Pant et al. (2009).
The mutation operator may be considered an important element in the design of
the EA because it helps to create diversity in the population. In the case of real coded
EAs, the control of the step size/variance is a very important issue in the design of
the mutation operator. As it will be shown, the new operator introduced in this paper
presents a better behaviour than the usual ones.
The main novelty of our operator is the fact that it uses the quality of the solutions,
measured in terms of the Pareto layer where the solution is located, for modulating the
maximal amplitude of the mutation. In particular, it shows a dynamical behavior in
two senses. On the one hand, it has a deterministic step size control, since it depends
on the iteration. On the other hand, it takes into account the quality of the solution
to be mutated (therefore, the evolution of the algorithm) on the basis of the Pareto
layer introduced by Goldberg (1989) in which the solution is located, following the
idea of the heuristic shrink the step size when making progress, expand when stuck.
This means that good solutions will be used for exploitation while not so good
ones will be used for exploration.
The proposed operator is compared with four well-known classical mutation operators that can be found in the literature and it is also incorporated in a well known
MOEA, N SGA-I I , in order to show how the algorithm is improved.
The paper is organised as follows: In the next section we will present the definitions and notations on Multi-Objective Problems that we will later use. In Sect. 3,
we present four common mutation operators we will use so as to compare them with
the new mutation operator. Section 4 is devoted to the explanation of this new mutation operator. In Sect. 5 we report the elements that conform the computational
experiments (measures taken for making the comparisons, test problems, selection
operators, mutation operator parameter settings and implementation of the experiments) as well as the results obtained. Finally, the conclusions and future research
lines are presented in Sect. 6.
123
prove some of them causes some others to worsen. So, by means of optimising we
mean finding solutions which would provide acceptable values for all objective functions to the decision maker. More formally, a Multi-Objective Optimisation Problem
(MOOP) can be defined, without loss of generality, in the following way:
min f(x) = (f1 (x), . . . , fm (x))
s.t. x = (x1 , . . . , xn ) D Rn ,
where f1 (x), . . . , fm (x) are the functions to be minimised, x = (x1 , . . . , xn ) is the
decision variable vector and 6= D Rn is the feasible space. From now on, all
the definitions given are supposed to be for minimization problems, without loss of
generality.
As we have pointed out before, in multi-objective optimisation it is usually impossible to find a solution simultaneously optimising all the objective functions. Instead, algorithms attempt to find a set of points known as the Pareto optimal set.
These points verify that there is no other feasible solution which strictly improves
one component of the objective function vector without worsening at least one of
those remaining.
The concept of Pareto optimality or Pareto efficiency is based on the concept of
dominance:
Definition 1 If given a solution y, there exists another solution x such that j =
1, . . . , m fj (x) fj (y) and j {1, . . . , m} such that fj (x) < fj (y), then we will
say that solution x dominates solution y (denoted by x y). If given a solution y,
there exists another solution x such that j = 1, . . . , m fj (x) fj (y), then we will
say that solution x weakly dominates solution y (denoted by x y).
Therefore, a formal definition of Pareto optimality or Pareto efficiency is the following:
Definition 2 A solution x D is said to be Pareto optimal or efficient if and only if
@y D such that y x.
Definition 3 The real Pareto optimal set will be denoted with P true . The image of
P true in the objective function space is called Pareto front and it will be denoted with
P F true .
The mutation operator we propose considers the quality of the solution in terms of
its efficiency level. In this sense, we will need a ranking in the solution set which takes
into account if one solution is more efficient than another or not. Considering this,
we could use, for example, the rankings proposed by Goldberg (1989), by Fonseca
and Fleming (1993), by Zitzler et al. (2001), etc. The first one assigns a value equal
to 1 to the efficient solutions (1st Pareto layer), then these solutions are removed
from the population. The efficient solutions of this new set are assigned rank 2 (2nd
Pareto layer), and the process continues until there are no solutions left. The second
ranking was defined by Fonseca and Fleming: An individuals rank is equal to one
124
plus the number of individuals in the current population that dominate it. By doing so,
the non-dominated solutions are assigned a rank equal to 1, and the dominated ones
are assigned values of rank between 2 and the population size minus one. The last
ranking, proposed by Zitzler et al. (2001) for their algorithm SPEA2, raw fitness, first
calculates for each individual the number of solutions that it dominates. After that,
the raw fitness for a solution is obtained adding these previously calculated values for
all the solutions that dominates it. In this ranking the efficient solutions obtain a rank
value equal to 0.
3 Mutation operators
Among the classical mutation operators that can be found in the literature, we have
considered four of them. All correspond to unary operators (mutation operators that
act only over one individual at each time), as is the new method proposed in this
paper. The first one has no adaptive behaviour, it has been selected because it is the
simplest and one of the first operators proposed in the literature. The second mutation
operator allocates a higher probability of mutation to those solutions closer to the
parent, but this probability does not vary with time. It has been used in algorithms
such as SPEA2 by Zitzler et al. (2001) and N SGA-I I by Deb et al. (2002a) as
well as in many other algorithms. The third mutation operator works as the previous
one, assigning a higher probability of obtaining individuals closer to the parents than
away from them, but it also controls the amplitude of the mutation according to the
iteration: the more iterations, the smaller the probability of obtaining solutions far
away from the parents. For the single objective case it has been reported that this
operator presents very good results and it is even used as the principal element for the
design of new algorithms as for example in Zhao et al. (2007) and Deep and Thakur
(2007). As well as the previous one, it constitutes a broadly used operator in the
single and multi-objective cases. Finally, the fourth mutation operator, the Gaussian
mutation operator presented by Schwefel (1981, 1995), is the main variation operator
in, for instance, Evolution Strategies. Its main characteristic, in the most commonly
used version, is the fact that it jointly codifies the individuals and their mutation step
sizes. Furthermore, the evolution of individuals considers both the individuals as well
as the corresponding mutation step sizes. Gaussian mutation operators of different
kinds have not only been broadly used in single optimisation problems but also in
the design of multi-objective evolutionary algorithms, see for instance Knowles and
Corne (2000); Abbass and Sarker (2002); Dong et al. (2007); Yang et al. (2005).
1. Random Mutation Operator (RMO) (Michalewicz 1996, p. 102 and Deb 2001,
p. 118). This operator shows the simplest mutation scheme. In its original version
(t)
(t)
by Michalewicz (1996), given an individual x(t) = (x1 , . . . , xn ) belonging to the
(L) (U )
tth population Pt , it creates a uniform distributed value in the interval (xk , xk ),
(L)
(U )
where xk and xk are the lower and upper bounds, respectively, for component
k (k = 1, . . . , n). We will use a modified version introduced in Deb (2001) in
which the new value of a mutated component of x(t) is created in the neighbourhood of the parent solution according to:
(t+1)
xk
(t)
(U )
= xk + u 1 (xk
(L)
xk ),
125
(2 u)1/(+1) 1,
if u < 0.5,
1 [2 (1 u)]1/(+1) , if u 0.5,
b
(t+1)
(t)
(U )
(L)
xk
= xk + xk xk
1 u(1t/tmax ) ,
where u is a random number in [0, 1], tmax is the maximum number of iterations
allowed, is +1 or -1, each with probability 0.5, and b is a system parameter
determining the degree of dependency on the iteration number. Parameter b will
be fixed in Sect. 5.4.
4. Gaussian Mutation Operator (GMO) Schwefel (1981) and Beyer and Schwefel
(2002). The variant of the Gaussian operator we will use is one of the standards
in Evolution Strategies (ES). Its main difference with regard to the previous operators lies in the fact that individuals are represented by two vectors, one of which
represents a point in the search space, as usual, and the second one is a vector of
standard deviations, usually named strategy parameter vector which contains, in
some sense, the mutation step size. Additionally, when the individuals are evolved,
they evolve all the representation, the part corresponding to the solution and the
(t)
(t)
(t)
(t)
one corresponding to the standard deviations. If (x1 , . . . , xn , 1 , . . . , n ) represents an individual and its strategy parameters, the mutation operator works as
follows:
(t+1)
= k e
(t)
0 z+ z
k
(t+1)
= xk + k
(t)
(t+1)
xk
k = 1, . . . , n
zk0 ,
k = 1, . . . , n,
where z, zk , zk0 denote random numbers drawn from a Gaussian distribution with
zero mean and standard deviation 1. These kinds of variation operators in which
126
some parameters are co-evolved with the solutions are named self-adaptive mutation operators. In this case, the mutation step sizes are co-evolved with the solutions. In the above formulae, parameters and 0 can be interpreted as a sort
of learning rate, as in neural networks. According to Schwefel (1995), a good
heuristic for the choice of these constants is:
1
=p ,
2 n
1
0 =
.
2n
(t)
127
128
of (r); but if the rank increases a little then, the value of (r) increases very fast to
1. In the most extreme situation, if we consider a curve on the bottom-right side, the
solutions maintain a value of (r) close to zero for moderately high values of rank;
only when the value of the rank reaches high values, does the value of (r) increase
in a significant way. It can be observed that, if parameter is adjusted properly we
can obtain similar lines with all three options. Therefore, any one could be a valid
choice.
Taking into account the desired qualities for function (r), from among these three
alternatives we will select the last one, (r) = (1 e(r1) )/(1 e(rmax 1) ). The
behaviour of the curves is symmetrical with respect to the line that goes from (0, 0) to
(rmax , 1), so it is very easy to interchange the commitment between good and bad
solutions. Considering, as well, the range of variation of in 1 1 (or even
in a shorter range since the values beyond [0.5, 0.5] really represent very extreme
tradeoffs between bad and good solutions) we can obtain a representative set of
curves that shows all the tradeoffs between good and bad solutions.
As we have just established, (r) controls the maximum amplitude of the individual mutations in the sense that it will give higher maximum mutation amplitude
to those with worse ranks (higher rank values) and smaller values for individuals
with good rank values (small rank values). This idea is improved by incorporating
the dependence on the iteration in such a way that, in the initial stages, this function
maintains the value of (r), but when the algorithm proceeds, it tends to reduce the
initial value of the maximal step size proposed by (r). This idea is applied to all the
solutions, including the efficient ones. In the early iterations, the efficient solutions do
not have to be good solutions, (i.e. their objective values do not have to be near the
Pareto front) and therefore we will allow them to have a moderate amplitude which
will be reduced as iterations proceed. For example, one solution having a rank equal
to 1 (efficient solution) in the early iterations could have a maximum amplitude close
to 0.25 times the variable range of variation and, in the following iterations, the solutions with rank equal to 1 will have smaller values of the maximum amplitude, being
practically zero in the last iterations of the algorithm. However, the solutions with
higher rank values, i.e. not so good solutions, will always have an important range of
variation.
According to the ideas of the previous paragraphs, Fig. 3 shows an example of the
evolution of the maximal step size of solutions of a set of hypothetical populations
with maximal constant rank equal to five. With solid lines, at the top of the figure we
can see that the solutions with rank equal to five, i.e. the worst ones, are always used
for exploration since the maximal step size of the mutation is 1. For solutions with
rank values smaller than 5 (rmax ), the maximal amplitude is reduced as iterations proceed. In particular, we can observe how the maximal amplitude of efficient solutions,
i.e. solutions with rank equal to one, start with a maximal amplitude close to 0.25 and
end with a maximal amplitude close to zero.
With the ideas expressed above, we can establish our mutation operator in the
following way:
(t+1)
xk
(t)
(U )
= xk + u (t,r) (xk
(L)
xk ),
where u is a random number in [1, 1], (t,r) defines the amplitude that depends on
both, the current iteration t and the rank r of the individual to be mutated, according
129
t
Fig. 3 Assuming a constant value rmax
= 5 through the iterations, the five solid lines show the evolution
of the maximal step size for solutions with rank equal to 1 at the bottom, equal to 2 the second one, and
t
so on. On the other hand, assuming a constant value rmax
= 1 in all the iterations, the black dots show the
evolution of the maximal step size of the solutions.
to the expression:
(t,r)
2 (t) + (1 (t)),
t
= 1,
if rmax
t
if rmax
2,
where
(t) = 0.25
tmax t
tmax
130
is selected for the two reasons we have pointed out before. Regarding , it essentially
represents the minimal maximal step size to be considered when iterations proceed,
in order to prevent the mutation operator from being caught in null or near null mutations that do not really modify the values of the components. So, the value of
depends on the range of variation of the decision variables. As it can be observed in
CEC (2007), the magnitude and range of the values of the decision variables of our
test problems are similar. Therefore, taking this fact into consideration, we have fixed
a common value of equal to 0.0001. In relation to the constant 0.25 in the definition
of (t), it has been established in order to provide a maximal amplitude of the efficient solutions equal to this value at the beginning of the execution. The selection of
an appropriate value for is a difficult task, and its establishment is postponed until
Sect. 5.4.
Finally, as we have mentioned before, to establish the rank of the individuals we
have used the one proposed by (Goldberg 1989), but any other can be used.
5 Computational experiment
In this section we comment on the computational experiments that we have carried
out to test the performance of P RBMO. We should note that the aim of the paper
is to compare the P RBMO with some classical mutation operators existing in the
literature in order to investigate whether the results obtained with it are better than the
others or not, and not to create a new Evolutionary Algorithm. Therefore, the experiments are accomplished taking this fact into to consideration. The first experiment
uses a simplified version of the algorithm shown in Fig. 1 in which only the mutation
operator is used in the variate step. The second experiment implements the wellknown N SGA-I I algorithm in its original version by Deb et al. (2002a) and using
our mutation operator P RBMO.
A PC Pentium IV 2.66 GHz under Linux Mandriva 2008 has been used to accomplish all the calculations. All programmes have been coded in C language and
compiled with a GNU GCC compiler and they have been written by the authors except: the code for the hypervolume calculation that was obtained from Fonseca et al.
(2006b) based on Fonseca et al. (2006a), and all the codes for the function evaluations
that were extracted from the available codes provided in CEC (2007). Finally, precision of 108 has been taken for all the numerical comparisons, one unit of accuracy
more than the one used in the Pareto fronts supplied by CEC (2007).
There are six sections. The first focusses on showing the performance measures
used to accomplish the comparison of the results; the second exhibits the selected
test problems; Sect. 3 shows the selection mechanisms used for the first experiment;
Sect. 4 describes how the parameters of the operators have been set; the fifth one
shows how the experiments are executed and, finally, in Sect. 6 the results obtained
are reported.
5.1 Measures for the comparison of the operators
To accomplish the comparisons of both experiments, we have considered three measures that usually appear in the literature: Hypervolume difference to a reference
131
set, see CEC (2007) and Huang et al. (2007a), generational distance taken from Van
Veldhuizen and Lamont (2000) and set coverage from Zitzler (1999). The two first
measures need a reference set included in P F true to be known. We have considered as
reference sets the ones provided by CEC (2007). These reference sets consist of 500
points for two objective problems and of 5000 points for three objective problems.
The sketches of the measures are the following: Let P be the set of nondominated solutions reached after the execution of an optimisation algorithm and
P F its image in the objective space:
Hypervolume difference to a reference set (H D): The original hypervolume measure by Zitzler and Thiele (1999) calculates the volume covered by the hypercube
formed by the vectors of P F and a reference point. The reference point is placed
in such a way so as to be at least weakly dominated by every member in P . In
order to obtain the value of the hypervolume difference, H D, we calculate the difference between the hypervolume of the reference set contained in P F true obtained
from CEC (2007) and the hypervolume of P F . For this measure, the smaller the
value is, the better the population.
Generational distance (GD): Similar to the previous one, it also needs a reference
set included in P F true to be known. It calculates how far, on average, P F is from
P F true . For this measure, the smaller the value, the better the population.
Set coverage (C): Let P1 and P2 be the non-dominated sets resulting from the
execution of two different algorithms. This measure calculates the proportion of
solutions in set P2 which are weakly dominated by solutions in set P1 . Since
this operator is not symmetrical, both C(P1 , P2 ) and C(P2 , P1 ) have to be calculated. In the best situation, P1 is better than P2 if C(P1 , P2 ) is close to one
and C(P2 , P1 ) is close to zero. In general, P1 is better than P2 if C(P1 , P2 ) is
notably greater than C(P2 , P1 ).
For a more detailed explanation, the reader is referred to the previous references.
5.2 The test problems
The use of a set of test problems helps to guarantee that the proposed operator will
confront efficient solution spaces of different characteristics. A usual and very often
used test suite is the one composed of the ZDT given by Zitzler et al. (2000) and
DTLZ provided by Deb et al. (2002b) problems. Those related to the ones used for
the experiment are shown in Table 1. The main characteristics of these problems are
the following: The ZDT1 problem has a convex Pareto-optimal front; ZDT2 has a
non-convex Pareto-optimal front; ZDT4 contains 219 local Pareto-optimal fronts and
therefore, tests for EAs ability to deal with multifrontality; ZDT6 includes two difficulties caused by the non-uniformity of the search space (the P true are non-uniformly
distributed along the P F true and the density of the solutions is lowest near the P F true
and highest away from the front); in DTLZ2, the Pareto-optimal solutions
correspond
P
to xi = 0.5, i = 3, . . . , n and all objective functions must satisfy 3j =1 fj2 = 1; and
finally, DTLZ3 is the same as DTLZ2 except for function g, which introduces 83 local Pareto-optimal fronts and one global Pareto-optimal front (all local Pareto-optimal
fronts are parallel to the global Pareto-optimal front and a MOEA can get stuck at any
132
Problem
Objective functions
Variables
Pareto front
ZDT1
f1 (x1 ) = x1
xk [0, 1]
g(x2 ) = 1
f2 (x) = g h(f1 , g)
k = 1, . . . , 30
g(x2 ) = 1 + 9
P30
k=2 xk
h(f1 , g) = 1
ZDT2
x2 = (x2 , . . . , x30 )
q29
f1
g
f1 (x1 ) = x1
xk [0, 1]
f2 (x) = g h(f1 , g)
k = 1, . . . , 30
g(x2 ) = 1 + 9
P30
k=2 xk
g(x2 ) = 1
x2 = (x2 , . . . , x30 )
29
ZDT6
f1 (x1 ) = x1
x1 [0, 1]
f2 (x) = g h(f1 , g)
xk [5, 5]
g(x2 ) = 1
g(x2 ) = 1 + 10(n 1)
h
i
P
+ nk=2 xk2 10 cos(4 xk )
q
f
h(f1 , g) = 1 g1
k = 2, . . . , n
x2 = (x2 , . . . , xn )
optimal front:
g(x2 ) = 1.25
xk [0, 1]
f2 (x) = g h(f1 , g)
hP
i
30 xk 0.25
g(x2 ) = 1 + 9
k=2 29
k = 1, . . . , 30
g(x2 ) = 1
x2 = (x2 , . . . , x30 )
f1 (x) = (1 + g) cos
x1
x12
f2 (x) = (1 + g) cos 2
x
f3 (x) = (1 + g) sin 12
Pn
g(x3 ) = k=3 (xk 0.5)2
DTLZ3
x1
x
cos 22
x2
sin 2
Spherical
Pareto-optimal
x3 = (x3 , . . . , xn )
front
P3
2
j =1 fj = 1
x2
cos
x 2 x 2
f2 (x) = (1 + g) cos 12 sin 22
x
f3 (x) = (1 + g) sin 12
h
P30
g(x3 ) = 100 28 + k=3 (xk 0.5)2
xk [0, 1]
k = 1, . . . , n
xk [0, 1]
k = 1, . . . , 30
x3 = (x3 , . . . , x30 )
of these local Pareto-optimal fronts before converging to the global one), the P F true
is concave and multimodal and this problem tests the MOEAs ability to converge to
P F true .
However, these suites have some drawbacks since the test problems share some
characteristics and often have some design flaws. For example, for all the problems,
the global optimum has the same parameter values for different variables/dimensions
and it lies in the centre of the search range or on the boundaries. Also, all these
problems are separable. Therefore, to overcome the shortcomings of the ZDT and
133
Test problem
Separability/Modality
No. variables
Geometry
1. S-ZDT1
2. S-ZDT2
f1 , f2 : S/U
30
convex
f1 , f2 : S/U
30
3. S-ZDT4
concave
f1 : S/U
30
convex
f2 : S/M
4. R-ZDT4
f1 , f2 : NS/M
10
convex
5. S-ZDT6
f1 , f2 : S/M
30
concave
6. S-DTLZ2
f1 , f2 , f3 : S/U
30
concave
7. R-DTLZ2
f1 , f2 , f3 : NS/M
10
concave
8. S-DTLZ3
f1 , f2 , f3 : S/M
30
concave
DTLZ test functions, in Huang et al. (2007a), some of the usual ZDT and DTLZ test
functions have been extended and rotated and/or shifted. After these transformations,
the problems have no external nor medial optima and the optima continues being
known. In our experiments we have considered these new versions of the ZDT and
DTLZ test functions. A short description of their characteristics is shown in Table 2.
In order to obtain a more detailed description of them the reader is referred to Huang
et al. (2007a).
5.3 Selection operators for the first experiment
The outline of the first experiment is similar to the one accomplished in Alberto
and Mateo (2009). In the simplified version of the algorithm showed in Fig. 1, after
applying the mutation operator, we built a temporary population consisting of the
current one together with the new individuals to carry out the selection process. We
have taken into consideration three different selection operators: Two of them of the
roulette wheel selection type (surviving and death selection) and the other of the
elitist type. In order to classify the individuals and to establish the selection/death
probability, the selection operators use a ranking. As we have mentioned before, we
have used the one proposed by Goldberg (1989).
The selection operators considered are the following:
Surviving selection (S1 ) from (Michalewicz 1996, p. 34): This operator assigns a
higher probability of surviving to those individuals with a smaller rank (better individuals). In iteration t, the selection probability pi (t) for each individual x(i,t) Pt
is obtained according to:
pi (t) = P
t
+ 1 ri
rmax
,
t
x(j,t) Pt rmax + 1 rj
where rj is the rank value of individual x(j,t) . Then, in order to build the new
population, a roulette wheel selection is performed using these probabilities.
Death selection (S2 ) from (Michalewicz 1996, p. 62): Different from the previous
selection operator, this operator defines a probability of not surviving for each
134
ri
x(j,t) Pt
.
rj
It can be observed that individuals with greater rank (worse individuals) receive
a higher probability of not surviving. Then, a roulette wheel selection is accomplished in order to eliminate the spare individuals until the fixed population size is
reached. With this operator the population does not receive two copies of the same
individual, thus helping to avoid crowding the population with the same individuals.
Elitist selection (S3 ): Taking into account the size of the population, the spare individuals with higher rank are removed from the population without random selection. The process is similar to the selection operator used in the algorithm N SGAI I proposed by Deb et al. (2002a): When several individuals are candidate for
elimination, the size of the largest cuboid enclosing any of them without including any other point in the population is obtained (crowding distance). Then, the
individuals with smaller crowding distance are removed from the population. This
device attempts to keep the population diverse along the Pareto front.
5.4 Parameter settings
The four mutation operators selected to be compared with the new one we propose
have been broadly used in the literature. In many cases, the free parameters they have
are fixed, for example b = 5 in Michalewicz (1996) (p. 103) or = 20 in Deb et al.
(2002b) and Zitzler et al. (2001) for N U MO and P MO, respectively. In general, in
these cases, the mutation operators are used together with other variation operators
like crossover and it is supposed that these parameters have been tuned by their authors in order to obtain the best results. Since in our first experiment we will only
use the mutation operator as a variation operator, the parameters that usually appear
in the literature might not be the most appropriate ones. Therefore, in this section
we show the process that we have carried out in order to determine, in an easy way,
an adequate value for the different parameters that will be used in the experiments
commented on in Sect. 5.5.
The process carried out is analogous to the one accomplished in order to fix parameter of our algorithm, so we will relate both processes jointly. We have considered
four possible values for each parameter, which are shown in Table 3, and we have to
select one of them as the best. For the first operator, RMO, the higher the value
of the parameter the higher the maximal step size, for the second and third operators,
N U MO and P MO, the higher the value of the parameter the smaller the probability
of obtaining big values of the step size. For GMO, the interpretation of parameter
0 is different: It is a limit of the minimal k s allowed in the operator, that is to say,
it is the minimal k allowed to perturb the components xk of the solutions. If during the evolution the process establishes a value of k below 0 , then, automatically,
the mutation operator fixes k = 0 and perturbations with very small variations are
avoided. Finally, for our operator, P RBMO, the four values provide a small, but
representative, selection of the tradeoffs between good and bad solutions.
135
Operator
Parameter
Candidate values
RMO
N U MO
1258
P MO
5 10 15 20
GMO
P RBMO
To carry out all the experiments for these first calculations as well as for the remaining two main experiments, we have considered a fixed population size equal to
100 individuals and a probability of mutation equal to 1/n, as in the classical Zitzler
et al. (2001) and Deb et al. (2002a), except for Gaussian mutation in which all the
components of all the individuals are mutated, i.e. the probability of mutation is set
equal to 1. This different handling for the Gaussian mutation operator is due to the fact
that, in the literature, this operator is generally used in this way, so we have respected
this. Even so, some trials were accomplished considering a probability of mutation
equal to 1/n, but the results obtained were worse than those obtained with the probability of mutation equal to 1. Besides, with all the operators, when a mutated value
of a component is located outside its boundaries it is resampled until it fits into them.
We have considered nine different scenarios. A scenario is defined by any combination of the levels of the factors; number of iterations and selection operator. Both
factors take three different values: 100, 500 and 1000 for the number of iterations
and S1 , S2 and S3 for the selection type. Then, for each problem 30 different initial
populations are generated.
After this, we consider, one by one, the mutation operators and we evolve the
initial populations considering each of the values of its free parameter and the nine
scenarios. By doing so, for each mutation operator, we obtain 30 final populations
for each combination of value of the parameter and scenario. From each of these
populations, we obtain the set of efficient solutions, P , and we only calculate the
hypervolume difference to a reference set, H D, of Sect. 5.1. We have considered this
measure due to the fact that, in theory, it takes into consideration both the extent of
the P F and the proximity to it. Besides, we consider only one measure in order to
have a simpler decision problem. To calculate H D, for each problem and number
of iterations, the reference point is placed by obtaining the worst objective function
value from among all the P populations obtained with the different values of the
parameter of the mutation considered and selection operators. That is to say, for each
problem and mutation operator, the same reference point is used for all the P once
the number of iterations has been fixed.
After obtaining the value of H D, and as it has been previously said, Table 4 contains, for each mutation operator, the number of times in which an operator with a
specific value of its parameter beats, with respect to the measure H D, the same operator but with the other possible values of the parameter when evolving the same
initial population under the same scenarios. For instance, the third column in Table 4(a), which corresponds to 100 iterations, means that, among the 720 executions
(30 initial populations 8 problems 3 selection operators) accomplished for each
136
No. iterations
No. iterations
Meas.
Version
100
500
1000
Meas.
HD
= 0.5
67
145(a)
260
HD
= 0.1
117
247(b)
199(a)
= 0.1
205
208(b)
172(a)
= 0.5
331
110(a)
89
Order
Version
100
500
1000
=5
473
183(a)
94
= 10
103(a)
304
153(a)
= 15
83(a, b)
143(a)
199(a)
= 20
61(b)
90
274
3
= 0.5
=5
= 0.1
= 10
= 0.1
= 15
2/3
= 0.5
= 20
Order
No. iterations
No. iterations
Meas.
Version
100
500
1000
Meas.
Version
100
HD
= 0.10
69
167
477
HD
0 = 102
286
238
88(a)
= 0.25
143
445
160
0 = 103
216
304
424
= 0.50
274(a)
69
61
0 = 104
146
101(a)
142
= 0.75
234(a)
39
22
0 = 105
72
77(a)
66(a)
0 = 102
0 = 103
0 = 104
0 = 105
Order
= 0.10
= 0.25
= 0.50
= 0.75
Order
500
1000
Version
100
HD
b=1
442
146(a)
127
b=2
214
444
357
b=5
60
111(a)
215
b=8
19
21
3
Order
500
1000
b=1
b = 2
b=5
b=8
of the values = 0.5, 0.1, 0.1 and 0.5, in 67 of them has beaten the parameter
0.5, in 117 has beaten 0.1, in 205 has beaten 0.1 and finally in 331 cases has
beaten = 0.5.
After these previous calculations, we carried out a statistical test in order to decide
which of the obtained values can be considered statistically equivalent. For doing so,
all the pairs of values have been compared. For instance, in Table 4(a), equal to
137
0.5 is compared with equal to 0.1, 0.1 and 0.5, equal to 0.1 is compared
with equal to 0.1 and 0.5 and finally, equal to 0.1 is compared with equal to 0.5.
More specifically, a 2 goodness-of-fit test with the multiple-comparison correction
of Bonferroni, with a significance level equal to 0.05 has been performed. The results
of the statistical test are shown by means of the letter (a) or (b) which appear in some
rows of the top half of the tables. For instance, in Table 4(b), considering the column
that corresponds to 100 iterations, we have the values 103 and 83 with (a) and 83 and
61 with (b). It means that there are no significant differences between the number
of times in which P MO with = 10 presents better value of the measure H D than
with = 15, and there are no significant differences in the number of times in which
P MO with = 15 presents better value of H D than with = 20, as a consequence,
the pairs of values can be considered equivalent. However, there are significant differences between the values = 10 and = 20. If no letter appears, this means that
the values can be considered different from each other. After establishing this test, we
sorted all of the obtained values with respect to the others. This information is shown
at the bottom half of each of the Tables 4(a) to 4(e). For instance, in Table 4(b), for
100 iterations the best option is = 5, the second ones are = 10 and = 15 since
there is no significant statistical difference between them, and the third correspond to
= 15 and = 20, since in this case, the value = 20 could receive order 2 as well
as order 3. The last step is to select the best option for each mutation operator. We
will take as criteria for selection the value of the parameter that presents the smaller
order values and the smaller variability.
With these ideas in mind, the selected parameters are: = 0.1 for P RBMO, =
10 for P MO and 1 = 0.25 for RMO all of them with order 2, 1 and 2; 0 = 103
for GMO and b = 2 for N U MO, both with order 2, 1 and 1. The selected values for
each operator appear marked with an asterisk in Tables 4(a) to 4(e). These values will
be used in the development of the experiments.
5.5 Implementation and execution
For the first experiment, P RBMO versus RMO, N U MO, P MO and GMO, the
same scenarios as in Sect. 5.4, population size and probability of mutation have been
taken into consideration. For the second experiment, devoted to the comparison of the
original N SGA-I I with the one incorporating P RBMO, we have considered three
scenarios defined in terms of the number of iterations that, again, takes the values 100,
500 and 1000. The same parameters as before and a probability of crossover equal to
0.9 have also been considered. The crossover probability has been taken from Zitzler
et al. (2001) and Deb et al. (2002a).
As it has been previously mentioned, the first experiment is devoted to the comparison of our operator with those presented in Sect. 3, and the second experiment
is devoted to the comparison between two versions of the classical and broadly used
algorithm N SGA-I I , the original one and the one obtained by incorporating our mutation operator in it. For the first experiment, in contrast to that presented in Sect. 5.4,
in all the cases, for each problem, 50 different initial populations, and different from
the previous ones, are generated. We apply the algorithm using a different mutation
operator each time, considering each of the 9 different scenarios. By doing so, we
t
Fig. 4 Evolution of the mean value of rmax
for problem S-ZDT1 with the three proposed selection operators.
obtain 50 final populations for each combination of mutation operator and scenario.
In each of these populations, we obtain the set of efficient solutions, P , and we calculate all the measures of Sect. 5.1. To calculate H D, the same process as before
has been performed in order to place the reference point. For the second experiment
the process is analogous, but bearing in mind only the three scenarios previously
mentioned.
For comparing the performances of the operators, several measures which summarize the behaviour of the operators, as for example the mean or the median, could be
calculated. The one selected is the median because of its robustness in the presence of
outliers. So, in all the cases, the medians of the measures have been used to perform
the statistical comparisons.
Before describing the results of the first experiment, we want to make sure that
the proposed mutation operator really takes into consideration in its operation the
information of the layers, and not only the iteration number. That is to say, we want
to know if the number of times in which the operator uses the second part of the
t
definition of (t,r) is a significant value, i.e. the number of times in which rmax
> 1 is
t
significant. As an example, in Fig. 4 we can observe the evolution of rmax in function
of the number of iterations for the three selection operators proposed, for problem St
ZDT1 and 1000 iterations. The lines represent the mean value of rmax
through the 50
replications. We also show in Table 5 an example of the frequency distribution of the
number of layers for the 8 problems when considering 1000 iterations and selection
S3 , which is the one that generates fewer layers due to its specific characteristics.
The 10 first columns show the percentage of iterations, among the 50 replications
t
associated to each problem, in which rmax
has taken the values 1, 2, . . . , 9 and higher
t
is strictly higher
than 9. The last column shows the percentage of times in which rmax
than 1. If, instead of considering only selection S3 , we consider all three selection
operators together, the percentages of the last column rise to 89.1, 93.1, 100.0, 99.2,
100, 70, 94.8 and 91.8 for the first to the eighth problem, respectively. In the light of
these results, it can be stated that the percentage of times in which the second part of
the definition of (t,r) is used, and then the use of the quality of the solutions in terms
of the layer to which it belongs to, is a significant number.
139
10
% >1
67.2
S-ZDT1
32.8
26.3
15.6
9.9
7.4
4.4
1.5
0.9
0.6
0.6
S-ZDT2
20.7
22.9
16.2
10.3
5.8
4.4
3.7
2.7
2.6
10.7
79.3
S-ZDT4
0.3
1.0
3.9
8.0
13.6
12.9
60.3
100
R-ZDT4
2.3
1.5
2.1
3.1
5.4
9.7
11.0
15.3
14.5
35.1
97.7
S-ZDT6
0.5
1.4
2.2
5.5
11.3
15.1
64.1
100
9.9
S-DTLZ2
90.1
7.0
1.5
1.0
0.3
0.1
R-DTLZ2
15.6
66.8
16.9
0.5
0.2
84.4
S-DTLZ3
24.7
70.3
4.6
0.4
0.1
75.3
We will now continue with the comments on the first experiment. First of all
we present Tables 6 to 9. They contain for each problem the median values for
the measures H D and GD in function of the mutation operator, the selection
type and the number of iterations. They also contain the median of the difference
C(P RBMO, MO) C(MO, P RBMO), where MO represents any mutation operator among RMO, N U MO, P MO and GMO. The medians of H D and GD appear
in all the blocks associated with all the operators, while the medians of the difference
C(P RBMO, MO) C(MO, P RBMO) only appear in the columns corresponding
to the operator MO to whom P RBMO is being compared. This is because it corresponds to the comparison between two operators MO and P RBMO. For H D and
GD the smaller the values the better the operator; and for the measure C the higher
the value the better. The values of the measure C belong to the interval [1, 1], 1
being the best value for P RBMO and 1 the worst.
Since only the median values themselves are not enough to ensure whether one
operator is better for a given measure than another, we have considered the carrying
out of a statistical test to determine this fact, see for example Casella and Berger
(2002). To perform the statistical hypothesis tests for comparing P RBMO with
RMO, N U MO, P MO and GMO, and with the object of determining the effect of
the mutation operator when using them in the algorithm starting from identical initial
conditions, the data are paired in the following way: For each scenario, each of the 50
populations obtained using each of the mutation operators, RMO, N U MO, P MO
or GMO, is paired with each of the 50 populations obtained using P RBMO.
We have performed a two-sided Wilcoxon signed rank test of the hypothesis that the difference between the matched samples comes from a distribution
whose median is zero (in the case of the measure C the hypothesis is not on
the difference of the measures between the matched samples but on the difference
C(P RBMO, MO) C(MO, P RBMO) in the paired samples) with a significance
level equal to 0.05. The results of these tests are also coded and shown in the columns
corresponding to RMO, N U MO, P MO and GMO of Tables 6 to 9. If the null hypothesis is not rejected, an = sign is presented in the corresponding position of
MO, which means that both operators MO and P RBMO perform in an equivalent way. If the null hypothesis is rejected, a sign appears when the median of
S3
S2
0.114
0.732
0.820
0.057
0.399
0.910
0.021
0.136
0.910
0.211
1.786
0.500
0.170
1.521
0.580
0.134
1.163
0.930
HD
GD
HD
GD
HD
GD
S1
1000
1.000
0.062
0.008
0.900
0.339
0.048
0.830
0.651
0.103
0.815
1.057
0.124
0.02=
1.38=
0.16=
0.16=
1.66=
0.204
100
0.08=
0.11=
0.02=
0.895
0.297
0.053
0.805
0.592
0.137
500
No. iterations
500
N U MO
No. iterations
RMO
100
Mea.
Sel.
S-ZDT1
0.975
0.041
0.005
0.785
0.160
0.038
0.545
0.398
0.120
1000
0.950
1.398
0.158
0.890
1.691
0.187
0.865
2.038
0.236
100
0.220
0.106
0.016
0.865
0.334
0.048
0.770
0.649
0.114
500
No. iterations
P MO
0.980
0.041
0.005
0.895
0.224
0.033
0.620
0.441
0.076
1000
0.860
2.135
0.190
0.715
2.330
0.214
0.600
3.053
0.281
100
0.950
0.320
0.038
0.980
0.513
0.080
0.935
1.274
0.186
500
No. iterations
GMO
0.910
0.079
0.004
0.865
0.149
0.028
0.930
0.658
0.108
1000
0.930
0.109
1.366
0.153
1.607
0.194
100
0.101
0.015
0.224
0.034
0.469
0.083
500
No. iterations
P RBMO
0.022
0.002
0.101
0.018
0.314
0.061
1000
Table 6 For S-ZDT1 (top) and S-ZDT2 (bottom), the numbers represent the median values of H D and GD, and the median of C(P RBMO, MO) C(MO, P RBMO),
MO {RMO, N U MO, P MO and GMO} in function of the mutation operator, the selection type and the number of iterations. The table also contains the result of the
two-sided Wilcoxon signed rank test. An = means that both operators MO and P RBMO perform in an equivalent way, a sign means that P RBMO performs worse
than MO, and no sign means that P RBMO performs better than MO
140
Apendice A.4 A mutation operator ...
S3
S2
0.125
0.769
0.640
0.076
0.430
0.890
0.039
0.207
1.000
0.254
2.222
0.570
0.238
2.065
0.765
0.210
1.732
0.870
HD
GD
HD
GD
HD
GD
S1
1000
1.000
0.093
0.021
0.920
0.374
0.074
0.815
0.789
0.140
0.920
1.582
0.198
0.550
1.876
0.228
0.565
2.039
0.252
100
0.480
0.147
0.029
0.905
0.328
0.066
0.730
0.613
0.126
500
No. iterations
500
N U MO
No. iterations
RMO
100
Mea.
Sel.
S-ZDT2
Table 6 (Continued)
0.980
0.054
0.012
0.960
0.177
0.052
0.795
0.39=
0.267
1000
P MO
0.870
1.922
0.230
0.730
2.328
0.266
0.670
2.480
0.286
100
0.785
0.155
0.030
0.825
0.343
0.062
0.395
0.618
0.105
500
No. iterations
0.990
0.059
0.013
0.895
0.255
0.053
0.750
0.562
0.110
1000
GMO
0.380
2.980
0.288
0.310
3.247
0.311
0.290
3.730
0.371
100
0.420
0.716
0.111
0.380
0.812
0.146
0.175
1.545
0.236
500
No. iterations
0.845
0.116
0.017
0.660
0.156
0.069
0.000
0.616
0.132
1000
P RBMO
1.240
0.157
1.702
0.205
1.924
0.231
100
0.128
0.026
0.233
0.045
0.484
0.089
500
No. iterations
0.027
0.007
0.108
0.026
0.346
0.075
1000
141
S3
S2
0.109
98.46
0.800
0.067
59.84
0.830
0.036
30.62
0.840
0.256
235.9
0.225
0.220
203.8
0.480
0.185
167.0
0.390
HD
GD
HD
GD
HD
GD
S1
1000
1.000
13.95
0.020
1.000
40.63
0.057
1.000
92.02
0.129
0.470
170.7
0.184
0.600
208.3
0.226
0.38=
225.5
0.247
100
0.720
27.61
0.033
0.685
52.50
0.064
0.570
83.01
0.100
500
No. iterations
500
N U MO
No. iterations
RMO
100
Mea.
Sel.
S-ZDT4
0.860
11.07
0.016
0.850
27.63
0.042
0.480
56.16
0.082
1000
0.800
190.6
0.206
0.730
224.5
0.242
0.670
263.5
0.282
100
0.825
32.12
0.037
0.765
62.19
0.067
0.750
106.6
0.114
500
No. iterations
P MO
Table 7 Results for S-ZDT4 (top) and R-ZDT4 (bottom) with the same codification as in Table 6
0.895
11.20
0.016
0.860
34.78
0.048
0.800
83.69
0.119
1000
GMO
0.390
364.6
0.350
0.235
377.1
0.370
0.290
458.2
0.451
100
0.675
106.1
0.123
0.880
93.39
0.124
0.710
155.8
0.207
500
No. iterations
0.960
73.34
0.119
1.000
80.28
0.140
1.000
104.1
0.174
1000
P RBMO
155.9
0.170
188.0
0.207
208.9
0.236
100
23.46
0.028
41.23
0.045
62.33
0.070
500
No. iterations
7.932
0.011
15.81
0.023
38.05
0.052
1000
142
Apendice A.4 A mutation operator ...
S3
S2
0.079
35.17
1.000
0.024
12.56
1.000
0.096
54.87
0.730
0.059
37.46
0.725
HD
HD
GD
1.000
0.860
GD
0.123
49.35
0.131
66.72
HD
S1
500
100
1000
0.144
1.000
8.656
0.019
1.000
34.56
0.097
1.000
41.91
0.37=
4.28=
-0.02=
0.02=
23.9=
0.48=
8.8=
0.032
0.60=
15.2=
0.059
500
0.05=
0.275
42.10
0.081
0.350
52.51
0.112
100
N U MO
No. iterations
RMO
No. iterations
GD
Mea.
Sel.
R-ZDT4
Table 7 (Continued)
0.06=
2.68=
0.01=
0.955
6.100
0.031
0.73=
9.89=
0.052
1000
P MO
0.630
38.27
0.058
0.695
50.51
0.090
0.745
59.77
0.122
100
0.865
10.75
0.022
1.000
25.44
0.062
1.000
38.15
0.102
500
No. iterations
0.900
6.628
0.018
1.000
24.10
0.073
1.000
33.99
0.115
1000
GMO
0.26=
37.00
0.080
0.33=
46.31
0.102
0.770
81.99
0.173
100
0.980
18.43
0.078
1.000
18.52
0.080
1.000
29.49
0.128
500
No. iterations
0.980
18.11
0.095
1.000
18.53
0.099
1.000
29.60
0.160
1000
P RBMO
24.72
0.046
34.03
0.066
45.99
0.087
100
4.376
0.014
7.714
0.026
13.82
0.044
500
No. iterations
2.514
0.013
4.279
0.023
7.664
0.034
1000
143
S3
S2
0.390
4.863
0.830
0.341
4.141
0.890
0.294
3.499
1.000
0.426
6.527
0.720
0.413
6.358
0.775
0.399
6.108
0.885
HD
GD
HD
GD
HD
GD
S1
1000
1.000
2.748
0.249
1.000
3.676
0.317
1.000
4.598
0.389
0.885
5.949
0.393
0.820
6.268
0.410
0.555
6.397
0.421
100
0.770
3.001
0.260
0.925
3.688
0.311
0.855
4.425
0.363
500
No. iterations
500
N U MO
No. iterations
RMO
100
Mea.
Sel.
S-ZDT6
0.810
2.052
0.195
0.935
2.710
0.247
0.795
3.57=
0.316
1000
0.895
6.331
0.412
0.830
6.493
0.424
0.830
6.731
0.437
100
0.890
3.212
0.271
0.880
3.828
0.315
0.710
4.537
0.364
500
No. iterations
P MO
Table 8 Results for S-ZDT6 (top) and S-DTLZ2 (bottom) with the same codification as in Table 6
1.000
2.374
0.218
0.895
3.132
0.273
0.830
4.041
0.337
1000
GMO
0.585
7.116
0.441
0.400
7.149
0.451
0.330
7.731
0.471
100
0.775
4.517
0.369
0.820
5.184
0.421
0.790
6.217
0.497
500
No. iterations
0.810
2.219
0.208
0.900
3.181
0.278
0.890
4.961
0.425
1000
P RBMO
5.652
0.372
6.083
0.399
6.269
0.412
100
2.910
0.251
3.340
0.279
4.060
0.328
500
No. iterations
1.885
0.182
2.291
0.210
3.439
0.288
1000
144
Apendice A.4 A mutation operator ...
S3
S2
1000
0.354
0.515
0.360
0.07=
0.359
0.04=
0.05
0.96=
HD
GD
0.173
0.032
0.170
0.008
0.058
0.090
0.01
0.54
0.86
HD
GD
0.006
0.445
0.11=
0.06=
0.420
0.536
0.179
0.587
0.13=
1.17=
HD
S1
500
0.77
0.64
0.02
0.07=
1.02=
0.06=
0.170
1.279
0.185
100
0.105
0.059
0.008
0.290
0.229
0.178
0.210
0.413
0.328
500
No. iterations
100
N U MO
No. iterations
RMO
GD
Mea.
Sel.
S-DTLZ2
Table 8 (Continued)
0.080
0.020
0.005
0.045
0.12
0.243
0.00=
0.25
0.398
1000
P MO
0.60
0.76
0.02
0.335
1.206
0.077
0.270
1.557
0.176
100
0.03=
0.05=
0.01
0.225
0.248
0.06=
0.095
0.39=
0.168
500
No. iterations
0.070
0.021
0.004=
0.305
0.221
0.067
0.100
0.34=
0.164
1000
GMO
0.24
0.988
0.02
0.290
1.250
0.06=
0.400
1.783
0.143
100
0.670
0.411
0.019
0.545
0.354
0.089
0.420
0.837
0.228
500
No. iterations
0.600
0.307
0.013
0.190
0.166
0.082
0.100
0.429
0.146
1000
P RBMO
0.935
0.031
0.968
0.057
1.188
0.129
100
0.044
0.007
0.189
0.062
0.373
0.132
500
No. iterations
0.013
0.004
0.131
0.056
0.329
0.122
1000
145
S3
S2
123.1
0.885
0.860
1.000
0.770
C
0.000
461.2
473.4
GD
0.000
0.007
0.005
HD
260.8
0.750
0.350
HD
550.6
575.8
GD
GD
0.028
0.018
HD
S1
500
1000
0.830
84.98
0.000
1.000
445.5
0.007
0.665
549.2
0.027
0.480
224.2
0.000
0.460
413.2
0.003
0.05=
535.8
0.020
100
0.280
61.5=
0.00=
0.835
187.9
0.001
0.21=
36.2=
0.000
0.580
92.49
0.000
0.15=
192.
0.18=
0.012
316.=
1000
0.014
500
N U MO
No. iterations
RMO
No. iterations
100
Mea.
Sel.
R-DTLZ2
0.685
242.1
0.000
0.580
466.1
0.004
0.125
549.6
0.017
100
0.760
100.9
0.000
0.970
424.1
0.004
0.575
546.4
0.022
500
No. iterations
P MO
Table 9 Results for R-DTLZ2 (top) and S-DTLZ3 (bottom) with the same codification as in Table 6
0.720
72.92
0.000
0.960
408.6
0.003
0.635
517.4
0.022
1000
GMO
0.985
569.0
0.005
0.610
558.8
0.008
0.690
702.5
0.037
100
0.400
110.7
0.000
0.235
88.05
0.000
0.45
211.
0.011
500
No. iterations
0.690
73.0
0.000
0.605
86.20
0.000
0.34
147.
0.01=
1000
P RBMO
160.2
0.000
341.4
0.001
476.2
0.008
100
54.31
0.000
69.88
0.000
344.2
0.006
500
No. iterations
33.87
0.000
47.40
0.000
282.5
0.005
1000
146
Apendice A.4 A mutation operator ...
S3
S2
0.058
1581.
0.420
0.005
1070.
0.690
0.000
259.9
0.750
0.078
2083=
0.140
0.02=
1715=
0.04=
0.004
1057=
0.04=
HD
GD
HD
GD
HD
GD
S1
1000
0.20
135.6
0.00=
0.810
1045.
0.008
0.555
1534.
0.078
0.03=
1106=
0.00=
0.04=
1783.
0.02=
0.120
2079.
0.089
100
0.295
252.1
0.000
0.285
928.1
0.003
0.05=
1309.
0.039
500
No. iterations
500
N U MO
No. iterations
RMO
100
Mea.
Sel.
S-DTLZ3
Table 9 (Continued)
0.48
126.5
0.000
0.05=
685.8
0.002
0.22
914.4=
0.039
1000
P MO
0.115
1111=
0.004
0.03=
1791.
0.02=
0.145
2151.
0.074
100
0.860
296.1
0.000
0.620
1081.
0.005
0.240
1499.
0.050
500
No. iterations
0.600
171.9
0.000
0.705
1022.
0.007
0.375
1482.
0.069
1000
GMO
0.825
2812.
0.037
0.380
2996.
0.059
0.485
3362.
0.111
100
0.780
2136.
0.019
0.09=
1157.
0.006
0.060
2303.
0.083
500
No. iterations
0.675
1408.
0.005
0.21
535.0
0.002
0.00=
1750.
0.105
1000
P RBMO
1110.
0.003
1714.
0.019
2017.
0.063
100
232.6
0.000
649.7
0.001
1128.
0.024
500
No. iterations
149.3
0.000
475.1
0.001
980.2
0.027
1000
147
148
the difference MMO MP RBMO is negative (which means that P RBMO performs
worse than MO), where M is H D or GD; for C a appears when the median of
C(P RBMO, MO) C(MO, P RBMO) is negative. Otherwise, a + should appear but, in order to simplify the appearance and size of the Tables, in this case we
have omitted the sign. That is to say, if there is no sign, then P RBMO performs
better than the corresponding mutation operator for that measure.
5.6 Results from the experiment
In order to carry out the analysis of the results obtained note that, since there are
three measures for judging the behaviour of the mutation operators to be compared,
the decision of which mutation operator behaves better is, in itself, a multi-objective
problem. Because of this, we have made the following commitment: We interpret the
remaining tables in such a way that if the difference between the number of + and
signs in a scenario is positive, we will say that P RBMO performs better than
MO in that scenario, if that difference is negative, we will say that MO performs
better than P RBMO in that scenario, MO and P RBMO performing in an equivalent way otherwise. The reader must remember that no sign in the Tables 6 to 9
corresponds to a + sign.
As we have mentioned above, Tables 6 to 9 contain the results considering each
problem separately which are commented on below:
S-ZDT1 From the top of Table 6 we can conclude that for this problem, P RBMO
presents a clearly better behaviour than the other operators for all scenarios except for the operator N U MO in three scenarios. In one of them, 100 iterations
with selection S1 in which P RBMO performs slightly better and the two remaining ones, corresponding to 100 iterations with selection S2 and 500 iterations with selection S3 , for which P RBMO and N U MO can be considered
equivalent.
S-ZDT2 Paying attention to the bottom of Table 6, we can point out that P RBMO
outperforms the other operators (only an = sign appears in the table).
S-ZDT4 At the top of the Table 7 we can observe an analogous situation to the previous one (problem S-ZDT2), P RBMO performs definitely better than all the
other operators.
R-ZDT4 For this problem, the rotated version of the original ZDT4, according
to Table 7 (bottom), there is no scenario and operator in which P RBMO
can be considered inferior. Regarding operators RMO, P MO and GMO,
P RBMO always performs better, the majority of triplets associated to the measures are (+, +, +) (bearing in mind that no sign means a + sign, meaning
that P RBMO is better than the other). If we take into consideration operator
N U MO, we can observe that we are clearly better in three cases, S1 with 100
iterations and S2 with 100 and 1000 iterations. We are slightly better in the remaining cases of S1 and S2 and, finally, P RBMO and N U MO exhibit a similar
behaviour when selection S3 is considered. Therefore, for this problem we can
establish that P RBMO performs better than RMO, P MO and GMO, and performs slightly better than N U MO.
149
S-ZDT6 From Table 8 (top), we can again establish that P RBMO outperforms the
others. In all the positions except for one we find no signs. This is a similar
situation to the one found in problems S-ZDT2 and S-ZDT4.
S-DTLZ2 This is the first problem of the test suite with three objective functions.
The fact of increasing the number of objective functions causes the number of
efficient solutions in the population to increase. Then, when the majority of the
solutions tend to have rank equal to 1, P RBMO would become, more or less,
a uniform mutation operator that depends only on the iteration number. But, in
spite of this, our operator P RBMO can still be considered better than the others,
as we will see in the following paragraph and comments on problems R-DTLZ2
and S-DTLZ3. Examining Table 8 (bottom), the following data can be revealed.
The four operators with 100 iterations and selection S3 perform clearly better
than P RBMO (triplets (, , ) and (, +, )). Besides, the operator RMO
with 100 iterations and S2 , and P MO with 500 iterations and S3 obtain slightly
better results than P RBMO (triplets (, =, =)). For the remaining thirty cases,
in three of them P RBMO shows a similar behaviour to the others (triplets (=
, =, =) or (+, , =)) and in twenty-seven the performance of P RBMO is the
best one (triplets with two or three no signs and none signs).
R-DTLZ2 For the rotated version of DT LZ2 we can observe in Table 9 (top) that
only operator GMO performs better than P RBMO and, in only two situations, with selection S1 with 500 and 1000 iterations. Furthermore, P RBMO exhibits an equivalent behaviour to N U MO in one scenario, which corresponds to
1000 iterations with selection S1 , (+, , =). For the remaining thirty-three cases
P RBMO outperforms the others in thirty of them and P RBMO is slightly better in three (two = signs and one no sign).
S-DTLZ3 For this problem, in Table 9 (bottom) P RBMO shows better values than
P MO and GMO in all scenarios. Regarding RMO, P RBMO performs considerably better in all scenarios except for S1 and S3 with 100 iterations in which
the behaviour of P RBMO is slightly better; for selection S2 also with 100 iterations where P RBMO and RMO show an equivalent behaviour; and when 1000
iterations are considered with selection S3 , in which RMO beats P RBMO. Finally, for N U MO we have to point out the following facts, P RBMO beats
N U MO except for 100 iterations with S3 and 1000 iterations with S1 , in which
they are equivalent, and for S3 with 1000 iterations, in which N U MO is better
than P RBMO. Globally we can state that P RBMO shows a better behaviour
except for two cases in which it is worse than RMO and N U MO, and three
cases in which P RBMO is equivalent to RMO and N U MO.
Next, in order to establish some global considerations, in Table 10 we show a
summary of all the previous results. We present a row for each problem. In each row
we show, for each operator and number of iterations, the global result obtained with
selection S1 , S2 and S3 , respectively. For instance, in the row corresponding to SZDT1 in the third column, corresponding to operator N U MO, we have (+, =, +),
which means that our operator performs better than N U MO in the problem S-ZDT1
with 100 iterations and selection S1 and S3 , and they both perform in an equivalent
way when 100 iterations and selection S2 is considered. The values of the measures,
RMO
+++
+++
+++
+++
+++
+++
+=+
Problem
S-ZDT1
S-ZDT2
S-ZDT4
R-ZDT4
S-ZDT6
S-DTLZ2
R-DTLZ2
S-DTLZ3
100
++ =
+++
+=
+++
++ =
+++
+++
+=+
N U MO
Number of iterations
+++
+++
++
+++
+++
+++
+++
+++
P MO
+++
+++
++
+++
+++
+++
+++
+++
GMO
+++
+++
+++
+++
+++
+++
+++
+++
RMO
500
+++
+++
+++
+++
++ =
+++
+++
++ =
N U MO
+++
+++
++
+++
+++
+++
+++
+++
P MO
+++
++
+++
+++
+++
+++
+++
+++
GMO
++
+++
+++
+++
+++
+++
+++
+++
RMO
1000
= +
= ++
= ++
+++
++ =
+++
+++
+++
N U MO
+++
+++
+++
+++
+++
+++
+++
+++
P MO
+++
++
+++
+++
+++
+++
+++
+++
GMO
Table 10 Summary of results. For each problem, number of iterations and operator, three signs appear. The first one corresponds to S1 , the second one to S2 and the third
one to S3 . A sign + represents that our operator obtains better results for that scenario, an = sign represents that the corresponding operator and P RBMO are equivalent
and a sign represents that our operator is not better than the other
150
Apendice A.4 A mutation operator ...
151
H D, GD and C, for these scenarios, see Table 6, were (+, =, =) and (+, +, +) for
S1 and S3 , respectively, and (=, =, =) for S2 .
Globally, for all the operators we can establish that P RBMO generally performs
better than the other operators. There is only one scenario, 100 iterations and selection
S3 , with only one problem, S-DTLZ2, in which all the operators simultaneously beat
P RBMO. In the remaining cases, this situation never happens; in some cases an =
or a sign appears but only for some operators. If we had to select one operator
among the competitors that faces up our operator it would be very difficult or even
impossible. It can be observed that RMO together N U MO with 100 iterations are
those having more = and signs, four and five, respectively, in total against only
one of P MO and GMO. When 500 iterations are considered, the earlier situation
vanishes a little, P RBMO beats RMO in all cases and N U MO maintains two
situations in which it is equivalent to P RBMO. Finally, when 1000 iterations are
considered, it can be pointed out that N U MO in the problems with three objective
functions S-DTLZ2, R-DTLZ2 and S-DTLZ3 is the only one that tries to face up to
P RBMO obtaining three = signs and one sign.
To conclude the comments on this experiment and to obtain a more difficult situation for our operator, we would like to remark that, if we redefine the codification
of Table 10 in such a way that when a sign means that for the scenario there is
at least one measure, among H D, GD and C, in which P RBMO is not the best
(instead of in function of the difference between + and signs), and a sign =
corresponds uniquely to the situation of having statistical equal values in H D, GD
and C, and a + sign otherwise, then only four changes would appear in the table:
Three of them in N U MO with 1000 iterations with problems S-DTLZ2, R-DTLZ2
and S-DTLZ3 where the results would be (, , +), (, +, +) and (, +, ) instead of (=, +, +), (=, +, +) and (=, +, ); and the other case in GMO also with
1000 iterations and problem S-DTLZ3 where the results would be (+, , +) instead
of (+, +, +).
We will now continue with the comments for the second experiment. This experiment compares the well-known algorithm N SGA-I I in its original version by Deb et
al. (2002a) against a second version in which the original mutation operator has been
replaced by our mutation operator P RBMO, which we will call N SGA-I IP RBMO .
As we have established before, the experiment considers three scenarios, obtained
by means of varying the number of iterations among the values 100, 500 and 1000.
The same statistical tests as before have been carried out in order to compare the two
versions of the algorithm.
Since the tables that correspond to this experiment had only three = signs, all
the others being + signs, these tables are not going to be shown, but their results
will be commented on here. More concretely, our implementation of N SGA-I I has
shown a statistically superior behaviour for all the measures except for H D and C
with 500 iterations, and H D with 1000 iterations, all in problem R-ZDT4, in which
the three = signs are obtained.
Instead of the tables, we show Figs. 5, 6 and 7. In Figs. 5 and 6, for each problem, the box-plot of the values of the corresponding measure obtained with N SGAI IP RBMO are on the left, and those obtained with the original version of N SGAI I are on the right. Bear in mind that for measures H D and GD the smaller the
152
Fig. 5 Box-plots of the hypervolume difference (HD) for each problem and scenario. For each pair, on
the left N SGA-I IP RBMO and on the right N SGA-I I
Fig. 6 Box-plots of the generational distance (GD) for each problem and scenario. For each pair, on the
left N SGA-I IP RBMO and on the right N SGA-I I .
value is, the better the algorithm performs. Then, it can be observed that the medians of H D and GD (printed with a horizontal line across the box) are smaller those
obtained with N SGA-I IP RBMO . In Fig. 7, for each problem, on the left the boxplot of C(N SGA-I IP RBMO , N SGA-I I ) is placed and on the right the box-plot of
153
Fig. 7 Box-plots of coverage C(N SGA-I IP RBMO , N SGA-I I ) on the left and C(N SGA-I I,
N SGA-I IP RBMO ) on the right for each problem and scenario
154
Considering the crossover operator proposed by the authors in Alberto and Mateo
(2009) and this operator, the next step we will be carrying out is a study of some of
the well-established algorithms in the literature, as for instance N SGA-I I by Deb
et al. (2002a), SPEA2 by Zitzler et al. (2001), etc., by substituting the operators proposed by their authors with our operators and some of the currently most promising
operators as those based on Differential Evolution for Multi-Objective Optimisation.
This approach was first introduced for uniobjective optimisation problems by Storn
and Price (1995) and subsequently adapted for MOOPs. An updated survey can be
found in Mezura-Montes et al. (2008). Partial results of this work under process were
presented in SPO09 by Alberto and Mateo (2011), in which very promising results
were found.
Acknowledgements This research work has been supported by the Spanish Ministry of Education and
Science under grant MTM2007-66893.
The authors are grateful to both the editor and referees for their comments and suggestions, which
greatly improved the presentation of this paper.
References
Abbass, H.A., Sarker, R.: The Pareto differential evolution algorithm. Int. J. Artif. Intell. Tools 11(4),
531552 (2002)
Alberto, I., Mateo, P.M.: A crossover operator that uses Pareto optimality in its definition. TOP
doi:10.1007/s11750-009-0082-7 (2009)
Alberto, I., Mateo, P.M.: Re-implementing NSGA-II and SPEA2 using operators based on Pareto ranking.
In: Proceedings of the Pyrenees International Workshop and Summer School on Statistics, Probability
and Operations Research, (SPO09), Prensas Universitarias de Zaragoza, Zaragoza (2011)
Beyer, H.G., Schwefel, H.P.: Evolution strategies. A comprehensive introduction. Nat. Comput. 1, 352
(2002)
Casella, G., Berger, R.L.: Statistical inference, 2nd edn. In: Duxbury Advanced Series, Pacific Grove,
California (2002)
CEC (2007) Special session and competition on performance assessment of multi-objective optimization
algorithms. http://www3.ntu.edu.sg/home/epnsugan/ (2007). Accessed August 2008
Chen, M.R., Lu, Y.Z.: A novel elitist multiobjective optimization algorithm: Multiobjective extremal optimization. Eur. J. Oper. Res. 188, 637651 (2008)
Coello, C.A.: EMOO repository (Online). http://delta.cs.cinvestav.mx/~ccoello/EMOO/ (2009). Accessed
October 2009
Coello, C.A., Lamont, G.B., Van Veldhuizen, D.A.: Evolutionary Algorithms for Solving Multi-Objective
Problems, 2nd edn. Springer, Berlin (2007)
Deb, K.: Multi-Objective Optimization Using Evolutionary Algorithms. Wiley, Chichester (2001)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGAII. IEEE Trans. Evol. Comput. 6(2), 182197 (2002a)
Deb, K., Thiele, L., Laumanns, M., Zitzler, E.: Scalable multi-objective optimization test problems. In:
Proceedings of the Congress on Evolutionary Computation CEC2002, vol. 1, pp. 825830. IEEE
Press, Piscataway (2002b)
Deb, K., Goyal, M.: A Combined genetic adaptive search (GeneAS) for engineering design. Comput. Sci.
Inf. 26(4), 3045 (1996)
Deep, K., Thakur, M.: A new mutation operator for real coded genetic algorithms. Appl. Math. Comput.
193, 211230 (2007)
Dong, H., He, J., Huang, H., Hou, W.: Evolutionary programming using mixed mutation strategy. Inf. Sci.
177, 312327 (2007)
Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing, 2nd edn. printing. Springer, Berlin
(2007)
155
Ap
endice B
Indices de impacto
Las revistas en las que han sido publicados los artculos que componen la
memoria son las siguientes:
European Journal of Operational Research. Categora: Operations
research and management science, posicion 10 de 73. Indice de impacto
2009: 2.093, Figura B.1, pagina 158.
TOP. Categora: Operations research and management science, posicion
47 de 73. Indice de impacto 2009: 0.865, Figura B.2, pagina 159.
Journal of Heuristics. Categora: Computer science, articial intelligence, posicion 58 de 103. Categora: Computer science: theory and
methods, posicion 35 de 92. Indice de impacto 2009: 1.264, Figuras B.3,
pagina 160 y B.4, pagina 161.
157
158
Page 1 of 2
Impact Factor
[1|2|3|4]
Page 1 of 4
Mark Rank
Abbreviated Journal
Title
(linked to journal
information)
EigenfactorTM Metrics
JCR Data
ISSN
Article
5-Year
Cited
TM
Total Impact
Immediacy
Impact
Articles Half- Eigenfactor
InfluenceTM
Cites Factor
Index
Score
Factor
life
Score
J OPER MANAG
02726963
3029
3.238
4.178
0.645
0305OMEGA-INT J MANAGE S
0483
2510
3.101
3.235
09574174
5421
2.908
3.162
01679236
3376
2.622
TECHNOVATION
01664972
1747
31
7.9
0.00576
1.120
0.653
95
8.2
0.00468
0.767
0.394
1385
3.0
0.00987
0.403
2.842
0.269
119
5.6
0.00884
0.683
2.466
2.126
0.306
72
5.0
0.00375
0.386
65
9.1
0.00733
1.319
141 >10.0
0.03492
2.438
3084
2.268
3.187
0.492
2.227
4.125
0.277
MANAGE SCI
002520103
1909
M&SOM-MANUF SERV OP
15234614
950
2.149
03050548
5033
2.116
037722478
2217
10591478
12
09255273
13
MATH PROGRAM
00255610
0.429
42
6.5
0.00588
2.443
0.351
271
5.9
0.01778
0.846
2.093
2.599
0.417
729
8.3
0.05100
0.799
1191
2.080
2.806
0.156
45
6.3
0.00533
1.273
6120
2.068
2.736
0.355
321
5.9
0.01361
0.595
6010
2.048
2.889
0.646
96 >10.0
0.01520
1.933
13665545
915
1.958
2.303
0.136
81
5.8
0.00349
0.834
09518320
3890
1.908
2.305
0.340
200
6.9
0.00938
0.645
01676911
4609
1.797
2.615
0.174
121
9.4
0.01501
1.250
17
OR SPECTRUM
01716468
840
1.625
2.173
0.182
33
7.0
0.00266
0.788
18
OPER RES
0030364X
9661
1.576
2.671
0.268
112 >10.0
0.01434
1.664
J QUAL TECHNOL
00224065
2049
1.500
2.350
0.310
29 >10.0
0.00383
1.343
TRANSPORT SCI
00411655
2884
1.479
3.596
0.088
34 >10.0
0.00581
1.526
10
11
14
15
16
19
20
[1|2|3|4]
http://sauwok.fecyt.es/admin-apps/JCR/JCR
Page 1 of 4
31/01/2011
159
JCR-Web 4.5 Journal Summary List
Page 1 of 2
Impact Factor
[1|2|3|4]
Page 3 of 4
Mark Rank
Abbreviated Journal
Title
(linked to journal
information)
EigenfactorTM Metrics
JCR Data
Article
Cited
ISSN Total Impact 5-Year Immediacy
TM
Articles Half- Eigenfactor
Impact
InfluenceTM
Cites Factor
Index
Score
Factor
life
Score
41
CONCURRENT ENG-RES A
1063293X
354
0.959
1.132
0.000
23
42
OPTIM LETT
18624472
90
0.926
0.938
0.264
53
09246703
277
0.921
1.024
0.150
20
00201666
7721
0.918
0.944
0.108
09206299
366
0.903
1.365
10556788
682
0.866
0.969
47
TOP
11345764
166
0.865
48
08942615
069X
0.847
1.249
49
INTERFACES
00921552
2102
0.838
IEEE SYST J
19328184
55
00206950
7543
16194500
130
0.750
53
INFOR
03155986
454
0.738
0.843
54
09531145
7287
0.730
1.151
55
DISCRETE OPTIM
15725286
179
0.729
56
01671962
6377
0.681
57
43
44
45
46
50
51
52
58
59
60
6.7
0.00066
0.247
0.00072
0.429
7.8
0.00087
0.491
111
9.8
0.00264
0.283
9.4
0.00061
0.396
0.500
52
7.0
0.00338
0.636
0.000
24
6.5
0.00076
0.074
54 >10.0
0.00476
0.722
1.267
0.027
37 >10.0
0.00216
0.533
0.825
0.825
0.062
48
0.00054
0.414
0.803
1.363
0.077
338
9.5
0.01014
0.348
0.000
31
4.2
0.00124
>10.0
0.00072
0.338
0.000
58
8.1
0.00216
0.321
0.051
39
4.0
0.00187
1.049
0.096
94 >10.0
0.00683
0.620
483
0.676
0.966
0.118
34
8.5
0.00257
0.706
QUEUEING SYST
02571279
0130
0.660
1.103
0.065
46 >10.0
0.00435
0.826
0951192X
674
0.659
0.997
0.079
76
6.2
0.00159
0.238
OPTIMIZATION
02331934
797
0.616
0.915
0.177
62 >10.0
0.00267
0.605
[1|2|3|4]
http://sauwok.fecyt.es/admin-apps/JCR/JCR?RQ=LIST_SUMMARY_JOURNAL&c...
Page 3 of 4
31/01/2011
160
JCR-Web 4.5 Journal Summary List
Page 1 of 2
Impact Factor
[1|2|3|4|5|6]
Page 3 of 6
Mark Rank
Abbreviated Journal
Title
(linked to journal
information)
EigenfactorTM Metrics
JCR Data
Article
Cited
ISSN Total Impact 5-Year Immediacy
TM
Articles Half- Eigenfactor
Impact
InfluenceTM
Cites Factor
Index
Score
Factor
life
Score
41
MACH LEARN
08857305
6125
1.663
4.099
0.896
48 >10.0
0.00768
1.740
42
09331475
3657
1.645
2.447
0.286
56
6.7
0.00349
0.653
43
0954NETWORK-COMP NEURAL
898X
792
1.536
2.049
0.000
11
8.9
0.00149
0.871
44
551
1.510
2.342
0.258
31
6.0
0.00125
0.528
02622926
8856
1.474
1.767
0.286
161
6.7
0.00782
0.592
09521483
1976
1.444
1.800
0.234
124
5.4
0.00436
0.459
47
NEUROCOMPUTING
09254108
2312
1.440
1.459
0.240
400
4.9
0.01156
0.351
48
09241074
9907
1.437
2.467
0.246
61
5.4
0.00662
1.229
49
15564665
114
1.364
2.707
0.143
21
3.1
0.00076
0.892
09211526
8890
1.361
1.650
0.130
115
6.5
0.00383
0.451
SOFT COMPUT
14321096
7643
1.328
1.405
0.755
98
3.8
0.00431
0.403
02196220
322
1.312
1.379
0.133
30
3.6
0.00076
0.180
53
KNOWL-BASED SYST
09507051
933
1.308
1.406
0.139
79
6.3
0.00177
0.270
54
01674545
8655
1.303
1.772
0.088
171
6.4
0.01310
0.560
55
CONSTRAINTS
13837133
307
1.297
1.667
0.350
20
6.4
0.00102
0.603
14337541
471
1.293
1.627
0.094
32
5.8
0.00136
0.437
J CHEMOMETR
08862095
9383
1.291
1.859
0.441
68
7.9
0.00375
0.588
J HEURISTICS
13811231
764
1.264
1.728
0.440
25
8.1
0.00185
0.713
AUTON ROBOT
09291215
5593
1.235
2.080
0.175
40
7.5
0.00269
0.646
EXPERT SYST
02664720
1.231
1.153
0.467
30
6.2
0.00059
0.241
45
46
50
51
52
56
57
58
59
60
332
[1|2|3|4|5|6]
http://sauwok.fecyt.es/admin-apps/JCR/JCR?RQ=LIST_SUMMARY_JOURNAL&c...
Page 3 of 6
31/01/2011
161
JCR-Web 4.5 Journal Summary List
Page 1 of 2
Impact Factor
[1|2|3|4|5]
Page 2 of 5
Mark Rank
Abbreviated Journal
Title
(linked to journal
information)
EigenfactorTM Metrics
JCR Data
Article
Cited
ISSN Total Impact 5-Year Immediacy
TM
Articles Half- Eigenfactor
Impact
InfluenceTM
Cites Factor
Index
Score
Factor
life
Score
21
16155262
168
1.681
0.129
31
3.1
0.00086
22
IEEE MULTIMEDIA
1070986X
711
1.661
2.020
0.188
32
6.8
0.00192
0.611
SIAM J COMPUT
00975451
5397
1.614
1.938
0.407
54 >10.0
0.01192
1.262
PERFORM EVALUATION
01661154
5316
1.560
1.516
0.120
50
6.8
0.00352
0.525
DISTRIB COMPUT
01782770
539
1.508
1.653
0.067
15
8.5
0.00166
0.677
26
02622926
8856
1.474
1.767
0.286
161
6.7
0.00782
0.592
27
250
1.467
1.518
0.200
15
4.6
0.00131
0.571
28
15564665
114
1.364
2.707
0.143
21
3.1
0.00076
0.892
29
J SYST SOFTWARE
01641806
1212
1.340
1.290
0.132
167
5.7
0.00562
0.370
13873326
432
1.309
1.298
0.044
45
6.1
0.00066
0.198
00223279
0000
1.304
1.628
0.267
30 >10.0
0.00663
0.962
CONSTRAINTS
13837133
307
1.297
1.667
0.350
20
6.4
0.00102
0.603
33
IBM SYST J
00181701
8670
1.289
1.975
8.6
0.00185
0.376
34
10943420
650
1.274
1.848
0.024
41
6.3
0.00241
0.702
35
J HEURISTICS
13811231
764
1.264
1.728
0.440
25
8.1
0.00185
0.713
EXPERT SYST
02664720
332
1.231
1.153
0.467
30
6.2
0.00059
0.241
J COMPLEXITY
0885064X
819
1.227
1.305
0.270
37
7.5
0.00466
1.005
INFORM COMPUT
08904497
5401
1.225
1.376
0.152
66 >10.0
0.00336
0.502
15293785
404
1.212
0.486
35
4.8
0.00224
REAL-TIME SYST
09226443
520
1.200
0.136
22
7.9
0.00118
23
24
25
30
31
32
36
37
38
39
40
1.397
[1|2|3|4|5]
http://sauwok.fecyt.es/admin-apps/JCR/JCR?RQ=LIST_SUMMARY_JOURNAL&c...
0.416
Page 2 of 5
03/05/2011
Bibliografa
Abbass H.A. and Sarker R. (2002) The Pareto Dierential Evolution Algorithm. Int. J. Artif. Intell. T. 11(4), 531552.
Alberto I. and Mateo P.M. (2009a) A crossover operator that uses Pareto
Optimality in its denition. TOP. doi:10.1007/s11750-009-0082-7
Alberto I. and Mateo P.M. (2008) Using Pareto Optimality for Dening the
Mutation Operator Step Size. Technical Report. In: Prepublicaciones del
Seminario Matematico Garca Galdeano, University of Zaragoza, 8, 119.
Alberto I. and Mateo P.M. (2009b) Re-implementing NSGA-II and SPEA2
using operators based on Pareto ranking. In: Proceedings of the Pyrenees
International Workshop and Summer School on Statistics, Probability and
Operations Research, (SPO09), to appear.
Alberto I., Azcarate C., Mallor F. and Mateo P.M. (2002) Optimization with
simulation and multiobjective analysis in industrial decision-making: A case
study. European Journal of Operational Research, 140(2), 373383.
Back T. and Schwefel H.P. (1995) Evolution strategies I: Variants and their
computational implementation. In: Winter, G., Periaux, J., Galan, M., Cuesta, P. (Eds.), Genetic Algorithms in Engineering and Computer Science,
Proceedings of 1st Short Course EUROGEN-95. Wiley, New York, 111126.
Beyer H.G. and Schwefel H.P. (2002) Evolution strategies. A comprehensive
introduction. Nat. Comput. 1, 352.
Casella G. and Berger, R.L. (2002) Statistical Inference, 2nd edn. Duxbury
Advanced Series, Pacic Grove, California.
CEC (2007) Special Session and Competition on Performance Assessment of Multi-Objective Optimization Algorithms. Available in web page
http://www3.ntu.edu.sg/home/epnsugan/. Accessed August 2008.
Chen M.R. and Lu Y.Z. (2008) A novel elitist multiobjective optimization
algorithm: Multiobjective extremal optimization. Eur. J. Oper. Res. 188,
637651.
163
164
Bibliografa
Bibliografa
165
Fonseca C.M. and Fleming P.J. (1993) Genetic Algorithms for Multi-Objective
Optimization: Formulation, Discussion and Generalization. In: Forrest, S.
(ed) Genetic Algorithms: Proceedings of the Fifth International Conference,
416423. Morgan Kaufmann Publishers, San Mateo, California.
Fonseca C.M., Paquete L. and Lopez-Ibanez M. (2006a) An improved
dimension-sweep algorithm for the hypervolume indicator. In: Congress on
Evolutionary Computation CEC2006, 11571163. IEEE Press, Vancouver,
Canada.
Fonseca
C.M.,
Paquete
L.
and
Lopez-Ibanez
M.
(2006b)
Computation
of
the
Hypervolume
Indicator,
codes.
http://sbe.napier.ac.uk/ manuel/hypervolume. Accessed August 2008.
Fu J., Liu Q., Zhou X., Xiang K. and Zeng, Z. (2008) An Adaptive Variable
Strategy Pareto Dierential Evolution Algorithm for Multi-Objective Optimization. In: Proceedings of the Congress on Evolutionary Computation
(CEC08), 648652. IEEE Press.
Goldberg D.E. (1989) Genetic Algorithms in Search, Optimization and Machine Learning. Addison Wesley, Reading, Massachusetts.
Gomes A., Antunes C.H. and Martins, A.G. (2008) Design of an adaptive
mutation operator in an electrical load management case study. Comput.
Oper. Res. 35, 29252936.
Herrera F., Lozano M. and Verdegay J.L. (1998) Tackling Real-Coded GeneticAlgorithms: Operators and Tools for Behavioural Analysis. Articial
Intelligence Review 12(4), 265319.
Holland J.H. (1975) Adaptation in natural and articial systems. University
of Michigan press, Ann Arbor, Michigan.
Huang V.L., Qin A.K., Deb K., Zitzler E., Suganthan P.N., Liang J.J., Preuss
M., and Huband, S. (2007a) Problem denitions for performance assessment on multiobjective optimization algorithms. Tech. Rep. CEC-TR2007,
Nanyang Technological University, Singapore.
Huang V.L., Qin A.K., Suganthan P.N. and Tasgetire M.F. (2007b) Multiobjective Optimization based on Self.adaptive Dierential Evolution Algorithm. In: Proceedings of the Congress on Evolutionary Computation
(CEC07), 36013608.
Huband S., Hingston P., Barone L. and While L. (2007) A review of multiobjective test problems and a scalable test problem toolkit. IEEE Transactions
on Evolutionary Computation 10(5), 477506.
166
Bibliografa
Bibliografa
167
168
Bibliografa