Algoritmos Evolutivos en Nodos Heterogéneos

974 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
974
On SlideShare
0
From Embeds
0
Number of Embeds
638
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Algoritmos Evolutivos en Nodos Heterogéneos

  1. 1. Algoritmos Evolutivos en nodos heterogéneoslunes 26 de noviembre de 2012
  2. 2. Medidas de rendimiento • Esfuerzo numérico (número de evaluaciones): a veces no es constante (ej: PG). La meta del paralelismo no es reducir el número de evaluaciones, sino el tiempo. • Tiempo total: se debe usar el wall clock time. • Ganancia: usar tiempos medios (la E), el algoritmo uniprocesador y monoprocesador deben de ser el mismo y debe ejecutarse hasta encontrar el óptimo. Entonces es justo. • Sm = E[T1]/E[Tm] • Ganancia sublineal: Sm<m • Ganancia lineal sm = 1 • Ganancia superlineal Sm > mlunes 26 de noviembre de 2012
  3. 3. Medidas de rendimiento (II) • Ganancia fuerte: paralelo vs. el algoritmo secuencial más rápido que existe (difícil de encontrar) • Ganancia débil: compara el algoritmo paralelo del investigador con su propia versión secuencial. • Ganancia con parada de solución (NO ME QUEDA CLARO) • Versus panmixia: comparar el algoritmo paralelo con la versión canónica secuencial • Orthodox: comparar el tiempo de ejecución del algoritmo paralelo en un procesador contra el tiempo del mismo algoritmo en m procesadores (mismo código, misma precisión) • Velocidad con esfuerzo predefinidolunes 26 de noviembre de 2012
  4. 4. Medidas de rendimiento (III) • Serial fraction: fm = (1/sm-1/m)/(1-1/m): en un sistema ideal debería ser constante. • Si se mantiene constante, pero la eficiencia es del 87% es un buen resultado, por ejemplo. • Si fm aumenta: granularidad demasiado fina • Si fm disminuye: hay ganancia superlineallunes 26 de noviembre de 2012
  5. 5. Métricas paralelas mal utilizadas • “He comparado a igual número de evaluaciones”: a veces el tiempo de evaluación no es constante (ej. PG). Hay que usar también el tiempo. • Comparar medias/medianas: decir si son estadísticamente diferentes: kolmogorov(datos)? anova:kruskal-wallis • Comparar diferentes algoritmos con diferente precisión: ej: distintos tipos de problemas (50 y 100 ciudades) • Comparar versiones paralelas vs la canónica: GA vs distributed GA. Son DISTINTOS. (Duda: entonces dividir el espacio de búsqueda?) • Usar un esfuerzo predefinido y comparar resultados: está bien, PERO no se puede ver la eficiencia-> usar tiempo en llegar al óptimo.lunes 26 de noviembre de 2012
  6. 6. Ejemplos • Ganancia panmictica vs orthodox: SA vs pSA y pSA1 vs pSAn (no sé cómo se calcula) • Esfuerzo predefinido: las soluciones son distintas • Otras métricas: encontrar el óptimo->el número de evaluaciones es distinto: comparativa justa. Si la ganancia (eficiencia) va disminuyendo pero el serial fraction se mantiene entonces se debe a la parte sequencial intrínseca (no una mala implementación)lunes 26 de noviembre de 2012
  7. 7. Ganancia superlineal en PEAs • Fuente de implementación: usar múltiples procesadores para las operaciones en una población panmictica • Fuente numérica: dividir el espacio de búsqueda • Fuente física: al dividir hay más acceso a cachés y menos a memoria, etc...lunes 26 de noviembre de 2012
  8. 8. Experimentos • Steady state (mu+1) que envía cada 32 generaciones. • Criterio de parada: encontrar el óptimo • Recursos homogéneos vs. heterogéneos: 8 islas. • Resultados: p-values 2 a 2 • Clústers heterogéneos se comportan mejor que homogéneos!lunes 26 de noviembre de 2012
  9. 9. Otro ejemplo • HydroCM: Asignar metaheurísticas más simples a nodos más lentos siguiendo un esquema de distintas moléculaslunes 26 de noviembre de 2012
  10. 10. Ideas • Asignar costes a cada operación en cada máquina (hay mucha diferencia). Hacer experimentos homogéneos y heterogéneos. • Criterio de parada A: gastar X “monedas” • Dividir homogéneamente el número de monedas entre las máquinas • Dividir heterogéneamente el número de monedas entre las máquinas (las lentas reciben menos) • Banca central • Criterio de parada B: alcanzar el óptimo, y comparar el tiempo y el número de monedas gastadas (problema: en teoría debería haber correlación entre el tiempo y las monedas) • ¿Por qué? • Como base para EAs que se adapten a las máquinas donde se ejecutan (por ejemplo, adaptando las tasas teniendo en cuenta las monedas restantes y el precio de las operaciones)lunes 26 de noviembre de 2012
  11. 11. Bibliografía • Alba et al. Heterogeneous Computing and Parallel Genetic Algorithms. Journal of Parallel and Distributed Computing, 62 (2002) • Alba et al. Evaluation of parallel metaheuristics, PPSN 2006, LNCS 4193 (2006) • Domínguez et al. HydroCM: A Hybrid Parallel Search Model for Heterogeneous Platforms. Hybrid Metaheuristics, SCI 434 (2013)lunes 26 de noviembre de 2012

×