【Proximal Distilled Evolutionary Reinforcement Learning 的翻译】

多目标进化强化学习



摘要

  强化学习在很多复杂环境中由于和 DNNs 结合 取得了显著的效果,与此同时,遗传算法,作为RL 的竞争算法,在 扩展到 DNNs 上 解决一些挑战性 任务的时候却 鲜有成果。和二分法想法的不同的是,在现实世界中, 进化和学习是不断相互作用的互补过程,最近提出的进化强化学习(ERL)框架已经证明了两种方法相结合对性能的共同好处。但是 ERL 没有充分 解决 遗传算法的可扩展问题。

  本文中,我们发现,这个问题的根源在于dnn的简单遗传编码和传统的生物变异算子 不幸结合。当应用于这些编码时,标准算子是破坏性的,会导致网络特征的灾难性遗忘;

  我们提出一种初始算法 PDERL ,其特征是 将 进化算法和 学习 算法 进行分层整合。PDERL的主要创新是使用了基于学习的变异算子,以弥补遗传表示的简单性。与传统算子不同,我们的方案满足了变异算子在直接编码的dnn上的功能要求;我们在OpenAI gym 的五种机器人运动设置中评估PDERL。我们的方法在所有测试环境中优于ERL,以及两种最先进的 RL 算法 PPO和TD3。


一、一些术语

文章链接: Proximal Distilled Evolutionary Reinforcement Learning

Deep Neural Networks(DNNs)深度神经网络
Genetic algorithms(GAS)遗传算法
Evolutionary reinforcement learning(ERL)进化强化学习
Proximal distilled evolutionary reinforcement learning(PDERL)近端蒸馏 进化强化学习;
Genetic encoding遗传编码
Variation operators变异算子;
Genetic memory遗传 记忆;
hierarchical integration分层整合
Genetic representation遗传表示
Elite精英

二、introduction

三、background

1. Evolutionary reinforcement learning

2. Genetic encoding and variation operators

四、 方法

  这部分介绍我们提出的 基于学习 的遗传算子,并且介绍他们如何和ERL相结合的。

4.1. the genetic memory-遗传记忆

  ERL的种群有一个主要问题是:不直接利用actor在 population 中收集的个人经验;Population 种群不是从 RL agent 直接受益,从而 进行 学习 提高 ;Agent 的 个体经验 是 我们下一节 将要介绍的 新的算子的 必要方面, 因此 agent 需要 空间 去存储这些 个体经验;

  我们所做的第一个修改是: 给种群的每个个体 和 RL agent 配置一个很小的 私有 buffer,用来存储 他们 最近的 经验。所付出的代价是稍微增加存储区间。根据 容量 k 的大小, buffer 也可以包括 祖先的经验,因为 在 buffer 中的 transition 可以覆盖 多个 种群, 我们 将 这些 agent 的 私有 buffer 称作 遗传记忆;Policy 在 和 环境交互过程中, 不单单 像 ERL 中所做的那样 存储 自己的经验到 DDPG 的buffer 中,还存储到 遗传记忆中;

  在 遗传记忆 中的 祖先经验 通过 变异算子 引入, 突变的 子policy 完全 继承 父辈的 遗传记忆。在交叉过程中, buffer 仅仅 只是 部分 继承;交叉后代用来自父母双方各自 遗传记忆 的 最近的一半 transitions 来填充它的缓冲区。

4. 2. Q-filtered distillation crossovers

  在本节中,我们提出了一个Q-过滤的行为蒸馏交叉方法,它有选择地将两个父策略的行为合并到一个子策略中。与 n-points 交叉算子不同,该算子作用于表现型空间,而不是参数空间。

图1: Q-filtered 蒸馏交叉算法 和 n-points 交叉算法 的对比

图1: Q-filtered 蒸馏交叉算法 和 n-points 交叉算法 的对比。
图1.知乎

  对于种群中的一对父角色,交叉操作的工作如下。创建一个新的带有空的 genetic memory 的 agent,;此genetic memory 按照父类的 genetic memory 的相同比例 覆盖填充。子 agent 通过 模仿学习 进行训练 ,去选择 父类 在新创建的 遗传记忆 中的 state 所采取的直接动作,同样的 ,这个 过程可以被看做更一般的策略 蒸馏,因为 他的 目的是 蒸馏 父辈 的行为 到 子策略;

在这里插入图片描述

  和传统的2016文献 的 策略蒸馏方法不同的是, 此处两个父类网络都被涉及,而不是1个;这就带来了行为分歧的 问题;两个父类策略可以在相同或者相似的 state 下采取完全不同的动作;这样就会导致一个问题,子策略不知道在每个状态下应该模仿哪个行为。此处提出方法的关键是,RL agent 的 critic 已经知道了 某个状态 和 动作 之下的 value;因此,它可以用来选择哪些 action 应该被 follow ,在规则和全局一致的方式下。我们提出了如下 的 Q-filtered 动作 克隆 损失函数 去 训练 子策略:

L ( C ) = ∑ i N C ∥ μ z ( s i ) − μ x ( s i ) ∥ 2 I Q ( s i , μ x ( s i ) ) > Q ( s i , μ y ( s i ) ) + ∑ j N C ∥ μ z ( s j ) − μ y ( s j ) ∥ 2 I Q ( s j , μ y ( s j ) ) > Q ( s j , μ x ( s j ) ) + 1 N C ∑ k N C ∥ μ z ( s k ) ∥ 2 \begin{aligned} L(C) &=\sum_{i}^{N_{C}}\left\|\mu_{z}\left(s_{i}\right)-\mu_{x}\left(s_{i}\right)\right\|^{2} \mathbb{I}_{Q\left(s_{i}, \mu_{x}\left(s_{i}\right)\right)>Q\left(s_{i}, \mu_{y}\left(s_{i}\right)\right)} \\ &+\sum_{j}^{N_{C}}\left\|\mu_{z}\left(s_{j}\right)-\mu_{y}\left(s_{j}\right)\right\|^{2} \mathbb{I}_{Q\left(s_{j}, \mu_{y}\left(s_{j}\right)\right)>Q\left(s_{j}, \mu_{x}\left(s_{j}\right)\right)} \\ &+\frac{1}{N_{C}} \sum_{k}^{N_{C}}\left\|\mu_{z}\left(s_{k}\right)\right\|^{2} \end{aligned} L(C)=iNCμz(si)μx(si)2IQ(si,μx(si))>Q(si,μy(si))+jNCμz(sj)μy(sj)2IQ(sj,μy(sj))>Q(sj,μx(sj))+NC1kNCμz(sk)2

其中,NC是从两个 父类 agent 的 genetic memory 中 采集到的 batch 大小, ux 和 uy 分别代表 确定性 父类 策略,uz是 子agent的确定性 策略, 指标函数 II 使用 RL agent 的 Q-network 函数 来决定 父类 在每个状态下所采取的最好的动作。子策略 被 训练 通过 最小化 最初 的两个 terms 模仿 这些动作。最后的term 是 L2 正则化从而 阻止 输出饱和正切 双曲线 激活。图1 方框图 包含了 这个新的 交叉 和 ERL n-points 交叉的对比。我们 把带有交叉 蒸馏的 ERL 蒸馏 称为 蒸馏 进化 强化学习;

  我们注意到,虽然这个 操作符 的计算强度确实更高,但在相对较小的遗传记忆上进行少量的训练就足够了;另外,我们希望我们的方法的分布式实现来补偿产生的挂钟时间惩罚。我们把这项努力留给今后的工作。

4.3 .parent selection mechanism-父辈选择机制

  如何给交叉算子选择父辈是一个有趣的问题;常规做法是定义一个交配得分函数m,这个函数有两个输入策略,有一个得分输出;得分越高的对组越容易被选中,我们设计两个方法去计算得分,贪心策略 和 基于 距离策略;

贪心策略:得分 m
在这里插入图片描述
可以 通过 两个 父辈 的 fitness 之和 来决定;这种选择大体提高了种群的稳定性,而且可以使不好的个体不被选择;

基于距离:基于距离得分可以通过所有可能策略的距离矩阵计算出来,越是不同的策略越容易被选择用来交配;关于’不同’的精确定义是基于距离矩阵dII,此处,我们提出了 两个 policy 的 所有行为空间 的 矩阵 ,采用如下形式:
在这里插入图片描述
  此处的ρx和 ρy是 两个 agents的状态 访问 分布;
  这种距离衡量的是两个母系政策对各state采取的行动的预期差异,来自各state访问分布的混合。这一期望在实践中是通过从两个agents的遗传记忆中抽取大量样本来随机近似的。这种策略偏向于在种群中引入新行为,以牺牲稳定性为代价,因为匹配个体未被选择的概率增加了。

4.4 proximal mutations-(近端突变)

 正如雷曼等人(2018)所表明的那样,高斯突变可能会对agent的行为产生灾难性的后果。实际上,即使是在梯度下降法中,policy更新的稳定性也是一个问题,在这种方法中,不适当的步长可能会对性能状况造成不可预测的后果。像PPO (Schulman等人2017年)这样的方法通过最小化KL 散度 而变得非常稳定, 从而使新policy的行为接近旧policy。
在这里插入图片描述
在这里插入图片描述

  基于上述动机,我们集成了 安全 变异 算子 SM-G-SUM 和 种群的基因记忆方法。该算子使用输出动作的每个维度在遗传记忆的一批NM转换上的梯度来计算动作对权重扰动的敏感性s:

s = ∑ k ∣ A ∣ ( ∑ i N M ∇ θ μ θ ( s i ) k ) 2 \boldsymbol{s}=\sqrt{\sum_{k}^{|\mathcal{A}|}\left(\sum_{i}^{N_{M}} \nabla_{\boldsymbol{\theta}} \mu_{\boldsymbol{\theta}}\left(s_{i}\right)_{k}\right)^{2}} s=kA(iNMθμθ(si)k)2

这个敏感度用来量化 每个权重的 高斯 扰动,式子是

θ ← θ + x s \theta \leftarrow \theta+\frac{x}{s} θθ+sx

其中,x~(0,σI),σ是突变幅度超参数。

  由此产生的算子 产生的 子policy 是在他们父母的行为附近。因此,我们将该算子称为近端突变(图2),使用它的ERL版本称为近端进化(proximal Evolutionary)强化学习(PERL)。

  虽然近端突变不明确使用学习,但它们依赖于policy 的 容量 去 学习,或者换句话说,是不同的。 如果没有这个特性,这些行为对参数扰动的敏感性就不能用解析法计算。

4.5 intergration-集成

  新引进的算子的全部优点在他们一起使用的时候将得到发挥。Q-filter 蒸馏器将提高种群的稳定性并且可以使state-action对朝向更高的Q值区域。

  近端突变提高种群的探索性和发现更好策略的能力;从评估部分可见,算子互相补充;我认为双层 整合 with ERL 是 PDERL;

在这里插入图片描述

  最终,PDERL 包含 learning 和 evolution 交互层。更高层次的交互通过 种群 和RL agent 之间的信息 交互来实现。新引进的算子 在 遗传算子 层次 增加 了 一个 较低 层 的 交互。如图 3;PDERL

五、 evaluation

  此部分 评估 所提出的 方法的 表现;而且更进一步的研究了 所提出 算子 的表现;

5.1 experiment setup-环境设置-包括参数的选择

  策略和 critic 网络的结构 和 ERL相同;这些和ERL 共享 的超参数 和 Report [18] 有相同的数值,当然,也有几个例外。例如2D的Walker,同步速率 w 从10 下降 到1 从而使 更高 的信息流 从 RL agent 到 种群。在相同的环境中,评估 参数 e 从3增加到5,因为 总奖励 偏差随着 episode 不同。最后,环境 Hopper 和 Ant 的 精英阶层的 一部分 从 0.3 下降到 0.2 。总体说,更高数量的精英 提高了 种群的 稳定性。由于新算子的稳定性,使得该参数不需要更高的稳定值。
  对于特定的PDERL的超参数,由于计算资源有限,我们很少进行调节。在接下来的内容中,我们报告所选择的值和考虑的值。交叉 和 突变 的 batch size 分别是 NC=128 和 NM=256(搜索 64, 128, 256);遗传记忆 存储 容量 k = 8k (2k, 4k, 8k, 10k), 蒸馏交叉的学习率 是 10 (-3),(10-2, 10^-3, 10^-4, 10^-5), 且 子 policy 被 训练 12 epochs (4,8,12,16)。所有的这些 训练 过程 使用 Adam 优化器。除非另有说明,否则使用贪婪父辈选择。与ERL一样,种群 由k = 10个actor 组成。实验报告中,我们使用官方实现手段 ERL 和 TD3 ,和 baselines 中的 PPO;

5.2 performance evaluation - 性能评价

  本节将新提出的方法所获得的平均奖励作为所经历的环境框架数量的函数来评估。结果报告了五个随机的种子。图4显示了5个 mujoco 环境 的平均奖励和所有算法得到的标准偏差;

  虽然PERL和DERL在多个复杂环境中带来了改进,但它们并不能在所有环境中都有很好的性能。其中 PERL 在稳定环境,例如 halfcheetah 和 hopper 中 有效果, 它们的总奖励在多个 rollouts 中方差很低。与此同时, DERL 在 非稳定 环境 例如 walker2d 和 ant 中效果更好,因为 此算法 使 种群 朝向 更高 的 Q 值 区域 。相比之下,PDERL在所有设置下都表现良好,表明新引入的 算子 是互补的。PDERL在所有环境中都明显优于ERL和PPO,尽管采样效率通常低于TD3,但它最终会赶上来。最终,PDERL在《Swimmer》,《HalfCheetah》和《Ant》上的表现明显优于TD3,在Hopper和Walker2d上的表现也稍好一些。
在这里插入图片描述

  表1 报告了 所有的 测试 模型 和 环境的 奖励 分析。同时, videos of ERL 和 PDERL 在 不同 实验 中的 运行结果 可以在 链接 中找到。下面的小节详细介绍了新引入的 算子 ,并提供了一个 PDERL实现的改进的理由 。
在这里插入图片描述

  表1 中 , 所有 环境中的表现。 最好的 均值 用 粗体 ,PERL在两种环境中略微优于PDERL,但是 PDERL 在所有环境中都表现良好。

5.3 crossover evaluation- 交叉评价

  衡量交叉算子质量的一个很好的指标是后代相对于父母的 fitness 。图5绘制了Ant环境中10个随机选择的父对象的度量。每组条形给出了两个父样本的 fitness 和 两类交叉方法得到的策略 的 fitness。所有这些值都通过第一个父样本 的适应度进行 归一化。通过 n点交叉 得到的孩子的表现通常比fitness 最好的父母类低40% ,与此同时,通过蒸馏得到的policy的 fitness 通常至少与父母的适应性一样好。

在这里插入图片描述

  父类 和 子类 的 state visitation 分布情况更清楚地反映了两个 算子 的情况。 图6 显示的是 Ant 环境 采集 到 的 交叉 算子 分布。n点交叉产生了一种与父母的行为 比较 发散。相反,Q filter蒸馏交叉 产生的策略 ,其行为包含父行为的最佳特征。新算子 隐式地 驱动种群中的每一个 新代 向Q值较高的区域移动。

在这里插入图片描述

5.4 mutation evaluation- 突变评价

在这里插入图片描述

  图7说明: ant 环境的 正态突变 表现, 近端突变的 fitness 显著 高于 高斯 突变。 Fitness 和 每组 的 父类 相关。
  图7 显示了 ant 环境 中 随机选择 的 10 个父类的 两种类型突变 的 子 突变 的fitness。 大部分 高斯突变 产生的子 策略 的 fitness 要么小于 要么 ==0;与此同时,近端突变 所产生的 的个体 的 fitness 经常 超过 父类 的拟合度。
在这里插入图片描述

  图8:和之前一样,蓝色的等高线代表父级访问的状态分布,而红色的代表差异。通过近端突变获得的 子 在很大程度上继承了父母的行为,并获得了600的 fitness 的 提升。高斯突变得到的行为与 父辈 的 突变 完全不同。父、子分布的KL差异(0.03和0.53)定量地证实了这一点;

  正如当前章节描述,policy 的 state-vistation 分布 揭示了 高斯突变的破坏性行为;样本突变的轮廓如图8所示,被添加高斯噪声的策略完全不同于父类的行为,这个行为的突然改变将导致灾难遗忘,新的后代的 表现为 总奖励 是 -187。与此相对,近端突变仅在 state visitation 分布上 产生细微改变。 由此获得的后代在很大程度上继承了父代的行为,并获得了显著更高的总奖励5496。

六、 related work

  这个paper是 试图融合进化算法和深入强化学习的一个新兴研究方向的一部分,最接近的工作是XXX;
  这些作品的Both解决了经典变异算子的破坏性行为;

七、 discussion

  ERL框架表明,当与学习方法结合时,遗传算法可以扩展到dnn,
在这个paper中,我们提出了PDERL扩展,并显示了性能 随着学习和进化的层次整合。得到了很大 的 提高。

  在保持种群和RL代理之间的双向信息流动的同时,我们的方法还在遗传操作符中使用学习,与传统实现不同,当应用于直接编码的dnn时,可以产生所需的功能。最后,我们证明PDERL在所有测试环境中都优于ERL、PPO和TD3。

  许多未来的研究方向令人激动,像文中所述。
  一个直接的扩展将是开发一个分布式版本,能够利用更大、更多样化的种群。
更好地管理遗传的遗传记忆可能会通过优先处理关键经验来提高效率。最后,我们注意到在选择操作符层面使用学习算法的潜力。


总结

提示:这里对文章进行总结:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值