Métodos de Optimización Multiobjetivo
Métodos de Optimización Multiobjetivo.
Aplicación a la Computación Distribuida
Dr Miguel Ángel Vega Rodríguez
Dr. Miguel Ángel Vega Rodríguez
Grupo de Investigación ARCO (
http://arco.unex.es
)
Universidad de Extremadura
Universidad de Extremadura
0. Índice de la presentación
Necesidad de Optimización Multiobjetivo (MO)
Alternativas para varios objetivos
Conceptos básicos en MO
Calidad en MO
Métricas de calidad en MO
Algoritmos Evolutivos Multiobjetivo
Algoritmos Evolutivos Multiobjetivo
Aplicación a Computación Distribuida
1. Necesidad de Optimización Multiobjetivo (MO)
En optimización, el paradigma dominante plantea
como principio:
la búsqueda de una decisión
óptima maximizando una
función objetivo
Este paradigma
presenta importantes
debilidades que lo desvían
considerablemente de los procesos reales
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
1. Necesidad de Optimización Multiobjetivo (MO)
Los problemas del mundo real suelen necesitar la
ó d
úl i l
bj i
l
optimización de
múltiples objetivos
a la vez,
además suelen ser
objetivos conflictivos
entre sí
además suelen ser
objetivos conflictivos
entre sí
Ejemplos para computación distribuida
:
• Maximizar ahorro energético
• Maximizar nº de tareas ejecutadas
Mi i i
ti
d
j
ió t t l d l
i
t
• Minimizar tiempo de ejecución total del experimento
• Minimizar coste total del experimento
2. Alternativas para varios objetivos
Transformación de múltiples objetivos a un solo objetivo
)
(
'
...
)
(
'
)
(
'
1
2
2
1
F
x
w
F
x
w
n
F
n
x
w
F
(
)
(
)
(
)
Distancia al valor ideal
Donde:
)
(
'
i
x
F
Distancia al valor peor
Utilidad
Utilidad
Etc.
w
= pesos de importancia relativa
w
i
= pesos de importancia relativa
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
2. Alternativas para varios objetivos
F
2Solución por
Solución por
convergencia
Población inicial
F
1F
1D
t j
2. Alternativas para varios objetivos
Desventajas:
Los pesos tienen que ser preespecificados
Sólo
ofrece
una
solución
por
proceso
de
ti i
ió
li d
optimización realizado
L
f
i
d b
li
b
Las funciones deben normalizarse en base a unos
máximos y mínimos que no se conocen
Sin embargo, este método sigue siendo ampliamente
usado por su simplicidad
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
2. Alternativas para varios objetivos
Técnicas basadas en Pareto
Técnicas basadas en Pareto
Tratan de encontrar en un sólo proceso de
ti i
ió
i
l i
d l
F
t d P
t
optimización varias soluciones del
Frente de Pareto
En varias iteraciones realiza una mejora
i
d l
j
t N D
i
d
progresiva del conjunto No Dominado
2. Alternativas para varios objetivos
F
2(x)
Población final
Población inicial
F
1(x)
Población inicial
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
3. Conceptos básicos en Optimización Multiobjetivo
Maximizar F(x) = (F
( )
(
1
1
(x), F
( ),
2
2
(x), ..., F
( ), ,
n
n
(x))
( ))
Sujeto a las restricciones:
g
1
(x) > L
1
R(x) g
2
(x) > L
2
g
k
(x) > L
k
3. Conceptos básicos en Optimización Multiobjetivo
Dominancia
))
(
),
(
(
)
(
x
1
x
2
x
f
f
f
Maximizar
)
(
2
x
f
A
A
domina a
B
ar
A
B
es dominado por
A
x
imiz
a
(
A
es mejor que
B
)
Ma
x
B
Maximizar
f
1
(
x
)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
3. Conceptos básicos en Optimización Multiobjetivo
Dominancia
))
(
),
(
(
)
(
x
1
x
2
x
f
f
f
Maximizar
)
(
2
x
f
D
)
(
2
x
f
A
A
y
C
no se dominan el uno
m
izar
C
al otro
D
domina a
A
Maxi
m
B
Maximizar
f
1
(
x
)
3. Conceptos básicos en Optimización Multiobjetivo
Soluciones
Soluciones de
)
(
2
x
f
Soluciones
dominadas
Soluciones de
Pareto
zar
M
aximi
z
M
Maximizar
f
1
(
x
)
Soluciones
So uc o es
dominadas
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Frente de Pareto
F ( )
3. Conceptos básicos en Optimización Multiobjetivo
F
max
A
c
Frente de Pareto
F
2(x)
rgético
a
d
ro ene
r
F
min
2
: Ahor
S
B
F
b
jetivo
2
F
1(x)
Objetivo 1: Nº de tareas ejecutadas
O
b
1
( )
j
j
Soluciones no dominadas o de Pareto
:
Son las soluciones factibles tal que no
q
existe otra solución en
S
, para la que F
i
F
i* y F
i> F
i* para al menos un objetivo i
3. Conceptos básicos en Optimización Multiobjetivo
Solución en Optimización Multiobjetivo
Solución en Optimización Multiobjetivo
SATISFACTORIA
SATISFACTORIA
ÓPTIMA
EFICIENTE
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
Estos métodos siguen dos metas:
i. Encontrar soluciones muy cercanas a las soluciones
y
Pareto-óptimas (
Convergencia
)
La calidad de una solución depende de cuantas
soluciones domina dentro de la población
ii. Encontrar soluciones que difieran ampliamente unas
de otras, es decir que estén repartidas en el frente de
P
t (
Di
id d
)
Pareto (
Diversidad
)
Útil el uso de Nichos
Útil el uso de Nichos
Simultaneamente hay que mejorar la
Diversidad
4. Calidad en Optimización Multiobjetivo
Simultaneamente hay que mejorar la
Diversidad
(D) y la
Convergencia
(C)
Pareto Front
Pareto Front
Pareto Front
Pareto Front
)
(
2x
f
)
(
2x
f
)
(
2x
f
)
(
2x
f
)
(
2x
f
)
(
2x
f
ati
o
n
o
f
f
C
D
ati
o
n
o
f
f
ati
o
n
o
f
f
C
D
ati
o
n
o
f
f
ati
o
n
o
f
f
ati
o
n
o
f
f
M
ax
im
iz
a
D
C
M
ax
im
iz
a
M
ax
im
iz
a
D
C
M
ax
im
iz
a
M
ax
im
iz
a
M
ax
im
iz
a
M
D
Current Population
MM
D
Current Population
MMM
Maximization of
f
1(
x
)
Current Population
Maximization of
f
1(
x
)
Current Population
Maximization of
f
1(
x
)
Maximization of
f
1(
x
)
Evolución deseada
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
max. F
2Frente de Pareto
4. Calidad en Optimización Multiobjetivo
(i) Métodos de ordenamiento
En cada población, a cada solución se le asigna un orden
ú
d
i
ió
b l
l i
d l
según su dominación sobre las otras soluciones de la
población:
1. La calidad de cada solución está asociada a su
a a dad de ada so u ó es á aso ada a su
orden
2. La calidad de cada solución está asociada al
número de soluciones que domina o le dominan
número de soluciones que domina o le dominan
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
F
2(x)
n=1
(19)
n=2
(14)
n=3
(8)
n=4
(3)
5
(0)
n=5
(0)
F
1(x)
O d
ió b
d
D
i
i
4. Calidad en Optimización Multiobjetivo
Ordenación basada en Dominancia
Tipos:
Tipos:
•
Rank de dominancia
¿Por cuántas soluciones es
dominada una solución (+1)?
dominada una solución (+1)?
•
Count de dominancia
¿Cuántas soluciones domina una
l
ió ?
solución?
•
Depth de dominancia
¿En qué frente está una solución
l
li
d ?
localizada?
Ejemplos:
•
MOGA, NPGA
MOGA, NPGA
Rank de dominancia
Rank de dominancia
•
NSGA/NSGA-II
Depth de dominancia
•
SPEA/SPEA2
Count + Rank de dominancia
•
SPEA/SPEA2
Count + Rank de dominancia
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
(ii) Técnicas para trabajar con nichos
A. Dividir por nichos (
sharing
)
B. Difusión en paralelo
4. Calidad en Optimización Multiobjetivo
A. División por nichos
Se ideó para la optimización de funciones multimodales
(varios óptimos locales)
(
p
)
Permite la formación de subpoblaciones, permitiendo
buscar en paralelo varios picos de la función
buscar, en paralelo, varios picos de la función
0 4
0.5
0.6
0.7
0.1
0.2
0.3
0.4
0
0
0.2
0.4
0.6
0.8
1
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
¿Cómo actúa?
E l
l
ió d
d
l ió
li
l i
En la evaluación de cada solución penaliza soluciones
muy parecidas a otras soluciones de la población
di t
f
ió d
i h
h
(
h i )
h
ti
l
i i t
i d d
mediante una función de nicho
sh
(
sharing)
sh
tiene las siguientes propiedades:
-
0
sh(d)
1, para todas las distancias
d
-
sh(0)
= 1
4. Calidad en Optimización Multiobjetivo
Ejemplo
Ejemplo
d
d
t
d
0
1
)
(
si
d
d
d
sh
0
de
otro
modo
Donde
y
(radio de nicho) son parámetros dados por
nosotros
Radio de nicho:
mayor distancia para la cual se considera que
y
p
q
dos soluciones están dentro del mismo nicho
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
Si para la solución
x
:
)
)
(
(
)
(
x
sh
d
x
y
m
(
)
(
(
,
)
)
y
sh
d
x
y
x
m
Donde y
son todas las otras soluciones de la población
El nuevo valor de calidad para una solución
x
será:
)
(
)
(
'
x
F
x
F
)
(
)
(
x
m
x
F
4. Calidad en Optimización Multiobjetivo
¿Cómo usar esto en MO?
¿Cómo usar esto en MO?
Cuando se da un orden a una nueva capa de
soluciones no dominadas se les hace penalización
p
por nicho
Se considera luego la siguiente capa de
Se considera luego la siguiente capa de
soluciones no dominadas y se procede igual que
l
t i
para la anterior
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
B. Difusión en paralelo
Método que trabaja con poblaciones en las que las soluciones
q
j
p
q
pueden mezclarse únicamente con sus vecinas
Esto lo hace un método factible para optimización multiobjetivo
x
ii
x
j
4. Calidad en Optimización Multiobjetivo
x
i
y
i
Mezclan
x
j
x
j
Si
d
i
l
Si y
i
domina a x
i
, entonces y
i
reemplaza a x
i
Si y
i
domina a x
j
, entonces y
i
reemplaza a x
j
Luego se pueden aplicar pequeñas variaciones a y
i
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
4. Calidad en Optimización Multiobjetivo
F
2(x)
(iii) Uso de Archivo histórico de las mejores soluciones
4. Calidad en Optimización Multiobjetivo
(iii) Uso de Archivo histórico de las mejores soluciones
F
22(x)
( )
F
2(x)
d
e
d
e
a
x
x
f
g
f
g
b
c
x
x
x
Población actual
F
Archivo histórico
F
1(x)
1
(x)
g
cx
g
• Almacena las mejores soluciones encontradas durante el proceso
• Permite
reinyectar
buenas soluciones cuando la población esté
degenerando o convergiendo rápidamente
• Puede usarse para calcular la calidad de la población actual
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
í
é
4. Calidad en Optimización Multiobjetivo
(iv) Híbridos con otras técnicas
Combinación con Búsqueda tabú
Combinación con Búsqueda tabú
Se generan listas tabú = soluciones ya visitadas
Combinación con enfriamiento simulado
Seleccionar las soluciones de tal forma que la función F sea
minimizada, así:
F = E – HT
Donde E es la energía (
inversa a la calidad
) media del sistema,
H es la entropía (
diversidad
) y T es la temperatura
La diversidad de la población es controlada ajustando el
á
ó
5. Métricas de calidad en Optimización Multiobjetivo
La necesidad
La necesidad
de métricas
d
lid d
A
A
de calidad
B
B
¿Es
A
mejor que
B
?
Independiente de
preferencias usu.
Sí (estrictamente) No
Dependiente de
preferencias usu.
¿Cuánto? ¿En qué aspectos?
Ideal:
métricas de calidad permitan hacer ambas afirmaciones
Ideal:
métricas de calidad permitan hacer ambas afirmaciones
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
5. Métricas de calidad en Optimización Multiobjetivo
Unaria
Binaria
Hipervolumen
Relación de Cobertura
Ahorro energético
Ahorro energético
Ahorro energético
Ahorro energético
B
S(A) = 60%
C(A,B) = 25%
S(A) = 60%
C(B,A) = 75%
S(A)
A
A
Nº tareas ejecutadas
Nº tareas ejecutadas
5. Métricas de calidad en Optimización Multiobjetivo
Hipervolumen
8
Tiempo
6
7
4
5
6
Frente de Pareto
2
3
4
Frente de Pareto
Punto de Referencia
1
2
0
0
2
4
6
8
10
Coste
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
5. Métricas de calidad en Optimización Multiobjetivo
Hipervolumen
Hipervolumen
5. Métricas de calidad en Optimización Multiobjetivo
Hipervolumen
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Hipervolumen
6. Algoritmos Evolutivos Multiobjetivo
Son métodos de optimización basados en
Son métodos de optimización basados en
principios de Inteligencia Artificial (IA)
No garantizan la optimalidad de las soluciones
No garantizan la optimalidad de las soluciones
encontradas
Su propósito es encontrar un conjunto de
p p
j
soluciones cercanas al conjunto óptimo en un
tiempo razonable
6. Algoritmos Evolutivos Multiobjetivo
Casos en los que es interesante usarlos:
Ante problemas que aún no están completamente
Ante problemas que aún no están completamente
caracterizados o son demasiado complejos para permitir
una completa caracterización
una completa caracterización
Cuando la solución requiere de mucho tiempo
Cuando la solución requiere de mucho tiempo
computacional
Cuando no se necesitan las soluciones Óptimas exactas
Ante limitaciones de tiempo o espacio para
almacenamiento de datos
almacenamiento de datos
Como paso intermedio en la aplicación de otro algoritmo
Como paso intermedio en la aplicación de otro algoritmo
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
6. Algoritmos Evolutivos Multiobjetivo
archivo
poblaci
ó
n
evaluar
seleccionar/mezclar
actualizar
truncar
variar
truncar
7. Aplicación a Computación Distribuida
Tiempo de ejecución & Coste (Tesis María Arsuaga-Ríos)
Tiempo de ejecución & Coste (Tesis María Arsuaga Ríos)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
7. Aplicación a Computación Distribuida
Tiempo de ejecución & Coste (Tesis María Arsuaga-Ríos)
Tiempo de ejecución & Coste (Tesis María Arsuaga Ríos)
7. Aplicación a Computación Distribuida
Tiempo de ejecución & Coste (Tesis María Arsuaga-Ríos)
Tiempo de ejecución & Coste (Tesis María Arsuaga Ríos)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
7. Aplicación a Computación Distribuida
Consumo energético & Tiempo (Tesis María Arsuaga-Ríos)
Consumo energético & Tiempo (Tesis María Arsuaga Ríos)
7. Aplicación a Computación Distribuida
Consumo energético & Tiempo (Tesis María Arsuaga-Ríos)
Consumo energético & Tiempo (Tesis María Arsuaga Ríos)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura