传统的DQN算法会导致overestimate.因为在训练开始时,最大的Q值并不一定是最好的行为. 也就是说较差的行为Q值相对较大,较好的行为Q值相对较小.这时我们在更新Q值时用最大期望来计算我们作为标签的Q值期望,会进一步导致上一个状态的Q值虚高.当然因为有explorating, 所以最后还是会收敛到最优解的, 但是在环境比较复杂时,学习速度会变得很慢.我们来看看这个问题的本质原因,比如说 Q(S1,a1) 虚高,那就会导致 Q(S2,a21)虚高,从而连锁导致 Q(S3,a32)虚高.也就…