打字猴:1.70053933e+09
1700539330
1700539331 知识点
1700539332
1700539333 强化学习,Q-learning
1700539334
1700539335 问题 什么是策略梯度,它和传统Q-learning有什么不同,相对于Q-learning来说有什么优势?
1700539336
1700539337 难度:★★★★☆
1700539338
1700539339 分析与解答
1700539340
1700539341
1700539342
1700539343
1700539344 在策略梯度中,我们考虑前后两个状态之间的关系为,其中st、st+1是相继的两个状态,at是t步时所采取的行动,p是环境所决定的下个时刻状态分布。而动作at的生成模型(策略)为,其中πθ是以θ为参变量的一个分布,at从这个分布进行采样。这样,在同一个环境下,强化学习的总收益函数,,完全由θ所决定。策略梯度的基本思想就是,直接用梯度方法来优化R(θ)。可以看出,和Q-learning不同的是,策略梯度并不估算Q函数本身,而是利用当前状态直接生成动作at。这有效避免了在连续状态空间上最大化Q函数的困难。同时,直接用梯度的方法优化R(θ)可以保证至少是局部收敛的。
1700539345
1700539346
1700539347 要使用梯度法,首先要知道如何计算R(θ)的导数。设τ为某一次0到T时间所有状态及行动的集合(称作一条轨迹),则R(θ)=E(r(τ)),其中函数r计算了轨迹τ的得分。我们有,所以
1700539348
1700539349
1700539350
1700539351
1700539352 (11.2)
1700539353
1700539354
1700539355
1700539356 注意最后一步是因为由环境决定从而与θ无关,因此。每个轨迹τ所对应的梯度为
1700539357
1700539358
1700539359
1700539360
1700539361 (11.3)
1700539362
1700539363 其中sk,ak为轨迹τ上每一步的状态和动作。这样,给定一个策略πθ,我们可以通过模拟获得一些轨迹,对于每条轨迹,可以获得其收益r(τ)以及每一步的<状态、行动>对,从而可以通过式(11.2)和式(11.3)获得当前参数下对梯度的估计。一个简单的算法描述如图11.7所示。
1700539364
1700539365
1700539366
1700539367
1700539368 图11.7 策略梯度算法
1700539369
1700539370
1700539371
1700539372
1700539373
1700539374
1700539375 注意到,∇θR(θ)实际上是一个随机变量g(τ)的期望。我们对g(τ)进行若干次独立采样,可以获得对其期望的一个估计。如果能在不改变期望的前提下减少g(τ)的方差,则能有效提高对其期望估计的效率。我们注意到,所以有。对于任一个常量b,我们定义一个强化梯度,易知,选取合适的b,可以获得一个方差更小的,而维持期望不变。经过计算可以得到最优的b为
1700539376
1700539377
1700539378
1700539379
[ 上一页 ]  [ :1.70053933e+09 ]  [ 下一页 ]