
机器如何学习理解人类的直觉?
三个要点
✔️ 提出了一种高效学习复杂物理问题的方法,以便设计出能与物理世界互动的机器人。
✔️ 它描述了训练机器解决将大理石移动到 CME 中心问题的程序。
✔️ 它设计了一个能从物理引擎获取物理概念的代理。
Data-Efficient Learning for Complex and Real-Time Physical Problem Solving using Augmented Simulation
written by Kei Ota, Devesh K. Jha, Diego Romeres, Jeroen van Baar, Kevin A. Smith, Takayuki Semitsu, Tomoaki Oiki, Alan Sullivan, Daniel Nikovski, Joshua B. Tenenbaum
(Submitted on 14 Nov 2020 (v1), last revised 16 Feb 2021 (this version, v2))
Comments: Under submission
Subjects: Machine Learning (cs.LG); Artificial Intelligence (cs.AI); Robotics (cs.RO)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
摘要
本文介绍了一种深度强化学习算法如何在圆形迷宫中有效地导航弹珠的方法。对于这项在普通强化学习中难以完成的任务,它与真实系统进行交互,利用从数据中估算出的参数初始化物理引擎,并使用高斯过程回归来纠正物理引擎中的错误。通过这种方式,我们提出了一种混合模型,它可以在几分钟内学会如何在非常复杂的环境中移动弹珠。
图 1.
导言
本文的重点是设计具有灵活、数据高效和可通用方法的人工智能机器人。它将预定义模型与数据驱动方法相结合,与物理世界互动,学习预测与实际观测之间的残差,从而更新模型。论文介绍了一个新颖的框架,该框架可应用于通过环形迷宫环境进行实时物理控制,在该环境中,所提出的方法可成功地高效学习样本。该论文的主要贡献包括:使用物理引擎与机器学习模型增强的混合模型,以及在环形迷宫环境(CME)中进行样本高效学习的演示。
相关研究
这项研究强调了计算机游戏和机器人学中强化学习的进展,并提出了一些措施,以解决在模拟中取得成功的算法在现实世界中适用性有限的问题。研究探讨了基于模型的代理和通用物理引擎的使用,以便在真实物理环境中高效学习。这包括从模拟到现实情况的转移和混合学习模型的使用,并探讨了利用物理知识进行有效控制的方法。
问题的提出
考虑将弹珠移动到 CME 中心的问题。我们的目标是在一个基于模型的环境中研究从模拟到现实的问题,其中代理使用物理引擎作为环境物理的初始知识。
本文试图在这种情况下回答以下三个问题
(i) 基于模型的 "模拟到现实 "架构需要什么才能实现物理系统的高效学习? |
(ii) 我们如何才能设计出以高效数据方式运行和学习的仿真代理? |
(iii) 代理的表现和学习方式与人类学习如何解决这些任务的方式相比如何? |
模拟到真实 ... 模拟到现实
这项研究将 CME 作为测试环境,希望所提出的技术能够普遍应用于机器人系统。代理的目标是利用控制器学习弹珠动态的精确模型,以便 CMS 可以根据其状态选择行动。MuJoCo 被用作物理引擎 (fPE),并与残差动力学模型 (fGP) 和真实系统模型 (freal) 相结合。
办法
设计学习代理的方法受到人类物理推理的启发。这意味着,人只需尝试几次就能解决新的操作任务。这主要是因为它依赖于人类已经学会的物理概念。根据类似的原理,我们设计了一种从物理引擎中获取物理概念的代理。拟议的方法如图 2 所示。
图 2.
本文提出了一种利用物理引擎设计 "从模拟到真实"(sim-to-real)代理的方法,以弥合模拟环境与真实环境之间的差距。物理引擎的初始参数是随机设置的,这些参数是利用进化策略(CMA-ES)从模拟环境和真实环境的残差中估算出来的。其余误差使用高斯过程回归进行修正,最后使用 NMPC 策略控制真实环境。模拟与真实环境之间的差距是由于物理引擎近似和系统级问题造成的,因此提出了一种方法,通过参数估计和高斯过程回归来纠正这些问题。
答:物理引擎
本文使用 MuJoCo 作为物理引擎 (PE),以考虑具有受限弹珠运动的环形环境 (CME)。模型中忽略了弹珠的径向运动,只考虑了角度位置。不过,为了研究代理在模拟中的表现,还创建了一个没有弹珠约束的完整模型。
我们构建并展示了两种不同的物理引擎模型:一种是适用于 RL 模型的简化物理引擎(f PE red),另一种是使用模拟器完整内部状态的模型(f PE fulll )。这些模型的区别在于弹珠的位置,在模拟研究中,弹珠的位置是真实系统的近似值。实验被称为 "模拟到模拟"(sim-to-sim),用于评估代理在复杂环境中初始化时对物理引擎的适应程度。
模拟对模拟 模拟到模拟
B: 示范学习
考虑离散时间系统。
其中xk∈R4表示状态,uk ∈R2 表示行动,ek 表示离散时间 k∈[1, .T],并假定为时间 k∈[1, ..., T]时对角协方差的标准化白高斯噪声。在所提出的方法中,公式 1 中的未知动态 f 代表系统的动态。算法中的 1 代表 CMS 真实 动态 f,模拟为以下两个分量之和。
其中,f PEred代表上一节定义的物理引擎模型,f GP 代表学习真实与模拟器动态之间残差的高斯过程模型。为了提高模型的准确性,f PE red 和 f GP 的两个分量都要学习。该方法以算法 1 的伪代码形式呈现,描述如下。
・(1) 估算物理参数
首先,对实际系统的物理参数进行估算。由于很难直接测量实际系统的物理参数,因此使用 CMA-ES 估算 MuJoCo 的四个摩擦参数。如算法 1 所述,首先,使用 NMPC 控制器在实际系统上收集若干事件。然后使用 CMA-ES 估算最佳摩擦参数 µ∗ ,使真实系统和模拟系统之间的大理石运动差异最小,如下所示
其中,D 代表在实际系统中收集的转换,Wµ 是权重矩阵。它的值为 1,只与状态 xk+1 中大理石 θk+1 的角位置项有关。
・(2) 利用高斯过程进行残差模型学习
由于本节开头所述的建模限制,在估算物理参数后,模拟器与真实系统之间仍存在差异。为了获得更精确的模型,我们使用标准线性核,通过边际似然最大化来训练高斯过程(GP)模型,以学习两个系统之间的残差,最小化以下 L GP
收集真实系统的轨迹后,利用估算的物理参数 µ∗ 重置物理引擎,生成模拟器估算值。在此过程中,GP 学习输入输出关系 fGP(xrealk,urealk) = xrealk+1- xsimk+1 并为弹珠的位置和速度训练两个独立的 GP 模型。 研究发现,在实际系统中,GP 模型在数据预测准确性和数据效率方面都是最佳的。
・(3) 运动行为建模
在 CMS 顶倾平台上,业余级伺服电机在位置控制模式下运行,并使用具有较长稳定时间的控制器。由于控制算法的计算,这会造成动作执行延迟,导致与物理引擎不匹配。为了解决这个问题,我们对电机进行了反向模型训练。该反演模型可预测将发送给尖端倾斜平台电机的动作,并生成控制信号。通过正弦电机输入对 CMS 进行激励,并收集电机响应数据,来训练电机逆模型。
C: 使用 iLQR 进行轨迹优化
在基于模型的控制中,迭代 LQR(iLQR)算法用于以一种计算高效的方式解决控制器设计优化问题。虽然其他优化求解器也能生成最优解,但 iLQR 提供了一种高效的解决方案。从形式上看,需要解决以下轨迹优化问题,并在特定的时间步长 [T-1] 内对控制 uk 进行操作。
对于状态成本,使用了从目标状态 xtarget (当前情况下最接近弹珠的栅极)测量的状态误差的二次成本函数,如下所示
其中矩阵 W 代表不同状态的权重。 对于控制成本,下式给出的二次成本也用于惩罚控制。
在 iLQR 优化中,引入平滑版成本函数不会导致 iLQR 行为发生任何变化。利用离散时间动力学和成本函数,计算出系统轨迹的局部线性模型和二次方成本函数,并对其进行迭代求解,以获得最佳控制输入和局部增益矩阵。该优化的解被称为参考轨迹,仅在训练开始时根据经验调整一次,实验中使用 W=diag(4,4,1,0.4),权重为 λu=20。
D:使用非线性模型预测控制的在线控制
在实际系统中控制弹珠的运动非常困难,而且会受到静摩擦和延迟等问题的影响。基于 iLQR 的 NMPC 控制器对系统进行实时控制,控制信号由最小二乘跟踪成本函数生成。
控制速率为 30 Hz,优化器使用预先计算的轨迹进行热启动,通过并行计算来满足时间限制。
图 3.
实际轨迹(红色)、使用 CMA-ES 估算的物理特性预测的轨迹(蓝色)和使用模拟到模拟实验的默认物理特性预测的轨迹(绿色)的比较。 轨迹由随机初始点和随机策略生成。
试验
本节将测试拟议方法在内容管理系统上的表现,以及与人类表现的比较。
A:使用 CMA-ES 估算物理特性
本节展示了物理参数估计在模拟到模拟和模拟到真实设置中的表现。模拟到模拟实验证实,CMA-ES 生成的参数具有足够的准确性,并且估计的参数弥补了不同动力学之间的差距。模拟到模拟实验的结果表明,CMA-ES 能够以足够的精度生成参数。模拟到实际的实验也表明,CMA-ES 优化减少了球位置的误差。不过,与静摩擦力有关的问题依然存在,需要在 CMA-ES 初始参数估计后使用 GP 回归进行微调。
B: 实际系统中的控制性能
模拟到模拟的代理在 CMA-ES 的微调下表现良好,并在真实系统中引入了残差学习;CMA-ES 适合模拟到模拟的转移,但在应用于机器人时,内部模型与真实世界的动力学存在差异;CMA-ES 模型以数据驱动的方式进行了扩展,并利用 GP 残差模型对其进行了迭代改进。以数据驱动的方式进行了扩展,并利用 GP 残差模型进行了迭代改进。随着训练数据量的增加,模型的性能得到了改善,特别是在外环和内环,每个环的控制时间都有所减少。
图 4.
C.:与人类表现的比较
参与者和学习模型(CMAES 和 CMA-ES+GP1 )接受了相同的 CME 任务,参与者使用操纵杆引导弹珠通过迷宫。参与者的解题时间略有减少,但没有统计学意义。模型学习的过程与此类似,时间的减少在统计学上并不显著。内圈的任务难度很大,人类和模型都在内圈花费了更多时间。相比之下,SAC 算法在模拟中学习到了最短的距离,从而最大限度地减少了在内环上花费的时间。
结论和未来行动
本文基于认知科学的研究成果,提出了一种在复杂的圆形迷宫中有效控制弹珠的代理构建方法。它使用物理引擎初始化和高斯过程回归模型来估计真实系统中的物理参数,并结合 iLQR 和 MPC 来控制弹珠。事实证明,这种方法比传统的强化学习更具数据效率,能让弹珠在几分钟内适应任务。这种方法非常灵活,可应用于其他物理控制任务。未来的工作旨在测试其通用性和在不同迷宫中的应用,并将其与通用机器人优化软件集成,使其更加有效。
值得注意的是,iLQR 和 MPC 的结合通过专注于实际物理参数估计(如初始化物理引擎和利用高斯过程回归模型)来提高数据效率。
特别有实用价值的是,与传统的强化学习相比,该系统实现了更高的数据效率,并能在几分钟内使弹珠适应新任务。它的另一个优点是灵活,可应用于其他物理控制任务。
从未来的角度来看,可以对该方法的通用性和在不同迷宫中的应用进行测试,并将其与通用机器人优化软件相结合,以进一步提高该方法的实用性。总之,我们认为,结合认知科学和物理学原理的方法可以为机器人技术带来新的发展。
与本文相关的类别