english Icono del idioma   español Icono del idioma  

Por favor, use este identificador para citar o enlazar este ítem: https://hdl.handle.net/20.500.12008/42429 Cómo citar
Título: Estudio de estrategias de Aprendizaje por Refuerzo para control de elasticidad de servicios de streaming.
Autor: Larraura, Micaela
Rotti, Martín
Tito Virgilio, Sofía
Título Obtenido: Ingeniero en Computación.
Facultad o Servicio que otorga el Título: Universidad de la República (Uruguay). Facultad de Ingeniería.
Tutor: Baliosian, Javier
Richart, Matías
Tipo: Tesis de grado
Palabras clave: Aprendizaje por refuerzo, Control de elasticidad, Streaming
Fecha de publicación: 2023
Resumen: Con el gran crecimiento de servicios que se brindan en la nube, surge el desafío de asignar recursos de manera tal de obtener un buen rendimiento en momentos de mayor demanda, sin desperdiciarlos en momentos de baja demanda. En ese sentido, surge el concepto de elasticidad, que es la capacidad de un sistema de asignar recursos de manera dinámica en base a sus necesidades. Podemos distinguir dos tipos de elasticidad, la elasticidad horizontal, que corresponde a variar la cantidad de instancias de recursos de cómputo disponibles en el sistema, y la vertical que consiste en aumentar o disminuir características de los recursos informáticos, como el tiempo de CPU, la memoria o el ancho de banda de la red. En este trabajo se propone atacar el problema de controlar la elasticidad horizontal de un sistema de streaming (reproducción de video en línea) particular. En particular, se propone lograr variar la cantidad de servidores disponibles de forma tal que se ajusten a la cantidad de usuarios que solicitan la reproducción de un video y a las características del video solicitado que puedan influir en el tiempo de servicio. Se aborda el problema utilizando Aprendizaje por Refuerzo, una de las técnicas del área del Aprendizaje Automático que suele utilizarse para tareas de control de sistemas. Para esto, se implementó un ambiente de desarrollo que permite entrenar y evaluar el desempeño de distintas técnicas de Aprendizaje por Refuerzo a la hora de resolver el problema abordado. Más precisamente, que permita aprender y evaluar una política que determine cuándo quitar o agregar servidores del sistema de acuerdo con su estado actual, minimizando el desperdicio de recursos y manteniendo un cierto nivel de desempeño definido sobre el tiempo de respuesta del sistema. Se seleccionaron tres técnicas de Aprendizaje por Refuerzo a implementar: Deep Q-Network, SARSA y Policy Gradient, comparando su rendimiento con el de una heurística determinista. De acuerdo con los resultados observados, se concluye que dado un sistema de streaming con las características determinadas para el proyecto, los modelos basados en los métodos de Policy Gradient y SARSA no dieron resultados satisfactorios habiendo sido entrenados por 1000 episodios. Sin embargo, el modelo entrenado utilizando el método Deep Q-Network sobre un espacio discreto de estados, en tan solo 1000 episodios logró un rendimiento superior al de una heurística basada en umbrales utilizada como línea base, siendo capaz de asignar recursos de manera eficiente, manteniendo en un rango adecuado los tiempos de respuesta hacia los clientes, y minimizando el desperdicio de recursos.
Editorial: Udelar. FI.
Citación: Larraura, M., Rotti, M. y Tito Virgilio, S. Estudio de estrategias de Aprendizaje por Refuerzo para control de elasticidad de servicios de streaming [en línea] Tesis de grado. Montevideo: Udelar. FI. INCO, 2023.
Licencia: Licencia Creative Commons Atribución (CC - By 4.0)
Aparece en las colecciones: Tesis de grado - Instituto de Computación

Ficheros en este ítem:
Fichero Descripción Tamaño Formato   
LRT23.pdfTesis de grado1,7 MBAdobe PDFVisualizar/Abrir


Este ítem está sujeto a una licencia Creative Commons Licencia Creative Commons Creative Commons