Guided Cost Learning: Deep Inverse Optimal Control via Policy Optimization
Chelsea Finn, Sergey Levine, Pieter Abbeel
University of California, Berkeley, Berkeley, CA 94709 USA
Proceedings of The 33rd International Conference on Machine Learning, PMLR 48:49-58, 2016.
原文链接:https://arxiv.org/pdf/1603.00448.pdf
强化学习可以从高级规格中获取复杂的行为。然而,定义一个可以有效优化并编码正确任务的成本函数在实践中具有挑战性。我们探索如何使用逆最优控制 (IOC, inverse optimal control) 从演示中学习行为,以及如何应用到高维机器人系统的扭矩控制。我们的方法解决了逆优化控制中的两个关键挑战:首先,需要信息特征和有效的正则化来对成本施加结构;其次,在未知动态下学习高维连续系统的成本函数的困难。为了解决前者挑战,我们提出了一种算法,能够学习任意非线性代价函数,如神经网络,而不需要细致的特征工程。为了解决后一个挑战,我们为MaxEnt IOC制定了一个有效的基于样本的近似。我们通过一系列模拟任务和真实机器人操作问题来评估我们的方法,证明了在任务复杂性和样本效率方面都比以前的方法有了实质性的改进。
强化学习可以用于从高级规范中获取复杂的行为。然而,定义一个可以有效优化并编码正确任务的成本函数在实践中是具有挑战性的,像成本塑造这样的技术通常用于解决复杂的现实问题(Ng et al., 1999)。逆最优控制(IOC)或逆强化学习(IRL)通过直接从专家演示中学习成本函数,为解决这一挑战提供了一种途径,Ng et al. (2000); Abbeel & Ng (2004); Ziebart et al. (2008)。然而,设计一个有效的从演示中学习的IOC算法是困难的,原因有两个。首先,IOC的定义基本上是不明确的,因为许多成本会导致相同的行为。因此,大多数实用的算法都需要精心设计的特征,将结构强加于学习的代价上。其次,许多标准IRL和IOC方法需要解决迭代成本优化的内部循环中的正向问题(在给定当前成本的情况下找到最优策略)。这使得它们很难应用于复杂的高维系统,因为正向问题本身就非常困难,尤其是现实世界中动力学未知的机器人系统。
为了解决上述的挑战,我们提出使用表达性的非线性函数逼近器,如神经网络,来表示成本。这减少了部署IOC方法所需的工程负担,并且计师专家的直觉不足以设计好的代价函数时,也能学习到成本函数。这种表达函数近似器可以学习复杂的成本函数,然而,这些函数缺乏通常由手工设计的特性所强加的结构。为了缓解这一挑战,我们为IOC提出了两种正则化技术,一种是通用的,另一种是特定于情景领域的,比如机器人操作技能。
为了学习真实世界机器人任务的成本函数,我们的方法必须能够处理未知的动力学和高维系统。为此,我们提出了一种基于局部线性模型的政策优化的代价学习算法,该算法建立在之前的强化学习工作的基础上 (Levine & Abbeel, 2014)。在这种方法中,如图1所示,代价函数是在策略搜索过程的内部循环中学习的,使用为策略改进而收集的样本来更新代价函数。代价学习方法本身是最大熵IOC的非线性推广(Ziebart et al., 2008),使用样本逼近配分函数。与之前在成本学习的内部循环中优化策略的工作相反,我们的方法更新了策略搜索的内部循环中的成本,使其更加实用和高效。这种方法的好处之一是,我们可以将学习成本和学习相应成本的策略结合起来。对于过于复杂而无法从少量的演示中获得良好的全局成本函数的任务,我们的方法仍然可以通过运行我们的策略学习方法并保留学到的策略来恢复有效的行为。我们将在第4.4节进一步阐述这一点。
我们工作的主要贡献是一种从用户演示中学习非线性代价函数的算法,同时学习执行任务的策略。由于策略优化“引导”成本向好的空间区域转移,我们称这种方法为引导成本学习。与之前的方法不同,我们的算法可以处理复杂的非线性代价函数表示和高维未知动力学状态,并可以用于样本数量有限的实际物理系统。我们的评估显示了我们的方法在一组模拟基准测试任务上的性能,表明它优于以前的方法。我们还在两个直接从人类演示中学习到的实际任务中评估我们的方法。这些任务需要使用扭矩控制和视觉来执行机器人的各种操作行为,而不需要任何手工指定的成本特征。
逆最优控制(IOC),也被称为逆强化学习(IRL),是寻找未定义的接近最优演示的奖励(代价)函数的方法。许多不同的成本可以解释一组给定的演示。之前的工作已经解决了这个问题,使用最大边际公式(Abbeel & Ng, 2004; Ratliff et al., 2006),以及解释为噪声的次优行为的概率模型(Ramachandran & Amir, 2007; Ziebart et al., 2008)。我们在这项工作中采用后一种方法,建立在最大熵IOC模型上。虽然概率模型减轻了IOC的一些困难,但仍然存在很大的模糊性,许多以前的方法的一个重要组成部分是包含使用领域知识创建的详细特征,这些特征可以线性组合成成本函数,包括:成功完成机器人ball in cup game 任务的指标(Boularias et al., 2011),学习乒乓球的特征(包括球到对手肘部的距离) (Muelling et al., 2014),将目标位置作为机器人抓物的已知约束(Doerr et al., 2015),学习在有碰撞预警的情况下的高速公路自动驾驶以及草地驾驶。虽然这些特征允许用户在成本函数上强加结构,但他们实质上增加了工程负担。后续也有几种学习非线性代价函数的方法被提出,包括使用高斯过程的方法(Levine et al., 2011),boosting方法(Ratliff et al., 2007; 2009),但是这些方法通常也会对特性而不是原始状态进行操作。相反,我们使用神经网络形式的丰富的、富有表现力的函数逼近器,直接在原始状态表示上学习成本函数。虽然神经网络的代价表示在之前的文献中已经被提出(Wulfmeier et al., 2015),但它们只被应用于小的合成领域。也有一些工作也提出了简单的代价函数正则化方法,比如基于最小化参数向量的“1或2”范数的方法(Ziebart, 2010; Kalakrishnan et al., 2013)或者利用无标签的轨迹。当在复杂的实际任务中使用表达函数逼近器时,我们必须设计更强大的正则化技术,以缓解问题的未明确本质,我们将在第5节中介绍这一点。
IOC的另一个挑战是,为了确定给定成本函数的质量,我们必须解决前向控制问题的某些变体,以获得相应的策略,然后将该策略与所演示的操作进行比较。大多数早期的IRL算法需要在迭代优化的内部循环中求解MDP (Ng et al., 2000; Abbeel & Ng, 2004; Ziebart et al., 2008)。这需要完善的系统动力学知识和访问一个高效的离线求解器,这两者都可能是不可用的,例如,复杂的机器人控制领域。
一些作品已经提出降低这一要求,例如通过学习价值函数而不是成本(Todorov, 2006),求解近似局部控制问题(Levine & Koltun, 2012; Dragan & Srinivasa, 2012),生成状态的离散图(Byravan et al., 2015; Monfort et al., 2015) 或者只是获得一个最佳的轨迹,而不是政策(Ratliff et al., 2006; 2009)。然而,这些方法仍然需要系统动力学的知识。考虑到本工作所处理的问题的规模和复杂性,即使近似地在成本优化的内环中求解最优控制问题也是不切实际的。
我们证明了良好的成本函数可以通过学习策略优化的内部循环的成本来学习。我们的逆最优控制算法与其他基于最大熵原理的基于样本的方法关系最为密切,包括相对熵IRL (Boularias et al. , 2011)和路径积分IRL (Kalakrishnan et al. , 2013),它们也可以处理未知动力学。然而,与以往的方法不同,我们使用策略优化来调整抽样分布。我们在实验中证明,这种适应性对于在复杂机器人平台上获得良好的结果是至关重要的,特别是当使用复杂的非线性代价函数时。
综上所述,我们提出的方法是第一个将几个理想的特征组合成一个单一的、有效的算法:它可以处理未知的动力学,这对现实世界的机器人任务是至关重要的,它可以处理高维的,复杂的系统,就像在真实的力矩控制机器人手臂的情况下,它可以学习复杂的,表达的成本函数,比如多层神经网络,这就省去了对成本特征进行精细手工设计的要求。虽然之前的一些方法已经在真实机器人的未知动力学情况下(Boularias et al., 2011; Kalakrishnan et al., 2013)显示出了良好的结果,一些方法已经提出使用非线性代价函数(Ratliff et al., 2006; 2009; Levine et al., 2011),但据我们所知,还没有任何一种方法被证明可以在复杂的真实世界任务中提供所有这些好处。
我们建立了概率最大熵逆最优控制框架(Ziebart et al., 2008)。假设演示是专家对未知的成本函数在随机的接近最优的的行为动作序列下的结果。具体地说,模型假设专家演示的轨迹{τ }是从分布p(τ)中采样得来,
█(p(τ)=1/Z exp(-c_θ (τ))#(1) )
其中τ={x_1,u_1,…,x_T,u_T},c_θ (τ)=∑_τ▒〖c_θ (x_t,u_t )〗是由θ参数化的代价函数,x_t,u_t是t时刻的状态与动作。在这个模型中,专家有最大可能来进行最优行动,并且生成次优轨迹的概率随着轨迹成本的增加呈指数级下降。在大规模回连续域中,分配函数Z的计算是困难的,这是最大熵IOC的主要计算挑战。该模型的第一个应用是用动态规划方法精确地计算Z(Ziebart et al., 2008)。然而,然而,这只适用于小的、离散的领域。近期的已经提出近似估计Z的方法,如使用拉普拉斯近似(Levine & Koltun, 2012),值函数逼近(Huang & Kitani, 2014),以采样法(Boularias et al., 2011)。正如在4.1节讨论的,在这项工作中,我们采用基于样本的方法,因为它允许我们执行反最优控制而不需要一个已知的系统动力学模型。这在机器人操作领域尤为重要,因为机器人可能与各种物理性质未知的物体进行交互。为表示代价函数c_θ (x_t,u_t ),IOC或IRL方法通常使用手工特征的线性组合,由c_θ (x_t,u_t )=θ^T f(x_t,u_t)表示(Abbeel & Ng,2004)。这种表示方式很难应用于更复杂的领域,特别是当成本必须从原始传感器输入计算时。在这项工作中,我们探索使用高维的,表达性更高的函数逼近器来表示c_θ (x_t,u_t )。正如我们在第6节中所讨论的,我们使用的是直接对机器人状态进行操作的神经网络,尽管我们的方法也可以使用其他参数化。复杂的表示通常被认为不适合IOC,因为即使使用简单的线性表示,将状态的正确元素与任务目标关联起来的学习成本已经相当困难。然而,正如我们在评估中所讨论的,我们发现这种表示可以通过自适应生成样本(作为策略优化过程的一部分)来有效地学习,如第4.2节所述。
…待续