Reinforcement Learning Toolbox

Concevoir et entraîner des politiques grâce au Reinforcement Learning

Reinforcement Learning Toolbox™ offre une application, des fonctions et un bloc Simulink® pour entraîner des politiques avec des algorithmes de Reinforcement Learning comme DQN, PPO, SAC et DDPG. Vous pouvez utiliser ces politiques pour implémenter des contrôleurs et des algorithmes décisionnels pour des applications complexes comme l'allocation des ressources, la robotique et les systèmes autonomes.

La toolbox vous permet de représenter les politiques et les fonctions de valeur avec des réseaux de neurones profonds ou bien des lookup tables et de les entraîner à travers des interactions avec des environnements modélisés dans MATLAB® ou Simulink. Vous pouvez évaluer les algorithmes de Reinforcement Learning simple ou multi-agents proposés par la toolbox ou bien développer les vôtres. Vous pouvez tester différents réglages des hyperparamètres, suivre la progression de l'apprentissage et simuler des agents entraînés de façon interactive avec l'application ou bien programmatiquement. Pour améliorer les performances de l’apprentissage, vous pouvez exécuter plusieurs simulations en parallèle sur le cloud, sur des clusters et sur plusieurs CPU et GPU (avec Parallel Computing Toolbox™ et MATLAB Parallel Server™).

En utilisant le format de modèle ONNX™, vous pouvez importer des politiques existantes à partir d’environnements de Deep Learning tels que TensorFlow™ Keras et PyTorch (avec Deep Learning Toolbox™). Vous pouvez générer du code optimisé C, C++ et CUDA® pour déployer des politiques entraînées sur des microcontrôleurs et des GPU. La toolbox propose des exemples de référence pour vous aider à démarrer.

 

En savoir plus :

Les agents du Reinforcement Learning

Créez et configurez des agents de Reinforcement Learning pour entraîner des politiques dans MATLAB et Simulink. Utilisez des algorithmes de Reinforcement Learning prédéfinis ou bien développez des algorithmes personnalisés.

Algorithmes de Reinforcement Learning

Créez des agents en utilisant les algorithmes deep Q-network (DQN), deep deterministic policy gradient (DDPG), proximal policy optimization (PPO) ou d'autres algorithmes prédéfinis. Utilisez des modèles pour développer des agents personnalisés afin d’entraîner des politiques.

Des algorithmes d'apprentissage disponibles sur Reinforcement Learning Toolbox.

Application Reinforcement Learning Designer

Concevez, entraînez et simulez des agents de Reinforcement Learning de manière interactive. Exportez des agents entraînés vers MATLAB pour une utilisation et un déploiement ultérieurs.

Représentation des politiques et de la fonction de valeur avec des réseaux de neurones profonds

Pour les systèmes complexes avec de vastes espaces état-action, définissez des politiques de réseaux de neurones profonds de façon programmatique avec des couches de Deep Learning Toolbox, ou de manière interactive avec Deep Network Designer. Alternativement, utilisez l'architecture de réseaux par défaut suggérée par la toolbox. Initialisez la politique avec l'apprentissage par imitation pour accélérer l'apprentissage. Importez et exportez des modèles ONNX pour assurer l'interopérabilité avec d'autres environnements de Deep Learning.

Reinforcement Learning simple et multi-agents dans Simulink

Créez et entraînez des agents de Reinforcement Learning dans Simulink avec le bloc RL Agent. Entraînez de multiples agents simultanément (Reinforcement Learning multi-agents) dans Simulink en utilisant plusieurs instances du bloc RL Agent.

Bloc Reinforcement Learning Agent pour Simulink.

Modéliser l'environnement

Créez des modèles d’environnement dans MATLAB et Simulink. Décrivez la dynamique des systèmes et ajoutez des observations ainsi que des signaux de récompense pour les agents de Reinforcement Learning.

Environnements Simulink et Simscape

Utilisez Simulink et Simscape™ pour créer un modèle d'environnement. Spécifiez l’observation, l’action et les signaux de récompense dans le modèle.

Modèle d'environnement Simulink pour un robot bipède.

Environnements MATLAB

Utilisez les fonctions et les classes MATLAB pour modéliser un environnement. Spécifiez l’observation, l’action et les variables de récompense dans le fichier MATLAB.

Environnement MATLAB pour une fusée à trois degrés de liberté.

Accélérer l’apprentissage

Accélérez l’apprentissage en utilisant un GPU, le cloud et des ressources informatiques distribuées.

Accélération GPU

Accélérez l’apprentissage et l’inférence de réseaux de neurones profonds avec des GPU NVIDIA® haute performance. Vous pouvez utiliser MATLAB avec Parallel Computing Toolbox et la plupart des GPU NVIDIA compatibles CUDA dotés d'une capacité de calcul 3.0 ou supérieure.

Accélérer l’apprentissage avec des GPU.

Génération et déploiement de code

Déployez des politiques entraînées sur des systèmes embarqués ou intégrez-les avec un vaste éventail de systèmes de production.

Génération de code

Avec GPU Coder™, générez du code CUDA optimisé à partir de code MATLAB représentant des politiques entraînées. Générez du code C/C++ avec MATLAB Coder™ pour déployer des politiques.

Génération de code CUDA avec GPU Coder.

Support de MATLAB Compiler

MATLAB Compiler™ et MATLAB Compiler SDK™ vous permettent de déployer des politiques entraînées sous forme d'applications autonomes, de bibliothèques partagées C/C++, d’assemblages Microsoft®.NET, de classes Java® et de packages Python®.

Packager et partager des politiques en tant que programmes autonomes.

Exemples de référence

Concevez des contrôleurs et des algorithmes décisionnels pour la robotique, la conduite autonome, le calibrage, la planification et pour d'autres applications.

Pour bien démarrer

Découvrez comment développer des politiques de Reinforcement Learning pour des problèmes tels que l'inversion d'un simple pendule, la navigation d'un Grid World, le maintien en équilibre d'un pendule inversé sur un chariot et la résolution de processus décisionnels génériques de Markov.

Conduite autonome

Concevez des politiques de Reinforcement Learning pour les applications de conduite autonome telles que la régulation adaptative de la vitesse, l'aide au maintien de la trajectoire et le stationnement automatique.

Ajustement, calibrage et planification

Concevez des politiques de Reinforcement Learning pour les applications d'ajustement, de calibrage et de planification.

Problème d'allocation des ressources pour la distribution de l'eau.

Série de vidéos sur le Reinforcement Learning

Regardez cette série de vidéos pour vous familiariser avec les concepts de Reinforcement Learning.

Ressources supplémentaires pour Reinforcement Learning Toolbox