强化学习之Q-learning && SARSA 对比
Q-learning(on-policy)
参考:http://www.mnemstudio.org/path-finding-q-learning-tutorial.htm
http://www.mnemstudio.org/path-finding-q-learning-tutorial.htm
理论知识:
假设一个小学生放学后有两种选择——看电视或者是做作业,这里小学生就是agent,看电视和做作业就是两种action,分别记为a1和a2。然后建立奖惩机制,看电视会扣2分,做作业会加1分,初始化Q表在初始化状态下为0.然后根据我们的奖惩机制可以,更新在S1状态的Q表值。
由于做作业的Q值高,所以我们会选择a2动作,也即Q(s1, a2),这样下一个状态S2也同样会对应两个动作。Q-learning就是在考虑本步状态的同时也会涉及到下一个状态。对于这里S2中a2动作的Q值比a1大,所以在更新Q(s1, a2)时,把大的 Q(s2, a2) 乘上一个衰减值 gamma (比如是0.9) 并加上到达s2时所获取的奖励 R (这里还没有获取到我们的棒棒糖, 所以奖励为 0), 因为会获取实实在在的