机械机构的控制方法、装置和电子设备与流程

文档序号:16923613发布日期:2019-02-19 19:41阅读:399来源:国知局
机械机构的控制方法、装置和电子设备与流程

本发明涉及机械控制技术领域,具体涉及一种机械机构的控制方法、装置、电子设备、计算机程序产品和计算机可读存储介质。



背景技术:

随着计算机技术和精密制造技术的不断发展,机械机构的控制技术被广泛应用于工业生产领域。如何使得机械机构能够更智能且更高效率地执行更复杂的任务,成为了机械控制技术的一个研究热点。

传统的机械机构控制方法依赖于完全的人工编程。以机械机构的末端执行器要到达一个具体的目标坐标为例,需要通过人工编程建立末端执行器的驱动机构的控制量与坐标变量之间的算法函数。这样当人工输入特定时间下的目标坐标时,才能通过对该算法函数进行逆运动学运算,以求得该驱动机构的控制量。由此可见,传统控制方法需要较为复杂的人工编程过程,难以使机械机构完成更为复杂的任务;且由于机械机构需要严格服从某些条件才能使得该逆运动学运算有解析解,这种逆运算过程也会严重影响机械机构动作执行的实时性和效率。



技术实现要素:

有鉴于此,本发明实施例提供了一种机械机构的控制方法、装置、电子设备、计算机程序产品和计算机可读存储介质,解决了现有技术中机械机构控制方式的执行效率低和实时性差的问题。

根据本发明的一个方面,提供了一种机械机构的控制方法,包括:获取所述机械机构的目标状态参数;根据所述目标状态参数获取所述机械机构的驱动组件的控制信息;以及根据所述控制信息控制所述驱动组件执行对应的机械动作,以使得所述机械机构达到所述目标状态参数所对应的目标状态;其中,所述目标状态参数的获取过程基于第一强化学习模型实现,和/或所述控制信息的获取过程通过将所述目标状态参数输入至第二强化学习模型实现。

根据本发明的另一方面,提供了一种机械机构的控制装置,包括:第一获取模块,配置为获取所述机械机构的目标状态参数;第二获取模块,配置为根据所述目标状态参数获取所述机械机构的驱动组件的控制信息;以及执行模块,配置为根据所述控制信息控制所述驱动组件执行对应的机械动作,以使得所述机械机构达到所述目标状态参数所对应的目标状态;其中,所述目标状态参数的获取过程基于第一强化学习模型实现,和/或所述控制信息的获取过程通过将所述目标状态参数输入至第二强化学习模型实现。

根据本发明的另一方面,提供了一种电子设备,包括:处理器;存储器;以及存储在存储器中的计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行如上述任一项所述的机械机构控制方法。

根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如前任一所述的机械机构控制方法。

根据本发明的另一方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令在被处理器运行时使得处理器执行如上述任一所述的机械机构控制方法。

本发明实施例提供的一种机械机构控制方法、装置、电子设备、计算机程序产品和计算机可读存储介质,将机械机构的控制过程拆分为了三层:第一层用于获取机械机构的目标状态参数,第二层用于获取使得机械机构达到该目标状态参数的控制信息,第三层用于具体的执行该控制信息;并且其中的第一层和/或第二层基于强化学习模型实现。与现有技术相比,由于基于强化学习模型来完成第一层和/或第二层的控制过程,完全避免了人工编程,可以完成更为复杂的任务,也避免了现有技术中需要进行逆运动学运算所带来的执行效率低的问题。同时,由于将机械机构的控制过程拆分为了三层,避免了端到端的学习过程,即,可有层次地分别建立第一层和/或第二层的强化学习模型,这样避免了强化学习过深的复杂度,使得训练过程对数据样本的依赖更少,且数据样本收敛更快,可显著提高机械机构的训练效率和动作执行的准确性。

附图说明

通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1所示为本发明一实施例所提供的一种机械机构的控制方法的流程示意图。

图2所示为本发明一实施例所提供的一种机械机构的控制方法中目标状态参数获取过程的流程示意图。

图3所示为本发明一实施例所提供的机械机构的控制方法中第一强化学习模型的训练过程的流程示意图。

图4所示为本发明一实施例所提供的机械机构的控制方法中第二强化学习模型的训练过程的流程示意图。

图5所示为本发明一实施例所提供的机械机构的控制方法中第二强化学习模型的训练过程中第二反馈变量的取值的更新过程的流程示意图。

图6所示为本发明另一实施例所提供的机械机构的控制方法中第二强化学习模型的训练过程的流程示意图。

图7所示为本发明另一实施例所提供的机械机构的控制方法中获取机械机构的驱动组件的控制信息的流程示意图。

图8所示为本发明一实施例所提供的机械机构的结构示意图。

图9所示为本发明一实施例提供的一种机械机构的控制装置的结构示意图。

图10所示为本发明另一实施例提供的一种机械机构的控制装置的结构示意图。

图11所示为本申请一实施例提供的电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

申请概述

为了解决上述执行效率低、实时性差的问题,可以采用基于强化学习对机械机构进行控制的方式。然而,这种机械机构控制方法依赖于一种强化学习模型进行端到端的控制。当向该强化学习模型输入状态量后,该强化模型则直接输出驱动机构的控制量。虽然这种基于强化学习的控制方式在执行过程中不用进行逆运动学运算,但建立该强化学习模型的学习过程复杂度过高,训练过程对数据样本依赖严重,且数据样本收敛很慢。机械机构需要通过大量的探索才能形成足够的样本数量,以供完成强化学习的训练过程,这显然会大大降低机械机构的训练效率。而当样本数量不够充足时,机械机构动作执行的准确性也会大大降低。

如上所述,传统的机械机构控制方法依赖于完全的人工编程,而上述基于强化学习的机械机构控制方式为进行端到端的控制。机械机构的控制方法仍存在着执行和训练效率低、实时性差以及准确性差的问题,无法使得机械机构能够更智能且更高效率地执行更复杂的任务。

针对上述的技术问题,本申请的基本构思是提出一种机械机构控制方法、装置、电子设备、计算机程序产品和计算机可读存储介质,将机械机构的控制过程拆分为三层:第一层用于获取机械机构的目标状态参数,第二层用于获取使得机械机构达到该目标状态参数的控制信息,第三层用于具体的执行该控制信息;并且其中的第一层和/或第二层基于强化学习模型实现。由于基于强化学习模型来完成第一层和/或第二层的控制过程,完全避免了人工编程,可以完成更为复杂的任务,也避免了现有技术中需要进行逆运动学运算所带来的执行效率低的问题。同时,由于将机械机构的控制过程拆分为了三层,避免了端到端的学习过程,即,可有层次地分别建立第一层和/或第二层的强化学习模型,这样避免了强化学习过深的复杂度,使得训练过程对数据样本的依赖更少,且数据样本收敛更快,可显著提高机械机构的训练效率和动作执行的准确性。

需要说明的是,本申请所提供的机械机构控制方法可以应用于任何场景下的任何机械机构。具体而言,机械机构的设计目的是要完成具体的工作任务,完成工作任务的方式为通过驱动机械机构中的部分或全部组件以完成具体的机械动作。本发明对机械机构的内部组件结构,所要完成的具体工作任务,以及完成工作任务的驱动方式均不作限定。例如,本申请的实施例可以应用于控制围棋对弈机器人的下棋动作,也可以应用于控制乒乓球对打训练机器人的挥拍动作,还可以应用于工业生产线机器人的零件运输或加工动作。

在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。

示例性机械机构控制方法

图1所示为本发明一实施例所提供的一种机械机构的控制方法的流程示意图。如图1所示,该机械机构控制方法包括如下步骤:

步骤101:基于第一强化学习模型获取机械机构的目标状态参数。

机械机构为通过机械自动化技术设计,并通过材料加工和装配技术制造出的,通过驱动内部的机械零部件来完成具体工作任务的设备或装置。例如,已经广泛应用于工业生产线上用于完成零件运输或加工的机械手,用于兵乓球训练场景下的乒乓球对打训练机器人,以及用于完成围棋对弈的机器人等。而目标状态参数则为量化衡量机械机构所要完成的工作任务的具体参数。例如,对于工业生产线上的机械手,所对应的目标状态参数即为待加工零件的运输位置坐标或加工后的形状参数;对于乒乓球对打训练机器人,所对应的目标状态参数即为用于抓住球拍的末端执行器在三维空间中的坐标和角度姿态数据;而对于用于完成围棋对弈的机器人,所对应的目标状态参数即为当前对弈轮次在棋盘上下棋的位置坐标。然而应当理解,如前所述,本发明对机械机构的具体种类、内部结构、以及与工作任务对应的目标状态参数均不作具体限定。

强化学习过程是一种在训练初始不需要提供数据样本的机器学习方式,其核心理念在于使得被训练的强化学习模型以“试错”的方式进行学习,通过与环境进行交互获得的收益,并利用收益来指导动作行为。强化学习的目标是使被训练的强化学习模型可以获得最大的收益。在本发明的实施例中,需要通过训练过程预先建立第一强化学习模型,该第一强化学习模型被训练为包括机械机构的互动对象的状态量与目标状态参数之间的对应关系

步骤102:基于第二强化学习模型,根据目标状态参数获取机械机构的驱动组件的控制信息。

具体而言,需要通过训练过程预先建立第二强化学习模型,该第二强化学习模型被训练为包括目标状态参数与机械机构的驱动组件的控制信息之间的对应关系。机械机构的驱动组件为驱动机械机构完成机械动作的零部件,驱动组件的控制信息则为驱动组件能够完成该机械动作的动作量化数据。例如,对于工业生产线上的机械手,一般包括至少一个关节,这样该机械手的驱动组件就可包括该至少一个关节,控制信息则包括该至少一个关节各自的转动角度数据;而对于其他类型的机械机构,驱动组件以及控制信息的具体实施形式都可根据机械机构本身所应用的场景以及所要完成的工作任务而调整,在此不再赘述。然而应当理解,本发明对驱动组件以及控制信息的具体实施形式均不作限定。

由于预先建立的第二强化学习模型包括目标状态参数与机械机构的驱动组件的控制信息之间的对应关系,这样将第一强化学习模型所输出的目标状态参数输入第二强化学习模型后,便可直接获得第二强化学习模型输出的机械机构的驱动组件的控制信息。

步骤103:根据控制信息控制驱动组件执行对应的机械动作,以使得机械机构达到目标状态参数所对应的目标状态。

具体而言,在获取了驱动组件的控制信息后,根据控制信息控制驱动组件进行机械动作即可使得机械机构达到目标状态参数所对应的目标状态。应当理解,驱动组件根据控制信息执行机械动作的具体方式也可根据机械机构本身所应用的场景以及所要完成的工作任务而调整。本发明对驱动组件根据控制信息执行机械动作的具体形式不做限定。

例如,在本发明一实施例中,机械机构的驱动组件包括至少一个关节、旋转编码器和与旋转编码器电连接的至少一个电机,其中该至少一个电机分别用于控制该至少一个关节。此时,控制信息则包括各个关节的旋转角度信息,将各个关节旋转至控制信息所对应的旋转角度则可使得机械机构达到目标状态参数所对应的目标状态。在本发明另一实施例中,机械机构的驱动组件包括至少一个关节,以及采用开环输出的至少一个步进电机,其中至少一个步进电机分别用于控制至少一个关节。此时,控制信息则可包括驱动该步进电机的脉冲宽度调制(pwm)信号,通过根据该pwm信号控制该步进电机即可使得各个关节旋转至特定的旋转角度,从而使得机械机构达到目标状态参数所对应的目标状态。然而应当理解,本发明对驱动组件以及控制信息的具体实施形式均不作限定。

应当理解,虽然在图1所示的实施例中,目标状态参数的获取过程基于第一强化学习模型实现,且控制信息的获取过程通过将目标状态参数输入至第二强化学习模型实现;而在本发明的其他实施例中,也可以仅目标状态参数的获取过程或仅控制信息的获取过程基于强化学习模型实现。例如当机械机构本身的结构比较简单(例如仅具备一个关节),并没有具备很多的动作自由度组合(例如仅具备上或下两个动作自由度),或机械机构本身已具备逆运动学运算功能时,设计人员也可设置为仅目标状态参数的获取过程基于强化学习模型实现,而控制信息的获取过程仍采用传统的逆运动学运算方式实现。此外,例如机械机构所要完成的工作任务比较简单(例如工作任务为将待加工件移动到特定位置),使得目标状态参数所对应的决策策略比较简单时,设计人员也可设置为仅控制信息的获取过程基于强化学习模型实现,而目标状态参数的获取过程仍采用传统的逆运算方式或人工输入的方式实现。本发明对此不作限定。

由此可见,通过采用本发明实施例提供的一种机械机构控制方法,实际上是将机械机构的控制过程拆分为了三层:第一层用于获取机械机构的目标状态参数,第二层用于获取使得机械机构达到该目标状态参数的控制信息,第三层用于具体的执行该控制信息;并且其中的第一层和/或第二层基于强化学习模型实现。与现有技术相比,由于基于强化学习模型来完成第一层和/或第二层的控制过程,完全避免了人工编程,可以完成更为复杂的任务,也避免了现有技术中需要进行逆运动学运算所带来的执行效率低的问题。同时,由于将机械机构的控制过程拆分为了三层,避免了端到端的学习过程,即,可有层次地分别建立第一层和/或第二层的强化学习模型,这样避免了强化学习过深的复杂度,使得训练过程对数据样本的依赖更少,且数据样本收敛更快,可显著提高机械机构的训练效率和动作执行的准确性。

如图2所示,基于第一强化学习模型的目标状态参数获取过程可包括如下步骤:

步骤1011:获取机械机构的互动对象的状态量。

机械机构的互动对象是促使机械机构完机械动作的以完成互动过程的对象,可根据机械机构本身所应用的场景以及所要完成的工作任务而调整。互动对象的状态量为量化衡量该互动对象当前状态的数据变量,是机械机构确定目标状态参数所参考的数据,同样可根据机械机构本身所应用的场景以及所要完成的工作任务而调整。例如,对于工业生产线上的机械手,所对应的互动对象即为待加工的零件,互动对象的状态量则为待加工零件的当前位置坐标或加工之前的形状参数;对于乒乓球对打训练机器人,所对应的互动对象即为对方打过来的乒乓球,状态量则为乒乓球的在三维空间中的当前位置;而对于用于完成围棋对弈的机器人,所对应的互动对象则为对弈的对方,状态量则为对方在当前对弈轮次下棋的位置坐标。然而应当理解,本发明对机械机构的互动对象及其状态量的具体实施形式均不作限定。

应当理解,互动对象的状态量的获取方式也可根据具体的应用场景而调整。例如对于乒乓球的在三维空间中的当前位置,所获取的状态量可以是是乒乓球在三维空间中的坐标,也可以是包括乒乓球的视频图像,只要所采集的状态量能够表征互动对象的当前状态即可,设计人员可以根据实际应用场景的需要调整状态量的实施方式,本发明对该状态量的具体获取方式不做限定。

步骤1012:将状态量输入第一强化学习模型。

步骤1013:获取第一强化学习模型输出的目标状态参数。

如前所述,预先建立的第一强化学习模型包括机械机构的互动对象的状态量与目标状态参数之间的对应关系。这样将该状态量输入第一强化学习模型后,便可直接获得第一强化学习模型输出的目标状态参数。

图3所示为本发明一实施例所提供的机械机构的控制方法中第一强化学习模型的训练过程的流程示意图。如图3所示,该第一强化学习模型的训练过程可包括如下步骤:

步骤301:根据第一奖励函数的第一反馈变量的当前取值调整第一强化学习模型输出的第一训练状态参数。

如前所述,强化学习过程是一种在训练初始不需要提供数据样本的机器学习方式,其核心理念在于使得被训练的强化学习模型以“试错”的方式进行学习,通过与环境进行交互获得的收益,并利用收益来指导动作行为。这里的第一奖励函数的第一反馈变量的当前取值则对应与环境进行交互获得的收益。具体而言,该反馈变量的当前取值对应第一强化学习模型在上一训练轮次后所获得的收益,同时,该反馈变量的当前取值作为当前训练轮次所参考的数据被输入,用于指导第一强化学习模型在当前训练轮次的输出。这种依据第一反馈变量的当前取值进行指导的过程就是根据第一反馈变量的当前取值调整输出的第一训练状态参数的过程。

以机械机构为用于完成围棋对弈的机器人,且针对一个围棋对弈轮次进行训练为例,对弈的对方在该对弈轮次所下棋的位置在所有训练轮次中都是不变的,预设训练目标为尽快获得对弈胜利。此时,机器人针对对方下棋位置的反馈下棋位置可能有很多种,第一奖励函数的第一反馈变量的取值则可表征一个反馈下棋位置距离取得对弈胜利的最少步数,而每个训练轮次中的反馈下棋位置则可对应第一训练状态参数。机器人需要根据上一训练轮次所确定的距离取得对弈胜利的最少步数的多少来调整当前训练轮次的反馈下棋位置。

步骤302:根据所输出的第一训练状态参数确定满足预设训练目标的程度量化值。

预设训练目标需要在第一强化学习模型在训练过程开始之前确定,预设训练目标的具体内容可根据该第一强化学习模型所应用的机械机构的应用场景而调整。例如前所述,当机械机构为用于完成围棋对弈的机器人时,预设训练目标则可为尽快获得对弈胜利;而当机械机构为工业生产线上的机械手时,预设训练目标也可为将待加工零件移动到特定位置。本发明对该预设训练目标的具体内容形式并不做限定。

满足预设训练目标的程度量化值为衡量当前输出的第一训练状态参数满足该预设训练目标的程度的量化参数,也可根据该第一强化学习模型所应用的机械机构的应用场景而调整。例如前所述,当机械机构为用于完成围棋对弈的机器人时,满足预设训练目标的程度量化值则可为当前输出的反馈下棋位置距离取得对弈胜利的最少步数。本发明对该程度量化值的具体内容形式并不做限定。

步骤303:根据满足预设目标任务的程度量化值更新第一反馈变量的取值。第一训练状态参数越能够满足预设目标任务,第一反馈变量的取值所代表的收益越好。满足预设目标任务的程度量化值与第一反馈变量的取值之间可存在一定的换算对应关系。在本发明一实施例中,也可以是满足预设目标任务的程度量化值直接作为第一反馈变量的取值。

仍以机械机构为用于完成围棋对弈的机器人为例,当满足预设目标任务的程度量化值对应当前输出的反馈下棋位置距离取得对弈胜利的最少步数时,第一反馈变量的取值可直接对应该最少步数,此时该第一反馈变量的取值的数值越小,所代表的收益越好。在本发明一实施例中,也可以是当满足预设目标任务的程度量化值处于不同的数值空间时,对应不同的第一反馈变量的取值,例如当前输出的反馈下棋位置距离取得对弈胜利的最少步数在40步~50步时,第一反馈变量的取值对应1;而当前输出的反馈下棋位置距离取得对弈胜利的最少步数在30步~40步时,第一反馈变量的取值对应2,此时第一反馈变量的数值越大,所代表的收益越好。应当理解,设计人员可根据实际应用场景的需求调整满足预设目标任务的程度量化值与第一反馈变量的取值之间的换算对应关系,本发明对此不作限定。

步骤304:统计第一反馈变量所有取值所代表的第一总收益。

第一反馈变量所有取值所代表的第一总收益用于量化衡量所有已完成的训练轮次的训练结果。第一总收益的具体数学统计方式也可由设计人员根据实际应用场景的需求而调整。例如,第一总收益可为将第一反馈变量的所有取值求和,也可为第一反馈变量的所有取值中的最大或最小值。本发明对该第一总收益的数学统计方式同样不做限定。

步骤305:当第一总收益符合第一预设条件时,停止训练第一强化学习模型。

第一预设条件为停止第一强化学习模型训练过程的判断条件,若当前的第一总收益无法满足该第一预设条件时,则返回至步骤301开启下一个训练轮次,直至统计出的第一总收益能够满足第一预设条件为止。

应当理解,该第一预设条件的具体内容同样可由设计人员根据实际应用场景的需求而调整。例如,当数据样本本身收敛性比较好时,这意味着经过足够的训练轮次后应当就能够达到比较好的训练效果,此时可以选择第一总收益统计为将第一反馈变量的所有取值求和,而第一预设条件可为当第一总收益的数值大于预设值时,则可以停止训练过程。在本发明另一实施例中,也可以是以训练结果为导向,例如,当第一反馈变量的取值直接对应距离取得对弈胜利的最少步数,此时可选择第一总收益统计为第一反馈变量的所有取值中的最小值,第一预设条件可为当第一总收益的数值小于预设值时,则可以停止训练过程。然而本发明对确定停止第一强化学习模型的训练过程的第一预设条件的具体内容不做具体限定。

图4所示为本发明一实施例所提供的机械机构控制方法中第二强化学习模型的训练过程的流程示意图。如图4所示,该第二强化学习模型的训练过程可包括如下步骤:

步骤401:根据第二奖励函数的第二反馈变量的当前取值调整第二强化学习模型输出的第一训练控制信息。

第二强化学习模型的训练目的在于基于输入的目标状态参数获取机械机构的驱动组件的控制信息。这里的第二奖励函数的第二反馈变量的当前取值则对应第二强化学习模型在上一训练轮次后所获得的收益,同时,该反馈变量的当前取值作为当前训练轮次所参考的数据被输入,用于指导第二强化学习模型在当前训练轮次的输出。这种依据第二反馈变量的当前取值进行指导的过程就是根据第二反馈变量的当前取值调整输出的第一训练控制信息的过程。

机器人在基于第二强化学习模型获取控制信息时,已获取了目标状态参数。在第二层要基于第二强化学习模型得知如何控制机械机构以达到该目标状态参数。以机械机构为用于完成围棋对弈的机器人为例,机器人在基于第二强化学习模型获取控制信息时,已获取了代表反馈下棋位置的目标状态参数,即,此时机器人已经通过第一层的第一强化学习模型得知了要将棋下在哪里,在第二层要基于第二强化学习模型得知如何控制机械机构将棋下在目标状态参数所对应的目标位置。

在第二强化学习模型的训练过程中,训练目标设定为第二训练状态参数,需要注意区分的是,上述的第一训练状态参数为对第一强化学习模型进行训练过程中每个训练轮次中第一强化学习模型的输出结果,而第二训练状态参数为第二强化学习模型的训练目标。以机械机构为用于完成围棋对弈的机器人为例,第二训练状态参数其实对应的是棋盘上的当前训练位置坐标。围棋棋盘上可下棋的位置坐标是有限的,由于在对弈过程中机器人可能会需要将棋下到棋盘上的任何一个位置,因此棋盘上的每个位置坐标都是要经过训练的,即,棋盘上的每个可下棋的位置坐标都将会是第二训练状态参数的取值。

如前所述,强化学习模型以“试错”的方式进行学习,因此针对代表当前训练位置坐标的第二训练状态参数,机器人可能进行的控制方式有很多种,因而根据这些控制方式所达到的实际状态参数也就有很多种可能。第二奖励函数的第二反馈变量的当前取值则反映的是上一训练伦次的第一训练控制信息所达到的实际状态参数与第二训练状态参数之间的差异。机器人需要根据上一训练轮次所确定的第二反馈变量的当前取值来调整当前训练轮次的第一训练控制信息。

步骤402:在根据所输出的第一训练控制信息控制驱动组件执行对应的机械动作后,确定机械机构所达到的实际状态参数与第二训练状态参数之间的差异。

在围棋对弈机器人场景下,由于第二训练状态参数对应的是棋盘上的当前训练位置坐标,因此在本发明一实施例中,实际状态参数与第二训练状态参数之间的差异可以为机械机构所达到的实际坐标与第二训练状态参数所对应的目标坐标之间的距离。在一进一步实施例中,考虑到当距离为零时视为完美的到达了当前训练位置坐标,因此实际状态参数与第二训练状态参数之间的差异可用距离的负取值来表征。

步骤403:根据该差异更新第二反馈变量的取值。

第一训练控制信息越能够使得机械机构接近目标状态,实际状态参数与第二训练状态参数之间的差异越小,第二反馈变量的取值所代表的收益越好。实际状态参数与第二训练状态参数之间的差异与第二反馈变量的取值之间可存在一定的换算对应关系。在本发明一实施例中,该差异的数值可直接作为第二反馈变量的取值。

步骤404:统计第二反馈变量所有取值所代表的第二总收益。

第二反馈变量所有取值所代表的第二总收益用于量化衡量所有已完成的训练轮次的训练结果。第二总收益的具体数学统计方式也可由设计人员根据实际应用场景的需求而调整。本发明对该第二总收益的数学统计方式同样不做限定。例如,当第二反馈变量的取值采用图5所示的二值化取值方式时,第二总收益可采用统计预设训练轮次后的成功率的方式表征;而当第二反馈变量的取值采用前述连续变量值的表征方式时,第二总收益的统计方式可以为取第二反馈变量的所有取值中的最大值。本发明对该第二总收益的数学统计方式同样不做限定。

步骤405:当第二总收益符合第二预设条件时,停止训练第二强化学习模型。

第二预设条件为停止第二强化学习模型训练过程的判断条件,若当前的第二总收益无法满足该第一预设条件时,则返回至步骤401开启下一个训练轮次,直至统计出的第二总收益能够满足第二预设条件为止。例如,当第二反馈变量的取值采用图5所示的二值化取值方式,第二总收益采用统计预设训练轮次后的成功率的方式表征时,第二预设条件可为当成功率达到95%以上时视为可以停止训练;而当第二反馈变量的取值采用前述连续变量值的表征方式,第二总收益的统计方式为取第二反馈变量的所有取值中的最大值时,第二预设条件可为第二反馈变量的取值达到-0.05以内时可以停止训练。然而本发明对确定停止第二强化学习模型的训练过程的第二预设条件的具体内容不做具体限定。

在本发明一实施例中,如图5所示,前述第二反馈变量的取值的更新过程可具体包括如下步骤:

步骤501:当确定实际状态参数与第二训练状态参数之间的差异在第一预设阈值范围内时,将第二反馈变量更新为第一预设值。

以围棋对弈机器人场景为例,若机器人根据第二反馈变量的当前取值调整了第一训练控制信息后,根据所输出的第一训练控制信息控制驱动组件执行对应的机械动作后,确定机器人所达到的实际坐标与第二训练状态参数所对应的目标坐标之间的距离在0cm~1.25cm之内时(单个围棋棋盘的棋格尺寸在2.5cm左右),则视为正确摆放了棋子的位置,此时可将第二反馈变量的取值更新为1。

步骤502:当确定该差异超出第一预设阈值范围内时,第二反馈变量更新为第二预设值。其中,第一预设值所代表的收益大于第二预设值所代表的收益。

仍沿用前述围棋对弈机器人场景的例子,而当确定实际坐标与目标坐标之间的距离在1.25cm之上时,则视为错误的摆放了棋子的位置,此时可将第二反馈变量的取值更新为0。而第二反馈变量取值为1时所代表的收益要大于取值为0时的收益。

在本发明另一实施例中,不同于图5所示实施例的二值化取值方式,第二反馈变量的取值可为表征实际状态参数与第二训练状态参数之间的差异的大小的连续变量值。在本发明一实施例中,实际状态参数与第二训练状态参数之间的差异可以为机械机构所达到的实际坐标与第二训练状态参数所对应的目标坐标之间的距离,且该距离的数值直接作为第二反馈变量的取值。以前述围棋对弈机器人场景为例,当确定实际坐标与目标坐标之间的差异在-0.75cm时,则将第二反馈变量的取值更新为-0.75;而当确定实际坐标与目标坐标之间的差异在-2.75cm时,则将第二反馈变量的取值更新为-2.75。

应当理解,虽然上面的实施例描述中给出了一些实际状态参数与第二训练状态参数之间的差异与第二反馈变量的取值之间的换算对应方式,但本发明对此并不做具体限定。

图6所示为本发明另一实施例所提供的机械机构控制方法中第二强化学习模型的训练过程的流程示意图。如图6所示,该第二强化学习模型的训练过程可包括如下步骤:

步骤601:从经验池中选择预设数量的经验样本输入神经网络进行学习,输出为了达到当前训练目标状态参数的第二训练控制信息。

具体而言,经验池中存储有经验样本,这些经验样本并非在第二强化学习模型的训练开始之前输入经验池的,而是在过往的训练轮次中形成的。在当前的训练轮次,从经验池中选择一定数量的经验样本输入神经网络进行深度学习,神经网络则输出为了达到当前训练目标状态参数的第二训练控制信息。

在本发明一实施例中,为了提高训练效率,可以是从经验池中随机选择一部分经验样本输入神经网络进行学习。然而应当理解,从经验池中选择经验样本的方式也可通过其他方式实现,本发明对此不作限定。

步骤602:根据所输出的第二训练控制信息控制驱动组件执行对应的机械动作,以使机械机构达到实际状态参数。

步骤603:将实际状态参数与所输出的第二训练控制信息之间的对应关系作为一个经验样本存入经验池。

步骤604:获取下一个训练目标状态参数。之后返回步骤601重新开始下一个训练轮次的训练过程。在本发明一实施例中,当第二强化学习模型的训练目标为达到第三训练状态参数时,可以是当经验池中包括了与该目标状态足够接近的经验样本时停止训练,也可以是经过足够数量的训练轮次后停止训练,本发明对该第二强化学习模型的训练停止时机不做具体限定。

在本发明一实施例中,下一个训练目标状态参数可以是不同于当前训练目标状态参数的随机的一个训练目标状态参数。在本发明另一实施例中,下一个训练目标状态参数相比于当前训练目标状态参数更加接近与第三训练状态参数,这样可使得整个训练过程所获取的经验样本更快的收敛在与第三训练状态相对应的目标状态附近,有助于提高整个训练过程的效率。

在本发明一实施例中,考虑到在第二强化学习的训练刚开始时,经验池中并未包括经验样本,可以根据随机输出的第二训练控制信息控制驱动组件执行对应的机械动作,以使机械机构达到实际状态参数,并将实际状态参数与所输出的第二训练控制信息之间的对应关系作为一个经验样本存入经验池。

由此可见,与图4所示的实施例不同,在图6所示的实施例中并不会将所达到的实际状态参数与一个训练状态参数进行对比,而是默认为每个训练轮次所输出的第二训练控制信息都是“成功”的,并以此来扩充经验池中的经验样本。随着训练轮次的增多,经验池中的经验样本数量也越来越多,第二强化学习模型可逐渐学习到使得机械机构到达各种不同实际状态参数的第二训练控制信息,而其中可能就已经包括实际要达到的第三训练状态参数了。因此,图6所提供的训练方式相比于图4的训练方式提高了训练过程中样本的利用率,有助于更高效地完成第二强化学习模型的训练过程。

在本发明一实施例中,当第二强化学习模型基于如图6所示的实施例所提供的训练方式建立时,如图7所示,根据目标状态参数获取机械机构的驱动组件的控制信息可具体包括如下步骤:

步骤701:确定在第二强化学习模型的经验池中是否存在与目标状态参数相对应的经验样本,其中该相对应的经验样本中的实际状态参数与目标状态参数之间的差异在第二预设阈值范围内。

由于第二强化学习模型是基于图6所示的实施例所提供的训练方式建立,因此第二强化学习模型的经验池中可能已存在了足够接近目标状态参数的经验样本,此时可先在经验池中搜索以确定在第二强化学习模型的经验池中是否存在与目标状态参数相对应的经验样本。

步骤702:当判断结果为是时,获取与目标状态参数相对应的经验样本中的控制信息。

当判断结果为是时,则说明经验池中已经存在足够接近目标状态参数的经验样本,此时将该经验样本取出并读取其中的控制信息即可。而当判断结果为否时,再将第一强化学习模型所输出的目标状态参数输入第二强化学习模型,便可获得第二强化学习模型输出的机械机构的驱动组件的控制信息。

由此可见,通过采用图7的实施例所提供的控制信息获取方式,可有助于提高控制信息的获取效率。而当第二强化学习模型的经验池中并不存在与目标状态参数对应的经验样本时,再将目标状态参数输入第二强化学习模型即可,仍然能够通过第二强化学习模型或获得输出的控制信息。

图8所示为本发明一实施例所提供的机械机构的结构示意图。如图8所示,该机械机构为一种机械臂机构80,该机械臂机构80用于在乒乓球训练场景下进行乒乓球对打训练。具体而言,该机械臂机构80包括机械臂本体和与机械臂本体末端连接的末端执行器82。机械臂本体包括底座811、第一关节812、第一传动臂813、第二关节814、第二传动臂815以及第三关节816。第一传动臂813的一端通过第一关节812可转动地固定在底座811上,第一传动臂813的另一端通过第二关节814可转动地与第二传动臂815的一端连接,第二传动臂815的另一端通过第三关节816可转动第与末端执行器82连接。第一关节812、第二关节814和第三关节816各自包括两个伺服电机以实现在相互垂直的两个自由度上的转动。末端执行器82包括抓取器,用于抓住乒乓球球拍以通过该乒乓球球拍击打对方打过来的乒乓球。

由于乒乓球的击打并不是简单的击中乒乓球即可,为了取得胜利,乒乓球需要被达到球台上的特别位置。因此在要击打空中的乒乓球时,末端执行器82不仅应当处于三维空间中的特定空间坐标,还需要通过驱动组件驱动第一关节812、第二关节814以及第三关节816使得末端执行器82处于特定的空间角度姿态,以使得抓取器所抓住的乒乓球球拍能够以适当的空间角度姿态击打乒乓球。由此可见,在如图8所示的机械机构中,目标状态参数需要包括末端执行器82的空间坐标信息和姿态信息。

当采用本发明实施例所提供的机械机构控制方法控制该机械臂机构80时,首先可采集对方打过来的乒乓球在空中的位置坐标作为输入第一强化学习模型的互动对象的状态量,然后获取到第一强化学习模型输出的目标状态参数。即,此时该机械臂机构80已经知道了该使得末端执行器82处于怎样的空间坐标和空间角度姿态以击打该乒乓球了,当还不知道如何驱动第一关节812、第二关节814以及第三关节816以达到该目标状态参数。此时将该目标状态参数输入第二强化学习模型便可以获取到对应的控制信息。最后,该机械臂机构80的驱动组件根据控制信息执行对应的机械动作,以使得末端执行器82达到目标状态参数所对应的目标状态,从而完成对乒乓球的击打过程。

应当理解,虽然在图8所示的实施例中给出了机械机构的具体实现形式以及对应的目标状态参数的具体内容。但如前所述,本发明对机械机构的具体种类、内部结构、以及与工作任务对应的目标状态参数均不作具体限定。

示例性机械机构控制装置

图9所示为本发明一实施例提供的一种机械机构控制装置的结构示意图。如图9所示,该机械机构控制装置90包括:第一获取模块901,配置为获取机械机构的目标状态参数;第二获取模块902,配置为根据目标状态参数获取机械机构的驱动组件的控制信息;以及执行模块903,配置为根据控制信息控制驱动组件执行对应的机械动作,以使得机械机构达到目标状态参数所对应的目标状态;其中,目标状态参数的获取过程基于第一强化学习模型实现,和/或控制信息的获取过程通过将目标状态参数输入至第二强化学习模型实现。

在本发明一实施例中,第一获取模块901包括为:第一获取单元,配置为获取机械机构的互动对象的状态量;输入单元,配置为将状态量输入第一强化学习模型;以及第二获取单元,配置为获取第一强化学习模型输出的目标状态参数。

在本发明一实施例中,如图10所示,该机械机构控制装置90进一步包括第一强化学习模型训练模块904,包括:第一调整单元,配置为根据第一奖励函数的第一反馈变量的当前取值调整第一强化学习模型输出的第一训练状态参数;第一确定单元,配置为根据所输出的第一训练状态参数确定满足预设训练目标的程度量化值;第一更新单元,配置为根据满足预设目标任务的程度量化值更新第一反馈变量的取值;第一停机单元,配置为统计第一反馈变量所有取值所代表的第一总收益;以及第一停止执行当,配置为当第一总收益符合第一预设条件时,停止训练第一强化学习模型。

在本发明一实施例中,如图10所示,该机械机构控制装置90进一步包括第二强化学习模型训练模块905,包括:第二调整单元,配置为根据第二奖励函数的第二反馈变量的当前取值调整第二强化学习模型输出的第一训练控制信息;第二确定单元,配置为在根据所输出的第一训练控制信息控制驱动组件执行对应的机械动作后,确定机械机构所达到的实际状态参数与第二训练状态参数之间的差异;第二更新单元,配置为根据差异更新第二反馈变量的取值;第二统计单元,配置为统计第二反馈变量所有取值所代表的第二总收益;以及第二停止执行单元,配置为当第二总收益符合第二预设条件时,停止训练第二强化学习模型。

在本发明一实施例中,第二更新单元进一步配置为:当确定差异在第一预设阈值范围内时,将第二反馈变量更新为第一预设值;以及当确定差异超出第一预设阈值范围内时,第二反馈变量更新为第二预设值;其中,第一预设值所代表的收益大于第二预设值所代表的收益。

在本发明一实施例中,第二更新单元进一步配置为:将表征差异的大小的连续变量值作为第二反馈变量的取值,其中第二确定单元进一步配置为:确定机械机构所达到的实际坐标与第二训练状态参数所对应的目标坐标之间的距离。

在本发明一实施例中,第二强化学习模型训练模块905配置为:样本输入单元,配置为从经验池中选择预设数量的经验样本输入神经网络进行学习,神经网络输出为了达到当前训练目标状态参数的第二训练控制信息;驱动单元,配置为根据所输出的第二训练控制信息控制驱动组件执行对应的机械动作,以使机械机构达到实际状态参数;存储执行单元,配置为将实际状态参数与所输出的第二训练控制信息之间的对应关系作为一个经验样本存入经验池;以及第三获取单元,配置为获取下一个训练目标状态参数。

在本发明一实施例中,驱动单元进一步配置为,当经验池中并未包括经验样本时,根据随机输出的第二训练控制信息控制驱动组件执行对应的机械动作,以使机械机构达到实际状态参数。

在本发明一实施例中,第二获取模块902进一步配置为:第三确定单元,配置为确定在第二强化学习模型的经验池中是否存在与目标状态参数相对应的经验样本,其中该相对应的经验样本中的实际状态参数与目标状态参数之间的差异在第二预设阈值范围内;以及第四获取单元,配置为当判断结果为是时,获取与目标状态参数相对应的经验样本中的控制信息。

在本发明一实施例中,机械机构包括机械臂机构,机械臂机构包括末端执行器;其中,目标状态参数包括末端执行器的以下信息中的一种或多种组合:空间坐标信息和姿态信息。

在本发明一实施例中,驱动组件包括至少一个关节,其中控制信息包括至少一个关节各自的旋转角度信息。

在本发明一实施例中,驱动组件进一步包括旋转编码器和与旋转编码器电连接的至少一个电机,其中至少一个电机分别用于控制至少一个关节;或,驱动组件进一步包括:采用开环输出的至少一个步进电机,其中至少一个步进电机分别用于控制至少一个关节。

上述机械机构控制装置90中的各个模块的具体功能和操作已经在上面参考图1到图8描述的机械机构控制方法中进行了详细介绍,因此,这里将省略其重复描述。

需要说明的是,根据本申请实施例的机械机构控制装置90可以作为一个软件模块和/或硬件模块而集成到电子设备110中,换言之,该电子设备110可以包括该机械机构控制装置90。例如,该机械机构控制装置90可以是该电子设备110的操作系统中的一个软件模块,或者可以是针对于其所开发的一个应用程序;当然,该机械机构控制装置90同样可以是该电子设备110的众多硬件模块之一。

在本发明另一实施例中,该机械机构控制装置90与该电子设备110也可以是分立的设备(例如,服务器),并且该机械机构控制装置90可以通过有线和/或无线网络连接到该电子设备110,并且按照约定的数据格式来传输交互信息。

示例性电子设备

图11所示为本申请一实施例提供的电子设备的结构示意图。如图11所示,该电子设备110包括:一个或多个处理器1101和存储器1102;以及存储在存储器1102中的计算机程序指令,计算机程序指令在被处理器1101运行时使得处理器1101执行如上述任一实施例的机械机构控制方法。

处理器1101可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。

存储器1102可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器1101可以运行所述程序指令,以实现上文所述的本申请的各个实施例的机械机构控制方法中的步骤以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如光线强度、补偿光强度、滤光片的位置等信息。

在一个示例中,电子设备110还可以包括:输入装置1103和输出装置1104,这些组件通过总线系统和/或其他形式的连接机构(图11中未示出)互连。

例如,在该电子设备是如工业生产线上的机器人时,该输入装置1103可以是摄像头,用于捕捉待加工零件的位置。在该电子设备是单机设备时,该输入装置1103可以是通信网络连接器,用于从外部的可移动设备接收所采集的输入信号。此外,该输入设备1103还可以包括例如键盘、鼠标、麦克风等等。

该输出装置1104可以向外部输出各种信息,例如可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。

当然,为了简化,图11中仅示出了该电子设备110中与本申请有关的组件中的一些,省略了诸如总线、输入装置/输出接口等组件。除此之外,根据具体应用情况,电子设备110还可以包括任何其他适当的组件。

示例性计算机程序产品和计算机可读存储介质

除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,包括计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行如上述任一实施例的机械机构控制方法中的步骤。

计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。

此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性机械机构控制方法”部分中描述的根据本申请各种实施例的机械机构控制方法中的步骤。

所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器((ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。

本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。

提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。

为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。

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