强化学习工具箱

使用强化学习设计和培训政策

强化学习工具箱™提供了一个应用程序、函数和一个Simulink金宝app®块,用于使用强化学习算法的训练策略,包括DQN、PPO、SAC和DDPG。您可以使用这些策略为复杂的应用程序(如资源分配、机器人和自治系统)实现控制器和决策算法。

该工具箱允许您使用深度神经网络或查找表来表示策略和价值函数,并通过与MATLAB中建模的环境交互来训练它们®或者是金宝appsimulink。您可以评估工具箱中提供的单个或多代理强化学习算法或开发您自己的学习算法。您可以通过应用程序或以编程方式进行高度参数设置,监视培训进度,并模拟培训的代理。为了提高培训性能,可以在多个CPU,GPU,计算机集群和云上并行运行模拟(使用并行计算工具箱™和MATLABPrild Server™)。

通过Onnx™模型格式,现有的策略可以从DENE学习框架导入Tensorflow™Keras和Pytorch(具有深度学习工具箱™)。您可以生成优化的C,C ++和CUDA®代码来在微控制器和gpu上部署经过培训的策略。工具箱中包括一些参考示例来帮助您入门。

开始:

加固学习代理人

在MATLAB和Simulink中创建和配置强化学习代理来训练策略。金宝app使用内置或开发自定义强化学习算法。

强化学习算法

使用Deep Q-Network(DQN),深度确定性政策梯度(DDPG),近端策略优化(PPO)以及其他内置算法创建代理。使用模板开发自定义代理以获取培训策略。

训练算法可在强化学习工具箱。

强化学习设计师App

交互设计,火车和模拟强化学习代理。将培训的代理商到MATLAB进一步使用和部署。

利用深度神经网络表示策略和价值函数

对于具有大状态-行为空间的复杂系统,使用层来编程地定义深度神经网络策略深度学习工具箱,或与深网络设计师.或者,使用工具箱建议的默认网络架构。使用模仿学习初始化策略,加速训练。导入和导出ONNX模型,以便与其他深度学习框架互操作。

Simulink中的单次和多智能体增强学习金宝app

使用RL代理块在Simulink中创建和培训加固学习代理。金宝app使用RL代理程序块的多个实例同时列车在Simulink中同时(多代理强化学习)。金宝app

Simulink的强化学习agent块。金宝app

环境建模

创建MATLAB和Simulink环金宝app境模型。描述系统动力学,并为训练代理提供观察和奖励信号。

金宝appSimulink和Simscape环境

使用Si金宝appmulink和Simscape™来创建环境的模型。指定模型中的观察,动作和奖励信号。

金宝app两足机器人的Simulink环境模型。

MATLAB环境中

使用MATLAB函数和类来建模一个环境。在MATLAB文件中指定观察、行动和奖励变量。

Matlab环境为三程度的火箭。

加速训练

使用GPU,云和分布式计算资源加快培训。

使用并行计算加速训练。

GPU加速

使用高性能NVIDIA加速深度神经网络训练和推理®gpu。使用MATLAB并行计算工具箱以及大多数支持cuda的NVIDIA图形处理器计算能力3.0或更高

使用GPU加速培训。

代码生成和部署

将经过培训的策略部署到嵌入式设备或将其与各种生产系统集成。

代码生成

GPU编码器™从Matlab代码生成优化的CUDA代码,代表培训的策略。用MATLAB编码器™生成C/ c++代码来部署策略。

使用GPU编码器生成CUDA代码。

MATLAB编译器支持金宝app

Matlab Compiler™MATLAB编译器SDK™将经过培训的策略部署为独立的应用程序,C/ c++共享库,微软®.NET装配,Java®Python类,®包裹。

包装和分享单​​独计划的政策。

参考例子

为机器人、自动驾驶、标定、调度等应用设计控制器和决策算法。

调优、校准和调度

设计强化学习策略,用于调整,校准和调度应用程序。

水分布资源分配问题。

强化学习系列视频

观看本系列视频了解更多关于强化学习的内容。

额外的强化学习工具箱资源