ES
Evolution Strategies as a Scalable Alternative to Reinforcement Learning
我们探索使用Evolution Strategies(ES),一类黑盒优化算法,作为基于MDP的流行RL技术的替代方案,如Q-learning和Policy Gradients。 MuJoCo和Atari上的实验表明,ES是一种可行的解决方案策略,可以根据可用的CPU数量进行非常好的扩展:通过使用基于常见随机数的新型通信策略,我们的ES实现只需要传达标量,使其可以扩展到超过一千个并行进程。 这使我们能够在10分钟内解决3D人体行走,并在训练一小时后获得大多数Atari游戏的竞争结果。 此外,我们强调了作为黑盒优化技术的ES的几个优点:它不受行动频率和延迟奖励的影响,能够容忍极长的视野,并且不需要temporal discounting或值函数逼近。
本文的主要发现如下:
我们发现使用虚拟批量标准化极大地提高了进化策略的可靠性。 如果没有这些方法,ES在我们的实验中证明是脆弱的,但通过这些重新参数化,我们在各种环境中取得了很好的结果。
我们发现进化策略方法可高度并行化:通过引入基于常见随机数的新型通信策略,即使使用超过一千名工作人员,我们也能够在运行时实现线性速度。 特别是,使用1,440个工作进程,我们能够在10分钟内解决MuJoCo 3D人形任务。
进化策略的数据效率惊人地好:我们能够匹配A3C 在大多数Atari环境中,使用的数据量在3倍到10倍之间。由于没有执行反向传播和没有值函数,所需的计算量减少了大约3倍,这在一定程度上抵消了数据效率的轻微下降。ES1小时训练结果需要的计算量与A3C1天训练结果相同,而在23个游戏测试上表现更好,在28个上表现更差。在MuJoCo任务中,我们能够匹配信任区域策略优化,使用的数据最多不超过10倍。
我们发现ES表现出比像TRPO这样的策略梯度方法更好的探索行为:在MuJoCo人形机器人任务中,ES已经能够学习各种各样的步态(比如侧向行走或者向后行走)。TRPO从未观察到这些不寻常的步态,这表明了一种本质上不同的勘探行为
我们发现进化策略方法是稳健的:对于所有Atari环境,我们使用固定超参数实现了上述结果,对于所有MuJoCo环境,我们使用了一组不同的固定超参数(一个二元超参数除外,它在不同的MuJoCo环境中并不保持恒定)
方法
进化策略
进化算法的常规流程为:初始种群>>交叉变异>>评价>>筛选下一代......直到问题收敛
令 为评价函数, 为策略的参数,带噪音的分布 为当前的策略种群
则优化的最终目标是最大化 ,natural evolution strategies (NES)使用梯度
我们用多元高斯分布来生成噪音,则可得到梯度
于是有算法1
这里初始种群为带扰动的初始策略网络,评价函数视为环境的回报,基于评价函数用梯度下降产生下一代群体。
进化策略的扩展和并行化
ES非常适合扩展到许多并行工作者:1)它在完整的episode上运行,因此只需要进程之间的不频繁通信。 2)每个进程获得的唯一信息是episode的标量返回:如果我们在优化之前在进程之间同步随机种子,每个进程都知道其他进程使用了什么扰动,因此每个进程只需要与另一个进程之间传递单个标量同意参数更新。3 )它不需要值函数近似。具有值函数估计的RL本质上是连续的:为了改进给定的策略,通常需要对值函数进行多次更新来获得足够的信号。因此该算法可以有效的扩展到上千个工作进程。
ES的探索由参数扰动驱动,对于ES来改进参数 ,种群中的一些成员必须获得比其他成员更好的回报:即高斯扰动向量偶尔导致新的个体 具有更好的回报是至关重要的。
对于Atari环境,我们发现DeepMind的卷积体系结构上的高斯参数扰动并不总能导致充分的探索:对于某些环境,随机扰动的参数倾向于编码总是采取一种特定反应的策略,而不管 作为输入的状态。 但是,我们发现通过在策略规范中使用虚拟批量规范化,我们可以匹配大多数游戏的策略梯度方法的性能。
参数空间中的平滑 vs 动作空间中的平滑
RL的一大困难来源于缺乏策略的信息梯度:这种梯度可能由于环境或策略的不平滑而不存在,或者可能只能作为高方差估计来获得,因为环境通常只能通过采样来访问。令 ,其中 , 则我们的优化目标为 。
因为允许动作是离散的,并且允许策略是确定性的, 可能是非平滑的;更重要的是,因为我们不能明确地访问决策问题的潜在状态转移函数,梯度不能用类似反向传播的算法来计算。为了使问题变得平滑并有一种方法来估计它的梯度,我们需要添加噪声。
策略梯度方法在动作空间添加噪音 ,所以目标函数为 ,梯度为
对于进化策略,这里使用的方法是基于参数扰动的噪音,即参数 ,
Last updated