23
Modelado de metaheur´ ısticas e hiperheur´ ısticas en memoria paralela para autooptimizaci´on Jos´ e Mat´ ıas Cutillas Lozano y Domingo Gim´ enez Departamento de Inform´ atica y Sistemas, Universidad de Murcia PPMG, 6 marzo 2015 Cutillas-Lozano, Gim´ enez (UMU) Autooptimizaci´ondemetaheur´ ısticas PPMG, 6 marzo 2015 1 / 23

Modelado de metaheur´ısticas e hiperheur´ısticas en

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modelado de metaheur´ısticas e hiperheur´ısticas en

Modelado de metaheurısticas e hiperheurısticas en

memoria paralela para autooptimizacion

Jose Matıas Cutillas Lozano y Domingo GimenezDepartamento de Informatica y Sistemas, Universidad de Murcia

PPMG, 6 marzo 2015

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 1 / 23

Page 2: Modelado de metaheur´ısticas e hiperheur´ısticas en

Contenido

1 Motivacion

2 Un esquema parametrizado de memoria compartida

3 Modelado y autooptimizacion

4 Resultados experimentales

5 Conclusion

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 2 / 23

Page 3: Modelado de metaheur´ısticas e hiperheur´ısticas en

Motivacion

Metaheurısticas e hiperheurısticas de memoria compartida

parametrizadas

El mismo esquema que se utiliza para metaheurısticas (MS) se puedeutilizar para hiperheurısticas (HMS).

Una metaheurıstica particular se obtiene seleccionando el valor de losParametros Metaheurısticos en el esquema.

Se ejecuta en paralelo seleccionando el valor de unos Parametros de

Paralelismo.

Si el valor de los parametros se obtiene de forma mecanica se tieneAutooptimizacion.

Para seleccionar de forma automatica valores apropiados para losParametros de Paralelismo se modela el tiempo de ejecucion de cadarutina del esquema unificado.

El modelo depende de los valores de los Parametros Metaheurısticos,y se obtendran valores distintos de los Parametros de Paralelismo paradistinas metaheurısticas e hiperheurısticas.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 3 / 23

Page 4: Modelado de metaheur´ısticas e hiperheur´ısticas en

Motivacion

Hiperheurısticas basadas en esquemas metaheurısticos

parametrizados

Se trata de seleccionar los valores de los Parametros Metaheurısticos(la metaheurıstica) en el esquema unificado.

Las hiperheurısticas se desarrollan con el mismo esquema unificado

y el problema es obtener la metaheurıstica optima para nuestroproblema usando la hiperheurıstica.

Al ejecutar hiperheurısticas se aplican muchas metaheurısticas ⇒tiempo de ejecucion muy alto ⇒ paralelismo.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 4 / 23

Page 5: Modelado de metaheur´ısticas e hiperheur´ısticas en

Un esquema parametrizado de memoria compartida

Esquema parametrizado de memoria compartida

Initialize(S ,ParamIni ,ThreadsIni)while (not EndCondition(S ,ParamEnd ,ThreadsEnd))

SS = Select(S ,ParamSel ,ThreadsSel)SS1 = Combine(SS ,ParamCom,ThreadsCom)SS2 = Improve(SS1,ParamImp,ThreadsImp)S = Include(SS2,ParamInc ,ThreadsInc)

Paralelizacion independiente de las funciones,con Parametros de paralelismo (numero de threads) para cada funcion.El valor optimo de los Parametros de paralelismo depende de los valores delos Parametros metaheurısticos (de la metaheurıstica o combinacion demetaheurısticas).

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 5 / 23

Page 6: Modelado de metaheur´ısticas e hiperheur´ısticas en

Un esquema parametrizado de memoria compartida

Modelado de las rutinas basicas

Se crea un modelo del tiempo de ejecucion para cada rutina delesquema.

Hay rutinas de paralelizacion de un nivel (un unico thread), yparalelizacion a dos niveles (dos threads).

En los modelos aparecen parametros del tamano del problema y de lametaheurıstica.

Los Parametros del Sistemas se obtienen con experimentacion alinstalar la rutina en el sistema, y dependen del sistema y de laimplementacion.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 6 / 23

Page 7: Modelado de metaheur´ısticas e hiperheur´ısticas en

Un esquema parametrizado de memoria compartida

Posibles Parametros metaheurısticos

Dependen de las metaheurısticas basicas y su implementacion.Consideramos GRASP, Algoritmos Geneticos, Busqueda Dispersa yBusqueda Tabu.

Initialize INEIni Initial Number of ElementsFNEIni Final Number of Elements after initializationPEIIni Percentage of Elements to Improve in the initializationIIEIni Intensification in the Improvement of initial ElementsSTMIni Short-Term tabu Memory in the improvement of initial elements

EndCondition MNIEnd Maximum Number of IterationsNIREnd maximun Number of Iterations with Repetition of the best solution

Select NBESel Number of Best Elements selected for combinationNWESel Number of Worst Elements selected for combination

Combine NBBCom Number of Best-Best elements combinationsNBWCom Number of Best-Worst elements combinationsNWWCom Number of Worst-Worst elements combinations

Improve PEIImp Percentage of Elements to Improve after combinationIIEImp Intensification in the Improvement of Elements after combinationSMIImp Short-term tabu Memory in the Improvement after combinationPEDImp Percentage of Elements to DiversifyIDEImp Intensification in the Diversification of ElementsSMDImp Short-term tabu Memory in the Diversification

Include NBEInc Number of Best Elements to include in the reference setLTMInc Long-Term tabu Memory between iterations

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 7 / 23

Page 8: Modelado de metaheur´ısticas e hiperheur´ısticas en

Un esquema parametrizado de memoria compartida

Posibles Parametros de paralelismo

Dependen de como se implemente la paralelizacion.

Initialize TGEIni number of Threads for the initial Generation of ElementsTI1Ini number of Threads in the Improvement after initialization, first levelTI2Ini number of Threads in the Improvement after initialization, second level

Combine TCPCom number of Threads for the Combination of Pairs of elementsImprove TR1Imp number of Threads in the improvement of the Reference set, first level

TR2Imp number of Threads in the improvement of the Reference set, second levelTC1Imp number of Threads in the improvement of elements obtained by Combination, first levelTC2Imp number of Threads in the improvement of elements obtained by Combination, second levelTD1Imp number of Threads in the improvement of elements obtained by Diversification, first levelTD2Imp number of Threads in the improvement of elements obtained by Diversification, second level

Include TIEInc number of Threads for the Inclusion of Elements in the reference set

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 8 / 23

Page 9: Modelado de metaheur´ısticas e hiperheur´ısticas en

Modelado y autooptimizacion

Autooptinizacion del esquema de memoria compartida

Se aplica autooptimizacion para reducir el tiempo de ejecucionindependientemente del usuario.

Se puede aplicar a metaheurısticas e hiperheurısticas, al usar el mismoesquema, pero da valores distintos debido al uso de Parametrosmetaheurısticos distintos y a costes diferentes en las operacionesbasicas.

Se trata de obtener valores satisfactorios para los Parametros deparalelismo (ThreadsIni , ThreadsCom, ThreadsImp y ThreadsInc).

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 9 / 23

Page 10: Modelado de metaheur´ısticas e hiperheur´ısticas en

Modelado y autooptimizacion

Modelos del tiempo de ejecucion

Paralelismo de un nivel: t1−level =kg ·NE

p+ kp · p

kg representa el coste del trabajo con un individuo, kp el coste de generarun thread, p el numero de threads.

Paralelismo de dos niveles: t2−levels =ki ·

NE ·IP·II100

p1·p2+ kp,1 · p1 + kp,2 · p2

ki representa el coste de un paso en la mejora de un elemento, kp,1 y kp,2los costes de gestion de threads de primer y segundo nivel, p1 y p2 elnumero de threads en cada nivel.

Los parametros de la metaheurıstica o la hiperheurıstica dependen de lafuncion que se este modelando:NE es el numero de elementos,IP es la probabilidad de mejorar un elemento,II indica una cierta intensificacion en la mejora.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 10 / 23

Page 11: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Problema de reduccion de consumo de electricidad en

explotacion de pozos

B bombas con una potencia conocida extraen agua de pozos, durante un rangohorario R. El flujo total es la suma de los flujos de los pozos.

Las bombas pueden estar activas o inactivas en cada rango horario.

Se trata de minimizar el coste:

Minimize Ce =

R∑

i=1

B∑

j=1

TiPjNixij

Ce : coste de la electricidad consumida por las bombas un dıaTi : coste de electricidad en el rango horario i

Pj : potencia electrica consumida por la bomba j

Ni : numero de horas en el rango horario i

xij : 1 o 0, indica si una bomba esta encendida o apagada en un rangohorario

Un elemento de la metaheurıstica se representa con x , de tamano B × R.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 11 / 23

Page 12: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Sistemas computacionales

Ben, es un HP Integrity Superdome SX2000 con 128 cores de Intel

Itanium-2 dual-core Montvale con memoria compartida.

Saturno es un sistema NUMA con 4 Intel hexa-core NEHALEM-EXEC E7530 (24 cores), 1.87 GHz, 32 GB de memoria compartida.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 12 / 23

Page 13: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Parametros usados en los experimentos

INEIni FNEIni PEIIni IIEIni STMIni NBESel NWESel NBBCom NBWComm1 20 20 50 20 - 10 10 20 5m2 100 50 100 10 - 25 25 100 20h1 10 10 100 1 7 5 5 20 5h2 20 20 50 3 7 10 10 50 10

NWWCom PEIImp IIEImp SMIImp PEDImp IDEImp SMDImp NBEInc LTMIncm1 10 100 20 - 50 20 - 10 -m2 5 50 10 - 100 20 - 25 -h1 10 100 1 7 100 1 7 10 7h2 5 20 3 7 20 3 7 10 7

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 13 / 23

Page 14: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Optimizacion de los Parametros de paralelismo

El numero de threads con los que se obtiene el menor tiempo de ejecucionteeorico se obtiene a partir de los modelos.

Generacion inicial del conjunto de referencia, para una hiperheurıstica enBen:

popt. =

kg

kp· INEIni = 3.43 ·

√INEIni

Mejora de los elementos generados, para una hiperheurıstica en Ben:

p1,opt. = 4.79 · 10−1 ·3√INEIni · PEIIni · IIEIni

p2,opt. = 5.05 · 10−1 ·3√INEIni · PEIIni · IIEIni

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 14 / 23

Page 15: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Estimacion de los parametros del sistema para una rutina

de un nivel

Speed-up teorico y experimental cuando varıa el numero de threads. RutinaImprove de una metaheurıstica en Ben.

0

5

10

15

20

25

30

35

40

45

0 10 20 30 40 50 60 70

Spe

ed-u

p

p

Sp exp. (NEIIni=20)Sp theo. (NEIIni=20)Sp exp. (NEIIni=100)

Sp theo. (NEIIni=100)Sp exp. (NEIIni=500)

Sp theo. (NEIIni=500)

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 15 / 23

Page 16: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Estimacionn de los parametros del sistema para una rutina

de dos niveles

Speed-up teorico y experimental cuando varıa el numero de threads de primer ysegundo nivel. Rutina Improve de una hiperheurıstica en Ben.

0 2

4 6

8 10

12 0

2 4

6 8

10 12

0

2

4

6

8

10

12

14

Speed-up

experimentaltheoretical

p1 p2

0

2

4

6

8

10

12

14

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 16 / 23

Page 17: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Speed-ups para una metaheurıstica en Ben

Maximo speed-up experimental (exp), speed-up modelado (mod), y el obtenido experimentalusando autooptimizacion (exp-auto). Rutina Initialize para una metaheurıstica en Ben.

threads speed-upINEIni exp mod exp mod exp-auto100 48 55 27 27 25500 121 122 77 61 75

Para dos combinaciones de INEIni , PEIIni y IIEIni (c1: 100,50,10; c2: 500,100,5) en la rutinacon paralelismo de dos niveles.

threads speed-upComb. exp mod exp mod exp-autoc1 89 67 35 17 21c2 128 150 78 51 78

El numero de threads seleccionado con autooptimizacion no esta lejos del optimo experimental,y el speed-up no esta lejos del maximo.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 17 / 23

Page 18: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Speed-ups para una hiperheurıstica en Ben

Maximo speed-up experimental (exp), speed-up modelado (mod), y el obtenido experimentalusando autooptimizacion (exp-auto). Rutina Initialize para una hiperheurıstica en Ben.

threads speed-upINEIni exp mod exp mod exp-auto

20 22 15 11 8 8100 24 34 12 17 12

Para dos combinaciones de INEIni , PEIIni y IIEIni (c1: 50,50,1; c2: 100,50,1) en la rutina conparalelismo de dos niveles.

threads speed-upComb. exp mod exp mod exp-auto

c1 9×8 6×7 14 15 11c2 9×4 8×9 15 24 14

La metodologıa de autooptimizacion da aquı tambien resultados satisfactorios.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 18 / 23

Page 19: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Instalacion de todo el esquema en Saturno

Valores de las constantes para todas las funciones de una metaheurıstica en Saturno

Rutinas de un nivel Rutinas de dos nivelesIni Com Inc Imp-Ini Imp-Ref Imp-Com Div

ks · 104 4.43 5.69 1.44 6.05 6.01 1.20 107kp,1 · 10

3 3.96 2.61 58.3 3.08 1.91 3.38 63.8kp,2 · 10

3 - - - 1.56 8.38 23.2 0.915

Valores de las constantes para todas las funciones de una hiperheurıstica en Saturno

Rutinas de un nivel Rutinas de dos nivelesIni Com Inc Imp-Ini Imp-Ref Imp-Com Div

ks · 102 1.45 2.91 0.296 15.7 25.5 52.3 26.2kp,1 · 10

2 0.541 0.679 2.44 5.66 2.55 8.86 2.22kp,2 · 10

2 - - - 7.09 3.25 34.8 4.84

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 19 / 23

Page 20: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Parametros de paralelismo

Valores de los Parametros de paralelismo para las cuatros combinaciones de Parametrosmetaheurısticos considerados, en Saturno.

Rutinas de un nivel Rutinas de dos nivelesTGEIni TCPCom TIEInc TI1Ini TR1Imp TC1Imp TD1Imp

m1 2 3 1 6 11 5 6m2 3 5 1 14 9 5 13

Rutinas de un nivel Rutinas de dos niveleslevel TGEIni TCPCom TIEInc TI Ini TR Imp TC Imp TD Imp

h1 p1 5 12 3 3 5 9 6p2 - - - 3 4 2 3

h2 p1 7 17 4 5 5 10 7p2 - - - 4 4 2 3

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 20 / 23

Page 21: Modelado de metaheur´ısticas e hiperheur´ısticas en

Resultados experimentales

Speed-up total, enSaturno

Speedp-up experimental con el numero de threads igual al de cores (max), con la mitasde cores (max

2), y con autooptimizacion (auto), en Saturno.

Implementacion basicamax max

2auto

m1 1 2 2m2 5 6 6h1 3 4 5h2 4 5 5

Implementacion mejoradamax max

2auto

m1 10 8 10m2 14 10 16h1 6 5 6h2 6 6 7

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 21 / 23

Page 22: Modelado de metaheur´ısticas e hiperheur´ısticas en

Conclusion

Conclusiones

Se han aplicado tecnicas de autooptimizacion a metaheurısticasparametrizadas de memoria compartida y a hiperheurısticas que usanel mismo esquema metaheurıstico.

Se han mostrado resultados experimentales con un problema deoptimizacion del coste en un sistema de extraccion de agua de pozos.La misma metodologıa se ha utilizado en otros problemas:determinacion de constantes cineticas en una reaccion quımica yproblema de maxima diversidad.

La metodologıa permite seleccionar satisfactoriamente el numero dethreads a usar en cada funcion, facilitando ası la obtencion despeed-up cercanos al optimo experimental.

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 22 / 23

Page 23: Modelado de metaheur´ısticas e hiperheur´ısticas en

Conclusion

Trabajos futuros

Aplicacion del esquema y la metodologıa a otros problemas: analisisde envolventes, determinacion de componentes en una solucion,diseno de farmacos...

Inclusion de otras metaheurısticas “basicas” (ACO, PSO...)

Desarrollo de esquemas parametrizados y aplicacion de tecnicas deautooptimizacion para otros sistemas:hecho para paso de mensajestrabajando con Xeon Phiempezando con GPU

Cutillas-Lozano, Gimenez (UMU) Autooptimizacion de metaheurısticas PPMG, 6 marzo 2015 23 / 23