CN115091469A - 一种基于最大熵框架的深度强化学习机械臂运动规划方法 - Google Patents

一种基于最大熵框架的深度强化学习机械臂运动规划方法 Download PDF

Info

Publication number
CN115091469A
CN115091469A CN202210936717.1A CN202210936717A CN115091469A CN 115091469 A CN115091469 A CN 115091469A CN 202210936717 A CN202210936717 A CN 202210936717A CN 115091469 A CN115091469 A CN 115091469A
Authority
CN
China
Prior art keywords
mechanical arm
network
actor
target
motion
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.)
Granted
Application number
CN202210936717.1A
Other languages
English (en)
Other versions
CN115091469B (zh
Inventor
程良伦
胡博
王涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN202210936717.1A priority Critical patent/CN115091469B/zh
Publication of CN115091469A publication Critical patent/CN115091469A/zh
Application granted granted Critical
Publication of CN115091469B publication Critical patent/CN115091469B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明公开了一种基于最大熵框架的深度强化学习机械臂运动规划方法,包括:在机械臂运动前采集一次环境信息,所述的环境信息包括初始状态下的机械臂状态信息、运动目标点和中间障碍物信息,得到规划空间;建立机械臂运动学模型,将采集到的状态信息通过正运动学运算得到机械臂末端点位置信息,构造环境观察信息;将环境观察信息作为MDP模型的状态量,定义机械臂的动作空间以及奖励函数;基于深度强化学习算法,根据状态量得到机械臂速度增量,通过将返回分布函数嵌入最大熵来动态调整Q的范围,缓解传统强化学习的Q值的高估情况,为机械臂规划取得无碰策略;同时利用重组轨迹的方法,充分探索受限空间,提升机械臂规划的速度。

Description

一种基于最大熵框架的深度强化学习机械臂运动规划方法
技术领域
本发明涉及了机器人在受限空间中作业规划的算法研究,更具体的是如何提高机器人在受限空间中作业规划效率的研究。
背景技术
机器人在受限空间进行作业需要在有障碍物约束的环境下,自主地从当前的位置快速无碰撞地运动到给定的位置。通过给定起始位置和终点位置,在机器人的工作空间中寻找到一条符合一定约束的路径,如:无碰撞,路径最短等。传统的路径规划算法有蚁群算法、人工势场法、遗传算法、栅格法等。首先需要对障碍物的空间进行精确的建模,然后才能在建模的空间中使用这些规划算法进行规划,在高维空间中建立精确的障碍物映射是非常复杂的。除了障碍物的映射,这些算法在高维情况下的规划计算复杂度也呈指数型增长,往往导致难以实时规划。为了成功在受限空间中进行路径规划,我们采用深度强化学习算法,本算法不需要对障碍物进行精准建模,只需要在类似的仿真环境下训练好,利用从仿真环境中学到的策略,将其应用到实际场景中。在真实环境中通过相机获取机器人当前的状态,并根据当前的状态采取相应的策略,最终到达终点位置,该方法更具有鲁棒性。
发明内容
本发明的目的是提供一种基于最大熵框架的深度强化学习机械臂运动规划方法,用于在提高机器人在受限空间中的探索能力以及提高策略评估的准确性。
为了实现上述任务,本发明采用以下技术方案:
一种基于最大熵框架的深度强化学习机械臂运动规划方法,包括:
在机器人的机械臂运动前采集一次环境信息,所述的环境信息包括初始状态下的机械臂状态信息、运动目标点和中间障碍物信息,得到规划空间;
建立机械臂运动学模型,根据采集到的机械臂状态信息通过正运动学运算得到机械臂末端点位置和与目标点的距离,构造环境观察信息;
将环境观察信息作为MDP模型的状态量,定义机械臂的动作空间以及避障奖励函数;
利用基于深度强化学习算法的强化学习算法,根据状态量通过得到机械臂速度增量,在规划空间中为机械臂规划运动策略并取得无碰运动策略,使得机械臂能够在避开障碍物的前提下稳定的运动到目标位置。
进一步地,初始状态下的机械臂状态信息为机械臂关节位置q,初始为0;运动目标点为人为设定的焊接点,包含坐标信息goal;中间的障碍物信息采用包络盒生成,包括机械臂本体和场景障碍,构成初始规划空间Ω。
进一步地,所述建立机械臂运动学模型,根据采集到的机械臂状态信息通过正运动学运算得到机械臂末端点位置和与目标点的距离,构造环境观察信息,包括:
建立6轴机械臂运动学模型,并构建DH参数表;根据采集到的机械臂关节位置q,利用齐次变换矩阵求解出机械臂焊枪末端的空间位置grip,求解与该位置目标点的距离dis=||grip-goal||,设置是否发生碰撞的碰撞标志位colli,从而构造环境观察信息。
进一步地,所述将环境观察信息作为MDP模型的状态量,定义机械臂的动作空间以及避障奖励函数,包括:
建立MDP模型,由机械臂关节位置、机械臂末端点位置、目标点位置、机械臂末端位置与目标点距离以及碰撞标志位构成状态量st=[q,grip,goal,colli],由机械臂关节速度构成动作
Figure BDA0003783728820000021
其中关节速度
Figure BDA0003783728820000022
是关节角度q的导数,关节角度的动作空间为Π=[-π,+π],以及定义奖励函数如下:
Figure BDA0003783728820000023
其中colli为1表示发生碰撞,为0表示没有发生碰撞。
进一步地,所述根据状态量通过得到机械臂速度增量,在规划空间中为机械臂规划运动策略并取得无碰运动策略,包括:
机械臂运动策略,是基于最大熵策略的深度强化学习网络训练模型,包括Actor网络的构建和Critic网络的构建;Actor网络的输入为当前的状态st,输出为机械臂6轴各关节的角速度,经过设定回合的训练,网络最终的输出即为无碰运动策略;
设置Actor网络和Critic网络的网络结构为256×256×256,隐藏层均使用ReLU作为激活函数,Actor网络的输出层使用tanh作为激活函数,其输出范围为[-1,1],对应了机械臂关节的速度,Critic网络的输出层使用ReLU作为激活函数,同时Actor网络和Critic网络输出对应的熵;设置与Actor网络和Critic网络规模大小一样的目标网络:Actor_target网络和Crtic_target网络,其中Actor_target网络的输出作为最终的无碰规划决策,设置最大训练回合与每个回合最大步数为T。
进一步地,所述网络模型的训练过程包括:
步骤4.1,初始化Actor网络、Critic网络、Actor_target网络和Crtic_target网络参数
Figure BDA0003783728820000031
θ、
Figure BDA0003783728820000032
θtarget
步骤4.2,在每一个训练回合开始时,机械臂的六个关节复位到初始位置q=[0,0,0,0,0,0];
步骤4.3,对于每一个回合,Actor网络根据当前状态st输出机械臂的六轴关节速度的动作,通过下式表示当前状态下输出的动作at
Figure BDA0003783728820000033
其中t表示当前时刻,
Figure BDA0003783728820000034
表示Actor网络参数,
Figure BDA0003783728820000035
表示Actor网络训练的结果,即无碰动作策略,由执行动作后的新位置向量转到t+1时刻的下一个状态st+1,获得即时奖励值rt;由每回合的最大步数T,每一步记录状态st,将这些状态集合为运动轨迹τ1=[s1,s2,…sT],下一个回合同样可以生成运动轨迹τ2=[s′1,s′2,…s′T];
步骤4.4,在两条运动轨迹τ1和轨迹τ2中,选择轨迹的最后一个状态最接近目标点的轨迹记为τclosest,并将所述最后一个状态作为新目标;在另外一条轨迹中随机选择k个状态,重新计算这k个状态与新目标的奖励函数rt,并替换τclosest中相应的状态,重组成采样轨迹τ,存入缓存区R作为训练样本,更新Actor和Critic网络参数;
步骤4.5,Critic网络的输出服从高斯分布,相应的Critic网络的损失函数如下:
Figure BDA0003783728820000041
其中Qtarget(st,at)是Crtic_target网络的输出值,Qθ(st,at)是Crtic网络的输出,q_r为标准差,
Figure BDA0003783728820000042
πθ(at|st)表示当前状态下输出的动作,E(·)表示期望;基于标准的反向传播方法,可以求出Critic网络参数θ的梯度;
步骤4.6,当训练回合数等于预设的最大回合数时,结束训练,得到最终训练后的Actor网络,即得到规划空间下机械臂的最优运动策略。
进一步地,所述网络参数更新步骤如下:
(1)初始化Actor的网络参数
Figure BDA0003783728820000043
和Critic的神经网络参数θ;
(2)将网络参数
Figure BDA0003783728820000044
网络参数θ复制到对应的Actor_target网络
Figure BDA0003783728820000045
和Crtic_target网络θtarget作为这两个网络的参数:
(3)初始化预设内存缓存区R;
(4)从1到每回合最大步数T进行循环:
根据Actor网络输出一个动作at,发送给机械臂并执行;环境执行at,返回新的状态st+1,将这个状态的转换过程(st,at,st+1,rt)存入轨迹τ1和轨迹τ2中,并存入内存缓冲区R中;
(5)达到回合最大步数T后,从内存缓冲区R中随机选择两条轨迹,通过随机剪切重组样本轨迹,并计算奖励,作为网络的训练数据集,用(st,at,st+1,rt)表示其中单个训练数据;
(6)计算训练Critic网络的梯度:定义Q值函数Q(st,at)如下:
Q(st,at)=E[r(st,at)+γαVsoft(st+1)]
Vsoft(st)=E[Qθ(st,at)-αlogπθ(at|st)]
其中E[·]表示期望,r(st,at)表示当前状态st执行动作at所能得到的奖励函数,πθ(at|st)表示当前状态下输出的动作,Vsoft(st)表示软更新的Q值,即此时的状态st和执行动作at的价值,γ是折扣因子,α为熵权重,通过Critic网络的输出Qθ(st,at)和标准差q_r,将输出限制在[Qθ(st,at)-q_r,Qθ(st,at)+q_r]中;
(7)更新Critic网络,采用Adam optimizer更新;
(8)计算Actor网络的策略梯度,定义损失函数如下:
Figure BDA0003783728820000051
其中α为熵权重,
Figure BDA0003783728820000052
表示当前状态下输出的动作at的熵,Qθ(st,at)是Critic网络的输出值;
(9)更新Actor网络,采用Adam optimizer更新;
(10)软更新Critic目标网络和Actor目标网络θtarget
Figure BDA0003783728820000053
(11)结束该回合;
(12)结束循环。
与现有技术相比,本发明具有以下技术特点:
对深度强化学习中环境进行了定义,定义了连续空间下机械臂路径规划环境中状态,动作以及奖励函数,在算法上,通过将返回分布函数嵌入最大熵来动态调整Q的范围,缓解了传统强化学习存在的Q值的高估情况;同时利用重组轨迹经验重放的方法,充分探索受限空间,提高算法的收敛速度。
附图说明
图1为本发明一个实施例中方法的框架图;
图2为机械臂规划流程图;
图3为改进Critic网络动态调整Q的网络图;
图4为本发明方法与现有的SAC、TD3、DDPG算法的规划结果图。
具体实施方式
本方法是将基于最大熵的深度强化学习方法和基于事后经验回访结合起来的方法,通过API方式获取机器人在环境中的状态作为输入,构建Actor网络和Critic网络,Actor网络用于输出当前状态下的策略,即当前状态下机器人所采取的动作,而Critic网络则用于输出Q值(强化学习中的动作函数值),即当前状态下所采取的动作后的得分,用于指导Actor网络的学习,使机器人在受限空间中的每一个状态都做出正确的选择,从起始位置能无碰撞地、路径最短地到达最终位置。为了提高机器人在受限空间中的作业规划效率,利用重组轨迹经验重放的方法调整机器人对受限空间的探索能力,使机器人充分探索受限空间;同时利用改进Critic网络估计Q值的方法,防止***和消失梯度。
参见附图1至4,本发明的一种基于最大熵框架的深度强化学习机械臂运动规划方法,用于在狭窄空间下为六轴机械臂焊接机器人进行工作路径的规划;包括以下步骤:
步骤1,在机械臂运动前采集一次环境信息,所述的环境信息包括初始状态下的机械臂状态信息、运动目标点和中间障碍物信息,得到规划空间。
其中,初始状态下的机械臂状态信息为机械臂关节位置q,初始为0;运动目标点为人为设定的焊接点,包含坐标信息goal;中间的障碍物信息采用AABB包络盒生成,包括机械臂本体和场景障碍,构成初始规划空间Ω。
步骤2,建立机械臂运动学模型,根据采集到的机械臂状态信息通过正运动学运算得到机械臂末端点位置grip和与目标点goal的距离dis,构造环境观察信息。
建立6轴机械臂运动学模型,并构建DH参数表;根据采集到的机械臂关节位置q,利用齐次变换矩阵求解出机械臂焊枪末端的空间位置grip,求解与该位置目标点的距离dis=||grip-goal||,设置是否发生碰撞的碰撞标志位colli,从而构造环境观察信息。
步骤3,将环境观察信息作为MDP模型的状态量st,定义机械臂的动作空间Π以及避障奖励函数reward。
建立MDP模型,由机械臂关节位置、机械臂末端点位置、目标点位置、机械臂末端位置与目标点距离以及碰撞标志位构成状态量st=[q,grip,goal,colli],由机械臂关节速度构成动作
Figure BDA0003783728820000061
其中关节速度
Figure BDA0003783728820000062
是关节角度q的导数,关节角度的动作空间为Π=[-π,+π],以及定义奖励函数如下:
Figure BDA0003783728820000063
其中colli为1表示发生碰撞,为0表示没有发生碰撞。
步骤4,利用基于深度强化学习算法的强化学习算法,根据状态量st通过网络得到机械臂速度增量
Figure BDA0003783728820000064
在规划空间中为机械臂规划运动策略并取得无碰运动策略,使得机械臂能够在避开障碍物的前提下稳定的运动到目标位置。
其中机械臂运动策略,是基于最大熵策略的深度强化学习网络训练模型,包括Actor网络的构建和Critic网络的构建;Actor网络的输入为当前的状态st,输出为机械臂6轴各关节的角速度,经过一定回合的训练,网络最终的输出即为无碰运动策略;设置Actor网络和Critic网络的网络结构为256×256×256,隐藏层均使用ReLU作为激活函数,Actor网络的输出层使用tanh作为激活函数,其输出范围为[-1,1],对应了机械臂关节的速度,Critic网络的输出层使用ReLU作为激活函数,同时Actor网络和Critic网络输出对应的熵。设置与Actor网络和Critic网络规模大小一样的目标网络:Actor_target网络和Crtic_target网络,其中Actor_target网络的输出作为最终的无碰规划决策,设置最大训练回合与每个回合最大步数为T。整个训练过程包括如下步骤:
步骤4.1,初始化Actor网络、Critic网络、Actor_target网络和Crtic_target网络参数
Figure BDA0003783728820000071
θ、
Figure BDA0003783728820000072
θtarget
步骤4.2,在每一个训练回合开始时,机械臂的六个关节复位到初始位置q=[0,0,0,0,0,0]。
步骤4.3,对于每一个回合,在线Actor策略网络根据当前状态st输出机械臂的六轴关节速度的动作,通过下式表示当前状态下输出的动作at
Figure BDA0003783728820000073
其中t表示当前时刻,
Figure BDA0003783728820000074
表示Actor网络参数,
Figure BDA0003783728820000075
表示Actor网络训练的结果,即无碰动作策略,由执行动作后的新位置向量转到t+1时刻的下一个状态st+1,获得即时奖励值rt;由每回合的最大步数T,每一步记录状态st共有600个状态[s1,s2,…s600],将这些状态集合为运动轨迹τ1=[s1,s2,…sT],下一个回合同样可以生成运动轨迹τ2=[s′1,s′2,…s′T]。
步骤4.4,机械臂朝目标点规划,本身就是一个多维度,奖励相对稀疏的任务,在两条运动轨迹τ1和轨迹τ2中,选择轨迹的最后一个状态最接近目标点的轨迹记为τclosest,并将所述最后一个状态作为新目标;在另外一条轨迹中随机选择k个状态,重新计算这k个状态与新目标的奖励函数rt,并替换τclosest中相应的状态,重组成采样轨迹τ,存入缓存区R作为训练样本,更新Actor和Critic网络参数;这样做的目的是加速机械臂的探索过程,使得Actor网络的输出朝目标点方向探索的概率增大,有效解决奖励稀疏;
步骤4.5,Critic网络的输出服从高斯分布,高斯分布的均值和标准差近似为两个独立函数Qθ(st,at)和q_r,网络参数为θ,即N(Qθ(st,at),q_r2),则相应的Critic网络的损失函数如下:
Figure BDA0003783728820000081
其中Qtarget(st,at)是Crtic_target网络的输出值,Qθ(st,at)是Critic网络的输出,q_r为标准差,
Figure BDA0003783728820000082
πθ(at|st)表示当前状态下输出的动作,E(·)表示期望;基于标准的反向传播方法,可以求出Critic网络参数θ的梯度,与标准的Q学习相比,q_r对Qθ(st,at)的更新步长有自适应调整作用,当q_r增大时,Qθ(st,at)的更新步长呈下降趋势,可以通过q_r来缓解Q学习中由于任务随机性和逼近误差引起的过高估计。
步骤4.6,当训练回合数等于预设的最大回合数时,结束训练,得到最终训练后的Actor网络,即得到规划空间下机械臂的最优运动策略。
经过上述的轨迹采样,本实施例中网络参数更新步骤如下:
(1)初始化Actor的网络参数
Figure BDA0003783728820000083
和Critic的神经网络参数θ;
(2)将Actor网络
Figure BDA0003783728820000084
Critic网络θ复制到对应的Actor_target网络
Figure BDA0003783728820000085
和Crtic_target网络θtarget目标网络参数:
(3)初始化预设内存缓存区R;
(4)从(1到每回合最大步数T)循环:根据Actor网络输出一个动作at,发送给机械臂并执行;环境执行at,返回新的状态st+1,将这个状态的转换过程(st,at,st+1,rt)存入轨迹τ1和轨迹τ2中,并存入内存缓冲区R中;
(5)达到回合最大步数T后,从内存缓冲区R中随机选择两条轨迹,通过随机剪切重组样本轨迹,并计算奖励,作为网络的训练数据集,用(st,at,st+1,rt)表示其中单个训练数据;
(6)计算训练Critic网络的梯度:定义Q值函数Q(st,at)如下:
Q(st,at)=E[r(st,at)+γαVsoft(st+1)]
Vsoft(st)=E[Qθ(st,at)-αlogπθ(at|st)]
其中E[·]表示期望,r(st,at)表示当前状态st执行动作at所能得到的奖励函数,πθ(at|st)表示当前状态下输出的动作,Vsoft(st)表示软更新的Q值,即此时的状态st和执行动作at的价值,γ是折扣因子,α为熵权重,通过Critic网络的输出Qθ(st,at)和标准差q_r,将输出限制在[Qθ(st,at)-q_r,Qθ(st,at)+q_r]中,能够有效的避免Q值过高估计。
(7)更新Critic网络,采用Adam optimizer更新。
(8)计算Actor网络的策略梯度,定义损失函数如下:
Figure BDA0003783728820000091
其中α为熵权重,
Figure BDA0003783728820000092
表示当前状态下输出的动作at的熵,Qθ(st,at)是Critic网络的输出值。
(9)更新Actor网络,采用Adam optimizer更新
(10)软更新Critic目标网络和Actor目标网络θtarget
Figure BDA0003783728820000093
θtarget←τθ+(1-τ)θtarget
Figure BDA0003783728820000094
其中τ是网络学习率,
Figure BDA0003783728820000095
是Actor_target网络的参数,θtarget是Crtic_target网络参数。
(11)结束该回合。
(12)结束循环。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (7)

1.一种基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,包括:
在机器人的机械臂运动前采集一次环境信息,所述的环境信息包括初始状态下的机械臂状态信息、运动目标点和中间障碍物信息,得到规划空间;
建立机械臂运动学模型,根据采集到的机械臂状态信息通过正运动学运算得到机械臂末端点位置和与目标点的距离,构造环境观察信息;
将环境观察信息作为MDP模型的状态量,定义机械臂的动作空间以及避障奖励函数;
利用基于深度强化学习算法的强化学习算法,根据状态量通过得到机械臂速度增量,在规划空间中为机械臂规划运动策略并取得无碰运动策略,使得机械臂能够在避开障碍物的前提下稳定的运动到目标位置。
2.根据权利要求1所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,初始状态下的机械臂状态信息为机械臂关节位置q,初始为0;运动目标点为人为设定的焊接点,包含坐标信息goal;中间的障碍物信息采用包络盒生成,包括机械臂本体和场景障碍,构成初始规划空间Ω。
3.根据权利要求1所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,所述建立机械臂运动学模型,根据采集到的机械臂状态信息通过正运动学运算得到机械臂末端点位置和与目标点的距离,构造环境观察信息,包括:
建立6轴机械臂运动学模型,并构建DH参数表;根据采集到的机械臂关节位置q,利用齐次变换矩阵求解出机械臂焊枪末端的空间位置grip,求解与该位置目标点的距离dis=||grip-goal||,设置是否发生碰撞的碰撞标志位colli,从而构造环境观察信息。
4.根据权利要求1所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,所述将环境观察信息作为MDP模型的状态量,定义机械臂的动作空间以及避障奖励函数,包括:
建立MDP模型,由机械臂关节位置、机械臂末端点位置、目标点位置、机械臂末端位置与目标点距离以及碰撞标志位构成状态量st=[q,grip,goal,colli],由机械臂关节速度构成动作
Figure FDA0003783728810000021
其中关节速度
Figure FDA0003783728810000022
是关节角度q的导数,关节角度的动作空间为Π=[-π,+π],以及定义奖励函数如下:
Figure FDA0003783728810000023
其中colli为1表示发生碰撞,为0表示没有发生碰撞。
5.根据权利要求1所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,所述根据状态量通过得到机械臂速度增量,在规划空间中为机械臂规划运动策略并取得无碰运动策略,包括:
机械臂运动策略,是基于最大熵策略的深度强化学习网络训练模型,包括Actor网络的构建和Critic网络的构建;Actor网络的输入为当前的状态st,输出为机械臂6轴各关节的角速度,经过设定回合的训练,网络最终的输出即为无碰运动策略;
设置Actor网络和Critic网络的网络结构为256×256×256,隐藏层均使用ReLU作为激活函数,Actor网络的输出层使用tanh作为激活函数,其输出范围为[-1,1],对应了机械臂关节的速度,Critic网络的输出层使用ReLU作为激活函数,同时Actor网络和Critic网络输出对应的熵;设置与Actor网络和Critic网络规模大小一样的目标网络:Actor_target网络和Crtic_target网络,其中Actor_target网络的输出作为最终的无碰规划决策,设置最大训练回合与每个回合最大步数为T。
6.根据权利要求5所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,所述网络模型的训练过程包括:
步骤4.1,初始化Actor网络、Critic网络、Actor_target网络和Crtic_target网络参数
Figure FDA0003783728810000024
θ、
Figure FDA0003783728810000025
θtarget
步骤4.2,在每一个训练回合开始时,机械臂的六个关节复位到初始位置q=[0,0,0,0,0,0];
步骤4.3,对于每一个回合,Actor网络根据当前状态st输出机械臂的六轴关节速度的动作,通过下式表示当前状态下输出的动作at
Figure FDA0003783728810000031
其中t表示当前时刻,
Figure FDA0003783728810000032
表示Actor网络参数,
Figure FDA0003783728810000033
表示Actor网络训练的结果,即无碰动作策略,由执行动作后的新位置向量转到t+1时刻的下一个状态st+1,获得即时奖励值rt;由每回合的最大步数T,每一步记录状态st,将这些状态集合为运动轨迹τ1=[s1,s2,…sT],下一个回合同样可以生成运动轨迹τ2=[s′1,s′2,…s′T];
步骤4.4,在两条运动轨迹τ1和轨迹τ2中,选择轨迹的最后一个状态最接近目标点的轨迹记为τclosest,并将所述最后一个状态作为新目标;在另外一条轨迹中随机选择k个状态,重新计算这k个状态与新目标的奖励函数rt,并替换τclosest中相应的状态,重组成采样轨迹τ,存入缓存区R作为训练样本,更新Actor和Critic网络参数;
步骤4.5,Critic网络的输出服从高斯分布,相应的Critic网络的损失函数如下:
Figure FDA0003783728810000034
其中Qtarget(st,at)是Crtic_target网络的输出值,Qθ(st,at)是Crtic网络的输出,q_r为标准差,
Figure FDA0003783728810000035
πθ(at|st)表示当前状态下输出的动作,E(·)表示期望;基于标准的反向传播方法,可以求出Critic网络参数θ的梯度;
步骤4.6,当训练回合数等于预设的最大回合数时,结束训练,得到最终训练后的Actor网络,即得到规划空间下机械臂的最优运动策略。
7.根据权利要求6所述的基于最大熵框架的深度强化学习机械臂运动规划方法,其特征在于,所述网络参数更新步骤如下:
(1)初始化Actor的网络参数
Figure FDA0003783728810000036
和Critic的神经网络参数θ;
(2)将网络参数
Figure FDA0003783728810000037
网络参数θ复制到对应的Actor_target网络
Figure FDA0003783728810000038
和Crtic_target网络θtarget作为这两个网络的参数:
(3)初始化预设内存缓存区R;
(4)从1到每回合最大步数T进行循环:
根据Actor网络输出一个动作at,发送给机械臂并执行;环境执行at,返回新的状态st+1,将这个状态的转换过程(st,at,st+1,rt)存入轨迹τ1和轨迹τ2中,并存入内存缓冲区R中;
(5)达到回合最大步数T后,从内存缓冲区R中随机选择两条轨迹,通过随机剪切重组样本轨迹,并计算奖励,作为网络的训练数据集,用(st,at,st+1,rt)表示其中单个训练数据;
(6)计算训练Critic网络的梯度:定义Q值函数Q(st,at)如下:
Q(st,at)=E[r(st,at)+γαVsoft(st+1)]
Vsoft(st)=E[Qθ(st,at)-αlogπθ(at|st)]
其中E[·]表示期望,r(st,at)表示当前状态st执行动作at所能得到的奖励函数,πθ(at|st)表示当前状态下输出的动作,Vsoft(st)表示软更新的Q值,即此时的状态st和执行动作at的价值,γ是折扣因子,α为熵权重,通过Critic网络的输出Qθ(st,at)和标准差q_r,将输出限制在[Qθ(st,at)-q_r,Qθ(st,at)+q_r]中;
(7)更新Critic网络,采用Adam optimizer更新;
(8)计算Actor网络的策略梯度,定义损失函数如下:
Figure FDA0003783728810000041
其中α为熵权重,
Figure FDA0003783728810000042
表示当前状态下输出的动作at的熵,Qθ(st,at)是Critic网络的输出值;
(9)更新Actor网络,采用Adam optimizer更新;
(10)软更新Critic目标网络和Actor目标网络θtarget
Figure FDA0003783728810000043
(11)结束该回合;
(12)结束循环。
CN202210936717.1A 2022-08-05 2022-08-05 一种基于最大熵框架的深度强化学习机械臂运动规划方法 Active CN115091469B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210936717.1A CN115091469B (zh) 2022-08-05 2022-08-05 一种基于最大熵框架的深度强化学习机械臂运动规划方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210936717.1A CN115091469B (zh) 2022-08-05 2022-08-05 一种基于最大熵框架的深度强化学习机械臂运动规划方法

Publications (2)

Publication Number Publication Date
CN115091469A true CN115091469A (zh) 2022-09-23
CN115091469B CN115091469B (zh) 2024-06-14

Family

ID=83300351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210936717.1A Active CN115091469B (zh) 2022-08-05 2022-08-05 一种基于最大熵框架的深度强化学习机械臂运动规划方法

Country Status (1)

Country Link
CN (1) CN115091469B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115674191A (zh) * 2022-10-08 2023-02-03 广东工业大学 一种基于数字孪生的机械臂控制方法及***
CN117709602A (zh) * 2024-02-05 2024-03-15 吉林大学 一种基于社会价值取向的城市智能车辆拟人化决策方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107894773A (zh) * 2017-12-15 2018-04-10 广东工业大学 一种移动机器人的导航方法、***及相关装置
CN110458128A (zh) * 2019-08-16 2019-11-15 广东工业大学 一种姿态特征获取方法、装置、设备及存储介质
CN110666791A (zh) * 2019-08-29 2020-01-10 江苏大学 一种基于深度学习的rgbd机器人看护***及方法
CN111645065A (zh) * 2020-03-25 2020-09-11 南京大学 一种基于深度强化学习的机械臂运动规划方法
CN113485380A (zh) * 2021-08-20 2021-10-08 广东工业大学 一种基于强化学习的agv路径规划方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107894773A (zh) * 2017-12-15 2018-04-10 广东工业大学 一种移动机器人的导航方法、***及相关装置
CN110458128A (zh) * 2019-08-16 2019-11-15 广东工业大学 一种姿态特征获取方法、装置、设备及存储介质
CN110666791A (zh) * 2019-08-29 2020-01-10 江苏大学 一种基于深度学习的rgbd机器人看护***及方法
CN111645065A (zh) * 2020-03-25 2020-09-11 南京大学 一种基于深度强化学习的机械臂运动规划方法
CN113485380A (zh) * 2021-08-20 2021-10-08 广东工业大学 一种基于强化学习的agv路径规划方法及***

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115674191A (zh) * 2022-10-08 2023-02-03 广东工业大学 一种基于数字孪生的机械臂控制方法及***
CN115674191B (zh) * 2022-10-08 2024-05-10 广东工业大学 一种基于数字孪生的机械臂控制方法及***
CN117709602A (zh) * 2024-02-05 2024-03-15 吉林大学 一种基于社会价值取向的城市智能车辆拟人化决策方法
CN117709602B (zh) * 2024-02-05 2024-05-17 吉林大学 一种基于社会价值取向的城市智能车辆拟人化决策方法

Also Published As

Publication number Publication date
CN115091469B (zh) 2024-06-14

Similar Documents

Publication Publication Date Title
CN115091469A (zh) 一种基于最大熵框架的深度强化学习机械臂运动规划方法
CN109483530B (zh) 一种基于深度强化学习的足式机器人运动控制方法及***
CN111930121A (zh) 一种室内移动机器人的混合路径规划方法
CN114237235B (zh) 一种基于深度强化学习的移动机器人避障方法
CN114895707B (zh) 基于变频蝙蝠算法的农业无人机路径规划方法及***
CN114089776B (zh) 一种基于深度强化学习的无人机避障方法
CN112809665A (zh) 一种基于改进rrt算法的机械臂运动规划方法
CN116804879A (zh) 一种改进蜣螂算法融合dwa算法的机器人路径规划框架方法
CN109108978A (zh) 基于学习泛化机制的三自由度空间机械臂运动规划方法
CN116679719A (zh) 基于动态窗口法与近端策略的无人车自适应路径规划方法
CN116038691A (zh) 一种基于深度强化学习的连续体机械臂运动控制方法
CN113341972A (zh) 一种基于深度强化学习的机器人路径寻优规划方法
CN116242364A (zh) 一种基于深度强化学习的多无人机智能导航方法
CN116700327A (zh) 一种基于连续动作优势函数学习的无人机轨迹规划方法
CN114020013A (zh) 一种基于深度强化学习的无人机编队避撞方法
CN115416024A (zh) 一种力矩控制的机械臂自主轨迹规划方法和***
Wang et al. Learning of long-horizon sparse-reward robotic manipulator tasks with base controllers
CN117103282A (zh) 一种基于matd3算法的双臂机器人协同运动控制方法
CN108460494A (zh) 一种机器人轨迹处理的方法、装置及机器人
Genc et al. Zero-shot reinforcement learning with deep attention convolutional neural networks
Sun et al. Event-triggered reconfigurable reinforcement learning motion-planning approach for mobile robot in unknown dynamic environments
CN117784812A (zh) 基于进化引导深度强化学习的无人机自主飞行决策方法
Ejaz et al. Autonomous visual navigation using deep reinforcement learning: An overview
US20240054008A1 (en) Apparatus and method for performing a task
CN114609925B (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