论文研读:2018Proximal Distilled Evolutionary Reinforcement Learning

Abstract: 

ERL并没有完全解决GAs(遗传算法)的可伸缩性问题scalability problem。 

(可伸缩性是指算法在处理更复杂任务或更大规模问题时的能力)。 

根源是dnn(深度神经网络)的simple genetic encoding简单遗传编码和simple genetic encoding传统生物启发变异算子的使用的不幸结合。应用于这些编码时,标准算子具有破坏性,会导致网络获得的特征的灾难性遗忘。 

提出了近端蒸馏进化强化学习(PDERL),其特点是进化和学习之间的层次整合。PDERL的主要创新是使用f learning-based variation operators基于学习的变异算子来弥补遗传表示的简单性。与传统算子不同,我们的算法在直接编码的dnn上满足了变异算子的功能要求。 

1.Introduction: 

  1. RL在各个领域取得成功,大部分是DRL的功劳。 

  2. 作为RL的竞争算法,GAs在离散环境中更有竞争力,但样本效率低下。在具有大型连续状态和动作空间的复杂机器人环境中,环境相互作用是昂贵的,同时样本效率更低。 

  3. 在物质世界中,Baldwin effect鲍德温效应强调了进化和学习的相互作用。 

  4. 尽管有这些令人兴奋的学习和进化的复杂性,RL和EA很少被结合起来产生具有直接适用性的新算法。 

  5. Khadka和Tumer(2018)首次在机器人运动任务中展示这两种方法并合并到ERL框架,但并没有解决GAs的可伸缩性问题scalability problem,虽然RL agent的梯度信息可以显著加快进化速度,但ERL的进化基于传统变异算子traditional variation operators,和直接编码的dnn配对,这些算子是破坏性的destructive。 

  6. 本文的几个贡献: 

  1. 提出了两种新的基于反向传播 backpropagation的遗传算子。这些操作符与简单的DNN表示相结合不会导致灾难性的遗忘 

  2. 将这些算子成为一个新的框架的一部分,称为近端蒸馏进化强化学习(PDERL),该框架使用进化和学习之间的交互层次 

  3. 在OpenAI gym的环境中测试,比ERL,PPO 2017,TD3 2018算法更优秀. 

2.Background: 

此部分主要介绍了ERL及其使用的遗传算子。 

2.1Evolutionary Reinforcement Learning 

简单介绍了一下ERL的框架。 

ERL中的第一种同步:每隔几代将RL代理的参与者克隆到种群population中以传递策略梯度信息。 

ERL中的第二种同步:种群到RL代理的反向信息流。来自人口中部署的所有转换都被添加到DDPG的replay buffer中。 

2.2遗传编码和变异算子Genetic encoding and variation operators 

遗传编码:ERL population的policy由直接编码direct encoding的神经网络表示,在这种常见的遗传表示中,网络的权重被记录为实数列表。列表的顺序是任意的,但在整个人群中是一致的。 

理想情况下,杂交应该结合父母双方的最佳行为。且突变应该只对亲本的行为产生轻微的变化,以确保后代在很大程度上继承它。但深度神经网络对权重(直接编码的基因)的微小修改很敏感,这些操作通常会导致对亲代行为的灾难性遗忘。 

变异算子:ERL使用两种基于列表的表示的变异算子来进化种群:n-point crossovers n点交叉和Gaussian mutations 高斯突变。 

n点交叉: 

n点交叉通过随机交换属于两个亲本的权重列表的片段(矩阵的行)来产生后代策略。确保后代接收到出现在父节点中的节点,拼接每个节点的权重。子代的策略矩阵包含来自父代的矩阵(层)的行(节点)的混合。为了实现跨代的功能一致性。 

注:‘层’是神经网络层,‘行’是某层某个矩阵的行(节点)。 

高斯突变: 

高斯突变(Gaussian Mutation)是进化算法中一种常见的突变操作,用于在参数空间中对个体的基因或参数进行微小的随机变化。这种变化是通过从一个高斯分布(正态分布)中随机采样得到的。 

但是,dnn中缺乏固有的节点顺序(行顺序)意味着隐藏的表示不需要在总体上保持一致,因此节点的输入从亲代到后代可能不一致,从而产生破坏性干扰的可能性。ERL采用的一种包含这些问题的常用方法是仅改变权重的一小部分。然而,这些突变仍然具有破坏性。此外,只进化少量的权重会减缓寻找更好策略的进化过程。 

3.Method 

3.1遗传记忆The genetic memory 

ERL的问题:它没有直接利用人口中行为者收集的个人经验。种群只能通过RL间接受益 

解决方案:为种群成员和RL代理配备个人重放缓冲区personal replay buffer,可以包含其祖先的经验,我们将这个成为遗传记忆。 

变异:完全继承父母的遗传记忆 

交叉:用来自父母双方基因记忆的最近一半的过渡来填充缓冲 

3.2q过滤蒸馏交叉器Q-filtered distillation crossovers 

提出一个q-过滤行为交叉Q-filtered behaviour distillation crossover,与n点交叉不同,这个算子作用于表型空间phenotype space,而不是参数空间 parameter space. 

概念: 

参数空间:指的是解空间中所有可能的参数取值范围。 

表型空间:表型空间则是指在参数空间中得到的实际解或结果的空间,也可以理解为解在问题空间中的表现或行为。 

1-3初始化了一个空的遗传记忆Rz,其中的转换来自父母中最新的一半转换 

4随机初始化权值为父母之一的权值,模仿父母在新创建的遗传记忆状态下采取的行动。 

5-10用SGD随机梯度下降方法在环境中更新权值,κ是遗传记忆的大小 

提出一个问题:涉及两个母网络,而不是一个。效仿在同一状态可能产生不同行为的两个父代中的哪个? 

ux,uy为父代策略,uz为子代策略 

  • 指示器函数II使用Q-Network决定哪个父节点在每个状态下产生最佳操作 

  • Child policy通过最小化前两个的值来模仿父代行为(采用向量的2范数,每一个分量取平方和再开平方根),最后一项是L2的正则化防止输出饱和。 

  • 虽然这个算子的计算量确实更大,但在相对较小的遗传内存上进行少量的训练就足够了。 

  • 我们期望我们的方法的distributed implementation分布式实现来补偿产生的wall clock time penalties挂钟时间损失。我们把这项努力留给今后的工作。 

3.3亲本选择机制Parent selection mechanism 

问题:父母该如何选择来作为交叉? 

3.3.1.Greedy贪婪m(µx; µy) = f(µx) + f(µy) 由两个亲本的适应度之和贪婪地决定。这种类型的选择通常会增加种群的稳定性,并使优秀的个体不太可能不被选中 

3.3.2.Distance based基于距离的 

m(µx; µy) = dΠ(µx; µy) 可以使用所有可能策略空间中的距离度量来计算。“不同”的策略更有可能被选择交配。 

我们在行为空间中提出一个距离度量: 

ρx和ρy是

两个agent的状态访问分布。这个式子度量了两个父策略在不同的访问分布的混合情况下所采取的行动的预期差异。 

这种期望在实践中是通过从两个代理的遗传记忆中抽取大量样本来随机近似的。这种策略以牺牲稳定性为代价,偏向于将新行为引入种群。 

3.4Proximal mutations近端突变 

  • 高斯突变会对代理的行为产生灾难性的后果。 

  • 在梯度下降方法中,不适当的步长也可能会对性能产生不可预测的后果。 

  • PPO 等方法通过最小化辅助KL散度项来保持新策略的行为接近旧策略,从而非常稳定。 

基于这些动机,作者整合了安全突变算子SM-G-SUM 

该算子使用输出动作a(u

θ(si)

)在一批遗传记忆的NM transition上的每个维度的梯度来计算动作对权重扰动的敏感性s: 

x ∼ N (0; σI),其中σ是一个突变幅度超参数。 

这种算子产生的子策略和父策略相近,我们将此算子称为近端突变,使用他的ERL成为近端进化强化学习(PERL) 

红色等高线图展示了子女和父母之间的差异,通过近端突变获得的策略的行为是对亲本行为的一个小的扰动调整。相比之下,传统的突变产生了不同的行为,即使它只改变了一小部分权重 

4.Integration 

Q-filtered distillation crossovers增加了种群稳定性,并将智能体推向具有更高q值的状态-作用空间区域。 

proximal mutations提高了对种群的探索和发现更好政策的能力。 

从右(Learning)到左(population)的信息流更多,个人经验中学习的信息流也更多。 

5.Evaluation 

5.1Experimental setup 

  • Actor 和 critic网络和ERL相同。 

  • 对于Walker2D,同步率w(RL输送参数的轮次)从10减少到1,以使RL代理商向人群提供更高的信息流。 

  • 由于情节之间的总奖励差异很大,评估ξ的数量从3增加到5。(evaluate function的评估轮次)。 

  • 在Hopper和Ant环境中,精英的比例从0:3降低到0:2。新算子的稳定性使得该参数的值越高变得不必要。 

  • 交叉和突变批大小为NC = 128和NM = 256(64,128,256) 

  • 遗传记忆容量κ = 8k transition(2k,4k,8k,10k) 

5.2Performance evaluation 

5.3Crossover evaluation 

衡量交叉算子质量的一个很好的指标是后代与亲本的fitness 

通过n点交叉获得的最佳亲本适应度通常低于40%。同时,通过蒸馏得到的策略的适应度一般至少与亲本的适应度一样好 

这些是后代和亲本的状态访问分布,n点交叉产生的行为与父母的行为不同。相反,Qfiltered distillation crossover生成一个策略,其行为包含父行为的最佳特征。新算子隐式地将种群中的每一代新一代推向Q值较高的区域。 

5.4Mutation evaluation 

近端突变的fitness明显优于高斯突变 

蓝色表示父母状态分布,红色表示差异。通过近端突变获得的后代在很大程度上继承了亲本的行为,并获得了600的适应度提升。通过高斯突变获得的行为与亲本完全不同。亲子分布之间的KL差异(0.03和0.53)定量地证实了这一点。 

6Related work 

本文主要把[1]Khadka, S., and Tumer, K. 2018. Evolution-guided policy gradient in reinforcement learning. In NeurIPS. 

[2]Lehman, J.; Chen, J.; Clune, J.; and Stanley, K. O. 2018. Safe mutations for deep and recurrent neural networks 

through output gradients. In GECCO. 

[3]Gangwani, T., and Peng, J. 2018. Policy optimization by genetic distillation. In ICLR的工作整合 

[2]专注于安全突变,他们提出的一个操作符直接用于近端突变。然而,他们的论文缺乏对交叉的处理以及与学习的整合。[3]的方法专注于随机策略的安全算子,而本工作中提出的方法可以应用于随机和确定性策略。他们的工作最接近的方面是,他们还引入了一个交叉算子,目的是合并两个智能体的行为。他们的解决方案将问题简化为传统的单亲蒸馏问题,使用最大似然方法将双亲的行为结合起来。 

7Discussion 

PDERL在所有测试环境中都优于ERL, PPO和TD3。 

还有许多令人兴奋的方向。一个直接的展望将是开发一个分布式版本,能够利用更大、更多样化的人群。更好地管理遗传基因记忆可能会通过优先考虑关键经验来提高效率。最后,我们注意到在选择算子的层面使用学习算法的潜力。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值