WiMi Hologram Cloud Inc. ha anunciado que ha desarrollado un algoritmo de programación de tareas basado en el aprendizaje profundo por refuerzo en la computación en nube para mejorar el rendimiento y la utilización de recursos de los sistemas de computación en nube. El aprendizaje profundo por refuerzo puede resolver problemas complejos de toma de decisiones mediante el aprendizaje y la optimización de estrategias. Utilizando el aprendizaje profundo por refuerzo, el problema de programación de tareas puede transformarse en un problema de aprendizaje por refuerzo entrenando una red neuronal profunda para que aprenda la estrategia óptima de programación de tareas. La ventaja del aprendizaje por refuerzo es que puede ajustar automáticamente la política en función de los cambios del entorno y puede adaptarse a escenarios complejos de programación de tareas.

El aprendizaje profundo por refuerzo tiene las ventajas de la adaptabilidad, el modelado no lineal, el aprendizaje de extremo a extremo y la capacidad de generalización en la programación de tareas, y puede considerar de forma exhaustiva factores como el tiempo de ejecución de la tarea, la demanda de recursos, la situación de carga de la máquina virtual y la latencia de la red, para llevar a cabo la programación de tareas con mayor precisión y mejorar el rendimiento del sistema y la tasa de utilización de los recursos. El algoritmo de programación de tareas basado en el aprendizaje profundo por refuerzo de WiMi en la computación en nube incluye la representación del estado, la selección de acciones, la función de recompensa y el entrenamiento y optimización del algoritmo. La representación del estado es un eslabón importante.

Al transformar diversa información del entorno de la computación en nube en una forma que pueda ser procesada por el modelo de aprendizaje automático, puede ayudar al modelo a comprender mejor la situación actual de la programación de tareas, a fin de tomar decisiones de programación de tareas más razonables y precisas. La selección de acciones también es un paso clave, en el que en cada paso temporal, el agente necesita seleccionar una acción a ejecutar para decidir la estrategia de programación de tareas en el momento actual. Un algoritmo de este tipo puede seleccionar una acción óptima basándose en el estado actual del sistema para lograr una programación eficiente de las tareas de computación en nube.

La función de recompensa, por su parte, se utiliza para evaluar el valor de recompensa obtenido por el agente tras ejecutar una acción, lo que a su vez guía el proceso de toma de decisiones del agente. La función de recompensa puede permitir al agente aprender y optimizar mejor durante el proceso de programación de tareas. Además, el entrenamiento y la optimización del algoritmo de programación de tareas basado en el aprendizaje por refuerzo profundo en la computación en nube también son muy críticos.

En primer lugar, es necesario construir un entorno de aprendizaje por refuerzo aplicable al problema de programación de tareas, que incluya la definición de estados, acciones y funciones de recompensa. El estado puede incluir información como la situación actual de carga del sistema, los atributos y la prioridad de la tarea; la acción puede optar por asignar la tarea a una determinada máquina virtual o decidir si se retrasa el procesamiento de la tarea; y la función de recompensa puede definirse en función del tiempo de finalización de la tarea, la utilización de los recursos y otras métricas. A continuación, el algoritmo se entrena utilizando un algoritmo de aprendizaje profundo por refuerzo como Deep Q-Network (DQN), un algoritmo de aprendizaje por refuerzo basado en redes neuronales que puede tomar decisiones aprendiendo una función de valor.

Durante el proceso de entrenamiento, al interactuar con el entorno, el algoritmo actualiza continuamente los parámetros de la red neuronal para optimizar la estrategia de toma de decisiones para la programación de tareas. Además, pueden utilizarse algunas técnicas de optimización, como la reproducción de la experiencia y las redes de objetivos, para mejorar aún más el rendimiento y la estabilidad del algoritmo. Mediante el entrenamiento y la optimización continuos, el algoritmo aprenderá gradualmente la estrategia óptima para la programación de tareas, mejorando así el rendimiento y la eficacia del sistema.