本发明涉及超冗余机械臂控制领域,具体为一种基于强化学习的超冗余蛇形机械臂的控制方法及装置。
背景技术:
1、机械臂作为机器人的一种典型结构,在工业生产、物流交通、科研教育、空间探测等领域都有着广泛的应用,随着相应领域的发展要求,传统的离散型刚性臂结构已经很难满足一些应用场景下(如带障碍环境场景,限定范围工作空间场景和脆弱环境场景等)对机械臂自身灵活性、可适应性的要求。基于这种应用需求,在结构上更加“柔顺”的超冗余蛇形机械臂应运而生。相对于传统离散型刚性臂来说,基于仿生结构的超冗余蛇形机械臂具有更高的动作自由度,因而具有更好的灵活性和弯曲性能,使其能在狭窄的空间中避障和作业,满足了如航空航天,核能,灾后搜救,微创医疗等特殊领域的需求。
2、不同于传统刚性臂的研究已经形成了较为体系的控制理论和方法,超冗余蛇形机械臂目前并没有比较统一的控制理论。一方面,超冗余蛇形机械臂的设计往往基于不同的材料和结构,同时也有多种驱动方式,难以对其进行精确建模。另一方面,由于超冗余蛇形机械臂的自由度远远大于末端在3d空间的运动自由度,其末端位姿到关节空间的逆解存在无数种,难以确定机械臂整体的构型。
3、另外,传统的控制方法基于对机械臂模型进行精确建模,求出工作空间中末端位姿到关节空间中关节角度的逆解,进而推导控制器。超冗余蛇形机械臂不仅自由度高,而且往往含有弹性材料,在模型上具有非线性、时变、强耦合等特点,这导致采用传统建模方法对其进行准确建模变得十分困难,难以对超冗余蛇形机械臂实现快速准确的控制。进一步的,基于数据驱动的方法(如强化学习等),适用于高度非线性或者难以建模的非结构化环境,适合解决超冗余机械臂因自由度高、时变、非线性和强耦合等带来的建模困难的问题。超冗余蛇形机械臂存在超冗余的结构特点,随着机械臂段数的增加机械的冗余度也会增大,机械臂的状态空间和动作空间会随着冗余度的增长而指数级增长,这使得需要更多的样本数据进行状态空间和动作空间的探索,基于数据驱动的方法难以收敛。
技术实现思路
1、本发明要解决的技术问题是:克服现有技术的不足,提供了一种基于强化学习的超冗余蛇形机械臂控制方法及装置。
2、本发明目的通过以下技术方案予以实现:
3、第一方面,本发明提供一种基于强化学习的超冗余蛇形机械臂控制装置,包括目标点选择模块、训练数据采集模块、神经网络训练模块;
4、目标点选择模块,用于随机采样机械臂末端可达工作空间内的位置坐标,作为机械臂末端接近任务设定的目标点;
5、训练数据采集模块,根据神经网络模块生成的策略控制机械臂到达指定目标点,并收集机械臂执行过程中的数据;
6、神经网络训练模块,利用训练数据采集模块收集的训练数据,迭代更新其神经网络模型并生成新的策略,直至模型收敛。
7、第二方面,本发明提供一种基于强化学习的超冗余蛇形机械臂控制方法,包括:
8、步骤1:搭建超冗余蛇形机械臂模型,并基于d-h法对机械臂进行建模并推导位置级正运动学方程;
9、步骤2:采用densenetsimple结构初始化td3算法的策略网络和值函数网络;
10、步骤3:在关节相位空间进行u型分布采样,得到各关节角度;利用位置级正运动学方程,求解该组关节角度对应的机械臂末端执行器的坐标;
11、步骤4:根据当前控制策略执行机械臂,收集训练数据,具体包括:
12、步骤401:机械臂根据当前神经网络模型输出的控制策略,执行一个仿真步;
13、步骤402:保存该仿真步的概率转移元组;
14、步骤403:重复步骤401、402,直至机械臂末端与目标点距离小于给定的阈值或仿真时间步超出给定的仿真时间限制;
15、步骤5:利用步骤402收集的概率转移元祖数据,进行神经网络的前向传播;根据前向传播得到的结果计算出损失函数,并进行梯度的反向传播;根据梯度以及学习率的大小对网络参数进行更新;
16、步骤6:重复步骤3~5,直至达到指定的训练轮次,结束训练;
17、步骤7:利用训练结束的神经网络进行超冗余蛇形机械臂控制。
18、第三方面,本发明提供一种电子设备,包括:
19、处理器;以及
20、存储器,用于存储计算机程序指令;
21、其中当所述计算机程序指令由所述处理器加载并运行时,所述处理器执行所述基于强化学习的超冗余蛇形机械臂控制方法。
22、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在由处理器加载并运行时,使所述处理器执行所述基于强化学习的超冗余蛇形机械臂控制方法。
23、本发明相比于现有技术具有如下有益效果:
24、1.本发明基于强化学习算法,可实现对超冗余蛇形机械臂的实时控制,并且当机械臂结构发生变化时只需重新训练便能将控制方法应用于新的机械臂。
25、2.通过关节空间u型采样,间接采样机械臂工作空间内目标点的位置坐标,提高算法对目标点的探索效率。
26、3.通过关节变周期复位机制,提高算法训练效率,加速算法收敛。
27、4.利用简化版密集连接的网络结构,提高模型对高维状态和动作空间的处理能力,提升算法收敛时的控制精度。
1.一种基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,包括目标点选择模块、训练数据采集模块、神经网络训练模块;
2.根据权利要求1所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,目标点选择模块在关节相位空间进行u型分布采样。
3.根据权利要求1所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,训练数据采集模块,在机械臂执行时,根据神经网络模块生成的策略控制机械臂,并收集每一个时间步机械臂状态转移元组,为神经网络训练模块提供所需的训练数据;在机械臂复位时,将机械臂恢复到初始关节角度均为0的状态。
4.根据权利要求1所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,训练数据采集模块采用变周期复位机制,使关节复位周期逐渐增大。
5.根据权利要求4所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,复位周期t=1+min(9,max(0,(epoch-50)/30)),其中epoch为训练的轮次。
6.根据权利要求1所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,神经网络训练模块将her与td3算法相结合,利用训练数据对td3算法中的策略网络和值函数网络的参数进行更新,最终得到训练好的神经网络模型。
7.根据权利要求6所述的基于强化学习的超冗余蛇形机械臂控制装置,其特征在于,td3算法中策略网络和值函数网络的网络结构,只带有特征层与每一层连接通道的简化版密集连接网络densenetsimple,通过对输入特征的重复利用来增强网络的表征能力。
8.一种基于强化学习的超冗余蛇形机械臂控制方法,其特征在于,包括:
9.一种电子设备,包括:
10.一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在由处理器加载并运行时,使所述处理器执行如权利要求8所述的方法。