Reinforcement Learning Toolbox

 

Reinforcement Learning Toolbox

使用强化学习设计和训练策略

开始:

强化学习智能体

在 MATLAB 和 Simulink 中创建和配置强化学习智能体来训练策略。可以使用内置的强化学习算法,也可以开发自定义算法。

强化学习算法

使用深度 Q 网络 (DQN)、深度确定性策略梯度 (DDPG)、近端策略优化 (PPO) 和其他内置算法创建智能体。使用模板开发自定义智能体,以用于训练策略。

各种训练算法,包括 SARSA、SAC、DDPG 等。

Reinforcement Learning Toolbox 中提供的训练算法。

强化学习设计器

交互式设计、训练和仿真强化学习智能体。将经过训练的智能体导出到 MATLAB,以供进一步使用和部署。

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

对具有大型状态-动作空间的复杂系统,使用来自 Deep Learning Toolbox 的层以编程方式定义深度神经网络策略,或使用深度网络设计器以交互方式定义深度神经网络策略。也可以使用该工具箱建议的默认网络架构。使用模仿学习来初始化策略,以加快训练速度。导入和导出 ONNX 模型以实现与其他深度学习框架的互操作性。

Simulink 中的单智能体和多智能体强化学习

在 Simulink 中使用 RL Agent 模块来创建和训练强化学习智能体在 Simulink 中使用 RL Agent 模块的多个实例同时训练多个智能体(多智能体强化学习)。

使用 RL Agent 模块的 Simulink 模型。

Simulink 的强化学习智能体模块。

环境建模

创建 MATLAB 和 Simulink 环境模型。描述系统动态并为训练智能体提供观测值和奖励信号。

Simulink 和 Simscape 环境

使用 Simulink 和 Simscape™ 创建环境模型。在模型中指定观测值、动作和奖励信号。

双足机器人的 Simulink 环境模型。

双足机器人的 Simulink 环境模型。

MATLAB 环境

使用 MATLAB 函数和类对环境建模。在 MATLAB 文件中指定观测值、动作和奖励变量。

三自由度火箭的 MATLAB 环境。

三自由度火箭的 MATLAB 环境。

加速训练

使用 GPU、云和分布式计算资源加快训练速度。

GPU 加速

使用高性能 NVIDIA® GPU 加速深度神经网络训练和推断。结合使用 MATLAB 和 Parallel Computing Toolbox,支持大多数启用 CUDA 的 NVIDIA GPU(计算能力为 3.0 或更高)。

GPU 硬件。

使用 GPU 加快训练速度。

代码生成和部署

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

代码生成

使用 GPU Coder™ 从 MATLAB 代码(表示经过训练的策略)生成优化的 CUDA 代码。使用 MATLAB Coder™ 生成 C/C++ 代码以部署策略。

GPU Coder 配置屏幕。

使用 GPU Coder 生成 CUDA 代码。

MATLAB Compiler 支持

使用 MATLAB Compiler™MATLAB Compiler SDK™,将经过训练的策略部署为独立应用程序、C/C++ 共享库、Microsoft® .NET 程序集、Java® 类和 Python® 程序包。

MATLAB Compiler 屏幕,可用于创建独立应用程序。

将策略打包为独立程序并共享。

参考示例

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

调节、标定和调度

为调节、标定和调度应用设计强化学习策略。

有三台水泵、一个蓄水池和一个水箱的供水管网系统。

供水的资源分配问题。

强化学习系列视频

观看系列视频,进一步了解强化学习。