对于智能多功能机器人来说,在现实世界复杂场景的工作当中,实现对于不同物体的操控是至关重要的技能之一。尽管近年来学者们利用强化学习在该类任务上取得了一定的进展,但是这些研究只涉及对刚性物体的一些简单操作,如抓取、推动、拾取和放置等[1],而对于更加复杂的技能,如开关抽屉和开关门等这类涉及到复杂几何结构物体的任务,目前的研究探索依然较少。
对于强化学习的方法来说,学习这样的类级别可泛化策略非常具有挑战性,如果单纯使用RL算法,成功率几乎为零[2]。而本文将生成对抗模仿学习(GAIL)[3]与无模型策略RL算法SAC[4]结合起来,并针对性地进行优化,在训练和测试实例上都实现了成功率的大幅提高。
在这项工作中,本文假定该类任务没有提供密集奖励(dense reward),而仅有稀疏奖励(sparse reward),以此为背景,使用模仿学习来实现类别泛化的物体操纵策略的学习。对于此类具有挑战性的任务,本文以生成对抗模仿学习(GAIL)结合 Soft Actor-Critic (SAC)为基线算法,并且提出了一些会使模仿学习算法失效并且阻碍对于未知实例泛化的关键问题:
(1)在生成对抗的方法下多种训练实例一起学习会导致判别器的奖励减少至0,并且使模仿学习停滞;
(2)对于不同物体的演示由不同策略所生成,故用单一策略难以模仿;
(3)在训练集上策略可能会偏重部分训练实例的成功,导致策略有倾向性而不能泛化到未知实例。
针对这三种问题,本文旨在扩展基线算法(GAIL结合SAC),以缓解上述的问题。并且本文也在ManiSkill物体操纵数据集上进行实验,观察改进算法对于智能体类级别泛化能力的提升效果。
针对上述三种问题,本文提出了三种改进基线算法的方法,分别是:
(1)判别器的逐渐增强(Progressive Growing of Discriminator);
(2)生成对抗演示自模仿学习(Generative Adversarial Self-Imitation Learning from Demonstrations);
(3)类级别的实例平衡专家缓冲器(Category-Level Instance-Balancing (CLIB) Expert Buffer)。
本文所用方法基于GAIL结合SAC,图1是整个系统的框架流程图,其中的CLIB Expert Buffer以及Progressive Discriminator部分为在基线算法上的改进。在这个基线算法中,GAIL使用了一个对抗性轨迹生成方案,该方案包括一个生成器和一个判别器。生成器也就是SAC的策略网络。而判别器DΦ用于训练并鉴别专家轨迹τE和生成的轨迹τg,并且其输出可以提供密集奖励r't给SAC策略网络。这个框架包含了三个缓冲区:重放缓冲区Br、生成缓冲区Bg和专家缓冲区BE。
如图2所示,在训练过程中,判别器会由一个简单的初始结构逐步过渡到一个更复杂的结构以逐步提升其判别能力。本文采用了PointNet[2]结构作为其初始网络结构,采用了PointNet + Transformer 结构作为最终结构。图2中的α在训练过程中会线性地从0变化到1,从而实现结构的过渡与判别器的逐渐增强,解决了判别器在训练开始时过强的问题,实现判别器与策略的同步增长,解决了模仿学习停滞的问题。
针对单一策略难以模仿的问题,本文结合了 GASIL[5]和SILfD[6]的方法,以专家的动作演示对专家缓冲器(expert buffer)进行初始化,并且在训练过程中逐步用智能体的策略生成的成功轨迹进行填充。采用此方法后,专家缓冲器中的轨迹将逐步由SAC策略生成的轨迹填充,使得轨迹数据分布更加均衡。同时,这种方法也解决了奖励函数减少至0的问题。
在使用了自模仿学习后,本文将专家缓冲器平均分为若干槽位,分别对应于每个训练实例,且以每个训练实例对应的专家演示轨迹进行初始化。在训练的过程中,成功的轨迹将被放入该实例的槽位中,而不是所有的轨迹放在一起。通过这种方式,可以控制专家缓冲器中所有成功轨迹数量的均衡,避免了某些实例轨迹占比过高从而使得模仿学习出的策略带有偏向性问题。
本文在ManiSkill Benchmark上进行了算法的验证,包含四个任务:开抽屉,开门,推椅子,提水桶,这些任务包含了不同类型的物体运动。
如表1所示,本文的方法极大地提升了基线算法 GAIL (Method I)的效果,在训练集与验证集上的成功率分别提高了13%和18%。而进一步的消融实验则验证了每一项改进对于成功率和泛化能力的提升。图3体现了在训练过程中的专家奖励变化,当专家奖励比较小时,说明判别器很容易区分专家数据和策略生成的数据。本文方法(Method V)的专家奖励一直处于较高水平,训练效果更好。
同时,本文也结合辨别器带来的专家奖励以及环境奖励,使用了密集奖励来更新RL中的策略和价值网络。如表2所示,本文的方法在利用密集奖励的情况下,成功率分别在训练集与验证集上超出了基线算法7%,进一步说明了本文算法在任务泛化能力上的提高。
本文首次通过从演示中生成对抗自模仿学习的方法来解决类别级物体操作问题。在GAIL+SAC的基线算法之上,本文提出了几项提升效果的方法,包括判别器的逐渐增强、生成对抗演示自模仿学习和类级别的实例平衡专家缓冲器。本文的算法在 ManiSkill 基准测试的四个操作任务上达到比现有基线更高的成功率,并且消融实验也进一步验证了每一项改进可以使成功率和泛化能力显著提高。
[1] S. Levine, N. Wagener, and P. Abbeel, “Learning contact-rich manipulation skills with guided policy search (2015),” arXiv preprintarXiv:1501.05611, 2015.
[2] T. Mu, Z. Ling, F. Xiang, D. C. Yang, X. Li, S. Tao, Z. Huang, Z. Jia,and H. Su, “Maniskill: Generalizable manipulation skill benchmarkwith large-scale demonstrations,” in Thirty-fifth Conference on Neural Information Processing Systems Datasets and Benchmarks Track(Round 2), 2021.
[3] J. Ho and S. Ermon, “Generative adversarial imitation learning,”Advances in neural information processing systems, vol. 29, 2016.
[4] T. Haarnoja, A. Zhou, P. Abbeel, and S. Levine, “Soft actor-critic: Offpolicy maximum entropy deep reinforcement learning with a stochasticactor,” in International conference on machine learning. PMLR,2018, pp. 1861–1870.
[5] Guo Y, Oh J, Singh S, et al. Generative adversarial self-imitation learning[J]. arXiv preprint arXiv:1812.00950, 2018.
[6] G. Pshikhachev, D. Ivanov, V. Egorov, and A. Shpilman, “Selfimitation learning from demonstrations,” in Deep RL WorkshopNeurIPS 2021, 2021.
2021级硕士
研究方向:模糊先验知识引导的强化学习方法研究
2020级硕士
研究方向: 基于模型的去中心化多智能体策略优化