强化学习:去除Exploring Stars条件的方法及MC Absolute Grady算法5-5

去除Exploring Stars条件的方法及MC Absolute Grady算法

引入Soft Policy去除Exploring Stars条件

为了去掉exploring stars条件,我们引入soft policy。soft policy简单来说就是对每一个action都有被选择的可能性。

之前提到过policy分为两种,一种是确定性的(deterministic policy),比如常见的greedy policy就属于确定性策略;另一种是随机的(stochastic)。引入soft policy的原因是,如果从一个状态-动作对 ( s , a ) (s, a) (s,a)出发,后面的episode足够长,由于其具有探索性,能够确保任何一个 ( s , a ) (s, a) (s,a)都能被该episode访问到,这样就可以去掉exploring stars条件,不需要从每一个 ( s , a ) (s, a) (s,a)都出发,只需从一个或几个出发就能覆盖到其他的状态-动作对。

这里我们使用的soft policy是absolute graded policy( ϵ \epsilon ϵ-greedy policy,以下简称 ϵ \epsilon ϵ-greedy)。

ϵ \epsilon ϵ-Greedy策略介绍

  1. 策略定义:在一个状态 s s s下,存在一个greedy action(其对应的 q π ( s , a ∗ ) q_{\pi}(s, a^*) qπ(s,a)是最大的), ϵ \epsilon ϵ-greedy会给这个greedy action一定的选择概率,给其他不是greedy action的action另外的概率。具体公式中, ϵ \epsilon ϵ是一个介于 0 0 0 1 1 1的正数, ∣ A ( s ) ∣ |\mathcal{A}(s)| A(s)是状态 s s s所对应的action的个数。
    例如,在“great wall example”中,每个状态所对应的action个数为 5 5 5,若 ϵ = 0.2 \epsilon = 0.2 ϵ=0.2,则对于非greedy action,每个action的概率为 ϵ ∣ A ( s ) ∣ = 0.2 5 = 0.04 \frac{\epsilon}{|\mathcal{A}(s)|}=\frac{0.2}{5}=0.04 A(s)ϵ=50.2=0.04,剩下的那个greedy action的概率是 1 − 4 × 0.04 = 0.84 1 - 4 \times 0.04 = 0.84 14×0.04=0.84 。由此可见,greedy action有最大的概率被选择,其他action也有较小的概率被选择,并且选择greedy action的概率始终比其他任何一个action的概率都要大(当 ϵ \epsilon ϵ 0 0 0 1 1 1之间时)。
  2. 平衡Exploitation和Exploration
    • exploitation(充分利用):在一个状态下,有多个action,已知某些action的action value比较大,此时在下一个时刻就应该采取这些action,以期望获得更多的reward,这就是充分利用已知信息。
    • exploration(探索):虽然知道某些action能带来很多reward,但可能当前信息不完备,应该去探索其他action,执行后可能发现其他action的action value也很好。
    • 对于 ϵ \epsilon ϵ-greedy策略,当 ϵ = 0 \epsilon = 0 ϵ=0时,它就变成了greedy策略,此时探索性弱,充分利用性强;当 ϵ = 1 \epsilon = 1 ϵ=1时,对每一个action的选择概率都相同,探索性更强,充分利用性更弱。比如在有五个action的例子中,当 ϵ = 1 \epsilon = 1 ϵ=1时,每个action的选择概率都是 0.2 0.2 0.2

ϵ \epsilon ϵ-Greedy嵌入算法得到MC Absolute Grady算法

  1. 与之前算法的联系:回顾mc basic和mc exploring stars算法中的policy improvement步骤,之前是先求出 q π k q_{\pi_k} qπk,然后在所有可能的策略集合 Π \Pi Π中求解优化问题得到新的策略(最优策略是greedy policy)。
    现在要把 ϵ \epsilon ϵ-greedy嵌入到算法中,做法是在求解问题时,不是在所有的策略 Π \Pi Π里面找,而是在所有的 ϵ \epsilon ϵ-greedy策略集合 Π ϵ \Pi_{\epsilon} Πϵ里找( ϵ \epsilon ϵ是事先给定的)。此时得到的最优策略是把最大的概率仍然给greedy action,但给其他所有的action都一个相同的较小的概率,这样就得到了mc ϵ \epsilon ϵ-greedy算法。
    该算法和mc exploring stars基本上是一样的,区别在于mc exploring stars里用的是greedy策略,这里用的是 ϵ \epsilon ϵ-greedy策略。
  2. 算法伪代码及特点:mc ϵ \epsilon ϵ-greedy的伪代码和之前mc exploring stars的伪代码基本一样,除了使用 ϵ \epsilon ϵ-greedy策略外,另一个小区别是使用了“every visit”方法。原因是可能会有一个非常长的episode,如果只用“first visit”,很多状态-动作对 ( s , a ) (s, a) (s,a)被访问了很多次,但只利用了一次来估计action value,这样会造成浪费,所以使用“every visit”方法。

通过使用 ϵ \epsilon ϵ-greedy策略,mc ϵ \epsilon ϵ-greedy算法不需要exploring start这样的条件,实现了对算法的改进和优化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值