强化学习笔记之策略梯度PG

前面几天观看了B站周博磊老师的强化学习纲要系列视频狠狠地补了一下基础,强烈推荐没有基础的同学去补补基础,特别是MP马尔可夫过程、MRP马尔可夫奖励过程、MDP马尔可夫决策过程等,才能更好地理解与掌握后来的强化学习算法的算法思想,出发点是什么。我看完恍然大悟,原来前辈们提出那么多算法就是为了解决这一个根本性的问题,以及结合深度学习解决衍生出的一些问题。看完基础教学视频,学DQN和PG算法也显得没有那么吃力了,果然学知识就如同建房子,基础打牢了才能往上叠,才能建的更高更牢。

PS:本学习笔记参考了周博磊老师的《强化学习纲要》、以及磨菇书EasyRL,只是自己思路的一个整理,毕竟好记性不如烂笔头,难免有错误之处,还望指出。


1. Value-based RL versus Policy-based RL

基于价值的强化学习 VS 基于策略的强化学习

Q-learning、Sarsa、DQN等都是基于value的算法,其中DQN只是对价值函数进行了近似(value function approximation),它们本质上都是先优化价值函数,再从优化后的价值函数中提取最优策略,它们都是基于价值(value-based)的强化学习方法,都是确定性的策略(Deterministic policy),即在每一个状态选择最大Q值对应的行动(获得确定的动作)。而我们今天的主角Policy Gradient是一种更加直接的方法,它直接计算每个状态对应的动作的概率,所以适用于随机策略问题。

在这里插入图片描述
value-base方法在很多领域都发挥了它们的优势,但是也有一些局限性。对于这些不适用的场景我们就可以用policy-based方法。

1)首先就是对连续动作处理能力不足, CartPole-v1 环境,在这个环境中只有两个动作:控制小车向左或者向右,这就是离散动作。那连续动作就是动作不光有方向,而且还有大小,对小车施加的力越大,小车的动作幅度也会越大。例如自动驾驶控制方向盘,还请读者自行体会。这个时候,使用离散的方式是不好表达的,而使用基于 Policy Based 方法就很容易。

2)无法解决随机策略(Stochastic Policy)问题。随机性策略就是把当前状态输入网络,输出的是不同动作的概率分布(比如 40% 的概率向左,60% 的概率向右)或者是对于连续动作输出一个高斯分布。而基于 Value Based 的算法是输出是每个动作的动作价值 Q(s , a),然后选择一个价值最大的动作,也就是说输出的是一个确定的动作,这种我们称之为确定性策略(Deterministic Policy)。但是有些问题的最优策略是随机策略,所以此时 基于 Value Based 的方法就不再适用,这时候就可以适用基于 Policy Based 的方法。(这段参考的博客原文
在这里插入图片描述

基于策略函数的方法的优缺点:
在这里插入图片描述

2. 策略优化

强化学习解决的就是学习到一个好的策略来指导agent的行动以获得最大的回报Return(Find a policy maximizing total reward)。策略的输出就是在某一状态下应该采取的最合适的action,我们需要的就是找到一个最优(当然很难找到最优,只能说是近似最优)策略。

策略有两种:确定性随机性的策略。(随机性的策略函数输出的是指定状态的动作概率分布,离散动作比如:有40%的概率往左走,60%的概率往右走;连续动作可能输出高斯分布)
在这里插入图片描述

  • 策略优化的目标:如同近似价值函数: q q q ,policy-based这一类强化学习方法近似策略函数,给定一个参数为 θ \theta θ的策略函数 π θ ( s , a ) \pi_\theta(s,a) πθ(s,a),找出最好的 θ \theta θ

  • 如何评估策略的质量(好坏):即我们的优化函数是什么?

    环境的角度来看,

    • 离散动作环境中(有结束的环境),我们可以优化第一个状态的价值,因为初始状态的value决定了它后面所有可能得到的奖励
      J 1 ( θ ) = V π θ ( s 1 ) = E π θ [ v 1 ] J_1(\theta)=V^{\pi_{\theta}}(s_1)=E_{\pi_\theta}[v_1] J1(θ)=Vπθ(s1)=Eπθ[v1]

    • 在一个连续环境中(没有终止的环境),我们有两种办法:

      1. 优化平均价值
        J a v V ( θ ) = ∑ s d π θ ( s ) V π θ ( s ) J_{avV}(\theta)=\sum_sd^{\pi_\theta}(s)V^{\pi_\theta}(s) JavV(θ)=sdπθ(s)Vπθ(s)

      2. 优化每一步的平均奖励
        J a v R ( θ ) = ∑ s d π θ ( s ) ∑ a π θ ( s , a ) R ( s , a ) J_{avR}(\theta)=\sum_sd^{\pi_\theta}(s)\sum_a\pi_\theta(s,a)R(s,a) JavR(θ)=sdπθ(s)aπθ(s,a)R(s,a)

其中, d π θ d^{\pi_\theta} dπθ是指策略 π θ \pi_\theta πθ到达稳定状态的一个马尔可夫链, d π θ ( s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值