CN116476042B - 基于深度强化学习的机械臂运动学逆解优化方法及装置 - Google Patents
基于深度强化学习的机械臂运动学逆解优化方法及装置 Download PDFInfo
- Publication number
- CN116476042B CN116476042B CN202211737134.2A CN202211737134A CN116476042B CN 116476042 B CN116476042 B CN 116476042B CN 202211737134 A CN202211737134 A CN 202211737134A CN 116476042 B CN116476042 B CN 116476042B
- Authority
- CN
- China
- Prior art keywords
- mechanical arm
- inverse
- reinforcement learning
- algorithm
- pseudo
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000002787 reinforcement Effects 0.000 title claims abstract description 58
- 238000005457 optimization Methods 0.000 title claims abstract description 29
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 75
- 238000012549 training Methods 0.000 claims description 50
- 230000006870 function Effects 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 15
- 230000007613 environmental effect Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000000875 corresponding effect Effects 0.000 claims description 5
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 3
- 230000002596 correlated effect Effects 0.000 claims description 3
- 239000003795 chemical substances by application Substances 0.000 description 33
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000005526 G1 to G0 transition Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Manipulator (AREA)
- Feedback Control In General (AREA)
Abstract
本发明涉及机械臂控制领域,具体涉及提供的一种基于深度强化学习的机械臂运动学逆解优化方法、装置、计算机设备以及可读存储介质,采用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ。采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化。在每次循环迭代中,智能体感知当前机械臂所处的环境信息,根据当前的机械臂状态直接输出的最佳取值,可以根据环境状态选择合适的伪逆因子λ,既能保证算法的性能,又能提高算法的执行速度。
Description
技术领域
本发明涉及机械臂控制领域,特别涉及一种基于深度强化学习的机械臂运动学逆解优化方法、装置、计算机设备以及可读存储介质。
背景技术
运动学解算是机械臂控制的基础,运动学逆解是根据机械臂末端的目标位姿求解机械臂关节角的过程。根据建模方式的不同,运动学逆解可以分为几何法和代数法两种。但冗余机械臂的自由度大于笛卡尔空间维度,理论上,其运动学逆解具有无穷多组解,如何从中选择最优解既是重点也是难点。传统冗余机械臂的运动学逆解大多采用数值解法,通过不断循环迭代逼近最优解,并在迭代过程中加入约束条件以满足特定的任务需求。为了保证迭代算法不陷入奇异值,传统的数值算法采用雅可比伪逆法求解运动学逆解。在每个迭代步中加入伪逆因子λ以提升逆解算法在奇异点附近的稳定性和鲁棒性。但伪逆因子λ同时也影响了算法的收敛速度。因而,如何保证算法求解性能的前提下,每一个迭代步都选择合适的伪逆因子以加快迭代法的收敛速度,对于冗余机械臂的运动学逆解有较为重要的研究意义。
现有的运动学逆解算法以固定的伪逆因子λ的处理有两种方法,其一是固定值,其二是倍数法。固定值方法在算法运行之初给定固定的λ值,在算法运行期间不再改变,这种方法的缺点是难以保证算法的收敛性,较大概率在算法运行过程中发散。倍数法是根据当前步与上一步之间的先对误差作比较,若相对误差变小,则按照固定倍数缩小λ,反之,按照固定倍数扩大λ,这种方法一定程度上保证了收敛性,但会导致在某些特殊点附近反复徘徊,降低了算法的执行效率。
发明内容
有鉴于此,本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法、装置、计算机设备以及可读存储介质。
第一方面,本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法,包括:
利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Cr it i c网络;
采用DDPG算法对雅可比伪逆算法中的迭代因子λ进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出λ的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角q、机械臂当前位姿与目标位姿的偏差Δe、智能体上一时刻的控制输出;
所述智能体的输出动作为伪逆因子λ的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于伪逆因子λ选取的策略π,并在产生的伪逆因子λ累加OU噪声;
配置终止训练条件,并在达到终止训练条件时结束强化学习训练。
作为一种可选的方案,还包括:
构造机械臂的可达空间,采用蒙特卡罗法随机抽取较大样本的关节角组合,针对每一个关节角组合,通过运动学正解计算出关节角组合末端的笛卡尔空间位姿,将得到笛卡尔空间位姿绘制成为点云图,完成可达空间的绘制,所述可达空间通过所述点云图的集合近似得到;
采用K-means++聚类法对所述点云图的集合进行聚类,利用距离类中心点的欧氏距离作为依据平均分为多个类;
确定各个分类后,逆解计算开始前,计算目标点与各个聚类中心的距离,选择距离最小的聚类中心点作为迭代初始点,将初始点对应的关节角组合做为运动学逆解的迭代的初始值。
作为一种可选的方案,所述奖励函数定义为:
其中,代表Actor网络生成伪逆因子λ后,新的关节角增量累加得到新的关节角所构成的末端位姿距目标位姿差距的二范数,代表未累加的关节角所构成的末端位姿距目标位姿差距的二范数,sgn为符号函数,cond为判断矩阵条件数的函数,Jacobe函数的作用是计算给定关节角q∈R1×7时的雅可比矩阵,maxCond为矩阵条件数的上限阈值,用于判断机械臂的当前雅可比矩阵是否存在奇异解,奖励函数分为两个部分,包括单步奖励和条件奖励,单步奖励用于在比较智能体选择一定策略后,机械臂末端位姿的移动情况,若朝向目标点,缩小与目标位姿的差距,则给予正向奖励;远离目标点,增大与目标位姿的差距,给予负向惩罚,且奖励值的绝对值与策略前后的范数比值正相关;条件奖励用于若当前策略使机械臂产生奇异构型,则给与惩罚。
作为一种可选的方案,所述配置终止训练条件,并在达到终止训练条件时结束强化学习训练,包括:
单次训练的终止条件有两个:其一是Δe<minE,代表当前位姿已经抵达目标位姿,解算成功,其中mi nE表述目标空间最小化距离值;其二是迭代次数Iter超出最大迭代步数,认为当前解算失败。
作为一种可选的方案,还包括:
为了防止过拟合,每次训练之初,都会运行重置程序重置当前系统环境,并随机生成目标位姿。
作为一种可选的方案,在Cr it i c网络中,需要同时输入动作和观测值,在Cr it i c网络中包含两条路径,其一是观测值的路径,用于对路径的感知,对机械臂的关节角,位姿偏差和Actor网络输出的动作进行观测;其二是动作输入路径,接收对Actor网络的动作进行评价,将两条路径通过附加层合并,通过RELU计算残差后,由输出层输出Cr i t i c网络对于Q值的估计,Actor网络包含一个特征输入层、三个全连接层、两个RELU层和一个TanH非线性激活层。
第二方面,本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化装置,包括:
参数选择单元,用于利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Cr iti c网络;
环境模型单元,用于采用DDPG算法对雅可比伪逆算法中的迭代因子λ进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出λ的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角q、机械臂当前位姿与目标位姿的偏差Δe、智能体上一时刻的控制输出;
奖励函数计算单元,用于所述智能体的输出动作为伪逆因子λ的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于伪逆因子λ选取的策略π,并在产生的伪逆因子λ累加OU噪声;
终止单元,用于配置终止训练条件,并在达到终止训练条件时结束强化学习训练。
第三方面,本发明实施例中提供一种计算机设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的基于深度强化学习的机械臂运动学逆解优化方法。
第四方面,本发明实施例中提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述的基于深度强化学习的机械臂运动学逆解优化方法。
本发明涉及机械臂控制领域,具体涉及提供的一种基于深度强化学习的机械臂运动学逆解优化方法、装置、计算机设备以及可读存储介质,采用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ。采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化。在每次循环迭代中,智能体感知当前机械臂所处的环境信息,根据当前的机械臂状态直接输出的最佳取值,可以根据环境状态选择合适的伪逆因子λ,既能保证算法的性能,又能提高算法的执行速度。
附图说明
图1为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法的流程图;
图2为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法中Actor网络和Cr i t i c网络结构示意图;
图3为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法中基于DDPG的运动学逆解算法框图;
图4为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法中DDPG逆解算法MATLAB仿真示意图;
图5为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法中DDPG逆解算法训练过程图;
图6为本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化装置的结构框图;
图7为本发明实施例中提供一种计算机设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
结合图1所示,本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化方法,包括:
S101、利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Cr it ic网络。
S102、采用DDPG算法对雅可比伪逆算法中的迭代因子λ进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出λ的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角q、机械臂当前位姿与目标位姿的偏差Δe、智能体上一时刻的控制输出。
S103、所述智能体的输出动作为伪逆因子λ的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于伪逆因子λ选取的策略π,并在产生的伪逆因子λ累加OU噪声。
S104、配置终止训练条件,并在达到终止训练条件时结束强化学习训练。
在S101中,采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化。
在S103中,可以加入上一节中所述的OU噪声,OU噪声即Ornstei n-Uh l enbeck噪声,OU噪声是一个有一定自回归的噪声,可以保证探索范围。
结合图2所示,在一些实施例中,在Cr it i c网络中,需要同时输入动作和观测值,在Cr i t i c网络中包含两条路径,其一是观测值的路径,用于对路径的感知,对机械臂的关节角,位姿偏差和Actor网络输出的动作进行观测;其二是动作输入路径,接收对Actor网络的动作进行评价,将两条路径通过附加层合并,通过RELU计算残差后,由输出层输出Cr i t i c网络对于Q值的估计,Actor网络包含一个特征输入层、三个全连接层、两个RELU层和一个TanH非线性激活层。
在一些实施例中,方法还包括:
构造机械臂的可达空间,为了保证所构建可达空间的完整性,采用蒙特卡罗法随机抽取较大样本的关节角组合,针对每一个关节角组合,通过运动学正解计算出关节角组合末端的笛卡尔空间位姿,将得到笛卡尔空间位姿绘制成为点云图,完成可达空间的绘制,所述可达空间通过所述点云图的集合近似得到。
采用K-means++聚类法对所述点云图的集合进行聚类,利用距离类中心点的欧氏距离作为依据平均分为多个类;
确定各个分类后,逆解计算开始前,计算目标点与各个聚类中心的距离,选择距离最小的聚类中心点作为迭代初始点,将初始点对应的关节角组合做为运动学逆解的迭代的初始值。
为了保证强化学习能够加速逆解迭代,设置合理的奖励函数是必要的,它能够加速训练过程并带来良好的训练效果。从逆解算法的迭代过程中可以看出,逆解是一种不断逼近目标的过程,其迭代步数受每一步的前进步长所限制,因此,所述奖励函数定义为:
其中,代表Actor网络生成伪逆因子λ后,新的关节角增量累加得到新的关节角所构成的末端位姿距目标位姿差距的二范数,代表未累加的关节角所构成的末端位姿距目标位姿差距的二范数,sgn为符号函数,cond为判断矩阵条件数的函数,Jacobe函数的作用是计算给定关节角q∈R1×7时的雅可比矩阵,maxCond为矩阵条件数的上限阈值,用于判断机械臂的当前雅可比矩阵是否存在奇异解,奖励函数分为两个部分,包括单步奖励和条件奖励,单步奖励用于在比较智能体选择一定策略后,机械臂末端位姿的移动情况,若朝向目标点,缩小与目标位姿的差距,则给予正向奖励;远离目标点,增大与目标位姿的差距,给予负向惩罚,且奖励值的绝对值与策略前后的范数比值正相关;条件奖励用于若当前策略使机械臂产生奇异构型,则给与惩罚。
在一些实施例中,在S103中所述配置终止训练条件,并在达到终止训练条件时结束强化学习训练,包括:
单次训练的终止条件有两个:其一是Δe<minE,代表当前位姿已经抵达目标位姿,解算成功,其中mi nE表述目标空间最小化距离值;其二是迭代次数Iter超出最大迭代步数,认为当前解算失败。
结合图3所示,为了方便理解本发明实施例中提供的基于深度强化学习的机械臂运动学逆解优化方法,图中展示了基于DDPG的运动学逆解算法框图,并进一步提供相对应算法的伪代码流程如表1所示:
表1基于DDPG的机械臂运动学逆解算法伪代码
结合图4所示展示了DDPG逆解算法MATLAB仿真图,DDPG是一种深度强化学习算法,要对智能体进行训练以提高决策能力,在MATLAB中建立模型对智能体进行仿真训练,仿真模型包含智能体、环境模型、观测模块、奖励函数计算模块和终止条件模块五个组成部。
结合图5所示,在一些实施例中,方法还包括:
为了防止过拟合,每次训练之初,都会运行重置程序重置当前系统环境,并随机生成目标位姿。
图5中示出了基于DDPG的逆解算法训练过程,为方便区分,图中的1号点线代表单次训练的奖励值,2号代表平均奖励值,3号线代表期望奖励。从训练曲线可以看出,在训练初期的前50次迭代,智能体以探索为主,这时的λ取值不稳定,曲线如图中所示。这也导致逆解算法不稳定,造成了末端在笛卡尔空间的振荡,难以收敛,此时的惩罚值较大,使得Cr iti c计算得到的Q值较小。在训练中期,积累了一定经验后,Actor在选择策略时,会偏重期望回报较大的策略,此时的λ取值能够在一定程度上促进逆解迭代算法的收敛。在此阶段,每次训练的奖励值在上升,相应的平均奖励和期望回报也在上升。在300次循环之后,训练进入稳定期,此时,算法的奖励惩罚值基本保持在了0点附近,说明单次解算迭代的次数已经能够得到有效控制,并在这期间保证远离奇异构型。表2为DDPG的训练参数表
表2DDPG训练参数表
训练结束后,通过1000次随机试验对比了算法的性能,其结果如表3所示。
表3逆解算法的平均迭代次数对比
从表中可以看出,基于DDPG逆解算法相较于原始逆解算法,有28.5%的性能提升,且算法在求解性能上与与算法保持一致。
本发明实施例中提供的一种基于深度强化学习的机械臂运动学逆解优化方法,采用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ。采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化。在每次循环迭代中,智能体感知当前机械臂所处的环境信息,根据当前的机械臂状态直接输出的最佳取值,可以根据环境状态选择合适的伪逆因子λ,既能保证算法的性能,又能提高算法的执行速度。
结合图6所示,相应地,本发明实施例中提供一种基于深度强化学习的机械臂运动学逆解优化装置,包括:
参数选择单元601,用于利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Cr itic网络;
环境模型单元602,用于采用DDPG算法对雅可比伪逆算法中的迭代因子λ进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出λ的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角q、机械臂当前位姿与目标位姿的偏差Δe、智能体上一时刻的控制输出;
奖励函数计算单元603,用于所述智能体的输出动作为伪逆因子λ的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于伪逆因子λ选取的策略π,并在产生的伪逆因子λ累加OU噪声;
终止单元604,用于配置终止训练条件,并在达到终止训练条件时结束强化学习训练。
本发明涉及机械臂控制领域,具体涉及提供的一种基于深度强化学习的机械臂运动学逆解优化装置,采用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ。采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化。在每次循环迭代中,智能体感知当前机械臂所处的环境信息,根据当前的机械臂状态直接输出的最佳取值,可以根据环境状态选择合适的伪逆因子λ,既能保证算法的性能,又能提高算法的执行速度。
相应地,根据本发明的实施例,本发明还提供了一种计算机设备、一种可读存储介质和一种计算机程序产品。
图7为本发明实施例中提供的一种计算机设备12的结构示意图。图7示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图7显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机设备12以通用计算设备的形式表现。计算机设备12旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM、DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAI D系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的基于深度强化学习的机械臂运动学逆解优化方法。
本发明实施例中还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时本申请所有发明实施例提供的基于深度强化学习的机械臂运动学逆解优化方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、Sma l l ta l k、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本发明实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述的基于深度强化学习的机械臂运动学逆解优化方法。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (7)
1.一种基于深度强化学习的机械臂运动学逆解优化方法,其特征在于,包括:
利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Critic网络;
采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出/>的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角/>、机械臂当前位姿与目标位姿的偏差/>、智能体上一时刻的控制输出;
所述智能体的输出动作为伪逆因子的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于/>选取的策略/>,并在产生的伪逆因子/>累加OU噪声;配置终止训练条件,并在达到终止训练条件时结束强化学习训练;
构造机械臂的可达空间,采用蒙特卡罗法随机抽取较大样本的关节角组合,针对每一个关节角组合,通过运动学正解计算出关节角组合末端的笛卡尔空间位姿,将得到笛卡尔空间位姿绘制成为点云图,完成可达空间的绘制,所述可达空间通过所述点云图的集合近似得到;
采用K-means++聚类法对所述点云图的集合进行聚类,利用距离类中心点的欧氏距离作为依据平均分为多个类;
确定各个分类后,逆解计算开始前,计算目标点与各个聚类中心的距离,选择距离最小的聚类中心点作为迭代初始点,将初始点对应的关节角组合做为运动学逆解的迭代的初始值;
奖励函数定义为:
其中,,代表Actor网络生成伪逆因子/>后,新的关节角增量累加得到新的关节角所构成的末端位姿距目标位姿差距的二范数,,代表未累加的关节角所构成的末端位姿距目标位姿差距的二范数,sgn为符号函数,cond为判断矩阵条件数的函数,Jacobe函数的作用是计算给定关节角/>时的雅可比矩阵,maxCond为矩阵条件数的上限阈值,用于判断机械臂的当前雅可比矩阵是否存在奇异解,奖励函数分为两个部分,包括单步奖励和条件奖励,单步奖励用于在比较智能体选择一定策略后,机械臂末端位姿的移动情况,若朝向目标点,缩小与目标位姿的差距,则给予正向奖励;远离目标点,增大与目标位姿的差距,给予负向惩罚,且奖励值的绝对值与策略前后的范数比值正相关;条件奖励用于若当前策略使机械臂产生奇异构型,则给与惩罚。
2.根据权利要求1所述的基于深度强化学习的机械臂运动学逆解优化方法,其特征在于,所述配置终止训练条件,并在达到终止训练条件时结束强化学习训练,包括:
单次训练的终止条件有两个:其一是,代表当前位姿已经抵达目标位姿,解算成功,其中minE表述目标空间最小化距离值;其二是迭代次数Iter超出最大迭代步数,认为当前解算失败。
3.根据权利要求1所述的基于深度强化学习的机械臂运动学逆解优化方法,其特征在于,还包括:
为了防止过拟合,每次训练之初,都会运行重置程序重置当前系统环境,并随机生成目标位姿。
4.根据权利要求1所述的基于深度强化学习的机械臂运动学逆解优化方法,其特征在于,在Critic网络中,需要同时输入动作和观测值,在Critic网络中包含两条路径,其一是观测值的路径,用于对路径的感知,对机械臂的关节角,位姿偏差和Actor网络输出的动作进行观测;其二是动作输入路径,接收对Actor网络的动作进行评价,将两条路径通过附加层合并,通过RELU计算残差后,由输出层输出Critic网络对于Q值的估计,Actor网络包含一个特征输入层、三个全连接层、两个RELU层和一个TanH非线性激活层。
5.一种基于深度强化学习的机械臂运动学逆解优化装置,使用权利要求1所述的基于深度强化学习的机械臂运动学逆解优化方法,其特征在于,包括:
参数选择单元,用于利用DDPG深度强化学习算法作为智能体,根据机械臂的运动状态和算法的参数选择作为适合的伪逆因子λ,所述智能体具有Actor网络和Critic网络;
环境模型单元,用于采用DDPG算法对雅可比伪逆算法中的迭代因子进行优化,在每次循环迭代中,所述智能体感知所述机械臂当前所处的环境信息,根据所述机械臂当前所处状态直接输出/>的最佳取值,其中所述智能体所感知的环境信息包含机械臂的当前关节角/>、机械臂当前位姿与目标位姿的偏差/>、智能体上一时刻的控制输出;
奖励函数计算单元,用于所述智能体的输出动作为伪逆因子的取值,设置奖励函数并利用强化学习训练所述智能体中Actor网络对于伪逆因子/>选取的策略/>,并在产生的伪逆因子/>累加OU噪声;
终止单元,用于配置终止训练条件,并在达到终止训练条件时结束强化学习训练。
6.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至4中任一项所述的基于深度强化学习的机械臂运动学逆解优化方法。
7.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至4中任一项所述的基于深度强化学习的机械臂运动学逆解优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211737134.2A CN116476042B (zh) | 2022-12-31 | 2022-12-31 | 基于深度强化学习的机械臂运动学逆解优化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211737134.2A CN116476042B (zh) | 2022-12-31 | 2022-12-31 | 基于深度强化学习的机械臂运动学逆解优化方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116476042A CN116476042A (zh) | 2023-07-25 |
CN116476042B true CN116476042B (zh) | 2024-01-12 |
Family
ID=87216580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211737134.2A Active CN116476042B (zh) | 2022-12-31 | 2022-12-31 | 基于深度强化学习的机械臂运动学逆解优化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116476042B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117140527B (zh) * | 2023-09-27 | 2024-04-26 | 中山大学·深圳 | 一种基于深度强化学习算法的机械臂控制方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111645065A (zh) * | 2020-03-25 | 2020-09-11 | 南京大学 | 一种基于深度强化学习的机械臂运动规划方法 |
CN112171660A (zh) * | 2020-08-18 | 2021-01-05 | 南京航空航天大学 | 一种基于深度强化学习的空间双臂系统约束运动规划方法 |
CN113510704A (zh) * | 2021-06-25 | 2021-10-19 | 青岛博晟优控智能科技有限公司 | 一种基于强化学习算法的工业机械臂运动规划方法 |
CN113916254A (zh) * | 2021-07-22 | 2022-01-11 | 北京控制工程研究所 | 一种停靠式抓捕的航天器自主交会对接试验方法 |
CN114675535A (zh) * | 2022-03-07 | 2022-06-28 | 大连理工大学 | 一种基于强化学习的航空发动机过渡态寻优控制方法 |
CN114819143A (zh) * | 2022-04-15 | 2022-07-29 | 北京邮电大学 | 一种适用于通信网现场维护的模型压缩方法 |
-
2022
- 2022-12-31 CN CN202211737134.2A patent/CN116476042B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111645065A (zh) * | 2020-03-25 | 2020-09-11 | 南京大学 | 一种基于深度强化学习的机械臂运动规划方法 |
CN112171660A (zh) * | 2020-08-18 | 2021-01-05 | 南京航空航天大学 | 一种基于深度强化学习的空间双臂系统约束运动规划方法 |
CN113510704A (zh) * | 2021-06-25 | 2021-10-19 | 青岛博晟优控智能科技有限公司 | 一种基于强化学习算法的工业机械臂运动规划方法 |
CN113916254A (zh) * | 2021-07-22 | 2022-01-11 | 北京控制工程研究所 | 一种停靠式抓捕的航天器自主交会对接试验方法 |
CN114675535A (zh) * | 2022-03-07 | 2022-06-28 | 大连理工大学 | 一种基于强化学习的航空发动机过渡态寻优控制方法 |
CN114819143A (zh) * | 2022-04-15 | 2022-07-29 | 北京邮电大学 | 一种适用于通信网现场维护的模型压缩方法 |
Non-Patent Citations (1)
Title |
---|
A tree-based planner for active localisation: Applications to Autonomous Underwater Vehicles;Yvan Petillot等;《Proceedings ELMAR-2010》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116476042A (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111539514B (zh) | 用于生成神经网络的结构的方法和装置 | |
CN109716361B (zh) | 执行触摸运动预测的深度机器学习 | |
CN111667056B (zh) | 用于搜索模型结构的方法和装置 | |
CN109690576A (zh) | 在多个机器学习任务上训练机器学习模型 | |
CN110909877A (zh) | 神经网络模型结构搜索方法、装置、电子设备及存储介质 | |
CN112488183B (zh) | 一种模型优化方法、装置、计算机设备及存储介质 | |
CN111753914A (zh) | 模型优化方法和装置、电子设备及存储介质 | |
CN116476042B (zh) | 基于深度强化学习的机械臂运动学逆解优化方法及装置 | |
CN111145076A (zh) | 数据并行化处理方法、系统、设备及存储介质 | |
EP3973712A1 (en) | Small and fast video processing networks via neural architecture search | |
CN104021226A (zh) | 预取规则的更新方法及装置 | |
CN115936802A (zh) | 基于用户画像和序列建模的个性化营销方法、装置、设备和存储介质 | |
CN110674397B (zh) | 年龄点预测模型的训练方法及装置、设备与可读介质 | |
CN115936248A (zh) | 基于注意力网络的电力负荷预测方法、装置及系统 | |
CN118742925A (zh) | 使用神经网络跟踪视频中的查询点 | |
CN110850982A (zh) | 基于ar的人机交互学习方法、系统、设备及存储介质 | |
CN112580723B (zh) | 多模型融合方法、装置、电子设备和存储介质 | |
CN113408070B (zh) | 发动机参数的确定方法、装置、设备及存储介质 | |
CN112862017B (zh) | 点云数据的标注方法、装置、设备和介质 | |
CN117933350A (zh) | 多智能体强化学习系统、方法、电子设备及存储介质 | |
CN110728355A (zh) | 神经网络架构搜索方法、装置、计算机设备及存储介质 | |
CN114757131A (zh) | 适用于cfd不确定度量化的代理模型的优化方法及相关设备 | |
US10268930B2 (en) | Image processing system and method for identifying content within image data using markov random fields | |
CN115841343A (zh) | 一种销售额度的确定方法及装置 | |
CN111340222B (zh) | 神经网络模型搜索方法、装置以及电子设备 |
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 |