TRPO 算法 (Trust Region Policy Optimization)和PPO 算法 (Proximal Policy Optimization)都属于MM(Minorize-Maximizatio)算法。在本文中,我们将介绍基础的MM算法,并且通过几个步骤推导出TRPO和PPO的目标函数。在我们的强化学习系列课程之中( Reinforcement Learning series ),我们将会分别学习不同的主题的内容。但是在本文之中,我们将会展示更多的数学细节给这些好奇的、想了解这些目标函数背后原因的读者们。
Surrogate function(替代函数)
RL( Reinforcement Learning即强化学习) 的目标就是最大化预期折扣奖励(the expected discounted rewards)。下图之中,红色的线表示期望折扣回,其中 η 被定义为:
MM是一种迭代方法,对于每次迭代,我们发现替代函数M(蓝线)有如下性质:
- 是η的下界函数
- 可用于估计当前策略的 折扣奖励 η
- 易于优化(我们将会把替代函数近似估计为一个二次方程)
在每一次迭代之中,我们找到最佳的M点并且把它作为当前的策略。
之后,我们重新评估新策略的下界并且重复迭代。当我们持续这个过程,策略也会不断的改进。因为可能的策略是有限的,所以我们当前的概率最终将会收敛到局部或者全部最优的策略。
目标函数
如下所示,有原始的策略梯度PG、置信域策略梯度TRPO和近端策略优化PPO版本的目标函数。接下来我们将详细进行证明。
简而言之,我们想最大化优势函数:动作值函数(奖励的最大期望)减去对应状态拥有的基准值。约束条件为新旧策略的差异不能过大。本文余下部分将数学证明该约束问题。
值函数、动作值函数和优势函数的表达式
首先,我们先定义Q值函数、状态值函数和优势函数。直接书写如下:
折扣奖励函数
折扣奖励η的期望计算如下:
或者,我们可以使用其他策略计算策略的奖励。以便比较两种政策。
证明: