Aplicación a la Computación Distribuida

24  Download (0)

Full text

(1)

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

(2)

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

(3)

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

2

Solución por

Solución por

convergencia

Población inicial

F

1

F

1

(4)

D

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

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

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

(5)

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

(6)

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

)

(7)

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

(8)

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

(9)

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

)

(

2

x

f

)

(

2

x

f

)

(

2

x

f

)

(

2

x

f

)

(

2

x

f

)

(

2

x

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

2

Frente de Pareto

(10)

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

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)

(11)

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

(12)

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

(13)

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

(14)

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

(15)

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)

(16)

(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

á

ó

(17)

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

(18)

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

(19)

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

(20)

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

(21)

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)

(22)

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)

(23)

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)

(24)

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

Figure

Updating...

References

Related subjects :