Deep reinforcement learning

Deep reinforcement learning es una rama de Machine Learning que permite implementar controladores y sistemas de toma de decisiones para sistemas complejos tales como robots y sistemas autónomos. Con deep reinforcement learning puede implementar redes neuronales profundas que pueden aprender comportamientos complejos si se las entrena con datos generados dinámicamente a partir de sistemas físicos o simulados. A diferencia de otras técnicas de Machine Learning, no se necesitan conjuntos de datos de entrenamiento predefinidos, estén etiquetados o no. Por lo general, solamente se necesita un modelo de simulación que represente el entorno.

Con MATLAB®, Simulink® y Reinforcement Learning Toolbox™, puede ejecutar el flujo de trabajo completo para diseñar y desplegar un sistema de toma de decisiones. Puede hacer lo siguiente:

  • Iniciarse en deep reinforcement learning con ejemplos de sistemas de control, sistemas autónomos, robótica y problemas de planificación simples
  • Alternar, evaluar y comparar con rapidez los algoritmos de reinforcement learning más utilizados con tan solo algunos cambios de código
  • Modelar el entorno en MATLAB o Simulink
  • Utilizar redes neuronales profundas para definir políticas de deep reinforcement learning complejas basadas en datos de imágenes, vídeos y sensores
  • Entrenar políticas con más rapidez ejecutando varias simulaciones en paralelo a través de núcleos locales o la nube.
  • Desplegar políticas de deep reinforcement learning en dispositivos integrados
Diagrama de reinforcement learning

Agentes de deep reinforcement learning

Los agentes de deep reinforcement learning constan de una política de red neuronal profunda que asigna un estado de entrada a una acción de salida, y de un algoritmo encargado de actualizar esa política. Algunos ejemplos de algoritmos más utilizados son Deep Q-network (DQN), Deep Deterministic Policy Gradient (DDPG), Soft Actor Critical (SAC) y Proximal Policy Optimization (PPO). El algoritmo actualiza la política en función de las observaciones y recompensas recopiladas del entorno para maximizar la recompensa a largo plazo prevista.

Reinforcement Learning Toolbox ayuda a crear agentes de deep reinforcement learning de manera programática, o bien interactiva con la app Reinforcement Learning Designer. Puede seleccionar algoritmos listos para usar, o implementar su propio algoritmo personalizado utilizando las plantillas y los ejemplos disponibles.

Diagrama de reinforcement learning

Más información

Modelado de entornos en MATLAB y Simulink

El entrenamiento con algoritmos de deep reinforcement learning es un proceso dinámico, ya que el agente interactúa con el entorno. En el caso de aplicaciones tales como la robótica y los sistemas autónomos, efectuar el entrenamiento con hardware físico puede resultar costoso y peligroso. Por lo tanto, es preferible trabajar con modelos virtuales del entorno que generen datos a través de simulaciones.

Puede crear un modelo del entorno en MATLAB y Simulink que describa la dinámica del sistema, cómo se ve afectada por las acciones realizadas por el agente y una recompensa que evalúe la validez de la acción realizada. Estos modelos pueden ser continuos o discretos, y pueden representar un sistema con diferentes niveles de fidelidad. También puede paralelizar las simulaciones para acelerar el entrenamiento. En algunos casos, podrá reutilizar los modelos de MATLAB y Simulink existentes para deep reinforcement learning con pocas modificaciones.

Más información

Modelado de entornos en MATLAB y Simulink

Ejemplos y aplicaciones de referencia

Iníciese en deep reinforcement learning entrenando políticas para problemas sencillos, tales como equilibrar un péndulo invertido y solucionar un problema de grid-world. También puede diseñar sistemas de control de crucero adaptativo y asistencia de mantenimiento de carril para vehículos autónomos. También se puede utilizar deep reinforcement learning para aplicaciones de robótica, como la planificación de rutas, y para enseñar comportamientos, como la locomoción.

Diagrama de reinforcement learning

Más información