78
Introducci ´ on a la Computaci ´ on Evolutiva Carlos A. Coello Coello [email protected] CINVESTAV-IPN Evolutionary Computation Group (EVOCINV) Departamento de Computaci ´ on Av. IPN No. 2508, Col. San Pedro Zacatenco exico, D.F. 07360, MEXICO Clase 15 Carlos A. Coello Coello Introducci ´ on a los Algoritmos Gen ´ eticos

Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Introduccion a la Computacion Evolutiva

Carlos A. Coello Coello

[email protected]

Evolutionary Computation Group (EVOCINV)Departamento de Computacion

Av. IPN No. 2508, Col. San Pedro ZacatencoMexico, D.F. 07360, MEXICO

Clase 15

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 2: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

PESAEl Pareto Envelope-based Selection Algorithm (PESA) fue propuesto porDavid Corne en 2001.

David W. Corne, Joshua D. Knowles and Martin J. Oates, “The Pareto Envelope-based Selection Algorithm forMultiobjective Optimization”, in Marc Schoenauer et al. (editors), Proceedings of the Parallel Problem Solvingfrom Nature VI Conference, pp. 839–848. Springer, 2000.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 3: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

PESAPESA usa una pequena poblacion interna y una poblacionexterna mas grande (similar a la que adopta PAES).

Al igual que PAES, PESA mantiene implıcitamente una divisionde hiper-rejillas del espacio de las funciones objetivo, lo que lepermite llevar un registro del grado de agrupamiento enregiones diferentes del archivo. Sin embargo, en este caso, y adiferencia de PAES, el mecanismo de seleccion se basa enesta medida de agrupamiento. Esta misma medida deagrupamiento se usa tambien para decidir que solucionesingresaran al archivo externo.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 4: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

PESA-IIEl Pareto Envelope-based Selection Algorithm-II (PESA II) fue propuesto porDavid Corne en 2001.

David W. Corne, Nick R. Jerram, Joshua D. Knowles and Martin J. Oates, “PESA-II: Region-based Selection inEvolutionary Multiobjective Optimization”, in Lee Spector et al. (editors), Proceedings of the 2001 Genetic andEvolutionary Computation Conference (GECCO’2001), pp. 283–290, Morgan Kaufmann Publishers, San Francisco,California, July 2001.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 5: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

PESA-IILa unica diferencia de PESA-II con respecto a PESA es que, en este caso,se adopta un esquema de seleccion basado en regiones.

En PESA-II, en vez de asignar una aptitud selectiva a un individuo, esta seasigna a las hiper-cajas (en el espacio de las funciones objetivo) que sonocupadas actualmente por al menos un individuo en la aproximacion actualal frente de Pareto. De tal forma, se selecciona una hiper-caja y despues seselecciona un individuo aleatoriamente de dicha hiper-caja. Los autores dePESA-II argumentan que este esquema produce una mejor distribucion desoluciones que el esquema de seleccion original de PESA.

Puesto que la rejilla adaptativa no es escalable, los esquemas de selecciontanto de PESA como de PESA-II no pueden utilizarse con mas de 2funciones objetivo.

PESA y PESA-II se usaron para resolver algunos problemas de telecomunicaciones [Corne, 2000; Corne, 2001].

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 6: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

El Micro-Genetic Algorithm for Multi-Objective OptimizationFue propuesto por Coello and Toscano [2001]. Un micro-algoritmo geneticotiene un tamano de poblacion muy pequeno (no mas de 5 individuos) yadopta un proceso de re-inicializacion para mantener diversidad.

Carlos A. Coello Coello and Gregorio Toscano Pulido, “Multiobjective Optimization using a Micro-GeneticAlgorithm, in Lee Spector et al. (editors), Proceedings of the 2001 Genetic and Evolutionary ComputationConference (GECCO’2001), pp. 274–282, Morgan Kaufmann Publishers, San Francisco, California, July 2001.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 7: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

El Micro-Genetic Algorithm for Multi-Objective OptimizationEste algoritmo incorpora 3 formas de elitismo y la rejillaadaptativa de PAES (con una pequena modificacion que lahace mas eficiente).

Este AEMO es muy rapido. En los estudios comparativos de laepoca, se pudo determinar que era hasta un order de magnitudmas rapido que el NSGA-II y producıa soluciones de calidadsimilar.

La principal desventaja de esta tecnica era que requerıa unelevado numero de parametros (ocho, de los cuales al menos 3juegan un papel preponderante en su desempeno).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 8: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 9: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

El Micro-Genetic Algorithm for Multi-Objective OptimizationAlgunas de sus aplicaciones son las siguientes:

Diseno de jets supersonicos de negocios [Chung et al., 2003].

Optimizacion estructural [Coello, 2002].

Particiones de sistemas de hardware/software [Fornaciari, 2003].

Localizacion de reguladores de voltaje automaticos en una red dedistribucion radial [Mendoza, 2007].

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 10: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

El Micro-Genetic Algorithm for Multi-Objective Optimization 2

Este algoritmo (denominado µGA2, de forma abreviada) fue propuesto porToscano y Coello en 2003. A la fecha, es el unico AEMO totalmenteauto-adaptativo que se ha propuesto en la literatura especializada.

Gregorio Toscano Pulido and Carlos A. Coello Coello, “The Micro Genetic Algorithm 2: Towards OnlineAdaptation in Evolutionary Multiobjective Optimization”, in Carlos M. Fonseca et al. (editors), EvolutionaryMulti-Criterion Optimization. Second International Conference, EMO 2003, pp. 252–266, Springer. Lecture Notes inComputer Science. Volume 2632, Faro, Portugal, April 2003.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 11: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Metodos Elitistas Basados en la Optimalidad dePareto

El Micro-Genetic Algorithm for Multi-Objective Optimization 2

La motivacion principal del µGA2 era eliminar los 8 parametros del algoritmooriginal. El µGA2 utiliza mecanismos de adaptacion en lınea que haceninnecesario el ajuste de cualquiera de sus parametros.

El µGA2 puede decidir incluso cuando detenerse (no se requiere darle elnumero maximo de generaciones). El unico parametro que requiere es eltamano del archivo externo (aunque, evidentemente, hay un valor poromision para este parametro).

El µGA2 ha sido utilizado para resolver problemas de reconfiguracionconsiderando perdidas de potencial e ındices de confiabilidad para una redde distribucion de voltaje medio [Mendoza, 2009].

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 12: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El µGA2

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 13: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Los algoritmos que el mundo olvido

Se han propuesto diversos AEMOs que, por diversas razones,nunca alcanzaron popularidad. Algunos ejemplos son lossiguientes:

El Nash Genetic Algorithm [Sefrioui, 1996].La Maximin Fitness Function [Balling, 2000].El Incrementing Multi-Objective Evolutionary Algorithm(IMOEA) [Tan et al., 2001].El Constraint Method-Based Evolutionary Algorithm(CMEA) for Multiobjective Optimization [Ranjithan et al.,2001].El Orthogonal Multi-Objective Evolutionary Algorithm(OMOEA) [Zeng et al., 2004].y muchos mas ...

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 14: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

MOEA/DEl Multi-Objective Evolutionary Algorithm based on Decomposition (MOEA/D)propuesto por Zhang y Li [2007] es uno de los AEMOs mas competitivos dela actualidad. MOEA/D transforma un problema multi-objetivo en variosproblemas mono-objetivo los cuales son resueltos simultaneamente. Cadasubproblema se optimiza utilizando informacion de sus subproblemasvecinos, en contraste con otros metodos similares (p.ej., MOGLS [Ishibuchi &Murata, 1996]). Este AEMO esta basado en una tecnica de programacionmatematica llamada Normal Boundary Intersection (NBI) [Das, 1998].

Qingfu Zhang and Hui Li, “MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition”, IEEETransactions on Evolutionary Computation, Vol. 11, No. 6, pp. 712–731, December 2007.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 15: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

Seleccion Basada en IndicadoresQuizas la tendencia mas importante en torno al diseno moderno de AEMOssea el uso de una medida de desempeno en su mecanismo de seleccion.

ESPLa Evolution Strategy with Probability Mutation adopta una medidabasada en el hipervolumen, la cual es independiente de la escala y norequiere de ningun parametro, para truncar el contenido de un archivoexterno [Huband et al., 2003].

Simon Huband, Phil Hingston, Lyndon White and Luigi Barone, “AnEvolution Strategy with Probabilistic Mutation for Multi-ObjectiveOptimisation”, in Proceedings of the 2003 Congress on EvolutionaryComputation (CEC’2003), Vol. 3, pp. 2284–2291, IEEE Press, Canberra,Australia, December 2003.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 16: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

IBEAEl Indicator-Based Evolutionary Algorithm en un entorno algorıtmico quepermite la incorporacion de cualquier indicador de desempeno en elmecanismo de seleccion de un AEMO [Zitzler et al., 2004]. Dicho entorno sevalido originalmente con el hipervolumen y el indicador ε binario.

Eckart Zitzler and Simon Kunzli, “Indicator-based Selection in Multiobjective Search, in Xin Yao et al. (editors),Parallel Problem Solving from Nature - PPSN VIII, Springer-Verlag, Lecture Notes in Computer Science, Vol. 3242,pp. 832–842, Birmingham, UK, September 2004.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 17: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

SMS-EMOAEmmerich et al. [2005] propusieron un algoritmo basado en el NSGA-II elcual utiliza la tecnica de archivado propuesta por Knowles, Corne y Fleischeral cual denominaron S Metric Selection Evolutionary Multiobjective Algorithm.

SMS-EMOA crea una poblacion inicial y genera una sola solucion poriteracion (es decir, utiliza una seleccion de estado uniforme) utilizando losoperadores de cruza y mutacion del NSGA-II. Posteriormente, aplicaordenamiento no dominado. Cuando el ultimo frente no dominado tiene masde una solucion, SMS-EMOA utiliza el hipervolumen para decidir quesolucion debe removerse.

Michael Emmerich, Nicola Beume and Boris Naujoks, “An EMO AlgorithmUsing the Hypervolume Measure as Selection Criterion, in Carlos A.Coello Coello et al. (editors), Evolutionary Multi-Criterion Optimization. ThirdInternational Conference, EMO 2005, pp. 62–76, Springer. Lecture Notes inComputer Science Vol. 3410, Guanajuato, Mexico, March 2005.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 18: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

SMS-EMOABeume et al. [2007] propusieron una nueva version del SMS-EMOA en laque no se usa la contribucion al hipervolumen cuando, en el ordenamientono dominado, se obtiene mas de un frente. En este caso, se utiliza el numerode soluciones que dominan a cierto individuo (es decir, la solucion que esdominada por la mayor cantidad de individuos es removida).

Los autores de este algoritmo indican que su motivacion para utilizar elhipervolumen fue mejorar la distribucion de soluciones a lo largo del frentede Pareto (en otras palabras, el hipervolumen se utiliza como un estimadorde densidad).

Nicola Beume, Boris Naujoks and Michael Emmerich, “SMS-EMOA:Multiobjective selection based on dominated hypervolume”, EuropeanJournal of Operational Research, Vol. 181, No. 3, pp. 1653–1669, 16September, 2007.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 19: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

MO-CMA-ESEsta es una version multi-objetivo de la covariance matrix adaptationevolution strategy (CMA-ES) propuesta por Igel et al. [2007].

Su mecanismo de seleccion se basa en un ordenamiento no dominado queadopta como criterio secundario de seleccion ya sea la distancia deagrupamiento o la contribucion al hipervolumen (en el artıculo se evaluan lasdos versiones, pero la basada en el hipervolumen es la que presenta elmejor desempeno).

Este AEMO es invariante a la rotacion, igual que el optimizadormono-objetivo en el cual se basa.

Christian Igel, Nikolaus Hansen and Stefan Roth, “Covariance MatrixAdaptation for Multi-objective Optimization”, Evolutionary Computation,Vol. 15, No. 1, pp. 1–28, Spring 2007.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 20: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

SPAMEl Set Preference Algorithm for Multiobjective optimization es unageneralizacion de IBEA que permite adoptar cualquier relacion depreferencia de conjuntos en su mecanismo de seleccion [Zitzler et al., 2008].

Eckart Zitzler, Lothar Thiele and Johannes Bader, “SPAM: Set Preference Algorithm for MultiobjectiveOptimization”, in Gunter Rudolph et al. (editors), Parallel Problem Solving from Nature–PPSN X, pp. 847–858,Springer, Lecture Notes in Computer Science Vol. 5199, Dortmund, Germany, September 2008.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 21: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

HyPEEl hypervolume estimation algorithm for multi-objective optimization, fuepropuesto por Bader y Zitzler [2011]. En este caso, los autores proponen unalgoritmo de busqueda rapida que usa simulaciones de Monte Carlo paraaproximar las contribuciones al hipervolumen.

La idea fundamental es que conocer el valor exacto de la contribucion alhipervolumen no es realmente tan importante, pues realmente lo que nosinteresa es poder producir una jerarquizacion a partir de ella. Aunque estapropuesta es muy interesante, en la practica su desempeno es bastantepobre con respecto al de los AEMOs que utilizan las contribuciones exactasal hipervolumen.

Johannes Bader and Eckart Zitzler, “HypE: An Algorithm for Fast Hypervolume-Based Many-ObjectiveOptimization”, Evolutionary Computation, Vol. 19, No. 1, pp. 45–76, Spring, 2011.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 22: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenEl hipervolumen (conocido tambien como la metrica S o la medida deLebesgue) de un conjunto de soluciones, mide el tamano de la porcion delespacio de las funciones objetivo que es dominado, colectivamente, pordichas soluciones.

El hipervolumen es el unico indicador de desempeno conocido a la fecha quees monotonico con respecto a la dominancia de Pareto. Esto garantiza queel verdadero frente de Pareto tenga el maximo valor posible delhipervolumen y cualquier otro conjunto que lo aproxime producira un valorinferior para este indicador.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 23: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenFleischer [2003] demostro que, dado un espacio de busqueda finito y unpunto de referencia, maximizar el hipervolumen es equivalente a obtener elconjunto de optimos de Pareto. Por lo tanto, un conjunto acotado quecontenga el valor maximo posible del hipervolumen para un cierto tamano depoblacion, consistira unicamente de soluciones optimas en el sentido dePareto.

Este resultado ha sido validado experimentalmente [Knowles, 2003;Emmerich, 2005], y se ha podido observar que tales soluciones tienentambien una buena distribucion a lo largo del frente de Pareto.

M. Fleischer, “The Measure of Pareto Optima. Applications toMulti-objective Metaheuristics”, in Carlos M. Fonseca et al. (editors),Evolutionary Multi-Criterion Optimization. Second International Conference,EMO 2003, pp. 519–533, Springer. Lecture Notes in Computer Science.Volume 2632, Faro, Portugal, April 2003.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 24: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenEl calculo del hipervolumen depende del punto de referencia que se adopte ydicho punto puede ejercer una influencia importante en los resultados.Algunos investigadores han propuesto el uso de los peores valores de lasfunciones objetivo disponibles en la poblacion actual, pero esto requiere quese escalen los objetivos.

Sin embargo, la principal desventaja de usar el hipervolumen es su elevadocosto computacional. Los mejores algoritmos que se conocen actualmentepara calcular el hipervolumen tienen una complejidad que es polinominal enel numero de puntos, pero dicha complejidad crece exponencialmente con elnumero de objetivos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 25: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenEl hecho de que no exista ningun algoritmo de complejidad polinomial paracalcular el hipervolumen de forma exacta, origino la hipotesis de que dichoalgoritmo pudiese no ser posible. Esto es algo interesante si consideramosque la cota inferior justa para la complejidad del calculo del hipervolumen esO(N log N) [Beume, 2007].

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 26: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenAlgunos resultados teoricos refuerzan esta hipotesis: Bringmann y Friedrich[2009] demostraron que el calculo del hipervolumen es #P-Complete. Estosignifica que no existe algoritmo de complejidad polinomial para calcularlo,pues de no ser ası, esto implicarıa que NP = P.

Sin embargo, el calculo de este indicador ha dado pie a una cantidadsignificativa de trabajos de investigacion. Ver por ejemplo:

http://ls11-www.cs.uni-dortmund.de/rudolph/hypervolume/start

http://people.mpi-inf.mpg.de/˜tfried/HYP/

http://iridia.ulb.ac.be/˜manuel/hypervolume

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 27: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenCabe destacar que el uso del hipervolumen para seleccionar soluciones noes del todo trivial. Este indicador opera sobre un conjunto de soluciones, y eloperador de seleccion solo considera una solucion a la vez. Por lo tanto,cuando se utiliza el hipervolumen para seleccionar soluciones, se requiereuna estrategia de asignacion de aptitud.

La estrategia que se ha adoptado mas comunmente en la literaturaespecializada consiste en realizar primero un ordenamiento no dominado yposteriormente jerarquizar las soluciones dentro de cada frente con base enla perdida de hipervolumen que resulte de remover una solucion enparticular [Knowles and Corne, 2003; Emmerich et al., 2005; Igel et al., 2007;Bader et al., 2010].

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 28: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

El HipervolumenLa principal motivacion para usar indicadores en el mecanismo de seleccionde un AEMO es la escalabilidad (en el espacio de las funciones objetivo). Sinembargo, el alto costo computacional del hipervolumen ha motivado elestudio de otros indicadores de desempeno tales como ∆p.

Oliver Schutze, Xavier Esquivel, Adriana Lara and Carlos A. Coello Coello, Using the Averaged HausdorffDistance as a Performance Measure in Evolutionary Multi-Objective Optimization, IEEE Transactions onEvolutionary Computation, Vol. 16, No. 4, pp. 504–522, August 2012.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 29: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

Indicador ∆p

El indicador ∆p puede verse como una “distancia promediada de Hausdorff”entre nuestra aproximacion y el verdadero frente de Pareto. ∆p combinaalgunas ligeras variantes de dos indicadores de desempeno bien conocidos:la distancia generacional [Van Veldhuizen, 1999] y la distancia generacionalinvertida [Coello & Cruz, 2005].

∆p es una pseudo-metrica que evalua simultaneamente proximidad alverdadero frente de Pareto y la distribucion de las soluciones a lo largo delmismo. Aunque no es un indicador Pareto compatible, en la practica, parecetrabajar razonablemente bien, y es capaz de lidiar adecuadamente con losoutliers. Esto lo hace un indicador de desempeno atractivo. Adicionalmente,su costo computacional es muy bajo.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 30: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

Indicador ∆p

Sin embargo, cabe mencionar que para incorporar ∆p en el mecanismo deseleccion de un AEMO, se debe contar con una aproximacion al verdaderofrente de Pareto a todo momento. Esto ha motivado el desarrollo de tecnicasque producen dicha aproximacion de manera eficiente y efectiva.

Por ejemplo, Gerst et al. [2011] linearizaron el frente no dominado producidopor la poblacion actual y usaron esa informacion para disenar el denominado∆p-EMOA, el cual se utilizo para resolver problemas bi-objetivo. Estealgoritmo esta inspirado en el SMS-EMOA y adopta un archivo externo.

K. Gerstl, G. Rudolph, O. Schutze and H. Trautmann, “Finding EvenlySpaced Fronts for Multiobjective Control via AveragingHausdorff-Measure”, in The 2011 8th International Conference on ElectricalEngineering, Computer Science and Automatic Control (CCE’2011), pp.975–980, IEEE Press, Merida, Yucatan, Mexico, October 2011.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 31: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

Indicador ∆p

Existe otra extension del AEMO del acetato anterior que fue disenada pararesolver problemas con tres funciones objetivo [Trautmann, 2012]. En estecaso, el algoritmo requiere algunos pasos previos, que incluyen reducir ladimensionalidad de las soluciones no dominadas y calcular su cubiertaconvexa (convex hull).

Esta version del ∆p-EMOA genera soluciones con una mejor distribucionpero requiere mas parametros y tiene un costo computacional elevadocuando se utiliza para resolver problemas de optimizacion con muchosobjetivos.

Heike Trautmann, Gunter Rudolph, Christian Dominguez-Medina and OliverSchutze, “Finding Evenly Spaced Pareto Fronts for Three-ObjectiveOptimization Problems, in Oliver Schutze et al. (editors), EVOLVE - ABridge between Probability, Set Oriented Numerics, and EvolutionaryComputation II, pp. 89–105, Springer, Advances in Intelligent Systems andComputing Vol. 175, Berlin, Germany, 2012, ISBN 978-3-642-31519-0.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 32: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

Indicador ∆p

Otra forma posible de incorporar ∆p en un AEMO es mediante el uso de lassoluciones no dominadas disponibles hasta el momento, de formaescalonada, a fin de construir una aproximacion del verdadero frente dePareto.

Este es precisamente el enfoque adoptado por el ∆p-DDE [Rodrıguez &Coello, 2012], que utiliza evolucion diferencial como su motor de busqueda.Este AEMO proporciona resultados de calidad similar a los generados por elSMS-EMOA, pero a un costo computacional significativamente inferior (enalta dimensionalidad). Su principal limitante es que las soluciones queproduce normalmente no estan bien distribuidas en problemas con muchasfunciones objetivo. Adicionalmente, este algoritmo tiene dificultades paralidiar con frentes de Pareto desconectados.

Cynthia A. Rodrıguez Villalobos and Carlos A. Coello Coello, “A New Multi-Objective Evolutionary AlgorithmBased on a Performance Assessment Indicator”, in 2012 Genetic and Evolutionary Computation Conference(GECCO’2012), pp. 505–512, ACM Press, Philadelphia, USA, July 2012, ISBN: 978-1-4503-1177-9.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 33: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

R2Algunos investigadores han recomendado el uso del indicador R2, el cual fuepropuesto originalmente por Hansen [1998] para comparar conjuntos desoluciones utilizando funciones de utilidad [Brockhoff, 2012]. Una funcion deutilidad es un modelo de las preferencias del tomador de decisiones quemapea cada punto del espacio de las funciones objetivo a un valor deutilidad.

Dimo Brockhoff, Tobias Wagner and Heike Trautmann, “On the Properties of the R2 Indicator, in 2012 Geneticand Evolutionary Computation Conference (GECCO’2012), pp. 465–472, ACM Press, Philadelphia, USA, July 2012,ISBN: 978-1-4503-1177-9.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 34: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

R2Cabe indicar que R2 es un indicador debilmente monotonico y que estacorrelacionado con el hipervolumen, pero tiene un costo computacional muyinferior a este. Debido a estas propiedades, su uso se recomienda para lidiarcon problemas con muchas funciones objetivo. Sin embargo, las funcionesde utilidad que se requieren para calcular este indicador deben estardebidamente escaladas.

De acuerdo a Brockhoff [2012], la version unaria del indicador R2 para unconjunto de referencia constante se puede expresar de la forma siguiente:

R2(A,U) = − 1|U|

∑u∈U

maxa∈A{u(a)}, (1)

donde A es la aproximacion al conjunto de Pareto y U es un conjunto defunciones de utilidad.

Con respecto a la funcion de utilidad u : Rm → R, existen variasposibilidades: lineal ponderada, Tchebycheff ponderada o Tchebycheffaumentada.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 35: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

R2Existen ya varios AEMOs basados en R2.

Raquel Hernandez Gomez and Carlos A. Coello Coello, MOMBI: A NewMetaheuristic for Many-Objective Optimization Based on the R2Indicator, in 2013 IEEE Congress on Evolutionary Computation (CEC’2013),pp. 2488–2495, IEEE Press, Cancun, Mexico, 20-23 June, 2013, ISBN978-1-4799-0454-9.

Dimo Brockhoff, Tobias Wagner and Heike Trautmann, R2 Indicator-BasedMultiobjective Search, Evolutionary Computation, Vol. 23, No. 3, pp.369–395, Fall 2015.

Alan Dıaz-Manrıquez, Gregorio Toscano-Pulido, Carlos A. Coello Coello andRicardo Landa-Becerra, A Ranking Method Based on the R2 Indicator forMany-Objective Optimization, in 2013 IEEE Congress on EvolutionaryComputation (CEC’2013), pp. 1523–1530, IEEE Press, Cancun, Mexico,20-23 June, 2013, ISBN 978-1-4799-0454-9.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 36: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

R2Dung H. Phan and Junichi Suzuki, R2-IBEA: R2 Indicator BasedEvolutionary Algorithm for Multiobjective Optimization, in 2013 IEEECongress on Evolutionary Computation (CEC’2013), pp. 1836–1845, IEEEPress, Cancun, Mexico, 20-23 June, 2013, ISBN 978-1-4799-0454-9.

Raquel Hernandez Gomez and Carlos A. Coello Coello, “ImprovedMetaheuristic Based on the R2 Indicator for Many-ObjectiveOptimization”, in 2015 Genetic and Evolutionary Computation Conference(GECCO 2015), pp. 679–686, ACM Press, Madrid, Spain, July 11-15, 2015,ISBN 978-1-4503-3472-3.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 37: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Recientes

NSGA-IIIEl Nondominated Sorting Genetic Algorithm III (NSGA-III) fue propuesto porDeb y Jain [2014] como una extension del NSGA-II disenadaespecıficamente para lidiar con problemas con muchas funciones objetivo(mas de tres). El NSGA-III sigue utilizando el ordenamiento no dominado (elcual produce varias capas o niveles de soluciones), pero en este caso elestimador de densidad se basa en una actualizacion adaptativa de unconjunto de puntos de referencia bien distribuidos.

Kalyanmoy Deb and Himanshu Jain, “An Evolutionary Many-Objective Optimization Algorithm UsingReference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints”,IEEE Transactions on Evolutionary Computation, Vol. 18, No. 4, pp. 577–601, August 2014.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 38: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Culturales

Algunos sociologos han sugerido que la cultura puede sercodificada simbolicamente y que puede transmitirse dentre yentre poblaciones, como si se tratara de otro mecanismo deherencia.

Robert Reynolds [1994] desarrollo un modelo computacionalen el cual la evolucion cultural es vista como un procesohereditario que opera a dos niveles: el nivel micro-evolutivo y elnivel macro-evolutivo.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 39: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Culturales

Al nivel micro-evolutivo los individuos se describen por mediode “caracterısticas de comportamiento” (que pueden seraceptables o inaceptables). Estas caracterısticas se pasan degeneracion en generacion usando varios operadoresinspirados en cuestiones sociales.

Al nivel macro-evolutivo, los individuos son capaces de generar“mappa”, o sea, descripciones generalizadas de susexperiencias.

Los mappas individuales pueden mezclarse y modificarse a finde formar “mappas” grupales.

Ambos niveles comparten un canal de comunicacion.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 40: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Culturales

Reynolds [1994] propuso el uso de algoritmos geneticos paramodelar el proceso micro-evolutivo, y los Espacios deVersiones [Mitchell, 1978] para modelar el procesomacro-evolutivo de un algoritmo cultural.

Cada individuo tiene su propio conjunto de creencias, peroestas se ajustan en e tiempo usando el “mapa de grupo”, o sealas experiencias generales de la poblacion. Cada individuocontribuye a tal “mapa de grupo” al final de cada generacion.

Robert G. Reynolds, “An Introduction to Cultural Algorithms”, in A.V.Sebald and L.J. Fogel (editors), Proceedings of the Third Annual Conferenceon Evolutionary Programming, pp. 131–139, World Scientific, River Edge,New Jersey, USA, 1994.

Tom Mitchell, “Version Spaces: An Approach to Concept Learning”, PhD thesis, Computer Science Department,Stanford University, Stanford, California, USA, 1978.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 41: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Culturales

Cuando un individuo mezcla su mapa individual con el delgrupo, hay una cierta combinacion de creencias.

Si un individuo tiene un mapa combinado menor que ciertovalor aceptable, entonces se le poda del espacio de creencias.

Se usa entonces un proceso de seleccion para elegir lospadres que seran evolucionados en la siguiente generacion (dehecho, la seleccion puede paralelizarse).

El proceso evolutivo se efectua con ciertos operadores quetienden a ser especıficos del dominio.

Las interacciones entre el espacio de creencias y el de lapoblacion dependen del canal de comunicacion que se utilice,ası como de sus protocolos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 42: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

Pablo Moscato introdujo el concepto de algoritmo memeticoen 1989, para denotar el uso de buscadores localescombinados con estrategias poblacionales.

Pablo Moscato, “On Evolution, Search, Optimization, Genetic Algorithmsand Martial Arts: Towards Memetic Algorithms”, Caltech ConcurrentComputation Program, Report 826, Pasadena, California, USA, 1989.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 43: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

El termino memetico tiene sus raıces en la palabra “meme”, lacual fue introducida por Richard Dawkins en su libro TheSelfish Gene.

Dawkins define a un meme como una “unidad de imitacion” enla transmision cultural.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 44: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

Por tanto, un algoritmo memetico puede verse como unenfoque que intenta de imitar la evolucion cultural en vez de laevolucion biologica.

La diferencia principal entre los algoritmos memeticos y losalgoritmos evolutivos es en la forma en la que se transmite lainformacion.

Mientras que los genes pasan intactos, los memes tıpicamenteson adaptados por los individuos que los transmiten.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 45: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

El acetato siguiente muestra a un algoritmo memetico generico(LS denota la busqueda local).

Se hace notar que la posicion exacta del buscador local dentrodel algoritmo evolutivo depende del disenador del algoritmo.

La busqueda local efectuada esta, evidentemente, acotada, afin de que el tiempo computacional requerido por el algoritmono resulte excesivo.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 46: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

Algorithm 1 Memetic EA

1: procedure MEMETIC EA(N ,g, fm(~x))2: Randomly initialize population Pg with N individuals3: Evaluate fitness fm(~x) of each individual ~x in Pg4: while Termination condition false do5: g = g + 1; number of generation6: Select P′g from P(g−1) based on fitness7: Apply genetic operators to P′g → P′′g8: Local Search in P′′g neighborhood; P′′g → P′′′g9: Evaluate fitness fm(~x) of each individual in (P′′g , P′′′g)

10: Select Pg from (Pg−1, P′g , P′′g , P′′′g)11: end while12: end procedure

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 47: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

Evidentemente, el balance entre la busqueda que hace elalgoritmo evolutivo y la del buscador local es crıtica para lograrbuenos resultados, y es tema de investigacion en la actualidad.

Asımismo, la definicion de buenos buscadores locales paraespacios continuos es un tema en el que varios investigadoresse encuentran trabajando actualmente, aunquetradicionalmente, los algoritmos memeticos se han usado enespacio de busqueda discretos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 48: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

Hay varias preguntas que se plantean al disenar algoritmosmemeticos:

1. ¿Que tan frecuentemente deben usarse la busqueda localcon base en una probabilidad PLS?

2. ¿Durante cuanto tiempo T debe ejecutarse el buscadorlocal?

3. ¿Sobre que k soluciones debe aplicarse la busqueda localdado un vecindario N(~x), donde ~x es una solucion actual?

4. ¿Que tan eficiente debe ser el buscador local, conrespecto a su efectividad?

5. ¿Como deben relacionarse los operadores derecombinacion y mutacion de un algoritmo evolutivo con elbuscador local?

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 49: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Algoritmos Memeticos

6. ¿Debiera usarse un esquema de asignacion de aptitudLamarckiano o uno Baldwiniano?

Cuando se usa Lamarckismo, el mejor resultado obtenido conel explorador local sustituye a la solucion base (o sea, aquellaa partir de la cual se inicio la busqueda local).

Cuando se usa Baldwinismo, la aptitud de la mejor solucionobtenida por el explorador local es usada por el individuo base,pero el valor de tal solucion no reemplaza a dicho individuobase.

El enfoque Lamarckiano es el mas comun en los algoritmosmemeticos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 50: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

En la naturaleza existen organismos que tienen una relacionsimbiotica con otros organismos.

La Simbiosis se define como el “fenomeno mediante el cualdos organismos disimilares viven ıntimamente juntos en unarelacion mutuamente benefica”.

En la comunidad de computacion evolutiva se han desarrolladoalgoritmos que adoptan simbiosis, aunque son relativamenteescasos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 51: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Llamamos coevolucion a un cambio en la composiciongenetica de una especie (o grupo de especies) comorespuesta a un cambio genetico de otra. En un sentido masgeneral, la coevolucion se refiere a un cambio evolutivorecıproco entre especies que interactuan entre sı.

El termino coevolucion suele atribuırsele a Ehrlich y Raven,quienes publicaron un artıculo sobre sus estudios de lasmariposas y las plantas a mediados de los 1960s [Ehrlich &Raven, 1964].

Paul R. Ehrlich and Peter H. Raven, “Butterflies and Plants: AStudy on Coevolution”, Evolution, Vol. 18, pp. 586–608, 1964.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 52: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Las relaciones entre las poblaciones de dos especies distintasA y B pueden ser descritas considerando todos los tiposposibles de interacciones.

Tales interacciones pueden ser positivas o negativas,dependiendo de las consecuencias que esta produzca en lapoblacion.

La tabla del acetato siguiente muestra todas las posiblesinteracciones entre dos especies diferentes.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 53: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

A BNeutralismo 0 0 Las poblaciones A y B son independientes

y no interactuanMutualismo + + Ambas especies se benefician de la relacion

Comensalismo + 0 Una especie se beneficia de la relacion, perola otra no sufre dano, ni se beneficia

Competencia - - Ambas especies tienen un efecto negativo entre ellaspuesto que compiten por los mismos recursos

Depredacion + - El depredador (A) se beneficia y la presa (B)es afectada negativamente

Parasitismo + - El parasito (A) se beneficia, mientras que elhuesped (B) es afectado negativamente

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 54: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

La comunidad de computacion evolutiva ha desarrollado variosenfoques coevolutivos en los que normalmente dos o masespecies se relacionan entre sı usando alguno de losesquemas indicados anteriormente.

Asımismo, en la mayorıa de los casos, tales especiesevolucionan independientemente a traves de un algoritmoevolutivo (normalmente un algoritmo genetico).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 55: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Existen dos clases principales de algoritmos coevolutivos en laliteratura especializada:

1. Aquellos basados en relaciones de competencia(denominada coevolucion competitiva): En este caso, laaptitud de un individuo es el resultado de “encuentros” conotros individuos [Paredis, 1997]. Este tipo de esquemacoevolutivo se ha adoptado normalmente para los juegos.

Jan Paredis, “Coevolutionary Algorithms”, in Thomas Back, David B. Fogeland Zbigniew Michalewics (Editors), Handbook of Evolutionary Computation,Oxford University Press, 1997.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 56: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

2. Aquellos basados en relaciones de cooperacion(denominada coevolucion cooperativa): En este caso, laaptitud de un individuo es el resultado de una colaboracioncon individuos de otras especies (o poblaciones) [Potter, &De Jong 2000]. Este tipo de esquema coevolutivo se haadoptado normalmente para resolver problemas deoptimizacion.

M. Potter and K. De Jong, “Cooperative Coevolution: An architecture forevolving coadapted subcomponents”, Evolutionary Computation, Vol. 8,No. 1, pp. 1–29, 2000.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 57: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Existen varios trabajos en la literatura especializada que usanla coevolucion y la simbiosis en un algoritmo evolutivo. Paredis[1995,1998] proporciona una muy buena introduccion a lacoevolucion, discutiendo primero la aptitud competitiva.

Este tipo de aptitud se obtiene mediante calculos quedependen en cierto grado de la poblacion actual.

La dependencia puede ser mınima (por ejemplo, se puededepender de un solo miembro de la poblacion) o exhaustiva (osea, se puede depender de toda la poblacion y combinar susaptitudes en un solo valor escalar).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 58: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Cuatro ejemplos de funciones de aptitud competitivas incluyen:competencia total (todos vs. todos), competencia bipartita (unovs. uno o posiblemente uno vs. muchos), aptitud de torneo(torneo binario con eliminacion de un solo elemento, la cual nodebe confundirse con la seleccion de torneo), y la competenciaelitista (todos vs. el mejor).

Estos esquemas se ilustran graficamente en el acetatosiguiente.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 59: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 60: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

La aptitud competitiva se ha aplicado extensamente en losjuegos evolutivos. Algunos de los juegos en donde se hanusado algoritmos evolutivos son: Gato [Angeline, 1993], Otelo[Chong, 2005], Awari [Davis, 2002], Poquer [Billings, 2001],Backgammon [Pollack, 1996] y el dilema del prisionero [Chong,2005a].

Otra forma de coevolucion es el denominado modelodepredador-presa. Un ejemplo de este modelo loencontramos en el trabajo que hizo Danny Hillis con las redesde ordenamiento (sorting networks) [Hillis, 1990].

En este caso, se usaron dos poblaciones, una conteniendo lasredes de ordenamiento y la otra consistente en un conjunto delistas con 16 numeros para ser ordenados.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 61: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Wallin et al. [2005] introdujeron un algoritmo coevolutivocooperativo que se basa en el concepto de endosimbiosis.

La endosimbiosis se refiere a la relacion simbiotica entre unorganismo y otro que vive adentro del cuerpo del huesped.

En los algoritmos evolutivos, el uso de coevolucion competitivapuede evitar que las poblaciones se estanquen, usandoco-especies para mantener la presion evolutiva.

D. Wallin, C. Ryan, and R.M.A. Azad, “Symbiogenetic coevolution”, in Proceedings of the 2005 IEEE Congress onEvolutionary Computation (CEC’2005), pp. 1613–1620, IEEE Press, 2005.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 62: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

Wallin et al. [2005] propusieron el Symbiotic CoevolutionaryAlgorithm (SCA), el cual usa dos especies: los huespedes ylos parasitos.

Los huespedes son una solucion completa, mientras que elparasito es una solucion parcial.

Para que se pueda evaluar un parasito, debe estar ligado a unhuesped.

El parasito esta conformado por dos cadenas. La primeracadena es un numero binario con codificacion de Gray, cuyo fines dirigir los valores parasıticos a una posicion dentro delhuesped.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 63: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Coevolucion

La principal aplicacion de los sistemas coevolutivos ha sido laoptimizacion a gran escala (large scale optimization), en la cuallos sistemas cooperativos han sido muy exitosos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 64: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Paisajes de Aptitud

El concepto de paisaje de aptitud (fitness landscape) fueintroducido por Sewall Wright en 1932, como una metaforapara describir multiples dominios de atraccion en la dinamicaevolutiva.

La idea de Wright fue ver el espacio de busqueda como situviera multiples picos hacia los cuales la poblacionevolucionarıa, escalandolos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 65: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Paisajes de Aptitud

Wright estaba principalmente interesado en analizar la formaen que las poblaciones podıan escapar de los optimos localesa traves de fluctuaciones estocasticas.

Por tanto, esta es una de las primeras propuestas para usarprocesos estocasticos para optimizar funciones multimodales.

El concepto de Wright fue concebido como una ayuda paravisualizar el comportamiento de los operadores de seleccion yvariacion durante el proceso evolutivo.

Por tanto, los paisajes de aptitud normalmente se usan paraestudiar la eficacia de los algoritmos evolutivos.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 66: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Paisajes de Aptitud

Particularmente, los investigadores han adoptado losdenominados paisajes de aptitud NK propuestos por StuartKauffman [1987] para explorar la forma en la cual la epıstasiscontrola la rugosidad de un paisaje adaptativo.

La idea de Kauffman fue especificar una familia de funcionesde aptitud que tuvieran una rugosidad que pudiera serajustable a traves de la manipulacion de un solo parametro.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 67: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Sistemas de Clasificadores

Desde los orıgenes de los algoritmos geneticos, huboinvestigadores interesados en aplicar este tipo de tecnicas aproblemas de aprendizaje de maquina.

La motivacion principal es que los cromosomas, los cualesrepresentan conocimiento, son tratados como datos a sermanipulados mediante operadores geneticos y, al mismotiempo, como codigo ejecutable a ser utilizado para realizaralguna tarea.

Esto dio pie al desarrollo de los denominados sistemas declasificadores, en los cuales se usan algoritmos evolutivospara resolver problemas de aprendizaje (fundamentalmente,problemas de clasificacion).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 68: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Sistemas de Clasificadores

Desde los viejos dıas de los algoritmos geneticos, seconsideraron dos tipos de enfoques para disenar sistemas declasificadores:

1. El primer enfoque consiste en representar todo unconjunto de reglas usando un individuo (o sea, unacadena cromosomica), mantener una poblacion deconjuntos de reglas y usar el mecanismo de seleccion ylos operadores de un algoritmo genetico para producirnuevos conjuntos de reglas. A este tipo de tecnica se ledenomina enfoque Pitt, dado que fue desarrollado porKenneth De Jong y sus estudiantes, cuando este seencontraba en la Universidad de Pittsburgh.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 69: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Sistemas de Clasificadores

2. John Holland desarrollo, al mismo tiempo que De Jong,otro modelo en el cual los miembros de la poblacion sonreglas individuales y un conjunto de reglas es realmentetoda la poblacion. A este se le denomina el enfoqueMichigan, pues fue desarrollado en la Universidad deMichigan.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 70: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

Sistemas de Clasificadores: El Enfoque Michigan

Los sistemas de clasificadores son un tipo de sistema basadoen reglas con mecanismos generales para procesar reglas enparalelo, a fin de generar, de manera adaptativa, nuevas reglas,ası como para probar la efectividad de las reglas existentes.

Los sistemas de clasificadores proporcionan un marco detrabajo en el cual una poblacion de reglas codificadas comocadenas de bits evolucionan con base en recibir,intermitentemente, estımulos y refuerzo de su ambiente.

El sistema “aprende” que respuestas son apropiadas cuandose presenta un cierto estımulo.

Las reglas en un sistema de clasificadores forman unapoblacion de individuos que evolucionan en el tiempo.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 71: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Enfoque Michigan

Un sistema de clasificadores consta de los siguientescomponentes:

detector y efector,sistema de mensajes (entrada, salida, y listas de mensajesinternos),sistema de reglas (poblacion de clasificadores),sistema de asignacion de credito (el algoritmo bucketbrigade), yprocedimiento genetico (reproduccion de losclasificadores).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 72: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Enfoque Michigan

El ambiente envıa un mensaje (p.ej., un movimiento en un tablero), el cual esaceptado por los detectores del sistema de clasificadores y colocado en lalista de mensajes de entrada.

Los detectores decodifican el mensaje (posiblemente sub-dividiendolo envarios mensajes) y lo colocan en la lista de mensajes internos. Los mensajesactivan clasificadores; los clasificadores activados colocan mensajes en lalista de mensajes.

Estos nuevos mensajes pueden activar a otros clasificadores o pueden irse ala lista de mensajes de salida. En este ultimo caso, los efectores del sistemade clasificadores codifican estos mensajes en un mensaje de salida, el cualse regresa al ambiente. El ambiente evalua la accion del sistema(retroalimentacion del ambiente) y se usa el algoritmo del bucket brigadepara actualizar los clasificadores.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 73: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Enfoque Michigan

El enfoque Michigan puede percibirse como un modelocomputacional de la cognicion: el conocimiento de una entidadcognitiva se expresa como una coleccion de reglas que sufrenmodificaciones en el tiempo.

Podemos evaluar una unidad cognitiva completa en terminosde su interaccion con el ambiente; la evaluacion de una solaregla (o sea, de un solo individuo) no tiene ningun sentido.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 74: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Enfoque Pitt

En el enfoque Pitt, cada individuo en la poblacion codifica todoel conjunto de reglas (es decir, el individuo es una entidadcognitiva).

Estos individuos compiten entre sı, de manera que losindividuos debiles se mueren y los fuertes sobreviven y sereproducen (usando el mecanismo de seleccion y losoperadores convencionales de un algoritmo genetico). En otraspalabras, se aplica un algoritmo genetico al problema deaprendizaje.

Con esto, se evita el problema de la asignacion de credito, parael cual se requiere un metodo heurıstico (como el algoritmo delbucket brigade) para distribuir el credito (positivo o negativo)entre las reglas que cooperaron para producir uncomportamiento deseable o indeseable.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 75: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Enfoque Pitt

El enfoque Pitt, sin embargo, plantea varias preguntasinteresantes. Por ejemplo: ¿debemos usar cadenas de longitudfija para representar las reglas? Esto facilita el funcionamientodel algoritmo genetico, pero puede ser muy restrictivo.

De hecho, pueden usarse representaciones mas complejaspara los sistemas de reglas (p.ej., incorporando logica difusa,entradas que sean numeros reales, operadores booleanos,etc.).

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 76: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Futuro de la Computacion Evolutiva

Metamerismo: El proceso en el cual una unidadestructural es duplicada un cierto numero de veces ydurante ese proceso se reoptimiza para otros usos.Auto-adaptacion: Evitar el uso de parametros ad-hoc enlos algoritmos evolutivos.Tecnicas que exploten arquitecturas paralelas: Esimportante explotar al maximo las arquitecturas paralelasmediante nuevos algoritmos evolutivos. Esto traeraimportantes ganancias en terminos de esfuerzocomputacional, sobre todo al lidiar con problemas delmundo real.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 77: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Futuro de la Computacion Evolutiva

Teorıa: Pruebas de convergencia, modelos matematicosde los algoritmos evolutivos, epıstasis, diversidad, etc.Entender mejor la evolucion natural: Simulacionescomputacionales que permitan entender las complejasinteracciones que ocurren entre los seres vivos.Coevolucion: Muchos investigadores han dirigido susesfuerzos a estudiar mejor la coevolucion como un modeloalternativo para resolver problemas en computacionevolutiva.El algoritmo genetico sin parametros: Es, sin lugar adudas, el sueno de los expertos en computacion evolutiva.

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos

Page 78: Introduccion a la Computaci´ on Evolutiva´delta.cs.cinvestav.mx/~ccoello/compevol/clase15-cinvestav-2019.pdf · Fue propuesto por Coello and Toscano [2001]. Un micro-algoritmo genetico´

El Futuro de la Computacion Evolutiva

Las 3 grandes preguntas:

1) ¿A que tipo de problemas deben aplicarse los algoritmosevolutivos?

2) ¿Como podemos mejorar nuestra comprension delfuncionamiento de los algoritmos evolutivos?

3) ¿Que nuevas ideas pueden aplicarse a la computacionevolutiva a fin de extender el paradigma (p.ej., inspiracionbiologica)?

Carlos A. Coello Coello Introduccion a los Algoritmos Geneticos