想象一下机器人是否可以从观看演示中学习:您可以向家用机器人展示如何做日常杂务或摆好餐桌。在工作场所中,您可以像新员工一样训练机器人,向他们展示如何执行许多职责。在旅途中,您的无人驾驶汽车可以通过观察您在附近的社区开车来学习如何安全驾驶。
为了实现这一愿景,南加州大学的研究人员设计了一种系统,该系统可使机器人从很少的演示(甚至是不完美的演示)中自主学习复杂的任务。11月18日,在机器人学习会议(CoRL)上发表了题为从演示中学习使用信号时态逻辑的论文。
研究人员的系统通过评估每个演示的质量来工作,因此可以从看到的错误以及成功中学习。虽然当前的最先进方法至少需要100次演示才能完成特定任务,但这种新方法仅允许机器人从少量演示中学习。它还使机器人能够更直观地学习人类彼此学习的方式-您观看某人甚至不完美地执行任务,然后尝试自己。对于人类来说,从彼此观看中收集知识并不一定是“完美”的示范。
主要作者Aniruddh Puranic说:“许多机器学习和强化学习系统都需要大量的数据数据和数百个演示-您需要一个人一遍又一遍地演示,这是不可行的。” USC维特比工程学院计算机科学专业的学生。
“而且,大多数人没有编程知识来明确说明机器人需要做什么,而人类可能无法展示机器人需要知道的一切。如果机器人遇到了以前从未见过的东西怎么办?这就是一个关键的挑战。”
在为复杂任务获得有效的机器人控制策略(控制机器人的运动)时,从演示中学习变得越来越受欢迎。但是它很容易在演示中出现瑕疵,并且由于机器人可能会学习到不安全或不良行为而引起安全隐患。
此外,并非所有演示都是相等的:某些演示比其他演示更好地指示了所需的行为,并且演示的质量通常取决于提供演示的用户的专业知识。
为了解决这些问题,研究人员集成了“信号时态逻辑”或STL来评估演示的质量,并自动对它们进行排名以产生内在的奖励。
换句话说,即使演示的某些部分基于逻辑要求没有任何意义,使用这种方法,机器人仍然可以从不完善的部分中学习。从某种意义上说,该系统就演示的准确性或成功得出了自己的结论。
“如果说机器人从不同类型的演示中学习(可能是动手演示,视频或模拟),如果我做的事情非常不安全,标准方法将执行以下两项操作之一:或者,他们将完全无视它甚至更糟的是,机器人会学到错误的东西。”合著者,南加州大学维特比分校计算机科学助理教授Stefanos Nikolaidis说。
“相反,这项工作以一种非常聪明的方式,以逻辑形式使用了一些常识性推理,以了解演示的哪些部分是好的,哪些部分是不好的。本质上,这正是人类所做的。”
例如,有人跳过停车标志的驾驶示范。在系统上,这要比在好的驾驶员方面的排名低。但是,如果在演示过程中,驾驶员执行了一些智能操作(例如,踩下刹车以避免撞车),机器人仍会从该智能操作中学习。
适应人类的喜好
信号时态逻辑是一种表达性的数学符号语言,可用于对当前和将来的结果进行机器人推理。前丰田工程师,南加州大学维特比分校计算机科学助理教授Jyo Deshmukh说,虽然以前在该领域的研究使用的是“线性时间逻辑”,但在这种情况下最好使用STL。
“当我们进入对时间至关重要的机器人和自动驾驶汽车之类的网络物理系统时,线性时间逻辑变得有点麻烦,因为它会导致变量的真/假值序列,而STL可以推理关于物理信号。”
在Deshmukh的建议下,Puranic在与Nikolaidis进行了动手机器人课程之后提出了这个想法,Nikolaidis一直在研究开发机器人以从YouTube视频中学习。三人决定进行测试。他们三人都对系统的成功程度感到惊讶,教授们都对普兰尼奇的辛勤工作表示赞赏。
尼古拉迪斯说:“与在许多机器人应用中广泛使用的最新算法相比,您看到所需的演示数量有一个数量级的差异。”
该系统已经使用Minecraft风格的游戏模拟器进行了测试,但是研究人员表示,该系统还可以从驾驶模拟器甚至视频中学习。接下来,研究人员希望在真实的机器人上进行尝试。他们说,这种方法非常适合事先知道地图但地图中存在动态障碍的应用:家庭环境中的机器人,仓库甚至太空探索漫游者。
尼古拉迪斯说:“如果我们希望机器人成为好的队友并帮助人们,首先,他们需要非常有效地学习并适应人们的喜好。” “我们的方法可以做到这一点。”
“我很高兴将此方法集成到机器人系统中,以帮助他们有效地从演示中学习,同时也可以有效地帮助人类队友完成协作任务。”