Reinforcement Learning Toolbox™ 提供了一个 App、多个函数和一个 Simulink® 模块,可与 DQN、PPO、SAC 和 DDPG 等强化学习算法结合使用来进行策略训练。您可以使用这些策略为复杂应用(如资源分配、机器人和自主系统)实现控制器和决策算法。
借助该工具箱,您可以使用深度神经网络或查找表来表示策略和价值函数,并使用 MATLAB® 或 Simulink 创建环境模型,通过与环境交互来训练策略和函数。您可以评估该工具箱中提供的单智能体或多智能体强化学习算法,也可以开发自己的算法。您可以使用超参数设置进行试验,监控训练进度,并通过 App 以交互方式或编程方式仿真经过训练的智能体。为了提高训练性能,可以在多个 CPU、GPU、计算机集群和云上并行运行仿真(需要 Parallel Computing Toolbox™ 和 MATLAB Parallel Server™)。
通过 ONNX™ 模型格式,可以从 TensorFlow™ Keras 和 PyTorch 等深度学习框架导入已有策略(需要 Deep Learning Toolbox™)。您可以生成优化的 C、C++ 和 CUDA® 代码,以便将经过训练的策略部署到微控制器和 GPU。该工具箱包括参考示例,可帮助您快速入门。
开始:
使用深度神经网络表示策略和价值函数
对具有大型状态-动作空间的复杂系统,使用来自 Deep Learning Toolbox 的层以编程方式定义深度神经网络策略,或使用深度网络设计器以交互方式定义深度神经网络策略。也可以使用该工具箱建议的默认网络架构。使用模仿学习来初始化策略,以加快训练速度。导入和导出 ONNX 模型以实现与其他深度学习框架的互操作性。
Simulink 中的单智能体和多智能体强化学习
在 Simulink 中使用 RL Agent 模块来创建和训练强化学习智能体在 Simulink 中使用 RL Agent 模块的多个实例同时训练多个智能体(多智能体强化学习)。
Simulink 和 Simscape 环境
使用 Simulink 和 Simscape™ 创建环境模型。在模型中指定观测值、动作和奖励信号。
MATLAB 环境
使用 MATLAB 函数和类对环境建模。在 MATLAB 文件中指定观测值、动作和奖励变量。
分布式计算和多核加速
使用 Parallel Computing Toolbox 和 MATLAB Parallel Server 在多核计算机、云资源或计算机集群中运行并行仿真,从而加快训练速度。
GPU 加速
使用高性能 NVIDIA® GPU 加速深度神经网络训练和推断。结合使用 MATLAB 和 Parallel Computing Toolbox,支持大多数启用 CUDA 的 NVIDIA GPU(计算能力为 3.0 或更高)。
代码生成
使用 GPU Coder™ 从 MATLAB 代码(表示经过训练的策略)生成优化的 CUDA 代码。使用 MATLAB Coder™ 生成 C/C++ 代码以部署策略。
MATLAB Compiler 支持
使用 MATLAB Compiler™ 和 MATLAB Compiler SDK™,将经过训练的策略部署为独立应用程序、C/C++ 共享库、Microsoft® .NET 程序集、Java® 类和 Python® 程序包。
快速入门
了解如何为单摆倒置、网格世界导航、倒单摆系统平衡和一般马尔可夫决策过程求解等问题开发强化学习策略。
自动驾驶
为自动驾驶应用设计强化学习策略,如自适应巡航控制、车道保持辅助和自动泊车。
产品资源:
强化学习系列视频
观看系列视频,进一步了解强化学习。