大家好,又见面了,我是你们的朋友全栈君。
存疑的点:value函数的参数是(s, a)。
离散状态下 s, a 作为横纵坐标来获取Q值。q-learning
DQN情况下,输出的是最大Q值。
PG里面输出的是action的概率分布。
DDPG里,actor网络输出的是Action。critic网络里输出的是Q值,依然和s,a有关,由s,a确定。只不过这里确定的方式是①将s,a分别经过一个输出维度为30的网络后 得到的值 相加(两个网络分别为:(s_dim, 30) (a_dim, 30)。②将s,a维度拼接再经过网络计算(这个网络的维度是(s_dim + a_dim, output_dim)。
ddpg多出的部分有
①action数值 首先经过tanh(),其次再判断上下限界。
②噪音,对action添加噪音(可能tanh()这种本来就不精确吧)。
③对环境的action幅度进行normalization。
④是两个target网络的参数都采用soft更新,这与Dqn不同。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149436.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...