深度强化学习(3):策略学习篇

  • Post author:
  • Post category:其他


  • 王树森老师《深度强化学习基础》学习笔记



三、策略学习(Policy-Based Reinforcement Learning)

  • 用一个

    神经网络(policy network,策略网络)近似策略函数

    ,用于控制Agent运动。



策略函数近似(Policy Function Approximation)

  • Policy Function



    π

    (

    a

    s

    )

    \pi(a|s)






    π


    (


    a





    s


    )





    是一个 概率密度函数(PDF)

  • Policy Network:用一个神经网络



    π

    (

    a

    s

    ;

    θ

    )

    \pi(a|s; \theta)






    π


    (


    a





    s


    ;




    θ


    )





    近似



    π

    (

    a

    s

    )

    \pi(a|s)






    π


    (


    a





    s


    )









    θ

    \theta






    θ





    是这个神经网络要训练的参数。

  • 性质:



    a

    A

    π

    (

    a

    s

    ;

    θ

    )

    =

    1

    \sum{_{a{\in}A} \pi(a|s; \theta)}=1
























    a







    A



















    π


    (


    a





    s


    ;




    θ


    )





    =








    1





    (PDF的性质),其中A是所有可能的动作。



状态价值函数近似(State-Value Function Approximation)

  • 动作价值函数(Action-Value Function) 回顾(见第一章)。

  • 状态价值函数




    • V

      π

      (

      s

      t

      )

      V_{\pi}(s_t)







      V











      π



















      (



      s










      t


















      )









      Q

      π

      Q_{\pi}







      Q











      π






















      的期望, 把动作



      A

      A






      A





      作为随机变量. 关于



      A

      A






      A





      求期望把



      A

      A






      A





      消掉. 所以





      V

      π

      V_{\pi}







      V











      π






















      只与



      π

      {\pi}







      π










      s

      s






      s





      有关


      , 给定状态S,由



      V

      π

      (

      s

      t

      )

      V_{\pi}(s_t)







      V











      π



















      (



      s










      t


















      )





      的大小可以判断policy



      π

      \pi






      π





      的好坏.

  • 策略学习

    • 状态价值函数近似(Approximate state-value function):

    • 策略学习,给定状态S,



      π

      \pi






      π





      的策略越好,



      V

      V






      V





      的值越大。为了让



      π

      \pi






      π





      的策略好,就要改进参数



      θ

      \theta






      θ





    • 对状态S求期望以使 只与参数



      θ

      \theta






      θ





      有关。



策略梯度(Policy Gradient)

  • 策略梯度的计算:



    其中红色部分推导由求导的链式法则反推而出:

  • 整体推导并不严谨,只是为了帮助理解。这里忽略了



    Q

    π

    (

    s

    ,

    a

    )

    Q_{\pi}(s,a)







    Q











    π



















    (


    s


    ,




    a


    )





    也要关于



    θ

    \theta






    θ





    求导(结果相同)。

  • 策略梯度的两种等价形式:Form 1用于离散动作,Form 2用于连续动作(也适用于离散动作)。

  • Eg:

    • 离散动作:

    • 连续动作:

      因为



      π

      \pi






      π





      函数是个非常复杂的神经网络所以无法做出定积分求出期望,所以只能用蒙特卡洛近似期望。

      蒙特卡洛:抽一个或多个样本,用样本来近似期望。



使用策略梯度更新策略网络(Update policy network using policy gradient)

  • 算法:

  • 其中有个问题是 无法计算



    Q

    π

    Q_{\pi}







    Q











    π






















    ,两种方法:

    • REINFORCE:

      需要整个过程结束,记录所有的奖励



      r

      r






      r







    • 用一个神经网络来做近似



      Q

      π

      Q_{\pi}







      Q











      π






















      ,即常用的 actor-critic 方法。见下节内容。



参考与感谢:



版权声明:本文为qq_44755885原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。