掌桥专利:专业的专利平台
掌桥专利
首页

一种用于机械臂目标寻找的训练方法、方法及训练系统

文献发布时间:2024-04-18 19:58:26


一种用于机械臂目标寻找的训练方法、方法及训练系统

技术领域

本发明涉及机械臂设计技术领域,具体涉及一种用于机械臂目标寻找的训练方法、方法及训练系统。

背景技术

机械臂是一种在工业领域被普遍使用的操作设备,承担着搬运、装配等任务;在实现工业自动化生产方面具有重要意义。

对于机械臂而言,其工作过程依次分为两个阶段,第一阶段为基于路径规划的目标寻找,第二阶段为基于确定目标后的目标抓取。由此可见,目标寻找是最终是否可顺利实现目标抓取的前提。现有技术中,由于在大多数工业场景下,由于机械臂执行的任务较为简单,比如进行单一种类固定目标的抓取;同时在进行目标抓取的场景下也仅有1~2个少数的机械臂执行任务。因此在传统的机械臂目标寻找中,多采用RRT算法(即快速扩展随机数算法)进行机械臂的路径规划。

受RRT算法的固定路径规划限制,训练完成的机械臂仅能在设定好的轨迹中移动,并执行与训练场景一致的重复任务。但随着自动化工业进程的发展,同一场景下的机械臂数目逐渐增加,机械臂执行的任务也逐渐复杂化;即机械臂的应用场景逐渐具有更多的未知化因素。因此需要机械臂在路径规划中具有更强的探索能力,以使机械臂总能在包含未知因素的新任务中顺利实现目标寻找。

发明内容

本发明目的在于提供一种用于机械臂目标寻找的训练方法、方法及训练系统以改善现有的机械臂目标寻找方法存在的泛化能力低的技术问题。

为达成上述目的,本发明提出如下技术方案:

第一方面,本技术方案提供了一种用于机械臂目标寻找的训练方法,包括:

获取当前时刻机械臂与预设目标间的相对位置;

输入所述相对位置至随机策略网络以获取所述机械臂当前时刻可执行的若干组各关节的转动量及转动速度,并基于价值网络对它们分别进行评价以筛选出最优的各关节的转动量及转动速度;

基于所述当前时刻最优的各关节的转动量及转动速度的执行获取所述当前时刻的奖励值;其中,所述奖励值通过奖励函数获取,所述奖励函数包括第一奖励项及第二奖励项,所述第一奖励项包括距离惩罚项及时间惩罚项,所述第二奖励项包括动作惩罚项;

重复上述过程以构建若干训练样本并存储于经验池内直至达到所述经验池的最大存储容量;

基于所述经验池内的训练样本,并以所述奖励值最大,以及每一时刻相应的最优的各关节的转动量及转动速度的熵最大为约束对所述随机策略网络及所述价值网络进行迭代更新直至到达预设的迭代阈值;进而获得最优的随机策略网络及价值网络。

进一步的,所述距离惩罚项包括所述机械臂的末端至所述预设目标间的欧式距离;所述时间惩罚项包括所述机械臂执行所述当前时刻最优的各关节的转动量及转动速度时的消耗时长;所述动作惩罚项包括所述机械臂执行所述当前时刻最优的各关节的转动量及转动速度后其与自身起点间的相对位置。

进一步的,所述基于所述经验池内的训练样本对所述随机策略网络及所述价值网络进行迭代更新直至到达预设的迭代阈值,包括:

计算所述经验池内每一所述训练样本的优先值;其中,所述优先值为所述训练样本被抽中的概率;

基于sum-tree数据处理方法自所述经验池内抽样以进行所述随机策略网络及所述价值网络的迭代更新。

进一步的,包括:

基于

其中,E表示期望;f

第二方面,本技术方案提供了一种用于机械臂目标寻找的方法,包括:

基于所述最优的随机策略网络及价值网络构建机械臂最优模型;

基于所述机械臂最优模型进行目标寻找。

进一步的,包括:

获取待寻找目标的形状以确认抓取位置及抓取角度;

基于所述抓取位置及所述抓取角度对所述机械臂最优模型进行更新;

基于Coppeliasim平台对更新后的机械臂最优模型的目标寻找过程进行模拟以确认所述目标寻找不会导致所述目标发生位移或损伤。

第三方面,本技术方案提供了一种用于机械臂目标寻找的训练系统,包括:

第一获取模块,用于获取当前时刻机械臂与预设目标间的相对位置;

第二获取模块,用于输入所述相对位置至随机策略网络以获取所述机械臂当前时刻可执行的若干组各关节的转动量及转动速度,并基于价值网络对它们分别进行评价以筛选出最优的各关节的转动量及转动速度;

第三获取模块,用于基于所述当前时刻最优的各关节的转动量及转动速度的执行获取所述当前时刻的奖励值;其中,所述奖励值通过奖励函数获取,所述奖励函数包括第一奖励项及第二奖励项,所述第一奖励项包括距离惩罚项及时间惩罚项,所述第二奖励项包括动作惩罚项;

经验构建模块,用于重复上述过程以构建若干训练样本并存储于经验池内直至达到所述经验池的最大存储容量;

网络优化模块,用于基于所述经验池内的训练样本,并以所述奖励值最大,以及每一时刻相应的最优的各关节的转动量及转动速度的熵最大为约束对所述随机策略网络及所述价值网络进行迭代更新直至到达预设的迭代阈值;进而获得最优的随机策略网络及价值网络。

进一步的,所述网络优化模块包括:

计算单元,用于计算所述经验池内每一所述训练样本的优先值;其中,所述优先值为所述训练样本被抽中的概率;

抽样单元,用于基于sum-tree数据处理方法自所述经验池内抽样以进行所述随机策略网络及所述价值网络的迭代更新。

第四方面,本技术方案提供了一种电子设备,包括至少一个处理器,所述处理器与存储器耦合,所述存储器内存储有计算机程序,所述计算机程序被配置为被所述处理器运行时执行所述的方法。

第五方面,本技术方案提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序用于执行所述的方法。

有益效果:

由以上技术方案可知,本发明的技术方案提供了一种新的机械臂目标查找方法以改善现有基于传统RRT算法时存在的泛化能力低的技术缺陷。

由于传统的RRT算法仅能实现目标查找时的固定路径规划。具体的,RRT算法的逻辑为:首先,获取一个初始点作为根节点,然后进行随机采样增加叶子节点以生成一随机扩展数;最终当随机树中的叶子节点包含目标点时通过回溯即可找到初始点至目标点的路径。由此可见,RRT算法基于对目标寻找场景进行逐步采样,并进行回溯统计进行。

因此发明人首先考虑采用一种具有自主交互能力的算法以避免对固定环境(或场景)进行采样,进而避免整个目标寻找过程陷入固定路径内。因此引入了强化学习算法作为整个机械臂目标寻找的框架。具体的,将所述强化学习算法与机械臂目标场景进行了深度结合,以机械臂进行预设目标寻找构建了环境,以机械臂与预设目标间的相对位置构建了智能体的状态,以机械臂的关节运动构建了智能体的动作。其次,由于奖励函数决定了机械臂最终是否可快速准确的进行目标寻找,因此同时考虑了机械臂运行中的各因素,同时基于距离惩罚项、时间惩罚项及动作惩罚项构建了奖励函数。其中,距离惩罚项决定了机械臂是否在进行正向的目标寻找,时间惩罚项则决定了机械臂目标寻找时的效率,动作惩罚项则决定了机械臂目标寻找的自消耗。再者,为了使训练后的机械臂具有更强的探索能力以更好的适用于各类未知环境,采用了随机策略网络,此时,在策略网络和价值网络的优化中将引入每一时刻相应的最优的各关节的转动量及转动速度的熵最大作为第二约束,使每一次迭代中各可执行动作的概率分散化;从而使机械臂学习到更多的经验以满足不同场景的需求。

应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。

结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。

附图说明

附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:

图1为本实施例所述的用于机械臂目标寻找的训练方法的流程图;

图2为基于经验池进行网络更新的流程图;

图3为本实施例所述的用于机械臂目标寻找的方法的流程图;

图4为进行机械臂最优模型更新的流程图;

图5为另一种进行机械臂最优模型更新的流程图;

图6为本实施例所述的用于机械臂目标寻找的训练系统的组成框图;

图7为本实施例所述的电子设备的组成结构图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。

本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,除非上下文清楚地指明其它情况,否则单数形式的“一个”“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的特征、整体、步骤、操作、元素和/或组件,并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。“上”“下”“左”“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。

现有技术中,受RRT算法的固定路径规划限制,训练完成的机械臂仅能在设定好的轨迹中移动,并仅能执行与训练场景一致的重复任务。但随着自动化工业进程的发展,同一场景下的机械臂数目逐渐增加,机械臂执行的任务也逐渐复杂化;即机械臂的应用场景逐渐具有更多的未知化因素。因此本实施例旨在提供一种用于机械臂目标寻找的训练方法以改善现有技术中存在的上述技术缺陷。

下面结合附图所示,对本实施例中提出的一种用于机械臂目标寻找的训练方法作具体介绍。

如图1所示,所述训练方法包括:

步骤S102、获取当前时刻机械臂与预设目标间的相对位置。

本实施例中,所述机械臂可以是一个也可以是多个;在类型上,可以是基于摩擦原理的机械臂、基于真空吸附原理的机械臂等。所述预设目标可以是固定位置的目标或位置可变的目标,所述固定位置的目标可以是已知位置的目标或未知位置的目标。

步骤S104、输入所述相对位置至随机策略网络以获取所述机械臂当前时刻可执行的若干组各关节的转动量及转动速度,并基于价值网络对它们分别进行评价以筛选出最优的各关节的转动量及转动速度。

本实施例中,所述机械臂具体为七轴机械臂,即包括七个关节;进而所述每组各关节的转动量及转动速度数据中又包括与七个关节相应的七组子数据。

本实施例中引入随机策略网络的目的在于提高机械臂的探索能力,使可执行的每组各关节的转动量及转动速度的概率分散,避免机械臂总是选择一组最优值。从而使机械臂在后续训练中可学习到更多的经验。

步骤S106、基于所述当前时刻最优的各关节的转动量及转动速度的执行获取所述当前时刻的奖励值;其中,所述奖励值通过奖励函数获取,所述奖励函数包括第一奖励项及第二奖励项,所述第一奖励项包括距离惩罚项及时间惩罚项,所述第二奖励项包括动作惩罚项。

本实施例中,同时基于距离惩罚项、时间惩罚项及动作惩罚项构建了奖励函数。其中,距离惩罚项决定了机械臂是否在进行正向的目标寻找,时间惩罚项则决定了机械臂目标寻找时的效率,动作惩罚项则决定了机械臂目标寻找的自消耗。进而在智能体的训练中同时考虑了机械臂训练中的各种关键因素以提高最终训练得到的机械臂智能体进行目标寻找时的合理性。

作为一种具体的实施方式,所述距离惩罚项包括所述机械臂的末端至所述预设目标间的欧式距离。所述时间惩罚项包括所述机械臂执行所述当前时刻最优的各关节的转动量及转动速度时的消耗时长。所述动作惩罚项包括所述机械臂执行所述当前时刻最优的各关节的转动量及转动速度后其与自身起点间的相对位置。

步骤S108、重复上述过程以构建若干训练样本并存储于经验池内直至达到所述经验池的最大存储容量。

本步骤中引入了经验池以打破样本之间的关联性,一方面以提高样本的利用率,通过有限个数的样本达到较好的训练效果;另一方面也提高了网络的效率。

作为一种优选的实施方式,由于经验池的最大存储容量有限,因此为了使器内的训练样本包含更多的经验,设置其内的训练样本经对原始训练样本间隔抽取后存储。

步骤S110、基于所述经验池内的训练样本,并以所述奖励值最大,以及每一时刻相应的最优的各关节的转动量及转动速度的熵最大为约束对所述随机策略网络及所述价值网络进行迭代更新直至到达预设的迭代阈值;进而获得最优的随机策略网络及价值网络。

本实施例中,由于采用了随机策略网络,因此对应的,除了以奖励值最大作为第一约束外,还引入了每一时刻相应的最优的各关节的转动量及转动速度的熵最大作为第二约束。

在基于经验池内的训练样本进行网络更新时,作为一种具体的实施方式,如图2所示包括:

步骤S110.2、计算所述经验池内每一所述训练样本的优先值;其中,所述优先值为所述训练样本被抽中的概率。

在具体实施时,引入TD-error衡量训练样本的价值。具体的,令每个训练样本的优先值为

步骤S110.4、基于sum-tree数据处理方法自所述经验池内抽样以进行所述随机策略网络及所述价值网络的迭代更新。

具体的,以每个训练样本的优先值作为叶子节点构建二叉树,并以各训练样本的优先值的和作为树根的值。在抽样时,先基于树根的值及预设区间数进行分区,然后在各区间内进行随机选择并向下搜索即可。

作为一种具体的实施方式,基于如下方式进行随机策略网络及价值网络的更新:

随机策略网络更新的目标函数为:

其中,E表示期望;f

策略目标函数的梯度为:

参数φ的更新为:

其中,λ

价值网络共两个,一个为V值函数网络,用于评估状态的价值,表示在这个状态下一直到最终状态得到的总的奖励的期望;一个为Q值函数网络,用于评估动作的价值,表示选择这个动作一直到最终动作得到的总的奖励的期望。

其中,V值函数更新的目标函数为:

其中,V

V值函数的梯度为:

参数ψ的更新为:

Q值函数更新的目标函数为:

其中,

Q值函数的梯度为:

参数θ的更新为:

由上述可见,本实施例所述的训练方法引入了强化学习作为框架,并基于机械臂进行预设目标寻找构建了环境,以机械臂与预设目标间的相对位置构建了智能体的状态,以机械臂的关节运动构建了智能体的动作。从而实现了机械臂与环境间的交互优化。并在具体的优化中,考虑提升机械臂的探索能力,引入了随机策略网络,并以每一时刻相应的最优的各关节的转动量及转动速度的熵最大作为约束。同时考虑到机械臂目标寻找的合理性,同时引入了距离惩罚项、时间惩罚项及动作惩罚项构建了奖励函数。从而经过迭代训练得到了与机械臂智能体相应的最优的随机策略网络及价值网络。以便于进行后续的机械臂在各类已知环境及未知环境中的目标寻找能力。

基于此,本实施例还提供了一种用于机械臂目标寻找的方法,所述方法基于所述训练方法进行。

下面结合附图所示,对本实施例公开的一种用于机械臂目标寻找的方法作具体介绍。

如图3所示,所述方法包括:

步骤S202、基于所述最优化的随机策略网络及价值网络构建机械臂最优模型。

步骤S204、基于所述机械臂最优模型进行目标寻找。

此时基于步骤S202~步骤S204即可实现机械臂对未知环境中的目标寻找。

考虑到目标自身因素对机械臂目标寻找中的细微差别,如当目标为球形时,抓取位置则多为与放置面平行的过直径的球形表面;且应从未与放置面接触的一侧抓取,以避免在目标寻找中机械臂撞到目标或放置面。如目标为平面结构时,则多以靠近机械臂的平面进行吸附式抓取;且应从靠近机械臂一侧进行抓取,以避免从侧面接近目标时发生撞击。因此作为一种具体的实施方式,如图4,还包括:

步骤S206、获取待寻找目标的形状以确认抓取位置及抓取角度。

本实施例中,确认抓取位置及抓取角度的目的在于避免在靠近目标时机械臂与目标,或机械臂与目标放置物间的撞击。

步骤S208、基于所述抓取位置及所述抓取角度对所述机械臂最优模型进行更新。

本实施例中对所述机械臂最优模型的更新方法同理于步骤S102~步骤S110所述的方法。

优选的,在获取更新后的机械臂最优模型后还继续进行如下步骤以满足实际应用中机械臂路径规划后目标查找的需求。

步骤S210、基于Coppeliasim平台对所述更新的机械臂最优模型的目标寻找过程进行模拟以确认所述目标寻找不会导致所述目标发生位移或损伤。

作为另一种具体实施方式,为了避免机械臂在不同场景下陷入模式化运行,如图5所示,还包括:

步骤S206’、获取机械臂在不同场景下进行目标寻找时的轨迹路径。

步骤S208’、对各轨迹路径进行汇总分析以判断各轨迹路径的重复率高于预设值时,对所述机械臂最优模型进行更新或检测机械臂内对应的硬件芯片。

由上述可见,本实施例所述方法有效实现了机械臂在未知环境内的目标寻找,并考虑到目标的差异性对机械臂智能体进行了进一步优化,采用模拟平台对机械臂目标寻找过程进行演练以提高所述方法在实际应用效果。

上述程序可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读存储介质),计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读存储介质不包括暂存电脑可读媒体,如调制的数据信号和载波。

这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。

基于此,本实施例还提供了一种用于机械臂目标寻找的训练系统。如图6所示,所述训练系统包括:

第一获取模块,用于获取当前时刻机械臂与预设目标间的相对位置。

第二获取模块,用于输入所述相对位置至随机策略网络以获取所述机械臂当前时刻可执行的若干组各关节的转动量及转动速度,并基于价值网络对它们分别进行评价以筛选出最优的各关节的转动量及转动速度。

第三获取模块,用于基于所述当前时刻最优的各关节的转动量及转动速度的执行获取所述当前时刻的奖励值;其中,所述奖励值通过奖励函数获取,所述奖励函数包括第一奖励项及第二奖励项,所述第一奖励项包括距离惩罚项及时间惩罚项,所述第二奖励项包括动作惩罚项。

经验构建模块,用于重复上述过程以构建若干训练样本并存储于经验池内直至达到所述经验池的最大存储容量。

网络优化模块,用于基于所述经验池内的训练样本,并以所述奖励值最大,以及每一时刻相应的最优的各关节的转动量及转动速度的熵最大为约束对所述随机策略网络及所述价值网络进行迭代更新直至到达预设的迭代阈值;进而获得最优的随机策略网络及价值网络。

由于所述训练系统用于执行所述训练方法的步骤,因此此前已经介绍的不再赘述。

例如,所述网络优化模块包括:

计算单元,用于计算所述经验池内每一所述训练样本的优先值;其中,所述优先值为所述训练样本被抽中的概率。

抽样单元,用于基于sum-tree数据处理方法自所述经验池内抽样以进行所述随机策略网络及所述价值网络的迭代更新。

本实施例还提供了一种电子设备。如图7所示,其包括至少一个处理器,所述处理器与存储器耦合,所述存储器内存储有计算机程序,所述计算机程序被配置为被所述处理器运行时执行上述的方法。

本实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序用于执行所述的方法。

虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。

相关技术
  • 一种应用于手眼机械臂系统的轻量的快速目标检测方法
  • 一种目标定位模型的训练方法和目标定位方法及装置
  • 一种用于认知康复训练的机械辅助训练设备及其训练方法
  • 一种多机械臂多目标寻找的训练方法及训练装置
  • 一种多机械臂多目标寻找的训练方法及训练装置
技术分类

06120116491338