学生休息室

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

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

在一个以前的博文,我描述了建模和离开的高层讨论如何实现控制器一旦你有模型建立。

在这篇文章中,我们将深入研究控制的细节。我们将描述类人机器人可以控制的不同方法,和在何时何地你应该使用不同的策略。虽然概念扩展到许多类型的系统,我们将专注于运动的双足人形机器人的例子。

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

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

如同大多数控制设计方法,创建一个成功的核心控制器是一个数学模型。模型通常有相互矛盾的要求,它必须

  • 简单应用著名的PID控制设计技巧,等方面,货币政策委员会。
  • 实际复杂到足以接近真正的机器人行为的控制器在实践工作。

根据这些信息,维护简单并不少见低保真模型控制器设计和复杂高保真模型仿真和测试。

腿式机器人的公共低保真模型是线性倒立摆模型(LIPM),广泛使用等领域的先驱博士Tomomichi苏吉哈拉。在这里看到他的出版物之一

单腿机器人等著名雷伯特料斗,重要的是模型的接触阶段(当脚在地上,被认为是固定的)和飞行阶段(当脚离开地面)。等类似的机器人的两足动物,一种方法是假设机器人总是有一只脚在地上,因此,系统总是建模为LIPM。更多的动态行为如运行的情况与此相反,你可能阶段,双脚离开地面,导致更快的运动,但更复杂的控制。现在,假设我们总是有一只脚在接触。

更多地了解LIPM方法,看我们基于模型的仿人步行的控制视频。

知道是另一个重要概念零力矩点(ZMP)。这是定义为接触点的时刻重力完全平衡时刻由于与地面接触,从而使钟摆系统稳定。

典型的方法控制步行机器人,所以它是稳定的,然后,是确保ZMP内金宝app支持多边形机器人的——也就是说,重心是在一系列的机器人静态稳定。只要机器人采取措施支持多边形内,步行运动在理论上是稳定的。金宝app我说“理论上”,因为,记住,真正的机器人不是一个线性倒立摆,所以建设一个安全系数总是一个好主意!

最后,可以使用相同的线性模型以及模型预测控制(MPC)生成身体行走模式一致。这是证明了博士Shuuji Kajita这份出版物。我也喜欢这篇博客作为一个总结LIPM在腿式机器人控制的作用。

当然,控制脚的位置相对于质心只是整个系统的一部分。一旦建立步行模式,仍有其他低级控制问题解决机器人遵循这种模式。这包括目标脚运动目标执行机构运动的转换(逆运动学),控制执行机构,稳定和健壮性干扰,等等。你可以看到下面的一些典型的组件图。

在这一点上,你可能要考虑使用高保真模拟测试算法,由于LIPM模型不足以测试所有这些低级控制组件。

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

模范自由方法——机器学习

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

本例中的“控制器”是指任何数值结构我们要分配的软件控制机器人。从技术上讲,您可以使用机器学习一些简单的像一个PID控制器参数化;然而,这些模型结构受限于他们的线性行为和能力接受简单的数值数据,所以你不从机器学习中获益——事实上,我只会称之为“优化”。机器学习的真正力量来自控件深层神经网络,它可以近似极其非线性行为和处理更复杂的输入和输出数据。

深层神经网络应用于控制可以采取两种形式:

  • 监督学习,培训使用现有的数据集,与新形势下推广的目标。例如,我们可以收集数据从一个人类行走动作捕捉系统,一个专家远程控制机器人,或基于模型的控制器。然后,可以使用监督学习参数化神经网络。
  • 强化学习——学习经验,或试错,对神经网络进行参数化。与监督学习,这并不需要任何收集的数据先天的,这是以牺牲的训练以更长的时间为探讨了强化学习算法(通常)巨大的参数搜索空间。

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

使用MATLAB和Simulink您可以了解更多关于这些类型的问题通过观察我们金宝app深入强化学习行走机器人的视频

更普遍的是,采用机器学习有优点和缺点,控制机器人系统。

优点:

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

缺点:

  • 机器学习方法容易受到“过度拟合”到一个特定的问题,这意味着结果不一定推广到其他任务。这是特别困难的,当您使用的是模拟训练一个控制器,控制器可以利用模拟工件中不存在真正的机器人。这个问题很常见,这是考虑到的名字sim2real
  • 机器学习的另一个臭名昭著的挑战“explainability”——换句话说,一旦控制器训练使用您喜欢的机器学习技术,我们如何解释习得行为并应用到其他问题吗?
  • 一般来说,不需要专业知识的人(s)设计控制器(是的,这是一个正面和反面)。

结合控制和机器学习

关键的结论是基于机器学习的控制方法有很大的潜力,但已经有多年的研究和成功实现的基于模型的控制器使用易于理解的物理知识步行机器人动力学…我们会疏忽容易扔掉所有这些信息!

一个重要的注意的是,机器学习和传统的控制可以(而且应该)的总和。例如,如下图

  • 利用机器学习将数值数据和感知传感器(如颜色和深度图像、激光雷达等)成一个“好”为机器人运动规划和操作模式。
  • 使用基于模型的控制技术,机器人的脚,它转换为关节角和控制各个执行机构执行这个动作。关键安全稳定等因素也会照顾的完全独立的训练有素的代理可能会决定。

以上只是一个例子,你应该感到自由探索画可辩解的之间的分区,分析算法和一个“黑盒”为您的具体学习策略问题。组合的两个经过深思熟虑会导致强大的和复杂的自治行为可以概括培训以外的环境和平台,以及提供一些担保行为可能需要安全性至关重要。

我们希望你喜欢读这篇文章,我们期待你的评论和讨论。

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。