• Policy Gradient with Baseline


    Policy Gradient with Baseline

    1.Baseline

    在这里插入图片描述


    在这里插入图片描述

    Baseline与动作A无关。


    在这里插入图片描述

    因此我们可以把策略梯度改写。


    在这里插入图片描述

    采用Monte Carlo 近似期望。

    在这里插入图片描述


    在这里插入图片描述

    然后使用随机梯度上升更新 θ \theta θ


    在这里插入图片描述

    一个好的baseline可以减少方差,加快收敛。


    1.1 baseline的选择

    在这里插入图片描述

    b=0时是标准的policy gradient


    在这里插入图片描述

    第二种将b设为 V π ( s t ) V_{\pi}(s_t) Vπ(st) ,因为 V π V_{\pi} Vπ Q π Q_{\pi} Qπ的期望,与 Q π Q_{\pi} Qπ接近,且不依赖于 A t A_t At


    2.REINFORCE with Baseline

    在这里插入图片描述

    REINFORECE 采用 u t u_t ut作为 Q π Q_{\pi} Qπ的Mente Carlo 近似。


    在这里插入图片描述

    同时采用价值网络近似 V π V_{\pi} Vπ

    在这里插入图片描述

    2.1 网络结构

    在这里插入图片描述


    2.2 更新网络

    在这里插入图片描述

    记: v ( s t ; w ) − u t = δ t v(s_t;w)-u_t=\delta_t v(st;w)ut=δt


    在这里插入图片描述

    策略网络采用梯度上升更新参数。


    在这里插入图片描述

    价值网络采用SGD更新参数。


    2.3 总结

    在这里插入图片描述


    在这里插入图片描述

    再完成一句游戏后,观测的轨迹,可以获得多个 u t , δ t u_t,\delta_t ut,δt ,因此可以进行多次更新。


    3. Advantage Actor-Critic (A2C)

    在这里插入图片描述

    与AC不同的是,AC采用 q ( s , t ; w ) q(s,t;w) q(s,t;w)近似 Q π ( s , t ) Q_{\pi}(s,t) Qπ(s,t),A2C 是采用 v ( s ; w ) v(s;w) v(s;w)近似 V π ( s ) V_{\pi}(s) Vπ(s)


    在这里插入图片描述

    A2C同样基于baseline。


    3.1 基本定理

    在这里插入图片描述

    这里证明了几个定理。


    在这里插入图片描述


    在这里插入图片描述
    在这里插入图片描述

    同样采用Mente Carlo近似 Q π ( s t , a t ) Q_{\pi}{(s_t,a_t)} Qπ(st,at) V π ( s t ) V_{\pi}(s_t) Vπ(st)


    3.2 优势函数

    在这里插入图片描述

    我们将这部分称为 优势函数。


    使用定理进行等式变形。

    在这里插入图片描述


    在这里插入图片描述

    我们便可以进行随机梯度上升更新 θ \theta θ


    对于价值网络,我们可以使用TD target更新。

    在这里插入图片描述
    在这里插入图片描述


    3.3 解释说明

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    因此当优势函数值为正说明 a t a_t at是好的,否则是坏的。


    在这里插入图片描述

    policy network 通过 s t s_t st 选择 a t a_t at 由环境产生 r t , s t + 1 r_t,s_{t+1} rt,st+1,value network 计算 advantage function 用来更新policy network,使用TD算法更新value network。


    4.REINFORCE versus A2C

    在这里插入图片描述

    两者网络结构完全相同。


    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    A2C的TD target 可以使用 multi step 更新。

    在这里插入图片描述


    在这里插入图片描述

    而REINFORECE 使用 u t u_t ut 计算 δ t \delta_t δt


    在这里插入图片描述

    可以看出,REINFORCE是multi step TD target 的特例。

    在这里插入图片描述

  • 相关阅读:
    红黑树树插入后自平衡
    qt开发-09_分裂器
    编程语言介绍
    HTML人物介绍、个人设计web前端大作业、贝聿铭人物介绍(带报告3000字)
    软件工程与计算总结(十三)详细设计中的模块化与信息隐藏
    v-for列表渲染
    三位数的IMU长什么样?二位数的呢?不要钱的呢?| 为FishBot配置IMU惯性测量单元
    vue基础入门
    YOLOv6 PyTorch模型转TensorRT
    【字符编码系列一】ASCII编码是什么?
  • 原文地址:https://blog.csdn.net/weixin_45750972/article/details/126849341