Uncertain and dynamic optimization problems: solving strategies and applications
1. Uncertain and Dynamic Optimization Problems:
Solving Strategies and Applications
Tesis Doctoral
Doctorando
Ignacio José García del Amo
Directores
David Alejandro Pelta
José Luis Verdegay Galdeano
2. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Contenido
1 Introduction
2 Background
3 Mejoras algorítmicas
4 SRCS: Statistical Ranking Color Scheme
5 Software e implementación
6 Conclusiones
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
3. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Contenido
1 Introduction
2 Background
3 Mejoras algorítmicas
4 SRCS: Statistical Ranking Color Scheme
5 Software e implementación
6 Conclusiones
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
4. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Uncertain and dynamic optimization problems
Antecedents
• Many daily life situations can be modeled as optimization problems.
• Most of these scenarios change with time, and we may have an
incomplete knowledge on some of their variables.
Optimization problems
• Finding the best solution for an optimization problem is usually a
difficult task (NP-Hard complexity, expensive solution evaluation, etc).
• We may have limited time or resources ⇒ satisfaction is better than
optimization.
• We need Intelligent Systems capable of dealing with optimization
problems in the presence of dynamism and uncertainty.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
5. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Uncertain and dynamic optimization problems
Working framework
• Addressing these challenges is the main issue of the research project
P07-TIC-02970 of the Andalusian Government, “Uncertain and
Dynamic Optimization Problems: A Study on Solving Strategies and
Applications” ⇒ main working framework of this thesis.
• In this context, the techniques provided by Soft Computing, specially
Metaheuristics, emerge as ideal candidates.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
6. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Main scenario
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
7. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Main scenario
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
8. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Objectives
Main objective: to study, design and implement Soft Computing based
methods for solving DOPs.
1 Is it possible to improve the existent algorithms, and, if possible, what
techniques can be used for that purpose?
2 What methodology should be applied in order to compare the
performance 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 Amo
15 Noviembre 2012
9. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Objectives
Main objective: to study, design and implement Soft Computing based
methods for solving DOPs.
1 Is it possible to improve the existent algorithms, and, if possible, what
techniques can be used for that purpose?
2 What methodology should be applied in order to compare the
performance 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 Amo
15 Noviembre 2012
10. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Objectives
Main objective: to study, design and implement Soft Computing based
methods for solving DOPs.
1 Is it possible to improve the existent algorithms, and, if possible, what
techniques can be used for that purpose?
2 What methodology should be applied in order to compare the
performance 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 Amo
15 Noviembre 2012
11. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Introduction
Objectives
Main objective: to study, design and implement Soft Computing based
methods for solving DOPs.
1 Is it possible to improve the existent algorithms, and, if possible, what
techniques can be used for that purpose?
2 What methodology should be applied in order to compare the
performance 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 Amo
15 Noviembre 2012
12. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Contenido
1 Introduction
2 Background
3 Mejoras algorítmicas
4 SRCS: Statistical Ranking Color Scheme
5 Software e implementación
6 Conclusiones
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
13. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Problems
Problems
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
14. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Problems
Static vs. dynamic optimization problems
static dynamic
Representation of the fitness landscape of an optimization problem (yellow
areas 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 Amo
15 Noviembre 2012
15. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Problems
Dynamic environments
Dynamic 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 to
completely 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 Amo
15 Noviembre 2012
16. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Problems
Continuous DOPs in the literature
MPB
• Maximization problem.
• Set of m peaks.
• Dynamism affects position, height and width of
each peak independently. 0
20
40
60
80
100
0
20
40
60
80
100
0
20
40
60
MPB
Classic static optimization problems
• Ackley, Griewank, Rastrigin, etc.
• Dynamism is usually added by
periodically shifting the origin of
coordinates.
−20
0
20
−20
0
20
5
10
15
20
Ackley
−100
−50
0
50
100
−100
−50
0
50
100
5000
10000
15000
20000
Sphere
−40
−20
0
20
40
−40
−20
0
20
40
1
2
3
Griewank
−4
−2
0
2
4
−4
−2
0
2
4
20
40
60
80
Rastrigin
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
17. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Problems
Discrete DOPs in the literature
XOR-based dynamic problems
• Objective is to match a target bit string.
• Evaluation is performed in groups of
bits, using functions like OneMax,
Plateau, RoyalRoad or Deceptive.
• Dynamism is added by periodically
changing the target solution using a bit
mask and XOR operations.
0 1 2 3 4
01234
OneMax
Matched bits
Objectivevalue
0 1 2 3 4
01234
Plateau
Matched bits
Objectivevalue
0 1 2 3 4
01234
Royal Road
Matched bits
Objectivevalue
0 1 2 3 4
01234
Deceptive
Matched bits
Objectivevalue
Other
• Dynamic Vehicule Routing Problem.
• Dynamic Knapsack Problem, etc
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
18. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance measures
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
19. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance in static vs. dynamic problems
static problems
0
time
error
• 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 Amo
15 Noviembre 2012
20. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance in static vs. dynamic problems
static problems
0
time
error
• 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 Amo
15 Noviembre 2012
21. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance in static vs. dynamic problems
dynamic problems
• 1 run = performance through a set of consecutive changes.
• Performance between two consecutive changes summarized with a
value (depends on the performance measure used).
• Usually, the mean value of these performance measures is reported at
the end of the run.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
22. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance in static vs. dynamic problems
dynamic problems
• 1 run = performance through a set of consecutive changes.
• Performance between two consecutive changes summarized with a
value (depends on the performance measure used).
• Usually, the mean value of these performance measures is reported at
the end of the run.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
23. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance in static vs. dynamic problems
dynamic problems
• 1 run = performance through a set of consecutive changes.
• Performance between two consecutive changes summarized with a
value (depends on the performance measure used).
• Usually, the mean value of these performance measures is reported at
the end of the run.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
24. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Performance measures
Performance measures in the literature
Performance 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 Amo
15 Noviembre 2012
25. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Algorithms
Algorithms
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
26. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Algorithms
Algorithms for static vs. dynamic problems
Main adaptation strategies
Many 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 Amo
15 Noviembre 2012
27. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Algorithms
Algorithms in the literature
Evolutionary 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 Amo
15 Noviembre 2012
28. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Algorithms
Further information on DOPs
DOP website
http://dynamic-optimization.org/
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
29. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Contenido
1 Introduction
2 Background
3 Mejoras algorítmicas
4 SRCS: Statistical Ranking Color Scheme
5 Software e implementación
6 Conclusiones
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
30. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Objetivos
• Estudiar técnicas que puedan mejorar los algoritmos para problemas
dinámicos.
• Nos hemos centrado en metaheurísticas basadas en poblaciones.
• Interés especial en el papel de la cooperación entre los elementos
constituyentes de los algoritmos.
• Se han desarrollado técnicas para un amplio abanico de familias
algorítmicas.
• En la medida de lo posible, se han desarrollado técnicas que no sean
exclusivas de un cierto algoritmo, sino que se puedieran aplicar de
forma genérica a otros también.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
31. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Uso de reglas heurísticas en un mQSO
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
32. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Motivación
Experimento: análisis de propiedades de partículas — pág. 41–45 de la memoria
Objetivo
• Identificar mejor combinación
de partículas t y q.
Escenario de pruebas
• mQSO, configuración desde
0t-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 cada
tipo en función del tiempo transcurrido desde el último cambio.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
33. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Motivación
• A raíz de los resultados anteriores, decidimos incorporar este sistema
de ajuste dinámico de partículas en el algoritmo del mQSO.
• Esta incorporación se realiza mediante un mecanismo de reglas
heurísticas, por su sencillez y versatilidad (ver pág. 46 de la memoria
para detalles de implementación).
• Dada la facilidad para crear reglas, decidimos explorar las posibilidades
de 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 Amo
15 Noviembre 2012
34. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Change
Regla
SI ha ocurrido un cambio en el entorno recientemente
ENTONCES
temporalmente incrementar el número de partículas
quantum del swarm y disminuir el número de
partí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 Amo
15 Noviembre 2012
35. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI un swarm tiene un rendimiento malo
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
¿Cómo saber si el rendimiento de un swarm es malo?
• nos interesa recolocar a los swarms que tengan un rendimiento malo
por estar en zonas del espacio de búsqueda con bajo fitness.
• mQSO es multiswarm ⇒ aprovechar esta característica y comparar
rendimiento con el de los otros swarms.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
36. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI un swarm tiene un rendimiento malo
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
¿Cómo saber si el rendimiento de un swarm es malo?
• nos interesa recolocar a los swarms que tengan un rendimiento malo
por estar en zonas del espacio de búsqueda con bajo fitness.
• mQSO es multiswarm ⇒ aprovechar esta característica y comparar
rendimiento con el de los otros swarms.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
37. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI
1 el fitness de un swarm está ente los peores Y
2 esta situación dura varias iteraciones
consecutivas Y
3 el swarm ha convergido
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
38. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI
1 el fitness de un swarm está ente los peores Y
2 esta situación dura varias iteraciones
consecutivas Y
3 el swarm ha convergido
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
39. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI
1 el fitness de un swarm está ente los peores Y
2 esta situación dura varias iteraciones
consecutivas Y
3 el swarm ha convergido
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
40. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Rand
Regla
SI
1 el fitness de un swarm está ente los peores Y
2 esta situación dura varias iteraciones
consecutivas Y
3 el swarm ha convergido
ENTONCES
recolocar el swarm aleatoriamente, o pausarlo si no
hay tiempo suficiente
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
41. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: 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á en
un 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 Amo
15 Noviembre 2012
42. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Propuesta: Regla Both
• Habilitar las reglas Change y Rand simultáneamente.
• Si se cumplen los antecedentes de cualquiera de ellas, ejecutar su
consecuente.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
43. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Experimentación
Validación de mQSO con reglas — pág. 50–55 de la memoria
Objetivo
• Determinar si el mQSO con las nuevas reglas obtiene mejora al
mQSO tradicional en un amplio abanico de escenarios.
Escenarios de pruebas
• mQSO con las 3 reglas + mQSO standard como algoritmo base de
comparació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 Amo
15 Noviembre 2012
44. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Experimentación
Validación de mQSO con reglas — pág. 50–55 de la memoria
1000 2000 3000 4000 5000
46810121416
Change frequency (no. of evaluations between changes)
Avg.offlineerror
mqso
mqso−rule−change
mqso−rule−rand
mqso−rule−both
5 10 15 20
4567
Severity (%)
Avg.offlineerror
mqso
mqso−rule−change
mqso−rule−rand
mqso−rule−both
Resultados (MPB)
• Regla Rand mejora significativamente a las demás en todos los casos.
• Regla Change funciona bien ante variaciones de frecuencia, pero no
de severidad.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
45. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Experimentación
Validación de mQSO con reglas — pág. 50–55 de la memoria
1000 2000 3000 4000 5000
2345
Change frequency (no. of evaluations between changes)
Avg.offlineerror
mqso
mqso−rule−change
mqso−rule−rand
mqso−rule−both
5 10 15 20
2.02.53.03.54.0
Severity (%)
Avg.offlineerror
mqso
mqso−rule−change
mqso−rule−rand
mqso−rule−both
Resultados (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 Amo
15 Noviembre 2012
46. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Uso de reglas heurísticas en un mQSO
Resumen
• 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 todos
los escenarios probados.
• Regla Change mejora en Escenario 2 de MPB (para el que fue
concebida) pero empeora en otros escenarios ⇒ importante realizar
experimentos 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 Amo
15 Noviembre 2012
47. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Reglas de cooperación para el algoritmo CS
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
48. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Motivación
• Algoritmo previo, Estrategias Cooperativas (CS), aplicado con éxito a
problemas de optimización estáticos.
• Otros algoritmos utilizan muchos subcomponentes de funcionamiento
simple ⇒ ¿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ísticas
de 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 Amo
15 Noviembre 2012
49. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Propuesta
• Conjunto de hebras (solvers) basados en Tabú Search.
• Coordinador central recibe información de las hebras y manda
instrucciones para ajustar su funcionamiento.
• Instrucciones basadas en reglas.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
50. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Propuesta
• 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 mejor
solución encontrada por el algoritmo.
• Approaching. La hebra se reposiciona a medio camino de la mejor
solución encontrada por el algoritmo.
• Reactive. La hebra se reposiciona en la mejor solución, perturbada de
forma 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 Amo
15 Noviembre 2012
51. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Experimentación
Experimento 1 — pág. 77–85 de la memoria
Objetivo
• 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 no
de funciones.
• MFE + KW + MWW (Holm)
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
52. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Experimentación
Experimento 1 — pág. 77–85 de la memoria
Resultados
• CS-BestSol supera
significativamente a
mQSO y Agentes
en prácticamente
todos los
escenarios
probados.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
53. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Experimentación
Experimento 2 — pág. 85–92 de la memoria
Objetivo
• 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ás
difíciles.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
54. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Reglas de cooperación para el algoritmo CS
Resumen
• Adaptación con éxito del algoritmo CS a problemas dinámicos.
• Experimentos demuestran que las reglas de cooperación introducidas
en CS mejoran a mQSO y Agentes en una gran variedad de escenarios.
• De entre las reglas usadas, la que mejores resultados obtiene es la
regla Approach, seguida de la regla Reactive en los escenarios más
complejos.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
55. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Esquema de aprendizaje y operador adaptativo para
algoritmo Agentes
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
56. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Motivación
• Algoritmo Agentes desarrollado previamente para problemas de
optimizació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 para
seleccionar operadores de mutación en problemas dinámicos discretos.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
57. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Propuesta
pá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 adyacente
con la mejor solución.
• Agentes intentan mejorar la solución de la casilla usando un operador
de 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 Amo
15 Noviembre 2012
58. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Propuesta
pág. 57–62 de la memoria
Características específicas de Agentes para problemas discretos
• Agentes aceptan nuevas soluciones obtenidas si mejoran o igualan el
fitness ⇒ aumenta diversidad.
• Mutación ⇒ 4 operadores MutOpN, basados en invertir N bits
consecutivos: MutOp1, MutOp2, MutOp3 y MutOp4.
Esquema de aprendizaje y operador adaptativo
• Operador de mutación adaptativo: usa un esquema de aprendizaje
para seleccionar el operador MutOpN más adecuado.
• Esquema de aprendizaje: mecanismo sencillo basado en asignación
de crédito a operadores con más éxito + selección de operador por
método ruleta.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
59. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Objetivo
• Validar el esquema de aprendizaje y determinar si el operador
adaptativo es mejor que los demás operadores individuales.
Escenario de pruebas
• Versiones de Agentes y de un EA genérico con cada operador de
mutació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 de
severidad (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 Amo
15 Noviembre 2012
60. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Adaptive
MutOp1
MutOp2
MutOp3
MutOp4
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados (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 Amo
15 Noviembre 2012
61. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Adaptive
MutOp1
MutOp2
MutOp3
MutOp4
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados (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 Amo
15 Noviembre 2012
62. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Adaptive
MutOp1
MutOp2
MutOp3
MutOp4
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados (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 Amo
15 Noviembre 2012
63. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Adaptive
MutOp1
MutOp2
MutOp3
MutOp4
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados (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 Amo
15 Noviembre 2012
64. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 1 — pág. 62–65 de la memoria
Adaptive
MutOp1
MutOp2
MutOp3
MutOp4
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados (EA)
• Resultados no tan claros como con el Agentes, pero aún así el
operador 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 Amo
15 Noviembre 2012
65. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 2 — pág. 62–66 de la memoria
Objetivo
• Comparar Agentes-Adaptativo y EA-Adaptativo con uno de los
mejores 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 Amo
15 Noviembre 2012
66. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Experimentación
Experimento 2 — pág. 62–66 de la memoria
Agents
EA
AHMA
OneMax Plateau RoyalRoad Deceptive
Frecuencia
Cambio
Severidad
0.1
0.2
0.5
0.9
1200 6000 12000
Resultados
• Agentes-Adaptativo significativamente mejor en prácticamente todos
los escenarios.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
67. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Esquema de aprendizaje y operador adaptativo para Agentes
Resumen
• Adaptación con éxito del algoritmo Agentes a problemas dinámicos.
• Propuesta de esquema de aprendizaje de gran sencillez pero con
resultados prometedores.
• Agentes-Adaptativo mejora significativamente a uno de los mejores
algoritmos del estado del arte (AHMA) en la gran mayoría de
escenarios probados.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
68. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Resumen de mejoras algorítmicas
Resumen de mejoras algorítmicas
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
69. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Resumen de mejoras algorítmicas
Mejoras 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 algoritmo
Agentes.
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 Amo
15 Noviembre 2012
70. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Resumen de mejoras algorítmicas
Mecanismo genérico cooperación explícita
1 monitorizar activamente el rendimiento de los elementos de un
algoritmo.
2 comparar dichos elementos de forma relativa al resto (importante el
uso de poblaciones).
3 corregir o incluso detener los elementos que estén haciéndolo peor en
comparación a los demás.
Este mecanismo ha sido incorporado a los algoritmos mQSO-Rand, CS y
PSO-CPT (pág. 35–40 de la memoria), obteniendo buenos resultados en
todos los casos.
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
71. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
Contenido
1 Introduction
2 Background
3 Mejoras algorítmicas
4 SRCS: Statistical Ranking Color Scheme
5 Software e implementación
6 Conclusiones
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012
72. Introduction Background Mejoras algorítmicas SRCS Software e implementación Conclusiones
SRCS: motivación y descripción
SRCS: motivación y descripción
Uncertain and Dynamic Optimization Problems: Solving Strategies and Applications - Ignacio José García del Amo
15 Noviembre 2012