主要内容

培训强化学习代理

创建环境和强化学习代理后,可以使用火车功能。要配置您的培训,请使用RL培训选项作用例如,创建一个训练选项集选择,及列车代理人代理人在环境中环境.

opt=rl培训选项(...“最大集”,1000,...“MaxStepsPerEpisode”,1000,...“停止培训标准”,“平均向上”,...“停止训练值”,480); trainStats=列车(代理、环境、选择);

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

火车在培训过程中更新代理。若要保留原始代理参数以供以后使用,请将代理保存到MAT文件中。

拯救(“initialAgent.mat”,“代理人”)

当您在中指定的条件满足时,培训将自动终止停车训练标准停止训练值你的选择RL培训选项对象已满足。若要手动终止正在进行的培训,请键入Ctrl+C或者,在强化学习情节管理器中,单击停止训练. 因为火车在每集更新代理,您可以通过拨打列车(代理人、环境、列车员)同样,在不丢失第一次调用火车.

训练算法

通常,培训执行以下步骤。

  1. 初始化代理。

  2. 每集:

    1. 重置环境。

    2. 获得初步观察s0来自环境。

    3. 计算初始作用A.0=μ(s0),在哪里μ(s)这是现行政策。

    4. 将当前操作设置为初始操作(A.A.0),并将当前观察设置为初始观察(ss0).

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

      1. 应用操作A.观察环境,并获得下一次观察结果是的”“报酬呢R.

      2. 从经验中学习(s,A.,R,是的).

      3. 计算下一个动作a'=μ(是的).

      4. 用下一个操作更新当前操作(A.a')并用下一个观测更新当前观测值(s是的).

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

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

软件执行这些步骤的具体方式取决于代理和环境的配置。例如,如果您将环境配置为随机化初始状态值,则在每集开始时重置环境可能包括随机化初始状态值。有关代理及其训练算法的更多信息,请参阅强化学习代理. 要使用并行处理和GPU加速训练,请参阅使用并行计算和GPU训练代理.

事件管理器

默认情况下,调用火车函数打开强化学习情节管理器,可让您可视化培训进度。情节管理器绘图显示每个情节的奖励(情节报酬)和一个连续的平均奖励值(平均向)此外,对于有评论家的经纪人,情节显示了评论家在每集开始时对折扣长期报酬的估计(第0幕)。事件管理器还显示各种事件和培训统计信息。您也可以使用火车返回事件和培训信息的函数。

对于有评论家的特工来说,第Q0集是根据对环境的初步观察,在每集开始时对折扣长期奖励的估计。随着培训的进行,如果评论家设计得很好。第Q0集接近真实的长期折扣报酬,如上图所示。

要关闭强化学习情节管理器,请设置阴谋选择RL培训选项“没有”.

拯救候选代理人

在培训期间,您可以保存满足在中指定条件的候选代理SaveAgentCriteriaSaveAgentValue你的选择RL培训选项对象。例如,即使终止培训的总体条件尚未满足,您也可以保存情节奖励超过某个值的任何代理。例如,当情节奖励大于时保存代理100.

opt=rl培训选项(“SaveAgentCriteria”,“情节奖励”,“SaveAgentValue”,100');

火车将保存的代理存储在MAT文件中使用指定的文件夹中SaveAgentDirectory选择RL培训选项。保存的代理可能很有用,例如,用于测试在长时间运行的培训过程中生成的候选代理。有关保存条件和保存位置的详细信息,请参阅RL培训选项.

训练完成后,可以从MATLAB中保存最终训练的agent®使用拯救函数。例如,保存代理我的代理人归档最后的垫子在当前工作目录中。

保存(opt.SaveAgentDirectory)+“/finalAgent.mat”,“代理人”)

默认情况下,保存DDPG和DQN代理时,不会保存体验缓冲区数据。如果您计划进一步培训保存的代理,则可以使用以前的体验缓冲区作为起点开始培训。在这种情况下,设置SaveExperienceBufferWithAgent选择符合事实的。对于某些代理,例如具有较大经验缓冲区和基于图像的观察的代理,保存经验缓冲区所需的内存较大。在这些情况下,必须确保有足够的内存可供保存的代理使用。

验证经过培训的策略

要验证经过培训的代理,可以使用模拟作用要配置模拟,请使用模拟选项.

在验证代理时,请考虑检查代理如何处理以下内容:

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

环境可视化

如果您的培训环境实现了情节方法,您可以在训练和模拟期间可视化环境行为地块(环境)在训练或模拟之前,在哪里环境是您的环境对象,则可视化将在培训期间更新,以允许您可视化每个事件或模拟的进度。

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

对于自定义环境,必须实现自己的情节方法有关使用创建自定义环境的详细信息情节函数,请参见从模板创建自定义MATLAB环境.

另见

相关话题