这个能做到每一步都更新一次,同时可以异步跟新(不用每次都要求所有状态更新一次来轮转,选到谁就更新谁,所以也要求每个状态都能够选到)。一般说的TD都指的是TD(0) (ps:为啥不叫TD(1)啊),即每次只往后看一步,这是什么意思呢,看了接下来的流程估计就懂了。(使用的都是(s,a)值)
1:随机选取一个状态S开始游戏
2:此s状态下选取a(根据贪婪 或者 ε-贪婪),并在动作a的状态下获得s‘,即下一状态。
3:使用s状态下的反馈奖励以及s’的未来奖励更新s的未来奖励。(一般这两者与目前s状态的未来奖励加权求和)(ps: 这里就是sarsar与Qlearning的区别,s'是指s中通过策略抵达的下一状态,但此状态下也有许多的(s,a)值,该以哪个来更新呢?Qlearning中,选取最大的(s,a)为更新值。sarsar中,对所有(s,a)值求平均,作为更新值。这也是所谓的Qlearning高风险高收益,sarsar比较保守的原因。)
4:重复1步骤,(但要求每个状态s都能够被选到。)
作者:无业大学生
链接:https://www.jianshu.com/p/142072151161
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。