主要内容

火车加固学习代理

一旦创建了一个环境并强化了学习代理,就可以在环境中使用火车函数。要配置培训,请使用rlTrainingOptions函数。例如,创建培训选项集选择和火车代理代理人在环境中env.

opt = rltringOptions(......“MaxEpisodes”,1000,......“MaxStepsPerEpisode”,1000,......'stoptrinaincriteria'“AverageReward”......“StopTrainingValue”, 480);trainStats =火车(代理,env,选择);

有关创建代理的详细信息,请参见强化学习代理.有关创建环境的更多信息,请参见创建MATLAB强化学习环境创建Simul万博1manbetxink强化学习环境

火车更新代理作为培训进展。要保留原始代理参数以供以后使用,请将代理保存到MAT文件。

节省(“initialAgent.mat”“代理”的)

中指定的条件将自动终止培训stoptrinatreaincriteria.stoptriningvalue.您的选择rlTrainingOptions对象满意。手动终止正在进行的培训,类型Ctrl + C或者,在钢筋学习集团管理器中,单击停止训练.因为火车更新每个集中的代理,您可以通过呼叫恢复培训火车(代理商,env,训练)同样,在不丢失第一次调用时学到的训练参数的情况下火车

训练算法

一般来说,培训执行以下步骤。

  1. 初始化代理。

  2. 对于每一次集:

    1. 重置环境。

    2. 得到最初的观察结果S.0.来自环境。

    3. 计算初始动作一种0.=μS.0.), 在哪里μS.)是目前的政策。

    4. 将当前操作设置为初始操作(一种一种0.),将当前观测值设置为初始观测值(S.S.0.).

    5. 当情节尚未结束或终止时,请执行以下步骤。

      1. 应用操作一种对环境并获得下一个观察S''和奖励R.

      2. 从经验中学习(S.一种R.S').

      3. 计算下一个操作一个“=μS').

      4. 使用下一个操作更新当前操作(一种一个“)通过下次观察更新当前观察(S.S').

      5. 如果满足环境中定义的终止条件,则终止该集。

  3. 如果满足培训终止条件,终止培训。否则,就开始下一集。

软件如何执行这些步骤的细节取决于代理和环境的配置。例如,在每一集的开始重置环境可以包括随机初始状态值,如果您配置您的环境这样做。有关代理及其训练算法的更多信息,请参见强化学习代理.使用并行处理和GPU加速培训,看使用并行计算和gpu的列车代理

事件管理器

默认情况下,调用火车功能打开钢筋学习剧集管理器,可让您可视化培训进度。Episode Manager Plot显示每个剧集的奖励(EpisodeReward.)和运行的平均奖励价值(AverageReward).同样,对于有评论家的特工,情节显示了评论家在每一集开始时对折扣长期报酬的估计(Episodeq0.).Episode Manager还显示各种剧集和培训统计信息。你也可以使用火车返回剧集和培训信息的功能。

对于批评者的代理人,集Q0考虑到环境初步观察,是每一集开始时折扣长期奖励的估计。随着培训进展,如果评论家设计得好。集Q0接近真实的贴现长期回报,如上图所示。

要关闭钢筋学习剧集管理器,请设置绘图选择rlTrainingOptions“没有”

保存候选药物

在培训期间,您可以保存符合您指定条件的候选代理商SaveAgentCriteriaSaveAgentValue.您的选择rlTrainingOptions目的。例如,即使尚未满足终止培训的整体条件,您还可以保存剧集奖励超出某个值的任何代理。例如,当集中奖励大于时,保存代理One hundred.

opt = rltringOptions('SaveAgentCriteria'“EpisodeReward”'saveagentvalue',100');

火车将已保存的代理存储在指定的文件夹中的mat -文件中SaveAgentDirectory.选择rlTrainingOptions.保存的代理可能很有用,例如,用于测试在长时间的训练过程中生成的候选代理。保存条件和保存位置请参见rlTrainingOptions

培训完成后,您可以从MATLAB保存最终培训的代理®工作区使用保存函数。例如,保存代理myAgent.到文件FinalAgent.mat.在当前的工作目录中。

保存(opt.saveAgentDirectory +“/finalagent.mat”'代理人'的)

缺省情况下,当保存DDPG和DQN代理时,不会保存体验缓冲区数据。如果您计划进一步列出已保存的代理,您可以使用以前的体验缓冲区作为起点开始培训。在这种情况下,设置SaveExperienceBufferWithAgent选项真正的.对于某些代理,例如具有较大经验缓冲区和基于图像的观察的代理,保存经验缓冲区所需的内存很大。在这些情况下,必须确保为保存的代理程序提供足够的内存。

验证培训的政策

要验证经过培训的代理,可以在培训环境中使用SIM函数。要配置模拟,请使用rlSimulationOptions

验证代理时,请考虑检查代理如何处理以下情况:

与并行培训一样,如果您有并行计算工具箱™软件,则可以在多核计算机上运行多个并行模拟。如果你有MATLAB并行服务器™软件,您可以在计算机集群或云资源上运行多个并行模拟。有关配置模拟以使用并行计算的更多信息,请参见使用指α.并行化选项rlSimulationOptions

环境可视化

如果您的培训环境实施了阴谋方法,您可以可视化的环境行为在训练和模拟。如果你叫情节(env)在训练或模拟之前env.是您的环境对象,然后是培训期间的可视化更新,允许您可视化每个剧集或模拟的进度。

使用并行计算培训或模拟代理时不支持环境可视化。万博1manbetx

对于自定义环境,您必须实现自己的环境阴谋方法。有关创建自定义环境的详细信息阴谋功能,参见创建自定义MATLAB环境从模板

也可以看看

相关的话题