主要内容

rlDQNAgentOptions

DQN代理选项

描述

使用一个rlDQNAgentOptions对象指定深度q网络(DQN)代理的选项。要创建DQN代理,请使用rlDQNAgent

有关更多信息,请参见Deep Q-Network (DQN)代理商

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

创建

描述

选择= rlDQNAgentOptions创建一个选项对象,以便在使用所有默认设置创建DQN代理时用作参数。可以使用点表示法修改对象属性。

例子

选择= rlDQNAgentOptions (名称,值设置选项属性使用名称-值对。例如,rlDQNAgentOptions (DiscountFactor, 0.95)创建贴现因子为的选项集0.95.可以指定多个名称-值对。将每个属性名用引号括起来。

属性

全部展开

为值函数目标更新使用双DQN的标志,指定为逻辑值。对于大多数应用程序集UseDoubleDQN“上”.有关更多信息,请参见Deep Q-Network (DQN)代理商

贪婪的探索选项,指定为EpsilonGreedyExploration具有以下属性的对象。

财产 描述 默认值
ε 概率阈值,要么随机选择一个动作,要么选择使状态-动作值函数最大化的动作。更大的值ε意味着代理以更高的速率随机探索操作空间。 1
EpsilonMin 最小值ε 0.01
EpsilonDecay 衰减率 0.0050

在每个训练时间步骤结束时,如果ε大于EpsilonMin,然后使用以下公式进行更新。

= *(1-EpsilonDecay)

如果您的代理收敛到局部最优值太快,您可以通过增加ε

控件后使用点表示法指定浏览选项rlDQNAgentOptions对象选择.例如,将epsilon值设置为0.9

opt.EpsilonGreedyExploration.Epsilon = 0.9;

评论家优化器选项,指定为rlOptimizerOptions对象。它允许您指定临界逼近器的训练参数,如学习率,梯度阈值,以及优化器算法及其参数。有关更多信息,请参见rlOptimizerOptions而且rlOptimizer

目标评论家更新的平滑因子,指定为小于或等于1的正标量。有关更多信息,请参见目标更新方法

目标批评家更新之间的步数,指定为正整数。有关更多信息,请参见目标更新方法

用于在培训之前清除经验缓冲区的选项,指定为逻辑值。

当使用循环神经网络为评论家时的最大批量训练轨迹长度,指定为正整数。此值必须大于1当使用递归神经网络为评论家和1否则。

随机经验小批的大小,指定为正整数。在每次训练过程中,智能体在计算梯度以更新批评属性时,从经验缓冲区中随机抽取经验。大的小批量在计算梯度时减少了方差,但增加了计算工作量。

当使用循环神经网络对评论家进行评价时,MiniBatchSize是一批经验轨迹的数量,其中每个轨迹的长度等于SequenceLength

用于估计策略价值的未来奖励数目,指定为正整数。更多信息请参见[1]的第7章。

n步Q学习不支持时,使用循环神经网络的评论家。金宝app在这种情况下,NumStepsToLookAhead必须1

经验缓冲区大小,指定为正整数。在训练过程中,智能体使用从缓冲区随机采样的一小批经验计算更新。

试剂的取样时间,指定为正标量或-1.将此参数设置为-1允许基于事件的模拟。

在Simulink金宝app中®环境中,RL代理块,在其中指定代理执行每个SampleTime秒模拟时间。如果SampleTime-1,块从它的父子系统继承采样时间。

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

折扣因子应用于培训期间的未来奖励,指定为小于或等于1的正标量。

对象的功能

rlDQNAgent 深度q网络(Deep Q-network, DQN)强化学习剂

例子

全部折叠

此示例展示如何创建DQN代理选项对象。

创建一个rlDQNAgentOptions对象,该对象指定代理小批处理大小。

opt = rlDQNAgentOptions(“MiniBatchSize”48)
select = rlDQNAgentOptions with properties: UseDoubleDQN: 1 EpsilonGreedyExploration: [1x1 rl.option.]EpsilonGreedyExploration] CriticOptimizerOptions: [1x1 rl.option。rlOptimizerOptions] TargetSmoothFactor: 1.0000e-03 TargetUpdateFrequency: 1 ResetExperienceBufferBeforeTraining: 1 SequenceLength: 1 MiniBatchSize: 48 NumStepsToLookAhead: 1 ExperienceBufferLength: 10000 SampleTime: 1 DiscountFactor: 0.9900 InfoToSave: [1x1 struct]

可以使用点表示法修改选项。例如,设置代理采样时间为0.5

opt.SampleTime = 0.5;

参考文献

[1]萨顿,理查德S和安德鲁g巴托。强化学习:简介.第二版。自适应计算与机器学习。马萨诸塞州剑桥:麻省理工学院出版社,2018年。

版本历史

在R2019a中引入

全部展开

另请参阅