强化学习基础篇(二十九)策略梯度(一)

强化学习基础篇(二十九)策略梯度(一)

之前我们一直都是对价值函数或者动作值函数进行参数化近似:
\begin{aligned} V_{\theta}(s) & \approx V^{\pi}(s) \\ Q_{\theta}(s, a) & \approx Q^{\pi}(s, a) \end{aligned}
其中策略是间接得通过值函数进行贪婪策略产生,但本文将介绍如何在model-free场景中对策略进行参数化:\pi_{\theta}(s, a)=\mathbb{P}[a \mid s, \theta]

1、model-free的强化学习算法

image.png

Model-free的强化学习算法可以分为这三类:

  • Value Based强化学习算法

    这类方法是直接学习价值函数,然后隐似得通过贪婪方法得到策略

  • Policy Based强化学习算法

    这类方法是不学习价值函数,而是直接对策略进行学习。

  • Actor-Critic强化学习算法

    这类方法同时学习价值函数与策略。

2、Policy-based强化学习算法的优势

一般来说,Policy-based强化学习算法具有更好的收敛性,更加适用于高维的动作空间或者连续的动作空间的环境,并且可以学到随机策略。但是其劣势是通常只会收敛到局部最优解,而不是全局最优解。对策略的评估也比较低效并且有着较大的方差。

例如玩石头剪刀布的游戏:

image.png

如果是一个确定性策略,则很容易输掉游戏(例如你一直出剪刀,那对方一直出石头!)。一个均匀分布的随机策略(石头剪刀布随机)才是最优的(满足纳什均衡)。

随机策略和带随机性的策略是两个不一样的概念!带随机性的策略——例如\epsilon-greedy策略,是为了更好的探索!随机策略和探索无关,而是最后求出的策略就是一个随机的策略!

3、策略目标函数

Policy-based强化学习算法的目标就是在有\theta参数化的策略\pi_{\theta}(s,a)下,找到最优的参数\theta。这个最优的\theta可以有几种方式进行评价其好坏:

  • 在按幕的环境,可以直接评价初始状态的价值:
    J_{1}(\theta)=V^{\pi_{\theta}}\left(s_{1}\right)=\mathbb{E}_{\pi_{\theta}}\left[v_{1}\right]

  • 在无结束点的连续环境中,可以使用平均价值进行评价:
    J_{a v V}(\theta)=\sum_{s} d^{\pi_{\theta}}(s) V^{\pi_{\theta}}(s)
    连续环境状态(无开始状态)下,个体一直与环境进行交互,此时应该针对每个可能的状态计算从该时刻开始一直持续与环境交互下去能够得到的奖励,按该时刻各状态的概率分布求和。

  • 或者使用每个时间步的平均奖励进行评价:
    J_{a v R}(\theta)=\sum_{s} d^{\pi_{\theta}}(s) \sum_{a} \pi_{\theta}(s, a) \mathcal{R}_{s}^{a}
    其中d^{\pi_\theta}(s)是基于当前策略下马尔科夫链关于状态的静态分布。在一个确定的时间步长里,求出每种状态下采取所有行为能够得到的即时奖励,然后按各状态的概率分布求和。

4、策略最优化

基于策略的强化学习算法是一个最优化的问题,我们需要找到一个\theta,在改参数下对目标函数J(\theta)极大化,要达到这个目的,我们可以使用两种类型的算法:

一是不基于梯度的算法,比如,爬山算法 (Hill climbing),单纯形法(Simplex),amoeba算法,Nelder-Mead方法,或者遗传算法 (Genetic algorithm)。

二是基于梯度的算法,比如,梯度下降算法(Gradient descent),共轭梯度法(Conjugate gradient method)以及拟牛顿法 (Quasi-Newton method)。

本节主要集中介绍梯度下降法。

策略梯度

当我们将策略目标函数J(\theta)作为优化目标,策略梯度算法是需要在参数空间\theta中,通过梯度上升算法找到目标函数J(\theta)的局部极大值。
\Delta \theta=\alpha \nabla_{\theta} J(\theta)

image.png

\alpha是更新步长的超参数,\nabla_{\theta} J(\theta)就是策略梯度:

image.png

若用差分(Finite Difference)的方式进行\pi_{\theta}(s, a)的策略梯度的数值梯度法求解,则可以在每个参数的维度k \in[1,n]上对参数进行一个很小的扰动\epsilon求偏导数,
\frac{\partial J(\theta)}{\partial \theta_{k}} \approx \frac{J\left(\theta+\epsilon u_{k}\right)-J(\theta)}{\epsilon}
其中u_k是单位向量,表示在第k个维度上值是1,在其他维度上值都是0。这种方法求梯度比较简单,噪声很大,很低效,但是也扛不住有时候效果还不错,特别是在策略没法微分的时候很有用。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352