CN115070764B - 机械臂运动轨迹规划方法、系统、存储介质和电子设备 - Google Patents
机械臂运动轨迹规划方法、系统、存储介质和电子设备 Download PDFInfo
- Publication number
- CN115070764B CN115070764B CN202210729157.2A CN202210729157A CN115070764B CN 115070764 B CN115070764 B CN 115070764B CN 202210729157 A CN202210729157 A CN 202210729157A CN 115070764 B CN115070764 B CN 115070764B
- Authority
- CN
- China
- Prior art keywords
- preset
- mechanical arm
- gaussian
- model
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000000203 mixture Substances 0.000 claims abstract description 48
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 34
- 230000006870 function Effects 0.000 claims description 68
- 230000009471 action Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 25
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 17
- 238000005457 optimization Methods 0.000 abstract description 12
- 238000012549 training Methods 0.000 abstract description 4
- 238000004088 simulation Methods 0.000 description 10
- 230000002787 reinforcement Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 239000003642 reactive oxygen metabolite Substances 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000005094 computer simulation Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J18/00—Arms
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/14—Force analysis or force optimisation, e.g. static or dynamic forces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Feedback Control In General (AREA)
Abstract
本发明涉及一种机械臂运动轨迹规划方法、系统、存储介质和电子设备,包括:采用预设线性高斯控制器获取机械臂的名义轨迹,根据名义轨迹得到机械臂的高斯混合模型;基于高斯混合模型,获取机械臂的局部动力学模型;根据LQR算法获取局部动力学模型对应的线性高斯控制器控制系数;根据控制系数对预设线性高斯控制器进行修正并进行迭代训练,直至将符合条件的线性高斯控制器确定为目标线性高斯控制器,利用目标线性高斯控制器生成机械臂的目标运动轨迹。本发明将动力学模型的拟合分为由粗到精的两个过程,极大减少动力学模型的拟合难度,提高样本的利用率、降低所需采样的数目,并通过LQR方法,提升了对于机械臂轨迹的优化效率。
Description
技术领域
本发明涉及机械臂控制技术领域,尤其涉及一种机械臂运动轨迹规划方法、系统、存储介质和电子设备。
背景技术
在当前的机械臂的控制器、运动规划算法主要由设计者在一定经验的基础上进行设计和调试,所有的设计假设机械臂及环境的几何、物理模型是已知的。当机械臂必须适应新环境或无法对机械臂、环境进行足够精确的建模时,机械臂的控制器及其运动规划算法,便产生了局限性。因此,目前所用的机械臂与完全自主操控的机械臂之间存在着巨大的鸿沟。近年来,随着人工智能技术的发展,越来越多的研究人员将机械臂自主控制的希望寄托在了机器学习方法中。希望利用机器学习技术的灵活性,进一步实现机械臂控制领域的自动化,并大大缩小与自主控制的差距。然而机械臂自主控制强化学习算法同样面临着挑战,包括:高维度连续的状态和动作、高实时性要求以及机械臂与环境交互非常耗时。
在强化学习算法中,按照是否基于环境的动力学模型进行学习,可分为无模型强化学习方法和有模型强化学习方法两大类。无模型强化学习方法无需构建环境的精确模型,直接通过驱动机械臂实物运动实现对策略的学习,这种方式能够应用于动力学模型不连续的场景,然而这种方法由于需要在硬件实物上进行反复采样,容易损坏硬件,因此一般采集的样本较少,依赖于模仿学习的初始化学习过程,因此所学的策略参数较少,易陷入局部最优。与无模型方法相比,基于模型的强化学习算法的目标是提高数据效率,一旦学习了模型,就不需要与真实机械臂交互来更新策略。此外,可以使用该模型测试策略,而不会有损坏机械臂的风险。当模型可用时,机械臂进行实验所需的时间可以忽略不计。为了达到这个目的,我们需要先构建机械臂及环境的动力学模型,然后基于模型给出最优的策略,所学习的策略在本质上受到模型质量的限制。因此基于模型的强化学习算法,主要限制为模型的可用性。因此,如何训练一个精确模型以及如何降低模型误差的影响是当前亟需解决的问题。
发明内容
为解决上述技术问题,本发明提供了一种机械臂运动轨迹规划方法、系统、存储介质和电子设备。
本发明的一种机械臂运动轨迹规划方法的技术方案如下:
S1、在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型;
S2、基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型;
S3、根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数;
S4、根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环执行S1,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹。
本发明的一种机械臂运动轨迹规划方法的有益效果如下:
本发明的方法将动力学模型的拟合分为由粗到精的两个过程,极大减少了动力学模型的拟合难度,提高了样本的利用率、降低了所需采样的数目,在此基础上通过LQR方法,提升了对于高纬度机械臂轨迹的优化效率。
在上述方案的基础上,本发明的一种机械臂运动轨迹规划方法还可以做如下改进。
进一步,所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻。
进一步,所述根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型,包括:
基于所述所有的名义轨迹,得到并根据每一时刻的状态动作随机变量,得到对应的高斯分布概率密度函数,并对所有的高斯分布概率密度函数进行拟合,得到所述高斯混合模型概率密度,其中,任意一条名义轨迹为:所述状态动作随机变量为:[st,at,st+1],st∈R1×m,at∈R1×n,st+1∈R1×m,所述高斯混合模型概率密度为:s0为所述待控制机械臂及环境的初始状态,a0为所述待控制机械臂的初始机械臂动作,st为所述待控制机械臂及环境在t预设时刻的状态,at为所述待控制机械臂在t预设时刻的机械臂动作,zt=[st,at,st+1],K是所述高斯混合模型中的子高斯模型的数量,是第k个高斯分布概率密度函数,ak是状态动作随机变量属于子高斯模型k的概率,μk是子高斯模型k的均值,δk是子高斯模型k的协方差;
根据所述高斯混合模型概率密度,得到所述高斯混合模型的对数似然函数,其中,所述对数似然函数为:
采用EM算法对所述对数似然函数进行估算,得到所述高斯混合模型。
进一步,所述S2具体包括:
S21、将所述每一预设时刻的状态动作随机变量[st,at,st+1]代入后验概率估计公式,得到所述每一预设时刻的状态动作随机变量的后验概率估计值γtk;
S22、根据第一预设公式和所述每一预设时刻的状态动作随机变量的后验概率估计向量γt,得到所述每一预设时刻的状态动作随机变量的共轭先验均值并根据所述第二预设公式、所述后验概率估计公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的共轭先验方差
S23、根据第三预设公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的概率密度函数均值μt,并根据第四预设公式和所述每一预设时刻的状态动作随机变量的共轭先验方差得到所述每一预设时刻的状态动作随机变量的概率密度函数方差∑t;
S24、根据所述每一预设时刻的状态动作随机变量对应的联合分布方差和第五预设公式,得到所述每一预设时刻的状态动作随机变量对应的并根据所述每一预设时刻的状态动作随机变量对应的联合分布均值和第六预设公式,得到所述每一预设时刻的状态动作随机变量对应的ft;
所述第六预设公式为:
ft=[μ(m+n+1)…μ(2m+n)]T-Fsat[μ(m+n-1)…μ(m+n)]T;
所述第七预设公式为:
其中,Fsat=[Fst Fat],Fst和Fat为预设时刻t的局部动力学模型的系数,其中N为在预设时刻t的样本数量,和为无偏估计值,m=n0=1,所述每一预设时刻的状态动作随机变量对应的联合分布方差为:所述每一预设时刻的状态动作随机变量对应的联合分布均值为:μt=[μ1…μ(2m+n)]T。
采用进一步技术方案的有益效果是:通过高斯混合模型对全局动力学模型进行拟合,然后再以这个全局的模型作为先验知识拟合机械臂运行轨迹中每一步的线性时变动力学模型,降低了局部动力学模型拟合过程中的复杂度,并且提高了模型的精度。
进一步,所述S3还包括:
获取每个局部动力学模型对应的线性高斯控制器的状态动作值函数和状态值函数;
将所述每一预设时刻的状态动作值函数进行迭代处理,得到状态动作迭代值;
其中,所述每一预设时刻的状态动作值函数为:
进一步,所述预设条件为:迭代次数达到预设最大次数或相邻两次循环的状态动作迭代值之差小于第一阈值。
本发明的一种机械臂运动轨迹规划系统的技术方案如下:
包括:第一处理模块、第二处理模块、第三处理模块和运行模块;
所述第一处理模块用于:在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型;
所述第二处理模块用于:基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型;
所述第三处理模块用于:根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数;
所述运行模块用于:根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环调用第一处理模块,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹。
本发明的一种机械臂运动轨迹规划系统的有益效果如下:
本发明的系统将动力学模型的拟合分为由粗到精的两个过程,极大减少了动力学模型的拟合难度,提高了样本的利用率、降低了所需采样的数目,在此基础上通过LQR方法,提升了对于机械臂轨迹的优化效率。
在上述方案的基础上,本发明的一种机械臂运动轨迹规划系统还可以做如下改进。
进一步,所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻。
本发明的一种存储介质的技术方案如下:
存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如本发明的一种机械臂运动轨迹规划方法的步骤。
本发明的一种电子设备的技术方案如下:
包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,使所述计算机执行如本发明的一种机械臂运动轨迹规划方法的步骤。
附图说明
图1为本发明实施例的一种机械臂运动轨迹规划方法的流程示意图;
图2为本发明实施例的一种机械臂运动轨迹规划方法的局部动力学模型拟合算法的流程图;
图3为本发明实施例的一种机械臂运动轨迹规划方法的目标运动轨迹规划算法的流程图;
图4为本发明实施例的一种机械臂运动轨迹规划方法的待控制机械臂仿真场景图;
图5为本发明实施例的一种机械臂运动轨迹规划方法的待控制机械臂第一次迭代训练的运动轨迹图;
图6为本发明实施例的一种机械臂运动轨迹规划方法的待控制机械臂目标运动轨迹图;
图7为本发明实施例的一种机械臂运动轨迹规划方法的回报函数与迭代次数曲线图;
图8为本发明实施例的一种机械臂运动轨迹规划系统的结构示意图。
具体实施方式
如图1所示,本发明实施例的一种机械臂运动轨迹规划方法,包括如下步骤:
S1、在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型。
其中,机械臂对任务的操作及运动过程可以视为一个有限边界的马尔科夫决策过程(MDP),因此可通过MDP对其进行建模。在有限边界马尔科夫决策过程模型中包括5个元素:待控制机械臂及环境状态s、待控制机械臂动作a、待控制机械臂运动过程中的状态转换分布Psa、待控制机械臂的奖励函数R(st,at)、以及待控制机械臂的任务结束时间T。由于所使用的待控制机械臂为六自由度机械臂,被操作对象在三维空间中也具备六个自由度,因此s=[θ,φ]T,其中θ∈R1×6对应待控制机械臂的6个旋转关节,φ∈R1×6对应被操作对象在待控制机械臂的基坐标系下的位置和姿态;待控制机械臂动作利用机械臂关节力矩表示a=[τ]T,其中τ∈R1×6对应机械臂的6个关节电机的输出转矩;待控制机械臂在运动过程中的状态转换分布函数可表示为条件概率密度形式Psa=p(st+1|st,at);待控制机械臂的奖励函数及任务结束时间依据具体任务的不同可人为设定。
其中,每一预设时刻设为t,任务结束时间为T,可根据用户的需求设置多个预设时刻,在此不设限制。例如,当T为20,Δt为1,则预设时刻的数量为20,具体为:1,2,3,4,5…20。
其中,名义轨迹为预设线性高斯控制器的控制系数均为零时所获取待控制机械臂运行T时长后所得到的运动轨迹。为了保证高斯混合模型的精度,在预设线性高斯控制器中多次获取相同初始状态的名义轨迹,以增加样本数量。每一条名义轨迹的均是从s0到sT的运动轨迹。
S2、基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型。
其中,在已知高斯混合模型的情形下,获取并拟合所述待控制机械臂在每一预设时刻对应的局部动力学模型。
S3、根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数。
其中,LQR算法为:线性二次型调节优化控制算法;
具体地,根据LQR算法求解线性时变局部动力学模型在每个预设时刻对应的最优的线性高斯控制器的控制系数。
S4、根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环执行S1,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹。
其中,通过每次迭代训练后得到线性高斯控制器的控制系数,不断修正并进行迭代训练,直至根据控制系数得到的待控制机械臂的目标线性高斯控制器。
较优地,所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻。
较优地,所述根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型,包括:
基于所述所有的名义轨迹,得到并根据每一时刻的状态动作随机变量,得到对应的高斯分布概率密度函数,并对所有的高斯分布概率密度函数进行拟合,得到所述高斯混合模型概率密度,其中,任意一条名义轨迹为:所述状态动作随机变量为:[st,at,st+1],st∈R1×6,at∈R1×6,st+1∈R1×6,所述高斯混合模型概率密度为:s0为所述待控制机械臂及环境的初始状态,a0为所述待控制机械臂的初始机械臂动作,st为所述待控制机械臂及环境在t预设时刻的状态,at为所述待控制机械臂在t预设时刻的机械臂动作,zt=[st,at,st+1],K是所述高斯混合模型中的子高斯模型的数量,是第k个高斯分布概率密度函数,ak是状态动作随机变量属于子高斯模型k的概率,μk是子高斯模型k的均值,δk是子高斯模型k的协方差。
其中,任意一条名义轨迹均为高斯混合模型的样本数据。
根据所述高斯混合模型概率密度,得到所述高斯混合模型的对数似然函数,其中,所述对数似然函数为:
采用EM算法对所述对数似然函数进行估算,得到所述高斯混合模型。
其中,采用EM算法估算高斯混合模型中各参数的值为本领域的常规技术手段,在此不过多赘述。
较优地,所述S2具体包括:
S21、将所述每一预设时刻的状态动作随机变量[st,at,st+1]代入后验概率估计公式,得到所述每一预设时刻的状态动作随机变量的后验概率估计值γtk。
其中,在全局高斯混合模型中,随机变量z(状态动作随机变量)的分布依赖于一些隐藏的变量,隐藏变量的分布决定了高斯混合模型中k个子模型的权重,γt=[γt1,γt2…γtk]T∈Rk×1。
S22、根据第一预设公式和所述每一预设时刻的状态动作随机变量的后验概率估计向量γt,得到所述每一预设时刻的状态动作随机变量的共轭先验均值并根据所述第二预设公式、所述后验概率估计公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的共轭先验方差
S23、根据第三预设公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的概率密度函数均值μt,并根据第四预设公式和所述每一预设时刻的状态动作随机变量的共轭先验方差得到所述每一预设时刻的状态动作随机变量的概率密度函数方差∑t。
其中,μt∈R18×1,∑t∈R18×18。
S24、根据所述每一预设时刻的状态动作随机变量对应的联合分布方差和第五预设公式,得到所述每一预设时刻的状态动作随机变量对应的并根据所述每一预设时刻的状态动作随机变量对应的联合分布均值和第六预设公式,得到所述每一预设时刻的状态动作随机变量对应的ft。
具体地,设st+1=X,其期望μX=[μ13…μ18]T,方差 设[st,at]=Y,其期望μY=[μ1…μ12]T、方差[st,at,st+1]的联合分布均值μt=[μ1…μ18]T,[st,at,st+1]的联合分布方差首先求解变量Fsat,
此外,对上式的证明过程如下:
具甲,p(x,y)=p(st,at,st+1)是[st,at,st+1]的联合分布密度函数。由于E(X)=E(E(X|Y=y)),又因为E(X|Y=y)实际为p(st+1|st,at)条件分布的期望,因此E(X)=E(Fsaty+ft)=FsatE(y)+ft;
将E(X)=E(Fsaty+ft)=FsatE(y)+ft代入第四预设公式,可得:
∫y(y-E(y))dy∫xp(x,y)[yFsat-E(y)Fsat-x+E(x)]Tdx
=∫y(y-E(y))dy∫xp(x,y)[Fsaty-FsatE(y)-x+FsatE(y)+ft]Tdx
=∫y(y-E(y))dy∫xp(x,y)[Fsaty-x+ft]Tdx
=∫y(y-E(y))py(y)dy[(Fsaty+ft-E(x|y))]
=∫y(y-E(y))py(y)dy*0
=0。
其中,已知E(X)=E(st+1)=[μ13…μ18]T,E(Y)=E(st,at)=[μ1…μ12]T因此可得:
ft=[μ13…μ18]T-Fsat[μ11…μ12]T。
其中,已知E(X|Y=y)=Fsaty+ft,因此有:
具体地,依据图2所示局部动力学模型拟合算法的流程图对每一预设时刻的局部动力学模型进行拟合。
其中,所述每一预设时刻的局部动力学模型为: 所述后验概率估计公式为:所述第一预设公式为:所述第二预设公式为:所述第三预设公式为:所述第四预设公式为:所述第五预设公式为:所述第六预设公式为:ft=[μ13…μ18]T-Fsat[μ11…μ12]T,所述第七预设公式为:
其中,Fsat=[Fst Fat],Fst和Fat为预设时刻t的局部动力学模型的系数,其中N为在预设时刻t的样本数量,和为无偏估计值,m=n0=1,所述每一预设时刻的状态动作随机变量对应的联合分布方差为:所述每一预设时刻的状态动作随机变量对应的联合分布均值为:μt=[μ1…μ18]T。
较优地,所述S3还包括:
获取每个局部动力学模型对应的线性高斯控制器的状态动作值函数和状态值函数。
其中,在已知动力学模型的基础上,通过线性二次型调节优化控制算法,求解线性时变动力学模型在每个预设时间段下对应的最优线性高斯控制器。使用线性二次型调节优化算法需满足两个前提条件:①动力学模型是线性的;②奖励函数符合二次型形式。
将所述每一预设时刻的状态动作值函数进行迭代处理,得到状态动作迭代值。
其中,所述每一预设时刻的状态动作值函数为:所述每一预设时刻的状态值函数为:R(st,at)为所述每一预设时刻的奖励函数,Q(st,at)所述每一预设时刻的状态动作值函数,V(st)为所述每一预设时刻的状态值函数。
具体地,可通过动态规划的方式对线性高斯控制器进行迭代优化,LQR的具体推导过程为现有技术,在此不过多赘述。
需要说明的是,有模型强化学习的待控制机械臂最优轨迹规划算法流程如下:
较优地,所述预设条件为:迭代次数达到预设最大次数或相邻两次循环的状态动作迭代值之差小于第一阈值。
具体地,根据图3所示的目标运动轨迹规划算法的流程图,得到目标线性高斯控制器,并利用目标线性高斯控制器生成待控制机械臂的目标运动轨迹。
需要说明的是,为验证本实施例的技术方案的有效性,通过Gazebo模拟真实环境搭建了动力学仿真验证平台。Gazebo是一个功能强大的开源三维物理仿真平台,可支持多种高性能的物理引擎,如:ODE、Bullet等;支持逼真的三维环境的显示,包括光线、纹理、影子等;支持传感器仿真,同时可以仿真传感器的噪声;此外,还具备方便的图形、编程接口,具备可扩展的插件等一系列的优势。
在Gazebo仿真环境中,机械臂使用了ABB公司研制的IRB120工业机器人、操作对象使用的是克兰菲尔德大学MARVIN项目中的三维模型。动力学仿真验证平台在ROS框架的基础上进行搭建,包括基于有模型强化学习的自主控制软件和Gazebo动力学仿真软件两部分。两部分间通过ROS的Topic进行通信。首先,自主控制软件的线性高斯控制器采用随机策略生成机械臂的控制指令,Gazebo中的仿真机械臂依据指令进行运动,并将执行指令后的状态通过ROS Topic向外发布;在完成多次采样后,动力学模型拟合模块输出拟合的动力学时变线性高斯模型,线性二次型调节器依据拟合的动力学模型给出优化后的线性高斯控制器。在得到线性高斯控制器后便进入下一个循环,再次驱动仿真中的机械臂运动,以获取样本,拟合更优的模型,直至收敛。
在上述的动力学仿真验证平台中,Gazebo中与机械臂运动学参数、机械臂关节角限位、机械臂驱动器、机械臂三维模型、机械臂碰撞检测模型、机械臂动力学参数相关的内容均通过ROS wiki获取。通过修改urdf文件,在机械臂末端增加了二指夹具、在场景中增加了操作对象,并通过Rviz对机械臂末端、关节状态信息进行了实时可视化显示。Gazebo中机械臂仿真场景如图4所示。
在仿真场景中以机械臂的基坐标系base_link作为世界坐标系,操作对象圆形杆件中心为操作对象坐标系bolt,圆形杆件相对于世界坐标系的位姿(前三列为位置,单位为米;后三列为欧拉角,单位为弧度)为[0.3 0.3 0.06 0 0 0],机械臂初始构型中所有关节角为0°,期望机械臂末端操作器由初始位姿[0.474 0 0.63 0 0.707 0],到达操作对象中心点位姿,从而成功抓取操作对象。
操作任务奖励函数为:其中ωa=10-2,ωs=1。为使得机械臂尽快抓取操作对象,在每个时间步长下,其奖励函数取值始终为负数,并且‖sdes-st‖2保证了实际位姿与期望位姿越近系统所获得的奖励越高;此外,为了使得机械臂运动的更加平滑,在奖励函数中增加了力矩项从而保证了在较小的力矩下系统能获得更高的奖励;ωa=10-2保证了力矩项与状态项具备相同的数量级。
线性高斯控制器p(at|st)=N(Ktst+kt,δat),控制系数初始值均为零,高斯噪声是均值为0,方差为单位矩阵的标准多维高斯分布。任务操作时间为T=10秒,任务执行时间超过10秒或操作过程中操作对象倾倒则视为任务失败。机械臂各电机伺服控制周期Δt=10ms,最大迭代次数设置为50次。
通过初始化的控制器驱动Gazebo中的机械臂运动,第一次迭代过程中机械臂末端运动轨迹图(图5)。由图5可见通过初始的控制器,机械臂基本是在初始位置做随机运动。在每个时间步长下记录机械臂及操作对象的状态,在操作任务结束后通过算法对机械臂的局部动力学模型进行拟合,依据拟合后的结果,采用LQR算法进行轨迹优化,得到第一次优化后的控制器模型。依据优化后的控制器继续驱动Gazebo中的机械臂运动,同时记录每个时间步长下机械臂及操作对象的状态,在操作任务结束后通过逆维沙特后验估计算法对机械臂的局部动力学模型进行拟合,依据拟合后的结果,采用LQR算法进行轨迹优化,得到本次优化后的控制器模型,如此循环,直至收敛或达到设置的最大迭代次数。
当前操作任务经过9次迭代后,价值函数便趋于收敛。9次迭代后机械臂末端运动轨迹图(图6):由图6可见,经过9次迭代后,机械臂便能够运动到期望的位姿,这也充分说明了有模型算法在样本的利用率及收敛的效率上具有明显的优势。图7显示了每次迭代过程中,价值函数的增长趋势图,可以发现,从最初的-90.21逐渐递增,逐步逼近奖励函数的最大值。
其中,仿真过程中的Gazebo动力学引擎可以用vrep、mujoco等替代;所用的ABB机械臂可使用任何一款已知动力学参数及控制器参数的的机械臂替代;算法与仿真之间可以通过其他消息中间件或通过简单的tcp/ip,httpserver进行通信。
本实施例的技术方案将动力学模型的拟合分为由粗到精的两个过程,极大减少了动力学模型的拟合难度,提高了样本的利用率、降低了所需采样的数目,在此基础上通过LQR方法,提升了对于高纬度机械臂轨迹的优化效率。
如图8所示,本发明实施例的一种机械臂运动轨迹规划系统200,包括:第一处理模块210、第二处理模块220、第三处理模块230和运行模块240;
所述第一处理模块210用于:在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型;
所述第二处理模块220用于:基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型;
所述第三处理模块230用于:根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数;
所述运行模块240用于:根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环调用第一处理模块210,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹。
较优地,所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻。
本实施例的技术方案将动力学模型的拟合分为由粗到精的两个过程,极大减少了动力学模型的拟合难度,提高了样本的利用率、降低了所需采样的数目,在此基础上通过LQR方法,提升了对于机械臂轨迹的优化效率。
上述关于本实施例的一种机械臂运动轨迹规划系统200中的各参数和各个模块实现相应功能的步骤,可参考上文中关于一种机械臂运动轨迹规划方法的实施例中的各参数和步骤,在此不做赘述。
本发明实施例提供的一种存储介质,包括:存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如一种机械臂运动轨迹规划方法的步骤,具体可参考上文中一种机械臂运动轨迹规划方法的实施例中的各参数和步骤,在此不做赘述。
计算机存储介质例如:优盘、移动硬盘等。
本发明实施例提供的一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,使所述计算机执行如一种机械臂运动轨迹规划方法的步骤,具体可参考上文中一种机械臂运动轨迹规划方法的实施例中的各参数和步骤,在此不做赘述。
所属技术领域的技术人员知道,本发明可以实现为方法、系统、存储介质和电子设备。
因此,本发明可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM),只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (7)
1.一种机械臂运动轨迹规划方法,其特征在于,包括:
S1、在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型;
S2、基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型;
S3、根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数;
S4、根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环执行S1,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹;
所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻;
所述根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型,包括:
基于所述所有的名义轨迹,得到并根据每一时刻的状态动作随机变量,得到对应的高斯分布概率密度函数,并对所有的高斯分布概率密度函数进行拟合,得到所述高斯混合模型概率密度,其中,任意一条名义轨迹为: 所述状态动作随机变量为:[st,at,st+1],st∈R1×m,at∈R1×n,st+1∈R1×m,所述高斯混合模型概率密度为: s0为所述待控制机械臂及环境的初始状态,a0为所述待控制机械臂的初始机械臂动作,st为所述待控制机械臂及环境在t预设时刻的状态,at为所述待控制机械臂在t预设时刻的机械臂动作,zt=[st,at,st+1],K是所述高斯混合模型中的子高斯模型的数量,是第k个高斯分布概率密度函数,ak是状态动作随机变量属于子高斯模型k的概率,μk是子高斯模型k的均值,δk是子高斯模型k的协方差;
根据所述高斯混合模型概率密度,得到所述高斯混合模型的对数似然函数,其中,所述对数似然函数为:
采用EM算法对所述对数似然函数进行估算,得到所述高斯混合模型。
2.根据权利要求1所述的机械臂运动轨迹规划方法,其特征在于,所述S2具体包括:
S21、将所述每一预设时刻的状态动作随机变量[st,at,st+1]代入后验概率估计公式,得到所述每一预设时刻的状态动作随机变量的后验概率估计值γtk;
S22、根据第一预设公式和所述每一预设时刻的状态动作随机变量的后验概率估计向量γt,得到所述每一预设时刻的状态动作随机变量的共轭先验均值并根据所述第二预设公式、所述后验概率估计公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的共轭先验方差
S23、根据第三预设公式和所述每一预设时刻的状态动作随机变量的共轭先验均值得到所述每一预设时刻的状态动作随机变量的概率密度函数均值μt,并根据第四预设公式和所述每一预设时刻的状态动作随机变量的共轭先验方差得到所述每一预设时刻的状态动作随机变量的概率密度函数方差Σt;
S24、根据所述每一预设时刻的状态动作随机变量对应的联合分布方差和第五预设公式,得到所述每一预设时刻的状态动作随机变量对应的并根据所述每一预设时刻的状态动作随机变量对应的联合分布均值和第六预设公式,得到所述每一预设时刻的状态动作随机变量对应的ft;
所述第六预设公式为:
ft=[μ(m+n+1)…μ(2m+n)]T-Fsat[μ(m+n-1)…μ(m+n)]T;
所述第七预设公式为:
4.根据权利要求3所述的机械臂运动轨迹规划方法,其特征在于,所述预设条件为:迭代次数达到预设最大次数或相邻两次循环的状态动作迭代值之差小于第一阈值。
5.一种机械臂运动轨迹规划系统,其特征在于,包括:第一处理模块、第二处理模块、第三处理模块和运行模块;
所述第一处理模块用于:在每一预设时刻内,采用预设线性高斯控制器获取待控制机械臂的至少一条名义轨迹,并根据所有的名义轨迹得到所述待控制机械臂的高斯混合模型;
所述第二处理模块用于:基于所述高斯混合模型,获取所述待控制机械臂在每一预设时刻对应的局部动力学模型;
所述第三处理模块用于:根据LQR算法,获取每个局部动力学模型对应的线性高斯控制器的控制系数;
所述运行模块用于:根据所有的控制系数对所述预设线性高斯控制器进行修正,并将修正后的线性高斯控制器作为所述预设线性高斯控制器并循环调用第一处理模块,直至将符合预设条件的控制系数所对应的修正后的线性高斯控制器确定为目标线性高斯控制器,利用所述目标线性高斯控制器生成所述待控制机械臂的目标运动轨迹;
所述预设线性高斯控制器模型为:p(at|st)=N(Ktst+kt,δat),其中,p(at|st)为所述预设线性高斯控制器模型,Kt为所述预设线性高斯控制器模型在预设时刻t的控制系数,kt为所述预设线性高斯控制器模型在预设时刻t的线性增量,δat为所述预设线性高斯控制器模型在预设时刻t的初始协方差矩阵,t为任一预设时刻;
所述第一处理模块具体用于:
基于所述所有的名义轨迹,得到并根据每一时刻的状态动作随机变量,得到对应的高斯分布概率密度函数,并对所有的高斯分布概率密度函数进行拟合,得到所述高斯混合模型概率密度,其中,任意一条名义轨迹为: 所述状态动作随机变量为:[st,at,st+1],st∈R1×m,at∈R1×n,St+1∈R1×m,所述高斯混合模型概率密度为: s0为所述待控制机械臂及环境的初始状态,a0为所述待控制机械臂的初始机械臂动作,st为所述待控制机械臂及环境在t预设时刻的状态,at为所述待控制机械臂在t预设时刻的机械臂动作,zt=[st,at,st+1],K是所述高斯混合模型中的子高斯模型的数量,是第k个高斯分布概率密度函数,ak是状态动作随机变量属于子高斯模型k的概率,μk是子高斯模型k的均值,δk是子高斯模型k的协方差;
根据所述高斯混合模型概率密度,得到所述高斯混合模型的对数似然函数,其中,所述对数似然函数为:
采用EM算法对所述对数似然函数进行估算,得到所述高斯混合模型。
6.一种存储介质,其特征在于,所述存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如权利要求1至4中任一项所述的机械臂运动轨迹规划方法。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,使所述计算机执行如权利要求1至4中任一项所述的机械臂运动轨迹规划方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729157.2A CN115070764B (zh) | 2022-06-24 | 2022-06-24 | 机械臂运动轨迹规划方法、系统、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729157.2A CN115070764B (zh) | 2022-06-24 | 2022-06-24 | 机械臂运动轨迹规划方法、系统、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115070764A CN115070764A (zh) | 2022-09-20 |
CN115070764B true CN115070764B (zh) | 2023-05-23 |
Family
ID=83256381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210729157.2A Active CN115070764B (zh) | 2022-06-24 | 2022-06-24 | 机械臂运动轨迹规划方法、系统、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115070764B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115958606A (zh) * | 2023-01-10 | 2023-04-14 | 电子科技大学中山学院 | 机械臂避障轨迹规划方法、装置和电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210107142A1 (en) * | 2018-02-27 | 2021-04-15 | Siemens Aktiengesellschaft | Reinforcement learning for contact-rich tasks in automation systems |
CN109702744A (zh) * | 2019-01-15 | 2019-05-03 | 北京工业大学 | 一种基于动态系统模型的机器人模仿学习的方法 |
EP3753684B1 (en) * | 2019-06-21 | 2022-08-10 | Robert Bosch GmbH | Method and system for robot manipulation planning |
CN111002302B (zh) * | 2019-09-09 | 2021-10-22 | 浙江瀚镪自动化设备股份有限公司 | 结合高斯混合模型和动态系统的机械臂抓取轨迹规划方法 |
CN112428278B (zh) * | 2020-10-26 | 2022-11-15 | 北京理工大学 | 机械臂的控制方法、装置及人机协同模型的训练方法 |
-
2022
- 2022-06-24 CN CN202210729157.2A patent/CN115070764B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115070764A (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240131695A1 (en) | Deep reinforcement learning for robotic manipulation | |
US11403513B2 (en) | Learning motor primitives and training a machine learning system using a linear-feedback-stabilized policy | |
Peters et al. | Reinforcement learning by reward-weighted regression for operational space control | |
CN113677485A (zh) | 使用基于元模仿学习和元强化学习的元学习的用于新任务的机器人控制策略的高效自适应 | |
CN109176532B (zh) | 一种机械臂路径规划方法、系统及装置 | |
CN115070764B (zh) | 机械臂运动轨迹规划方法、系统、存储介质和电子设备 | |
Balakrishna et al. | On-policy robot imitation learning from a converging supervisor | |
CN113419424B (zh) | 减少过估计的模型化强化学习机器人控制方法及系统 | |
CN114063446A (zh) | 用于控制机器人设备的方法和机器人设备控制器 | |
CN115351780A (zh) | 用于控制机器人设备的方法 | |
Ijaz et al. | Fractional order modeling and control of twin rotor aero dynamical system using nelder mead optimization | |
US20220410380A1 (en) | Learning robotic skills with imitation and reinforcement at scale | |
Lober et al. | Multiple task optimization using dynamical movement primitives for whole-body reactive control | |
CN114571456B (zh) | 基于机器人技能学习的电连接器装配方法及系统 | |
CN114310888B (zh) | 一种协作机器人可变刚度运动技能学习与调控方法及系统 | |
Geebelen et al. | An experimental test setup for advanced estimation and control of an airbornewind energy system | |
Petrovic et al. | Sim2real deep reinforcement learning of compliance-based robotic assembly operations | |
Mei et al. | Mobile robots path planning based on dynamic movement primitives library | |
Fu et al. | Robot motor skill transfer with alternate learning in two spaces | |
EP3788554B1 (en) | Imitation learning using a generative predecessor neural network | |
EP4017689B1 (en) | Robotics control system and method for training said robotics control system | |
CN117283565B (zh) | 一种基于Actor-Critic网络全状态反馈的柔性关节机械臂控制方法 | |
Mitrovic et al. | Optimal control with adaptive internal dynamics models | |
Huang et al. | Design and experiment of iterative learning controller based on particle swarm optimization approach with new bounded constraints technique | |
Jiang et al. | Repetitive robot visual servoing via segmented gained neural network controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |