因为逐渐有人将强化学习应用到
我们可以以上图来理解强化学习过程,我们机器人
举例来说,让机器人玩电玩游戏:
上图中
我们希望
强化学习难点:
Reward delay
例如上面所举得例子里,只有在开火时,才能获得Reward ,agent 学习的最后结果是会疯狂的开火,往左移或往右移,他觉得无所必要,但实际上移动对最后的total Reward 至关重要。还比如在下围棋时,短期的牺牲可能或换来最后的胜利。agent 的行为,也即是action 会影响后续他看到的环境。
Asynchronous Advantage Actor-Critic (A3C)
Policy-based Approach(Learning an Actor)
如果我们把
- 模型的输入:即其观察到的环境(向量、矩阵等)
- 模型的输出:每一类动作在最后一层以一个神经元表示,对应其输出的概率。
需要注意的是:在做
那么如何决定这个
我们假定
我们拿这个
如上图所示:
因为游戏的随机性,即使每个回合都采用一样的
那么这个期望值
假设一轮游戏所有经过表示为
-
τ={s1,α1,r1,s2,α2,r2,s3,α3,r3,...,sT,αT,rT} -
R(τ)=∑Tn=1rn - 某一种
τ 出现的概率与actor (模型)有关,即该τ 过程出现的概率为P(τ|θ)
由上面的分析可知,某一个
但是我们无法遍历所有的
那么现在已经找到了
-
start with θ0 -
θ1←θ0+η▿R¯θ0 -
θ2←θ1+η▿R¯θ1 - ………
那么
可以实际的推导一下
其中:
则:
可以直观的理解上面
- 当
R(τn) )(注意这里是一个回合的reward ) 为正的时候,我们希望调整θ ,增大p(αnt|snt) ,使其在时间t 更大可能选择αnt - 当
R(τn) 为正的时候,我们希望调整θ ,减小p(αnt|snt) ,使其在时间t 更小可能选择αnt
上面的求
Critic
给定一个
那么如何得到
Monte-Carlo
让
- 当看到环境
sa 后,直到一轮回合结束,所积累的reward 为Ga ,那么Vpi(sa)=Ga - 当看到环境
sb 后,直到一轮回合结束,所积累的reward 为Gb ,那么Vpi(sb)=Gb
Temporal-Difference
MC VS TD
不同的方法,其
Actor-Critic
我们在上面讲到了
如上图所示,可以直接把
Advantage Actor-Critic
对于