强化学习工具箱™提供了一个应用程序、函数和一个Simulink®块的训练策略使用强化学习算法,包括DQN, PPO, SAC和DDPG。您可以使用这些策略来实现复杂应用程序(如资源分配、机器人和自主系统)的控制器和决策算法。
该工具箱允许您使用深度神经网络或查找表来表示策略和值函数,并通过与MATLAB建模的环境交互来训练它们®或仿真软件。您可以评估工具箱中提供的单一或多智能体强化学习算法,也可以开发自己的算法。您可以实验超参数设置,监控训练进度,并通过应用程序或编程方式以交互方式模拟训练过的代理。为了提高训练性能,模拟可以在多个cpu、gpu、计算机集群和云中并行运行(使用并行计算工具箱™和MATLAB并行服务器™)。
通过ONNX™模型格式,可以从TensorFlow™Keras和PyTorch(带有深度学习工具箱™)等深度学习框架导入现有策略。您可以生成优化的C, c++和CUDA®代码,在微控制器和gpu上部署训练好的策略。工具箱包括参考示例,以帮助您入门。
开始:
强化学习算法
使用深度q -网络(DQN)、深度确定性策略梯度(DDPG)、近端策略优化(PPO)和其他内置算法创建代理。使用模板为培训策略开发自定义代理。
Simulink中的单智能体和多智能体强化学习
使用RL Agent块在Simulink中创建和训练强化学习代理。在Simulink中使用RL Agent块的多个实例同时训练多个代理(多代理强化学习)。
Simulink和Simscape环境
使用Simulink和Simscape™创建环境模型。在模型中指定观察、行动和奖励信号。
MATLAB环境中
使用MATLAB函数和类来建模环境。在MATLAB文件中指定观察、行动和奖励变量。
分布式计算和多核加速
通过在多核计算机、云资源或使用的计算集群上运行并行模拟来加快训练速度并行计算工具箱而且MATLAB并行服务器.
GPU加速
使用高性能NVIDIA加速深度神经网络训练和推理®gpu。使用MATLAB并行计算工具箱以及大多数支持cuda的NVIDIA gpu计算能力3.0或更高.
代码生成
使用GPU编码器™从代表训练策略的MATLAB代码中生成优化的CUDA代码。使用MATLAB编码器™生成C/ c++代码来部署策略。
MATLAB编译器支持
使用MATLAB编译器™而且MATLAB编译SDK™将训练好的策略部署为独立的应用程序,C/ c++共享库,微软®.NET程序集,Java®类和Python®包。
开始
了解如何为一些问题开发强化学习策略,例如反转一个简单的钟摆、在网格世界中导航、平衡车杆系统以及解决通用马尔可夫决策过程。
自动驾驶
为自动驾驶应用设计强化学习策略,如自适应巡航控制、车道保持辅助和自动泊车。