SlideShare ist ein Scribd-Unternehmen logo
1 von 119
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Ähnlich wie 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
 

Ähnlich wie 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
 

Kürzlich hochgeladen

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
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 

Kürzlich hochgeladen (10)

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
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 

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