TRPO 简述 - A Brief Introduction to Trust Region Policy Optimization

本文我们来简单介绍下一种强化学习方法——TRPO (Trust Region Policy Optimization),中文名称是“置信域策略优化”。该方法由伯克利博士生 John Schulman 提出。TRPO 是策略搜索方法中的一类随机策略搜索方法,它正面解决了梯度更新步长选择的问题,给出了一种单调的策略改善方法。

本文仅简要论述其原理,更多细节请参考:

Schulman J., Optimizing Expectations: From Deep Reinforcement Learning to Stochastic Computation Graphs. PhD thesis, University of California, Berkeley, 2016.

数学基础

首先给出一些数学基础,对于统计、优化功底较强的读者可直接跳过。

信息论基础

信息熵:对于离散的系统

H(X)=ipilogpi H ( X ) = − ∑ i p i log ⁡ p i
对于连续的系统
H(x)=ExP[I(x)]=ExP[logP(x)] H ( x ) = E x ∼ P [ I ( x ) ] = − E x ∼ P [ log ⁡ P ( x ) ]
信息熵反映了信息量的多少,信息熵越大说明信息量越多。随机事件的信息量与随机变量的确定性有关,不确定性越大包含的信息量就越大。

交叉熵:令不完美的编码用 Q Q 表示,平均编码长度为

H ( P , Q ) = E P ( x ) Q ( x ) = P ( x ) log Q ( x ) d x
交叉熵用来衡量编码方案不一定完美时,平均编码的长度。交叉熵常被用作损失函数。原因是真实的样本部分是 P P ,而模型概率分布为 Q ,只有模型分布于真实样本分布相等时,交叉熵最小。

KL散度

DKL(PQ)=ExP[logP(x)Q(x)]=P(x)logP(x)dxP(x)logQ(x)dx D K L ( P ‖ Q ) = E x ∼ P [ log ⁡ P ( x ) Q ( x ) ] = ∫ P ( x ) log ⁡ P ( x ) d x − ∫ P ( x ) log ⁡ Q ( x ) d x
KL 散度用来衡量两个概率分布之间的相似程度,其重要性质是 非负性 1,而且,当且仅当两个概率分布处处相等时,KL散度取到零。KL散度与一般的距离不同,它一般不具有对称性。
H(P,Q)=DKL(PQ)+H(P) H ( P , Q ) = D K L ( P ‖ Q ) + H ( P )
上述关系很容易推导,此处从略,可以看出样本的真实分布 P P 保持不变,最优化交叉熵等价于最优化 KL 散度。KL散度还可用于 异常检测

优化基础

TRPO 最终将转化为优化问题。时间有限,这里不展开介绍,具体细节参考以下两篇文章即可:

  1. 无约束优化问题的一般解法
  2. 约束优化问题的最优性条件

TRPO

优势函数

TRPO的关键作用在于找到合适的步长。合适的步长是指当策略更新后,回报函数的值不能更差。令 τ 表示一组状态-行为序列 s0,u0,,sH,uH s 0 , u 0 , … , s H , u H ,则回报函数为

η(π~)=Eτ|π~[t=0γtr(st)] η ( π ~ ) = E τ | π ~ [ ∑ t = 0 ∞ γ t r ( s t ) ]
其中 π~ π ~ 表示新策略。我们令 π π 表示旧策略,那么拆分回报函数:
η(π~)=η(π)+Es0,a0,π~[t=0γtAπ(st,at)] η ( π ~ ) = η ( π ) + E s 0 , a 0 , ⋯ ∼ π ~ [ ∑ t = 0 ∞ γ t A π ( s t , a t ) ]
其中 2
Aπ(s,a)=Qπ(s,a)Vπ(s)=EsP(s|s,a)[r(s)+γVπ(s)Vπ(s)] A π ( s , a ) = Q π ( s , a ) − V π ( s ) = E s ′ ∼ P ( s ′ | s , a ) [ r ( s ) + γ V π ( s ′ ) − V π ( s ) ]
可以看出,价值函数 Vπ(s) V π ( s ) 是该状态下所有动作致函数关于动作概率的平均值;而动作值函数 Qπ Q π 是单个动作对应的值函数。因此,优势指的是动作函数相比于当前状态的值函数的优势。如果优势大于零,则说明该动作比平均动作好。

下面我们改写新策略回报函数公式,求取优势函数的期望,以便后续估计:

η(π~)
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: (TRPO)? Trust Region Policy Optimization (TRPO) 是一种用于强化学习的算法,它通过限制策略更新的步长,以确保每次更新都不会使策略变得太差。TRPO 是一种基于梯度的方法,它通过最大化期望收益来优化策略。TRPO 的主要优点是它可以保证每次更新都会使策略变得更好,而不会使其变得更差。 ### 回答2: Trust Region Policy OptimizationTRPO)是一种用于优化强化学习策略的算法。TRPO通过在每次更新策略时限制更新量,来解决策略优化中的非线性优化问题。其目标是在保证策略改进的同时,尽量减小策略更新带来的影响。 TRPO的核心思想是在每次迭代中保持一个信任区域,该区域内的策略改进之后的表现要比当前策略好。通过限制策略更新的KL散度(Kullback-Leibler Divergence),TRPO保证了平稳的、逐步改进的过程。 TRPO的算法步骤如下:首先,通过采样数据来估计策略的梯度;其次,通过求解一个约束优化问题来计算策略更新的方向和大小;最后,采用线搜索来确定在保证改进的前提下,策略更新的步长。 TRPO相对于其他的策略优化算法有几个优点。首先,TRPO可以高效地利用采样数据,避免了需求大量样本的问题。其次,通过控制策略更新的幅度,TRPO可以保持算法的稳定性和鲁棒性。最后,TRPO可以应用于各种不同类型的强化学习任务,并取得不错的性能。 总之,Trust Region Policy Optimization 是一种通过限制策略更新的KL散度来优化强化学习策略的算法。其核心思想是在每次迭代中维持一个信任区域,通过约束优化问题来计算策略更新,并使用线搜索来确定更新步长。TRPO具有高效利用采样数据,保持稳定性和适应性强的优点,能够在不同任务中取得良好性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值