文档帮助中心
设置增强学习代理的批评家表示
newAgent = setActor (oldAgent评论家)
例子
newAgent= setActor (oldAgent,评论家)返回一个新的强化学习代理,newAgent,它使用指定的批评家表示。除了批评家表示之外,新的代理具有与指定的原始代理相同的配置,oldAgent。
newAgent= setActor (oldAgent,评论家)
newAgent
oldAgent
评论家
全部折叠
假设您有一个现有的训练强化学习代理。对于本例,从培训DDPG代理商控制双积分系统。
负载(“DoubleIntegDDPG.mat”,“代理”)
从代理处获得评论家代表。
评论家= getCritic(代理);
从批评者那里获得可学习的参数。
params = getLearnableParameters(批评);
修改参数值。对于本例,只需将所有参数乘以2。
2
修改参数= cellfun(@(x) x*2,参数,“UniformOutput”、假);
将批评家的参数值设置为新的修改后的值。
评论家= setLearnableParameters(评论家,modifiedParams);
将代理中的批评家设置为新修改的批评家。
代理= setCritic(代理、批评);
假设你有一个现有的强化学习代理,代理。对于本例,从训练交流代理商平衡吊柱系统:
代理
负载(“MATLABCartpoleAC.mat”)
进一步,假设该agent具有一个包含以下两层浅神经网络结构的批评家表示:
oldCriticNetwork = [imageInputLayer([4 1 1]),“归一化”,“没有”,“名字”,“状态”)fullyConnectedLayer (1,“名字”,“CriticFC”));
创建一个新的网络与额外的5个神经元完全连接的隐藏层:
newCriticNetwork = [oldCriticNetwork(1)全连接层(5,“名字”,“隐藏”);oldCriticNetwork (2)];
使用带有附加全连接层的新网络创建评论。
评论家= rlValueRepresentation (newCriticNetwork getObservationInfo(代理),“观察”,{“状态”});
将代理的评论家表示设置为新的评论家。
newAgent = setCritic(代理、批评);
rlQAgent
rlSARSAAgent
rlDQNAgent
rlDDPGAgent
rlTD3Agent
rlPGAgent
rlACAgent
rlPPOAgent
原始的增强学习代理,包含一个批评家表示,指定为下列之一:
rlQAgent对象
rlSARSAAgent对象
rlDQNAgent对象
rlDDPGAgent对象
rlTD3Agent对象
rlACAgent对象
rlPPOAgent对象
rlPGAgent对象,该对象使用批处理来估计基线值函数
rlValueRepresentation
rlQValueRepresentation
批评家表示对象,具体如下:
rlValueRepresentation对象——在代理是一个rlACAgent,rlPGAgent,或rlPPOAgent对象
rlQValueRepresentation对象——在代理是一个rlQAgent,rlSARSAAgent,rlDQNAgent,rlDDPGAgent,或rlTD3Agent只有一个评论家反对
的两元行向量rlQValueRepresentation对象——在代理是一个rlTD3Agent持两种批评意见
更新的强化学习代理,作为使用指定的批评表示的代理对象返回。除了批评家表示之外,新代理具有与之相同的配置oldAgent。
getActor|getCritic|getLearnableParameters|setActor|setLearnableParameters
getActor
getCritic
getLearnableParameters
setActor
setLearnableParameters
您的系统中存在此示例的修改版本。你想打开这个版本吗?
你点击了一个链接,对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入该命令来运行它。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站来获取可用的翻译内容,并查看本地事件和报价。根据你的位置,我们建议你选择:。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文),以获得最佳的网站表现。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系你当地的办公室
得到审判现在