一种基于动态系统模型的机器人模仿学习的方法与流程

文档序号:17592773发布日期:2019-05-03 22:03阅读:226来源:国知局
一种基于动态系统模型的机器人模仿学习的方法与流程

本发明属于人工智能和机器人控制领域,尤其涉及一种基于动态系统模型的机器人模仿学习的方法。



背景技术:

当前,在机器人技术的研究中,如何使机器人具备类似于人类的智能行为已成为一大研究热点。而从人类学习中发展而来的模仿学习,作为机器人直接获取知识和技能的方式之一,在机器人的智能性的提升方面愈来愈发挥出巨大的作用,越来越多地受到学术界的关注和研究。其主要在于,一方面,相对于传统的机器人编程控制,模仿学习将使得机器人编程更加容易,减少了对于操控人员的专业性要求,且大大提高了机器人的作业效率;另一方面,模仿学习赋予机器人获取知识和学习知识的能力,使其能够快速学习,并具备更高的智能性。

对于机器人模仿学习,一般由三个过程组成:示教过程,学习过程,再现过程。目前,对于机器人模仿学习的研究,学术界和工业界主要集中在对学习过程的研究,而且已经出现了多种模仿学习的方法用来实现机器人的学习过程。这些方法主要分为三个大的类别,一是基于监督学习的方法,二是基于强化学习的方法,三是基于生成对抗网络的方法。这些方法的共同特点是,如何学习得到一个最优的控制策略,以此来指导机器人对于各种任务进行模仿或再现。虽然以上各种方法的出现解决了机器人模仿学习中的一些问题,但是对于机器人模仿学习,仍然存在着学习得到的运动模型或控制策略稳定性差、泛化能力差的问题,限制了机器人模仿学习的性能。具体表现在学习得到的运动模型并不能完全收敛到示教运动的目标点,对于示教运动范围外的空间缺乏足够的泛化能力,而且由于示教运动的复杂性,运动模型往往缺乏对于示教运动的表达能力。

针对以上机器人模仿学习中的问题,对于机器人行为运动的模仿学习,提出了一种基于动态系统模型的机器人模仿学习的方法。基于动态系统模型的方法由于将示教运动建模为一非线性动态模型,可以方便表达复杂的示教运动轨迹信息,从而学习更复杂的运动技能。同时,考虑给动态模型附加稳定性约束条件,从而可以提高运动模型的稳定性和泛化能力,有利于提高机器人的智能化程度。



技术实现要素:

本发明针对现有机器人模仿学习方法存在的问题,提出了一种基于动态系统模型的机器人模仿学习的方法。首先,该方法通过高斯混合模型gmm的方法将示教运动建模为一非线性动态系统模型;其次,将运动模型全局稳定的充分条件作为约束条件,以保证其所生成的所有轨迹都收敛到示教运动的目标点;再次,将运动模型的参数学习问题转化为求解一个约束优化问题,从而得到模型参数,实现对于运动模型的完整描述;最后,将学习得到的运动模型作为控制策略结合机器人系统来指导机器人完成运动的模仿。

为了实现以上目的,本发明一种基于动态系统模型的机器人模仿学习的方法,具体步骤如下:

步骤1、示教者通过手把手的方式指导机器人手臂完成一次或多次的示教运动,机器人由其内部的关节传感器记录示教运动过程中的关节角度变化情况,通过机械臂的正向运动学计算得到机械臂末端执行器的位置和速度变化信息

步骤2、通过gmm将示教运动建模为一非线性动态系统模型。由gmm得到关于示教运动模型的参数化表示。

步骤3、考虑所建模的运动模型的稳定性问题,基于李雅普诺夫稳定性理论,构造满足要求的李雅普诺夫函数,结合稳定性理论求解模型在示教运动目标点全局稳定的约束条件。

步骤4、在得到稳定性约束后,进行模型参数的学习。将所建模得到的参数化的运动模型的参数学习问题转化为求解一个约束优化问题,其中约束条件包括两个部分:稳定性约束条件和gmm模型的约束条件。借助于非线性规划的方法求解约束优化问题,得到最优模型参数,进而得到对于运动模型的完整描述。

步骤5、结合所构建的机器人模仿学习系统,将学习得到的运动模型作为机器人的控制策略指导其完成对于示教运动的模仿。

附图说明

图1是机器人模仿学习系统工作流程图;

图2(a)是单次简单示教运动轨迹;

图2(b)是单次简单示教运动中的学习效果;

图2(c)是单次简单示教运动中运动模型的生成轨迹;

图2(d)是单次简单示教运动中运动模型的生成轨迹;

图3(a)是多次简单示教运动轨迹;

图3(b)是多次简单示教运动中的学习效果;

图3(c)是多次简单示教运动中运动模型的生成轨迹;

图4(a)是单次复杂示教运动轨迹;

图4(b)是单次复杂示教运动中的学习效果;

图4(c)是单次复杂示教运动中运动模型的生成轨迹;

图4(d)是单次复杂示教运动中运动模型的生成轨迹;

图5(a)是多次复杂示教运动轨迹;

图5(b)是多次复杂示教运动中的学习效果;

图5(c)是多次复杂示教运动中运动模型的生成轨迹;

图6(a)是三维空间中的示教运动轨迹;

图6(b)是三维空间中的运动模型的生成轨迹。

具体实施方式

下面结合附图对本发明的具体实施方式进行详细说明。本发明提供一种基于动态系统模型的机器人模仿学习的方法,如图1所示是机器人模仿学习系统工作流程图。首先,对于某个目标点固定的模仿学习任务(如:拿放物品、篮球投篮等任务),通过手把手地抓取机器人手臂末端执行器进行多次目标点相对固定的运动示教,获得示教运动轨迹数据;然后,将获得的示教轨迹数据预处理后作为学习算法的输入数据,进而学习关于运动模型的参数,得到对于运动模型的完整描述。最后,将学习得到的运动模型作为机器人的控制策略,设置机器人手臂初始的运动位置,结合机器人的控制系统完成对示教任务的模仿。具体实现步骤如下:

(1)手把手拖动机器人手臂末端进行n次运动任务的示教,且n=1,2,3,......,由机器人手臂的内部关节传感器记录运动过程中的关节角度变化情况,通过机械臂的正向运动学计算得到手臂末端执行器的位置和速度变化信息,即为示教运动轨迹信息,记为其中ζ表示位置,表示速度,t表示时间,n表示示教运动轨迹的条数。此后,示教运动轨迹信息可用作模仿学习算法的输入数据。

(2)对于示教运动的建模,使用基于统计方法的高斯混合模型gmm来建立对于示教运动轨迹数据的概率描述。gmm是一种有限混合模型,其通过有限的高斯函数的混合来建立对示教运动数据的表示,同时可以消除数据的噪声。

给定一组n条示教运动轨迹数据的集合gmm由以下概率密度函数表示:

以上两式中gp(·)是高斯过程概率密度函数,k为gmm中混合模型的个数,ωk是第k个高斯过程的权重,且μk为该密度函数的均值向量,σk为对应的协方差矩阵,d是变量ζ和的维度。

对于给定ζ,的条件概率分布是:

其中n(·)同样是服从高斯分布的概率密度函数,表示第k个高斯分布的情况,为对应的均值向量,为对应的方差矩阵,而且有

公式(4)(5)中σζζk分别是变量和变量ζ的方差矩阵,是变量与ζ之间的协方差矩阵,和μζk分别表示为对应于和ζ的均值向量,而且以上均表示为第k个高斯分布时的情况。由公式(3),对应于ζ的条件概率可定义为:

而且有

其中变量i与k表示的含义相同。由公式(6)条件期望可求得高斯混合模型中的总的期望为:

而且有

公式(8)即为参数化的运动模型,且为一个动态模型,用表示。公式(9)中及变量i与公式(7)中的表示相同。在得到对于运动模型的参数化描述后,接下来的工作是学习得到运动模型的参数。

(3)由以上得到的参数化的运动模型,如果直接求解模型的未知参数,则得到的运动模型普遍存在稳定性问题,运动模型往往收敛不到运动的目标点ζ*。为了提高运动模型的稳定性,需要考虑其稳定性问题。根据李雅普诺夫稳定性理论,构造如下的李雅普诺夫函数v(ζ):rd→r:

v(ζ):rd→r表示函数v(ζ)是d维实数空间rd到一维实数域r的映射,v(ζ)是一个连续且具有连续的一阶偏导数的标量函数,而且应该满足如下的条件:

那么,运动模型将会在唯一的目标点ζ*处全局收敛,也即其生成轨迹均收敛到同一个目标点。经过推导和计算得到可以使运动模型稳定的约束条件:

公式(12)中<0表示一个矩阵是负定矩阵,将公式(12)条件作为运动模型的约束,则运动模型稳在目标点处稳定。

(4)在得到运动模型的稳定性约束后,为了得到完整的运动的描述,需要学习得到模型的参数θ={ω1,…,ωk;μ1,…,μk;σ1,…,σk}。本方法将运动模型的参数学习问题转化为求解一个约束优化问题,通过非线性规划的方法求解模型的未知参数。使用对数似然函数作为优化的目标函数:

以上公式中是训练数据点总的数量,目标函数对应的约束条件是:

通过附加约束条件的方法来保证运动模型的稳定性,将稳定性约束和gmm的约束条件共同组成了运动模型的完整的约束,最终求解得到最优参数θ*,即得到对于运动模型的完整描述。

(5)将学习得到的动态模型作为机器人的控制策略,即结合机器人系统可以用来实现对于示教运动的模仿。其中,首先利用学习得到的控制策略和机械臂初始的运动状态,由控制策略得到下一时刻期望的运动状态。然后,通过机械臂的逆向运动学将机械臂期望的末端位置和速度状态转化为机械臂期望的关节控制角度,通过机器人系统,实现在关节空间的运动控制。随后,将机械臂的正向运动学用于求解当前机械臂的状态,也即位置和速度,以此再结合动态模型的位置和速度演化关系,得到下一时刻的位置和速度,重复以上流程,直到机器人完成对于示教运动的模仿。

实施例1:

将一种基于动态系统模型的机器人模仿学习的方法用于机器人从人类示教中学习运动技能。通过手把手示教的方式,拖动机械臂的末端进行运动示教,完成一个类似于拿和放物品的运动任务,并记录示教运动轨迹的数据。经过学习算法的学习达到再现示教运动的目的。具体实施方式如下:

步骤1、通过手把手示教的方式,完成需要的示教运动,由机械臂的内部关节传感器记录运动过程中各个关节角度的变化,通过连接机械臂的上位机程序,由机械臂的正向运动学来求解得到末端执行器的位置和速度的变化情况,并将其记为用于后续的运动建模。如图2(a)所示为单次简单示教运动轨迹,且轨迹条数n=1。

步骤2、基于动态系统的机器人模仿学习的方法用于学习运动控制策略。初始化模型的超参数,设置k=3,将示教运动的轨迹信息作为学习算法的输入数据通过gmm的方法将示教运动建模为一非线性动态系统模型。考虑所建模的运动模型的稳定性问题,基于构造的李雅普诺夫函数,结合稳定性理论求解模型在示教运动目标点全局稳定的约束条件。在得到稳定性约束后,进行模型参数的学习。将所建模得到的参数化的运动模型的参数学习问题转化为求解一个约束优化问题,借助于非线性规划的方法求解约束优化问题,得到运动模型的最优参数,并将学习得到的运动模型作为机器人的控制策略。如图2(b)所示是单次简单示教运动中的学习效果。可见本文的方法具有很好的学习能力,且学习得到的模型稳定收敛到示教运动的目标点。图2(c)(d)分别为不同起始点开始的运动模型的生成轨迹,可见轨迹平滑,且均收敛到目标点,模型具有不错的泛化能力。

同理,图3(a)是多次简单示教运动轨迹,轨迹条数n=3,图3(b)是多次简单示教运动中的学习效果,图3(c)是多次简单示教运动中运动模型的生成轨迹。可见本文的方法具有多任务的学习能力,对于多条示教轨迹也可以同时学习,提高了机器人的学习能力和智能化程度。

图4(a)是单次复杂示教运动轨迹,轨迹条数n=1,图4(b)是单次复杂示教运动中的学习效果,图4(c)(d)分别是不同起始点开始的运动模型的生成轨迹。可见,对于复杂的示教运动,模型也具有不错的学习能力,一方面稳定性较好,生成轨迹均收敛;另一方面模型的泛化能力较好,示教范围外也具有不错的轨迹生成能力。

同理,对于多任务的学习,图5(a)是多次复杂示教运动轨迹,轨迹条数n=3,图5(b)是多次复杂示教运动中的学习效果,图5(c)是多次复杂示教运动中运动模型的生成轨迹,可见模型的学习效果不错,具有与以上相同的结论。

图6(a)是三维空间中的示教运动轨迹,图6(b)是三维空间中的运动模型的生成轨迹,可见在三维空间中同样具有以上的结论。

步骤3、最后,可以结合机器人系统,将学习得到的运动模型作为机器人的控制策略指导其完成对于示教运动的模仿。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1