编辑推荐: |
本文主要介绍了如何从另一个角度来解决使用深度强化学习来实现无模型共享自动化,深度强化学习是否有助于建立灵活和实用的辅助系统?
本文来自于berkeley,由火龙果软件Alice编辑、推荐。 |
|
设想一下,一名无人机驾驶员远程驾驶一架四旋翼飞行器,使用机载相机进行导航和降落。不熟悉的飞行动力学、地形和网络延迟都可能会使人类对这个系统的掌控面临一定的挑战。解决这个问题的一个方法是对一个自动智能体进行训练,从而使其能够在无需人为干预的情况下执行巡视和制图等任务。当任务被明确指定,并且智能体可以观察到成功所需的全部信息时,该策略就可以很好地执行。不幸的是,许多涉及人类用户的实际应用程序并不能满足这些条件:用户的意图通常是智能体所无法直接访问的隐私信息,而且任务可能太复杂,以至于用户无法对其进行精确定义。例如,飞行员可能想要跟踪一组移动目标(比如一群动物),并且在飞行过程中即时改变目标优先级(例如,关注那些以外受伤的人)。共享自动化通过将用户输入与自动协助相结合以解决此问题,换句话说,这是为了增强人类的控制而不是取代它。
一个盲视的自动驾驶飞行员(左),次优人类飞行员(中)和人机联合团队(右)在玩Lunar Lander游戏
背景
将人类和机器智能结合在共享控制系统中这一想法,可以追溯到1949年Ray Goertz所提出的主从操纵手(Master-Slave
Manipulator)、1969年Ralph Mosher所提出的Hardiman外骨骼,和1980年Marvin
Minsky所提出的远程呈现呼叫的初期。在机器人技术、人机交互和人工智能领域进行了数十年的研究之后,人类操作员和遥控机器人之间的交互仍然是一个挑战。根据对2015年DARPA机器人挑战的回顾,“提高机器人性能的最具成本效益的研究领域是人机交互......在DRC中,机器人稳定性和性能的最大敌人是操作失误。开发出一种能够避免和克服这种操作错误的方法对于实际中的机器人来说是至关重要的。操作人员会在压力下犯错误,特别是在没有广泛的训练和实践的现实条件下”。
共享自动化的一个研究主旨是通过推理用户的目标并进行自动化行动来实现它们,从而解决这个问题。Shervin
Javdani博士在其论文中谈及了对以往研究方法的优秀评论。这些方法已经在更好的驾驶辅助、假肢的脑机接口和辅助远程操作方面取得了进展,但往往需要事先对世界加以了解:具体地说,(1)动态模型,预测在给定的环境中采取给定操作的结果,(2)用户可能拥有的目标集,以及(3)观察模,描述给定目标的用户的行为。基于模型的共享自动算法非常适合于这样一些领域,可以直接对领域中的知识进行硬编码或学习,但却面临着由具有未定义的目标和不可预测的用户行为的非结构化环境所带来的挑战。我们从另一个角度来解决这个问题,使用深度强化学习来实现无模型共享自动化。
深度强化学习使用神经网络函数近似来处理高维度的、连续状态和动作空间中的维度问题,并且最近在从零开始训练自动智能体玩视频游戏、在围棋对战中击败人类世界冠军、控制机器人等方面取得了显著的成功。我们已经采取了初步措施来回答以下问题:深度强化学习是否有助于建立灵活和实用的辅助系统?
在回路中具有人类辅助的无模型强行学习
为了在最小的先验假设下实现共享控制远程操作,我们设计了一个用于共享自动化的无模型深度强化学习算法。关键理念在于学习从环境观察和用户输入到智能体行为的端到端映射,而任务奖励是唯一的监督形式。从智能体的角度来看,用户的行为像一个可以进行微调的先验策略,以及一个可以生成观察结果的附加传感器,从而智能体可以隐式地解码用户的私人信息。从用户的角度来看,智能体的行为就像一个自适应界面,可以学习从用户命令到能够最大化任务奖励的操作的个性化映射。
这项研究的核心挑战之一是采用标准的深度强化学习技术,在不显著干扰用户反馈控制回路,或进行长时间的训练期间使他们感到疲劳的情况下,利用来自人类的控制输入。为了解决这些问题,我们使用深度Q-学习来学习一个近似的状态—行为值函数,该函数计算在给定当前环境中的观察和用户输入的情况下,行为的预期未来返回值。配备该值函数后,辅助智能体将对用户的控制输入执行最接近的高值操作。智能体的奖励函数是用于计算每个状态的已知术语,和用户在任务成功或失败时提供的终端奖励的组合。请参见下图以了解此过程的高级示意图。
无模型共享自动化中,我们的在回路中具有人类辅助的深度Q学习算法的概述
学会进行辅助
之前的研究已经将共享自动化形式化为部分可观察的马尔可夫决策过程(POMDP),其中用户的目标对智能体是未知的,并且为了完成任务必须对其进行推理。而现有方法倾向于假设POMDP的以下组成部分是事先已知的:(1)环境动态或状态转移分布;(2)用户的一组可能的目标,或目标空间;(3)对于给定目标的用户控制策略,或用户模型。在我们的研究中,我们放宽了这三个标准假设。我们引入了一种无模型的深度强化学习方法,该方法能够在不知道这些知识的情况下提供帮助,但也可以已知用户模型和目标空间时对其加以利用。
具有用户控制的Q-Learning
在回路中进行无模型强化学习会带来两个挑战:(1)保持信息丰富的用户输入和(2)最小化与环境的交互次数。如果用户输入是一个建议控件,一直忽略该建议并采取不同的行为可能会降低用户输入的质量,因为人类依靠他们的行为反馈来执行实时控制任务。像TRPO这样的通用策略算法很难在这个环境中进行部署,因为它们不能保证忽略用户输入的频率。它们也倾向于需要与环境进行大量的交互,而这对于人类用户来说是不切实际的。受到这两个标准的启发,我们转向深度Q-学习。
Q-learning是一种off-policy算法,使我们能够通过对用于给定预期返回和用户输入情况下选择行为的策略进行修改来解决(1)问题。从最近在并行自动化和外部回路稳定方面研究中所体现出的最小干预原则得到启发,我们执行一个最接近用户建议的可行操作,其中,如果一个操作不比最佳操作差很多,那么该操作就是可行的。
考虑到(2),我们注意到,相较于政策梯度和基于Monte Carlo值的方法,off-policy
Q-learning倾向于具有更高的样本效率。当用户近似最优时,我们的行为策略的结构也加快了学习速度:对于适当大的α,智能体学会对用户的策略进行微调,而不是学习从零开始执行任务。在实践中,这意味着在学习的早期阶段,组合的人机团队至少能够和没有附加辅助的人类执行能力一样好,而不是在随机策略的层面上执行。
用户研究
我们将我们的方法应用于两个实时辅助控制问题:月球登陆游戏(Lunar Lander game)和四旋翼着陆任务(Quadrotor
Landing Task)。这两项任务都涉及利用离散动作空间和低维状态观测(包括位置、方向和速度信息)来控制运动。在这两项任务中,人类飞行员都拥有完成任务所必须的私有信息,但他们无法独自完成任务。
月球登陆游戏
比赛的目的是通过操控一台主发动机和两个侧向推进器,将飞船降落在旗帜之间,而不发生碰撞或出界。辅助副驾驶可以看到着陆器的位置、方向和速度,但不能看到旗帜的位置。
人类飞行员(单独操控):人类飞行员无法保持稳定,并不断失败
人类飞行员+RL副驾驶:副驾驶提高了稳定性,从而让驾驶员有足够的把握降落在旗帜之间
很少有人能够单独完成月球登陆游戏,但在副驾驶参与时,他们往往表现得很好。
图2.a:30次以上的平均成功率和失败率
图2.b-c:前后两图分别表示,在月球登陆游戏中,有副驾驶和无副驾驶两种情况下的人类飞行员追踪轨迹。红色轨迹表示以碰撞或出界告终,绿色表示任务成功完成,其他情况用灰色轨迹表示。中间的星号标记代表着陆平台。为了便于说明,我们只显示左侧边界的着陆点数据
在选用综合飞行员模型进行的模拟实验(此处未展示)中,我们还发现了明确测量目标(即着陆平台的位置)的显著益处,这表明我们可以而且应该利用目标空间和用户模型,而不是简单地将用户的原始控制输入添加到智能体的观测结果中。
经过分析,我们发现月球登陆游戏的一个缺点是,游戏界面和物理性不能反映出现实世界中,机器人共享自动任务的复杂性和不可预测性。为了在更加真实的环境中对我们的方法进行评估,我们为驾驶一架真实四旋翼飞行器的人类飞行员定制了一项任务。
四旋翼着陆任务
该任务的目的是让一架Parrot AR-Drone 2无人机,着陆在距起飞点一定距离的小型、方形着陆平台上,并使无人机的第一人称视角指向环境中的随机目标(例如:一把红色的椅子),而不会飞出边界或耗尽时间。飞行员使用键盘控制飞行速度,并被阻止获取第三人称视角,这样一来,他们就不得不依赖无人机的第一人称视角来进行导航和着陆。辅助副驾驶观察无人机的位置、方向和速度,但不知道飞行员想要看向哪个目标。
人类飞行员(单独操控):飞行员的显示器只显示了无人机的第一视角,因此相机的指向很容易把控,但想要找到着陆平台却很困难
人类飞行员+RL副驾驶:副驾驶不知道飞行员要把摄像头对准哪里,但他知道着陆平台在哪里,因此,飞行员和副驾驶相互配合,共同完成了任务
人们发现,在限制时间的情况下,将摄像头指向目标场景并精确导航至一个可行的着陆平台,具有挑战性。辅助副驾驶在着陆平台上进行着陆方面几乎没有任何困难,但却并不知道要将摄像头对准哪里,因为它不知道人类在着陆后想观察什么。因此,人类飞行员可以将精力用于摄像头的瞄准,让副驾驶关注在着陆平台上的精准着陆,从而相互配合,完成任务。
图3a.超过20次实验的平均成功率和失败率
图3b-c.前后两图分别表示,在四旋翼着陆任务中,有副驾驶和无副驾驶两种情况下,人类飞行员飞行轨迹的鸟瞰图。红色轨迹表示以碰撞或出界而告终,绿色轨迹表示任务成功完成,其他情况用灰色轨迹表示。中间的星号标记代表着陆平台
我们的研究结果表明,飞行员和副驾驶相配合的任务完成情况,要显著优于单个飞行员或单个副驾驶的任务完成情况。
接下来怎么做?
我们的方法有一个主要的缺点:无模型深度强化学习通常需要大量的训练数据,这对操纵物理机器人的人类用户而言是一种负担。实验中,我们通过在无人类飞行员干预的情况下,从模拟环境中对副驾驶进行训练,从而在一定程度上解决了这一问题。遗憾的是,由于构建高保真模拟器和用户无关的奖励函数Rgeneral存在一定难度,因此这对于实际应用而言并不总是可行的。目前,我们正在探索解决这一问题的方法。
|