主要内容

验证环境

验证定制增强学习环境

描述

例子

验证环境(env.验证强化学习环境。此功能是有用的:

验证环境重置环境,生成初始观察和操作,并模拟一个或两个步骤的环境(参见算法)。如果在这些操作期间没有错误,则验证成功,并且验证环境返回任何结果。如果发生错误,则Matlab中出现这些错误®命令窗口。使用错误来确定在观察规范,操作规范,自定义功能或Simulink模型中更改的内容。万博1manbetx

例子

全部收缩

此示例显示如何验证Simulink环境。万博1manbetx

创建和验证和环境rlwatertank.代表包含钢筋学习代理的控制系统的模型(有关此模型的详细信息,请参阅创建Simul万博1manbetxink环境和培训代理。)

Open_System('rlwatertank'

为环境创建观察和行动规范。

ObsInfo = rlnumericspec([3 1],......'lowerimit',[ -  inf-inf 0]'',......'上限',[inf inf inf]');ObsInfo.name =.'观察';Obsinfo.description =.'集成错误,错误和测量高度';numobservations = Obsinfo.dimension(1);Actinfo = rlnumericspec([1 1]);Actinfo.name =.'流';数量=数量(Actinfo);

从模型创建一个环境。

ent = rl万博1manbetxsimulinkenv('rlwatertank''rlwatertank / rl代理',obsinfo,Actinfo);

现在你使用验证环境检查模型是否配置正确。

验证环境(env)使用rl.env.simulinkenvwithagent / val万博1manbetxidateenvironment(行187)Simulink环境验证需要Matlab基础工作区中的代理,或者在数据字典中链接到模型。在Simulink模型中指定代理。万博1manbetx

验证环境尝试编译模型,初始化环境和代理,并模拟模型。在这种情况下,RL代理程序块被配置为使用调用的代理代理人,但Matlab®工作区中没有此类变量存在。因此,该函数返回指示问题的错误。

使用中详细的命令为此系统创建适当的代理创建Simul万博1manbetxink环境和培训代理例子。在这种情况下,从中加载代理rlwatertankddpgagent.mat文件。

加载rlwatertankddpgagent.

现在,运行验证环境再次。

验证环境(ENV)

输入参数

全部收缩

验证的环境,指定为钢筋学习环境对象,例如:

  • 您创建的自定义MATLAB环境rlcreateenvtemplate.。在这种情况下,验证环境检查环境期间生成的观测和动作是否在具有观察说明和动作规范的情况下的大小,数据类型和值范围一致。它还检查您的自定义重启函数运行没有错误。(使用时使用自定义环境时rlfunctionenv.,软件运行验证环境自动地。)

  • 您创建的自定义Si万博1manbetxmulink环境Rl万博1manbetxsimulinkenv.。如果使用Simulink环万博1manbetx境,您还必须具有定义和与之关联的代理RL代理人模型中的块。对于Simu万博1manbetxlink模型,验证环境检查模型是否编译并运行而不会错误。该函数不会弄脏您的模型。

有关创建和配置环境的详细信息,请参阅:

算法

全部收缩

验证环境通过运行简要仿真环境,并确保生成的信号与您在创建环境创建时提供的观察和操作规范匹配。

马铃薯环境

对于MATLAB环境,验证包括以下步骤。

  1. 使用该环境重置环境重启与环境相关的函数。

  2. 获取第一个观察并检查它是否与观察说明书中的尺寸,数据类型和值范围一致。

  3. 基于操作规范中的维度,数据类型和值范围生成测试操作。

  4. 使用生成的动作来模拟环境一步与环境相关的函数。

  5. 获取新的观察信号并检查它是否与观察说明书中的尺寸,数据类型和值范围一致。

如果其中任何操作生成错误,验证环境返回错误。如果验证环境返回不会结果,然后验证成功。

万博1manbetx环境

对于Si万博1manbetxmulink环境,验证包括以下步骤。

  1. 重置环境。

  2. 模拟模型两次步骤。

如果其中任何操作生成错误,验证环境返回错误。如果验证环境返回不会结果,然后验证成功。

验证环境在不呈现模型的情况下执行这些步骤,并在您调用函数时留下它们所处的状态的所有模型参数。

在R2019A介绍