此示例显示如何使用离散动作空间设计和培训DQN代理的DQN代理加固学习设计师。
打开加固学习设计师应用程序。
钢筋训练器
最初,应用程序中没有加载代理或环境。
使用时加固学习设计师,您可以从MATLAB导入环境®工作区或创建预定义的环境。有关更多信息,请参阅为强化学习设计师创建MATLAB环境和为强化学习设计金宝app师创建Simulink环境。
对于此示例,请使用预定义的离散推车MATLAB环境。要导入此环境,请执行加强学习标签,在环境部分,选择新>离散推车。
在里面环境窗格,该应用程序添加导入离散的cartpole.
环境。要重命名环境,请单击“环境文本”文本。您还可以在会话中导入多个环境。
要查看观察和动作空间的尺寸,请单击“环境文本”文本。该应用程序显示了尺寸预习窗格。
该环境具有连续的四维观察空间(推车和杆的位置和速度)和由两个可能的力,-10n或10n组成的离散一维动作空间。此环境用于该环境培训DQN Agent来平衡车杆系统例子。有关预定义控制系统环境的更多信息,请参阅负载预定义控制系统环境。
创建代理人加强学习标签,在代理人部分,点击新的。在“创建代理”对话框中,指定代理名称,环境和培训算法。对于此示例,请保留使用导入的环境和DQN算法的默认代理配置。有关创建代理商的更多信息,请参阅使用强化学习设计师创建代理商。
点击好的。
该应用程序将新代理添加到代理人窗格并打开相应的代理商_1.文档。
有关DQN代理功能的简要摘要,并查看代理的观察和操作规范,请单击概述。
当您创建DQN代理时加固学习设计师,代理使用默认的深度神经网络结构进行评论家。查看批评批评网络DQN Agent.选项卡,单击查看评论家模型。
这深度学习网络分析仪打开并显示批评批评结构。
关上深度学习网络分析仪。
训练你的代理人火车选项卡,首先指定培训代理的选项。有关指定培训选项的信息,请参阅在钢筋学习设计师中指定模拟选项。
在此示例中,通过设置指定最大培训剧集数最大剧集至1000
。有关其他培训选项,请使用其默认值。停止的默认标准是每集的平均步数(最后)5.
剧集)大于500.
。
要开始培训,请单击火车。
在培训期间,该应用程序打开了训练课程标签并显示培训进度培训结果文档。
在这里,训练在每集的平均步数为500时停止。
接受培训结果,就训练课程选项卡,单击接受。在里面代理人窗格,该应用程序添加了培训的代理,Agent1_Tromed.
。
模拟训练有素的代理人模拟选项卡,首先选择Agent1_Tromed.
在里面代理人下拉列表,然后配置模拟选项。对于此示例,请使用默认的剧集数(10.
)和最大插曲长度(500.
)。有关指定模拟选项的详细信息,请参阅在加固学习设计师中指定培训选项。
要模拟代理,请单击模拟。
该应用程序打开了模拟会话标签。仿真完成后,仿真结果文档显示每个集发作的奖励以及奖励均值和标准偏差。
要分析模拟结果,请单击检查模拟数据。
在里面仿真数据检测器您可以查看每个模拟集的保存信号。以下图像示出了第六仿真集的推车极系统(推车位置和极角)的第一和第三状态。该代理成功平衡杆,角度接近零。
有关更多信息,请参阅仿真数据检测器(金宝appSimulink)。
关上仿真数据检测器。
接受模拟结果,就模拟会话选项卡,单击接受。
在里面结果窗格,该应用程序添加了模拟结果结构,经验1
。
将培训的代理导出到MATLAB工作区以进行额外的模拟,请访问加强学习标签,下面出口,选择代理。
要保存应用程序会话,请参阅加强学习选项卡,单击保存会话。在未来,要恢复您离开的工作,您可以开放会话加固学习设计师。
要在MATLAB命令行模拟代理,请首先加载推车杆环境。
Env = Rlpredefinedenv(“cartpole - 离散”);
Cart-Pol环境具有一个环境可视化器,允许您了解系统在模拟和培训期间的行为方式。
绘制环境并使用先前从应用程序导出的培训代理执行模拟。
绘图(ENV)XPR2 = SIM(env,Agent1_traine);
在仿真过程中,可视化器显示推车和杆的移动。训练有素的代理能够快速稳定系统。
最后,显示模拟的累积奖励。
总和(xpr2.reward)
Env = 500.
正如预期的那样,奖励是500。