Upload
dinhkhuong
View
215
Download
0
Embed Size (px)
Citation preview
Métodos de Optimización MultiobjetivoMétodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida
Dr Miguel Ángel Vega RodríguezDr. Miguel Ángel Vega RodríguezGrupo de Investigación ARCO (http://arco.unex.es)
Universidad de ExtremaduraUniversidad 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 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 loptimizació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• Minimizar coste total del experimento
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
Transformación de múltiples objetivos a un solo objetivo
)('...)(')(' 2211 xxx nnFwFwFwF )()()(
Distancia al valor idealDonde:
)(' xiFDistancia al valor peor
UtilidadUtilidad
Etc.
w = pesos de importancia relativawi = 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
F2
Solución porSolución por convergencia
Población inicial
F1F1
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
D t j
2. Alternativas para varios objetivos
Desventajas:
Los pesos tienen que ser preespecificados
Sólo ofrece una solución por proceso deti i ió li doptimización realizado
L f i d b li b Las funciones deben normalizarse en base a unosmáximos y mínimos que no se conocen
Sin embargo, este método sigue siendo ampliamenteusado 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 ParetoTécnicas basadas en Pareto
Tratan de encontrar en un sólo proceso deti i ió i l i d l F t d P toptimización varias soluciones del Frente de Pareto
En varias iteraciones realiza una mejora i d l j t N D i dprogresiva del conjunto No Dominado
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
F2(x)
Población final
Población inicialF1(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) = (F1(x), F2(x), ..., Fn(x)) ( ) ( 1( ), 2( ), , n( ))
Sujeto a las restricciones:
g1 (x) > L1
R(x) g2 (x) > L2
gk (x) > Lk
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
))(),(()( 21 xxxf ffMaximizar
)(2 xf A A domina a B
ar
AB es dominado por A
xim
iza
(A es mejor que B)
Max
B
Maximizar)(1 xf
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
))(),(()( 21 xxxf ffMaximizar
)(2 xf
D)(2 xf A
A y C no se dominan el uno
miz
ar al otroC
D domina a A
Max
im
B
Maximizar)(1 xf
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
Soluciones
Soluciones de)(2 xf
Soluciones dominadas
Soluciones dePareto
zar
Max
imiz
M
Maximizar )(1 xfSoluciones So uc o esdominadas
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Frente de ParetoF ( )
3. Conceptos básicos en Optimización Multiobjetivo
FmaxA
c
Frente de ParetoF2(x)
rgét
ico
a d
ro e
ner
Fmin2: A
hor
SB
F
bjet
ivo
2
F1(x)Objetivo 1: Nº de tareas ejecutadas
Ob
1( )j j
Soluciones no dominadas o de Pareto: Son las soluciones factibles tal que no qexiste otra solución en S, para la que Fi Fi* y Fi > Fi* para al menos un objetivo i
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
Solución en Optimización MultiobjetivoSolución en Optimización Multiobjetivo
SATISFACTORIASATISFACTORIA
Ó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 solucionesyPareto-óptimas (Convergencia)
La calidad de una solución depende de cuantas soluciones domina dentro de la población
ii. Encontrar soluciones que difieran ampliamente unasde otras, es decir que estén repartidas en el frente deP t (Di id d)Pareto (Diversidad)
Útil el uso de NichosÚtil el uso de Nichos
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Simultaneamente hay que mejorar la Diversidad4. Calidad en Optimización Multiobjetivo
Simultaneamente hay que mejorar la Diversidad(D) y la Convergencia (C)
Pareto FrontPareto Front Pareto FrontPareto Front
)( 2x
f)
( 2x
f)
( 2x
f
)( 2x
f)
( 2x
f)
( 2x
f
atio
n of
f
CDatio
n of
fat
ion
off
CD atio
n of
fat
ion
off
atio
n of
f
Max
imiz
a CD
Max
imiz
aM
axim
iza CD
Max
imiz
aM
axim
iza
Max
imiz
a
M
D
Current Population
MM
D
Current PopulationMMM
Maximization of )(1 xfCurrent Population
Maximization of )(1 xfCurrent Population
Maximization of )(1 xfMaximization of )(1 xf
Evolución deseadaMé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. F2
Frente de Pareto
min. F1
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
(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 lsegún su dominación sobre las otras soluciones de la
población:
1. La calidad de cada solución está asociada a sua a dad de ada so u ó es á aso ada a suorden
2. La calidad de cada solución está asociada alnúmero de soluciones que domina o le dominannú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
F2(x)
n=1 (19)n=2 (14)
n=3 (8)
n=4 (3)
5 (0)n=5 (0)
F1(x)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
O d ió b d D i i4. Calidad en Optimización Multiobjetivo
Ordenación basada en DominanciaTipos: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 Rank de dominanciaMOGA, NPGA 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
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
A. División por nichosSe 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ónbuscar, en paralelo, varios picos de la función
0 40.50.60.7
0.10.20.30.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 iEn 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
- limd sh(d) = 0
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
EjemploEjemplo
d
dtd0
1)(
dsiddsh
modootrode0
Donde y (radio de nicho) son parámetros dados por nosotros
Radio de nicho: mayor distancia para la cual se considera que y p qdos 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:
))(()( yxdshxm )),(()( yyxdshxm
Donde y son todas las otras soluciones de la población
El nuevo valor de calidad para una solución x será:
)()(' xFxF )(
)(xm
xF
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 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 ppor nicho
Se considera luego la siguiente capa deSe considera luego la siguiente capa de soluciones no dominadas y se procede igual que
l t ipara 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 solucionesq j p qpueden mezclarse únicamente con sus vecinas
Esto lo hace un método factible para optimización multiobjetivo
xii
xj
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
xi
yiMezclan
xjxj
Si d i lSi yi domina a xi, entonces yi reemplaza a xiSi yi domina a xj, entonces yi reemplaza a xj
Luego se pueden aplicar pequeñas variaciones a yi
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
F2(x)
F1(x)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
(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
F2(x) F2(x)2( )
d
e
d
eax
xf
g
f
g
b
c
x
x
x
Población actual Archivo histórico F1(x)F1(x)
g gcx
• 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 simuladoSeleccionar las soluciones de tal forma que la función F seaminimizada, 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á óparámetro T en cada nueva iteración de acuerdo a cierta regla
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
La necesidadLa necesidad de métricas d lid d
A Ade calidad
BB
¿Es A mejor que B?Independiente depreferencias usu. Sí (estrictamente) No
Dependiente depreferencias usu. ¿Cuánto? ¿En qué aspectos?
Ideal: métricas de calidad permitan hacer ambas afirmacionesIdeal: 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 BinariaHipervolumen Relación de Cobertura
Ahorro energético Ahorro energéticoAhorro energético Ahorro energético
BS(A) = 60%
C(A,B) = 25%S(A) = 60%
C(B,A) = 75%
S(A)A
A
Nº tareas ejecutadas Nº tareas ejecutadas
A
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
8Tiempo
6
7
4
5
6
Frente de Pareto
2
3
4 Frente de Pareto
Punto de Referencia
1
2
00 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
HipervolumenMétodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Hipervolumen
5. Métricas de calidad en Optimización Multiobjetivo
HipervolumenMé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 solucionesNo garantizan la optimalidad de las soluciones encontradas
Su propósito es encontrar un conjunto de p p jsoluciones cercanas al conjunto óptimo en un tiempo razonabletiempo razonable
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
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ónuna 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 datosalmacenamiento 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
archivopoblación
evaluarseleccionar/mezclar
actualizartruncar
variartruncar
nueva población nuevo archivo
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)
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)
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)
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)
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)
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)
Métodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida. ARCO.unex.es, Dept. TC2, Univ. Extremadura
Métodos de Optimización MultiobjetivoMétodos de Optimización Multiobjetivo. Aplicación a la Computación Distribuida
Dr Miguel Ángel Vega RodríguezDr. Miguel Ángel Vega RodríguezGrupo de Investigación ARCO (http://arco.unex.es)
Universidad de ExtremaduraUniversidad de Extremadura