Policy Search in Continuous Action Domains: an Overview
Brief
18年综述,这篇太长了,翻到吐血……
作者是 Oliver Sigaud 法国索邦大学 和 Freek Stulp 德国航空航天中心。
本文链接 链接
Abstract
Continuous action policy search is currently the focus of intensive research, driven both by the recent success of deep reinforcement learning algorithms and the emergence of competitors based on evolutionary algorithms. In this paper, we present a broad survey of policy search methods, providing a unified perspective on very different approaches, including also Bayesian Optimization and directed exploration methods. The main message of this overview is in the relationship between the families of methods, but we also outline some factors underlying sample efficiency properties of the various approaches.
连续动作策略搜索是目前深入研究的重点,这既是由最近深度强化学习算法的成功所推动的,也是基于进化算法的竞争者的出现。在本文中,我们对策略搜索方法进行了广泛的综述,为非常不同的方法提供了一个统一的视角,其中也包括贝叶斯优化和定向探索方法。这篇综述的主要信息在于方法家族之间的关系,但我们也概述了各种方法的样本效率特性的一些基本因素。
1. introduction
第一段:策略-行动的关系
自主系统是指无需外部干预就能知道在其领域内做什么的系统。一般来说,它们的行为是通过策略来确定的。例如,机器人的策略是通过控制器来确定的,控制器决定机器人在其环境中的任何状态下应采取的行动或向执行器发送的信号。
第二段:
机器人策略通常是人工设计的,但这种人工设计 manual design 只对在结构良好的环境中 well-structured environments 行动的系统和明确规定的任务 well-specified 可行。当这些条件无法满足时,一种更有吸引力的替代方法 more appealing alternative 是让系统通过探索各种行为,并利用那些在某些预定义效用函数 predefined utility function 方面表现良好的行为来找到自己的策略。这种方法被称为策略搜索,是强化学习(RL)的一种特殊情况 (Sutton and Barto, 1998),其中动作是来自连续空间的向量。【具体解释】More precisely 更确切的说,策略搜索的目标是优化一个策略,在这个策略中,与行为及其效用相关的函数是黑箱的 black-box,即,没有效用函数的分析模型或梯度 no analytical model or gradient of the utility function is available。【进一步阐释】In practice,在实践中,策略搜索算法用一些策略运行系统,生成的由若干状态和动作步骤组成的 rollouts,并得到效用 utility 作为返回(见图1)。然后,这些 utility 被用来改进策略,这个过程被重复,直到找到一些满意的行为集。一般来说,策略用参数函数表示,策略搜索探索策略的参数空间。为此,策略改进算法讲 rollout 和 utility 数据作为一组样本进行处理。
Figure 1: Visualization of one episode, the information contained in a rollout, and the denition of the episode utility (which is also known as the episode return when the utility is a reward). 图1:一个episode的可视化,一个rollout 包含的信息和 episode utility的定义(当utility是reward时,也称为 episode return)。
第三段:机器人背景下的样本效率。
在机器人技术的背景下,样本效率 sample efficiency 是一个重要的问题,样本效率有三个方面。(1) data efficiency, i.e. extracting more information from available data (de nition taken from (Deisenroth and Rasmussen, 2011)), (2) sample choice, i.e. obtaining data in which more information is available and (3) sample reuse, i.e. improving a policy several times by using the same samples more than once through experience replay.
(1)数据效率,即从现有数据中提取更多的信息;
(2)样本选择,即获得可获得更多信息的数据;
(3)样本复用,即通过经验回放,多次使用相同的样本来改进策略。
本文从这三个方面的角度出发,对策略搜索算法进行了大致的概述。
1.1. Scope and Contributions
机器人领域的综述3个,都是2013年的。
Three surveys about policy search for robotics have been published in recent years (Deisenroth et al., 2013; Stulp and Sigaud, 2013; Kober et al., 2013).
[1] Deisenroth, M. P., Neumann, G., Peters, J., et al., 2013. A survey on policy search for robotics. Foundations and Trends R in Robotics 2 (1-2), 1-142.
[2] Stulp, F., Sigaud, O., august 2013. Robot skill learning: From reinforcement learning to evolution strategies. Paladyn Journal of Behavioral Robotics 4 (1), 49-61.
[3] Kober, J., Bagnell, J. A., Peters, J., 2013. Reinforcement learning in robotics: A survey. The International Journal of Robotics Research 32 (11), 1238-1274.
关于之前的这些调查,我们涵盖了更广泛的政策搜索算法,包括无效用模型的优化、贝叶斯优化(BO)、定向探索方法和深度RL。与这种广度相对应的是,我们没有对相应的算法进行详细的介绍,也没有对其数学推导进行详细的说明。为了弥补细节上的不足,我们向读者推荐(Deisenroth等,2013)对2013年以前大多数算法的数学推导和描述,在描述较新算法时,我们根据需要提供精心挑选的参考文献。
此外,我们关注的是系统学习解决单一任务的情况。也就是说,我们并没有涉及到更广泛的终身、持续或开放式的学习领域,在这种情况下,机器人必须学习如何在潜在的无限范围内执行各种任务(Thrun和Mitchell,1995)。此外,虽然策略搜索方法的一个子集是基于RL的,但我们并没有涵盖最近关于RL与离散动作的工作,如dqn及其后继者(Mnih等,2015;Hessel等,2017)。最后,我们将自己限制在样本是改进政策的唯一信息来源的情况下。也就是说,我们不考虑人类用户可以提供外部指导的交互式情境(Najar等,2016),无论是通过反馈、塑造还是演示feedback, shaping or demonstration(Argall等,2009)。
1.2. Perspective and structure of the survey
本文的主要信息如下。
- 在优化中,当待优化的效用函数已知且为 convex 凸函数时,可以应用高效的凸方法 convex method 。
- 如果函数已知但不凸,则可以利用梯度下降法找到局部最优值,按照此时函数导数提供的方向,从当前点向局部最优值迭代移动。
- 如果函数是黑箱 black-box,则函数及其分析梯度 analytic gradient 都不知道。在策略梯度方法中,策略参数只是通过一组中间观察行为间接与其效用相关。
鉴于策略搜索对应的是这种比较困难(black-box)的情况,我们考虑五种解决方案。
- searching for high utility policy parameters without building a utility model (Section 2)
- learning a model of the utility function in the space of policy parameters and performing stochastic gradient descent (SGD) using this model (Section 3),
- defining an arbitrary outcome space and using directed exploration of this outcome space for finding high utility policy parameters (Section 4),
- doing the same as in Solution 2 in the state action space (Section 5),
- learning a model of the transition function of the system-environment interaction that predicts the next state given the current state and action, to generate samples without using the system, and then applying one of the above solutions based on the generated samples
1.在不建立效用模型的情况下,寻找高效用的策略参数(第2节)。
2.学习策略参数空间中的效用函数模型,并利用该模型进行随机梯度下降(SGD)(第3节)。
3.定义一个任意的结果空间 outcome space,并利用对这个结果空间的定向探索 directed exploration 来寻找高效用的策略参数(第4节)。
4.在状态行动空间state action space中做与解决方案2相同的工作(第5节)。
5.学习系统与环境相互作用的 transition function 模型,在给定当前状态和动作的情况下,预测下一个状态,在不使用系统的情况下,生成样本,然后根据生成的样本应用上述的一种解决方案。
策略搜索方法领域的一个重要区别是优化方法是 episode-based 还是 step-based。 上面的前三个解决方案是 episode-based,第四个是step-based,第五个可以应用于所有其他的解决方案。
2-5章节分别对应方案1-4,方案5是model-based 策略搜索方法,本文不讨论,具体参考(Chatzilygeroudis, K., Rama, R., Kaushik, R., Goepp, D., Vassiliades, V., Mouret, J.-B., 2017. Black-box data-efficient policy search for robotics. arXiv preprint arXiv:1703.07261.)Then, in Section 6, we discuss the different elementary design choices that matter in terms of sample efficiency. 然后,在第6节,我们讨论了在样本效率方面重要的不同的基本设计选择。
下面是这篇的摘要:
The most data-efficient algorithms for reinforcement learning (RL) in robotics are based on uncertain dynamical models: after each episode, they first learn a dynamical model of the robot, then they use an optimization algorithm to find a policy that maximizes the expected return given the model and its uncertainties. It is often believed that this optimization can be tractable only if analytical, gradient-based algorithms are used; however, these algorithms require using specific families of reward functions and policies, which greatly limits the flexibility of the overall approach. In this paper, we introduce a novel model-based RL algorithm, called Black-DROPS (Black-box Data-efficient RObot Policy Search) that: (1) does not impose any constraint on the reward function or the policy (they are treated as black-boxes), (2) is as data-efficient as the state-of-the-art algorithm for data-efficient RL in robotics, and (3) is as fast (or faster) than analytical approaches when several cores are available. The key idea is to replace the gradient-based optimization algorithm with a parallel, black-box algorithm that takes into account the model uncertainties. We demonstrate the performance of our new algorithm on two standard control benchmark problems (in simulation) and a low-cost robotic manipulator (with a real robot).
机器人技术中强化学习(RL)最节省数据的算法是基于不确定的动态模型:在每个episode后,它们首先学习机器人的动态模型,然后使用优化算法找到一个给定模型及其不确定性的预期收益最大化的策略。人们通常认为,只有使用基于梯度的解析算法,这种优化才是可行的;然而,这些算法需要使用特定的奖励函数和策略系列,这大大限制了整体方法的灵活性。
在本文中,我们引入了一种新型的基于模型的RL算法,称为Black-DROPS(Black-box Data-efficient RObot Policy Search),该算法
(1)不对奖励函数或策略施加任何约束(它们被视为黑盒),
(2)与机器人学中最先进的数据高效data-efficient RL算法一样高效,
(3)当有多个核cores时,与分析方法一样快(或更快)。
其关键思想是将基于梯度的优化算法替换为考虑到模型不确定性的并行黑盒算法。 我们在两个标准控制基准问题(模拟)和一个低成本的机器人操纵器(使用真实的机器人)上展示了我们新算法的性能。
2.Policy search without a utility model
当待优化的函数可用,但没有有利的性质时,标准的优化方法称为 “梯度下降”(Gradient Descent),它包括沿着这个函数的梯度向局部最优迭代。当只有通过从一批样本回归建立的模型才能知道同一函数时,我们也可以做同样的事情,但计算梯度需要对整个批次进行评估,这在计算上可能很昂贵。一种被称为随机梯度下降(SGD)的替代方法通过在每次迭代时抽取一小批样本的子集来规避这一困难(Bottou,2012)。在第 3 节开始介绍这些方法之前,我们先研究一个系列的方法,这些方法在完全不学习效用函数模型的情况下进行政策搜索。它们通过对策略参数空间θ进行采样,并向效用较高的策略参数J(θ)移动。
2.1. Truly random search
在一个极端,最简单的黑盒优化(BBO)方法随机搜索θ,直到偶然发现一个足够好的效用。我们称这种方法为 “真正的随机搜索”,因为在优化界,"随机搜索 "这个名字是用来指无梯度方法的(Rastrigin,1963)。它的显著特征在于它的样本选择策略:前一个θ的效用对下一个θ的选择没有影响。
很明显,这种样本选择策略并不古老,但它完全不需要对要优化的函数进行假设。因此,当这个函数没有显示出任何可以利用的规律性时,它是一种选择。所有其他方法都依赖于隐含的假设,即J(θ)在optima θ*周围呈现出一些平滑性,这是使用梯度的第一步。
所以在全球范围内,这种方法提供了一个概念证明,即代理可以在完全不估计任何梯度的情况下获得更好的效用。最近,其他形式的无梯度方法被称为随机搜索,虽然它们不是真正的随机,但已被证明与深度RL具有竞争力(Mania等,2018)。
接下来的三个系列的方法,基于种群的优化,进化策略和估计分布算法,都是进化方法的变种。图3描述了这些方法的概述。
进化方法的一次迭代。a)基于种群的方法(b)进化策略(c)EDA。蓝色:当前生成和采样域。全蓝色的点:评价良好的样本。带红叉的点:评价较差的样本。绿色:新的一代和采样域,空点还没有评价。红点:最佳猜测。
在基于种群的方法中,下一代是由上一代的几个精英个体的后代。在ES中,它是由固定的高斯噪声的最佳猜测和采样得到的。在EDA中,高斯噪声是通过协方差矩阵适应来调整的。
2.2. Population-based optimization
基于种群的BBO方法管理有限的个体群体,并在前一个精英个体的附近随机产生新的个体。基于种群的优化方法有几个系列,最著名的是遗传算法(GAs)(Goldberg,1989)、遗传编程(GP)(Koza,1992)和更先进的NEAT框架(Stanley和Miikkulainen,2002)。在这些方法中,对应于个体的参数θ通常被称为其基因型,相应的效用被称为其适配度,进一步的阅读请参见(Back,1996)。这些方法已经与神经网络相结合,引起了神经进化(Floreano等人,2008),但是,直到最近,这些方法大多应用于中小规模的策略表示。然而,现代计算资源的可用性使得将其应用于大型和深度神经网络表征成为可能,定义了深度神经进化的新兴领域(Petroski Such等人,2017)。其中,研究表明,在给定足够大的计算资源的情况下,像GAs这样简单的方法可以为第5节中提出的深度RL方法提供一个有竞争力的替代方案,这主要是由于它们出色的并行化能力(Petroski Such等人,2017;Conti等人,2017)。
2.3. Evolutionary strategies
进化策略(Evolutionary Strategies,ES)可以看作是特定的基于种群的优化方法,在这种方法中,从一代到下一代只保留一个个体。更具体地说,从前一个样本中计算出一个最优猜测,然后在当前最优猜测的基础上加入高斯噪声,得到下一个样本。
从一个最优猜测到下一个最优猜测,实现了一种类似于SGD的策略改进形式,但梯度是通过对样本进行平均而不是分析计算来逼近的。因此,这种方法比较灵活,但由于梯度逼近使用了随机探索成分,所以数据效率较低。然而,当样本的采样域重叠时,可以通过在一代和下一代之间重用样本来提高数据效率,这种方法称为重要性混合(Sun等,2009)。最近在(Pourchot等人,2018)中提出了重要性混合的改进版本,显示出对样本效率的影响很大,但不足以在这方面与深度RL方法竞争。关于重要性混合的进一步结果可以在(Pourchot和Sigaud,2018)中找到,这表明有必要进行更多的调查,以更好地了解这种机制在哪些情况下最有用。
SGD给出的梯度方向与ES的相同方向之间的相关性取决于进化算法。有趣的是,即使在相关性不高的情况下,也能获得良好的ES性能,不过这一结果在策略搜索的情况下仍需推敲(Zhang等,2017)。
一个特定的深度神经进化的ES实现,其中在每一代都使用恒定的高斯噪声,被证明可以在标准基准上与深度RL方法竞争。这个简单的实现根据不同的梯度景 landscapes 与基于SGD的方法产生了深刻的比较,表明在哪些条件下ES可以找到比SGD更好的optima(Lehman等,2017)。
最后,nes(Wierstra等人,2008)和xnes(Glasmachers等人,2010)不是逼近效用的 vanilla 梯度,而是逼近其自然梯度natural gradient (Akimoto等人,2010),但为此他们必须计算 Fisher信息矩阵的逆,这在大维度上是非常昂贵的 which is prohibitively expensive in large dimensions (Grondman等人,2012)。我们向读者推荐(Pierrot等人,2018),以了解自然梯度和其他高级梯度下降概念的详细介绍。
2.4. Estimation of Distribution Algorithms
关于EDA的标准观点是,它们是使用协方差矩阵 Σ \Sigma Σ 的特定ES系列。这个协方差矩阵在 Θ \Theta Θ 上定义了一个多元高斯函数,因此它的大小是 ∣ θ ∣ 2 |\theta|^2 ∣θ∣2。在下一次迭代中的样本以与这个高斯函数成正比的概率被抽取。沿着迭代,由 Σ \Sigma Σ表示的椭圆体被逐步调整到对应于局部最优 θ ∗ \theta^* θ∗的山顶部分。
Σ \Sigma Σ的作用是控制探索。当探索策略 exploration policy 只更新 Σ \Sigma Σ 的对角线时,可以将其定性为不相关 uncorrelated,当其更新全部 full Σ \Sigma Σ 时,可以将其定性为相关 correlated(Deisenroth等,2013)后者在小参数空间中效率较高,但计算要求较高,在较大的空间中可能不准确,因为需要更多的样本。特别是,它不能应用于深层神经进化的背景下,因为 θ \theta θ 的大小数量级在数千到数百万之间。
在(Stulp and Sigaud,2012a,b,2013)中涉及到EDA的各种实例 various instances,如cem、CMAES、 P I 2 − C M A PI^2-CMA PI2−CMA 等。其中,CMA-ES 算法还被证明可以近似于自然梯度(Arnold等,2011)。相比之下, P I B B PI^{BB} PIBB 算法也在(Stulp和Sigaud,2013)中描述,是 P I 2 − C M A PI^2-CMA