强化学习

深度强化学习是机器学习的一个分支,它能帮助您针对复杂系统(如机器人和自主系统)实现控制器和决策系统。借助深度强化学习,您可以实现深度神经网络,这类网络运用通过仿真模型动态生成的数据进行训练,从而学习复杂行为。您只需准备一个仿真模型来表示您正在与之交互并尝试控制的环境,而无需提供标注或者未标注的预定义训练数据集。

MATLAB® 和 Simulink® 支持设计和部署基于强化学习的控制器的整套工作流。您可以:

  • 通过简单的控制系统、自主系统和机器人示例,初步了解强化学习
  • 在常见强化学习算法间快速切换并加以评估和比较,只需对代码稍加改动即可实现
  • 使用深度神经网络,根据图像、视频和传感器数据定义复杂强化学习策略
  • 使用本地核心或云并行运行多个仿真,加速完成策略训练
  • 将强化学习控制器部署到嵌入式设备

强化学习智能体(agent)

强化学习智能体由策略和算法构成,策略用于执行从输入状态到输出动作的映射,算法负责更新策略。常见算法包括深度 Q 网络、Actor-Critic 和深度确定性策略梯度。算法会更新策略,使之最大化环境提供的长期奖励信号。

策略可通过深度神经网络、多项式或查找表进行表达。然后,您可以将内置智能体和自定义智能体作为 MATLAB 对象或 Simulink 模块加以实现。

了解更多

在 MATLAB 和 Simulink 中进行环境建模

强化学习算法训练是一个动态过程,因为智能体需要与周边环境进行交互。对于机器人和自主系统等应用形式,在真实环境中使用实际硬件开展此类训练不仅代价高昂,还可能面临危险。正因如此,人们倾向于采用通过仿真生成数据的虚拟环境模型来开展强化学习。

您可以在 MATLAB 和 Simulink 中构建环境模型,以此描述系统动态、智能体的行动对系统动态产生的影响,以及用于评估所采取行动优度的奖励。这些模型在本质上可以是连续的或者离散的,可以采用不同的保真度来表示系统。此外,您也可以通过并行仿真来加快训练。在某些情况下,您还可以重用现有的 MATLAB 和 Simulink 系统模型,只需稍加改动即可将其用于强化学习。

了解更多

示例和参考应用

要开始了解强化学习,您可以跟随我们的示例,针对倒立摆平衡、网格世界导航及车杆系统平衡等问题实现控制器。您还可以为自动驾驶汽车设计自适应巡航控制系统和车道保持辅助系统。强化学习也可以用于机器人应用程序(如轨迹规划)和教学行为(如移动)。

了解更多

更多强化学习内容