Algoritmos Evolutivos en Optimización Multiobjetivos (MOEA) Dr. Yván Jesús Túpac Valdivia Universidad Católica San Pablo Universidad Nacional de San Agustín 23 de Noviembre de 2011 Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 1 / 37 Optimización Evolutiva Multiobjetivos Motivación Motivación Muchos problemas de la vida real pueden tratarse como optimización de un único objetivo, pero La mayoría de problemas tienen varios objetivos para satisfacer y aún, algunos pueden ser conflitivos. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 2 / 37 Optimización Evolutiva Multiobjetivos Motivación Motivación Muchos problemas de la vida real pueden tratarse como optimización de un único objetivo, pero La mayoría de problemas tienen varios objetivos para satisfacer y aún, algunos pueden ser conflitivos. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 2 / 37 Optimización Evolutiva Multiobjetivos Motivación Motivación Muchos problemas de la vida real pueden tratarse como optimización de un único objetivo, pero La mayoría de problemas tienen varios objetivos para satisfacer y aún, algunos pueden ser conflitivos. Estos problemas suelen tratarse como problemas de único objetivo, viendo los demás objetivos como restricciones Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 2 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Optimización Evolutiva Multiobjetivos Conocido también como optimización multicriterio, se define en palabras como el problema de: Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 3 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Optimización Evolutiva Multiobjetivos Conocido también como optimización multicriterio, se define en palabras como el problema de: Encontrar un vector de variables de decisión que satisfagan restricciones y optimicen una función vectorial cuyos elementos representan funciones objetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 3 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Optimización Evolutiva Multiobjetivos Conocido también como optimización multicriterio, se define en palabras como el problema de: Encontrar un vector de variables de decisión que satisfagan restricciones y optimicen una función vectorial cuyos elementos representan funciones objetivo. Ya no se busca una solución óptima, sino un conjunto de soluciones posibles de calidad equivalente. El espacio de búsqueda se convierte en parcialmente ordenado, donde existe un conjunto de soluciones trade-offs óptimas entre los objetivos conflictivos, que puedan ser aceptadas por el tomador de decisiones Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 3 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) MOP – Definición Formal Un MOP consiste en encontrar el vector [x∗ = {x1 , . . . , xn ]T que cumpla: Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 4 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) MOP – Definición Formal Un MOP consiste en encontrar el vector [x∗ = {x1 , . . . , xn ]T que cumpla: m restricciones de desigualdad. gi (x) ≥ 0, i = 1, . . . , m (1) p restricciones de igualdad. hi (x) = 0, i = 1, . . . , p Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 (2) 23 de Noviembre de 2011 4 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) MOP – Definición Formal Un MOP consiste en encontrar el vector [x∗ = {x1 , . . . , xn ]T que cumpla: m restricciones de desigualdad. gi (x) ≥ 0, i = 1, . . . , m (1) p restricciones de igualdad. hi (x) = 0, i = 1, . . . , p (2) y optimice la función vectorial F(x) = [f1 (x), f2 (x), . . . , fk (x)]T (3) de k funciones objetivo fi (x), ∀i = 1, . . . , k, así: F = fi : X 7→ Yi : 0 < i ≤ k, Yi ⊆ R Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 (4) 4 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Noción de Óptimo en MOP Habiendo más de una función objetivo F(x) = [f1 (x), . . . , fk (x)]T a optimizar, cambia la noción de óptimo, pues es muy raro que un punto x optimize simultáneamente todos los objetivos F(x) de un problema multiobjetivo. En vez de esto, se intenta encontrar un conjunto de soluciones que sean buenos compromisos (trade-offs) entre los diversos objetivos fi más que una solución óptima. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 5 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Noción de Óptimo en MOP Habiendo más de una función objetivo F(x) = [f1 (x), . . . , fk (x)]T a optimizar, cambia la noción de óptimo, pues es muy raro que un punto x optimize simultáneamente todos los objetivos F(x) de un problema multiobjetivo. En vez de esto, se intenta encontrar un conjunto de soluciones que sean buenos compromisos (trade-offs) entre los diversos objetivos fi más que una solución óptima. La noción más adoptada es la propuesta por Francis Ysidro Edgeworth (en 1881). Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 5 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Noción de Óptimo en MOP Esta noción fue generalizada por [Pareto, 1896] y es conocida como Pareto-óptimo (Pareto Optimality) Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 6 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Noción de Óptimo en MOP Esta noción fue generalizada por [Pareto, 1896] y es conocida como Pareto-óptimo (Pareto Optimality) Un punto x∗ es Pareto-óptimo si no existe ningún otro punto x ∈ X que sea mejor en un objetivo sin ser peor en al menos un otro. Esta noción de Pareto-óptimo, se basa en la definición de dominancia. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 6 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Dominancia Sea F = {f1 (x), . . . , fk (x)} un conjunto de k funciones objetivo. Sean las soluciones x1 , x2 ∈ X. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 7 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Dominancia Sea F = {f1 (x), . . . , fk (x)} un conjunto de k funciones objetivo. Sean las soluciones x1 , x2 ∈ X. Se dice que x1 domina a x2 , (denotado por x1 ≺ x2 ), si existe una función objetivo en la que x1 es mejor que x2 sin ser peor en los demás objetivos, como se expresa en la ecuación 5 (para una minimización). Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 7 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Dominancia Sea F = {f1 (x), . . . , fk (x)} un conjunto de k funciones objetivo. Sean las soluciones x1 , x2 ∈ X. Se dice que x1 domina a x2 , (denotado por x1 ≺ x2 ), si existe una función objetivo en la que x1 es mejor que x2 sin ser peor en los demás objetivos, como se expresa en la ecuación 5 (para una minimización). ( x1 ≺ x2 ⇔ Y. Túpac (UCSP, UNSA) ∀i = 1, . . . , k ⇒ ωi fi (x1 ) ≤ ωi fi (x2 ) ∃j = 1, . . . , k : ωj fj (x1 ) < ωj fj (x2 ) XII CIIS Tacna 2011 23 de Noviembre de 2011 (5) 7 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Dominancia Sea F = {f1 (x), . . . , fk (x)} un conjunto de k funciones objetivo. Sean las soluciones x1 , x2 ∈ X. Se dice que x1 domina a x2 , (denotado por x1 ≺ x2 ), si existe una función objetivo en la que x1 es mejor que x2 sin ser peor en los demás objetivos, como se expresa en la ecuación 5 (para una minimización). ( x1 ≺ x2 ⇔ ∀i = 1, . . . , k ⇒ ωi fi (x1 ) ≤ ωi fi (x2 ) ∃j = 1, . . . , k : ωj fj (x1 ) < ωj fj (x2 ) (5) donde ωi = 1 si es problema de minimización, ωi = −1, si es problema de maximización Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 7 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Pareto Optimality Entonces, una solución x∗ ∈ X es Pareto-óptima, es decir que pertenezca a un conjunto óptimo X∗ si no es dominada por ningún elemento x ∈ X. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 8 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Pareto Optimality Entonces, una solución x∗ ∈ X es Pareto-óptima, es decir que pertenezca a un conjunto óptimo X∗ si no es dominada por ningún elemento x ∈ X. El conjunto X∗ se denomina Conjunto Pareto o Frontera de Pareto, definido en 6 x∗ ∈ X∗ ⇔6 ∃x ∈ X : x ≺ x∗ (6) . Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 8 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Pareto Optimality Entonces, una solución x∗ ∈ X es Pareto-óptima, es decir que pertenezca a un conjunto óptimo X∗ si no es dominada por ningún elemento x ∈ X. El conjunto X∗ se denomina Conjunto Pareto o Frontera de Pareto, definido en 6 x∗ ∈ X∗ ⇔6 ∃x ∈ X : x ≺ x∗ (6) . Es decir que (para minimización) no existe valor x ∈ X que disminuya un objetivo sin aumentar en, al menos un otro. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 8 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Pareto Optimality Entonces, una solución x∗ ∈ X es Pareto-óptima, es decir que pertenezca a un conjunto óptimo X∗ si no es dominada por ningún elemento x ∈ X. El conjunto X∗ se denomina Conjunto Pareto o Frontera de Pareto, definido en 6 x∗ ∈ X∗ ⇔6 ∃x ∈ X : x ≺ x∗ (6) . Es decir que (para minimización) no existe valor x ∈ X que disminuya un objetivo sin aumentar en, al menos un otro. Si se grafican las funciones pareto-óptimas, se obtiene el gráfico Pareto front Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 8 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Pareto Front So lu f2 (x) cio ne sp ar et o– óp tim as Ni dominantes ni dominadas Soluciones dominadas por x (peores soluciones) Y. Túpac (UCSP, UNSA) Soluciones que dominan a x (buenas soluciones) Ni dominantes ni dominadas XII CIIS Tacna 2011 f1 (x) 23 de Noviembre de 2011 9 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Ejemplo de un problema MOP Un productor desea minimizar costos de producción f1 y distribución f2 obteniendo las siguientes soluciones: Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 10 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Ejemplo de un problema MOP Un productor desea minimizar costos de producción f1 y distribución f2 obteniendo las siguientes soluciones: A : f1 = 2, f2 = 10 f2 B : f1 = 4, f2 = 6 C : f1 = 8, f2 = 4 A(2, 10) D : f1 = 9, f2 = 5 10 E : f1 = 7, f2 = 8 E(7, 8) B(4, 6) D(9, 5) C(8, 4) 5 0 Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 5 10 23 de Noviembre de 2011 f1 10 / 37 Optimización Evolutiva Multiobjetivos El Problema de Optimización Multiobjetivo (MOP) Ejemplo de un problema MOP Un productor desea minimizar costos de producción f1 y distribución f2 obteniendo las siguientes soluciones: A : f1 = 2, f2 = 10 f2 B : f1 = 4, f2 = 6 C : f1 = 8, f2 = 4 A(2, 10) D : f1 = 9, f2 = 5 10 E : f1 = 7, f2 = 8 E(7, 8) B(4, 6) D(9, 5) C(8, 4) 5 0 5 10 f1 Se observa que A, B, C son soluciones no dominadas, D, E son dominadas por C , B: C ≺ D, B ≺ E. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 10 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA Motivación Algoritmos Evolutivos Multiobjetivo – MOEA ¿Por qué usar Algoritmos Evolutivos? Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 11 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA Motivación Algoritmos Evolutivos Multiobjetivo – MOEA ¿Por qué usar Algoritmos Evolutivos? Por su característica de búsqueda paralela (poblacional) que abre la opción de encontrar varias soluciones del conjunto Pareto óptimo en una ejecución. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 11 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA Motivación Algoritmos Evolutivos Multiobjetivo – MOEA ¿Por qué usar Algoritmos Evolutivos? Por su característica de búsqueda paralela (poblacional) que abre la opción de encontrar varias soluciones del conjunto Pareto óptimo en una ejecución. Pueden tratar problemas de forma o discontinuidad en la Pareto-Front que no son posibles al emplear técnicas de programación matemática clásicas [Coello, 1999] Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 11 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA Motivación Algoritmos Evolutivos Multiobjetivo – MOEA ¿Por qué usar Algoritmos Evolutivos? Por su característica de búsqueda paralela (poblacional) que abre la opción de encontrar varias soluciones del conjunto Pareto óptimo en una ejecución. Pueden tratar problemas de forma o discontinuidad en la Pareto-Front que no son posibles al emplear técnicas de programación matemática clásicas [Coello, 1999] Objetivo de un Algoritmo Evolutivo en problemas de MO: Minimizar la distancia entre las soluciones generadas xi ∈ Xt y el conjunto Pareto-óptimo X∗ . Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 11 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA Motivación Algoritmos Evolutivos Multiobjetivo – MOEA ¿Por qué usar Algoritmos Evolutivos? Por su característica de búsqueda paralela (poblacional) que abre la opción de encontrar varias soluciones del conjunto Pareto óptimo en una ejecución. Pueden tratar problemas de forma o discontinuidad en la Pareto-Front que no son posibles al emplear técnicas de programación matemática clásicas [Coello, 1999] Objetivo de un Algoritmo Evolutivo en problemas de MO: Minimizar la distancia entre las soluciones generadas xi ∈ Xt y el conjunto Pareto-óptimo X∗ . La selección y operadores deben ser críticos en detectar y capturar cualquier solución no dominada por los individuos de la población que sea encontrada. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 11 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Sin uso del Criterio de Pareto No emplean el conjunto Pareto X∗ , por lo que no garantizan la obtención de la frontera de Pareto en su totalidad. Son eficientes y fáciles de implementar, aunque limitadas para algunos pocos objetivos Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 12 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Sin uso del Criterio de Pareto No emplean el conjunto Pareto X∗ , por lo que no garantizan la obtención de la frontera de Pareto en su totalidad. Son eficientes y fáciles de implementar, aunque limitadas para algunos pocos objetivos Algunos modelos sin uso del criterio de Pareto: - Agregación de funciones. - VEGA (Vector Evaluated Genetic Algorithm) - Orden Lexicográfico - Método −constraint. - Vector Objetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 12 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Agregación de Funciones Consiste en combinar todas las funciones objetivo fi (x) en una función única F (f1 (x), . . . , fk (x)). Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 13 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Agregación de Funciones Consiste en combinar todas las funciones objetivo fi (x) en una función única F (f1 (x), . . . , fk (x)). Agregación lineal de objetivos La función más utilizada es la combinación lineal de los objetivos de la ecuación 7 F= k X ωi fi (x) (7) i=1 donde ωi son las importancias de cada función objetivo, siendo comun que sean normalizadas, tal que: k X ωi = 1 i=1 Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 13 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Agregación de Funciones Ventajas: Fácil de implementar Eficientes Desventajas: No funcionan si la frontera de Pareto es cóncava Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 14 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación VEGA – Vector Evaluated Genetic Algorithm Propuesta por [Schaffer, 1984], usa sub-poblaciones que optimizan cada objetivo por separado Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 15 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación VEGA – Vector Evaluated Genetic Algorithm Propuesta por [Schaffer, 1984], usa sub-poblaciones que optimizan cada objetivo por separado El concepto Pareto-óptimo es incorporado indirectamente en el mecanismo de selección del AG Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 15 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación VEGA – Vector Evaluated Genetic Algorithm Propuesta por [Schaffer, 1984], usa sub-poblaciones que optimizan cada objetivo por separado El concepto Pareto-óptimo es incorporado indirectamente en el mecanismo de selección del AG Ventajas y desventajas: Eficiente y fácil de implementar No hay un mecanismo explícito para mantener la diversidad. No necesariamente producirá vectores no dominados Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 15 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación VEGA – Vector Evaluated Genetic Algorithm Cromosoma xi f1 f2 fj (xi) ... Generación Xt+1 Generación Xt x1 x1 1 seleccionar k subgrupos usando cada objetivo 2 1 xm Y. Túpac (UCSP, UNSA) fk barajar operaciones genéticas 2 3 k xm XII CIIS Tacna 2011 23 de Noviembre de 2011 16 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Orden Lexicográfico Se solicita al usuario un orden de importancia de los objetivos La solución óptima se obtiene minimizando las funciones objetivo comenzando por la más importante y siguiendo el orden dado Se puede escoger al azar un objetivo para optimizar en cada ejecución del AL Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 17 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Orden Lexicográfico Se solicita al usuario un orden de importancia de los objetivos La solución óptima se obtiene minimizando las funciones objetivo comenzando por la más importante y siguiendo el orden dado Se puede escoger al azar un objetivo para optimizar en cada ejecución del AL Desventajas: Exige un orden predefinido de los objetivos, su desempeño se puede ver afectado por este orden. No es adecuado si se trata de muchos objetivos Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 17 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Método −constrain Tiene como principio minimizar un objetivo preferido, considerando los demás como restricciones cercadas por niveles i permitidos, de la siguiente manera: Se hace una única minimización para el objetivo más importante sujeto a las restricciones dadas por los demás objetivos. Los niveles i son alterados para poder obtener el conjunto Pareto-óptimo entero. Desventaja: Puede requerir de un alto costo computacional Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 18 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Vector Objetivo Se define un conjunto de metas que se desea alcanzar para cada función objetivo. El algoritmo minimizará la diferencia entre la solución y esas metas. También se pueden usar estrategias de agregación, por ejm min-max, aunque pueden generarse partes cóncavas del Pareto-front Ventajas y desventajas: Facilidad de implementación La definición de objetivos puede tener costo computacional extra. Puede ocurrir desvío de la presión selectiva por la agregación de objetivos. Debe cumplirse que Objetivos ∈ X para garantizar soluciones en X∗ Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 19 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Usando el Criterio de Pareto Esta idea surgió en [Goldberg, 1989] para atacar deficiencias en VEGA, donde el principio de selección de individuos se basa ahora en el concepto de Optimalidad de Pareto: Se usa un ranking de elementos no dominados y selección para llevar la población hacia la Pareto Front Es necesario un procedimiento de ranking y una técnica que mantenga la diversidad de la población; esto es para evitar la convergencia a una única solución x∗ debido al ruido estocástico del proceso Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 20 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Usando el Criterio de Pareto Los métodos más conocidos de la primera generación usando criterio de Pareto son los siguientes: Ranking Pareto puro Multi-Objective Genetic Algorithm (MOGA) Nondominated Sorting Genetic Algorithm (NSGA) Niched-Pareto Genetig Algorithm (NPGA) Niched-Pareto Genetig Algorithm 2 NPGA 2 Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 21 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación Ranking Pareto Puro Es la idea original de Goldberg [Goldberg, 1989] La complejidad computacional es O(kM 2 ) dada por la necesidad de revisar la no dominancia, donde: k es la cantidad de objetivos M es el tamaño de la población La complejidad del cálculo de la evaluación es O(M 2 ) Es poco susceptible a la forma y continuidad del Pareto front Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 22 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación MOGA –Multi-objective Genetic Algorithm Se hace ranking de un individuos por el número de individuos que lo dominan [Goldberg, 1989] Complejidad computacional O(kM 2 ) dada por la necesidad de revisar la no dominancia, donde: k es la cantidad de objetivos M es el tamaño de la población Se emplea fitness compartido y restricciones para los cruces. forma y continuidad del Pareto front Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 23 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación MOGA –Multi-objective Genetic Algorithm Se hace ranking de un individuos por el número de individuos que lo dominan [Goldberg, 1989] Complejidad computacional O(kM 2 ) dada por la necesidad de revisar la no dominancia, donde: k es la cantidad de objetivos M es el tamaño de la población Se emplea fitness compartido y restricciones para los cruces. forma y continuidad del Pareto front Ventajas, desventajas: El desempeño depende de una buena selección y el factor de compartición Fue el primer algoritmo GA MO verdadero, superó a sus competidores contemporáneos. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 23 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NSGA –Non-dominated Sorting Genetic Algorithm Propuesto por [Srinivas and Deb, 1994], ordenan por su calidad de no dominados colocando los no dominados en una lista y dándoles una aptitud fantasma de acuerdo al tamaño m de la población. Para mantener la diversidad, los individuos no dominados comparten sus aptitudes, se ignoran y se genera otra lista de individuos no dominados y se continua hasta lograr clasificar toda la población X Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 24 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NSGA –Non-dominated Sorting Genetic Algorithm Propuesto por [Srinivas and Deb, 1994], ordenan por su calidad de no dominados colocando los no dominados en una lista y dándoles una aptitud fantasma de acuerdo al tamaño m de la población. Para mantener la diversidad, los individuos no dominados comparten sus aptitudes, se ignoran y se genera otra lista de individuos no dominados y se continua hasta lograr clasificar toda la población X Selección mediante sobrante estocástico Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 24 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NSGA –Non-dominated Sorting Genetic Algorithm – Diagrama de flujo inicializa población gen = 0 INICIO front = 1 reproducción sigue las reglas de aptitud? si ¿población clasificada? mutación cruce no gen +=1 gen < maxgen no Identificar individuos no dominados asignar aptitud fantasma compartir fitness en front actual si front+=1 FIN Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 25 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NPGA –Niched-Pareto Genetic Algorithm Uso de selección por torneo basada en la dominancia Dos individuos aleatorios se comparan con un subconjunto de la población (10% típico). Si los dos elementos son dominados o no dominados (empate) el torneo se decide por el fitness compartido en el dominio del objetivo, usando la técnica llamada clase equivalente compartida Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 26 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NPGA –Niched-Pareto Genetic Algorithm Uso de selección por torneo basada en la dominancia Dos individuos aleatorios se comparan con un subconjunto de la población (10% típico). Si los dos elementos son dominados o no dominados (empate) el torneo se decide por el fitness compartido en el dominio del objetivo, usando la técnica llamada clase equivalente compartida Ventajas y desventajas: No aplica el ranking Pareto a la población entera (eficiencia). Se requiere un parámetro adicional (tamaño del torneo) dado el factor de compartición Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 26 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 1a Generación MOEA – 1a Generación NPGA2 Uso de Ranking Pareto manteniendo la selección por torneo (similar al NPGA) En este algoritmo se usan individuos de la próxima generación (población parcialmente completada). Esta técnica se conoce como actualización de fitness continua. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 27 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación Características Se enfatiza la eficiencia. Se usan poblaciones secundarias (o externas) para generar soluciones que sean no dominadas y uniformemente distribuidas. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 28 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación Características Se enfatiza la eficiencia. Se usan poblaciones secundarias (o externas) para generar soluciones que sean no dominadas y uniformemente distribuidas. Desafíos: Los problemas que se tratan son: El fitness compartido, con complejidad O(M 2 ) Verificación de la dominancia de Pareto con complejidad O(kM 2 ) por generación. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 28 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación PESA –Pareto Envelope-based Selection Algorithm Usa una población interna pequeña y una gran población externa. Emplea una división del hyper-grid del fenotipo (o sea la función objetivo) para mantener la diversidad La selección se basa en una medida de agrupamiento de los grids. Con esta medida se decide cuál solución se colocará en la población externa que almacenará las soluciones no dominadas encontradas a lo largo del proceso. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 29 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación PESA –Pareto Envelope-based Selection Algorithm Usa una población interna pequeña y una gran población externa. Emplea una división del hyper-grid del fenotipo (o sea la función objetivo) para mantener la diversidad La selección se basa en una medida de agrupamiento de los grids. Con esta medida se decide cuál solución se colocará en la población externa que almacenará las soluciones no dominadas encontradas a lo largo del proceso. Hay una revisión llamada PESA-II que usa selección basada en hiperboxes en vez de individuos Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 29 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación SPEA–Streng Pareto Evolutionary Algorithm Usa un archivo con soluciones no dominadas previamente encontradas Se calcula un valor de ranking de individuos similar a MOGA Usa average linkage method para clusterizar y mantener la diversidad. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 30 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – 2a Generación SPEA-II – Streng Pareto Evolutionary Algorithm 2 Con tres diferencias básicas con la versión anterior: Incorpora una estrategia de asignación fine-grained que, para un individuo x toma en cuenta la cantidad de individuos que domina y que lo dominan. Emplea una técnica de estimación de densidad de vecinos más próximos para dirigir mejor la búsqueda. Posée un método mejorado de truncado para garantizar la preservación de las soluciones en la frontera. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 31 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 32 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Estudiar la estructura de las hipersuperficies de aptitud para los problemas de Optimizacion Multiobjetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 32 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Estudiar la estructura de las hipersuperficies de aptitud para los problemas de Optimizacion Multiobjetivo. Responder a la pregunta fundamentental: ¿Cuál es la dificultad en la optimización multiobjetivos para un algoritmo evolutivo? Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 32 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Estudiar la estructura de las hipersuperficies de aptitud para los problemas de Optimizacion Multiobjetivo. Responder a la pregunta fundamentental: ¿Cuál es la dificultad en la optimización multiobjetivos para un algoritmo evolutivo? Un desarrollo formal para analizar y demostrar la convergencia en Algoritmos Evolutivos multiobjetivo paralelos. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 32 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 33 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Buscar el límite teórico para el ranking de Pareto asumiendo poblaciones de tamaño finito. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 33 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Buscar el límite teórico para el ranking de Pareto asumiendo poblaciones de tamaño finito. Hacer un análisis en tiempo real del rendimiento de un Algoritmo Evolutivo Multiobjetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 33 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Investigación en abierto Fundamentos teóricos El área que requiere de más investigación en MOEA es la fundamentación teórica. La mayor parte de la investigación actual se concentra en demostrar que hay convergencia en la Optimización Multiobjetivo por Algoritmos Evolutivos. Además de esta línea principal, hay algunas otras que aún se encuentran en discusion, tales como: Buscar el límite teórico para el ranking de Pareto asumiendo poblaciones de tamaño finito. Hacer un análisis en tiempo real del rendimiento de un Algoritmo Evolutivo Multiobjetivo. Tener definiciones aceptadas por la comunidad sobre robustez, convergencia y diversidad, entre otras en el contexto de optimización evolutiva multiobjetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 33 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Líneas de Investigación Futuras Incorporar preferencias Muchas de las actuales técnicas usadas en en la Toma de Decisiones Multicriterio que se desarrolla en el área de Investigación Operativa, aún no son bien aplicadas en Optimización Evolutiva Multiobjetivo. Esta incorporación es muy importante para aplicaciones reales ya que el usuario en realidad sólo necesitará una sola solución Óptima-Pareto en vez del conjunto entero como se asume en ALgoritmos Evolutivos Multiobjetivo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 34 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Líneas de Investigación Futuras Incorporar preferencias Muchas de las actuales técnicas usadas en en la Toma de Decisiones Multicriterio que se desarrolla en el área de Investigación Operativa, aún no son bien aplicadas en Optimización Evolutiva Multiobjetivo. Esta incorporación es muy importante para aplicaciones reales ya que el usuario en realidad sólo necesitará una sola solución Óptima-Pareto en vez del conjunto entero como se asume en ALgoritmos Evolutivos Multiobjetivo. Optimización de funciones dinámicas Es el siguiente paso, luego de atacar funciones estátivas con varios objetivos. En este caso, las fronteras de Pareto se mueven en el tiempo debido a la existencia de variables aleatorias o dinámicas. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 34 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Líneas de Investigación Futuras Espacios de búsqueda restringidos En la literatura, se encuentran algunas investigaciones tratando la solución de problemas multiobjetivo con espacios de búsqueda altamente restringidos. Estos problemas son bastante comunes y hacen necesario desarrollar técnicas nuevas para manejo de restricciones que puedan lidiar con este tipo de problemas. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 35 / 37 Algoritmos Evolutivos Multiobjetivo – MOEA MOEA – 2a Generación MOEA – Líneas de Investigación Futuras Espacios de búsqueda restringidos En la literatura, se encuentran algunas investigaciones tratando la solución de problemas multiobjetivo con espacios de búsqueda altamente restringidos. Estos problemas son bastante comunes y hacen necesario desarrollar técnicas nuevas para manejo de restricciones que puedan lidiar con este tipo de problemas. Paralelismo Se espera más investigación en MOEA. Es necesario tener más algoritmos y también modelos formales que comprueben la convergencia y claro, más aplicaciones reales que usen paralelismo. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 35 / 37 Bibliografía Bibliografía I Coello, C. A. (1999). A comprehensive survey of evolutionary-based multiobjective optimizations techniques. Knowledge and Information Systems. An International Journal, 1(3):269–308. Goldberg, D. E. (1989). Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Publishing Co., Reading, Massachusetts. Pareto, V. F. (1896). Cours d’Économie Politique, volume 1. F. Rouge, Lausanne, Paris, France. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 36 / 37 Bibliografía Bibliografía II Schaffer, J. D. (1984). Multiple Objective Optimization with Vector Evaluated Genetic Algorithms. PhD thesis, Vanderbilt University, Nashville, TN. Srinivas, N. and Deb, K. (1994). Multiobjective optimization using nondominated sorting in genetic algorithms. Evolutionary Computation, 2(3):221–248. Y. Túpac (UCSP, UNSA) XII CIIS Tacna 2011 23 de Noviembre de 2011 37 / 37