1.一种基于正向运动学的机械臂深度确定性策略梯度训练方法,其特征在于,包括以下步骤:S1.搭建仿真环境中的机械臂训练环境,确定每回合训练步数T和训练回合数M;S2.根据机械臂类型建立机械臂正向运动学模型:输入机械臂j个关节角度为(θ1,θ2…θj)得到末端执行器位姿P=f(θ1,θ2…θj);S3.建立actor模块和critic模块;建立一个经验池,每次智能体与环境交互产生的经验称为一个transition(s,a,r,s′)并将此次transition存入经验池,其中,s为当前状态,a为当前动作由机械臂j个关节角度表示a=(θ1,θ2…θj),s′为下一状态,r为观察s′后根据奖惩函数R得到的奖励值;S4.达到训练步数T后从经验池中抽取经验更新actor和critic模块,进行动态规划:从经验池中抽取未完成任务的transition0(s0,a0,r0,s′0),并向transition0中的a0添加n次噪声,生成n个不同的动作a1,a2...an,此后将a0,a1,a2...an分别输入f(θ1,θ2…θj),得到transitionk(sk,ak,rk,s′k),k=0,1,2...n,将最大奖励值rk所在的transitionk记为transitionmax(smax,amax,rmax,s′max),并将transitionmax替换经验池中transitiono,之后将transitionmax中的s′max作为动态规划中一回合的初始状态输入actor网络,将actor网络输出的动作再输入f(θ1,θ2…θj),得到此动作之后的transition,并存储在经验池中;重复此过程直至达到每回合训练步数T,从经验池中抽取经验再次更新actor和critic模块;S5.重复步骤S4,直到达到训练回合数M。2.根据权利要求1所述基于正向运动学的机械臂深度确定性策略梯度训练方法,其特征在于,所述步骤S1包括以下步骤:S11 .使用开源仿真平台搭建实验环境,确定物理引擎,将用于完成任务的机械臂导入此仿真平台搭建的实验环境中;S12.设定机械臂的控制任务;根据机械臂的控制任务设计奖惩函数R;每回合训练步数T是指每回合智能体与环境交互的次数;训练回合数M和训练步数T由实际训练效果决定;S13.定义机械臂控制任务的动作空间和状态空间;动作空间A中动作a为机械臂的j个关节角度记为a=(θ1,θ2…θj);关节的角度范围l=1,2...j,为关节最
小角度,为关节最大角度;状态空间S中状态s由末端执行器位姿p(x,y,z,α,β,γ)和
步骤S12所设定的机械臂控制任务决定,记为s=(p,sd),其中(x,y,z)为末端执行器位置,(αβ,γ)为末端执行器姿态,sd为状态s中不包括末端执行器位姿p的部分。3.根据权利要求2所述基于正向运动学的机械臂深度确定性策略梯度训练方法,其特征在于,所述步骤S3包括以下步骤:S31 .建立智能体的actor模块,将状态s输入actor模块,actor模块输出智能体的下一步动作a;S32.建立智能体的critic模块,将状态s和动作a作为critic模块的输入,critic模块输出一个评价该次动作a的值Q(s,a);S33 .当前actor网络和critic网络更新后,目标actor网络和critic网络才会开始更新。4.根据权利要求3所述基于正向运动学的机械臂深度确定性策略梯度训练方法,其特征在于,所述步骤S4包括以下步骤:S41 .智能体与环境交互达到每回合训练步数T后,从经验池中抽取经验更新actor与critic模块后,进行动态规划,S42.critic模块包含了两个结构完全相同的网络模型:当前critic网络Q(s,a|θQ)和目标critic网络Q′(s,a|θQ′);actor模块包含了两个结构完全相同的网络模型:当前actor网络μ(s|θμ)和目标actor网络μ′(s|θμ′);其中θQ和θQ′分别为Q和Q′的参数,θμ和θμ′分别为μ和μ′参数,Q和Q′的输入为状态s和动作a,输出为评价该次动作a的值,μ和μ′的输入为状态s,输出为智能体的下一步动作;S43.采用TD‑error方式,对参数θQ的更新,损失函数L为:其中,i=1,2...N,N为批量抽取经验的数目,Yi=Ri+Q′(Si+1,μ′(Si+1|θμ′)|θQ′),Yi为损失函数L中的目标值;从经验池中抽取的transition(s,a,r,s′)和transitionm(sm,am,rm,s′m),Si为状态s和sm组成的集合,Ai为动作a和am组成的集合,Ri为奖励值r和rm组成的集合,Si+1为状态s′和s′m组成的集合;求得损失函数L针对θQ的梯度对其进行梯度下降,得到更新后的θQ;μ的网络参数θμ的更新,遵循确定性策略,其梯度下降公式为:其中,a=μ(Si|θμ),表示对a求导,表示对θμ求导;
Q′和μ′采用软更新方式:θQ′←τθQ+(1‑τ)θQ′θμ′←τθμ+(1‑τ)θμ′其中,τ为平衡因子;S44.利用步骤S43的公式更新actor和critic模块,如果样本数量达到经验池的最大样本数量,则用最新的样本替换旧的样本。5.根据权利要求4所述基于正向运动学的机械臂深度确定性策略梯度训练方法,其特征在于,所述步骤S41包括以下步骤:S41a .从经验池中抽取未完成任务的transition0(s0,a0,r0,s′0),所述未完成任务的transition0是指智能体执行a0并没有完成任务;S41b.向a0添加n次噪声εi,生成新的探索性动作ai=a0+εi,i=1,2...n,εi是指向a0中添加服从高斯分布或OU分布的噪声,从而形成新的动作i=1 ,2...n,关
节的角度如下:S41c .将a i分别输入f (θ1 ,θ2…θj) ,得到这些动作之后的末端执行器位姿P k和
transitionk(s0,ak,rk,s′k),k=0,1,2...n;中由确定;若Pk超出机械臂控制任务的工作空间,则剔除此transitionk;S41d .将最大rk所在的transitionk记为transitionmax(smax,amax,rmax,s ′max),并将transitionmax替换经验池中transition0,此过程使经验池中的经验更具更新网络的价值;S41e.将transitionmax中的s′max作为动态规划中一回合的初始状态输入actor网络,将actor网络输出的动作再输入f(θ1,θ2…θj),得到此动作之后的transition,并存储在经验池中;重复此过程直至达到每回合训练步数T,从经验池中抽取经验再次更新actor和critic模块,动态规划过程中的transition记为transitionm(sm,am,rm,s′m)。