rlVectorQValueFunction
向量q值函数逼近强化学习代理
描述
该对象实现了一个向量q值函数逼近器,您可以将其用作强化学习代理的离散动作空间的评论家。向量q值函数是将环境状态映射到一个向量上的函数,其中每个元素表示智能体从给定状态出发,执行与元素编号对应的动作时预测的折现累积长期奖励。因此,q值函数评论家只需要环境状态作为输入。在创建一个rlVectorQValueFunction
评论家,用它来创建一个代理如rlQAgent
,rlDQNAgent
,rlSARSAAgent
,rlDDPGAgent
,或rlTD3Agent
.有关创建表示的详细信息,请参见创建策略和值函数.
创建
语法
描述
创建多输出核反应能量函数评论家
= rlVectorQValueFunction (网
,observationInfo
,actionInfo
)评论家
与一个离散作用空间.在这里,网
深度神经网络被用作近似器,并且必须只有观察数据作为输入,并且单个输出层具有与可能的离散动作数量相同的元素。网络输入层根据中尺寸规范自动与环境观测通道关联observationInfo
.此函数设置ObservationInfo
而且ActionInfo
的属性评论家
到observationInfo
而且actionInfo
分别输入参数。
指定与环境观测通道关联的网络输入层的名称。该功能按顺序分配中指定的每个环境观测通道评论家
= rlVectorQValueFunction (网
,observationInfo
ObservationInputNames =netObsNames
)observationInfo
到字符串数组中对应名称指定的层netObsNames
.因此,在网络输入层中,按名称顺序排列netObsNames
,必须与观测通道具有相同的数据类型和维度observationInfo
.
创建多输出核反应能量函数评论家
= rlVectorQValueFunction ({basisFcn
,W0
},observationInfo
,actionInfo
)评论家
与一个离散作用空间使用自定义基函数作为底层逼近器。第一个输入参数是一个双元素单元格数组,其第一个元素是句柄basisFcn
到一个自定义基函数,其第二元素是初始权值矩阵W0
.这里基函数必须只有观测值作为输入,并且W0
必须有与可能的操作数量一样多的列。函数设置ObservationInfo而且ActionInfo的属性评论家
输入参数observationInfo
而且actionInfo
,分别。
属性的计算所使用的设备评论家
= rlVectorQValueFunction (___UseDevice =useDevice
)评论家
对象,并设置UseDevice
的属性评论家
到useDevice
输入参数。您可以将此语法用于前面的任何输入-参数组合。
输入参数
属性
对象的功能
rlDQNAgent |
深度q网络(Deep Q-network, DQN)强化学习剂 |
rlQAgent |
Q-learning强化学习代理 |
rlSARSAAgent |
SARSA强化学习剂 |
getValue |
根据环境观察和行动,从评论家那里获得估计值 |
getMaxQValue |
在给定环境观测的情况下,从具有离散动作空间的q值函数评论家获得所有可能动作的最大估计值 |
评估 |
给定观测(或观测-动作)输入数据,求函数逼近对象 |
梯度 |
给定观测和动作输入数据,求函数逼近对象的梯度 |
加速 |
基于神经网络的逼近对象梯度加速计算选项 |
getLearnableParameters |
从代理、函数逼近器或策略对象获取可学习的参数值 |
setLearnableParameters |
设置agent、函数逼近器或策略对象的可学习参数值 |
setModel |
为演员或评论家设置函数逼近模型 |
getModel |
从演员或评论家那里得到函数逼近器模型 |
例子
版本历史
R2022a中引入