You are on page 1of 125

CENTRO DE INVESTIGACI

ON Y DE ESTUDIOS
AVANZADOS DEL INSTITUTO POLIT

ECNICO NACIONAL
DEPARTAMENTO DE COMPUTACI

ON
Optimizaci on multiobjetivo mediante un algoritmo hbrido
basado en c omputo evolutivo y m etodos cl asicos de
optimizaci on
Tesis que presenta
Sa ul Zapotecas Martnez
Para obtener el grado de
Maestro en Ciencias
en la especialidad de
Ingeniera El ectrica
Director de la Tesis: Dr. Carlos A. Coello Coello
M exico, D. F. Diciembre 2007
Dedicatoria
Con todo mi amor a mis padres Lauro e In es, quienes con sus esfuerzos, desvelos y
preocupaciones, me han provedo de todo lo necesario para lograr mis metas.
A mi hermana Vero, a quien quiero mucho y a quien brindo todo mi apoyo
en lo que en un futuro pudiera requerir.
A la memoria de mis abuelos Marina, Cirilo y Andrea.
Sin olvidar a mi ta Natalia. Descansen en paz.
AGRADECIMIENTOS
A mis padres y a mi herma por el apoyo que me brindaron durante toda esta ventura.
Sin ustedes, mis logros no seran posibles.
A mis primos Victor y Maru, quienes me brindaron su apoyo incondicional durante este
proyecto. Y no olvidar al peque no Diego, qui en inconcientemente me mantuvo despierto
en momentos necesarios.
A todos mis compa neros de generaci on. En especial a Cuahutemoc, Jorge y Daniel
con quienes compart desvelos y buenos momentos. No olvidar tambi en a Marco, Victor,
William, Carlos y Juanito, gracias por sus comentarios acertados y no tanto. Fue un gusto
conocerlos.
A So qui en nos ofrece todo su apoyo incondicional, gracias por preocuparte y
ocuparte de nosotros.
Al Dr. Carlos A. Coello, por haberme dado la oportunidad de elaborar la tesis bajo su
direcci on y por el apoyo incondicional brindado, en momentos difciles durante la maestra.
Al Dr. Luis Gerardo de la Fraga y a la Dra. Xiaoou Li, por los comentarios acertados a
esta tesis y lograr con ello, un mejor trabajo.
Al CINVESTAV por permitir formar parte de esta gran instituci on.
Al CONACyT por el apoyo econ omico brindado, sin este no hubiese podido llevar a
cabo este proyecto.
Este trabajo de tesis se deriv o del proyecto CONACyT titulado Articial Immune Sys-
tems for Multiobjective Optimization (Ref. 42435-Y), cuyo responsable es el Dr. Carlos
A. Coello Coello.
RESUMEN
En el mundo real, existe una gran cantidad de problemas de optimizaci on para los
cuales los m etodos cl asicos de programaci on matem atica no pueden garantizar que la
soluci on obtenida sea optima. Adem as, estos m etodos pueden resultar poco ecientes y
en algunos casos inoperables para un determinado problema. Para estos problemas m as
complejos de optimizaci on, es cuando se justica plenamente el uso de metaheursti-
cas. Los algoritmos evolutivos son metaheursticas que en los ultimos a nos se han vuelto
muy populares debido a su simplicidad conceptual y su eciencia en este tipo de problemas.
Los algoritmos evolutivos han sido utilizados exitosamente en el area de optimizaci on
multiobjetivo, debido a que por su naturaleza (basada en poblaciones) permiten generar
varias soluciones del conjunto de optimos de Pareto en una sola ejecuci on. Desafortu-
nadamente, cuando la funci on objetivo es computacionalmente costosa de evaluar, los
algoritmos evolutivos suelen volverse impr acticos.
En esta tesis presentamos dos nuevos algoritmos hbridos basados en c omputo evoluti-
vo y m etodos cl asicos de optimizaci on. El primero denominado Nonlinear Simplex Search
Differential Evolution (NSSDE) para optimizaci on global, est a basado en la heurstica
de evoluci on diferencial (ED) y utiliza el m etodo de Nelder-Mead como buscador local.
La nalidad de esta implementaci on es dise nar una estrategia de b usqueda local, que
pueda ser utilizada de manera similar en el problema de optimizaci on multiobjetivo (el
cual es el objetivo principal de esta tesis). El segundo algoritmo hbrido denominado
Nonlinear Simplex Search Genetic Algorithm (NSS-GA) para optimizaci on multiobjetivo,
est a basado en el algoritmo evolutivo multiobjetivo Non-dominated Sorting Genetic
Algorithm-II (NSGA-II), acoplando los m etodos cl asicos de optimizaci on matem atica
de Nelder-Mead (para funciones multidimensionales) y el de la secci on dorada (para
funciones unidimensionales) que fungen como buscadores locales.
La motivaci on principal de estas dos hibridizaciones, es aprovechar el poder explo-
rativo de los algoritmos evolutivo y el poder explotativo de los m etodos de programa-
ci on matem atica. Los resultados obtenidos en nuestras dos propuestas NSSDE y NSS-GA,
son comparados con respecto a los obtenidos por los algoritmos evolutivos simples ED y
NSGA-II, respectivamente. Nuestras propuestas algortmicas muestran tener mejores re-
sultados, en la mayora de las funciones de prueba adoptadas.
I
II
ABSTRACT
In the real world, there are a lot of optimization problems for which traditional methods
of mathematical programming cannot guarantee that the solution obtained is optimun.
Furthermore, these methods can be inefcient and in some times inoperable for a particular
problem. For these more complex optimization problems, the use of metaheuristics is fully
justied. The evolutionary algorithms are metaheuristics which in the recent years have
become very popular because for their conceptual simplicity and efciently in these types
of problems.
Evolutionary algorithms have been used successfully in the multiobjective optimization
area, for their nature (based on a population) allow to generate multiple solutions of the
Pareto optimal set in a single run. Unfortunately, when the function is computationally
expensive to evaluate, evolutionary algorithms often become impractical.
In this thesis, we present two new hybrid algorithms based on evolutionary computation
and classical optimization methods. The rst algorithm called Nonlinear Simplex Search
Differential Evolution (NSSDE) for global optimization, is based on the Differential
Evolution heuristic and uses the Nelder-Mead method as its local search mechanism. The
purpose of this implementation, is to design a local search strategy, which can be used in
an analogous way in the multiobjective optimization problem (which is the main objective
of this thesis). The second hybrid algorithm proposed is called Nonlinear Simplex Search
Genetic Algorithm (NSS-GA) for multiobjective optimization. This algorithm is based on
the Non-dominated Sorting Genetic Algorithm-II (NSGA-II), coupled with the classical
methods of mathematical programming Nelder-Mead (for multidimensinal functions) and
the golden section (for unidimensional functions) both act as local search engines.
The main motivation for these two hybridizations, is to exploit the explorative power of
the evolutionary algorithms and the exploitative power of the mathematical programming
methods. The results obtained in our two proposals, NSSDE and NSS-GA, are compared
with respect to the results obtained by the original evolutionary algorithms adopted, DE
and NSGA-II, respectively. Our proposed approaches have shown better results in most of
the test funcions adopted.
III
IV

INDICE GENERAL

Indice general V

Indice de tablas IX

Indice de guras XI

Indice de algoritmos XIII


1. Introducci on 1
1.1. Antecedentes y motivaci on . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5. Organizaci on de la tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Optimizaci on 7
2.1. Antecedentes hist oricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. Optimizaci on global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3. M etodos de optimizaci on mono-objetivo . . . . . . . . . . . . . . . . . . . 10
2.3.1. M etodos cl asicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.1.1. M etodo de la secci on dorada . . . . . . . . . . . . . . . 12
2.3.1.2. M etodo de Nelder-Mead . . . . . . . . . . . . . . . . . . 14
2.3.2. M etodos no cl asicos . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4. Optimizaci on multiobjetivo . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5. T ecnicas de optimizaci on multiobjetivo . . . . . . . . . . . . . . . . . . . 20
2.5.1. M etodos a priori . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.5.1.1. M etodo de programaci on de metas . . . . . . . . . . . . 20
2.5.1.2. M etodo lexicogr aco . . . . . . . . . . . . . . . . . . . 21
2.5.2. M etodos a posteriori . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5.2.1. Combinaci on lineal de pesos . . . . . . . . . . . . . . . 21
2.5.2.2. M etodo de la restricci on . . . . . . . . . . . . . . . . . 22
2.5.3. M etodos progresivos . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.5.3.1. M etodo del escal on . . . . . . . . . . . . . . . . . . . . 22
V
VI

INDICE GENERAL
3. C omputo evolutivo multiobjetivo 25
3.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2. Algoritmos de primera generaci on . . . . . . . . . . . . . . . . . . . . . . 26
3.2.1. Vector Evaluated Genetic Algorithm (VEGA) . . . . . . . . . . . . 26
3.2.2. Multi-objective Genetic Algorithm (MOGA) . . . . . . . . . . . . 26
3.2.3. Niched-Pareto Genetic Algorithm (NPGA) . . . . . . . . . . . . . 27
3.2.4. Non-dominated Sorting Genetic Algorithm (NSGA) . . . . . . . . 27
3.3. Algoritmos de segunda generaci on . . . . . . . . . . . . . . . . . . . . . . 30
3.3.1. Strength Pareto Evolutionary Algorithm (SPEA) . . . . . . . . . . 30
3.3.2. Strength Pareto Evolutionary Algorithm 2 (SPEA 2) . . . . . . . . 31
3.3.3. Pareto Archived Evolution Strategy (PAES) . . . . . . . . . . . . . 31
3.3.4. Non-dominated Sorting Genetic Algorithm-II (NSGA-II) . . . . . . 31
3.3.4.1. Enfoque del ordenamiento r apido no dominado . . . . . 32
3.3.4.2. Preservaci on de la diversidad en la poblaci on . . . . . . . 33
3.3.4.3. Ciclo completo del NSGA-II . . . . . . . . . . . . . . . 35
4. Propuesta mono-objetivo 39
4.1. Evoluci on diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.1. Optimizaci on global con ED . . . . . . . . . . . . . . . . . . . . . 40
4.1.1.1. Esquema ED1 . . . . . . . . . . . . . . . . . . . . . . . 40
4.1.1.2. Esquema ED2 . . . . . . . . . . . . . . . . . . . . . . . 40
4.1.2. Estrategias de ED . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2. Trabajos relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.3. Nuestra propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3.1. Fase de exploraci on . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.3.2. Fase de explotaci on . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.3.2.1. Criterio de frecuencia para aplicar la b usqueda local . . . 48
4.3.2.2. Criterio de parada de la b usqueda local . . . . . . . . . . 48
4.3.3. El algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.4. Resultados obtenidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.5. Conclusiones sobre los resultados obtenidos . . . . . . . . . . . . . . . . . 51
5. Propuesta multiobjetivo 55
5.1. Trabajos relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.2. Nuestra propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2.1. Fase de exploraci on . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2.2. Fase de explotaci on . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2.2.1. Selecci on de individuo para aplicar b usqueda local . . . . 58
5.2.2.2. Construcci on del simplex . . . . . . . . . . . . . . . . . 58
5.2.2.3. Lmites de las variables . . . . . . . . . . . . . . . . . . 62
5.2.2.4. Funci on agregativa . . . . . . . . . . . . . . . . . . . . . 63
5.2.3. El algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.3. M etricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3.1. Distancia Generacional Invertida (DGI ) . . . . . . . . . . . . . . 67

INDICE GENERAL VII


5.3.2. Espaciamiento (E) . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3.3. Cobertura (C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.4. Resultados obtenidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.4.1. ZDT1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.4.2. ZDT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.4.3. ZDT3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.4.4. ZDT4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.4.5. ZDT6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.4.6. DTLZ1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4.7. DTLZ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.5. Conclusiones sobre los resultados obtenidos . . . . . . . . . . . . . . . . . 77
6. Conclusiones y trabajo a futuro 79
6.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.2. Trabajo a futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
A. Funciones de prueba (mono-objetivo) 81
A.1. Modelo de esfera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
A.2. Problema de Schwefel 2.22 . . . . . . . . . . . . . . . . . . . . . . . . . . 81
A.3. Problema de Schwefel 1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . 81
A.4. Problema de Schwefel 2.21 . . . . . . . . . . . . . . . . . . . . . . . . . . 82
A.5. Funci on generalizada de Rosenbrok . . . . . . . . . . . . . . . . . . . . . 82
A.6. Funci on escal on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
A.7. Funci on Quartic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
A.8. Problema generalizado de Schwefel 2.26 . . . . . . . . . . . . . . . . . . . 82
A.9. Funci on generalizada de Rastrigin . . . . . . . . . . . . . . . . . . . . . . 83
A.10. Funci on de Ackley . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
A.11. Funci on generalizada de Griewank . . . . . . . . . . . . . . . . . . . . . . 83
A.12. Funciones generalizadas de penalizaci on . . . . . . . . . . . . . . . . . . . 83
A.12.1. Funci on generalizada de penalizaci on 1.1 . . . . . . . . . . . . . . 83
A.12.2. Funci on generalizada de penalizaci on 1.2 . . . . . . . . . . . . . . 83
A.13. Funci on trinchera de Shekel . . . . . . . . . . . . . . . . . . . . . . . . . 84
A.14. Funci on de Kowalik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
A.15. Funci on Six-Hump Camel-Back . . . . . . . . . . . . . . . . . . . . . . . 84
A.16. Funci on de Branin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
A.17. Funci on de Goldstein-Price . . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.18. Familia de Hartman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.18.1. Familia de Hartman 1.1 . . . . . . . . . . . . . . . . . . . . . . . . 85
A.18.2. Familia de Hartman 1.2 . . . . . . . . . . . . . . . . . . . . . . . . 85
A.19. Familia de Shekel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.19.1. Familia de Shekel 1.1 . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.19.2. Familia de Shekel 1.2 . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.19.3. Familia de Shekel 1.3 . . . . . . . . . . . . . . . . . . . . . . . . . 86
VIII

INDICE GENERAL
B. Funciones de prueba (multi-objetivo) 89
B.1. Funci on ZDT1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
B.2. Funci on ZDT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
B.3. Funci on ZDT3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
B.4. Funci on ZDT4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
B.5. Funci on ZDT6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
B.6. Funci on DTLZ1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
B.7. Funci on DTLZ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
C. Convergencia en los problemas multi-objetivo 93
Bibliografa 99

INDICE DE TABLAS
4.1. Comparaci on de ED y NSSDE . . . . . . . . . . . . . . . . . . . . . . . . 52
5.1. Par ametros utilizados para la comparaci on entre el NSS-GA y el NSGA-II . 69
5.2. Resultado de las m etricas para la funci on ZDT1 . . . . . . . . . . . . . . . 70
5.3. Resultado de las m etricas para la funci on ZDT2 . . . . . . . . . . . . . . . 71
5.4. Resultado de las m etricas para la funci on ZDT3 . . . . . . . . . . . . . . . 72
5.5. Resultado de las m etricas para la funci on ZDT4 . . . . . . . . . . . . . . . 73
5.6. Resultado de las m etricas para la funci on ZDT6 . . . . . . . . . . . . . . . 74
5.7. Resultado de las m etricas para la funci on DTLZ1 . . . . . . . . . . . . . . 75
5.8. Resultado de las m etricas para la funci on DTLZ2 . . . . . . . . . . . . . . 76
A.1. Funci on de Kowalk f
15
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
A.2. Funci on de Hartman f
19
. . . . . . . . . . . . . . . . . . . . . . . . . . . 86
A.3. Funci on de Hartman f
20
. . . . . . . . . . . . . . . . . . . . . . . . . . . 86
A.4. Funciones de Shekel f
21
, f
22
y f
23
. . . . . . . . . . . . . . . . . . . . . . 87
IX
X

INDICE DE TABLAS

INDICE DE FIGURAS
2.1. Mnimo global y mnimo local . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2. Una taxonoma de los algoritmos de optimizaci on . . . . . . . . . . . . . . 11
2.3. Proporci on aurea
a
b
=
a+b
a
. . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4. Posibles movimientos del algoritmo de Nelder-Mead. En este caso, el sim-
plex minimiza una funci on en R
3
. . . . . . . . . . . . . . . . . . . . . . . 15
2.5. Mapeo de evaluaci on de un POM, para n = 2 y k = 3 . . . . . . . . . . . . 18
2.6. Dominancia de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1. Jerarquizaci on de niveles de dominancia . . . . . . . . . . . . . . . . . . . 29
3.2. Distancia de agrupamiento . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3. Procedimiento del NSGA-II . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1. Esquema ED1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2. Generaci on de vectores utilizando evoluci on diferencial con base a la es-
trategia (ED1/aleatorio/1/bin) . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3. Esquema general del algoritmo hbrido NSSDE . . . . . . . . . . . . . . . 51
4.4. Gr aca comparativa entre ED y NSSDE (parte 1) . . . . . . . . . . . . . . 53
4.5. Gr aca comparativa entre ED y NSSDE (parte 2) . . . . . . . . . . . . . . 53
5.1. Doscientos puntos creados con: a) una distribuci on uniforme; b) una dis-
tribuci on normal, con media .5 y desviaci on est andar .5; c) la secuencia de
Halton en R
2
y d) la secuencia de Hammersley en R
2
. . . . . . . . . . . . 61
5.2. Esquema del algoritmo hbrido NSS-GA . . . . . . . . . . . . . . . . . . . 65
5.3. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT1 70
5.4. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT2 71
5.5. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT3 72
5.6. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT4 73
5.7. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT6 74
5.8. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo
DTLZ1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.9. Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo
DTLZ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
XI
XII

INDICE DE FIGURAS
C.1. Convergencia al frente de Pareto verdadero en la funci on ZDT1 con 7,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 94
C.2. Convergencia al frente de Pareto verdadero en la funci on ZDT2 con 7,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 94
C.3. Convergencia al frente de Pareto verdadero en la funci on ZDT3 con 7,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 95
C.4. Convergencia al frente de Pareto verdadero en la funci on ZDT4 con 16,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 95
C.5. Convergencia al frente de Pareto verdadero en la funci on ZDT6 con 7,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 96
C.6. Convergencia al frente de Pareto verdadero en la funci on DTLZ1 con
70,000 evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . 96
C.7. Convergencia al frente de Pareto verdadero en la funci on DTLZ2 con 7,000
evaluaciones de la funci on objetivo . . . . . . . . . . . . . . . . . . . . . . 97

INDICE DE ALGORITMOS
1. Algoritmo de la secci on dorada . . . . . . . . . . . . . . . . . . . . . . . . 13
2. Algoritmo de Nelder-Mead . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. Multi-objective Genetic Algorithm (MOGA) . . . . . . . . . . . . . . . . . 27
4. Niched-Pareto Genetic Algorithm (NPGA) . . . . . . . . . . . . . . . . . . 28
5. Non-dominated Sorting Genetic Algorithm (NSGA) . . . . . . . . . . . . . 29
6. Strength Pareto Evolutionary Algorithm (SPEA) . . . . . . . . . . . . . . . 30
7. Pareto Archived Evolution Strategy (PAES) . . . . . . . . . . . . . . . . . 32
8. Enfoque del ordenamiento r apido no dominado . . . . . . . . . . . . . . . . 37
9. Asignaci on de la distancia de agrupamiento . . . . . . . . . . . . . . . . . 38
10. Non-dominated Sorting Genetic Algorithm II (NSGA-II) . . . . . . . . . . . 38
11. Evoluci on diferencial estrategia: ED1/aleatorio/1/bin . . . . . . . . . . . . 44
12. Nonlinear Simplex Search Differential Evolution (NSSDE) . . . . . . . . . . 50
13. Secuencia de Halton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
14. Nonlinear Simplex Search Genetic Algorithm (NSS-GA) . . . . . . . . . . . 66
XIII
XIV

INDICE DE ALGORITMOS
CAP

ITULO 1
INTRODUCCI

ON
La optimizaci on es una rama de las matem aticas que busca minimizar o maximizar
el valor de una funci on, eligiendo sistem aticamente los valores de las variables de deci-
si on, en un espacio de b usqueda determinado. En el caso de problemas de optimizaci on
con multimples objetivos, se intenta optimizar simult aneamente un conjunto de funciones.
Com unmente, dichas funciones entran en conicto unas con otras, de tal forma que opti-
mizar una funci on implica deteriorar el desempe no de otras. A diferencia de los problemas
de optimizaci on global en los que s olo existe un unico valor optimo, en los problemas mul-
tiobjetivo se trata de encontrar un compromiso entre las distintas funciones objetivo, por lo
que se suele obtener un conjunto de soluciones. De esta manera, en un problema de optimi-
zaci on multiobjetivo se puede presentar un conjunto incontable de soluciones, las cuales,
cuando son evaluadas, producen vectores cuyos componentes representan los compromisos
(trade-offs) en el espacio de las funciones objetivo [10].
1.1. Antecedentes y motivaci on
Muchos problemas de optimizaci on han logrado resolverse satisfactoriamente median-
te m etodos de programaci on matem atica. Sin embargo, a la fecha no existe ning un m etodo
determinstico que pueda resolver todos los problemas no lineales de optimizaci on (ya sea
mono-objetivo o multiobjetivo) en su caso m as general, garantizando optimalidad en las
soluciones obtenidas. Para el caso particular de los problemas no lineales m as complejos
(p. ej., con espacios de b usqueda muy grandes, accidentados, con alta multimodalidad,
etc.), es cuando se justica m as plenamente el uso de metaheursticas (como el c omputo
evolutivo) como un m etodo alternativo de optimizaci on.
La motivaci on principal de utilizar algoritmos evolutivos (AE) para resolver problemas
de optimizaci on multiobjetivo, se debe principalmente a su inherente paralelismo y a
su capacidad para explotar el vecindario de las soluciones, mediante el operador de
recombinaci on. La ventaja que tienen los algoritmos evolutivos en estos problemas, radica
1
2 1.1. Antecedentes y motivaci on
en la poblaci on con la que trabajan. Esto permite al algoritmo, generar varios elementos
del conjunto de optimos de Pareto en una sola ejecuci on. Por otro lado, la complejidad que
tienen los problemas de optimizaci on multiobjetivo, pueden volver inecaces (o incluso
inoperantes) a las t ecnicas tradicionales desarrolladas para este tipo de problemas.
Un hbrido se dene como el producto de combinar dos elementos de distinta
naturaleza [60].
En este trabajo, se combinan conceptos tomados tanto del c omputo evolutivo como de
m etodos cl asicos de optimizaci on. La motivaci on principal radica en idear un algoritmo
hbrido que combine adecuadamente el poder explorativo del algoritmo evolutivo, con el
poder de explotaci on de un m etodo de programaci on matem atica. Este esquema es similar
a la estrategia utilizada por los algoritmos mem eticos [51, 52].
C omputo evolutivo
La computaci on evolutiva es una area de investigaci on en las ciencias de la compu-
taci on; como su nombre los sugiere, es un tipo de computaci on que engloba una serie de
t ecnicas inspiradas en la teora Neo-Darwiniana y es utilizada para resolver problemas de
una forma muy particular, con base en el ensayo-y-error
1
[21].
La idea de solucionar problemas bas andose en los principios de la evoluci on natural
no es nueva. La evoluci on natural fue vista como un proceso de aprendizaje desde los
1930s. En 1932, Walter D. Cannon en su libro The Wisdom of the Body plantea que el
proceso evolutivo es algo similar al aprendizaje por ensayo-y-error, que suele manifestarse
en los humanos [6]. En 1950, Alan M. Turing reconoci o una conexi on obvia entre la
evoluci on y el aprendizaje de m aquina en su artculo titulado Computing Machinery and
Intelligence [76]. Tambi en en 1957, George E. P. Box propuso un m etodo con un enfoque
evolutivo llamado Evolutionary Operation [5] para resolver problemas de optimizaci on
industrial.
Durante la d ecada de los 1960s, se desarrollaron tres t ecnicas inspiradas en la teora
Neo-Darwiniana, en lugares distintos y con motivaciones distintas. Hoy en da, estas tres
t ecnicas evolutivas (programaci on evolutiva, estrategias evolutivas y algoritmos gen eticos)
son consideradas como los principales paradigmas del c omputo evolutivo.
1. Programaci on evolutiva. La programaci on evolutiva (PE) fue desarrollada por Law-
rence J. Fogel a mediados de los 1960s. Fogel simul o la evoluci on natural como
un proceso de aprendizaje, teniendo como objetivo generar inteligencia articial
[23, 22]. Este algoritmo evolutivo est a inspirado en el principio de evoluci on a ni-
vel de las especies. Utiliza una selecci on probabilstica y no requiere cruza o alg un
tipo de recombinaci on, puesto que una especie no puede mezclarse con otra.
1
Tambi en conocido como generar-y-probar.
Captulo 1. Introducci on 3
2. Estrategias evolutivas. Las estrategias evolutivas (EEs) fueron propuestas de forma
independiente en 1965, por Ingo Rechenberg [61] y Hans-Paul Schwefel [67] en Ale-
mania. Fueron desarrolladas originalmente para resolver problemas de optimizaci on
hidrodin amicos de alto grado de complejidad. En las EEs no s olo se evoluciona a las
variables del problema, sino tambi en a los par ametros de la misma t ecnica (a esto
se le denomina auto-adaptaci on). En esta t ecnica se simula el proceso evolutivo al
nivel de los individuos, por lo que la recombinaci on es posible y se utiliza un me-
canismo de selecci on determinstico. La propuesta original de la EE no contaba con
poblaci on, pero m as adelante fue introducida por Schwefel [68].
3. Algoritmos gen eticos. Los algoritmos gen eticos (AGs), originalmente denominados
planes reproductivos gen eticos [30], fueron desarrollados a principios de los 1960s
por John H. Holland, con el objetivo de resolver problemas de aprendizaje de m aqui-
na. Se caracterizan principalmente por la codicaci on de los individuos (tradicional-
mente se usa una cadena binaria); el mecanismo de selecci on (probabilstico); simu-
lan la evoluci on a nivel de individuos, siendo la cruza sexual el operador principal y
la mutaci on un operador secundario.
Los AGs trabajan a nivel genotpico y no utilizan un mecanismo de auto-adaptaci on
como las EEs, aunque el uso de dicha estrategia es posible y ha sido explorado en al-
gunos trabajos del area [13, 65]. Por otra parte, el elitismo
2
juega un papel crucial en
los AGs. Rudolph [63] demostr o que un AG requiere elitismo para poder converger
al optimo. Es por esto, que el elitismo es un mecanismo que se ha vuelto est andar en
los AEs modernos.
1.2. Planteamiento del problema
Las t enicas cl asicas de programaci on matem atica han sido desarrolladas y probados
desde hace tiempo, ofreciendo buenos resultados para determinados problemas. Des-
afortunadamente, no siempre es posible aplicar estos m etodos matem aticos. El c omputo
evolutivo ha sido utilizado para resolver problemas de optimizaci on m as complejos y
en la mayora de casos ha dado mejores resultados que los m etodos tradicionales de
optimizaci on. Por su naturaleza, los algoritmos evolutivos est an basados en poblaciones y
por tal motivo, requieren un n umero de evaluaciones de la funci on objetivo en el proceso
de optimizaci on que puede resultar elevado en ciertas aplicaciones.
Cuando dicha funci on es computacionalmente cara de evaluar, los algoritmos evolutivos
se vuelven impr acticos. Reducir el n umero de evaluaciones de la funci on de aptitud, en un
algoritmo evolutivo multiobjetivo del estado del arte, empleando m etodos de programaci on
matem atica como buscadores locales, es precisamente el tema que se aborda en esta tesis.
Para validar la eciencia del algoritmo hbrido propuesto, se le usar a para optimizar un
2
Se denomina elitismo al hecho de retener intacto al mejor individuo de cada generaci on.
4 1.3. Objetivos
conjunto de funciones que en la literatura han sido catalogadas como difciles para un
algoritmo evolutivo multiobjetivo moderno.
1.3. Objetivos
General
El objetivo general de esta tesis, es dise nar un algoritmo multiobjetivo hbrido que
combine un algoritmo evolutivo con una t ecnica de programaci on matem atica y que reduz-
ca el n umero de evaluaciones de la funci on de aptitud. El algoritmo evolutivo multiobjetivo
adoptado como base para la hibridizaci on es el Non-dominated Sorting Genetic Algorithm-
II (NSGA-II), al cual se le acopla el algoritmo de Nelder-Mead (para funciones multidi-
mensionales) y el de la secci on dorada (para funciones unidimensionales) como m etodos
de b usqueda local. Estos dos algoritmos son t ecnicas de programaci on matem atica.
Particulares
Dise nar un algoritmo hbrido mono-objetivo, con la nalidad de desarrollar una es-
trategia de b usqueda local que pueda ser utilizada en el caso de optimizaci on multi-
objetivo.
Dise nar una estrategia para la cual se puedan resolver problemas de optimizaci on
multiobjetivo, empleando m etodos tradicionales de optimizaci on global.
Mostrar que la implementaci on del buscador local mejora considerablemente el de-
sempe no del algoritmo evolutivo multiobjetivo adoptado en la hibridizaci on (en este
caso, el NSGA-II).
1.4. Contribuciones
Las principales contribuciones que se hacen en este trabajo son:
Un algoritmo hbrido mono-objetivo para optimizaci on global basado en la heurstica
de evoluci on diferencial y el m etodo de optimizaci on global de Nelder-Mead.
Un algoritmo hbrido multiobjetivo basado en el NSGA-II, acoplando los m etodos
cl asicos de optimizaci on de Nelder-Mead (para funciones multidimensionales) y el
de la secci on dorada (para funciones unidimensionales), que son utilizados como
buscadores locales.
El dise no de una estrategia de b usqueda local que es implementada en los algoritmos
hbridos, la cual da mejores resultados en comparaci on con los algoritmos evoltivos
simples adoptados.
Captulo 1. Introducci on 5
1.5. Organizaci on de la tesis
El resto de la tesis se describe a continuaci on:
Captulo 2. Optimizaci on: Se exponen los conceptos fundamentales de optimizaci on
as como los m etodos cl asicos adoptados para este trabajo. Tambi en se aborda el
tema de optimizaci on multiobjetivo y se presentan algunas de las t ecnicas tradicio-
nales para la resoluci on del mismo.
Captulo 3. C omputo evolutivo multiobjetivo: Se presentan algunas de las t ecnicas evo-
lutivas multiobjetivo que son consideradas como el estado del arte actual, entre ellas,
el algoritmo evolutivo multiobjetivo adoptado para este trabajo.
Captulo 4. Propuesta mono-objetivo: En este captulo se describe el algoritmo evoluti-
vo mono-objetivo adoptado y se detalla el hbrido mono-objetivo propuesto. Tam-
bi en, se presentan los resultados obtenidos al comparar el hbrido mono-objetivo con
el algoritmo evolutivo adoptado en su hibridizaci on.
Captulo 5. Propuesta multiobjetivo: En este captulo se presenta una descripci on deta-
llada del algoritmo hbrido multiobjetivo propuesto. La estrategia usada para acoplar
los m etodos cl asicos de optimizaci on como buscadores locales en el caso mono-
objetivo, se retoma para el caso multiobjetivo complementando sus deciencias.
Tambi en se presentan los resultados comparativos entre nuestra propuesta y el al-
goritmo evolutivo multiobjetivo simple adoptado.
Captulo 6. Conclusiones y trabajo a futuro: El ultimo captulo de esta tesis, donde se
presentan las conclusiones a las que se llegaron con base en los estudios y resultados
obtenidos. Adem as, se exponen las posibles lneas de investigaci on a seguir a futuro,
para extender este trabajo de tesis.
Ap endice A. Funciones de prueba (mono-objetivo): Se presenta el conjunto de funcio-
nes utilizadas para las pruebas del hbrido mono-objetivo.
Ap endice B. Funciones de prueba (multiobjetivo): Se presentan los problemas de opti-
mizaci on multiobjetivo utilizados para las pruebas y comparaciones del hbrido mul-
tiobjetivo.
Ap endice C. Convergencia en los problemas multiobjetivo: Se presentan las gr acas
donde se muestra la convergencia del algoritmo multiobjetivo propuesto, en los pro-
blemas multiobjetivo adoptados.
6 1.5. Organizaci on de la tesis
CAP

ITULO 2
OPTIMIZACI

ON
2.1. Antecedentes hist oricos
La optimizaci on, se puede denir como el proceso por el cual se busca minimizar o
maximizar el valor de una funci on, eligiendo sistem aticamente los valores de las variables
de decisi on, dentro de un espacio de b usqueda permisible.
La investigaci on de operaciones, es una rama de las matem aticas que engloba a
t ecnicas y m etodos cientcos aplicables a problemas de toma de decisiones, cuyo objetivo
es establecer la mejor soluci on, es decir, la optima. Los m etodos de optimizaci on, son
estudiados en el area de investigaci on de operaciones y su existencia se remonta a la epoca
de Isaac Newton (16431727), Joseph-Louis Lagrange (17361813) y Augustin-Louis
Cauchy (17891857).
El desarrollo de los m etodos de optimizaci on basados en el c alculo diferencial, fue
posible gracias a las aportaciones que Isaac Newton y Gottfried W. von Leibnitz (1646
1716) hicieron a dicha area. Johann Bernoulli (16671748), Leonhard Euler (17071783),
Joseph-Louis Lagrange y Karl Weirstass (18151897) sentaron los fundamentos del
c alculo de variaciones, que lidia con la minimizaci on de funciones. La primera aplicaci on
del m etodo del gradiente descendiente (conocido tambi en como descenso empinado), fue
desarrollada por Cauchy para resolver problemas de minimizaci on en espacios continuos.
Mientras que el m etodo de optimizaci on para problemas en espacios restringidos, fue
desarrollado por Lagrange, el cual involucra la adici on de multiplicadores conocidos hoy
en da como multiplicadores de Lagrange en honor a su inventor.
A pesar de estas primeras contribuciones, se logr o muy poco avance en el area. Fue
hasta mediados del siglo XX, cuando las computadoras digitales de alta velocidad, hicieron
posible la implementaci on de los algoritmos de optimizaci on existentes estimul andose el
desarrollo de nuevos m etodos. Esto marc o el inicio de una epoca increblemente productiva
7
8 2.1. Antecedentes hist oricos
en la que surgi o un volumen considerable de publicaciones sobre optimizaci on. Adem as,
surgieron varias areas bien denidas dentro de la teora de la optimizaci on.
Los principales desarrollos en el area de m etodos num ericos para la optimizaci on
de funciones sin restricciones, se llevaron a cabo en el Reino Unido en la d ecada de los
1960s. El m etodo simplex fue desarrollado por George Dantzing (19142005) en 1947 y
el principio de optimalidad para problemas de programaci on din amica fue anunciado en
1957 por Richard Bellman (19211984). Lo anterior, sent o las bases para el desarrollo
de m etodos de optimizaci on en espacios restringidos. Sin embargo, fue hasta 1951 con
el trabajo de Harold W. Kuhn (1925) y Albert W. Tucker (19051995) en torno a las
condiciones necesarias y sucientes para la soluci on de problemas de optimizaci on, que se
establecieron como fundamentos para el desarrollo de una gran cantidad de investigaci on
en optimizaci on no lineal. Aunque no ha sido encontrada alguna t ecnica aplicable a todos
los problemas de optimizaci on no lineal, los trabajos de C. W. Carroll, Anthony V. Fiacco
y Garth P. McCormick, permitieron resolver una amplia gama de problemas complejos
con restricciones utilizando funciones de penalizaci on.
La d ecada de los 1960s se caracteriz o por el surgimiento de nuevas t ecnicas de
optimizaci on, con enfoques distintos. La programaci on geom etrica fue desarrollada por
R. J. Dufn, C. Zener y E. L. Peterson a principios de los 1960s. Por otro lado, Ralph E.
Gomory fue pionero en realizar trabajos sobre programaci on entera, la cual ha sido una
de las areas de mayor crecimiento en optimizaci on. George Dantzig, Abraham Charnes
y William W. Cooper desarrollaron t ecnicas de programaci on estoc astica y resolvieron
problemas en los cuales, se presupone que los par ametros de dise no son independientes y
con una distribuci on normal.
El deseo de optimizar simult aneamente m as de una funci on objetivo, motiv o el
desarrollo de m etodos de programaci on multiobjetivo. Uno de los primeros m etodos
multiobjetivo fue la programaci on de metas (goal programming), propuesta por Charnes y
Cooper en 1961 para problemas lineales. Los fundamentos de la teora de juegos (la cual
guarda tambi en relaci on con la optimizaci on multiobjetivo) fueron estudiados en 1928 por
John von Neumman y desde entonces, esta t ecnica ha sido aplicada para resolver varios
problemas de economa.
La segunda mitad del siglo XX se caracteriz o por el advenimiento de t ecnicas heursti-
cas, tales como: el recocido simulado, los algoritmos gen eticos y las redes neuronales.
Esta clase de m etodos, han dado mejores resultados para los problemas de optimizaci on
m as complejos (p.ej., en espacios accidentados, funciones altamente no lineales, etc.).
Los problemas de optimizaci on pueden clasicarse de acuerdo a distintos criterios. El
que concierte a este trabajo, es en torno al n umero de funciones objetivo. En las siguientes
secciones presentaremos algunos conceptos b asicos y fundamentales en el desarrollo de
esta tesis, en su mayora tomados de [1] y [10].
Captulo 2. Optimizaci on 9
2.2. Optimizaci on global
La optimizaci on es el proceso de encontrar un valor mnimo o m aximo global de una
funci on, en un espacio de b usqueda permitido. El problema de optimizaci on global, puede
ser denido como:
DEFINICI

ON 1 (M

INIMO GLOBAL)
Dada una funci on f : R
n
R, ,= , para x

el valor f

= f (x

) > es
llamado mnimo global, si y s olo si:
x : f (x

) f (x) (2.1)
De esta manera, el vector x

es un punto mnimo global, f es la funci on objetivo, y el


conjunto es el subespacio de soluciones factibles. El problema de determinar un punto
mnimo global es llamado el problema de optimizaci on global y en este caso, se tendr a un
unico valor optimo global.
DEFINICI

ON 2 (RESTRICCIONES)
Sea = x R
n
[g
i
(x) 0i 1, 2, . . . , q la regi on factible de la funci on objetivo
f : R. Las funciones g
i
: R
n
R son llamadas restricciones, y en el puntox R
n
es
llamada una restricci on:
satisfecha g
j
(x) 0,
activa g
j
(x) = 0,
inactiva g
j
(x) > 0, y
violada g
j
(x) < 0.
El problema de optimizaci on global es llamado sin restricciones, si y s olo si, = R
n
;
en otro caso, es llamado con restricciones.
DEFINICI

ON 3 (M

INIMO LOCAL)
Para

x el valor

f = f (

x) es llamado mnimo local, si y s olo si:


R, > 0 : x : [x

x[ <

f f (x) (2.2)
En otras palabras, un ambiente- U

x) =x : [x

x[ < existe, tal que



f es el valor
factible m as peque no de la funci on objetivo, dentro de ese ambiente (ver gura 2.1).
El problema de maximizaci on puede reducirse a un problema de minimizaci on, si la
funci on a maximizar se multiplica por 1. En estas condiciones, el valor del m aximo de la
funci on ser a igual a menos el mnimo del negativo de la funci on, es decir:
m axf (x) = mn
x
f (x)
Debido al evidente isomorsmo existente entre los problemas de minimizaci on y maxi-
mizaci on, de ahora en adelante, hablaremos de optimizaci on reri endonos al problema de
minimizaci on.
10 2.3. M etodos de optimizaci on mono-objetivo
U
e
3
2
1
0
1
2
3
3
2
1
0
1
2
3
0
2
4
6
8
10
12
ptimo global
ptimo local
f(x , x )
1 2
x
1
10
8
6
4
2
10
8
6
4
2
x
2
Funcin de Ackley
W
x
^
Figura 2.1: Mnimo global y mnimo local
2.3. M etodos de optimizaci on mono-objetivo
En los antecedentes hist oricos mencionamos una serie de m etodos de optimizaci on que
fueron desarrollados a lo largo de los a nos. Lo que ha motivado el desarrollo de dichos
algoritmos, han sido los diferentes problemas que existen en el mundo real. Por esta
raz on, se han propuesto distintas taxonomas de estos m etodos [59, 14]. Por cuestiones
de simplicidad, nosotros clasicamos a estos m etodos en dos categoras: cl asicos y no
cl asicos (o estoc asticos, ver gura 2.2).
A continuaci on describiremos brevemente estas dos categoras y detallaremos los m eto-
dos cl asicos utilizados en este trabajo.
2.3.1. M etodos cl asicos
Los m etodos cl asicos de optimizaci on son algoritmos determinsticos que se caracte-
rizan por tener reglas especcas para moverse entre una soluci on y otra. Estos m etodos
han sido utilizados desde hace tiempo y han sido aplicados exitosamente en muchos pro-
blemas de dise no, en el area de ingeniera. En la actualidad, existe una gran variedad de
estos m etodos. Puede encontrarse una amplia recopilaci on de ellos en [59] y [14]. En estos
m etodos, se distinguen dos grandes grupos: los m etodos basados en derivadas y los m eto-
dos de b usqueda directa, que han sido denidos de acuerdo a sus bases conceptuales (ver
gura 2.2).
Captulo 2. Optimizaci on 11
Algoritmos de Optimizacin
De bsqueda directa
Mtodos estocsticos
Biseccin
Newton-Raphson
Descenso empinado
Gradiente conjugado
Mtodos de Quasi-Newton
(DFP, BFGS)
Fibonacci
Seccin dorada
Hooke-Jeeves
Nelder-Mead
Direcciones conjugadas
{
{ {
Basados en derivadas
Mtodos clsicos
{
Cmputo evolutivo
Algoritmos bio-inspirados
Recocido simulado
Bsqueda tab
Escalando la colina
{
Basados en poblaciones
{
Figura 2.2: Una taxonoma de los algoritmos de optimizaci on
i. M etodos basados en derivadas.
Estos m etodos utilizan informaci on de la derivada de la funci on, como estrategia
para moverse entre una soluci on y otra. En la literatura de investigaci on de ope-
raciones, existe un gran n umero de estos algoritmos, que han sido aplicados tanto
a problemas unidimensionales como a problemas multi-dimensionales de optimi-
zaci on. De esta manera, los m etodo de bisecci on, secante y Newton-Raphson, son
utilizados para resolver problemas unidimensionales. Mientras que el gradiente con-
jugado de Fletcher-Reeves, el gradiente descendente de Cauchy y los m etodos de
Quasi-Newton (p.ej. el m etodo de Davidon-Fletcher-Powell (DFP) y el m etodo de
Broyden-Fletcher-Goldfarb-Shanno (BFGS)), fueron dise nados para tratar proble-
mas multi-dimensionales.
ii. M etodos de b usqueda directa.
Este tipo de m etodos no necesitan ninguna informaci on de la derivada de la funci on
y son una alternativa complementaria de los m etodos anteriores. De igual manera,
existen algoritmos para solucionar problemas unidimensionales como los m etodos de
la secci on dorada, Fibonacci y m etodos para resolver problemas multi-dimensionales
como el algoritmo de Hooke-Jeeves, Nelder-Mead y las direcciones conjugadas de
Powell, entre otros muchos m as.
Desafortunadamente, estos m etodos no garantizan converger al optimo global. En
la mayora de los casos, estos m etodos dependen de un punto inicial de b usqueda y en
funciones multi-modales es com un quedar estancados en regiones donde existen optimos
locales.
12 2.3. M etodos de optimizaci on mono-objetivo
A continuaci on describiremos los m etodos cl asicos que han sido adoptados en nuestra
propuesta algortmica.
2.3.1.1. M etodo de la secci on dorada
El m etodo de la secci on dorada localiza mnimos a partir de un rango inicial
y es eciente para optimizar funciones sin restricciones, unimodales y unidimensiona-
les. El m etodo est a basado en el principio de eliminaci on de regiones, el cual establece que:
Dado dos puntos x
1
, x
2
(a, b), tal que, x
1
< x
2
. Para funciones unimodales de minimi-
zaci on, se concluye que:
i . Si f (x
1
) > f (x
2
) entonces el mnimo no est a en el intervalo (a, x
1
).
ii . Si f (x
1
) < f (x
2
) entonces el mnimo no est a en el intervalo (x
2
, b).
iii . Si f (x
1
) = f (x
2
) entonces el mnimo no est a en el intervalo (a, x
1
) y (x
2
, b).
La idea general de este principio es eliminar regiones en donde no se encuentre el
mnimo de la funci on, bas andose en la secci on dorada.
Se le conoce como secci on dorada, al segmento de recta dividido en dos partes de
acuerdo a la proporci on aurea, la cual establece: La longitud total del segmento a +b es
a la del segmento a, como la magnitud del segmento a es a la de b (gura 2.3).
a b
{
a+b
Figura 2.3: Proporci on aurea
a
b
=
a+b
a
En estas condiciones, la raz on aurea o divina denotada por se deduce a partir de la
relaci on anterior, como sigue:
a
b
=
a+b
a
a
2
= b(a+b)
a
2
abb
2
= 0
a =
b

5b
2
2
a = b
_
1

5
2
_

a
b
=
1

5
2
Captulo 2. Optimizaci on 13
dado que a > 0 y b > 0, entonces: =
a
b
=
1+

5
2
1.618033. Y su reciproco
com unmente denotado por , es igual a:
1
=
b
a
0.618033.
El primer paso de este m etodo, consiste en normalizar la variable de la funci on x y sus
lmites (a, b). Al normalizar el espacio de b usqueda se mapea a un intervalo (0, 1). De esta
forma, en la primera iteraci on se eval ua 2 veces la funci on objetivo. Despu es de aplicar
el principio de eliminaci on de regi on s olo se eval ua una vez debido a que el intervalo de
b usqueda se actualiza en un punto. El m etodo de optimizaci on de la secci on dorada re-
duce entonces el espacio de b usqueda en un
n1
, despu es de n evaluaciones de la funci on.
En el algoritmo 1, presentamos el pseudo-c odigo del m etodo de optimizaci on de la
secci on dorada.
Algoritmo 1: Algoritmo de la secci on dorada
Input: Intervalo de b usqueda [a, b], una tolerancia y un n umero m aximo de
iteraciones max
it
Output: x

(punto mnimo encontrado)


begin 1
a
w
= 0, b
w
= 1, L
w
= b
w
a
w
; 2
it = 0; 3
repeat 4
w
1
= a
w
+L
w
; 5
w
2
= b
w
L
w
; 6
x
1
= w
1
(ba) +a; 7
x
2
= w
2
(ba) +a; 8
if f (x
1
) < f (x
2
) then 9
a
w
= w
2
; 10
else 11
b
w
= w
1
; 12
end 13
L
w
= b
w
a
w
; 14
it = it +1; 15
until ([L
w
[ < o max
it
it) ; 16
x

=
x
1
+x
2
2
; 17
end 18
14 2.3. M etodos de optimizaci on mono-objetivo
2.3.1.2. M etodo de Nelder-Mead
Dentro de las t ecnicas de optimizaci on de b usqueda directa se encuentra el algoritmo
de Nelder-Mead [53] o simplex no lineal, propuesto originalmente por Spendley [69] para
minimizar funciones multidimensionales, sin restricciones y con dominio en los reales. Este
m etodo se basa en la denici on de un simplex de n +1 v ertices, donde n es el espacio
euclidiano del dominio de la funci on. Antes de describir el m etodo, veamos la siguiente
denici on.
DEFINICI

ON 4 (SIMPLEX)
Un simplex o n-simplex es la cubierta convexa de un conjunto de n +1 puntos no
coplanares, es decir, independientes y anes entre s, en un espacio euclidiano de dimensi on
n. En otras palabras, un simplex es el an alogo en n dimensiones de un tri angulo, es decir,
un 0-simplex es un punto; un 1-simplex es un segmento de una lnea; un 2-simplex es un
tri angulo; y un 3-simplex es un tetrahedro (en cada caso, con su interior).
De acuerdo a Nelder y Mead, el simplex puede ser construido a partir de un unico
v ertice
0
. De esta manera, los siguientes n v ertices del simplex se denen con base en:

i
=
0
+
1
u
i
+
n

j=1, j,=i

2
u
j
(2.3)
donde i = 1, 2, . . . , n,
1
=

n

2
_

n+1+n1
_
,
2
=

n

2
_

n+11
_
y u
k
es el
vector unitario en la k- esima posici on. En el caso particular de = 1 se tendr a un simplex
con v ertices equidistantes; a este se lo conoce como simplex regular.
Para denir completamente el algoritmo, se deben especicar cuatro par ametros esca-
lares que controlan los movimientos que se realizan en el simplex: reexi on (), expansi on
(), contracci on () y reducci on (). De acuerdo al artculo original de Nelder-Mead, estos
par ametros deben satisfacer:
> 0, > 1, 0 < < 1 y 0 < < 1
los par ametros que a Nelder y Mead les dieron buenos resultados y han sido adoptados
como est andares son:
= 1, =
1
2
, = 2 y =
1
2
aunque estos pueden variar dependiendo del tipo de problema que se desee resolver.
Teniendo en cuenta un n-simplex , cuyos v ertices
i
R
n
; i = 0, 1, . . . , n est an
ordenados de acuerdo a: f
0
f
1
. . . f
n
donde f
i
= f (
i
), podemos establecer a
0
como el mejor punto y
n
como el peor. En estas condiciones, los movimientos que realiza
el m etodo de Nelder-Mead en el simplex son:
Captulo 2. Optimizaci on 15
1. Reexi on. Calcula la reexi on del peor v ertice, i.e. del punto
n
(gura 2.4.b):
x
r
= (1+)x
c

n
dondex
c
es el centroide de los n mejores puntos calculado por: x
c
=
1
n
n1

i=0

i
2. Expansi on. Calcula la expansi on del punto reejado (gura 2.4.c):
x
e
= (1+)x
c

n
3. Contracci on. Calcula la contracci on entrex
c
y el mejor de
n
yx
r
:
a) Contracci on externa (gura 2.4.d).
x
ce
= (1+)x
c

n
b) Contracci on interna (gura 2.4.e)
x
ci
= (1)x
c
+
n
4. Reducci on. Se calcula evaluando f de los n puntos v
i
=
0
+(
i

0
), pa-
ra i = 1, . . . , n. Los nuevos v ertices del simplex en la pr oxima iteraci on ser an

0
,v
1
,v
2
, . . . ,v
n
gura 2.4.f).
La l ogica completa del m etodo se muestra en el algoritmo 2.
D
1
D
0
D
2
D
3
D
1
D
0
D
2
x
r
D
1
D
0
D
2
x
e
D
1
D
0
D
2
x
ce
D
1
D
0
D
2
x
ci
D
0
v
1
v
3
a) simplex
inicial
b) reflexin c) expansin
d) contraccin
externa
e) contraccin
interna
f) reduccin
v
2
Figura 2.4: Posibles movimientos del algoritmo de Nelder-Mead.
En este caso, el simplex minimiza una funci on en R
3
16 2.3. M etodos de optimizaci on mono-objetivo
Algoritmo 2: Algoritmo de Nelder-Mead
Input: (simplex inicial), f y max
it
Output: x

(punto mnimo encontrado)


begin 1
it = 0; 2
while it < max
it
do 3
Ordenar ascendentemente cada
i
en base al valor de f (
i
); 4
Calcular x
r
; /* reflexion */ 5
case f (
0
) f (x
r
) < f (
n1
) 6

n
= x
r
; 7
end 8
case f (x
r
) < f (
0
) 9
Calcular x
e
; /* expansion */ 10
if f (x
e
) < f (x
r
) then
n
=x
e
; 11
else
n
=x
r
; 12
end 13
case f (x
r
) f (
n1
) 14
if f (
n1
) f (x
r
) < f (
n
) then 15
Calcular x
ce
; /* contraccion externa */ 16
if f (x
ce
) f (x
r
) then
n
=x
ce
; 17
else Reducir el simplex ; /* reduccion */ 18
else if f (x
r
) f (
n
) then 19
Calcular x
ci
; /* contraccion interna */ 20
if f (x
ci
) < f (
n
) then
n
=x
ci
; 21
else Reducir el simplex ; /* reduccion */ 22
end 23
end 24
it ++; 25
end 26
x

=
i
[ mn

f (
i
);
27
end 28
Captulo 2. Optimizaci on 17
2.3.2. M etodos no cl asicos
Los m etodos no cl asicos o estoc asticos, se caracterizan por utilizar reglas de transici on
probabilstica. Entre ellos destacan los algoritmos evolutivos, que en los ultimos a nos
se han vuelto muy populares. Esta clase de algoritmos en comparaci on, son nuevos y
bastante requeridos debido a que poseen ciertas propiedades de las que los algoritmos
determinsticos carecen.
Pero no s olo el c omputo evolutivo se ha empleado para lidiar con problemas de optimi-
zaci on. Algoritmos bio-inspirados como la optimizaci on por c umulos de partculas (Par-
ticle Swarm Optimization) [34], colonia de hormigas (Ant Colony) [18], adem as de otras
t ecnicas de b usqueda heurstica como el recocido simulado (Simulated Annealing) [35] y
la b usqueda tab u (Tabu Search) [25], han sido de gran utilidad para tratar tambi en con
problemas de optimizaci on.
2.4. Optimizaci on multiobjetivo
La optimizaci on multiobjetivo trata de resolver problemas en los cuales se requiere op-
timizar simult aneamente un conjunto de funciones. Com unmente, dichas funciones entran
en conicto unas con otras, de tal forma que optimizar una funci on implica deteriorar el
desempe no de otras.
DEFINICI

ON 5 (PROBLEMA DE OPTIMIZACI

ON MULTIOBJETIVO (POM))
Se dene como encontrar un vectorx

que satisfaga las m restricciones de desigualdad:


g
i
(x

) 0; i = 1, 2, . . . , m (2.4)
las p restricciones de igualdad:
h
j
(x

) = 0; j = 1, 2, . . . , p (2.5)
y optimice el vector de funciones objetivo:

f (x) = [ f
1
(x), f
2
(x), . . . , f
k
(x)]
T
El conjunto de restricciones dadas por las ecuaciones 2.4 y 2.5, determina la regi on factible
y cualquier vector x dene una soluci on factible. El vector de funciones

f (x) es una
funci on que mapea el conjunto al conjunto y que contiene todos los valores posibles
de las funciones objetivo (ver gura 2.5).
DEFINICI

ON 6 (VECTOR IDEAL)
Dado un vector de variables:
x
(i)
= [x
(i)
1
, x
(i)
2
, . . . , x
(i)
n
]
T
18 2.4. Optimizaci on multiobjetivo
W= {x }
n
L= {y }
k
Espacio de las variables de decisin Espacio de las funciones objetivo
F
x
1
x
2
f
1
f
2
f
3
Figura 2.5: Mapeo de evaluaci on de un POM, para n = 2 y k = 3
que optimiza la i- esima funci on objetivo f
i
(x), es decir, x
(i)
es tal que:
f
i
(x
(i)
) = optimo f
i
(x)
entonces, el vector

f

(x) = [ f

1
(x), f

2
(x), . . . , f

k
(x)]
T
(donde f

i
(x) denota el optimo de la
i- esima funci on objetivo) es ideal para un POM y el punto correspondiente en R
n
es una
soluci on ideal (ut opica).
Cuando se tiene m as de una funci on objetivo, el concepto de optimo cambia, ya que en
este tipo de problemas el objetivo es llegar a un buen compromiso, en lugar de una unica
soluci on como en el caso de la optimizaci on global.
La noci on de optimo en problemas multiobjetivo fue originalmente propuesta por Fran-
cis Y. Edgeworth en 1881 [20] y generalizada por Vilfredo Pareto en 1896 [55]. El concepto
de optimo de Pareto se presenta formalmente en la siguiente denici on.
DEFINICI

ON 7 (

OPTIMO DE PARETO)
Sea I = 1, . . . , k y el conjunto de soluciones factibles, decimos que un vector de
variables de decisi onx

es un optimo de Pareto, si para todax se cumple:


i. i I : f
i
(x

) f
i
(x)
ii. j I : f
j
(x

) < f
j
(x)
Captulo 2. Optimizaci on 19
Frente de Pareto
Soluciones no dominadas
Soluciones dominadas
A
B
C
f
2
f
1
Figura 2.6: Dominancia de Pareto
DEFINICI

ON 8 (DOMINANCIA DE PARETO)
Sea I =1, . . . , k, se dice que un vector u = (u
1
, . . . , u
k
) domina a otrov = (v
1
, . . . , v
k
)
(denotado por u _v) si y s olo si u es parcialmente menor av, es decir, si se cumple:
i. i I : u
i
v
i
ii. j I : u
j
< v
j
En otras palabras, para que una soluci on domine a otra, esta debe ser estrictamente
mejor en al menos un objetivo y no peor en ninguno de los otros. En la gura 2.6, la
soluci on A domina a la soluci on B ya que es mejor tanto en f
1
como en f
2
, sin embargo, no
domina a C ya que no es mejor.
DEFINICI

ON 9 (CONJUNTO DE

OPTIMOS DE PARETO)
Para un POM dado

f (x), el conjunto de optimos de Pareto denotado por P

se dene
como:
P

=x : x

:

f (x

) _

f (x)
DEFINICI

ON 10 (FRENTE DE PARETO)
Para un POM dado con un vector de funciones

f (x) y un conjunto de optimos de Pareto
P

, el frente de Pareto, denotado por PF

, se dene como:
PF

f (x) = [ f
1
(x), . . . , f
k
(x)] : x P

20 2.5. T ecnicas de optimizaci on multiobjetivo


En general, no es posible tener una expresi on analtica de la lnea o supercie que con-
tenga a los puntos que conforman el frente de Pareto. Por tanto, el procedimiento normal
para generar el frente de Pareto, es obtener el conjunto de puntos factibles y los valo-
res correspondientes de f (x) para toda x . Cuando hay un n umero suciente de ellos,
entonces es posible determinar los puntos no dominados y producir el frente de Pareto.
2.5. T ecnicas de optimizaci on multiobjetivo
En esta secci on revisaremos brevemente algunas t ecnicas tradicionales analticas, que
son utilizadas para solucionar POM. Cohon y Marks [11] proponen una clasicaci on de
estas t ecnicas, la cual ha sido la m as popular en la comunidad de investigaci on de opera-
ciones:
1. M etodos a priori. Se toman decisiones antes de la b usqueda (decidir buscar).
Es decir, el usuario especica sus preferencias, expectativas y opiniones antes de
ejecutar la b usqueda.
2. M etodos a posteriori. Buscar antes de tomar decisiones (buscar decidir). Despu es
de encontrar el conjunto de optimos de Pareto, el usuario selecciona las mejores
alternativas de acuerdo a su criterio.
3. M etodos progresivos. Integra la b usqueda con la toma de decisiones (decidir bus-
car). El usuario tiene una participaci on activa durante el proceso de soluci on del
POM.
Otras clasicaciones son posibles (p.ej., la que presenta Duckstein [19]). Sin embargo,
para nes de este trabajo adoptaremos la propuesta hecha por Cohon y Marks, debido
a que su clasicaci on se enfoca a los problemas de b usqueda y toma de decisiones. A
continuaci on presentaremos algunos m etodos de acuerdo a la clasicaci on anterior.
2.5.1. M etodos a priori
2.5.1.1. M etodo de programaci on de metas
La programaci on de metas (goal programming) fue desarrollada por Abraham Charnes
y William Cooper [8] en 1961, para tratar con POMs en modelos lineales y este trabajo
jug o un papel predominante en la aplicaci on de esta t ecnica a problemas industriales. En
este m etodo, el dise nador tiene asignado sus objetivos o metas que desee lograr para cada
objetivo. Estos valores son incorporados al problema como una restricci on adicional. La
funci on objetivo trata de minimizar la desviaci on absoluta entre el valor alcanzado y el
objetivo. En su forma m as simple este enfoque puede ser formulado como sigue:
mn
k

i=1
[ f
i
(x) T
i
[, sujeto ax (2.6)
Captulo 2. Optimizaci on 21
donde T
i
denota la meta propuesta por el dise nador para la i- esima funci on objetivo f
i
(x) y
la regi on factible .
2.5.1.2. M etodo lexicogr aco
En este m etodo, los objetivos se jerarquizan de acuerdo a su importancia en el proble-
ma, quedando en primer lugar el m as importante. De esta manera, la soluci on optima

x

es
obtenida minimizando las funciones objetivo, empezando con la m as importante y proce-
diendo de acuerdo al orden establecido. El valor que se obtiene como consecuencia de cada
minimizaci on, se convierte en una restricci on para la siguiente funci on a minimizar y este
procedimiento contin ua hasta evaluar el ultimo objetivo. El procedimiento de este m etodo
se presenta a continuaci on:
1. mn
x
f
1
(x) =
1
2. mn
x
f
2
(x)[ f
1
(x)
1
=
2
.
.
.
.
.
.
n. mn
x
f
n
(x)[ f
1
(x)
1
, . . . , f
n1
(x)
n1
=
n
En t erminos generales, la formulaci on del problema puede escribirse como:
mn
x
f
i
(x)
sujeto a: mn
x
f
k
(x)
k
, tal que, k =1, 2, . . . , n1
(2.7)
La soluci on obtenida al nal

x

k
es tomada como la soluci on deseada

x

del problema.
2.5.2. M etodos a posteriori
2.5.2.1. Combinaci on lineal de pesos
En 1963, Lofti Zadeh fue el primero en mostrar que con la tercera condici on de Kuhn-
Tucker sobre soluciones no inferiores, se puede plantear un problema de optimizaci on mul-
tiobjetivo como un problema de optimizaci on global, tomando como funci on objetivo a la
suma de las funciones objetivo originales [84]. Lo anterior se puede formular mediante la
ecuaci on 2.8.
mn
k

i=1
w
i
f
i
(x)
sujeto a: x
(2.8)
donde w
i
0 para todo i y es estrictamente positivo para al menos un objetivo. Los pesos
w
i
no reejan proporcionalmente la importancia relativa de las funciones objetivo (a menos
que los valores de las funciones objetivo est en escalados adecuadamente), pero cuando se
varan, se obtienen diferentes soluciones del conjunto de optimos de Pareto.
22 2.5. T ecnicas de optimizaci on multiobjetivo
2.5.2.2. M etodo de la restricci on
El m etodo de la restricci on , tambi en se deriva de la tercera condici on de Kunh-Tucker
y ha sido uno de los m as utilizados para resolver problemas de optimizaci on multiobjetivo,
convexos y no convexos. La idea de este m etodo es minimizar una funci on objetivo a la
vez, considerando los otros objetivos como restricciones por algunos niveles permitidos
l
.
Variando los niveles
l
, las soluciones no inferiores del problema pueden ser obtenidas.
Este problema puede ser formulado como lo muestra la ecuaci on 2.9.
mn f
r
(x)
sujeto a: f
l
(x)
l
para l =1, 2, . . . , k y l ,= k
(2.9)
donde
l
asume valores de las funciones objetivo que no deben ser excedidos.
La ventaja principal del m etodo, se presenta cuando se convierte el POM en un pro-
blema de optimizaci on global con una restricci on . En estas circunstancias, es posible
utilizar cualquier m etodo de optimizaci on mono-objetivo para minimizar cada funci on por
separado. Para una explicaci on m as detallada del m etodo ver [54].
2.5.3. M etodos progresivos
Los m etodos progresivos operan b asicamente en tres etapas:
i. Encontrar una soluci on no dominada.
ii. Se pone a consideraci on del dise nador la soluci on encontrada, con el n de modicar
las preferencias de los objetivos de acuerdo a su criterio.
iii. Repetir los pasos i y ii hasta que el dise nador est e satisfecho de las soluciones obte-
nidas o no haya mejoras considerables.
A continuaci on describiremos brevemente uno de estos m etodos.
2.5.3.1. M etodo del escal on
La idea b asica es converger hacia la mejor soluci on en el sentido min-max, en no m as
de k pasos, donde k es el n umero de objetivos. Esta t ecnica es util, principalmente para
resolver problemas lineales. Inicia de un punto ideal y se desarrolla en seis etapas, como
plantea Cohon [12].
1. Construir una tabla de soluciones marginales, optimizando cada funci on objetivo por
separado.
2. Calcular, para cada funci on objetivo:
(i) =
M(i) m(i)
M(i)
_
J

j=1
c(i, j)
_
2
Captulo 2. Optimizaci on 23
donde: M(i) = m ax f
i
(x), m(i) = mn f
i
(x), y c(i) =coeciente de costo del i- esimo
objetivo lineal. Se asigna cero al ndice de la iteraci on (k = 0).
3. Calcular

(i) =
(i)
(i)
y se resuelve el problema min-max. La soluci on es llamada
x(k).
4. Se presenta la soluci on al dise nador:
a) Si la soluci on es satisfactoria, se detiene el algoritmo.
b) Si la soluci on no es satisfactoria y k < p1, ir al paso 5.
c) Si la soluci on no es satisfactoria y k > p1, se detiene el algoritmo. Se requiere
un procedimiento o al menos una redenici on del problema.
5. El dise nador selecciona un objetivo satisfecho por la soluci on y determina la cantidad
por la cual puede ser decrementada con el n de mejorar los otros objetivos. Si esto
no se puede hacer, entonces se requiere de otro enfoque.
6. Denir una nueva restricci on que disminuya el objetivo seleccionado en el paso 5.
Sea (i) = 0 para ese objetivo, se incrementa k en uno y se va al paso 3.
La debilidad de esta t ecnica, radica en que se asume que no existe una mejor soluci on
que x(k), si esta no es encontrada despu es de haber ejecutado los seis pasos del algoritmo.
En el siguiente captulo mencionaremos otro tipo de m etodos de optimizaci on mul-
tiobjetivo, que est an basados en reglas de transici on probabilsticas. Concretamente nos
referiremos al estado del arte de los algoritmos evolutivos multiobjetivo.
24 2.5. T ecnicas de optimizaci on multiobjetivo
CAP

ITULO 3
C

OMPUTO EVOLUTIVO
MULTIOBJETIVO
3.1. Introducci on
En la actualidad, existen alrededor de treinta t ecnicas de optimizaci on multiobjetivo en
la literatura de investigaci on de operaciones [49]. La mayora de ellas est an limitadas a
frentes de Pareto con ciertas caractersticas (p.ej., convexos). Adem as, suelen generar una
sola soluci on por ejecuci on y requerir un punto inicial de b usqueda.
El potencial de los algoritmos evolutivos para resolver problemas de optimizaci on
multiobjetivo se remonta a nales de los 1960s, desde la tesis doctoral de Rosenberg [62],
la cual indic o la posibilidad de usar algoritmos gen eticos en este dominio. Sin embargo,
el primer intento real por extender un algoritmo evolutivo a problemas multiobjetivo,
es el trabajo desarrollado por J. David Schaffer [64]. Su algoritmo, denominado Vector
Evaluated Genetic Algorithm (VEGA) fue la entrada formal del c omputo evolutivo a la
optimizaci on multiobjetivo.
En cuanto a sus principios b asicos, los algoritmos evolutivos multiobjetivo pueden
clasicarse en dos grupos. Los que utilizan directamente los conceptos de Pareto y los que
no, siendo los primeros los de nuestro inter es.
Hist oricamente, se pueden considerar dos etapas fundamentales que han marcado el
desarrollo de los algoritmos evolutivos, basados en los conceptos de Pareto:
1. Primera generaci on. Es una etapa en la cual se desarrollaron algoritmos relativamen-
te simples que hacan uso de enfoques rudimentarios, como funciones agregativas
lineales, y m etodos lexicogr acos. Se desarrollaron tambi en los primeros algoritmos
evolutivos multiobjetivo basados en jerarquizaci on de Pareto, los cuales usan primor-
dialmente nichos y compartici on de aptitud [16] como su estimador de densidad.
25
26 3.2. Algoritmos de primera generaci on
2. Segunda generaci on. Se introduce el concepto de elitismo. De esta manera, se in-
troduce el uso de la selecci on extintiva o positiva (+) y se populariza el uso de po-
blaciones secundarias. Los algoritmos de segunda generaci on enfatizan la eciencia
computacional.
En las siguientes secciones, describiremos brevemente los algoritmos evolutivos mul-
tiobjetivos basados en los principios de Pareto, de acuerdo a las etapas de su desarrollo.
Pondremos especial enfasis en nuestra discusi on del NGSA-II dado que es la t ecnica adop-
tada en este trabajo.
3.2. Algoritmos de primera generaci on
3.2.1. Vector Evaluated Genetic Algorithm (VEGA)
Con el objetivo de superar las dicultades de los m etodos agregativos, Schaffer
propuso en 1985 el Vector Evaluated Genetic Algorithm (VEGA) [64]. En la literatura,
VEGA es considerada como una de las t ecnicas m as populares en la categora de las que
no incorporan el concepto de optimo de Pareto. En t erminos generales, VEGA divide
la poblaci on en tantas subpoblaciones como objetivos existan. Estas subpoblaciones se
mezclan entre s a n de obtener una nueva poblaci on del mismo tama no que la original.
En la etapa de selecci on, cada individuo se elige de acuerdo al objetivo relevante en
su poblaci on. Despu es de recombinar a los individuos de la poblaci on, se aplican los
operadores de cruza y mutaci on como en un algoritmo gen etico simple.
El principal problema de VEGA del que Schaffer se percat o, es que las soluciones
generadas por el algoritmo eran no dominadas localmente, ya que la dominancia se limitaba
a la subpoblaci on en proceso. De esta manera, un individuo que es no dominado en una
cierta generaci on puede resultar dominado por otro individuo que emerja en una generaci on
posterior.
3.2.2. Multi-objective Genetic Algorithm (MOGA)
En 1993, Fonseca y Fleming presentaron una variaci on de la t ecnica propuesta por
Goldberg [26], a la que llamaron Multi-objective Genetic Algorithm (MOGA) [24]. En esta
t ecnica la jerarqua de un individuo corresponde al n umero de individuos de la poblaci on
por los cuales es dominado. Consideremos, por ejemplo, un individuo x
i
en la generaci on t,
el cual es dominado por p
(t)
i
individuos en la generaci on actual. La jerarqua de un individuo
es calculada por:
rank(x
i
, t) = 1+ p
(t)
i
Todos los individuos no dominados de la poblaci on tiene como jerarqua 1, mientras
que los dominados, son penalizados de acuerdo a la densidad correspondiente a la regi on
Captulo 3. C omputo evolutivo multiobjetivo 27
donde se ubiquen dentro del espacio de las funciones objetivo. El pseudo-c odigo de MOGA
se muestra en el algoritmo 3
Algoritmo 3: Multi-objective Genetic Algorithm (MOGA)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
Inicializar poblaci on; 2
Evaluar poblaci on de acuerdo a las funciones objetivo; 3
Asignar jerarqua con base en dominancia de Pareto; 4
Obtener el n umero de contador de nicho; 5
Asignar aptitud linealmente escalada; 6
Asignar valor de bondad compartido (Shared tness); 7
for i = 1 to max
gen
do 8
Seleccionar mediante muestreo estoc astico universal; 9
Cruza en un punto; 10
Mutaci on; 11
Evaluar poblaci on de acuerdo a las funciones objetivo; 12
Asignar jerarqua con base en dominancia de Pareto; 13
Obtener el n umero de contador de nicho; 14
Asignar aptitud linealmente escalada; 15
Asignar valor de bondad compartido (Shared tness); 16
end 17
end 18
3.2.3. Niched-Pareto Genetic Algorithm (NPGA)
Este m etodo fue propuesto por Horn y Nafpliotis en 1994 [31]. Consiste en un AG
simple, que utiliza una selecci on mediante torneos binarios basados en la dominancia de
Pareto. La idea de la selecci on consiste en elegir aleatoriamente dos individuos, los cuales
son comparados con otros individuos, que est an dentro de un subconjunto de la poblaci on
(com unmente, 10 % del total de la poblaci on). Si uno de los dos individuos domina a los
individuos del subconjunto de la poblaci on, entonces es el ganador del torneo. Si los dos
dominan o son dominados, entonces se aplica el n umero de contador de nicho y gana el in-
dividuo que est e en un nicho con menor densidad. El algoritmo 4 muestra el procedimiento
general del NPGA.
3.2.4. Non-dominated Sorting Genetic Algorithm (NSGA)
Esta estrategia fue propuesta por Srinivas y Deb en 1994 [70]. Se basa en clasicar a
la poblaci on en niveles o capas de dominaci on (idea original de Goldberg [26]). Los indi-
viduos son jerarquizados de acuerdo a su dominancia con otros individuos, de tal manera
28 3.2. Algoritmos de primera generaci on
Algoritmo 4: Niched-Pareto Genetic Algorithm (NPGA)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
Inicializar poblaci on; 2
Evaluar poblaci on de acuerdo a las funciones objetivo; 3
for i = 1 to max
gen
do 4
Aplicar selecci on de torneo binario especial; 5
case (ind
1
_ind
2
): 6
seleccionar ind
1
; 7
case (ind
2
_ind
1
): 8
seleccionar ind
2
; 9
case (ind
1
_ind
2
y ind
2
_ind
1
): 10
seleccionar individuo con el menor contador de nicho; 11
Aplicar cruza en un punto; 12
Aplicar mutaci on; 13
Evaluar poblaci on de acuerdo a las funciones objetivo; 14
end 15
end 16
que los individuos no dominados con respecto a toda la poblaci on, pertenecen a la primera
capa. A los individuos de la primera capa se les asigna un valor de aptitud falso (dummy
tness). Para determinar qu e individuos pertenecen a las siguientes capas, se eliminan los
individuos de la primera capa de la poblaci on y se vuelven a determinar las soluciones no
dominadas, las cuales pertenecer an a la segunda capa y as sucesivamente con los indivi-
duos restantes de la poblaci on (ver gura 3.1). Los individuos de la segunda capa tendr an
una aptitud falsa inferior que la de los individuos de la primera capa y as sucesivamente.
Se usa tambi en compartici on de aptitud [16], pero en el espacio de las variables de decisi on.
El algoritmo 5 describe el pseudo-c odigo de este m etodo.
Captulo 3. C omputo evolutivo multiobjetivo 29
f
2 Primer nivel jerrquico
Segundo nivel jerrquico
Tercer nivel jerrquico
Cuarto nivel jerrquico
f
1
Figura 3.1: Jerarquizaci on de niveles de dominancia
Algoritmo 5: Non-dominated Sorting Genetic Algorithm (NSGA)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
Inicializar poblaci on; 2
Evaluar poblaci on de acuerdo a las funciones objetivo; 3
Asignar jerarqua con base en la dominancia de Pareto en cada frente; 4
Obtener el n umero de contador de nicho; 5
Se asigna el valor de bondad compartido (Shared tness); 6
for i = 1 to max
gen
do 7
Aplicar selecci on mediante muestreo estoc astico universal; 8
Aplicar operadores de cruza y mutaci on; 9
Evaluar poblaci on de acuerdo a las funciones objetivo; 10
Asignar jerarqua con base en la dominancia de Pareto en cada frente; 11
Obtener el n umero de contador de nicho; 12
Se asigna el valor de bondad compartido; 13
end 14
end 15
30 3.3. Algoritmos de segunda generaci on
3.3. Algoritmos de segunda generaci on
3.3.1. Strength Pareto Evolutionary Algorithm (SPEA)
El Strength Pareto Evolutionary Algorithm (SPEA) fue propuesto por Zitzler y Thiele
en 1999 [88]. Su concepci on se fundamenta en la integraci on de diferentes algoritmos
evolutivos multiobjetivo. El pseudo-c odigo del m etodo se presenta en el algoritmo 6. SPEA
utiliza un archivo que contiene las soluciones no dominadas encontradas previamente
(tambi en se le conoce como conjunto externo no dominado). En cada generaci on, los
individuos no dominados se copian al conjunto externo no dominado. Para cada individuo
del conjunto externo, se calcula un valor de fortaleza (strength value). Este valor es similar
a la jerarqua de MOGA y es proporcional al n umero de soluciones a las que un individuo
domina. La aptitud de cada miembro de la poblaci on actual, se calcula de acuerdo al valor
de fortaleza de todas las soluciones externas no dominadas que este domina. Para proveer
diversidad a la poblaci on, se utiliza una t ecnica de c umulos (clustering) llamada m etodo de
enlace promedio (average linkage method) [50], la cual penaliza a las soluciones vecinas
m as cercanas a la que se est a evaluando.
Algoritmo 6: Strength Pareto Evolutionary Algorithm (SPEA)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
Inicializar poblaci on P; 2
Evaluar poblaci on de acuerdo a las funciones objetivo; 3
Crear un conjunto vaco E; 4
for i = 1 to max
gen
do 5
Copiar las soluciones no dominadas de P a E; 6
Eliminar los elementos de E que son dominados por otro miembro de E; 7
Podar E (utilizando clustering) cuando la capacidad m axima de E ha sido 8
excedida;
Calcular aptitud de cada individuo en P y en E; 9
Seleccionar mediante torneo binario con reemplazo para seleccionar 10
individuos de P+E (operaci on de uni on) hasta que la piscina de la poblaci on
est e llena;
Aplicar cruza y mutaci on; 11
Evaluar poblaci on de acuerdo a las funciones objetivo; 12
end 13
end 14
Captulo 3. C omputo evolutivo multiobjetivo 31
3.3.2. Strength Pareto Evolutionary Algorithm 2 (SPEA 2)
Fue presentado en 2001 por Zitzler, Laumanns y Thiele [87]. Tiene tres diferencias
principales con respecto a su antecesor:
i. Incorpora una estrategia de asignaci on de aptitud de grano-no (ne-grained tness),
que por cada individuo toma en cuenta el n umero de individuos a los que domina y
el n umero de individuos por los cuales es dominado.
ii. Utiliza una t ecnica de estimaci on del vecino m as cercano que gua la b usqueda de
una manera m as efectiva.
iii. Presenta un m etodo mejorado de truncamiento del archivo, que garantiza la preser-
vaci on de las soluciones de los extremos del frente de Pareto.
Adem as, el SPEA 2 utiliza un algoritmo de clustering de menor complejidad compu-
tacional que su predecesor.
3.3.3. Pareto Archived Evolution Strategy (PAES)
La Pareto Archived Evolution Strategy (PAES) fue presentada por Knowles y Corne
en el a no 2000 [37]. La idea del enfoque es muy simple tal y como se muestra en el
pseudo-c odigo del algoritmo 7. PAES consiste en una estrategia evolutiva (1+1), en com-
binaci on con un archivo hist orico que almacena algunas de las soluciones no dominadas
encontradas previamente. Este archivo es usado como un conjunto de referencia contra
el cual se compara cada individuo mutado. Esto es an alogo al torneo que se usa en el NPGA.
PAES tambi en utiliza un nuevo enfoque para mantener diversidad, el cual consiste de
un procedimiento de agrupamiento que divide el espacio de las funciones objetivo de una
manera recursiva. Cada soluci on se sit ua en una rejilla de localizaci on, con base en los
valores de las funciones objetivo. Se mantiene un mapa de dicha rejilla y un conteo del
n umero de soluciones que residen en cada retcula de la misma. Dado que el procedimiento
es adaptativo, no se requieren par ametros extras en el algoritmo. M as a un, el procedimiento
tiene una baja complejidad en comparaci on con los m etodos basados en nichos [38].
3.3.4. Non-dominated Sorting Genetic Algorithm-II (NSGA-II)
En el a no 2000, Deb, Agrawal, Pratap y Meyarivan, presentaron una segunda versi on
del algoritmo NSGA [15]. El NSGA-II hered o la estructura principal de su antecesor, pero
cuenta con mejoras muy signicativas que lo hacen m as eciente (computacionalmente
hablando) y las cuales mejoran sustancialmente su desempe no.
32 3.3. Algoritmos de segunda generaci on
Algoritmo 7: Pareto Archived Evolution Strategy (PAES)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
Inicializar poblaci on con un solo padre p, evaluar su aptitud y agregarlo a un 2
archivo externo;
for i = 1 to max
gen
do 3
Mutar a p para producir un individuo hijo c y evaluar su aptitud; 4
case (p _c) 5
Descartar c; 6
case (c _ p) 7
Reemplazar a p por c, y agregar a c al archivo; 8
case (c sea dominada por alg un miembro del archivo) 9
Descartar c; 10
else 11
Aplicar la prueba para (p, c y el archivo) para determinar cu al llegar a a 12
ser la nueva soluci on actual (p) y si se incluir a a c en el archivo;
end 13
end 14
Las caractersticas que enmarca al algoritmo NSGA-II son:
El ordenamiento no dominado mediante una t ecnica de comparaci on que utiliza una
subpoblaci on auxiliar, que le permite disminuir la complejidad de ordenaci on de
O(MN
3
) a O(MN
2
), donde M es el n umero de funciones objetivo y N el tama no
de la poblaci on P.
El uso de una t ecnica de agrupaci on (crowding), que no requiere especicar par ame-
tros adicionales para la preservaci on de diversidad en la poblaci on, eliminando la
dependencia del par ametro
share
(el radio de nicho) utilizado por el NSGA original.
La asignaci on de valores de aptitud con base en los niveles o jerarquas de no domi-
nancia (rank), aunque se considera en el procedimiento de asignaci on a los valores
de distancia de crowding utilizados para evaluar la diversidad de las soluciones.
A continuaci on, describiremos las diferentes fases que componen al NSGA-II, para
posteriormente describir la mec anica completa del algoritmo.
3.3.4.1. Enfoque del ordenamiento r apido no dominado
Para entender claramente este enfoque, primero describiremos un procedimiento
sencillo y lento para ordenar una poblaci on, en sus distintos niveles de no dominaci on.
Despu es, describiremos el enfoque r apido propuesto para el NSGA-II.
Captulo 3. C omputo evolutivo multiobjetivo 33
En un enfoque sencillo, para identicar las soluciones del primer frente no dominado
en una poblaci on de tama no N, se requiere comparar cada soluci on con el resto de la
poblaci on para determinar si es dominada. Esto requiere O(MN) comparaciones para
cada soluci on, donde M es el n umero de funciones objetivo. Cuando este procedimiento
contin ua para encontrar todos los miembros del primer frente no dominado, la complejidad
total es de O(MN
2
). Para encontrar los individuos del segundo frente no dominado, se
eliminan temporalmente de la poblaci on las soluciones del primer frente y se utiliza el
mismo procedimiento que en el primer caso. De esta manera, el peor caso ocurre cuando
hay N frentes, es decir, cuando existe una unica soluci on en cada frente. En este caso, se
requiere un esfuerzo computacional de O(MN
3
) comparaciones.
En el enfoque de ordenamiento r apido no dominado, para cada individuo p de la po-
blaci on P se determina el valor de dos entidades: 1) un contador de dominaci on n
p
, que
indica el n umero de soluciones que domina la soluci on p y 2) un conjunto de soluciones S
p
que la soluci on p domina. Esto requiere de O(MN
2
) comparaciones. Todas las soluciones
en el primer frente no dominado (F
1
), tendr an su contador de dominancia n
p
igual a cero
puesto que ninguna soluci on las domina. Por cada soluci on p con n
p
= 0, se visita cada
miembro q del conjunto S
p
y se decrementa su contador en uno. Al hacerlo, si para alg un
miembro q el contador de dominaci on llega a ser cero, este punto se agrega a una lista Q.
Todos los miembros de Q pertenecen al segundo frente no dominado (F
2
). Se contin ua con
el procedimiento anterior con cada miembro de Q y se forma el tercer frente no dominado
(F
3
). Este procedimiento se mantiene, hasta que todos los frentes (F
i
) son identicados.
El pseudo-c odigo del enfoque se muestra en el algoritmo 8, donde p
rank
y q
rank
denotan el
rango jer arquico de las soluciones p y q, respectivamente.
3.3.4.2. Preservaci on de la diversidad en la poblaci on
Durante la convergencia hacia el conjunto de optimos de Pareto, es deseable que un
algoritmo mantenga una buena dispersi on en el conjunto de soluciones obtenido. El NS-
GA utiliza el enfoque conocido como funci on de compartici on (sharing function), la cual
permite mantener diversidad en la poblaci on. Sin embargo, dicha funci on involucra asignar
un valor a un par ametro conocido como
share
(radio de nicho). Este par ametro est a rela-
cionado directamente con la medici on de la distancia entre los individuos de la poblaci on
y no existe un procedimiento sistematizado para encontrar su valor m as adecuado. En el
NSGA-II, este par ametro se ha sustituido por el enfoque denominado comparaci on de agru-
pamiento (croweded-comparison). De esta manera, no se requiere denir alg un par ametro
para mantener la diversidad en la poblaci on. Antes de denir el operador de comparaci on
de agrupamiento, se denir a el concepto de estimaci on de densidad (density-estimation
metric) y el operador de comparaci on de agrupamiento (crowded-comparison operator).
34 3.3. Algoritmos de segunda generaci on
i-1
i+1
i
f
2
f
1
0
1
Cuboide
Figura 3.2: Distancia de agrupamiento
1) Estimaci on de densidad (density-estimation metric).
Para obtener una estimaci on de la densidad de las soluciones circundantes en una so-
luci on en particular, se calcula la distancia promedio de dos puntos vecinos, uno en
cada lado del punto de inter es, utilizando el valor de sus funciones objetivo. Esta can-
tidad i
dist
sirve como un estimador del permetro del cuboide formado por los vecinos
m as cercanos como los v ertices; a esto se le conoce como distancia de agrupamiento
(crowding distance) y se ilustra gr acamente en la gura 3.2.
El valor de la distancia de agrupamiento del i- esimo individuo en su frente, es la
longitud promedio de sus lados. El procedimiento para calcular la distancia de agru-
pamiento, requiere ordenar descendentemente la poblaci on de acuerdo con el valor
de cada funci on objetivo. Despu es, por cada funci on objetivo se asigna un valor de
distancia innito a los individuos que est an en los extremos (individuos con el menor
y mayor valor). Al resto de las soluciones, se les asigna un valor de distancia norma-
lizado, que es igual al valor absoluto de la diferencia de lo valores de la funciones,
correspondientes a los puntos adyacentes. El valor de la distancia de agrupamiento,
se calcula como la suma de los valores de todas las distancias de los elementos corres-
pondientes a cada objetivo. Se normaliza cada funci on objetivo antes de calcular la
distancia de agrupamiento. El algoritmo 9, muestra el procedimiento para calcular
la distancia de agrupamiento de todas las soluciones en un conjunto no dominado
(I). En el algoritmo 9, I [i].m es el valor de la m- esima funci on objetivo correspon-
diente al i- esimo individuo del conjunto ordenado I. Los par ametros f
mn
m
y f
m ax
m
son
el m aximo y mnimo valor de la m- esima funci on, respectivamente. La complejidad
computacional de este procedimiento est a relacionada directamente con el proceso
de ordenamiento, ya que se requieren M ordenaciones independientes de a lo m as
Captulo 3. C omputo evolutivo multiobjetivo 35
N individuos. En el peor de los casos, cuando toda la poblaci on est a en el frente
I, la complejidad que se tiene es O(MNlogN). Cuando los miembros del conjunto I
tienen asignado un valor de la distancia de agrupamiento, se pueden comparar dos in-
tegrantes por su separaci on o proximidad con otros individuos. Un valor de distancia
peque no, indica que tiene m as vecinos y, por lo tanto, es menos deseable.
2) Operador de comparaci on de agrupamiento (crowded-comparison operator).
El operador de comparaci on de agrupamiento
n
, gua el proceso de selecci on a
varias fases del algoritmo hacia un frente de Pareto optimo y disperso. Asumiendo
que cada individuo i en la poblaci on tiene dos atributos:
i. Jerarqua de no dominaci on i
rank
.
ii. Distancia de agrupamiento i
distance
.
se dene un orden parcial
n
como:
i
n
j if (i
rank
< j
rank
)
or ((i
rank
= j
rank
) and (i
distance
> j
distance
))
Lo anterior signica, que entre dos soluciones con distintos rangos de no domina-
ci on, se preere la soluci on con el menor rango. En otro caso, si dos soluciones
pertenecen al mismo frente, entonces se preere la soluci on que est a ubicada en una
regi on de menor densidad.
Con estas tres innovaciones (fast non-dominated sorting, fast crowded distance esti-
mation y crowded comparison operator), ahora describiremos el algoritmo completo
del NSGA-II.
3.3.4.3. Ciclo completo del NSGA-II
Inicialmente, se crea una poblaci on aleatoria P
0
de tama no N. La poblaci on es
ordenada con base en el principio de no dominaci on. A cada soluci on se le asigna un
valor de jerarqua igual al nivel de su dominaci on (el nivel 1 es el mejor, el nivel 2 es el
siguiente mejor y as sucesivamente). Al principio del algoritmo, se aplica la selecci on
de torneo binario de forma usual, as como los operadores de cruza y mutaci on, para
crear una poblaci on de descendientes Q
0
de tama no N. El concepto de elitismo se aplica
al comparar la poblaci on actual con las mejores soluciones previamente encontradas
(selecci on ( +)). El procedimiento diere despu es de producir la generaci on inicial tal
y como se describe a continuaci on con la t- esima generaci on.
En primera instancia, se obtiene una poblaci on formada por R
t
=P
t
Q
t
de tama no 2N.
Despu es, la poblaci on R
t
se ordena de acuerdo a los principios de no dominaci on. Dado
que todos los miembros de la poblaci on previa y actual est an incluidos en R
t
, el elitismo
est a asegurado. Las soluciones no dominadas pertenecientes al conjunto F
1
son las mejores
36 3.3. Algoritmos de segunda generaci on
{
}
Rechazada
F
1
F
2
F
3
P
t
Q
t
P
t+1
Ordenamiento
no dominado
Ordenamiento de la
distancia de
agrupamiento
Figura 3.3: Procedimiento del NSGA-II
soluciones de la poblaci on R
t
y deben ser enfatizadas m as que alguna otra soluci on en
la poblaci on combinada. Si el tama no de F
1
es m as peque no que N, se eligen todos los
miembros del conjunto F
1
para ser parte de la poblaci on P
t+1
. Los individuos restantantes
de la poblaci on P
t+1
son elegidos de los subsecuentes frentes no dominados en el orden de
su rango. As que las soluciones del conjunto F
2
son elegidas, seguidas por las soluciones
del conjunto F
3
y as sucesivamente. Este procedimiento contin ua hasta que no pueden
acomodarse m as conjuntos de soluciones. Evidentemente, la suma de las cardinalidades de
los conjuntos F
1
a F
l
es mayor que N. Para solucionar esta situaci on, se ordena en forma
descendente el ultimo conjunto F
l
usando el operador de comparaci on de agrupamiento
(
n
) para seleccionar las mejores soluciones y llenar exactamente el espacio de la nueva
poblaci on de tama no N. El NSGA-II se describe gr acamente en la gura 3.3. A la nueva
poblaci on P
t+1
se le aplican los operadores de selecci on, cruza y mutaci on para formar una
nueva poblaci on Q
t+1
de tama no N. Es importante decir que en la t ecnica de selecci on de
torneo binario, se aplica el operador de comparaci on de agrupamiento (
n
). Este operador
requiere que se conozca la jerarqua y la distancia de agrupamiento de cada soluci on de la
poblaci on. Estos ultimos valores se calculan mientras se est a formando la poblaci on P
t+1
tal y como se muestra en el algoritmo 10.
Captulo 3. C omputo evolutivo multiobjetivo 37
Algoritmo 8: Enfoque del ordenamiento r apido no dominado
Input: Una poblaci on P
Output: Una asignaci on jer arquica a los miembro de la poblaci on, con base en sus
niveles de dominancia, clasicados en los distintos frentes F
i
begin 1
forall (p P); /* para cada individuo p de la poblacion P */ 2
do 3
S
p
=; 4
n
p
= 0; 5
forall (q P) ; /* para cada individuo p de la poblacion P */ 6
do 7
if (p q); /* si p domina a q */ 8
then 9
S
p
= S
p
q; /* S
p
el conjunto de soluciones que son donminadas 10
por p */
else if (q p); /* si q domina a p */ 11
then 12
n
p
= n
p
+1; /* contador de soluciones que dominan a p */ 13
end 14
if (n
p
= 0); /* si nadie domina a p */ 15
then 16
p
rank
= 1; /* se asigna primer grado de jerarqua a p */ 17
F
1
=F
1
p ; /* F
1
primer frente encontrado */ 18
end 19
end 20
i = 1; 21
while (F
i
,=); /* se obtienen los F
i
frentes restantes */ 22
do 23
Q =; 24
forall (p F
i
); /* para cada individuo p del frente F
i
*/ 25
do 26
forall (q S
p
); /* para cada individuo q del conjunto S
p
*/ 27
do 28
n
q
= n
q
1; 29
if (n
q
= 0) then 30
q
rank
= i +1; /* asigna el siguiente nivel jerarquico a q */ 31
Q = Qq 32
end 33
end 34
i = i +1; 35
F
i
= Q; 36
end 37
end 38
38 3.3. Algoritmos de segunda generaci on
Algoritmo 9: Asignaci on de la distancia de agrupamiento
Input: Un conjunto no dominado I
Output: Una asignaci on de distancia de agrupamiento a cada miembro de I
begin 1
l =[I [; 2
forall (i I) do 3
I [i]
distance
= 0; 4
end 5
forall objetivo m do 6
I = sort(I , m); 7
I [i]
distance
=I [l] =; 8
for i = 2 to l 1 do 9
I [i]
distance
=I [i]
distance
+
I [i +1].mI [i 1].m
f
m ax
m
f
mn
m
;
10
end 11
end 12
end 13
Algoritmo 10: Non-dominated Sorting Genetic Algorithm II (NSGA-II)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada
begin 1
t = 0; 2
Inicializar poblaci on P
t
; 3
Evaluar poblaci on de acuerdo a las funciones objetivo; 4
while (t < max
gen
) do 5
Aplicar cruza y mutaci on a P
t
, para generar Q
t
; 6
Evaluar poblaci on Q
t
de acuerdo a las funciones objetivo; 7
R
t
= P
t
Q
t
; 8
Asignar jerarqua con base en la dominancia de Pareto a R
t
; 9
Asignar distancia de agrupamiento a R
t
; 10
Seleccionar los N individuos de R
t
, de acuerdo al operador de comparaci on 11
de agrupamiento
n
para obtener P
t+1
;
t =t +1; 12
end 13
end 14
CAP

ITULO 4
PROPUESTA MONO-OBJETIVO
Como trabajo previo al principal problema que se aborda en esta tesis (optimizaci on
multiobjetivo), presentamos un algoritmo hbrido al que denominamos Nonlinear Simplex
Search Differential Evolution (NSSDE) para optimizaci on global. Este enfoque utiliza el
algoritmo evolutivo de evoluci on diferencial [57], acoplado al m etodo de Nelder-Mead
[53], que act ua como buscador local. Nuestra idea es dise nar una estrategia de b usqueda
local, que pueda ser utilizada de manera similar en el problema de optimizaci on multiob-
jetivo.
En el resto del captulo, describiremos la heurstica de optimizaci on global adoptada, y
presentaremos algunos trabajos referentes a algoritmos hbridos para optimizaci on global,
que utilizan el m etodo de Nelder-Mead en su hibridizaci on. Tambi en presentaremos una
secci on donde se exponen los resultados de nuestra propuesta y las conclusiones sobre los
resultados obtenidos del algoritmo hbrido.
4.1. Evoluci on diferencial
La evoluci on diferencial (ED) es una rama de la computaci on evolutiva desarrollada
por Rainer Storn y Kenneth Price [71] a mediados de los 1990s. Surge como consecuencia
de los intentos de Price por resolver el polinomio de Chebyshev y es utilizada para
resolver problemas de optimizaci on multidimensionales en espacios continuos. La idea
que Price concibi o, es utilizar la diferencia entre vectores para perturbar a otro vector de la
poblaci on. Con esta idea seminal, una intensa discusi on surgi o entre Price y Storn, iniciada
en interminables meditaciones y simulaciones por computadora, lo que produjo un gran
n umero de mejoras sustanciales, las cuales hicieron de la ED la herramienta vers atil y
robusta de optimizaci on que es hoy en da.
La comunidad de ED ha estado creciendo desde sus orgenes (19941995) y cada
da m as investigadores trabajan con esta t ecnica. El deseo de Price y Storn, es que sea
39
40 4.1. Evoluci on diferencial
fomentado el desarrollo de esta heurstica por cientcos en todo el mundo y pueda ser
mejorada para ayudar a m as usuarios en su trabajo. Es por esto, que la ED no ha sido
patentada de ninguna forma.
4.1.1. Optimizaci on global con ED
La ED es un m etodo de b usqueda que utiliza N vectores:
x
i,g
; i =1, 2, . . . , N
como la poblaci on de cada generaci on g. El valor de N representa la cardinalidad de la
poblaci on y es constante durante todo el proceso de optimizaci on. La poblaci on inicial se
elige de manera aleatoria si no se conoce nada acerca del problema. Como regla, se asume
una distribuci on uniforme para las decisiones aleatorias a tomar. La idea principal de la ED
es un nuevo esquema para crear vectores. De esta manera, los nuevos vectores son gene-
rados cuando se suma la diferencia de pesos de dos de ellos a un tercer vector, todos ellos
miembros de la poblaci on. Si la aptitud del vector resultante es mejor que el miembro de la
poblaci on elegido, entonces el nuevo vector reemplaza al vector con el cual fue comparado.
De acuerdo a los estudios realizados por Price y Storn existen diferentes variantes en
ED. Las dos variantes m as prometedoras son ED1 y ED2 [71], las cuales describimos a
continuaci on.
4.1.1.1. Esquema ED1
Para cada vector x
i,G
; i =1, 2. . . , N, un vector de pruebav se genera de acuerdo a:
v =x
r
1
,g
+F (x
r
2
,g
x
r
3
,g
) (4.1)
con r
1
, r
2
, r
3
[1, N] enteros y F > 0.
Los enteros r
1
, r
2
y r
3
son elegidos aleatoriamente en el intervalo [1, N] y son diferentes
entre s. La constante F, es un factor real que controla la amplicaci on en la variaci on
diferencial (x
r
2
,g
x
r
3
,g
). Este esquema se ilustra gr acamente en la gura 4.1.
4.1.1.2. Esquema ED2
Este esquema trabaja de igual forma que el ED1, pero genera el vector v de acuerdo a:
v =x
i,g
+ (x
me jor,g
x
i,g
) +F (x
r
2
,g
x
r
3
,g
) (4.2)
introduciendo una variable de control adicional . La idea es incorporar al esquema el
mejor vector de la poblaci on x
me jor,g
. Esta caracterstica puede ser muy util para las
Captulo 4. Propuesta mono-objetivo 41
2
6
3
7
8
9
4
5
1
N vectores de la poblacin actual
Nuevo vector generado
x
1
x
2
x -x
r2 r3
F (x -x )
r2 r3
v =x +F(x -x )
1 r1 r2 r3
x
r1
x
r2
x
r3
Figura 4.1: Esquema ED1
funciones no crticas.
Para incrementar la diversidad de los resultados, se usa un vector:
u = (u
1
, u
2
, . . . , u
D
)
T
con:
u
j
=
_
v
j
, para j =n)
D
, n+1)
D
, . . . , n+L1)
D
(x
i,g
)
j
, de lo contrario.
donde D indica el espacio euclidiano de las variables de la funci on y los par entesis )
D
denotan la funci on m odulo con m odulo D.
En los dos esquemas (ED1 y ED2) puede surgir el problema, de que al generar el vector
hijo u, los componentes del vector excedan el lmite de las variables. Si este es el caso,
entonces se debe adoptar una estrategia para restablecer el par ametro en un valor permitido.
El m etodo m as simple, es hacer que el par ametro u
j
tome el valor del lmite que
excede. Aunque en la pr actica este m etodo ha trabajado bien, podra ser evitado, dado que
esto tiene el potencial de decrementar la diversidad de la poblaci on. Otra alternativa, es
que si el par ametro est a fuera de los lmites, puede restaurarse reinicializ andose (es decir,
generando un nuevo valor aleatorio). Mientras que esta estrategia mantiene la diversidad
de los par ametros, es quiz a, una forma un tanto extrema de preservar diversidad.
42 4.1. Evoluci on diferencial
Una buena idea es la que presenta Price en [56] y es la tomada en este trabajo. Consiste
en restablecer los par ametros que violan las restricciones a un punto medio entre su pre-
mutaci on/cruza y el valor del lmite violado. La siguiente ecuaci on muestra c omo usar este
enfoque para restablecer el j- esimo par ametro del i- esimo vector hijo u
j,i,g+1
:
u
j,i,g+1
=
_

_
_
x
j,i,g
+x
(lo)
j
_
/2 , si u
j,i,g+1
< x
lo
j
_
x
j,i,g
+x
(hi)
j
_
/2 , si u
j,i,g+1
< x
hi
j
u
j,i,g+1
, en otro caso.
donde lo y hi indica el lmite inferior y superior permitido, respectivamente.
4.1.2. Estrategias de ED
Adem as de los esquemas de ED, existen diferentes estrategias que pueden adoptarse
en el algoritmo y son utilizadas dependiendo del tipo de problema al que se aplique. Las
estrategias recaen en el vector a perturbar, en el n umero de diferentes vectores considera-
dos para la perturbaci on, y nalmente en el tipo de cruza a utilizar. Las diez estrategias
propuestas por Price y Storn [72, 57] son las siguientes:
1. ED/mejor/1/exp
2. ED/aleatorio/1/exp
3. ED/aleatorio-al-mejor/1/exp
4. ED/mejor/2/exp
5. ED/aleatorio/2/exp
6. ED/mejor/1/bin
7. ED/aleatorio/1/bin
8. ED/aleatorio-al-mejor/1/bin1
9. ED/mejor/2/bin
10. ED/aleatorio/2/bin
De esta forma, la convenci on utilizada anteriormente es: ED/x/y/z.
ED
Referente a la evoluci on diferencial.
x
Representa el vector a perturbar; puede ser el mejor vector de la generaci on anterior
(mejor) o cualquier vector elegido aleatoriamente (aleatorio).
Captulo 4. Propuesta mono-objetivo 43
y
Es el n umero de vectores considerados para la perturbaci on del vector x. Para la
perturbaci on de un simple vector, se eligen aleatoriamente 3 vectores diferentes; la
diferencia de dos de ellos se suma al tercero. Para perturbar dos vectores diferentes,
se eligen 5 vectores distintos; la diferencia de pesos para cada par de cualquiera de
los cuatro primeros vectores se suma al quinto.
z
Es el tipo de cruza que puede ser utilizada (exp: exponencial; bin: binomial). La cruza
en la ED se realiza en las variables del vector dentro de un ciclo limitado por el valor
de CR. En la cruza exponencial, la primera vez en la que un n umero aleatorio entre
(0, 1) supera el valor de CR se suspende este ciclo y las variables que queden por
alterar quedan intactas. En la cruza binomial, la cruza se realiza en cada una de las
variables siempre y cuando al elegir un n umero aleatorio entre (0, 1) este sea menor
que el valor de CR.
Las dos variantes de este algoritmo evolutivo, aunadas a las estrategias propuestas por
Storn y Price, hacen de la evoluci on diferencial, una t ecnica heurstica competitiva en pro-
blemas de optimizaci on global. Tanto la estrategia a adoptar como los par ametros CR y F,
dependen directamente del problema que se enfrente y se determina independientemente
mediante ensayo-y-error. En la gura 4.2 se ilustra claramente el procedimiento para ge-
nerar un nuevo vector y se muestra c omo determinar si pasa o no a la siguiente generaci on.
Por ultimo, en el algoritmo 11 presentamos el pseudo-c odigo del algoritmo de evoluci on
diferencial de acuerdo a la estrategia ED1/aleatorio/1/bin.
4.2. Trabajos relacionados
En la actualidad existe una gran variedad de algoritmos hbridos para resolver proble-
mas de optimizaci on global. Estos algoritmos han sido desarrollados combinando m etodos
de distintas naturalezas. Los que conciernen a este trabajo, son los trabajos que utilizan el
algoritmo de Nelder-Mead en su hibridizaci on.
A continuaci on mencionaremos brevemente algunos trabajos recientes, que han adopta-
do el m etodo de Nelder-Mead como buscador local, para resolver problemas optimizaci on
global.
En 2005, Fang Wang y Yuhui Qiu proponen el algoritmo hbrido Nonlinear Simplex
Search PSO (NSSPSO) [82], el cual est a basado en el PSO can onico (una variante del
PSO original) propuesto por Carlisle y Dozier [7]. El algoritmo utiliza el m etodo de
Nelder-Mead como buscador local. La idea general del NSSPSO, consiste en aislar
una partculax
i
del c umulo y aplicar el m etodo de Nelder-Mead sobre ella. Si duran-
te la ejecuci on de la b usqueda local, la partcula converge en un radio de tolerancia
44 4.2. Trabajos relacionados
Algoritmo 11: Evoluci on diferencial estrategia: ED1/aleatorio/1/bin
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada x
i,g
begin 1
g = 0; 2
Iniciar una poblaci on aleatoria x
i,g
de tama no N; 3
Evaluar la aptitud de los individuos de la poblaci on; 4
while (g < max
gen
) do 5
for i = 1 to N do 6
Elegir r
1
,= r
2
,= r
3
aleatoriamente; 7
j
rand
= rand integer[1, D]; 8
for j = 1 to D do 9
if (rand
j
[0, 1) <CR) or ( j = j
rand
) then 10
u
i, j,g+1
= x
r
3
, j,G
+F (x
r
1
, j,g
x
r
2
, j,g
); 11
else 12
u
i, j,g+1
= x
j,g
; 13
end 14
end 15
if ( f (u
i,g+1
) f (x
i,g
)) then 16
x
i,g+1
= u
i,g+1
; 17
else 18
x
i,g+1
= u
i,g
; 19
end 20
end 21
g = g+1; 22
end 23
end 24
Captulo 4. Propuesta mono-objetivo 45
1) Elegir un vector base y un vector objetivo
x
1,g
f(x )
1,g
x
2,g
x
3,g
x
4,g
x
N-1,g
x
N,g
f(x )
2,g
f(x )
N-1,g
f(x )
3,g
f(x )
4,g
f(x )
N,g
v
1,g
f(v )
1,g
v
2,g
v
3,g
v
4,g
v
N-1,g
v
N,g
f(v )
2,g
f(v )
N-1,g
f(v )
3,g
f(v )
4,g
f(v )
N,g
x
1,g+1
f(x )
1,g+1
x
2,g+1
x
3,g+1
x
4,g+1
x
N-1,g+ 1
x
N,g+ 1
f(x )
2,g+1
f(x )
N-1,g+ 1
f(x )
3,g+1
f(x )
4,g+1
f(x )
N,g+ 1
2) Elegir dos miembros de la poblacin aleatoriamente , x x
r2 r3
x (vector base)
r1,g
x
r2,g
x
r3,g
cruza
vector objetivo
3) Calcular la
diferencia de pesos
+ -
+
+
F
4) Sumar al vector base
Seleccionar
mejor
individuo
u (vector de prueba)
1,g
5) , si , en otro caso: x =u f(u )<=f(x ) x =x
1,g+1 1,g 1,g 1,g 1,g+1 1,g
}
Poblacin
P
x,g
}
Poblacin
mutada P
v,g
}
Nueva
poblacin P
x,g+1
Figura 4.2: Generaci on de vectores utilizando evoluci on diferencial
con base a la estrategia (ED1/aleatorio/1/bin)
(de magnitud ErrorGoal) establecido, la iteraci on del PSO es considerada como sa-
tisfactoria; de lo contrario, la partcula puede ser devuelta al c umulo e iniciar con la
siguiente iteraci on del PSO. El simplex inicial que utiliza Nelder-Mead, se construye
a partir de la partcula aisladax
i
. El resto de los v ertices son generados aleatoriamen-
te de acuerdo a una distribuci on normal, con media x
i
y desviaci on est andar igual a
DRadius, donde:
DRadius = ErrorGoal +
=
_
100ErrorGoal , si ErrorGoal 10
4
0.001ErrorGoal , de lo contrario.
y ErrorGoal es una constante denida de acuerdo al problema de optimizaci on.
Otra propuesta que utiliza a Nelder-Mead como buscador local, es el algoritmo hbri-
do que presenta Koduru, Das y Welch en 2006 [40]. Esta propuesta tambi en est a ba-
sada en el algoritmo del PSO y presenta dos esquemas de hibridizaci on. El primero
denominado tandem, consiste en dividir la poblaci on en dos subconjuntos (para
cada iteraci on). Mientras que el primer conjunto est a sujeto al algoritmo principal es-
toc astico (PSO), una o m as iteraciones del algoritmo de Nelder-Mead son aplicadas
al otro subconjunto. Al nal, ambos subconjuntos son mezclados y se contin ua con la
46 4.3. Nuestra propuesta
siguiente iteraci on. El segundo esquema es denominado cascade. En esta propues-
ta, la idea es aplicar el proceso de optimizaci on estoc astico a todos los individuos de
la poblaci on y mejorar m as las soluciones obtenidas utilizando Nelder-Mead. Para
los dos esquemas, la denici on del simplex depende de la partcula elegida para opti-
mizar, ya que para denir el resto de los v ertices del simplex se aplica una t ecnica de
clustering (K-means) [46], con la que se obtienen las partculas de la poblaci on m as
cercanas a ella. De acuerdo a los experimentos que realizan los autores, concluyen
que el esquema cascade da mejores resultados.
Recientemente en 2007, Luo y Yu proponen el algoritmo low dimensional simplex
evolution (LDSE) [45], el cual es un algoritmo hbrido basado en la evoluci on dife-
rencial y el algoritmo de Nelder-Mead. En la LDSE, la cruza/mutaci on que se realiza
en la ED para crear a un nuevo hijo, se sustituye por los movimientos que realiza el
algoritmo de Nelder-Mead. La idea general consiste de dos sencillos pasos: 1) ini-
cializar una poblaci on P de tama no N y evaluar la aptitud; 2) para cada individuox
i
de la poblaci on P, se seleccionan aleatoriamente m+1 individuos de P, los cuales
representan los v ertices del simplex. El algoritmo de Nelder-Mead se ejecuta sobre el
m-simplex denido, de tal forma que si alg un movimiento del algoritmo de Nelder-
Mead genera un individuo con mejor aptitud que el individuox
i
, se sustituye. En caso
contrario, si la aptitud del individuox
i
es peor o igual que la aptitud promedio de la
poblaci on P y adem as es peor que el mejor v ertice (x
b
) del m-simplex, al vector x
i
se le asigna un punto intermedio entre x
b
y x
i
; si por el contrario, la aptitud de x
i
es
mejor que x
b
, entonces se asigna a x
i
un vector intermedio entre x
i
y el peor v ertice
(x
w
) del m-simplex. Recibe el nombre de LDSE debido a que cuando se elige el valor
de m, tal que m < n (donde, n es la dimensionalidad de la funci on), la dimensi on del
simplex se reduce y en estas condiciones, el simplex evoluciona en una dimensi on
menor que la de la funci on. Aunque los autores del algoritmo analizan el caso cuan-
do m = n (full dimensional simplex evolution (FDSE)), los resultados que obtienen
al comparar las dos propuestas, hacen concluir que la LDSE resulta m as eciente.
4.3. Nuestra propuesta
En t erminos de evoluci on, la b usqueda local es una consecuencia del aprendizaje
adquirido a lo largo de la vida de un individuo. La aptitud del individuo cambiar a despu es
de aplicar el proceso de aprendizaje. Sin embargo, los c odigos gen eticos del individuo
(par ametros) pueden o no ser alterados dependiendo la manera en que interact ue el
aprendizaje en la evoluci on. A esto se le conoce como evoluci on Lamarckiana y efecto
Baldwin [29, 2], respectivamente.
Las t ecnicas de b usqueda local han sido aplicadas en distintas heursticas de optimi-
zaci on. La manera m as simple para que dichas heursticas puedan ser beneciadas por
la b usqueda local, es utilizando los M etodos Multiarranque (Multistart Methods) [47].
En t erminos generales, estos m etodos consisten en alternar una fase de generaci on de
Captulo 4. Propuesta mono-objetivo 47
soluciones con otra de mejora de las mismas. El proceso se repite hasta que se cumpla un
criterio de parada. Se caracteriza principalmente porque se realizan m ultiples b usquedas
locales en distintas soluciones, con el n de evitar caer en zonas donde existan soluciones
localmente optimas.
En nuestra propuesta, a la que denominamos Nonlinear Simplex Search Differential
Evolution (NSSDE), el mecanismo de aprendizaje adoptado se basa en la teora de la
evoluci on Lamarckiana. A diferencia de los m etodos multiarranque, nosotros realizamos
la b usqueda local unicamente a una soluci on de la poblaci on. La idea es suministrar
un procedimiento que combine adecuadamente el poder de exploraci on del m etodo de
construcci on de soluciones (algoritmo evolutivo), con el poder de explotaci on del m etodo
de mejora (algoritmo de Nelder-Mead).
De esta manera, las dos fases que componen el algoritmo hbrido propuesto son: 1)
Fase de exploraci on y 2) Fase de explotaci on. A continuaci on describiremos estas fases
para posteriormente describir la mec anica completa del algoritmo.
4.3.1. Fase de exploraci on
Este mecanismo tiene como objetivo generar diversas soluciones en distintas zonas del
espacio de b usqueda. El m etodo que utilizamos para esta fase, es el algoritmo de evoluci on
diferencial descrito anteriormente.
El objetivo principal de adoptar un algoritmo evolutivo, es mantener una amplia diver-
sidad de soluciones durante el proceso de optimizaci on. De esta manera, la probabilidad de
caer en zonas de optimos locales disminuye. Adem as, es posible ahorrar evaluaciones de la
funci on en el m etodo de mejora, debido a que a diferencia de los m etodos multiarranque,
nosotros s olo aplicaremos una b usqueda local, en una unica soluci on.
4.3.2. Fase de explotaci on
Como hemos mencionado, en esta fase nosotros adoptamos el m etodo de Nelder-Mead.
La idea es elegir un individuo de la poblaci on para mejorarlo. Dicho individuo cambiar a su
estructura gen etica y reemplazar a al peor miembro de la poblaci on actual para, de esta
manera, dar paso a la siguiente generaci on.
El aplicar una b usqueda local en un algoritmo evolutivo, trae consigo dos interrogantes:
1) Cu al es la frecuencia con la que se debe aplicar el m etodo de mejora en el algoritmo?
y 2) Cu al debe ser el criterio de parada del mismo?.
En las siguientes secciones presentaremos los criterios tomados para estas dos inquie-
tudes.
48 4.3. Nuestra propuesta
4.3.2.1. Criterio de frecuencia para aplicar la b usqueda local
Aplicar el buscador local generaci on tras generaci on del algoritmo evolutivo, implicara
un n umero excesivo de evaluaciones de la funci on objetivo. El criterio que hemos adoptado
en este trabajo, se basa en la probabilidad de recombinaci on del individuo evolucionado x

(por la b usqueda local), con cualquier otro individuo de la poblaci on P de tama no N.


La probabilidad de que el individuo x

, pueda ser seleccionado para la cruza sexual con


otro miembro de la poblaci on, est a dada por
1
N
. Si aplic aramos el m etodo de mejora cada
N iteraciones, la probabilidad de que el individuo x

herede los rasgos gen eticos puros a


cada miembro de la poblaci on debera ser igual a 1. Sin embargo, dado el individuo x

,
este cambia su estructura gen etica por efecto de los operadores evolutivos de la evoluci on
diferencial. Nosotros proponemos aplicar el m etodo de mejora con una frecuencia de
N
2
generaciones, con el n de intensicar y reproducir el aprendizaje del individuo mejorado
en la poblaci on.
4.3.2.2. Criterio de parada de la b usqueda local
En el libro de Rao [59], se asume que el algoritmo de Nelder-Mead ha convergido
siempre y cuando, la desviaci on est andar de la funci on en los n+1 v ertices del simplex (n
la dimensi on de la funci on), sea menor que un valor sucientemente peque no , esto es:
Q =
_
n

i=0
[ f (
i
) f (x
c
)]
2
n+1
_
(4.3)
dondex
c
es el centroide del simplex y
i
los v ertices del mismo.
Treinta a nos despu es de la publicaci on del algoritmo de Nelder-Mead, Lagarias et al.
presentan un trabajo [43] detallado sobre las propiedades y convergencia del m etodo. Antes
de mencionar algunas propiedades que son tomadas en este trabajo, veamos la siguiente
denici on:
DEFINICI

ON 11 (SIMPLEX NO-DEGENERADO)
Se dice que un simplex es no-degenerado, si y s olo si, los vectores del simplex forman
un conjunto linealmente independiente. En otro caso, se dice que el simplex es degenerado
y en estas circunstancias, se tendr a tambi en un simplex pero de dimensi on menor.
Lagarias demuestra que todos los movimientos que puede realizar el algoritmo de
Nelder-Mead siempre generan un nuevo simplex no-degenerado. Adem as, muestra que
el m etodo converge a un punto mejor que el peor v ertice del simplex en al menos n +1
iteraciones del algoritmo.
Otra propiedad inmediata que surge a partir de la denici on del m etodo, es referente
al n umero de evaluaciones que se realizan de la funci on objetivo. En una iteraci on de
Captulo 4. Propuesta mono-objetivo 49
Nelder-Mead, se requiere una evaluaci on de la funci on siempre que el algoritmo termine
en el movimiento de reexi on; dos evaluaciones son requeridas si se acepta el movimiento
de expansi on o contracci on; el peor de los casos ocurre cuando se acepta reducir el
simplex ya que en ese caso se requieren n + 2 evaluaciones de la funci on objetivo.
Aunque los estudios experimentales realizados por Torczon [74] revelan que en esen-
cia los movimiento de reducci on nunca ocurren, Lagarias demuestra que unicamente no
se llevan a cabo, si el m etodo de Nelder-Mead se aplica a funciones estrictamente convexas.
El utilizar el criterio de paro de la ecuaci on 4.3 en la b usqueda local, implica realizar
una evaluaci on m as de la funci on objetivo en cada iteraci on del algoritmo (debido a
que el centroide x
c
cambia en cada iteraci on). El objetivo principal de nuestro trabajo es
reducir el n umero de evaluaciones de la funci on. Por esta raz on, y con base en lo descrito
anteriormente, nosotros proponemos utilizar una condici on de paro que no requiere
ninguna evaluaci on adicional y se menciona a continuaci on.
Este criterio es tomado directamente de las aportaciones que expone Lagarias en su
trabajo. Consiste en determinar si Nelder-Mead ha obtenido un vector mejor que el peor
v ertice del simplex en al menos n+1 iteraciones; si no es as, se concluye que el algoritmo
ha convergido y se detiene la b usqueda. Pero el converger a mejores puntos no indica que
el funcionamiento de Nelder-Mead sea el m as adecuado, esto debido a que la convergen-
cia puede ser demasiado lenta y demandar un n umero considerable de evaluaciones de la
funci on. Por esta raz on, nosotros establecemos una condici on m as de paro, la cual hace
referencia a una tolerancia de convergencia en un determinado n umero de iteraciones. Es
decir, si Nelder-Mead no converge m as all a de una tolerancia en 2(n+1) iteraciones (pro-
puesta con base en ensayos experimentales), entonces deducimos que el simplex ha sido
modicado a tal grado que su uso resulta ineciente. La siguiente expresi on generaliza el
criterio de paro que se adopta en nuestra propuesta:
if ( (no se genera un vector mejor quex
w
en (n+1) iteraciones) or
(la convergencia en 2(n+1) iteraciones ) ) then
Termina b usqueda local;
(4.4)
donde x
w
es el peor v ertice del simplex, n es la dimensi on de la funci on y es un valor de
tolerancia permitido para la convergencia del algoritmo en 2(n +1) iteraciones; para este
trabajo, = 1.010
3
.
4.3.3. El algoritmo
El paso inicial es crear una poblaci on aleatoria P de tama no N. Luego aplicamos una
iteraci on del proceso evolutivo de ED a cada individuo de P para obtener una nueva pobla-
ci on P

. Despu es, se elige al mejor vectorx


b
de la poblaci on P

. A partir dex

b
se construye
el simplex regular y se aplica el m etodo de mejora (Nelder-Mead) hasta que el criterio de
parada de la ecuaci on 4.4 se cumpla. El mejor v ertice x

b
encontrado por Nelder-Mead, re-
emplazar a al peor v ertice x
w
de P

. Se actualiza la poblaci on P = P

y se contin ua con
50 4.4. Resultados obtenidos
la siguiente iteraci on si es que no se ha sobrepasado el n umero de iteraciones permitidas.
Para aplicar nuevamente el proceso de mejora, se debe vericar si se ha evolucionado por
N
2
generaciones despu es de la ultima aplicaci on de la b usqueda local. Esta explicaci on se
ilustra gr acamente en la gura 4.3 y el algoritmo 12 muestra el psudo-c odigo completo
del algoritmo hbrido NSSED.
Algoritmo 12: Nonlinear Simplex Search Differential Evolution (NSSDE)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada P
begin 1
g = 0; 2
Iniciar una poblaci on aleatoria P de tama no N; 3
Evaluar la aptitud de los individuos de la poblaci on; 4
while (g < max
gen
) do 5
Aplicar una iteraci on de ED a la poblaci on P para generar P

; 6
if ((g mod
N
2
) = 0) then 7
Identicar el mejor vector x
b
de la poblaci on P

; 8
Construir el simplex
p
a partir dex
b
; 9
Aplicar Nelder-Mead utilizando el simplex
p
para obtener x

b
; 10
Sustituir el peor vector x
w
de P

por x

b
; 11
end 12
P = P

; 13
g = g+1; 14
end 15
end 16
4.4. Resultados obtenidos
Las funciones de prueba utilizadas para evaluar nuestro algoritmo hbrido NSSDE son
las presentadas por Yao et al. [83]. Consiste en un conjunto de veintitr es problemas de
optimizaci on global con alta dimensionalidad y multimodalidad (ver ap endice A).
La implementaci on del algoritmo hbrido para optimizaci on global, se llev o a cabo
con el n de observar en que tanto benecia el m etodo de Nelder-Mead al algoritmo
evolutivo. Por esta raz on, las comparaciones se realizaron unicamente entre la ED y la
NSSDE. Para la comparaci on de los algoritmos, se realizaron 50 ejecuciones para cada
funci on de prueba. En cada ejecuci on, se utiliz o la misma semilla generadora de n umeros
pseudo-aleatorios y los mismos par ametros.
Captulo 4. Propuesta mono-objetivo 51
Iniciar poblacin
de tamao
P
N
g=0;
Reportar poblacin P
Fase de exploracin
Obtener con los operadores
evolutivos de la
sobre la poblacin
P*
ED
P
Fase de explotacin
Obtener
Incluir
x *
x * P*;
b
b
con el mtodo de
en
Nelder-Mead;
g<max
gen
g N/2 = 0 mod
P=P*;
g= g+1;
si
no
si
no
Figura 4.3: Esquema general del algoritmo hbrido NSSDE
Los resultados obtenidos en la tabla 4.1, muestran que la b usqueda local favoreci o con-
siderablemente en la mayora de las funciones de prueba; donde optimo es el optimo
de la funci on, Eval. representa el n umero de evaluaciones de la funci on, Des. Est. la
desviaci on est andar de los mnimos encontrados y f
min
el valor mnimo encontrado. La
mejora que hace la NSSDE sobre la ED simple puede verse tambi en gr acamente en las
guras 4.4 y 4.5.
4.5. Conclusiones sobre los resultados obtenidos
La estrategia utilizada en la fase de explotaci on fue favorable para nuestro algoritmo,
en la mayora de las funciones de prueba. Gr acamente se observa esta armaci on en las
guras 4.4 y 4.5. En ellas, solamente en las funciones 2, 8, 12 y 19, nuestro algoritmo
hbrido NSSDE no supera a la ED.
La fase de explotaci on de nuestro algoritmo hbrido, depende directamente del punto
inicial de la b usqueda. Cuando se tiene un espacio de b usqueda inmenso, la probabilidad
de que el punto inicial de b usqueda est e cerca de un punto estacionario es alta. Si este
es el caso, la fase de explotaci on lograr a r apidamente su objetivo en un n umero reducido
52 4.5. Conclusiones sobre los resultados obtenidos
optimo ED NSSDE
Funci on 0 Eval. Des. Est. f
min
Eval. Des. Est. f
min
f
1
0 20518.7 2.03E-006 9.78E-005 13185.7 2.00E-006 9.76E-005
f
2
0 25887.6 1.62E-006 9.80E-005 26154.2 1.84E-006 9.80E-005
f
3
0 47772.2 1.18E-006 9.87E-005 34238.9 1.11E-006 9.86E-005
f
4
0 80822.9 3.30E-006 9.60E-005 64748.2 2.77E-006 9.63E-005
f
5
0 192877.8 1.70E+000 9.57E-001 142799 5.58E-001 7.98E-002
f
6
0 8439.7 0.00E+000 0.00E+000 7426.3 0.00E+000 0.00E+000
f
7
0 60416.1 1.03E-003 8.71E-003 35084.9 1.05E-003 8.74E-003
f
8
-12569.5 43935.4 1.66E+001 -1.26E+004 57990.9 1.66E+001 -1.26E+004
f
9
0 275938.5 7.21E-006 8.99E-005 135341.2 2.36E-001 5.98E-002
f
10
0 31643.7 3.66E-006 9.55E-005 31562.8 3.40E-006 9.62E-005
f
11
0 26569.2 8.40E-006 9.01E-005 24314.8 1.06E-005 8.95E-005
f
12
0 21622.6 6.56E-006 9.25E-005 22908.8 8.89E-006 8.82E-005
f
13
0 23486.2 7.03E-006 9.13E-005 22761 6.43E-006 9.25E-005
f
14
1 1141.1 5.06E-004 9.98E-001 1121.1 5.06E-004 9.98E-001
f
15
0.0003075 48655.8 2.66e-008 0.00030756 43845.8 2.40e-08 0.00030756
f
16
-1.0316285 2317.7 2.76E-007 -1.0316 2314.6 2.69E-007 -1.0316
f
17
0.398 691.5 6.30E-005 0.3980 669.4 6.35E-005 0.3980
f
18
3 513.2 2.92E-003 3.0052 501.7 3.10E-003 3.0032
f
19
-3.86 335.6 7.18E-004 -3.8610 359.2 7.47E-004 -3.8611
f
20
-3.32 7172.5 4.44E-004 -3.3205 3933 4.05E-004 -3.3204
f
21
-10 7035.6 3.97E-002 -9.98 5792.7 3.96E-002 -9.54
f
22
-10 6649 9.89E-002 -9.99 4917.8 9.50E-002 -9.78
f
23
-10 6846.6 1.25E-001 -9.97 4865.2 1.25E-001 -9.69
Tabla 4.1: Comparaci on de ED y NSSDE
de evaluaciones de la funci on objetivo. Por el contrario, si el punto inicial de b usqueda
est a muy alejado de un optimo local y, tomando en cuenta la alta no linealidad de las
funciones de prueba adoptadas, la aplicaci on del algoritmo de Nelder-Mead resulta poco
eciente en estas circunstancias.
En t erminos generales, nuestro algoritmo hbrido NSSDE, result o ser muy competitivo
y consistente sobre el conjunto de funciones del prueba de Yao et al. [83]. La denici on de
estas funciones de prueba, se presenta en el ap endice A.
Captulo 4. Propuesta mono-objetivo 53
Figura 4.4: Gr aca comparativa entre ED y NSSDE (parte 1)
Figura 4.5: Gr aca comparativa entre ED y NSSDE (parte 2)
54 4.5. Conclusiones sobre los resultados obtenidos
CAP

ITULO 5
PROPUESTA MULTIOBJETIVO
En el captulo anterior, describimos una estrategia para acoplar a un algoritmo
evolutivo el m etodo de Nelder-Mead, el cual act ua como buscador local. Para el caso de
optimizaci on mono-objetivo, nuestra estrategia es retomar la misma t ecnica y emplearla
en este nuevo algoritmo hbrido.
En el resto del captulo, describiremos nuestra propuesta algortmica denominada
Nonlinear Simplex Search Genetic Algorithm (NSS-GA) para optimizaci on multiobjeti-
vo. Nuestro algoritmo est a basado en el NSGA-II [15], utilizando los algoritmos de op-
timizaci on matem atica de Nelder-Mead [53] (para funciones multidimensionales) y el de
la secci on dorada (para funciones unidimensionales) como estrategias de b usqueda local.
Tambi en presentaremos los trabajos relacionados a algoritmo hbridos multiobjetivo, que
utilizan m etodos de programaci on matem atica en su hibridizaci on. Adem as, describiremos
los problemas que se presentaron en los experimentos realizados, as como las estrategias
tomadas para solucionarlos. Adicionalmente, presentaremos las m etricas utilizadas para
la evaluaci on de nuestro algoritmo. Y por ultimo, expondremos los resultados de nuestra
propuesta y las conclusiones sobre los resultados obtenidos por nuestro algoritmo hbrido.
5.1. Trabajos relacionados
El inter es en el dise no e implementaci on de meta-heursticas hbridas se ha incre-
mentado de forma importante en los ultimos a nos [73]. Sin embargo, la mayora de estos
estudios se han centrado en t ecnicas mono-objetivo, mientras que el ambito multiobjetivo
constituye a un, una area poco explorada de investigaci on.
En la actualidad, se han desarrollado algoritmos hbridos multiobjetivo como los
presentados en [3, 33, 36, 39]. En algunos casos, han sido desarrollados para aplicaciones
muy especcas e hibridizados con prop ositos distintos a las de esta tesis. Nosotros abor-
damos el problema de optimizaci on multiobjetivo no lineal, utilizando como algoritmo
55
56 5.2. Nuestra propuesta
explorativo al NSGA-II y el m etodo de Nelder-Mead como buscador local.
Son pocos los trabajos que utilizan m etodos cl asicos de optimizaci on, como buscadores
locales en optimizaci on de multiobjetivo. A continuaci on presentamos los dos trabajos
que m as se asemejan a nuestra propuesta, en el sentido de utilizar m etodos cl asicos de
optimizaci on en su hibridizaci on.
En 2003, Hu et al. [32] combinan la programaci on cuadr atica secuencial (Sequential
Quadratic Programming, SQP) y el m etodo de la restricci on con los algoritmos
evolutivos multiobjetivo SPEA y NSGA-II. El potencial que enmarca este algoritmo
hbrido, radica en aprovechar la propiedad de convertir un POM a un problema de
optimizaci on mono-objetivo (estrategia natural del m etodo de la restricci on ). Pa-
ra cada funci on se le aplica una b usqueda local utilizando SQP. Esta hibridizaci on
permite una mejora en la calidad de las soluciones en diferentes funciones de prue-
ba. Adem as, con esta estrategia hbrida se permite incrementar la diversidad de las
soluciones obtenidas. Los detalles del este algoritmo se describen en [32].
Recientemente (en 2007), Koduru et al. [41] proponen una hibridizaci on basada en el
algoritmo de PSO y el m etodo simplex no lineal. La idea para acoplar el m etodo de
Nelder-Mead es similar a un trabajo realizado anteriormente por los mismos autores
[40] (descrito en el captulo anterior). Este algoritmo hbrido multiobjetivo se basa en
la dominancia difusa (fuzzy dominance) [42] y utiliza un archivo externo que contiene
las soluciones difusas no dominadas. En t erminos generales, la hibridizaci on consiste
en denir k c umulos (clusters) de la poblaci on con cardinalidad de n+1 en el espacio
de las funciones objetivo (donde n es la dimensi on de la funci on). Estos c umulos
representan los v ertices del simplex. El m etodo de Nelder-Mead se aplica a cada
c umulo denido y se repite por un determinado n umero de iteraciones. Se actualiza
el archivo externo con las partculas de los c umulos de acuerdo a la dominancia difusa
y se contin ua con la siguiente iteraci on.
5.2. Nuestra propuesta
De la misma manera que la propuesta anterior, el mecanismo de aprendizaje adoptado
en nuestro algoritmo hbrido multiobjetivo denominado Nonlinear Simplex Search Genetic
Algorithm (NSS-GA), se basa en la teora de la evoluci on Lamarckiana.
Hemos adoptado el algoritmo NSGA-II como m etodo base de exploraci on, adem as el
m etodo de Nelder-Mead y el de la secci on dorada en la fase de explotaci on. A continuaci on
presentaremos las dos fases que componen nuestra propuesta y mencionaremos los proble-
mas que se presentaron. Tambi en describiremos las estrategias adoptadas para solucionar
dichos problemas.
Captulo 5. Propuesta multiobjetivo 57
5.2.1. Fase de exploraci on
Este mecanismo tiene como objetivo generar diversas soluciones en distintas zonas del
espacio de b usqueda. El m etodo que utilizamos en esta fase, es el algoritmo NSGA-II
descrito en el captulo 3. De esta manera, aprovechamos el proceso evolutivo del algoritmo
gen etico para diversicar los individuos de la poblaci on, generaci on tras generaci on.
5.2.2. Fase de explotaci on
El m etodo de Nelder-Mead, es un m etodo directo de optimizaci on utilizado para
optimizar funciones multi-dimensionales en espacios continuos. En cuanto a funciones
unidimensionales se reere, se ha demostrado que el m etodo de Nelder-Mead converge
unicamente en funciones estrictamente convexas [43]. Es por esto, que introdujimos el
m etodo de la secci on dorada, el cual, a diferencia del m etodo de Nelder-Mead, requiere
una unica evaluaci on de la funci on objetivo por cada iteraci on.
En el captulo anterior presentamos el criterio de parada de la b usqueda local el cual
retomamos en este algoritmo multiobjetivo. Para el caso particular de la secci on dorada, el
criterio de parada cambia. Nosotros proponemos un valor de = 1.010
3
como criterio
de convergencia del algoritmo de la secci on dorada (ver algoritmo 1, captulo 2).
En nuestra propuesta, realizamos una b usqueda local para cada una de las funciones
del problema multiobjetivo. Adem as, incluimos una funci on agregativa con la nalidad
de obtener mejores soluciones compromiso, entre las soluciones que optimizan a cada
funci on del problema multiobjetivo. La idea es intensicar la b usqueda hacia una mejor
soluci on para cada funci on, partiendo de un individuo de la poblaci on. De esta manera,
los operadores gen eticos del algoritmo evolutivo, reproducir an los rasgos gen eticos de las
mejores soluciones por funci on y la selecci on natural elegir a las soluciones m as aptas para
sobrevivir en el ambiente (el problema multiobjetivo).
Desafortunadamente, la alta dimensionalidad y multimodalidad de las funciones son el
gran problema que puede volver inecientes a los m etodos cl asicos de optimizaci on. Un
ejemplo claro recae en el m etodo de Nelder-Mead, el cual resulta inoperable para determi-
nadas clases de funciones, como por ejemplo la funci on de McKinnon [48], en donde el
mismo autor demuestra la convergencia del m etodo hacia un punto no estacionario (o no
optimo).
Con base en los estudios experimentales realizados, se detect o que aplicar el m etodo
de Nelder-Mead en un simplex regular, puede resultar completamente inecaz para
optimizar una determinada funci on. Un ejemplo claro son los problemas del conjunto
denominado ZDT [85]. Aunque en la literatura especializada existen trabajos para agilizar
la convergencia del m etodo de Nelder-Mead hacia optimos locales, como el simplex
difuso (fuzzy simplex) de Trabia [75], los movimientos inteligentes de Rahman [58] y otras
modicaciones que se han hecho al m etodo [4], en realidad no se ha logrado generalizar
58 5.2. Nuestra propuesta
la t ecnica para solucionar el problema cuando el simplex inicial resulta inoperable para
optimizar una determinada funci on.
Con lo descrito anteriormente, surgen nuevas interrogantes, tales como: 1) Qu e in-
dividuo seleccionar para aplicar la b usqueda local?, 2) C omo construir el simplex? y 3)
C omo manejar las restricciones del lmite de las variables?. Las estrategias tomadas para
satisfacer estas nuevas inquietudes se presentan a continuaci on.
5.2.2.1. Selecci on de individuo para aplicar b usqueda local
Dada una poblaci on P, seleccionamos al individuox

P para optimizar con respecto


del objetivo i de acuerdo a:
x

=x
l
[x
l
= mn
x
l
P

f
k
(x
l
) (5.1)
donde P

es el conjunto de soluciones no dominadas en la poblaci on P.


En otras palabras, seleccionaremos al individuo con mejor aptitud de acuerdo a la i- esi-
ma funci on del problema multiobjetivo y que est a en el conjunto de soluciones no domina-
das de la poblaci on actual P.
5.2.2.2. Construcci on del simplex
A la soluci on x

seleccionada, la denominamos cabeza del simplex y ser a el primer


v ertice del n-simplex (donde n es la dimensi on de la funci on), esto es:

0
= x

Los n v ertices restantes, son elegidos de tal manera que se forme un conjunto linealmen-
te independiente. De manera similar que en [9], nosotros empleamos una estrategia para
reducir el dominio de la b usqueda local. En estas condiciones, los v ertices son construidos
dentro de este nuevo dominio. A continuaci on presentamos la estrategia que proponemos
para la reducci on del dominio de b usqueda y la manera en que construimos los puntos en
este nuevo dominio.
Reducci on del dominio de b usqueda
Adiferencia del trabajo de Chelouah y Siarry [9], nosotros no requerimos de un par ame-
tro adicional para reducir el dominio de b usqueda. La idea que proponemos, es realizar un
an alisis en la estructura gen etica de una muestra de la poblaci on, que es tomada de acuerdo
con los mejores individuos con respecto a la i- esima funci on a optimizar. Con esta muestra
poblacional, podemos identicar la media aritm etica y la desviaci on est andar de los ge-
nes (par ametros) de cada individuo de la muestra. Entonces, el espacio prometedor para el
optimo de la i- esima funci on estar a acotado por un nuevo lmite inferior (low bound
j
new
)
Captulo 5. Propuesta multiobjetivo 59
y superior (up bound
j
new
) con respecto del j- esimo par ametro, respectivamente. Denimos
los nuevos lmites de la b usqueda local, de acuerdo a:
low bound
j
new
= m(P
m
( j)) (P
m
( j))
up bound
j
new
= m(P
m
( j)) +(P
m
( j))
(5.2)
donde P
m
es la muestra poblacional obtenida, m(P
m
( j)) la media aritm etica y (P
(
j)) la
desviaci on est andar del j- esimo par ametro de la muestra P
m
.
Para este trabajo, la muestra poblacional es del 20 % con respecto al tama no original de
la poblaci on P, pero puede variar dependiendo de la funci on a optimizar.
Construcci on de los v ertices del simplex
Una vez obtenido el nuevo dominio de b usqueda, el resto de los v ertices del simplex
son creados de acuerdo a una buena distribuci on en dicho dominio.
Las secuencias de baja discrepancia (low-discrepancy sequence), son denominadas
tambi en secuencias cuasi-aleatorias o sub-aleatorias y ofrecen un grado de uniformidad
m as alto (de baja discrepancia), con respecto a la distribuci on uniforme de n umeros
pseudo-aleatorios com un.
Para obtener los n v ertices restantes del simplex, proponemos la construcci on de los
puntos de acuerdo a dos secuencias de baja discrepancia, que no son m as que la generali-
zaci on de la secuencia de van der Corput [77]. Estas secuencias tienen sus fundamentos en
la teora de n umeros y se presentan a continuaci on.
La primera de ellas conociada como secuencia de Halton (Halton sequence) [27], di-
ere de la representaci on binaria de la secuencia de van der Corput, debido a que utili-
za una base diferente para cada coordenada del vector. De esta manera, la discrepancia
resultante y dispersi on es mejor que una simple muestra con distribuci on uniforme. Su-
pongamos que queremos construir el i- esimo vector de la secuencia de Halton en R
n
.
El primer paso es elegir a n primos relativos p
1
, p
2
, . . . , p
n
(com unmente los primeros n
n umeros primos p
1
= 2, p
2
= 3, . . .). Para construir el i- esimo vector de la secuencia, se
considera la representaci on en base p (n umero primo elegido) de i, la cual toma la forma
de i = a
0
+ pa
1
+ p
2
a
2
+. . .. Cada coordenada del vector estar a en el intervalo [0, 1] y se
obtiene invirtiendo el orden de los bits, esto es:
r(i, p) =
a
0
p
+
a
1
p
2
+
a
2
p
3
+
a
3
p
4
+. . . (5.3)
De esta manera, el i- esimo vector en la secuencia de Halton (iniciando con i = 0)
est a dado por:
r(i, p
1
), r(i, p
2
), . . . , r(i, p
n
)) (5.4)
60 5.2. Nuestra propuesta
Algoritmo 13: Secuencia de Halton
Input: i (i- esimo vector), j ( j- esimo componente del vector i)
Output: c [1, 0] (componente j del vector i) en la secuencia de Halton
begin 1
prime[n] = [2, 3, 5, 7, . . .]; /* definir los primeros n numeros primos */ 2
p
1
= prime[ j]; 3
p
2
= p
1
; 4
c = 0; 5
repeat 6
x = i mod p
1
; 7
c = c +
x
p
2
;
8
i =
i
p
1
;
9
p
2
= p
2
p
1
; 10
until (i 0) ; 11
return c; 12
end 13
Supongamos que conocemos el n umero total de vectores k que se deseen crear. En este
caso, se puede tener una mejor distribuci on de puntos. La segunda distribuci on de puntos
denominada secuencia de Hammersley (Hammersley sequence) [28], es una adaptaci on de
la secuencia de Halton. Utiliza unicamente n1 n umeros primos, iniciando con i = 0, el i-
esimo vector en la secuencia de Hammersley para un conjunto total de k vectores est a dado
por:
_
1
k
, r(i, p
1
), r(i, p
2
), . . . , r(i, p
n1
)
_
(5.5)
El algoritmo 13, muestra el pseudo-c odigo para obtener el j- esimo componente del
vector i de la secuencia de Halton. El valor c que regresa el algoritmo est a en el intervalo
[0, 1] y puede ser mapeado a un valor c
map
en el intervalo [low, up] de acuerdo a:
c
map
= low+c (uplow)
El diagrama de Voronoi [80, 81] es una estructura geom etrica que representa informa-
ci on de proximidad con respecto de un conjunto de puntos u objetos. En otras palabras, es
una partici on del espacio en celdas, cada una de la cuales contiene una colindancia con sus
puntos m as cercanos. En la gura 5.1, presentamos el diagrama de Voronoi de un conjunto
de doscientos puntos generados a partir de distintas distribuciones.
Captulo 5. Propuesta multiobjetivo 61
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
a) Distribucin Uniforme b) Distribucin Normal
d) Secuencia de Hammersley c) Secuencia de Halton
Figura 5.1: Doscientos puntos creados con: a) una distribuci on uniforme; b) una dis-
tribuci on normal, con media .5 y desviaci on est andar .5; c) la secuencia de Halton en
R
2
y d) la secuencia de Hammersley en R
2
Como se observa, la secuencia de Hammersley (gura 5.1.d), tiene una mejor distri-
buci on de puntos con respecto de la distribuci on uniforme (gura 5.1.a), la distribuci on
normal con media .5 y desviaci on est andar .5 (gura 5.1.b) e incluso que la secuencia de
Halton (gura 5.1.c).
En nuestros experimentos realizados, notamos que las secuencias de Halton y Ham-
mersley da mejores resultados con respecto de las otras dos distribuciones. Es por esto
que descartamos la distribuci on uniforme y normal, para generar los v ertices restantes del
simplex. Para generar el resto de los v ertices en el nuevo dominio, proponemos utilizar la
secuencia de Halton o Hammersley seleccion andola de acuerdo a una probabilidad para
cada invocaci on de la construcci on del simplex.
62 5.2. Nuestra propuesta
5.2.2.3. Lmites de las variables
Como se ha mencionado, por cada iteraci on del m etodo de Nelder-mead se gene-
ra un nuevo simplex, el cual es no degenerado siempre y cuando el simplex inicial no lo sea.
Desafortunadamente, los movimientos que realiza Nelder-Mead en el simplex, pueden
ocasionar que el nuevo v ertice del simplex est e fuera del rango de las variables. En [44],
se propone una estrategia que es tomada en este trabajo y se presenta a continuaci on.
Sea
i
el nuevo v ertice creado por alg un movimiento del algoritmo de Nelder-Mead.
Para evitar que alg un componente del v ertice
i
sobrepase los lmites permitidos del j-
esimo par ametro, este ser a restablecido de acuerdo a la ecuaci on 5.6.

( j)
i
=
_

_
low bound
j
, si
( j)
i
< low bound
j
up bound
j
, si
( j)
i
> up bound
j

( j)
i
, en otro caso.
(5.6)
donde low bound
j
y ip bound
j
son el lmite inferior y superior, respectivamente.
Tomar esta alternativa provoca un trastorno en los movimientos naturales del algoritmo
de Nelder-Mead, pudiendo ocasionar que el simplex se degenere y, en consecuencia,
disminuya la dimensi on de la b usqueda.
Nosotros proponemos vericar si el simplex no se ha degenerado cuando se invoca a la
restauraci on de par ametros. En caso de haberse degenerado, la b usqueda local termina y
se puede generar otro simplex para una nueva b usqueda local.
Un simplex es no degenerado siempre y cuando su volumen sea mayor que cero.
Podemos calcular el volumen del simplex de acuerdo a lo siguiente:
Sea
k
la matriz de n(n+1) la cual representa el simplex , esto es:

k
=
_
_
_
_
_
_

(1)
0

(1)
1

(1)
n

(2)
0

(2)
1

(2)
n
.
.
.
.
.
.
.
.
.
.
.
.

(n)
0

(n)
1

(n)
n
_
_
_
_
_
_
es decir, cada columna representa el i- esimo v ertice del simplex. Entonces el volumen del
simplex puede ser calculado de acuerdo a [43]:
vol() =
[det(M
k
)[
n!
(5.7)
Captulo 5. Propuesta multiobjetivo 63
donde M
k
es una matriz de tama no nn denida como:
M
k
=
_
_
_
_
_
_

(1)
0

(1)
n

(1)
1

(1)
n

(1)
n1

(1)
n

(2)
0

(2)
n

(2)
1

(2)
n

(2)
n1

(2)
n
.
.
.
.
.
.
.
.
.
.
.
.

(n)
0

(n)
n

(n)
1

(n)
n

(n)
n1

(n)
n
_
_
_
_
_
_
En caso de que vol() = 0, entonces el simplex se ha degenerado y aunque en la
pr actica no es muy com un que se degenere, es recomendable tener en cuenta este criterio.
5.2.2.4. Funci on agregativa
Una vez que se ha optimizado cada funci on del problema multiobjetivo, nosotros
proponemos minimizar una funci on agregativa; y para este enfoque, la selecci on del
individuo del cual parte la b usqueda local cambia. Proponemos seleccionar al individuo
cuya aptitud revele el mejor compromiso entre las soluciones obtenidas, que minimizan
cada funci on del problema multiobjetivo. La selecci on de esta soluci on se describe a
continuaci on.
Dado el vector

F = [ f

1
, f

2
, . . . , f

k
], cuyos componentes son los valores mnimos f

i
de
las k funciones objetivo encontradas en la generaci on actual. Seleccionamos al individuox
i
de la poblaci on P, tal que minimice la funci on:
G(x) =
k

i=1
[F[i] f
i
(x)[
[F[i][
(5.8)
y a partir de x se realiza la b usqueda local, minimizando la funci on agregativa descrita a
continuaci on.
En un problema multiobjetivo se desean tener las soluciones que se encuentran m as
cercanas al verdadero frente de Pareto. Y para los problemas de minimizaci on, estas solu-
ciones en teora estar an m as cerca del vector ideal articial

F. La funci on agregativa, que
presentamos se basa en este hecho. En este enfoque, la funci on que se optimiza mediante
el m etodo de mejora, est a dada por la ecuaci on 5.9.
(x) = ED(

F,

H(x)) (5.9)
donde

H es el vector de funciones objetivo en el punto x y ED es la distancia euclidiana
(Euclidean Distance) entre los vectores

F y

H, calculada por:
ED(F, H) =

_
k

i=1
(F[i] H[i])
2
64 5.2. Nuestra propuesta
Resumiendo, la fase de explotaci on del algoritmo optimiza cada una de las funciones
del problema multiobjetivo as como la funci on agregativa propuesta. Los pasos que se
llevan a cabo en esta fase son:
1. Seleccionar al individuo del cual partir a la b usqueda local, esto con base en la ecua-
ci on 5.1 para las funciones del problema multiobjetivo y la ecuaci on 5.8 para la
funci on agregativa.
2. Aplicar la b usqueda local con respecto a las k funciones del problema multiobjetivo;
y despu es, a la funci on agregativa.
Si la funci on es unidimensional:
a) Utilizar el m etodo de la secci on dorada.
Si la funci on es multidimensional:
a) Reducir el dominio de b usqueda.
b) Construir el simplex en el nuevo dominio.
c) Aplicar el m etodo de Nelder-Mead optimizando cada funci on, hasta que el
criterio de parada de la ecuaci on 4.4 (captulo 4) se satisfaga.
Una vez explicada la fase explotativa del algoritmo hbrido, ahora describiremos la
mec anica completa de nuestro algoritmo.
5.2.3. El algoritmo
Inicialmente, se crea una poblaci on aleatoria P
0
de cardinalidad N. Al principio del
algoritmo, se aplican los operadores de selecci on, cruza y mutaci on para obtener una
poblaci on de descendientes Q
0
de tama no N. De esta manera se obtiene una poblaci on
R
t
= P
0
Q
0
de tama no 2N. Despu es, la poblaci on R
t
se ordena de acuerdo a los principios
de no dominaci on y se obtiene la distancia de agrupamiento de cada individuo. Para la
siguiente generaci on P
t+1
se seleccionan los N individuos de R
t
de acuerdo al operador de
comparaci on de agrupamiento
n
(ver pag. 35, captulo 3) y se contin ua con la siguiente
iteraci on.
Con base en nuestros estudios experimentales, proponemos aplicar la fase de mejora
con una frecuencia mayor que en la propuesta mono-objetivo. Nuestra propuesta es
aplicarlo sobre la poblaci on P
i
cada
n
2
generaciones, donde n es la dimensi on de la funci on.
Dicha frecuencia depende directamente del tama no de dimensi on de la funci on y puede
variar de acuerdo al problema multiobjetivo.
En la fase de mejora, se obtienen soluciones localmente optimas tanto para cada fun-
ci on del problema multiobjetivo, como para la funci on agregativa. Para el caso particular
del m etodo de la secci on dorada, se tendr a una unica soluci on, mientras que para el m etodo
de Nelder-Mead, se tendr a un conjunto de soluciones representadas por el simplex nal.
Captulo 5. Propuesta multiobjetivo 65
Iniciar poblacin
de tamao
P
N
t=0;
Reportar poblacin P
Fase de exploracin
Aplicar proceso evolutivo del
NSAG-II para obtener P*
t
Fase de explotacin
Obtener el conjunto l
; con la fase de mejora
Mtodo de Nelder-Mead
o seccin dorada;
t<max
gen
t N/4 = 0 mod
P =P*;
t+1 t
si
no
si
no
R* = P*
t i
U l;
N
R
P
Seleccionar individuos
de de acuerdo al operador de
comparacin de agrupamiento,
para obtener
t
t+1
t=t+1;
Figura 5.2: Esquema del algoritmo hbrido NSS-GA
La uni on de todas las soluciones localmente optimas, denotado por , representa el con-
junto de optimos locales y ser an puestos en competencia con la poblaci on P
i
para ser o no
seleccionados por el operador de comparaci on de agrupamiento. La explicaci on del algo-
ritmo puede verse gr acamente en la gura 5.2, mientras que el algoritmo 14 muestra el
pseudo-c odigo del NSS-GA.
66 5.2. Nuestra propuesta
Algoritmo 14: Nonlinear Simplex Search Genetic Algorithm (NSS-GA)
Input: Un n umero m aximo de generaciones max
gen
Output: Una poblaci on evolucionada P
begin 1
t = 0; 2
Inicializar una poblaci on aleatoria P
t
de tama no N; 3
Evaluar la aptitud de acuerdo a las funciones objetivo; 4
while (t < max
gen
) do 5
Aplicar cruza y mutaci on a P
t
para generar Q
t
; 6
Evaluar poblaci on Q
t
de acuerdo a las funciones objetivo; 7
R
t
= P
t
Q
t
; 8
Asignar jerarqua con base en la dominancia de Pareto a R
t
; 9
Asignar distancia de a grupamiento a R
t
; 10
Seleccionar N individuos de R
t
de acuerdo al operador de comparaci on de 11
agrupamiento
n
, para obtener P

t
;
if ((t mod
N
4
) = 0) then 12
Iniciar la fase de mejora para obtener el conjunto de soluciones ; 13
R

t
= P

t
; 14
Asignar jerarqua con base en la dominancia de Pareto a R

t
; 15
Asignar distancia de a agrupamiento a R

t
; 16
Seleccionar N individuos de R

t
de acuerdo al operador de comparaci on 17
de agrupamiento
n
, para obtener P
t+1
;
else 18
P
t+1
= P

t
; 19
end 20
t =t +1; 21
end 22
end 23
Captulo 5. Propuesta multiobjetivo 67
5.3. M etricas
Con el objetivo de poder realizar una comparaci on entre nuestro algoritmo hbrido y el
algoritmo evolutivo base (el NSGA-II), hacemos uso de las m etricas de distancia genera-
cional DGI , espaciamiento E y cobertura C.
5.3.1. Distancia Generacional Invertida (DGI )
La distancia generacional (DG) propuesta por Van Veldhuizen y Lamont [78, 79] es
una m etrica que indica qu e tan lejos o cerca est an los puntos obtenidos por un algoritmo
multiobjetivo del frente de Pareto verdadero.
Dado el verdadero frente de Pareto , la distancia generacional para un conjunto de
soluciones P est a determinada por:
DG =

[P[

i=1
d
2
i
[P[
(5.10)
donde d
i
es la distancia euclidiana entre la i- esima soluci on de P y la soluci on m as cercana
a , es decir:
d
i
=
[[
mn
j=1

_
M

k=1
( f
k
(i) f
k
( j))
2
donde M es el n umero de funciones objetivo.
La DGI utiliza el mismo concepto. Si embargo, a diferencia de la DG, se utiliza como
base el verdadero frente de Pareto . Un valor de DGI igual a cero signica que todas las
soluciones obtenidas por el algoritmo pertenecen al conjunto de optimos de Pareto.
5.3.2. Espaciamiento (E)
La m etrica de espaciamiento propuesta por Schott [66] cuantica la dispersi on de las
soluciones en el frente no dominado. Eval ua la varianza de las distancias m as cercanas
entre el vecindario de soluciones. Dado un conjunto P de soluciones, la m etrica puede ser
calculada como:
E =

_
1
[P[ 1
[P[

i=1
(d d
i
)
2
(5.11)
68 5.3. M etricas
donde d
i
y d son denidas como:
d
i
= mn
i,i,=j
_
M

k=1
[ f
i
k
f
j
k
[
_
d =
[P[

i=1
d
i
[P[
Un valor bajo de E indica una mejor distribuci on de las soluciones en el frente y un valor
igual a cero alude que todas las soluciones est an uniformemente distribuidas.
5.3.3. Cobertura (C)
Propuesta por Zitzler et al. en [86]. Esta m etrica compara un conjunto de soluciones
con respecto a otro, utilizando la dominancia de Pareto. la m etrica se dene como:
C(A, B) =
[b B[a A : a _b[
[B[
(5.12)
Si todos los puntos en A dominan o son iguales a todos los puntos de B, esto implica
que C(A, B) = 1. Si ning un punto de A domina a alg un punto del conjunto B entonces
C(A, B) = 0. Cuando C(A, B) = 1 y C(B, A) = 0 entonces se dice que el conjunto A es
mejor que B. Debido a que el operador de dominancia no es sim etrico, se necesita calcular
C(A, B) y C(B, A) para comprender cu antas soluciones de A son cubiertas por B y viceversa.
Captulo 5. Propuesta multiobjetivo 69
5.4. Resultados obtenidos
El objetivo principal en esta tesis, fue dise nar un algoritmo hbrido que convergiera al
frente de Pareto verdadero, reduciendo el n umero de evaluaciones de la funci on de aptitud.
La estrategia adoptada y consisti o en acoplar un operador de b usqueda local a un algoritmo
evolutivo multiobjetivo, del estado del arte (el NSGA-II).
Para las pruebas realizadas se j o un n umero m aximo de evaluaciones de la funci on
objetivo y se evalu o el desempe no tanto del algoritmo hbrido como del algoritmo evolutivo
adoptado. Recordando que nuestro algoritmo no necesita alg un par ametro adicional con
respecto del algoritmo evolutivo base adoptado, las comparaciones se realizaron con los
mismos par ametros en ambos algoritmos para una justa competencia. Dichos par ametros
se muestran en la tabla 5.1.
Par ametro NSS-GA NSGA-II
T
p
100 100
P
c
.9 .9
P
m
1
N
1
N
Tabla 5.1: Par ametros utilizados para la comparaci on entre el NSS-GA y el NSGA-II
En la tabla 5.1, T
p
es el tama no de la poblaci on, P
c
es la probabilidad de cruza,
P
m
es la probabilidad de mutaci on y N representa el n umero de variables del problema
multiobjetivo.
En resumen, el proceso de comparaci on se llev o a cabo, realizando 30 ejecuciones de
los algoritmos para cada problema multiobjetivo. Las ejecuciones se restringen a 4,000
evaluaciones de la funci on de aptitud. Por cada funci on se probaron las tres m etricas
presentadas anteriormente (GDI , E y C). Cabe reiterar que un valor cercano a 0 para
la m etrica DGI indica un mejor acercamiento al verdadero frente de Pareto; un valor
cercano de 0 para la m etrica E indica una mejor dispersi on en las soluciones; y para el
caso de la cobertura, un valor cerca a 1 indica que el algoritmo domina a la mayora de
las soluciones de su contrincante; por el contrario, un valor igual a 0 indica que todas las
soluciones son dominadas.
Cada tabla comparativa muestra los valores de la media y desviaci on est andar de los
resultados de las m etricas en las 30 ejecuciones realizadas para cada algoritmo. Adem as,
para tener una clara visi on de la comparaci on de los algoritmos, se muestran las gr acas
correspondientes a la media con respecto de la m etrica GDI . En las pruebas realizadas,
se puede observar que no se llega al frente de Pareto verdadero. Sin embargo, si se deja
correr el algoritmo por un mayor n umero de generaciones, nuestra propuesta algortmica
converger a al verdadero frente, tal y como se muestra en las gr acas del ap endice C.
70 5.4. Resultados obtenidos
A continuaci on se muestran los resultados al evaluar cinco problemas multiobjetivo
propuestos por Zitzler [85] y dos m as, propuestos por Deb [17] (ver ap endice B).
5.4.1. ZDT1
Para esta funci on de prueba, la tabla 5.2, muestra claramente que el algoritmo NSS-GA,
obtiene mejores resultados en las m etricas GDI , E y C. Yaunque la estabilidad del NSGA-
II es mejor, las diferencias no son realmente signicativas. Para respaldar los resultados de
las m etricas, en la gura 5.3 se observa que nuestra propuesta tiene una mejor aproximaci on
al verdadero frente. M as a un, todas las soluciones de nuestro algoritmo dominan a las
soluciones del NSGA-II.
ZDT1
M etrica NSS-GA NSGA-II
media media
DGI 0.001149 0.000598 0.005582 0.000905
E 0.014620 0.005329 0.023731 0.004730
C 1.000000 0.000000 0.000000 0.000000
Tabla 5.2: Resultado de las m etricas para la funci on ZDT1
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT1
NSSGA
NSGAII
Figura 5.3: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT1
Captulo 5. Propuesta multiobjetivo 71
5.4.2. ZDT2
En el problema ZDT2 ocurre algo similar: en todas las m etricas, el algorimo NSS-GA
supera al NSGA-II, tal y como lo revela la tabla 5.3. Es claro ver en la gura 5.4, que
nuestro algoritmo casi toca el frente de Pareto verdadero, mientras que el algoritmo del
NSGA-II est a todava bastante alejado del frente verdadero.
ZDT2
M etrica NSS-GA NSGA-II
media media
DGI 0.002101 0.001785 0.015385 0.004631
E 0.021928 0.014674 0.029762 0.006576
C 0.971111 0.155571 0.004444 0.023934
Tabla 5.3: Resultado de las m etricas para la funci on ZDT2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT2
NSSGA
NSGAII
Figura 5.4: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT2
72 5.4. Resultados obtenidos
5.4.3. ZDT3
Este problema multiobjetivo, se destaca por tener un frente desconectado. En la gura
5.5 se muestra claramente que el NSS-GA obtiene un mejor acercamiento al verdadero
frente de Pareto en comparaci on con el NSGA-II. Incluso, con 4,000 evaluaciones se llega
a tocar el verdadero frente. La tabla 5.4 muestra que en todas las m etricas, nuestra propuesta
es mejor que el algoritmo NSGA-II. Aunque la desviaci on est andar revela que la estabilidad
del NSGA-II es mejor, no signica que nuestro algoritmo sea inestable ya que la diferencia
es poco signicativa.
ZDT3
M etrica NSS-GA NSGA-II
media media
DGI 0.001221 0.000832 0.004217 0.000798
E 0.013990 0.005108 0.023994 0.004774
C 0.969534 0.064908 0.009305 0.022992
Tabla 5.4: Resultado de las m etricas para la funci on ZDT3
1
0.5
0
0.5
1
1.5
2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT3
NSSGA
NSGAII
Figura 5.5: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT3
Captulo 5. Propuesta multiobjetivo 73
5.4.4. ZDT4
El problema multiobjetivo ZDT4, se caracteriza por tener 21
9
frentes de Pareto locales
y con varios algoritmos evolutivos multiobjetivo, tienden a quedar atrapado en un frente de
Pareto falso. Para este problema, tambi en nuestro propuesta algortmica es mejor en todas
la m etricas tal y como lo muestra la tabla 5.6. Aunque no todas las soluciones del NSS-GA
dominan a las del NSGA-II, se tiene una mejor aproximaci on al verdadero frente, la cual
se muestra gr acamente en la gura 5.6.
ZDT4
M etrica NSS-GA NSGA-II
media media
DGI 0.122063 0.058813 0.156509 0.051699
E 0.455495 0.416654 3.098866 2.822281
C 0.686486 0.322281 0.332336 0.388879
Tabla 5.5: Resultado de las m etricas para la funci on ZDT4
0
10
20
30
40
50
60
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT4
NSSGA
NSGAII
Figura 5.6: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT4
74 5.4. Resultados obtenidos
5.4.5. ZDT6
En la ultima funci on de prueba de los problemas ZDT, los resultados que se obtienen
con el NSS-GA son favorables. La aproximaci on de las soluciones al verdadero frente de
Pareto es mejor que las que se obtienen con el NSGA-II, tal y como lo muestra la gura 5.7.
La tabla 5.6, muestra que nuestro algoritmo tiene una mejor aproximaci on (DGI ) al frente
de Pareto verdadero, pero la dispersi on de soluciones no es la m as favorable (E). Aunque
la desviaci on est andar de los resultados obtenidos revelan que es m as estable el NSGA-II,
la diferencia es poco signicativa en comparaci on con nuestro algoritmo, si bien para el
caso de la m etrica de espaciamiento, el NSGA-II le gana claramente a nuestro algoritmo.
ZDT6
M etrica NSS-GA NSGA-II
media media
DGI 0.008980 0.004758 0.046699 0.007258
E 0.171233 0.117406 0.106812 0.055624
C 0.769754 0.273523 0.144094 0.230425
Tabla 5.6: Resultado de las m etricas para la funci on ZDT6
0
1
2
3
4
5
6
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT6
NSSGA
NSGAII
Figura 5.7: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo ZDT6
Captulo 5. Propuesta multiobjetivo 75
5.4.6. DTLZ1
La funci on DTLZ1 es la primera funci on de prueba de las 9 propuestas por Deb et al.
en [17]. Este grupo de problemas multiobjetivo, se caracteriza por ser escalable en el sen-
tido del n umero de funciones objetivo. Para las pruebas realizadas empleamos 3 funciones
objetivo. Los resultados se muestran en la tabla 5.7. Los resultados favorecen a nuestra
propuesta algortmica en cuanto al acercamiento al verdadero frente de Pareto. La disper-
si on de las soluciones no es la m as deseable, pero no hay que olvidar que nuestro objetivo
principal es converger r apidamente hacia el verdadero frente. Sobre la cobertura de solu-
ciones podemos concluir, que en la mayora de las ejecuciones, el algoritmo NSS-GA logra
dominar al NSGA-II. La gura 5.8 muestra que las soluciones del NSS-GA tiene un mejor
acercamiento al verdadero frente de Pareto.
DTLZ1
M etrica NSS-GA NSGA-II
media media
DGI 0.658650 0.107311 0.779135 0.168162
E 17.965977 7.564753 16.132116 6.874782
C 0.590605 0.147409 0.222936 0.112005
Tabla 5.7: Resultado de las m etricas para la funci on DTLZ1
0
50
100
150
200
250
300
350
400
450
500
0
50
100
150
200
250
0
50
100
150
200
250
300
350
400
f
3
(x,y)
Frente de Pareto DTLZ1
NSSGA
NSGAII
f
1
(x)
f
2
(x)
f
3
(x,y)
Figura 5.8: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo DTLZ1
76 5.4. Resultados obtenidos
5.4.7. DTLZ2
En la funci on DTLZ2 tambi en de tres objetivos, la competencia entre los dos algoritmos
resulta muy disputada. El algoritmo NSS-GA tiene por muy poco un mejor acercamiento al
frente de Pareto verdadero. La tabla 5.8 revela que tambi en para la dispersi on de soluciones
la competencia es apretada. El algoritmo NSGA-II es, por muy poco mejor que nuestra
propuesta. En la cobertura de soluciones, podemos decir que nuestro algoritmo domina por
muy poco las soluciones del NSGA-II. La gura 5.9 muestra la convergencia de los dos
algoritmos hacia el verdadero frente de Pareto.
ZDT6
M etrica NSS-GA NSGA-II
media media
DGI 0.000403 0.000022 0.000428 0.000024
E 0.055607 0.005740 0.055528 0.004754
C 0.150000 0.072019 0.025667 0.022462
Tabla 5.8: Resultado de las m etricas para la funci on DTLZ2
0
0.2
0.4
0.6
0.8
1
1.2
0
0.2
0.4
0.6
0.8
1
1.2
0
0.2
0.4
0.6
0.8
1
1.2
f
3
(x,y)
Frente de Pareto DTLZ2
NSSGA
NSGAII
f
1
(x)
f
2
(x)
f
3
(x,y)
Figura 5.9: Comparaci on del NSS-GA y el NSGA-II en el problema multiobjetivo DTLZ2
Captulo 5. Propuesta multiobjetivo 77
5.5. Conclusiones sobre los resultados obtenidos
Nuestra propuesta NSS-GA result o ser mejor que el algoritmo evolutivo multiobjetivo
NSGA-II. El NSS-GA mostr o ser un algoritmo que converge m as r apido al frente de
Pareto verdadero en todas las funciones de prueba adoptadas. Aunque la dispersi on de las
soluciones no es del todo satisfactoria, las diferencias no son realmente signicativas en
comparaci on con el NSGA-II.
En esta tesis, nuestro objetivo fundamental fue converger al frente de Pareto verdadero
en un menor n umero de evaluaciones de la funci on objetivo. El algoritmo hbrido que
hemos dise nado, logra en 4,000 evaluaciones ser mejor que el algoritmo multiobjetivo
adoptado (el NSGA-II).
En t erminos generales, nuestra propuesta NSS-GA result o ser un algoritmo consistente
y muy competitivo sobre el conjunto de funciones adoptadas. La denici on de los proble-
mas multiobjetivo se presentan en el ap endice B. Mientras que las gr acas de convergencia
de nuestro algoritmo hbrido hacia el frente de Pareto verdadero, se presentan en el ap endi-
ce C.
78 5.5. Conclusiones sobre los resultados obtenidos
CAP

ITULO 6
CONCLUSIONES Y TRABAJO A FUTURO
6.1. Conclusiones
Con base en los resultados obtenidos en este trabajo, podemos concluir que hemos
dise nado un nuevo algoritmo hbrido denominado Nonlinear Simplex Search Genetic
Algorithm (NSS-GA) para optimizaci on multiobjetivo. Este enfoque supera al algoritmo
evolutivo base adoptado que fue el NSGA-II. Los resultados en todas m etricas utilizadas,
revelan que nuestra propuesta algortmica es mejor cuando se usa un n umero reducido de
evaluaciones de la funci on objetivo.
Nuestro trabajo principal, se centr o en acoplar y hacer eciente el m etodo de Nelder-
Mead para cada problema multiobjetivo abordado. Tomando en cuenta esto, concluimos
que:
1. El exito de convergencia del m etodo de Nelder-Mead, depende directamente del sim-
plex con que se inicie el proceso de optimizaci on.
2. La construcci on de un simplex regular, resulta ineciente y, en la mayora de los
casos, inoperable para converger a un valor mejor, al menos en las funciones de
prueba adoptadas.
3. La estrategia de reducir el espacio de b usqueda y la construcci on del simplex ini-
cial por medio de las secuencias de baja discrepancia, mejora considerablemente el
desempe no del m etodo de Nelder-Mead, en la b usqueda local.
4. El criterio de parada en la b usqueda local (ecuaci on 4.4), mejora el desempe no del
algoritmo. En los experimentos realizados, la b usqueda local resulta poco eciente,
si se dejase iterar por un mayor n umero de veces.
5. En general, el dise no del mecanismo en la fase de explotaci on, agiliza la convergencia
de las soluciones y trae consigo una reducci on del n umero de evaluaciones de la
funci on objetivo, para alcanzar el frente de Pareto verdadero.
79
80 6.2. Trabajo a futuro
6.2. Trabajo a futuro
Existen diversas estrategias e ideas, las cuales debido a las limitantes obvias de tiempo,
no se llevaron a cabo, pero que probablemente ofrezcan mejoras al algoritmo. Algunas de
ellas se comentan a continuaci on:
1. Introducir un mecanismo en el cual se pueda decidir cu ando ya no se deben realizar
nuevas b usquedas locales.
2. Idear un nuevo m etodo para reducir el dominio de la b usqueda, ya que la estrategia
que proponemos puede resultar ineciente cuando se pierde diversidad en la pobla-
ci on. En otras palabras, si la muestra poblacional con la que se reduce el dominio de
creaci on del simplex es similar, la estrategia de b usqueda puede resultar ineciente.
3. Idear un m etodo en el cual se reduzca la dimensi on del simplex y optimizar con
respecto a esta nueva dimensi on, con la nalidad de converger m as r apido a opti-
mos locales. De esta manera se explotar a m as r apidamente el espacio de b usqueda,
trayendo como consecuencia converger m as r apido a un optimo global.
4. Utilizar las estrategias existentes de las modicaciones del m etodo de Nelder-Mead
como las descritas en [4, 58, 75], con la nalidad agilizar la convergencia hacia opti-
mos locales.
5. Adoptar otro algoritmo evolutivo multiobjetivo del estado del arte en la fase de ex-
ploraci on y ver los resultados que se obtienen con esta estrategia de b usqueda local.
6. Abordar el manejo de restricciones tanto para el caso mono-objetivo como para el
multiobjetivo.
AP

ENDICE A
FUNCIONES DE PRUEBA
(MONO-OBJETIVO)
A.1. Modelo de esfera
f
1
(x) =
n

i=1
x
2
i
(A.1)
donde n = 30 y x
i
[100, 100]. Tiene un mnimo mn( f
1
) = f
1
(0, . . . , 0) = 0
A.2. Problema de Schwefel 2.22
f
2
(x) =
n

i=1
[x
i
[ +
n

i=1
[x
i
[ (A.2)
donde n = 30 y x
i
[10, 10]. Tiene un mnimo mn( f
2
) = f
2
(0, . . . , 0) = 0
A.3. Problema de Schwefel 1.2
f
3
(x) =
n

i=1
_
i

j=1
x
j
_
2
(A.3)
donde n = 30 y x
i
[100, 100]. Tiene un mnimo mn( f
3
) = f
3
(0, . . . , 0) = 0
81
82 A.4. Problema de Schwefel 2.21
A.4. Problema de Schwefel 2.21
f
4
(x) = m ax
i
[x
i
[, 1 i n (A.4)
donde n = 30 y x
i
[100, 100]. Tiene un mnimo mn( f
4
) = f
4
(0, . . . , 0) = 0
A.5. Funci on generalizada de Rosenbrok
f
5
(x) =
n1

i=1
[100(x
i+1
x
2
i
)
2
+(x
i
1)
2
] (A.5)
donde n = 30 y x
i
[30, 30]. Tiene un mnimo mn( f
5
) = f
5
(1, . . . , 1) = 0
A.6. Funci on escal on
f
6
(x) =
n

i=1
(x
i
+0.5)
2
(A.6)
donde n = 30 y x
i
[100, 100]. Tiene un mnimo mn( f
6
) = f
6
(0, . . . , 0) = 0
A.7. Funci on Quartic
f
7
(x) =
n

i=1
ix
4
i
+random[0, 1) (A.7)
donde n = 30 y x
i
[1.28, 1.28]. Tiene un mnimo mn( f
7
) = f
7
(0, . . . , 0) = 0
A.8. Problema generalizado de Schwefel 2.26
f
8
(x) =
n

i=1
(x
i
sin(
_
[x
i
[)) (A.8)
donde n = 30 y x
i
[500, 500]. Tiene un mnimo mn( f
8
) =
f
8
(420.9687, . . . , 420.9687) =12569.5
Ap endice A. Funciones de prueba (mono-objetivo) 83
A.9. Funci on generalizada de Rastrigin
f
9
(x) =
n

i=1
[x
2
i
10cos(2x
i
) +10] (A.9)
donde n = 30 y x
i
[5.12, 5.12]. Tiene un mnimo mn( f
9
) = f
9
(0, . . . , 0) = 0
A.10. Funci on de Ackley
f
10
(x) =20exp
_
0.2

1
n
n

i=1
x
2
i
_
exp
_
1
n
n

i=1
cos2x
i
_
+20+e (A.10)
donde n = 30 y x
i
[32, 32]. Tiene un mnimo mn( f
10
) = f
10
(0, . . . , 0) = 0
A.11. Funci on generalizada de Griewank
f
11
(x) =
1
4000
n

i=1
x
2
i

n

i=1
cos
_
x
i

i
_
+1 (A.11)
donde n = 30 y x
i
[600, 600]. Tiene un mnimo mn( f
11
) = f
11
(0, . . . , 0) = 0
A.12. Funciones generalizadas de penalizaci on
A.12.1. Funci on generalizada de penalizaci on 1.1
f
12
(x) =

n
_
10sin
2
(y
i
) +
n1

i=1
(y
i
1)
2
[1+10sin
2
(y
i+1
)] +(y
n
1)
2
_
+
n

i=1
u(x
i
, 10, 100, 4)
(A.12)
para n = 30 y x
i
[50, 50]. Tiene un mnimo mn( f
12
) = f
12
(1, . . . , 1) = 0
A.12.2. Funci on generalizada de penalizaci on 1.2
f
13
(x) = 0.1
_
sin
2
(3x
1
) +
n1

i=1
(x
i
1)
2
[1+sin
2
(3x
i+1
)] +(y
n
1)
2
_
1+sin
2
(2x
n
)

_
+
n

i=1
u(x
i
, 5, 100, 4)
(A.13)
84 A.13. Funci on trinchera de Shekel
para n = 30 y x
i
[50, 50]. Tiene un mnimo mn( f
13
) = f
13
(1, . . . , 1) = 0 donde:
y
i
= 1+
1
4
(x
i
+1)
u(x
i
, a, k, m) =
_
_
_
k(x
i
a)
m
, x
i
> a,
0, a x
i
a,
k(x
i
a)
m
, x
i
<a
A.13. Funci on trinchera de Shekel
f
14
(x) =
_

_
1
500
+
25

j=1
1
j +
2

i=1
(x
i
a
i j
)
6
_

_
1
(A.14)
donde x
i
[65.536, 65.536]. Tiene un mnimo mn( f
14
) = f
14
(32, 32) 1.
A.14. Funci on de Kowalik
f
15
(x) =
11

i=1
_
a
i

x
1
(b
2
i
+b
i
x
2
)
b
2
i
+b
i
x
3
+x
4
_
2
. (A.15)
donde x
i
[5, 5]. Tiene un mnimo mn( f
15
) f
15
(0.1928, 0.1908, 0.1231, 0.1358)
0.0003075.
A.15. Funci on Six-Hump Camel-Back
f
16
(x) = 4x
2
1
2.1x
4
1
+
1
3
x
6
1
+x
1
x
2
4x
2
2
+4x
4
2
(A.16)
donde x
i
[5, 5]. Tiene un mnimo mn( f
15
) = f
16
(0.08983, 0.7126) =
f
16
(0.08983, 0.7126) =1.0316285.
A.16. Funci on de Branin
f
17
(x) =
_
x
2

5.1
4
2
x
2
1
+
5

x
1
6
_
2
+10
_
1
1
8
_
cosx
1
+10 (A.17)
donde x
1
[5, 10] y x
2
[0, 15]. Con un mnimo en x
mn
=
(3.142, 2.275), (3.142, 2.275), (9, 425, 2.425), f (x
mn
) = 0.398
Ap endice A. Funciones de prueba (mono-objetivo) 85
A.17. Funci on de Goldstein-Price
f
18
(x) =
_
1+(x
1
+x
2
+1)
2
(1914x
1
+3x
2
1
14x
2
+6x
1
x
2
+3x
2
2
)

_
30+(2x
1
3x
2
)
2
(1832x
1
+12x
2
1
+48x
2
36x
1
x
2
+27x
2
2
)

(A.18)
donde x
i
[2, 2]. Tiene un mnimo mn( f
18
) = f 18(0, 1) = 3.
A.18. Familia de Hartman
A.18.1. Familia de Hartman 1.1
f
19
(x) =
4

i=1
c
i
exp
_

j=1
a
i j
(x
j
p
i j
)
2
_
(A.19)
donde n = 3 y x
i
[0, 1]. Tiene un mnimo mn( f
19
) = f
19
(0.114, 0.556, 0.852) =3.86.
A.18.2. Familia de Hartman 1.2
f
20
(x) =
n

i=1
c
i
exp
_

j=1
a
i j
(x
j
p
i j
)
2
_
(A.20)
donde n = 6 y x
i
[0, 10]. Tiene un mnimo mn( f
20
) = f
20
(0.201, 0.150, 0.477, 0.275,
0.311, 0.657) =3.32.
A.19. Familia de Shekel
A.19.1. Familia de Shekel 1.1
f
21
(x) =
n

i=1
[(x a
i
)(x a
i
)
T
+c
i
]
1
(A.21)
donde n = 5 y x
i
[0, 10]. Con mnimo enx
mn
a
i
, f
21
(x
mn
)
1
c
i
para 1 i n.
A.19.2. Familia de Shekel 1.2
f
22
(x) =
n

i=1
[(x a
i
)(x a
i
)
T
+c
i
]
1
(A.22)
donde n = 7 y x
i
[0, 10]. Con mnimo enx
mn
a
i
, f
22
(x
mn
)
1
c
i
para 1 i n.
86 A.19. Familia de Shekel
i a
i
b
1
i
1 0.1957 0.25
2 0.1947 0.5
3 0.1735 1
4 0.1600 2
5 0.0844 4
6 0.0627 6
7 0.0456 8
8 0.0342 10
9 0.0323 12
10 0.0235 14
11 0.0246 16
Tabla A.1: Funci on de Kowalk f
15
i a
i j
, j = 1, 2, 3 c
i
p
i j
, j = 1, 2, 3
1 3 10 30 1 0.3689 0.1170 0.2673
2 0.1 10 35 1.2 0.4699 0.4387 0.7470
3 3 10 30 3 0.1091 0.8732 0.5547
4 0.1 10 35 3.2 0.038150 0.5743 0.8828
Tabla A.2: Funci on de Hartman f
19
A.19.3. Familia de Shekel 1.3
f
23
(x) =
n

i=1
[(x a
i
)(x a
i
)
T
+c
i
]
1
(A.23)
donde n = 10 y x
i
[0, 10]. Con mnimo enx
mn
a
i
, f
23
(x
mn
)
1
c
i
para 1 i n.
i a
i j
, j = 1, . . . , 6 c
i
p
i j
, j = 1, . . . , 6
1 10 3 17 3.5 1.7 8 1 0.1312 0.1696 0.5569 0.0124 0.8283 0.5886
2 0.05 10 17 0.1 8 14 1.2 0.2329 0.4135 0.8307 0.3736 0.1004 0.9991
3 3 3.5 1.7 10 17 8 3 0.2348 0.1415 0.3522 0.2883 0.3047 0.6650
4 17 8 0.05 10 0.1 14 3.2 0.4047 0.8828 0.8732 0.5743 0.1091 0.0381
Tabla A.3: Funci on de Hartman f
20
Ap endice A. Funciones de prueba (mono-objetivo) 87
i a
i j
, j = 1, . . . , 4 c
i
1 4 4 4 4 0.1
2 1 1 1 1 0.2
3 8 8 8 8 0.2
4 6 6 6 6 0.4
5 3 7 3 7 0.4
6 2 9 2 9 0.6
7 5 5 3 3 0.3
8 8 1 8 1 0.7
9 6 2 6 2 0.5
10 7 3.6 7 3.6 0.5
Tabla A.4: Funciones de Shekel f
21
, f
22
y f
23
88 A.19. Familia de Shekel
AP

ENDICE B
FUNCIONES DE PRUEBA
(MULTI-OBJETIVO)
B.1. Funci on ZDT1
Este problema multi-objetivo fue propuesto por Zitzler [85] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x)] (B.1)
donde:
f
1
(x) = x
1
f
2
(x) = g(x) h( f
1
(x), g(x))
g(x) = 1+
9
(n1)
n

i=2
x
i
h( f
1
(x), g(x)) = 1

f
1
(x)
g(x)
para n = 30 y x
i
[0, 1]. Tiene un frente de Pareto convexo y conectado.
B.2. Funci on ZDT2
Este problema multi-objetivo fue propuesto por Zitzler [85] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x)] (B.2)
89
90 B.3. Funci on ZDT3
donde:
f
1
(x) = x
1
f
2
(x) = g(x) h( f
1
(x), g(x))
g(x) = 1+
9
(n1)
n

i=2
x
i
h( f
1
(x), g(x)) = 1
_
f
1
(x)
g(x)
_
2
para n = 30 y x
i
[0, 1]. Tiene un frente de Pareto no convexo y conectado.
B.3. Funci on ZDT3
Este problema multi-objetivo fue propuesto por Zitzler [85] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x)] (B.3)
donde:
f
1
(x) = x
1
f
2
(x) = g(x) h( f
1
(x), g(x))
g(x) = 1+
9
(n1)
n

i=2
x
i
h( f
1
(x), g(x)) = 1

f
1
(x)
g(x)

_
f
1
(x)
g(x)
_
sin(10f
1
(x))
para n = 30 y x
i
[0, 1]. Tiene un frente de Pareto discontinuo.
B.4. Funci on ZDT4
Este problema multi-objetivo fue propuesto por Zitzler [85] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x)] (B.4)
donde:
f
1
(x) = x
1
f
2
(x) = g(x) h( f
1
(x), g(x))
g(x) = 1+10(n1) +
n

i=2
(x
2
i
10cos(4x
i
))
h( f
1
(x), g(x)) = 1

f
1
(x)
g(x)
para n = 10, x
1
[0, 1] y x
2
, . . . , x
n
[5, 5] . Tiene un frente de Pareto convexo, conectado
y existen 21
9
frentes de Pareto locales.
Ap endice B. Funciones de prueba (multi-objetivo) 91
B.5. Funci on ZDT6
Este problema multi-objetivo fue propuesto por Zitzler [85] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x)] (B.5)
donde:
f
1
(x) = 1exp(4x
1
) sin
6
(6x
1
)
f
2
(x) = g(x) h( f
1
(x), g(x))
g(x) = 1+9
_
_
_
_
n

i=2
x
i
(n1)
_
_
_
_
0.25
h( f
1
(x), g(x)) = 1
_
f
1
(x)
g(x)
_
2
para n = 10 y x
i
[0, 1]. Tiene un frente de Pareto convexo y continuo.
B.6. Funci on DTLZ1
Este problema multi-objetivo fue propuesto por Deb [17] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x), f
2
(x)] (B.6)
donde:
f
1
(x) =
1
2
x
1
x
2
[1+g(x)]
f
2
(x) =
1
2
x
1
(1x
2
)[1+g(x)]
f
3
(x) =
1
2
(1x
1
)[1+g(x)]
g(x) = 100
_
n+
n

i=3
(x
i
0.5)
2
cos[20(x
i
0.5)]
_
para n =12 y x
i
[0, 1]. Tiene un frente de Pareto lineal y contiene 11
n
1 frentes de Pareto
locales.
92 B.7. Funci on DTLZ2
B.7. Funci on DTLZ2
Este problema multi-objetivo fue propuesto por Deb [17] y consiste en minimizar:

f (x) = [ f
1
(x), f
2
(x), f
2
(x)] (B.7)
donde:
f
1
(x) = cos
_

2
x
1
_
cos
_

2
x
2
_
[1+g(x)]
f
2
(x) = cos
_

2
x
1
_
sin
_

2
x
2
_
[1+g(x)]
f
3
(x) = sin
_

2
x
1
_
[1+g(x)]
g(x) =
n

i=3
(x
i
0.5)
2
para n = 12 y x
i
[0, 1]. Tiene un frente de Pareto convexo y conectado.
AP

ENDICE C
CONVERGENCIA EN LOS PROBLEMAS
MULTI-OBJETIVO
En este ap endice presentamos las gr acas de nuestro algoritmo NSS-GA, con la
nalidad de validar la convergencia al frente de Pareto verdadero en un determinado
n umero de evaluaciones de la funci on objetivo.
Para las funciones ZDT1, ZDT2, ZDT3, ZDT6 y DTLZ2 con tan solo 7,000 evalua-
ciones de la funci on objetivo, nuestra propuesta converge al frente de Pareto verdadero.
Mientras que se necesitaron 16,000 para converger en la funci on ZDT4 y 70,000 para la
DTLZ1.
93
94
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT1
NSSGA
Figura C.1: Convergencia al frente de Pareto verdadero en la fun-
ci on ZDT1 con 7,000 evaluaciones de la funci on objetivo
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT2
NSSGA
Figura C.2: Convergencia al frente de Pareto verdadero en la fun-
ci on ZDT2 con 7,000 evaluaciones de la funci on objetivo
Ap endice C. Convergencia en los problemas multi-objetivo 95
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
1.2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT3
NSSGA
Figura C.3: Convergencia al frente de Pareto verdadero en la fun-
ci on ZDT3 con 7,000 evaluaciones de la funci on objetivo
0
0.2
0.4
0.6
0.8
1
1.2
1.4
0 0.2 0.4 0.6 0.8 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT4
NSSGA
Figura C.4: Convergencia al frente de Pareto verdadero en la fun-
ci on ZDT4 con 16,000 evaluaciones de la funci on objetivo
96
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
f
2
(
x
)
f
1
(x)
Frente de Pareto ZDT6
NSSGA
Figura C.5: Convergencia al frente de Pareto verdadero en la fun-
ci on ZDT6 con 7,000 evaluaciones de la funci on objetivo
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
0
0.1
0.2
0.3
0.4
0.5
f
3
(x,y)
Frente de Pareto DTLZ1
NSSGA
f
1
(x)
f
2
(x)
f
3
(x,y)
Figura C.6: Convergencia al frente de Pareto verdadero en la fun-
ci on DTLZ1 con 70,000 evaluaciones de la funci on objetivo
Ap endice C. Convergencia en los problemas multi-objetivo 97
0
0.2
0.4
0.6
0.8
1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0
0.2
0.4
0.6
0.8
1
1.2
f
3
(x,y)
Frente de Pareto DTLZ2
NSSGA
f
1
(x)
f
2
(x)
f
3
(x,y)
Figura C.7: Convergencia al frente de Pareto verdadero en la fun-
ci on DTLZ2 con 7,000 evaluaciones de la funci on objetivo
98
BIBLIOGRAF

IA
[1] Thomas B ack. Evolutionary Algorithms in Theory and Practice: Evolution Strategies,
Evolutionary Programming, Genetic Algorithms. Oxford University Press, Oxford,
UK, 1996.
[2] James Mark Baldwin. A New Factor in Evolution. The American Naturalist,
30(354):441451, 1896.
[3] Vincent Barichard and Jin-Kao Hao. Genetic Tabu Search for the Multi-objective
Knapsack Problem. Journal of Tsinghua Siece and Technology, 8(1):813, 2003.
[4] Russell R. Barton and Jr. John S. Ivey. Nelder-mead simplex modications for simu-
lation optimization. Manage. Sci., 42(7):954973, 1996.
[5] George E. P. Box. Evolutionary Operation: A Method for Increasing Industrial Pro-
ductivity. Journal of Applied Statistics, 6(2):81101, June 1957.
[6] Walter D. Cannon. The Wisdom of the body. Norton and Company, New York, 1932.
[7] A. Carlisle and G. Dozier. An off-the-self PSO. In Proceedings of Workshop on
Particle Swarm Optimization, Indianapolis, 2001.
[8] Abraham Charnes and William W. Cooper. Management models and industrial ap-
plications of linear programming. John Wiley, New York, 1961.
[9] Rachid Chelouah and Patrick Siarry. Genetic and Nelder-Mead algorithms hybridi-
zed for a more accurate global optimization of continuous multiminima functions.
European Journal of Operational Research, 148(2):335348, July 2003.
[10] Carlos A. Coello Coello, Gary B. Lamont, and David A. Van Veldhuizen. Evolutio-
nary Algorithms for Solving Multi-Objective Problems. Springer, 2nd edition, 2007.
[11] J. L. Cohon and D. H. Marks. review and Evaluation of Multiobjective Programming
Techniques. Water Resources Research, 11(2):208220, 1975.
[12] Jared L. Cohon. Multiobjective Programming and Planning. Academic Press, 1978.
99
100 BIBLIOGRAF

IA
[13] Lawrence Davis. Adapting operator probabilities in genetic algorithms. In Procee-
dings of the Third International Conference on Genetic Algorithms, pages 6169, San
Francisco, CA, USA, 1989. Morgan Kaufmann Publishers Inc.
[14] Kalyanmoy Deb. Optimization for Engineering Design: Algorithms and Examples.
Prentice-Hall of India Pvt. Ltd., 2002.
[15] Kalyanmoy Deb, Samir Agrawal, Amrit Pratap, and T. Meyarivan. A fast and elitist
multiobjective genetic algorithm: NSGA-II. IEEE Transactions Evolutionary Compu-
tation, 6(2):182197, 2002.
[16] Kalyanmoy Deb and David E. Goldberg. An Investigation of Niche and Species
Formation in Genetic Function Optimization. pages 4250, 1989.
[17] Kalyanmoy Deb, Lothar Thiele, Marco Laumanns, and Eckart Zitzler. Scalable Test
Problems for Evolutionary Multi-Objective Optimization. Technical Report 112, Zu-
rich, Switzerland, 2001.
[18] Marco Dorigo and Gianni Di Caro. The ant colony optimization meta-heuristic. In
New ideas in optimization, pages 1132. McGraw-Hill Ltd., UK, Maidenhead, UK,
England, 1999.
[19] Lucien Duckstein. Multiobjective Optimization in Structural Design: The Model
Choice Problem. In Atrek, E., Gallagher, R. H., Ragsdell, K. M., and Zienkiewicz,
O. C., editors. New Directions in Optimum Structural Design, pages 459481. John
Wiley & Sons, Inc., 1984.
[20] Francis Ysidro Edgeworth. Mathematical Psychics: An Essay on the Application of
Mathematics to the Moral Sciences. C. Kegan Paul and Co., London, 1881.
[21] Agoston E. Eiben and J. E. Smith. Introduction to Evolutionary Computing. Sprin-
gerVerlag, 2003.
[22] L. J. Fogel. Intelligence through simulated evolution: forty years of evolutionary
programming. John Wiley & Sons, Inc., New York, NY, USA, 1999.
[23] L. J. Fogel, A. J. Owens, and M. J. Walsh. Articial Intelligence through Simulated
Evolution. John Wiley, New York, USA, 1966.
[24] Carlos M. Fonseca and Peter J. Fleming. Genetic Algorithms for Multiobjective Op-
timization: Formulation, Discussion and Generalization. In Stephanie Forrest, edi-
tor, Proceedings of the Fifth International Conference on Genetic Algorithms, pages
416423, San Mateo, California, 1993. University of Illinois at Urbana-Champaign,
Morgan Kauffman Publishers.
[25] Fred Glover and Manuel Laguna. Tabu Search. Kluwer Academic Publishers,
Norwell, MA, USA, 1997.
BIBLIOGRAF

IA 101
[26] David E. Goldberg. Genetic Algorithms in Search, Optimization and Machine Lear-
ning. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1989.
[27] J. H. Halton. On the efciency of certain quasi-random sequences of points in evalua-
ting multi-dimensional integrals. Numerische Mathematik, 2:8490, december 1960.
[28] J. M. Hammersley. Monte-Carlo methods for solving multivariable problems. Annals
of the New York Academy of Science, 86:844874, 1960.
[29] Geoffrey E. Hinton and Steven J. Nowlan. How learning can guide evolution. In
Adaptive individuals in evolving populations: models and algorithms, pages 447454.
Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1996.
[30] John H. Holland. Adaptation in Natural and Articial Systems. University of Michi-
gan Press, Ann Arbor, Michigan, 1975.
[31] Jeffrey Horn, Nicholas Nafpliotis, and David E. Goldberg. A Niched Pareto Ge-
netic Algorithm for Multiobjective Optimization. In Proceedings of the First IEEE
Conference on Evolutionary Computation, IEEE World Congress on Computational
Intelligence, volume 1, pages 8287, Piscataway, New Jersey, 1994. IEEE Service
Center.
[32] Xiaolin Hu, Zhangcan Huang, and Zhongfan Wang. Hybridization of the Multi-
Objective Evolutionary Algorithms and the Gradient-based Algorithms. In Procee-
dings of the 2003 Congress on Evolutionary Computation (CEC2003), volume 2,
pages 870877, Canberra, Australia, December 2003. IEEE Press.
[33] Hisao Ishibuchi and Tadahiko Murata. Multi-Objective Genetic Local Search Algo-
rithm and Its Application to Flowshop Scheduling. IEEE Transactions on Systems,
Man and Cybernetics, 28(3):392403, August 1998.
[34] J. Kennedy and R. Eberhart. Particle swarm optimization. In IEEE International
Conference on Neural Network, volume 4, pages 19421948, 1995.
[35] S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi. Optimization by Simulated Annealing.
Science, 220(4598):671680, 1983.
[36] Joshua D. Knowles. ParEGO: a hybrid algorithm with on-line landscape approxima-
tion for expensive multiobjective optimization problems. IEEE Transactions Evolu-
tionary Computation, 10(1):5066, 2006.
[37] Joshua D. Knowles and David W. Corne. The Pareto Archived Evolution Strategy: A
New Baseline Algorithm for Multiobjective Optimisation. In 1999 Congress on Evo-
lutionary Computation, pages 98105, Washington, D.C., July 1999. IEEE Service
Center.
102 BIBLIOGRAF

IA
[38] Joshua D. Knowles and David W. Corne. Approximating the Nondominated Front
Using the Pareto Archived Evolution Strategy. Evolutionary Computation, 8(2):149
172, 2000.
[39] Joshua D. Knowles and David W. Corne. M-PAES: A Memetic Algorithm for Mul-
tiobjective Optimization. In 2000 Congress on Evolutionary Computation, volume 1,
pages 325332, Piscataway, New Jersey, July 2000. IEEE Service Center.
[40] Praveen Koduru, Sanjoy Das, and Stephen Welch. A Particle Swarm Optimization-
Nelder Mead Hybrid Algorithm for Balanced Exploration and Exploitation in Mul-
tidimensional Search Space. In Hamid R. Arabnia, editor, IC-AI, pages 457464.
CSREA Press, 2006.
[41] Praveen Koduru, Sanjoy Das, and Stephen Welch. Multi-objective hybrid PSO using
-fuzzy dominance. In GECCO 07: Proceedings of the 9th annual conference on
Genetic and Evolutionary Computation, pages 853860, New York, NY, USA, 2007.
ACM Press.
[42] Praveen Koduru, Sanjoy Das, Stephen Welch, and Judith L. Roe. Fuzzy Dominan-
ce Based Multi-objective GA-Simplex Hybrid Algorithms Applied to Gene Network
Models. In Kalyanmoy Deb et al., editor, Genetic and Evolutionary Computation
GECCO 2004. Proceedings of the Genetic and Evolutionary Computation Conferen-
ce. Part I, pages 356367, Seattle, Washington, USA, June 2004. Springer-Verlag,
Lecture Notes in Computer Science Vol. 3102.
[43] J. C. Lagarias, J. A. Reeds, M. H. Wright, and P. E. Wright. Convergence properties of
the NelderMead simplex method in low dimensions. SIAM Journal of Optimization,
9:112147, 1998.
[44] Marco A. Luersen. and Rodolphe Le Riche. Globalized Nelder-Mead method for
engineering optimization. Computers & Structures, 82:22512260, 2004.
[45] Changtong Luo and Bo Yu. Low Dimensional Simplex EvolutionA Hybrid Heu-
ristic for Global Optimization. In Eighth ACIS International Conference on Software
Engineering, Articial Intelligence, Networking, and Parallel/Distributed Computing,
volume 2, pages 470474, 2007.
[46] J. B. MacQueen. Some Methods for Classication and Analysis of Multivariate Ob-
servations. In Proceedings of the fth Berkeley Symposium on Mathematical Statistics
and Probability, volume 1, pages 281297. University of California Press, 1967.
[47] R. Marti and J. Marcos Moreno-Vega. M etodos multiarranque. Inteligencia Articial,
Revista Iberoamericana de IA, 7(19):4960, 2003.
[48] K. I. M. McKinnon. Convergence of the NelderMead Simplex Method to a Nonsta-
tionary Point. SIAM Journal on Optimization, 9(1):148158, 1998.
BIBLIOGRAF

IA 103
[49] Kaisa M. Miettinen. Nonlinear Multiobjective Optimization. Kluwer Academic Pu-
blishers, Boston, Massachusetts, EE. UU., 1998.
[50] Joel

N. Morse. Reducing the size of the nondominated set: Pruning by clustering.


Computers & Operations Research, 7(1-2):5566, 1980.
[51] Pablo Moscato. On Evolution, Search, Optimization, Genetic Algorithms and Martial
Arts: Towards Memetic Algorithms. Technical Report Caltech Concurrent Compu-
tation Program, Report. 826, California Institute of Technology, Pasadena, California,
USA, 1989.
[52] Pablo Moscato. Memetic algorithms: a short introduction. In New ideas in optimiza-
tion, pages 219234. McGraw-Hill Ltd., UK, Maidenhead, UK, England, 1999.
[53] J. A. Nelder and R. Mead. A Simplex Method for Function Minimization. The Com-
puter Journal, 7:308313, 1965.
[54] Andrzej Osyczka. Multicriterion optimization in engineering with FORTRAN pro-
grams. Ellis Horwood series in engineering science. 1984.
[55] Vilfredo Pareto. Cours d Economie Politique, volume I and II. F. Rouge, Lausanne,
1896.
[56] Kenneth V. Price. An introduction to differential evolution. In New ideas in optimi-
zation, pages 79108. McGraw-Hill Ltd., UK, Maidenhead, UK, England, 1999.
[57] Kenneth V. Price, Rainer M. Storn, and Jouni A. Lampinen. Differential Evolution: A
Practical Approach to Global Optimization. Springer, 2005.
[58] M. K. Rahman. An intelligent moving object optimization algorithm for design pro-
blems with mixed variables, mixed constraints and multiple objectives. Structural
and Multidisciplinary Optimization, 32(1):4058, July 2006.
[59] Singiresu S. Rao. Engineering Optimization. John Wiley & Sons, Inc., 3rd edition,
1996.
[60] Real Academia Espa nola. Diccionario de la Lengua Espa nola. Espasa Calpe Mexi-
cana, S.A., 22nd edition, 2001.
[61] Ingo Rechenberg. Cybernetic Solution Path of an Experimental Problem. Royal
Aircraft Establishment, August 1965.
[62] R. S. Rosenberg. Simulation of genetic populations with biochemical properties. PhD
thesis, University of Michigan, Ann Harbor, Michigan, 1967.
[63] G unter Rudolph. Convergence analysis of canonical genetic algorithms. IEEE Tran-
sactions on Neural Networks, 5(1):96101, January 1994.
104 BIBLIOGRAF

IA
[64] J. David Schaffer. Multiple Objective Optimization with Vector Evaluated Genetic
Algorithms. PhD thesis, Vanderbilt University, 1984.
[65] J. David Schaffer and Amy Morishima. An adaptive crossover distribution mechanism
for genetic algorithms. In Proceedings of the Second International Conference on
Genetic Algorithms and their application, pages 3640, Mahwah, NJ, USA, 1987.
Lawrence Erlbaum Associates, Inc.
[66] Jason R. Schott. Fault Tolerant Design Using Single and Multicriteria Genetic Al-
gorithm Optimization. Masters thesis, Department of Aeronautics and Astronautics,
Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1995.
[67] Hans-Paul Schwefel. Kybernetische Evolution als Strategie der Experimentellen Fors-
chung in der Stromungstechnik. PhD thesis, Technical University of Berlin, 1965.
[68] Hans-Paul Schwefel. Numerical Optimization of Computer Models. John Wiley &
Sons, Inc., New York, NY, USA, 1981.
[69] W. Spendley, G. R. Hext, and F. R. Himsworth. Sequential Application of Simplex
Designs in Optimization and Evolutionary Operation. Technometrics, 4(4):441461,
November 1962.
[70] N. Srinivas and Kalyanmoy Deb. Multiobjective Optimization Using Nondominated
Sorting in Genetic Algorithms. Evolutionary Computation, 2(3):221248, 1994.
[71] Rainer M. Storn and Kenneth V. Price. Differential Evolution - a simple and efcient
adaptive scheme for global optimization over continuous spaces. Technical Report
TR-95-012, Berkeley, CA, 1995.
[72] Rainer M. Storn and Kenneth V. Price. Differential Evolution Homepage,
http://www.icsi.berkeley.edu/storn/code.html, 2007.
[73] E.-G. Talbi. A Taxonomy of Hybrid Metaheuristics. Journal of Heuristics, 8(5):541
564, 2002.
[74] V. Torczon. Multi-directional Search: A Direct Search Algorithm for Parallel Machi-
nes. PhD thesis, Rice University, Houston, Texas, USA, 1989.
[75] Mohamed B. Trabia and Xiao Bin Lu. A Fuzzy Adaptive Simplex Search Optimiza-
tion Algorithm. Journal of Mechanical Design, 123:216225, 2001.
[76] Alan Mathison Turing. Computing Machinery and Intelligence. Mind, 59(236):433
460, 1950.
[77] J. G. van der Corput. Verteilungsfunktionen. Akademie van Wetenschappen, 38:813
821, 1935.
BIBLIOGRAF

IA 105
[78] David A. Van Veldhuizen and Gary B. Lamont. Multiobjective Evolutionary Algo-
rithm Research: A History and Analysis. Technical Report TR-98-03, Department
of Electrical and Computer Engineering, Graduate School of Engineering, Air Force
Institute of Technology, Wright-Patterson AFB, Ohio, 1998.
[79] David A. Van Veldhuizen and Gary B. Lamont. On Measuring Multiobjective Evo-
lutionary Algorithm Performance. In 2000 Congress on Evolutionary Computation,
pages 204211, Piscataway, New Jersey, July 2000. IEEE Service Center.
[80] Georges Vorono. Nouvelles applications des param` etres continus ` a la th eorie des
formes quadratiques. Sur quelques propri et es des formes quadratiques positives par-
faites. Journal f ur die Reine und Angewandte Mathematik, 133:97178, 1907.
[81] Georges Vorono. Nouvelles applications des param` etres continus ` a la th eorie des
formes quadratiques. Deuxi` eme m emoire: Recherches sur les parallello`res primitifs.
Journal f ur die Reine und Angewandte Mathematik, 134:198287, 1908.
[82] Fang Wang and Yuhui Qiu. Multimodal function optimizing by a new hybrid non-
linear simplex search and particle swarm algorithm. In Jo ao Gama, Rui Camacho,
Pavel Brazdil, Alpio Jorge, and Lus Torgo, editors, European Conference on Ma-
chine Learning, volume 3720 of Lecture Notes in Computer Science, pages 759766.
Springer, 2005.
[83] Xin Yao, Yong Liu, Ko-Hsin Liang, and Guangming Lin. Fast evolutionary algo-
rithms. pages 4594, 2003.
[84] L. A. Zadeh. Optimality and non-scalar-valued performance criteria. IEEE Transac-
tions on Automatic Control, 8(1):5960, 1963.
[85] Eckart Zitzler, Kalyanmoy Deb, and Lothar Thiele. Comparison of Multiobjective
Evolutionary Algorithms: Empirical Results. Evolutionary Computing, 8(2):173195,
2000.
[86] Eckart Zitzler, Kalyanmoy Deb, and Lothar Thiele. Comparison of Multiobjective
Evolutionary Algorithms: Empirical Results. Evolutionary Computation, 8(2):173
195, Summer 2000.
[87] Eckart Zitzler, Marco Laumanns, and Lothar Thiele. SPEA2: Improving the Strength
Pareto Evolutionary Algorithm. Technical Report 103, Computer Engineering and
Networks Laboratory (TIK), Swiss Federal Institute of Technology (ETH) Zurich,
Gloriastrasse 35, CH-8092 Zurich, Switzerland, May 2001.
[88] Eckart Zitzler and Lothar Thiele. Multiobjective Evolutionary Algorithms: A Com-
parative Case Study and the Strength Pareto Approach. IEEE Transactions on Evolu-
tionary Computation, 3(4):257271, November 1999.

You might also like