主要内容

rlQAgent

q学习强化学习剂

描述

q学习算法是一种无模型、在线、非策略强化学习方法。q学习代理是一种基于价值的强化学习代理,它训练批评家估计回报或未来的回报。

有关q学习代理的更多信息,请参见q学习的代理

有关不同类型的强化学习代理的更多信息,请参见强化学习代理

创建

描述

例子

代理= rlQAgent (评论家agentOptions创建具有指定批判网络的Q-learning代理,并设置AgentOptions财产。

输入参数

全部展开

批评家,指定为rlQValueFunction对象。有关创建批评者的更多信息,请参见创建政策和价值功能

属性

全部展开

代理选项,指定为rlQAgentOptions对象。

选项,在选择操作时使用探索策略,指定为以下逻辑值之一。

  • —选择动作时使用代理贪婪策略。

  • 真正的—选择动作时使用座席探索策略。

此属性是只读的。

观测规范,指定为强化学习规范对象,定义诸如尺寸、数据类型和观测信号名称等属性。

的价值ObservationInfo中指定的对应值评论家

此属性是只读的。

动作规范,指定为rlFiniteSetSpec对象。

的价值ActionInfo中指定的对应值评论家

代理的采样时间,指定为正标量或-1.将此参数设置为-1允许基于事件的模拟。的价值SampleTime中指定的值AgentOptions

在一个模型®环境中,RL代理块,指定代理在其中执行SampleTime秒模拟时间。如果SampleTime-1,该块从其父子系统继承采样时间。

在MATLAB®在环境中,每当环境前进时,都会执行代理。在这种情况下,SampleTime是否返回输出经验中连续元素之间的时间间隔sim卡火车.如果SampleTime-1,返回的输出经验中连续元素之间的时间间隔反映了触发代理执行的事件的时间。

对象的功能

火车 在指定的环境中训练强化学习代理
sim卡 在指定的环境中模拟训练过的强化学习代理
getAction 在给定的环境观察中,从代理、参与者或策略对象获取操作
getActor 从强化学习代理中获取actor
setActor 设置强化学习代理的actor
getCritic 从强化学习代理中获得批评
setCritic 强化学习剂的设置批评家
generatePolicyFunction 生成计算代理或策略对象的策略的函数

例子

全部折叠

创建一个环境接口。对于本例,使用与示例中相同的环境在基本网格世界中训练强化学习代理

env = rlPredefinedEnv (“BasicGridWorld”);

获得观察和行动规范。

obsInfo = getObservationInfo (env);actInfo = getActionInfo (env);

根据环境观察和行动规范建立一个近似表模型。

qTable = rlTable (obsInfo actInfo);

使用以下命令创建批评家qTable.Q代理使用rlValueFunction对象来实现批评家。

评论家= rlQValueFunction (qTable obsInfo actInfo);

使用指定的临界值和的值创建q学习代理0.05

选择= rlQAgentOptions;opt.EpsilonGreedyExploration.Epsilon = 0.05;代理= rlQAgent(评论家,选择)
AgentOptions: [1x1 rl.option. agent = rlQAgent。rlQAgentOptions] UseExplorationPolicy: 0 ObservationInfo: [1x1 rl.util.rlFiniteSetSpec] ActionInfo: [1x1 rl.util.rlFiniteSetSpec] SampleTime: 1

要检查代理,请使用getAction从一个随机的观察中返回动作。

行动= getAction(代理,{兰迪(元素个数(obsInfo.Elements))});行为{1}
ans = 1

现在可以针对环境测试和训练代理。

版本历史

介绍了R2019a

Baidu
map