Skip to content
Tolshao
Go back

强化学习笔记5:无模型控制 Model-free control

适用于:

策略、非策略学习:

On-policy MC control

贪婪策略梯度法如果用V(s),需要MDP已知 对于已知MDP,可以通过策略迭代的方法,DP到最优策略 -w536

要实现不基于模型的控制,需要满足两个条件:

model-free policy using action-value function

用Q(s,a),不需要已知MDP -w492

每个箭头对应一个段,Prediction一次,Control一次 -w343

GLIE MC control(Greedy in the Limit with Infinite Exploration)

保证试验进行一定次数是,所有a-s状态都被访问到很多次 -w514

随实验次数进行,减小ϵ\epsilon-w505

ON-policy TD learning

Sasra

Sasra(one-step)

由贝尔曼公式推导 -w451

算法实现过程

-w535

要保证Q值收敛,需要服从下列2个条件

n-step Sarsa

与TD(λ)类似,扩展q的视野

-w576

Forward view Sarsa(λ)

-w644

Backward view Sarsa(λ)

在正向视角中,迭代一次Q值,需要完整的一次episode 为了解决这个问题,引入迹的概念,实现incremental update -w621

算法流程

-w529

Attention:迹E是属于episode的,切换episode后,E要归零

Off-policy learning

EXP[f(X)]=P(X)f(X)=Q(X)P(X)Q(X)f(X)=EXQ[P(X)Q(X)f(X)]\begin{aligned} \mathbb{E}_{X \sim P}[f(X)] &=\sum P(X) f(X) \\ &=\sum Q(X) \frac{P(X)}{Q(X)} f(X) \\ &=\mathbb{E}_{X \sim Q}\left[\frac{P(X)}{Q(X)} f(X)\right] \end{aligned}

off-policy MC learning

引入了概率缩放系数,判断两个策略动作概率函数 -w484

off-policy TD learning

利用期望分布的概念,在更新目标前x一个系数,对当前策略的置信度 -w426

Q-learning

特点

更新方程如下

Q(St,At)Q(St,At)+α(Rt+1+γQ(St+1,A)Q(St,At))Q\left(S_{t}, A_{t}\right) \leftarrow Q\left(S_{t}, A_{t}\right)+\alpha\left(R_{t+1}+\gamma Q\left(S_{t+1}, A^{\prime}\right)-Q\left(S_{t}, A_{t}\right)\right)

off-policy control with Q-learning

在学习过程中:

采用下式更新策略:

π(St+1)=argmaxaQ(St+1,a)\pi\left(S_{t+1}\right)=\underset{a^{\prime}}{\operatorname{argmax}} Q\left(S_{t+1}, a^{\prime}\right)

Q-learning target 简化为:

Rt+1+γQ(St+1,A)=Rt+1+γQ(St+1,argmaxaQ(St+1,a))=Rt+1+maxaγQ(St+1,a)\begin{aligned} & R_{t+1}+\gamma Q\left(S_{t+1}, A^{\prime}\right) \\ =& R_{t+1}+\gamma Q\left(S_{t+1}, \underset{a^{\prime}}{\operatorname{argmax}} Q\left(S_{t+1}, a^{\prime}\right)\right) \\ =& R_{t+1}+\max _{a^{\prime}} \gamma Q\left(S_{t+1}, a^{\prime}\right) \end{aligned}

-w535

迭代使Q(s,a)q(s,a)Q(s,a) \rightarrow q_* (s,a) Attention:在迭代过程中,动作采用ϵgreedy\epsilon-greedy策略,保证对位置环境的探索

算法流程

-w538

总结

DP TD的关系

-w619 -w633

Q-learning 和 SARSA区别

-w711

区别在于:


Share this post on:

Previous Post
Keras & Tensorflow 笔记
Next Post
深度学习-Coursera笔记