学生休息室

分享学生如何在日常项目中使用Matlab和Simulink的技术和现实生活示例#studentsuccess金宝app

步行机器人控制:从PID到强化学习

在一个以前的博文,我描述了建模过程,并在结束时进行了关于模型构建后如何实现控制器的高级讨论。

在这篇文章中,我们将深入探讨控制的细节。我们将描述类人机器人可以被控制的不同方式,以及何时何地你应该使用不同的策略。虽然概念扩展到许多类型的系统,我们将集中在两足类人机器人的运动为我们的例子。

基于模型的方法-控制设计

控制工程是一个非常成熟的领域,其技术已成功应用于许多双足机器人。其中最著名的有本田的ASIMO(最近在2018年退休)和波士顿动力公司阿特拉斯

与大多数控制设计方法一样,创建成功控制器的核心是数学模型。一个模型通常有冲突的需求,因为它必须是

  • 简单到可以应用众所周知的控制设计技术,如PID、LQR和MPC。
  • 复杂到足以逼真地接近真实的机器人行为,因此控制器在实践中工作。

有了这些信息,保持两者的简单并不少见低保真模型用于控制器设计和复杂高保真模型用于模拟和测试。

用于腿机器人的常见低保性模型是线性倒立摆模型(Lipm),由诸如Tomomichi Sugihara博士的领域中广泛使用。点击这里查看他的一篇论文

对于一个有腿的机器人,如着名Raibert Hopper.在美国,建立接触相(当脚在地面并假定是固定的)和飞行相(当脚离开地面)的模型是很重要的。对于多足机器人,如两足机器人,一种方法是假设机器人总是有一只脚在地面上,因此系统总是被建模为LIPM。与之相比,更动态的行为,如跑步,你可能有阶段,双脚离开地面-这导致更快的动作,但更复杂的控制。现在我们假设我们的一只脚一直保持接触。

要了解有关Lipm方法的更多信息,请观看我们的基于模型的仿人行走控制视频。

另一个重要的概念是零时刻点(ZMP).这被定义为接触点,由于重力的力矩正好抵消了由于与地面接触的力矩,从而使摆系统稳定。

控制步行机器人使其稳定的一个典型方法是确保ZMP在内部金宝app支持多边形也就是说,质心在机器人静态稳定的范围内。只要机器人在支撑多边形内行走,理论上行走运动是稳定的。金宝app我说“理论上”是因为,记住,真正的机器人不是一个线性倒立摆,所以建立一个安全系数总是一个好主意!

最后,该相同的线性模型可以与模型预测控制(MPC)一起使用,以产生物理上一致的行走模式。这是由舒吉博士议员展示的这份出版物.我也喜欢这篇博客综述了LIPM在足机器人控制中的作用。

当然,控制脚相对于质心的位置只是完整系统的一部分。一旦建立了行走模式,仍有其他较低级别的控制问题可以解决,以使机器人遵循这种模式。这包括将目标脚动转换为目标致动器运动(逆运动学),控制致动器本身,稳定和鲁棒性与扰动等等。您可以在下面看到一些典型组件的图表。

此时,您可能需要考虑使用高保真模拟来测试算法,因为一个LIPM模型不足以测试所有这些低级控制组件。

您可以了解更多关于使用MATLAB和Simulink控制双足类人机器人通过观看我们的金宝app行走机器人模式生成视频

无模型方法——机器学习

机器学习算法和计算能力的急剧增长(这两者是相关的)开辟了一个完整的研究领域,致力于让计算机学习如何控制一个物理系统——而这个物理系统通常是一个机器人,正如著名的DeepMind出版物谷歌所述丰富环境中运动行为的出现

在这种情况下,“控制器”指的是我们想要分配给控制机器人的软件的任何数值结构。从技术上讲,你可以用机器学习来参数化一些简单的东西,比如PID控制器;然而,这些模型结构受到它们的线性行为和接受简单数字数据的能力的限制,所以你不会从机器学习中获得太多——事实上,我将简单地称之为“优化”。机器学习对控制的真正力量来自于深神经网络,这可以近似极度非线性行为并处理更复杂的输入和输出数据。

应用于控制的深度神经网络有两种类型:

  • 监督学习 -使用现有数据集进行培训,其目标是概括为新情况。例如,我们可以从附加到运动捕获系统的行走人员,远程控制机器人的专家或基于模型的控制器中的专家收集数据。然后,监督学习可用于参数化神经网络。
  • 强化学习- 通过经验或试验和错误学习参数化神经网络。与监督学习不同,这不需要收集任何数据先验,这是以训练花费更长的时间为代价的,因为强化学习算法探索(通常)巨大的参数搜索空间。

当然,总有可能将这两种方法结合起来。例如,一个现有的控制策略可以用来收集一个初始数据集,用以引导强化学习问题——这通常被称为模仿学习.这提供了“不从零开始”的明显好处,这将显著缩短训练时间,并具有产生合理结果的更高可能性,因为理想情况下,初始条件已经在某种程度上被证明有效。

你可以通过观看我们的金宝app深度强化学习步行机器人视频

更普遍地说,使用机器学习来控制机器人系统有利有弊。

优点:

  • 机器学习可以实现直接使用图像和点云等复杂传感器数据的端到端工作流。相比之下,传统的控制方法需要首先处理这些数据——例如,创建一个可以识别感兴趣位置的物体探测器。
  • 可能学习复杂的非线性行为,这将是困难的,甚至不可能实现的传统控制设计方法。
  • 一般来说,设计控制器的人员需要较少的领域专业知识。

缺点:

  • 机器学习方法容易对特定问题进行“过拟合”,这意味着结果不一定适用于其他任务。当您使用仿真来训练控制器时,这尤其困难,因为控制器可能利用真实机器人中不存在的仿真工件。这个问题太常见了,所以给它起了个名字SIM2REAL.
  • 机器学习还有另一个臭名昭著的“可解释性”挑战——换句话说,一旦用你最喜欢的机器学习技术训练了一个控制器,我们如何解释习得的行为,并将其应用于其他问题?
  • 一般来说,设计控制器的人需要更少的领域专业知识(是的,这既是有利的也是不利的)。

结合控制和机器学习

关键的外卖是基于机器的基于机器的控制方法具有很大的潜力,但是已经有多年的研究和成功实施了基于模型的控制器,这些控制器使用了很好的地理知识,这些控制器对行走机器人动态进行了很好的身体知识......而且我们将被遗弃抛弃所有这些信息!

值得注意的是,机器学习和传统控制可以(也应该)结合起来。例如,下面的图表

  • 使用机器学习将数字数据和感知传感器(如颜色和深度图像、激光雷达等)转换为机器人“良好”的运动计划和操作模式。
  • 使用基于模型的控制技术来定位机器人的脚,将其转换为关节角度,并控制单个执行器来执行该动作。安全关键因素,如稳定性,也将完全独立于训练人员的决定。

上面只是一个例子,您应该随意探索在可解释的分析算法与“黑匣子”学习策略中绘制解释,分析算法与特定问题的“黑匣子”策略之间的分区。两者的仔细考虑结合可以导致强大而复杂的自主行为,可以超出培训环境和平台,并提供一些对可能需要安全至关重要的行为的保证。

我们希望您喜欢阅读这篇文章,我们期待您的意见和讨论。

|

注释

要留下评论,请点击这里登录到您的MathWorks帐户或创建一个新帐户。