参考链接:https://morvanzhou.github.io/tutorials/machine-learning/reinforcement-learning/2-1-A-q-learning/
强化学习—DQN算法原理详解 | Wanjun's blog (wanjun0511.github.io)
目录
名词解释
解释一下莫烦大神中的一些名字
s 表示状态的意思(state)探索者在哪一种状态;或者说是步(step)探索者走到了第几步。
s1表示第1步,s2表示第2步
action (a)采取的动作
reward(r)奖励
gamma 是对未来 reward 的衰减值
Q:Q表,这个是初始化的一个表格,然后根据Q-Learning的决策过程中,不断地更新Q表,最终得到适用于某种场景的用于决策的Q表
Q-Learning 解释
Q-Learning的决策算法:90%取决于Q表中每一步的最大值所代表的action,同时10%取决于Q表中随机状态。(ε-greedy)
完整流程:
流程解释:
- 初始化状态s
- 在s中选择动作action
- 根据action(a)获取下一个状态s'和reward(r)
- 获取max Q(s'),并根据gamma,reward,Q(s,a),进行更新Q(s,a)
- 尽管s'已经知道了max Q(s') 的action(a),但是并不会根据max Q(s')采取下一步动作,他的下一步动作是根据上面的加粗字
- s <- s' 将s'赋值给s (然后开始选action)
- 重复3,4,5,6