李宏毅深度强化学习(国语)课程(2018) 笔记(一)Policy Gradient (Review)

李宏毅深度强化学习(国语)课程(2018)

 https://www.bilibili.com/video/BV1MW411w79n?spm_id_from=333.337.search-card.all.click&vd_source=a4c529a804be1b8a88658c292d9065f9

         PPO是Policy Gradient的变形。由on policy 变为off policy后,加些constraint,就变成了PPO。

        强化学习三要素,Actor,Environment,Reward Function。

         Actor 的行为由Policy控制。Policy部分通常是一个 Neural Network函数。

        举例说明Actor是如何与环境互动。设计observation,让机器看到什么样的游戏画面是比较有效的。

         注意:一场游戏叫做一个Episode,一个Episode的奖励总和叫做Total reward,Actor的目的是想办法去Maximize可以得到的Reward。

         一场游戏里面,把(sa)序列对按顺序组合起来,就是Trajectory。假设控制Actor的Network的参数θ已给定,可计算每个Episode里面发生这个Trajectory的几率。

        由于Actor在同一state下,产生的行为有随机性,Environment在给定action后,产生的新的state也具有随机性,所以,R(T)是一个random variable。但是,给定θ条件下,R(T)的期望值是能够计算的。

        R(T)的期望值的算法就是穷举所有可能的Trajectory \tau,即根据θ计算某一个\tau出现的概率,然后计算\tau的Total Reward。但是,p_{\theta }(\tau)通常是未知的,因此,需要找到一个合适的计算方法。

  Policy Gradient 采用Gradient descent方法Maximize Reward。

当Policy为Neural Network函数时, \bigtriangledown log^{}p_{\theta }(a_{t}^{n}|s_{t}^{n})相当于监督学习中的神经网络中的反向传播(梯度下降)。

 

        如果采取任何动作, Total Reward均为正,那么所有动作的概率都要提升,在动作的概率和相加为1的情况下,动作概率的调整就不科学。

 

 

        同一场游戏里面,也许有些动作是好的,有些动作是不好的,假设游戏最终的结果是好的,并不代表每一个行为都是对的,结果不好,并不代表里面的每一个行为都是错的。需要sample足够多。因为sample不够多,需要给每一个state的action合理的credit,对分数的贡献是多少。只计算从这个action执行以后所得到的reward。

        现在假设在某一个state执行某一个action,相较与其他可能的action,有多好。在意的不是一个绝对的好,而是说在同样的state的时候,执行某一个action,相较与其他可能的action,有多好。

 

加入折扣因子。 

 

猜你喜欢

转载自blog.csdn.net/qq_22749225/article/details/125474814