Identificador persistente para citar o vincular este elemento: http://hdl.handle.net/10662/9540
Títulos: Sistema multiobjetivo para la planificación de flujos de trabajo en sistemas multi-nube
Autores/as: Álamo Martín, Aitor del
Director/a: Granado Criado, José María
Palabras clave: Asignación del flujo de trabajo;Entorno multicloud;Optimización multiobjetivo;Multi-Objective Firefly Algorithm (MOFA)
Fecha de publicación: 2019-07-09
Resumen: En el siguiente TFG trataremos de resolver el problema de la asignación del flujo de trabajo de aplicaciones científicas en entornos multicloud usando optimización multiobjetivo. El entorno multicloud permite distribuir diferentes trabajos bajo demanda, permitiendo así un aumento de la velocidad y escalabilidad (Aslam & Islam, 15 December 2017). Gracias a ello se pueden ejecutar conjuntos de programas que buscan una solución común y obtener un resultado en un tiempo razonable. Para resolverlo utilizaremos un algoritmo evolutivo multiobjetivo, más concretamente el algoritmo MOFA (algoritmo evolutivo multiobjetivo de las luciérnagas o “Multi-Objective Firefly Algorithm”). Tendremos un conjunto de luciérnagas que irán mejorando progresivamente para generar mejores soluciones. Posteriormente aplicaremos el algoritmo de ordenación no dominada “Fast Non-Dominated Sort” para obtener el frente óptimo, o lo que es lo mismo, el conjunto de soluciones no dominadas del algoritmo. En sí, el enunciado presenta dos objetivos contrapuestos, el coste y el tiempo. Por tanto, es necesario obtener diferentes posibles soluciones al problema. Así nos encontraremos con soluciones con un coste aceptable pero un tiempo excesivo y viceversa. El problema contiene diferentes tareas, que se tienen que repartir en varios clouds. El tiempo final de ejecución depende de dónde se han distribuido las tareas. Cada cloud tendrá tiempos de ejecución diferentes, variando además en función del tiempo de máquina usada en cada cloud. Además, cada tarea puede ser dependiente de otra, por lo que no es posible que se ejecute hasta que la predecesora termine. Para obtener el tiempo de ejecución de las tareas, tenemos que tener en cuenta diferentes factores, entre lo que podemos destacar el tiempo de transmisión de información entre tareas, si están en diferentes clouds o en el mismo, el tiempo que tarda la tarea en un cloud determinado, tiempo de espera de una tarea hasta que terminen sus sucesoras, etc. Para evaluar el problema, partimos de 4 tipos de aplicaciones: Cybershark, Ligo, Montage y Sipht, que tienen diferente estructura interna y diferentes nodos terminales. El tiempo final se determina teniendo en cuenta aquellas tareas sin sucesoras, siendo éste el tiempo de finalización de la tarea sin sucesoras que más tarde en terminar.
URI: http://hdl.handle.net/10662/9540
Colección:Grado en Ingeniería Informática en Ingeniería de Computadores

Archivos
Archivo Descripción TamañoFormato 
TFGUEX_2019_Alamo_Martin.pdf1,2 MBAdobe PDFDescargar


Este elemento está sujeto a una licencia Licencia Creative Commons Creative Commons