Uncertain and dynamic optimization problems: solving strategies and applications

399 views

Published on

Transparencias de la defensa de mi Tesis Doctoral

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Uncertain and dynamic optimization problems: solving strategies and applications

  1. 1. Uncertain and Dynamic Optimization Problems:Solving Strategies and ApplicationsTesis DoctoralDoctorandoIgnacio José García del AmoDirectoresDavid Alejandro PeltaJosé Luis Verdegay Galdeano
  2. 2. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesContenido1 Introduction2 Background3 Mejoras algorítmicas4 SRCS: Statistical Ranking Color Scheme5 Software e implementación6 ConclusionesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  3. 3. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesContenido1 Introduction2 Background3 Mejoras algorítmicas4 SRCS: Statistical Ranking Color Scheme5 Software e implementación6 ConclusionesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  4. 4. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionUncertain and dynamic optimization problemsAntecedents• Many daily life situations can be modeled as optimization problems.• Most of these scenarios change with time, and we may have anincomplete knowledge on some of their variables.Optimization problems• Finding the best solution for an optimization problem is usually adifficult task (NP-Hard complexity, expensive solution evaluation, etc).• We may have limited time or resources ⇒ satisfaction is better thanoptimization.• We need Intelligent Systems capable of dealing with optimizationproblems in the presence of dynamism and uncertainty.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  5. 5. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionUncertain and dynamic optimization problemsWorking framework• Addressing these challenges is the main issue of the research projectP07-TIC-02970 of the Andalusian Government, “Uncertain andDynamic Optimization Problems: A Study on Solving Strategies andApplications” ⇒ main working framework of this thesis.• In this context, the techniques provided by Soft Computing, speciallyMetaheuristics, emerge as ideal candidates.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  6. 6. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionMain scenarioUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  7. 7. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionMain scenarioUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  8. 8. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionObjectivesMain objective: to study, design and implement Soft Computing basedmethods for solving DOPs.1 Is it possible to improve the existent algorithms, and, if possible, whattechniques can be used for that purpose?2 What methodology should be applied in order to compare theperformance of different algorithms on a DOP?3 What difficulties can we find when implementing these DOPs,algorithms and performance measures, and how can we face them?Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  9. 9. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionObjectivesMain objective: to study, design and implement Soft Computing basedmethods for solving DOPs.1 Is it possible to improve the existent algorithms, and, if possible, whattechniques can be used for that purpose?2 What methodology should be applied in order to compare theperformance of different algorithms on a DOP?3 What difficulties can we find when implementing these DOPs,algorithms and performance measures, and how can we face them?Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  10. 10. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionObjectivesMain objective: to study, design and implement Soft Computing basedmethods for solving DOPs.1 Is it possible to improve the existent algorithms, and, if possible, whattechniques can be used for that purpose?2 What methodology should be applied in order to compare theperformance of different algorithms on a DOP?3 What difficulties can we find when implementing these DOPs,algorithms and performance measures, and how can we face them?Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  11. 11. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesIntroductionObjectivesMain objective: to study, design and implement Soft Computing basedmethods for solving DOPs.1 Is it possible to improve the existent algorithms, and, if possible, whattechniques can be used for that purpose?2 What methodology should be applied in order to compare theperformance of different algorithms on a DOP?3 What difficulties can we find when implementing these DOPs,algorithms and performance measures, and how can we face them?Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  12. 12. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesContenido1 Introduction2 Background3 Mejoras algorítmicas4 SRCS: Statistical Ranking Color Scheme5 Software e implementación6 ConclusionesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  13. 13. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesProblemsProblemsUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  14. 14. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesProblemsStatic vs. dynamic optimization problemsstatic dynamicRepresentation of the fitness landscape of an optimization problem (yellowareas indicate local optima).Main differences• In DOPs, some features of the problem change with time.• Algorithms need to find the optimum and track it as close as possible.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  15. 15. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesProblemsDynamic environmentsDynamic environment features• The environment (objective function) changes periodically.• In the time between changes, the environment remains static.• It is accepted that there is not enough time between changes tocompletely search for the optimum from zero.• Changes are assumed to be gradual.Main dynamic parameters• Change frequency: How often do the environment changes?• Severity of the change: How big is the change?Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  16. 16. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesProblemsContinuous DOPs in the literatureMPB• Maximization problem.• Set of m peaks.• Dynamism affects position, height and width ofeach peak independently. 0204060801000204060801000204060MPBClassic static optimization problems• Ackley, Griewank, Rastrigin, etc.• Dynamism is usually added byperiodically shifting the origin ofcoordinates.−20020−200205101520Ackley−100−50050100−100−500501005000100001500020000Sphere−40−2002040−40−2002040123Griewank−4−2024−4−202420406080RastriginUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  17. 17. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesProblemsDiscrete DOPs in the literatureXOR-based dynamic problems• Objective is to match a target bit string.• Evaluation is performed in groups ofbits, using functions like OneMax,Plateau, RoyalRoad or Deceptive.• Dynamism is added by periodicallychanging the target solution using a bitmask and XOR operations.0 1 2 3 401234OneMaxMatched bitsObjectivevalue0 1 2 3 401234PlateauMatched bitsObjectivevalue0 1 2 3 401234Royal RoadMatched bitsObjectivevalue0 1 2 3 401234DeceptiveMatched bitsObjectivevalueOther• Dynamic Vehicule Routing Problem.• Dynamic Knapsack Problem, etcUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  18. 18. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance measuresUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  19. 19. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance in static vs. dynamic problemsstatic problems0timeerror• Algorithm performance evolves as the search advances.• Usually, the final performance value is reported.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  20. 20. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance in static vs. dynamic problemsstatic problems0timeerror• Algorithm performance evolves as the search advances.• Usually, the final performance value is reported.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  21. 21. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance in static vs. dynamic problemsdynamic problems• 1 run = performance through a set of consecutive changes.• Performance between two consecutive changes summarized with avalue (depends on the performance measure used).• Usually, the mean value of these performance measures is reported atthe end of the run.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  22. 22. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance in static vs. dynamic problemsdynamic problems• 1 run = performance through a set of consecutive changes.• Performance between two consecutive changes summarized with avalue (depends on the performance measure used).• Usually, the mean value of these performance measures is reported atthe end of the run.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  23. 23. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance in static vs. dynamic problemsdynamic problems• 1 run = performance through a set of consecutive changes.• Performance between two consecutive changes summarized with avalue (depends on the performance measure used).• Usually, the mean value of these performance measures is reported atthe end of the run.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  24. 24. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesPerformance measuresPerformance measures in the literaturePerformance measures — pag. 22–26 of the memory• Offline Error.• Mean Fitness Error.• Offline Performance.• Wiecker measures.• Other.Statistical Tests — pag. 100–101, 104–106 of the memory• Multiple Comparison tests (ANOVA, Kruskal-Wallis, etc).• Pair-wise tests (Mann-Whitney-Wilcoxon, etc).• Pair-wise corrections (Holm, Bonferroni, etc).• Other.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  25. 25. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesAlgorithmsAlgorithmsUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  26. 26. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesAlgorithmsAlgorithms for static vs. dynamic problemsMain adaptation strategiesMany algorithms for DOPs are based on adapted static optimization algo-rithms. Strategies for handling changes in the environment include:• Do not do anything (algorithms with enough diversity).• Attempt to detect changes in the environment.• Increase diversity though the search.• Reuse previous information (memory).Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  27. 27. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesAlgorithmsAlgorithms in the literatureEvolutionary Algorithms (EA) — pag. 28–29 of the memory• The most used algorithm in DOPs.• Inspired by evolution mechanisms in nature.• Very flexible, generally does not depend on problem-specific features.• Specialized variants aimed at producing higher diversity (e.g., RIGA).mQSO — pag. 29–30 of the memory• A PSO variant specially aimed at DOPs.• Contains multiple (m) swarms.• Two types of particles: trajectory and quantum.• Inter-swarm exclusion mechanism.Other• Ant Colony Optimization, Differential Evolution, etc.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  28. 28. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesAlgorithmsFurther information on DOPsDOP websitehttp://dynamic-optimization.org/Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  29. 29. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesContenido1 Introduction2 Background3 Mejoras algorítmicas4 SRCS: Statistical Ranking Color Scheme5 Software e implementación6 ConclusionesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  30. 30. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesObjetivos• Estudiar técnicas que puedan mejorar los algoritmos para problemasdinámicos.• Nos hemos centrado en metaheurísticas basadas en poblaciones.• Interés especial en el papel de la cooperación entre los elementosconstituyentes de los algoritmos.• Se han desarrollado técnicas para un amplio abanico de familiasalgorítmicas.• En la medida de lo posible, se han desarrollado técnicas que no seanexclusivas de un cierto algoritmo, sino que se puedieran aplicar deforma genérica a otros también.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  31. 31. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOUso de reglas heurísticas en un mQSOUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  32. 32. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOMotivaciónExperimento: análisis de propiedades de partículas — pág. 41–45 de la memoriaObjetivo• Identificar mejor combinaciónde partículas t y q.Escenario de pruebas• mQSO, configuración desde0t-10q a 10t-0q.• Escenario 2 del MPB.Conclusiones• Partículas q más útiles justo después de un cambio en el entorno.• Se sugiere ajustar dinámicamente el número de partículas de cadatipo en función del tiempo transcurrido desde el último cambio.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  33. 33. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOMotivación• A raíz de los resultados anteriores, decidimos incorporar este sistemade ajuste dinámico de partículas en el algoritmo del mQSO.• Esta incorporación se realiza mediante un mecanismo de reglasheurísticas, por su sencillez y versatilidad (ver pág. 46 de la memoriapara detalles de implementación).• Dada la facilidad para crear reglas, decidimos explorar las posibilidadesde este mecanismo e introducimos otras dos reglas más. En total,incorporamos 3 reglas: Change, Rand y Both.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  34. 34. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla ChangeReglaSI ha ocurrido un cambio en el entorno recientementeENTONCEStemporalmente incrementar el número de partículasquantum del swarm y disminuir el número departículas de trayectoria• Después de un cambio.partículas q: 40%,partículas t: 60%.• Resto del tiempo.partículas q: 20%,partículas t: 80%.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  35. 35. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI un swarm tiene un rendimiento maloENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficiente¿Cómo saber si el rendimiento de un swarm es malo?• nos interesa recolocar a los swarms que tengan un rendimiento malopor estar en zonas del espacio de búsqueda con bajo fitness.• mQSO es multiswarm ⇒ aprovechar esta característica y compararrendimiento con el de los otros swarms.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  36. 36. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI un swarm tiene un rendimiento maloENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficiente¿Cómo saber si el rendimiento de un swarm es malo?• nos interesa recolocar a los swarms que tengan un rendimiento malopor estar en zonas del espacio de búsqueda con bajo fitness.• mQSO es multiswarm ⇒ aprovechar esta característica y compararrendimiento con el de los otros swarms.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  37. 37. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI1 el fitness de un swarm está ente los peores Y2 esta situación dura varias iteracionesconsecutivas Y3 el swarm ha convergidoENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficienteUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  38. 38. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI1 el fitness de un swarm está ente los peores Y2 esta situación dura varias iteracionesconsecutivas Y3 el swarm ha convergidoENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficienteUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  39. 39. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI1 el fitness de un swarm está ente los peores Y2 esta situación dura varias iteracionesconsecutivas Y3 el swarm ha convergidoENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficienteUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  40. 40. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla RandReglaSI1 el fitness de un swarm está ente los peores Y2 esta situación dura varias iteracionesconsecutivas Y3 el swarm ha convergidoENTONCESrecolocar el swarm aleatoriamente, o pausarlo si nohay tiempo suficienteUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  41. 41. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla Rand• Los swarms S2, S3 y S4 aún no han convergido ⇒ no hacer nada.• El swarm S1 ha convergido, pero su fitness no es de los peores (está enun pico elevado) ⇒ no hacer nada.• El swarm S5 ha convergido y está en una zona de bajo fitness ⇒recolocar aleatoriamente.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  42. 42. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOPropuesta: Regla Both• Habilitar las reglas Change y Rand simultáneamente.• Si se cumplen los antecedentes de cualquiera de ellas, ejecutar suconsecuente.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  43. 43. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOExperimentaciónValidación de mQSO con reglas — pág. 50–55 de la memoriaObjetivo• Determinar si el mQSO con las nuevas reglas obtiene mejora almQSO tradicional en un amplio abanico de escenarios.Escenarios de pruebas• mQSO con las 3 reglas + mQSO standard como algoritmo base decomparación.• Problemas: MPB y Ackley.• Diferentes valores para la frecuencia de cambio (∆e ∈ [200,5000]).• Diferentes valores para la severidad (s ∈ [2%,20%]).• Medida de rendimiento: offline error.• Tests estadísticos: KW + MWW (Holm).Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  44. 44. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOExperimentaciónValidación de mQSO con reglas — pág. 50–55 de la memoria1000 2000 3000 4000 500046810121416Change frequency (no. of evaluations between changes)Avg.offlineerrormqsomqso−rule−changemqso−rule−randmqso−rule−both5 10 15 204567Severity (%)Avg.offlineerrormqsomqso−rule−changemqso−rule−randmqso−rule−bothResultados (MPB)• Regla Rand mejora significativamente a las demás en todos los casos.• Regla Change funciona bien ante variaciones de frecuencia, pero node severidad.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  45. 45. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOExperimentaciónValidación de mQSO con reglas — pág. 50–55 de la memoria1000 2000 3000 4000 50002345Change frequency (no. of evaluations between changes)Avg.offlineerrormqsomqso−rule−changemqso−rule−randmqso−rule−both5 10 15 202.02.53.03.54.0Severity (%)Avg.offlineerrormqsomqso−rule−changemqso−rule−randmqso−rule−bothResultados (Ackley)• Regla Rand mejora significativamente a las demás en todos los casos.• Regla Change empeora respecto al mQSO.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  46. 46. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesUso de reglas heurísticas en un mQSOResumen• Incorporación de un mecanismo de reglas heurísticas al mQSO, asícomo 3 reglas nuevas.• Regla Rand mejora significativamente a los demás algoritmos en todoslos escenarios probados.• Regla Change mejora en Escenario 2 de MPB (para el que fueconcebida) pero empeora en otros escenarios ⇒ importante realizarexperimentos con diferentes problemas y configuraciones.• Resultados de regla Both a medio camino entre Change y Rand ⇒reglas no aditivas, se contrarrestan entre sí.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  47. 47. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSReglas de cooperación para el algoritmo CSUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  48. 48. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSMotivación• Algoritmo previo, Estrategias Cooperativas (CS), aplicado con éxito aproblemas de optimización estáticos.• Otros algoritmos utilizan muchos subcomponentes de funcionamientosimple ⇒ ¿y si usamos pocos, pero más “inteligentes”?• Múltiples hebras de metaheurísticas de trayectoria (Tabú Search).• Cooperación explícita entre las hebras gracias a un coordinador central.• Algoritmos para problemas dinámicos rara vez utilizan metaheurísticasde trayectoria o cooperación explícita.• Buen candidato para adaptarlo a problemas dinámicos.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  49. 49. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSPropuesta• Conjunto de hebras (solvers) basados en Tabú Search.• Coordinador central recibe información de las hebras y mandainstrucciones para ajustar su funcionamiento.• Instrucciones basadas en reglas.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  50. 50. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSPropuesta• Coordinador usa reglas de tipo si condición entonces acción.• Condición común a todas las reglas: que la hebra que se estáevaluando haya convergido al mismo óptimo más de ϕ veces.• Acción define la regla.Reglas• Best solution. La hebra se reposiciona en el entorno de la mejorsolución encontrada por el algoritmo.• Approaching. La hebra se reposiciona a medio camino de la mejorsolución encontrada por el algoritmo.• Reactive. La hebra se reposiciona en la mejor solución, perturbada deforma proporcional a ϕ.• Visited Region List. La hebra se reposiciona en la mejor solución,pero teniendo en cuenta las regiones más visitadas.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  51. 51. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSExperimentaciónExperimento 1 — pág. 77–85 de la memoriaObjetivo• Validar la primera utilización de CS en problemas dinámicos.Escenario de pruebas• CS-BestSol, mQSO, Agentes.• MPB, Ackley, Griewank, Rastrigin.• Variaciones de severidad y node funciones.• MFE + KW + MWW (Holm)Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  52. 52. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSExperimentaciónExperimento 1 — pág. 77–85 de la memoriaResultados• CS-BestSol superasignificativamente amQSO y Agentesen prácticamentetodos losescenariosprobados.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  53. 53. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSExperimentaciónExperimento 2 — pág. 85–92 de la memoriaObjetivo• Identificar la mejor regla usada por CS.Escenario de pruebas• CS-BestSol, CS-Approach, CS-Reactive, CS-VRL, CS-Independent,mQSO.• Ackley, Griewank, Rastrigin.• Resto de parámetros igual que Experimento 1.Resultados• CS-Approach obtiene en general los mejores resultados.• CS-Reactive obtiene los mejores resultados en los escenarios másdifíciles.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  54. 54. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesReglas de cooperación para el algoritmo CSResumen• Adaptación con éxito del algoritmo CS a problemas dinámicos.• Experimentos demuestran que las reglas de cooperación introducidasen CS mejoran a mQSO y Agentes en una gran variedad de escenarios.• De entre las reglas usadas, la que mejores resultados obtiene es laregla Approach, seguida de la regla Reactive en los escenarios máscomplejos.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  55. 55. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesEsquema de aprendizaje y operador adaptativo paraalgoritmo AgentesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  56. 56. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesMotivación• Algoritmo Agentes desarrollado previamente para problemas deoptimización estáticos.• Múltiples agentes (multipoblación).• Flexible, casi sin parámetros dependientes del problema.• Cooperación implícita entre agentes.• Buen candidato para adaptarlo a problemas dinámicos.• Decidimos investigar la utilización de un esquema de aprendizaje paraseleccionar operadores de mutación en problemas dinámicos discretos.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  57. 57. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesPropuestapág. 57–62 de la memoria• Conjunto de agentes recorren una matriz de soluciones de tamaño fijo.• Agentes comienzan en una casilla, se mueven a la casilla adyacentecon la mejor solución.• Agentes intentan mejorar la solución de la casilla usando un operadorde mutación.• Adaptación a dinamismo basada en detección de cambios +reevaluación de soluciones.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  58. 58. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesPropuestapág. 57–62 de la memoriaCaracterísticas específicas de Agentes para problemas discretos• Agentes aceptan nuevas soluciones obtenidas si mejoran o igualan elfitness ⇒ aumenta diversidad.• Mutación ⇒ 4 operadores MutOpN, basados en invertir N bitsconsecutivos: MutOp1, MutOp2, MutOp3 y MutOp4.Esquema de aprendizaje y operador adaptativo• Operador de mutación adaptativo: usa un esquema de aprendizajepara seleccionar el operador MutOpN más adecuado.• Esquema de aprendizaje: mecanismo sencillo basado en asignaciónde crédito a operadores con más éxito + selección de operador pormétodo ruleta.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  59. 59. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaObjetivo• Validar el esquema de aprendizaje y determinar si el operadoradaptativo es mejor que los demás operadores individuales.Escenario de pruebas• Versiones de Agentes y de un EA genérico con cada operador demutación (MutOp[1–4], Adaptativo)• XOR con funciones OneMax, Plateau, RoyalRoad y Deceptive(solución objetivo de 100 bits).• Variaciones de frecuencia de cambio (∆e ∈ [1200,12000]) y deseveridad (s ∈ [10%,90%]).• Offline performance + KW + MWW (Holm).• Uso de SRCS: zonas blancas indican mejores resultados.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  60. 60. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaAdaptiveMutOp1MutOp2MutOp3MutOp4OneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados (Agentes)• MutOp1 el mejor para la función OneMax, pero malo en las demás.• MutOp4 el mejor para la función Deceptive, pero malo en las demás.• Operador Adaptativo siempre es el mejor o el segundo mejor.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  61. 61. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaAdaptiveMutOp1MutOp2MutOp3MutOp4OneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados (Agentes)• MutOp1 el mejor para la función OneMax, pero malo en las demás.• MutOp4 el mejor para la función Deceptive, pero malo en las demás.• Operador Adaptativo siempre es el mejor o el segundo mejor.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  62. 62. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaAdaptiveMutOp1MutOp2MutOp3MutOp4OneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados (Agentes)• MutOp1 el mejor para la función OneMax, pero malo en las demás.• MutOp4 el mejor para la función Deceptive, pero malo en las demás.• Operador Adaptativo siempre es el mejor o el segundo mejor.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  63. 63. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaAdaptiveMutOp1MutOp2MutOp3MutOp4OneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados (Agentes)• MutOp1 el mejor para la función OneMax, pero malo en las demás.• MutOp4 el mejor para la función Deceptive, pero malo en las demás.• Operador Adaptativo siempre es el mejor o el segundo mejor.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  64. 64. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 1 — pág. 62–65 de la memoriaAdaptiveMutOp1MutOp2MutOp3MutOp4OneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados (EA)• Resultados no tan claros como con el Agentes, pero aún así eloperador Adaptativo queda siempre en posiciones intermedias.• Esquema aprendizaje es siempre al menos mejor que otro operador.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  65. 65. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 2 — pág. 62–66 de la memoriaObjetivo• Comparar Agentes-Adaptativo y EA-Adaptativo con uno de losmejores algoritmos del estado del arte en este problema: AHMA.Escenario de pruebas• Igual que Experimento 1.• Agentes-Adaptativo, EA-Adaptativo, AHMA.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  66. 66. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesExperimentaciónExperimento 2 — pág. 62–66 de la memoriaAgentsEAAHMAOneMax Plateau RoyalRoad DeceptiveFrecuenciaCambioSeveridad0.10.20.50.91200 6000 12000Resultados• Agentes-Adaptativo significativamente mejor en prácticamente todoslos escenarios.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  67. 67. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesEsquema de aprendizaje y operador adaptativo para AgentesResumen• Adaptación con éxito del algoritmo Agentes a problemas dinámicos.• Propuesta de esquema de aprendizaje de gran sencillez pero conresultados prometedores.• Agentes-Adaptativo mejora significativamente a uno de los mejoresalgoritmos del estado del arte (AHMA) en la gran mayoría deescenarios probados.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  68. 68. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesResumen de mejoras algorítmicasResumen de mejoras algorítmicasUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  69. 69. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesResumen de mejoras algorítmicasMejoras propuestas• Reglas heurísticas para el mQSO (Change, Rand y Both).• Reglas de cooperación para el algoritmo CS (BestSol, Approach,Reactive y VRL).• Esquema de aprendizaje y operador adaptativo para algoritmoAgentes.Características comunes de los algoritmos utilizados• Uso de poblaciones de soluciones.• Cooperación entre sus elementos constituyentes:• Explícita: CS.• Implícita: Agentes.• Mixta: mQSO + reglas.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  70. 70. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesResumen de mejoras algorítmicasMecanismo genérico cooperación explícita1 monitorizar activamente el rendimiento de los elementos de unalgoritmo.2 comparar dichos elementos de forma relativa al resto (importante eluso de poblaciones).3 corregir o incluso detener los elementos que estén haciéndolo peor encomparación a los demás.Este mecanismo ha sido incorporado a los algoritmos mQSO-Rand, CS yPSO-CPT (pág. 35–40 de la memoria), obteniendo buenos resultados entodos los casos.Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  71. 71. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesContenido1 Introduction2 Background3 Mejoras algorítmicas4 SRCS: Statistical Ranking Color Scheme5 Software e implementación6 ConclusionesUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012
  72. 72. Introduction Background Mejoras algorítmicas SRCS Software e implementación ConclusionesSRCS: motivación y descripciónSRCS: motivación y descripciónUncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo15 Noviembre 2012

×