主要内容

生成PolicyFunction

创建评估训练有素的强化学习代理政策的功能

描述

例子

生成PolicyFunction(代理人创建一个功能,该函数使用默认功能名称,策略名称和数据文件名来评估指定代理的学习策略。生成策略评估功能后,您可以:

例子

生成PolicyFunction(代理人,,,,名称,价值使用一个或多个名称值对参数指定功能名称,策略名称和数据文件名。

例子

全部收缩

此示例显示了如何为PG代理创建策略评估功能。

首先,创建和培训增强学习代理。在此示例中,加载训练的PG代理训练PG代理以平衡卡车孔系统

加载('matlabcartpolepg.mat',,,,'代理人'

然后,使用默认名称为该代理创建策略评估功能。

生成PolicyFunction(Agent);

此命令创建评估Policy.m文件,包含策略函数,AgentData.mat文件,其中包含训练有素的深神经网络演员。

查看生成的功能。

类型评估Policy.m
函数action1 = estaruepolicy(观察1)%#代码GONFORICTION学习工具箱%生成:20-JAN-2022 15:07:48持久策略;如果ISEMPTY(策略)策略= coder.loadrlpolicy(“ AgentData.mat”);结束%评估策略行动1 = getAction(策略,观察1);

评估随机观察的政策。

评估人员(RAND(4,1))
ANS = 10

现在,您可以使用MATLAB®CODER™为此策略函数生成代码。有关更多信息,请参阅部署训练有素的强化学习政策

此示例显示了如何为Q学习代理创建策略评估功能。

在此示例中,加载训练有训练的Q学习剂基本网格世界中的火车加固学习代理

加载('BASICGWQAGENT.MAT',,,,'Qagent'

为此代理创建策略评估功能,并指定代理数据文件的名称。

生成PolicyFunction(Qagent,'MatfileName',,,,“ policyfile.mat”

此命令创建评估Policy.m文件,包含策略函数,policyfile.mat文件,其中包含训练有素的Q表值函数。

查看生成的功能。

类型评估Policy.m
函数action1 = estaruepolicy(观察1)%#codegen%加固学习工具箱%生成:20-JAN-2022 15:24:34持久策略;如果ISEMPTY(策略)策略= CODER.LOADRLPOLICY(“ policyfile.mat”);结束%评估策略行动1 = getAction(策略,观察1);

评估随机观察的政策。

评估人员(Randi(25))
ans = 1

现在,您可以使用MATLAB®CODER™为此策略函数生成代码。有关更多信息,请参阅部署训练有素的强化学习政策

输入参数

全部收缩

经过训练的加固学习代理,指定为以下代理对象之一。要训​​练您的代理商,请使用火车功能。

对于具有随机演员(PG,PPO,SAC,TRPO,AC)的代理商,生成的策略函数返回的动作取决于UseSplorationPolicy代理的财产。默认,UseSplorationPolicy错误的生成的动作是确定性的。如果UseSplorationPolicy真的,生成的动作是随机的。

名称值参数

将可选的参数对name1 = value1,...,namen = valuen, 在哪里姓名是参数名称和价值是相应的值。名称值参数必须在其他参数之后出现,但是对的顺序并不重要。

在R2021a之前,请使用逗号分隔每个名称和值,并附上姓名用引号。

例子:'functionName',“ computeaction”

生成函数的名称,指定为字符串或字符向量。

生成的函数中策略变量的名称,指定为字符串或字符向量。

代理数据文件的名称,指定为字符串或字符向量。

版本历史记录

在R2019a中引入

展开全部

将来发行的行为变化