一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于惩罚改进的机器人运动控制方法、装置及存储介质

2023-07-13 06:11:25 来源:中国专利 TAG:


1.本发明涉及移动机器人运动控制领域,特别是涉及一种基于惩罚改进的机器人运动控制方法领域。


背景技术:

2.运动控制是移动机器人的核心功能,是指移动机器人从当前区域移动到目标区域的过程中的运动规划控制。安全强化学习训练移动机器人的目标是保证机器在避开所有危险区域的同时导航到目标。传统的机器人控制规划方法需要建立精准的数学模型、依赖人工设计,难以应用于大规模人工智能场景。
3.而利用安全强化学习的控制规划方法采用端到端学习,无需被控对象动态知识,可与未知环境交互并且可以应用于复杂决策及控制场景。安全强化学习(safe reinforcement learning,srl)是指在满足安全约束的情况下,通过最大化期望回报值(即累计奖励)得到最优策略。许多强化学习的应用要求机器人除了满足期望回报最大化的标准目标外,还要满足安全约束。传统的强化学习算法,允许机器人执行任何动作,只要该动作可以提高控制性能。然而,这一过程包含着大量试错与危险动作,在实际环境中应用该类算法可能导致装置损坏甚至人员受伤。例如,如果一个强化算法部署在一个真实的机器人手臂上,它可能会击中易碎的物体和周围的人,这可能会破坏有价值的财产或造成伤害。而安全强化学习使得当机器人的预测输出在满足安全约束的前提下,才允许机器人完成任务。而现有的安全学习的代价函数过于保守,导致优化问题可能不允许有解即机器人的输出动作均不满足安全约束,并且不同环境下,机器人的环境并不相同,现有的代价函数无法满足对不同环境的适用性性,鲁棒性差,基于此本技术提供基于惩罚改进的机器人运动控制方法、装置及存储介质解决上述问题。
4.常见的安全强化学习算法,大多数为无模型的算法例如:ppo算法、trpo算法、sac算法。此类算法需要与环境进行大规模的信息交互以满足学习安全约束策略,在不同的环境、任务和训练阶段情况下,该算法的适用性不佳;如果安全约束的成本惩罚设置得太低,那么可能不足以确保安全,另一方面,如果它设置得太大,那么模型可能会过度保守,阻碍机器人探索,导致训练的不稳定。存在着数据利用率低,安全约束效果不佳,采样效率低的问题。


技术实现要素:

5.基于此,本发明目的在于提供基于惩罚改进的机器人运动控制方法、装置及存储介质,用于生成一种具有高采样效率、可在训练和测试阶段皆满足安全约束,对环境适应性更好的机器人运动规划方法。
6.本发明是通过如下技术方案实现的:
7.一方面,本发明提供基于惩罚改进的机器人运动控制方法,包括:
8.获取机器人的当前位置状态,对机器人的移动策略选取进行高斯分布处理,在该
高斯分布中采样部分移动策略作为当前策略集;
9.将机器人的当前位置状态和当前策略集中的每一个的移动策略分别进行组合,预测在每一个对应的移动策略下机器人的下一位置状态,并计算其对应的动作奖励;
10.将所述机器人在预测的下一位置状态时与最近的障碍物之间的距离,再换算成对应的移动策略的违反约束成本;
11.将每一个预测的下一位置状态对应的违反约束成本与一预设的累计约束阈值进行比较,判断机器人在预测的下一位置状态是否满足安全约束条件;
12.将所述策略集中满足安全约束条件的策略按照其对应的动作奖励值大小进行排序,并选取动作奖励值最大的移动策略作为机器人的输出动作;
13.将完成移动后的机器人的位置状态信息和在对应的移动策略下计算得到的机器人的下一位置状态信息输入到自适应惩罚函数中,计算得到修正参数;
14.根据所述修正参数对所述累计约束阈值进行修正。
15.进一步地,在将完成移动后的机器人的位置状态信息和在对应的移动策略下计算得到的机器人的下一位置状态信息输入到自适应惩罚函数之前还包括:
16.根据动作奖励值最大的移动策略对应的违反约束成本与累计约束阈值之间的差值,对自适应惩罚函数的缩放参数进行更新。
17.进一步地,将策略集中满足安全约束条件的策略按照其对应的动作奖励值大小进行排序后还包括:
18.选择动作奖励值大小排名前n项的移动策略用于更新对机器人移动策略选取进行高斯分布处理的参数。
19.进一步地,选择动作奖励值大小排名前n项的移动策略用于更新对机器人移动策略选取进行高斯分布处理的参数,具体包括:
20.根据前n项移动策略拟合得到模型集合对q维状态空间和p维动作空间的系统动态,令
[0021][0022]
其中s
t
为样本数据中机器人的起始位置;
[0023]
在集合f中,共有q个子集f1,f2,...,fq,每个子集fi,1≤i≤q为一个集成概率神经网络模型
[0024][0025]
其中为系统在状态s
t
执行动作a
t
后状态向量第i个分量的变化情况;
[0026]
每个子集中包含b个概率神经网络,第i个子集中的第b个概率神经网络表示为其输出为:
[0027][0028]
其中和分别为所表征的均值函数和方差函数;
[0029][0030][0031]
其中μi(s
t
,a
t
)为模型的均值函数,为模型的方差函数。
[0032]
进一步地,所述自适应惩罚函数为:
[0033][0034]
其中s为机器人的位置状态,a为动作输出,k为缩放参数,u为自适应惩罚函数,n为完成移动后的机器人的位置状态。
[0035]
进一步地,对自适应惩罚函数的缩放参数进行更新具体为:
[0036]kt 1
=k
t
α(jc(π
t
)-c)
[0037]
其中jc(π
t
)为动作奖励值最大的移动策略对应的违反约束成本,α为学习率,c为累积约束阈值。
[0038]
另一方面,本发明提供一种基于惩罚改进的机器人运动控制装置,包括:
[0039]
样本采样模块:获取机器人的当前位置状态,对机器人的移动策略选取进行高斯分布处理,在该高斯分布中采样部分移动策略作为当前策略集;
[0040]
状态预测模块:用于将机器人的当前位置状态和当前策略集中的每一个的移动策略分别进行组合,预测在每一个对应的移动策略下机器人的下一位置状态,并计算其对应的动作奖励;
[0041]
约束成本计算模块:用于将所述机器人在预测的下一位置状态时与最近的障碍物之间的距离,再换算成对应的移动策略的违反约束成本;
[0042]
安全约束判断模块:用于将每一个预测的下一位置状态对应的违反约束成本与一预设的累计约束阈值进行比较,判断机器人在预测的下一位置状态是否满足安全约束条件;
[0043]
策略选择模块:用于将所述策略集中满足安全约束条件的策略按照其对应的动作奖励值大小进行排序,并选取动作奖励值最大的移动策略作为机器人的输出动作;
[0044]
自适应惩罚模块:用于将完成移动后的机器人的位置状态信息和在对应的移动策略下计算得到的机器人的下一位置状态信息输入到自适应惩罚函数中,计算得到修正参数;
[0045]
约束修正模块:用于根据所述修正参数对所述累计约束阈值进行修正。
[0046]
进一步地,还包括:
[0047]
自适应函数更新模块,用于根据动作奖励值最大的移动策略对应的违反约束成本与累计约束阈值之间的差值,对自适应惩罚函数的缩放参数进行更新。
[0048]
进一步地,还包括:
[0049]
高斯参数更新模块:用于选择动作奖励值大小排名前n项的移动策略用于更新对机器人移动策略选取进行高斯分布处理的参数。
[0050]
另一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一所述的基于惩罚改进的机器人运动控制方法的步骤。
[0051]
本发明所述的基于惩罚改进的机器人运动控制方法,通过重设模型的惩罚函数,以及提供一个自适应更新的缩放参数k,通过不断修改缩放参数,提高模型的安全性和稳定性,完成对机器人移动策略选取规则的更新,并且通过在样本采样阶段根据上一步中奖励值最高的移动策略对解空间的高斯分布参数进行更新,优化解空间的分布,最终生成一种具有高采样效率、可在训练和测试阶段皆满足安全约束,对环境适应性更好的机器人运动规划方法。
[0052]
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
[0053]
图1为本技术提供的基于惩罚改进的机器人运动控制方法的流程图;
[0054]
图2为本技术提供的一种基于惩罚改进的机器人运动控制装置的结构框图;
[0055]
图3为本技术提供的一示例性的动力学模型结构图;
[0056]
图4为本技术提供的另一实施例中的基于惩罚改进的机器人运动控制方法的流程图;
[0057]
图5为本技术提供的一示例性的集成概率神经网络模型结构示意图;
[0058]
图6为本技术提供的一种一示例性实施例示出的一种电子设备的结构框图。
[0059]
下面将结合本技术实施例的附图,对本发明的技术方案进行清楚完整的描述。
具体实施方式
[0060]
基于受限马尔可夫决策过程的安全强化学习模型使用五元组(s、a、p、r、c)对问题进行描述,其中,s是状态空间,状态元素的个数是有限的;a是动作空间;p是转移概率;r是奖励函数;c={ci:s
×a→r│
i=1,

,k}表示动作空间受约束的约束函数集合,状态空间受约束的约束函数集合表示为c={ci:s
→r│
i=1,

,k}在安全强化学习模型中,移动机器人探索目的是:在有安全约束的情况下,最大化长期累积回报奖赏。
[0061]
实施例一:
[0062]
请参阅图1,其为本技术提供的一种基于惩罚改进的机器人运动控制方法的流程图。
[0063]
本技术的基于惩罚改进的机器人运动控制方法具体包括如下步骤:
[0064]
s10:获取机器人的当前位置状态,对机器人的移动策略选取进行高斯分布处理,在该高斯分布中采样部分移动策略作为当前策略集。
[0065]
机器人在开始运行前,其控制系统首先会初始化其坐标信息,通过其摄像头拍摄的环境照片构建环境地图并识别障碍物,基于其初始化坐标信息和环境地图确定机器人的当前位置状态,该当前位置状态包括其当前的坐标信息、与障碍物之间的距离等。
[0066]
高斯分布(gaussian distribution)又称正态分布(normal distribution),是高斯过程的基本组成部分。若随机变量x服从一个数学期望为μ,方差为σ2的正态分布,则记为x~n(μ,σ)。高斯分布的概率密度函数为正态分布,期望值μ决定了其位置,其标准差σ决定
了分布的幅度。在多元情况下,若其中每个随机变量都呈正态分布,并且它们的联合分布也是高斯分布。在本技术中对于机器人的移动策略而言,其移动速度、移动时间、移动角度等的分布都近似于满足高斯分布,因此对于整个移动策略的解空间集,其整体同样满足高斯分布,再结合机器人的当前位置状态,就可以获得在该位置状态下移动策略的高斯分布。如,当机器人距离目标点的距离为20,机器人的当前运动方向正对目标点与当机器人距离目标点的距离为20,机器人的当前运动方向背对目标点的这两种状况相比,前一种状况移动角度的选取概率和后一种状况的移动角度的不一致,因此对机器人的移动策略进行高斯分布处理后,需要结合机器人的当前位置状态重新确定移动策略的概率分布后,再进行采样。
[0067]
s20:将机器人的当前位置状态和当前策略集中的每一个的移动策略分别进行组合,预测在每一个对应的移动策略下机器人的下一位置状态,并计算其对应的动作奖励。
[0068]
其中,本方案是通过一动力学模型来计算机器人的下一位置状态以及对应的动作奖励。请参阅图2,动力学模型根据当前时刻状态和当前动作预测下一位置的状态,即(s
t
,a
t
)
→st 1

[0069]
动力学模型通过大量的虚拟样本以学习机器人如何根据移动策略进行移动。动力学模型设置初始的模型参数,随后输入不同的位置状态和移动策略,不断进行模拟优化得到最终的动力学模型。
[0070]
动作奖励通过奖励函数r(s
t 1
)得到,其中s
t 1
为机器人的下一位置状态。在本技术中奖励函数的基本设计思想为,奖励值的大小与机器人的下一位置坐标与目标点的距离远近,机器人的运动方向与目标点之间的角度偏移程度相关。机器人人的下一位置坐标与目标点的距离越近,动作奖励值越高,机器人的运动方向与目标点之间的角度偏移程度越小,动作奖励值越高。
[0071]
s30:将所述机器人在预测的下一位置状态时与最近的障碍物之间的距离,再换算成对应的移动策略的违反约束成本。
[0072]
其中,该违反约束成本与机器人与障碍物之间的距离负相关,即机器人与障碍物之间的距离越近,移动策略的违反约束成本越高。
[0073]
s40:将每一个预测的下一位置状态对应的违反约束成本与一预设的累计约束阈值进行比较,判断机器人在预测的下一位置状态是否满足安全约束条件。
[0074]
本技术具体通过代价函数c(s
t 1
)计算当前状态是否满足安全约束,其中采用基于梯度提升决策树的集成方法lightgbm作为分类器来近似指标代价函数。
[0075]
当违反约束成本小于一预设的累计约束阈值,可判断机器人移动至该预测的下一位置时不会发生碰撞等现象,保证了机器人的移动安全;而违反约束成本大于一预设的累计约束阈值,则判断机器人移动至该预测的下一位置有概率发生碰撞现象,机器人移动安全无法保障。
[0076]
s50:将所述策略集中满足安全约束条件的策略按照其对应的动作奖励值大小进行排序,并选取动作奖励值最大的移动策略作为机器人的输出动作。
[0077]
机器人根据移动策略得到下一个位置状态,根据下一个位置坐标与目标点的距离计算对应的奖励值,奖励值越大,机器人的下一位置坐标越接近目标点。在满足安全约束条件的前提下,对动作奖励值进行排序,可以选取移动后最靠近目标点的对应策略。
[0078]
s60:将完成移动后的机器人的位置状态信息和在对应的移动策略下计算得到的机器人的下一位置状态信息输入到自适应惩罚函数中,计算得到修正参数。其中自适应函数具体为:
[0079][0080]
其中s为机器人的位置状态,a为动作输出,k为缩放参数,u为自适应惩罚函数,n为完成移动后的机器人的位置。
[0081]
s70:根据修正参数对累计约束阈值进行修正。
[0082]
该修正参数对预设的累计阈值进行缩放,进一步优化了安全模型的安全约束条件,完成对模型的修正。
[0083]
基于上述基于惩罚改进的机器人运动控制方法,请参阅图3,本技术还提供的一种基于惩罚改进的机器人运动控制装置,其包括:样本采样模块、状态预测模块、约束成本计算模块、安全约束判断模块、策略选择模块、自适应惩罚模块和约束修正模块。其中,步骤s10由样本采样模块执行、步骤s20由状态预测模块执行、步骤30由约束成本计算模块执行、步骤40由安全约束判断模块执行、步骤50由策略选择模块执行、步骤s60由自适应惩罚模块执行、步骤s70由约束修正模块执行。
[0084]
相对于现有技术,本技术通过重设安全模型的自适应惩罚函数,根据机器人的预测轨迹和实际轨迹之间的误差,将安全模型的约束条件进行修正,使得安全模型能够根据环境和策略的变化不断的修正自身的约束条件,从而提供一种具有高采样效率、可在训练和测试阶段皆满足安全约束,对环境适应性更好的机器人运动规划方法。
[0085]
实施例二:
[0086]
请参阅图4,基于实施例一提供的基于惩罚改进的机器人运动控制方法,本实施例在步骤s60前还包括:
[0087]
s51:根据动作奖励值最大的移动策略对应的违反约束成本与累计约束阈值之间的差值,对自适应惩罚函数的缩放参数进行更新。其具体地计算公式如下:
[0088]kt 1
=k
t
α(jc(π
t
)-c)
[0089]
其中jc(π
t
)为动作奖励值最大的移动策略对应的违反约束成本,α为学习率,c为累积约束阈值。
[0090]
基于实施例一的一种基于惩罚改进的机器人运动控制装置,本实施例提供的一种基于惩罚改进的机器人运动控制装置还包括自适应函数更新模块,其用于执行步骤s51。
[0091]
相对于现有技术,本实施例通过在计算修正参数前,根据机器人当前选取的移动策略的违反约束成本与累计约束阈值的差值,更新自适应惩罚函数的缩放参数,使得自适应函数得到的修正参数能够更加精准,加速模型的优化过程,提高优化效率。
[0092]
实施例三:
[0093]
在基于实施例一或二的提供的基于惩罚改进的机器人运动控制方法,本实施例在步骤s60后还包括:
[0094]
步骤s52:选择动作奖励值大小排名前n项的移动策略用于更新对机器人移动策略选取进行高斯分布处理的参数。
[0095]
为保证实际状态轨迹满足安全约束,在进行控制规划时需要考虑模型的不确定
性,在实际中即使很小的预测误差也会对控制器的性能产生很大的影响,因此需要对模型不确定性做量化处理首先使用高斯过程(高斯过程(gaussian processes)作为机器学习中处理回归问题的一个有效工具,并具有捕捉认知不确定性的能力)对环境动力学不确定性研究进行建模,得到概率动力学模型。
[0096]
请参阅图5,构建集成概率神经网络学习模型以近似动力学模型,使用相同真实世界中的样本数据拟合一组动力学模型集合
[0097]
首先针对q维状态空间和p维动作空间的系统动态,令
[0098][0099]
设在集合f中,共有q个子集f1,f2,...,fq,每个子集fi,1≤i≤q为一个集成概率神经网络模型用以学习由系统动态决定的函数:
[0100][0101]
该函数用以描述系统在状态s
t
执行动作a
t
后状态向量第i个分量的变化情况。
[0102]
同样的,设每个子集中包含b个概率神经网络,第i个子集中的第b个概率神经网络表示为其输出为:
[0103][0104]
其中和分别为所表征的均值函数和方差函数。第i个子集所表征的集成概率神经网络模型的输出为:
[0105][0106][0107]
其中μi(s
t
,a
t
)为模型的均值函数,用以根据给定状态动作对(s
t
,a
t
)预测下一时刻状态的分量刻状态的分量为模型的方差函数,用以捕捉不确定性。
[0108]
对给定的状态动作(s
t
,a
t
),每个子集fi表征的集成概率神经网络模型的均值函数μi(s
t
,a
t
)组成的向量:
[0109][0110]
μ(s
t

t
)为模型对下一时刻状态的预测值。每个概率神经网络模型的方差函数组成的量:
[0111]
[0112]
σ2(s
t

t
)表征模型的预测不确定性。
[0113]
通过选择动作奖励值大小排名前n项的移动策略输入至集成概率神经网络模型,完成对采样时解空间的高斯分布参数的更新。
[0114]
基于实施例一或者实施例二的一种基于惩罚改进的机器人运动控制装置,本实施例提供的的一种基于惩罚改进的机器人运动控制装置还包括高斯参数更新模块,其用于执行步骤s52。
[0115]
本技术实施例公开的基于惩罚改进的机器人运动控制方法,通过在样本采样阶段根据上一步中奖励值最高的移动策略对解空间的高斯分布参数进行更新,优化解空间的分布,使得机器人的移动策略分布不断趋于真实值。
[0116]
如图6所示,图6是本技术实施例根据一示例性实施例示出的一种电子设备的结构框图。
[0117]
所述电子设备包括处理器910和存储器920。该主控芯片中处理器910的数量可以是一个或者多个,图6中以一个处理器910为例。该主控芯片中存储器920的数量可以是一个或者多个,图6中以一个存储器920为例。
[0118]
存储器920作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本技术实施例任意实施例所述的基于惩罚改进的机器人运动控制方法程序,以及本技术实施例任意实施例所述的基于惩罚改进的机器人运动控制方法对应的程序指令/模块。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器920可进一步包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0119]
处理器910通过运行存储在存储器920中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述任一实施例所记载的基于惩罚改进的机器人运动控制方法。
[0120]
本技术实施例还提供了一种计算机可读存储介质,其上储存有计算机程序,该计算机程序被处理器执行时实现上述任意一个实施例所述的基于惩罚改进的机器人运动控制方法。
[0121]
本发明可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。计算机可读储存介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其它数据。计算机的存储介质的例子包括但不限于:相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其它类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其它内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其它光学存储、磁盒式磁带,磁带磁磁盘存储或其它磁性存储设备或任何其它非传输介质,可用于存储可以被计算设备访问的信息。
[0122]
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并
不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,则本发明也意图包含这些改动和变形。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表