SlideShare una empresa de Scribd logo
1 de 119
Descargar para leer sin conexión
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications
Uncertain and dynamic optimization problems: solving strategies and applications

Más contenido relacionado

Similar a Uncertain and dynamic optimization problems: solving strategies and applications

レガシーコードとの付き合い方とテストでの話
レガシーコードとの付き合い方とテストでの話レガシーコードとの付き合い方とテストでの話
レガシーコードとの付き合い方とテストでの話H Iseri
 
時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17horihorio
 
博士論文公聴会
博士論文公聴会博士論文公聴会
博士論文公聴会Makoto SAKAI
 
競技プログラミングについて
競技プログラミングについて競技プログラミングについて
競技プログラミングについてei ushi
 
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけてAgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけてShuji Morisaki
 
How to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented ProgramsHow to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented ProgramsKenta Oono
 
テストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おうテストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おうSayaka Nakano
 
早稲田・鷲崎-ゴール指向の測定によるソフトウェア 品質評価と改善の実践的取組み (三つのコツ、三つの事例)-2015年2月19日
早稲田・鷲崎-ゴール指向の測定によるソフトウェア品質評価と改善の実践的取組み(三つのコツ、三つの事例)-2015年2月19日早稲田・鷲崎-ゴール指向の測定によるソフトウェア品質評価と改善の実践的取組み(三つのコツ、三つの事例)-2015年2月19日
早稲田・鷲崎-ゴール指向の測定によるソフトウェア 品質評価と改善の実践的取組み (三つのコツ、三つの事例)-2015年2月19日Hironori Washizaki
 
機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップDaiyu Hatakeyama
 
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEd
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEdBehalf of panalists: SAP Inside Track Tokyo 2021 - TechEd
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEdRyo Asai
 

Similar a Uncertain and dynamic optimization problems: solving strategies and applications (11)

レガシーコードとの付き合い方とテストでの話
レガシーコードとの付き合い方とテストでの話レガシーコードとの付き合い方とテストでの話
レガシーコードとの付き合い方とテストでの話
 
時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17
 
博士論文公聴会
博士論文公聴会博士論文公聴会
博士論文公聴会
 
競技プログラミングについて
競技プログラミングについて競技プログラミングについて
競技プログラミングについて
 
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけてAgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
 
Endto end
Endto endEndto end
Endto end
 
How to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented ProgramsHow to Develop Experiment-Oriented Programs
How to Develop Experiment-Oriented Programs
 
テストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おうテストアプローチにデータ分析を使おう
テストアプローチにデータ分析を使おう
 
早稲田・鷲崎-ゴール指向の測定によるソフトウェア 品質評価と改善の実践的取組み (三つのコツ、三つの事例)-2015年2月19日
早稲田・鷲崎-ゴール指向の測定によるソフトウェア品質評価と改善の実践的取組み(三つのコツ、三つの事例)-2015年2月19日早稲田・鷲崎-ゴール指向の測定によるソフトウェア品質評価と改善の実践的取組み(三つのコツ、三つの事例)-2015年2月19日
早稲田・鷲崎-ゴール指向の測定によるソフトウェア 品質評価と改善の実践的取組み (三つのコツ、三つの事例)-2015年2月19日
 
機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ
 
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEd
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEdBehalf of panalists: SAP Inside Track Tokyo 2021 - TechEd
Behalf of panalists: SAP Inside Track Tokyo 2021 - TechEd
 

Último

IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Último (9)

IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

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