掌桥专利:专业的专利平台
掌桥专利
首页

基于强化学习的机械臂插件控制方法、装置、设备及介质

文献发布时间:2023-06-19 19:28:50


基于强化学习的机械臂插件控制方法、装置、设备及介质

技术领域

本申请涉及机械臂控制技术领域,尤其涉及一种基于强化学习的机械臂插件控制方法、装置、设备及介质。

背景技术

现有的插件方法通常利用机械臂的末端将插件插入目标位置,该插件方法的工作流程为:先利用预先训练好的运动控制模型生成并发送运动指令,再控制机械臂根据接收到的运动指令将插件插入目标位置。运动控制模型生成运动指令的过程为:1、对机械臂模型的末端进行路线规划;2、利用逆运动学求解出末端在各个位置对应的角关节角度,并根据角关节角度生成运动指令。由于运动控制模型在进行逆运动学求解时具有不确定性,因此现有的运动控制模型需要通过大量的计算才能生成能将插件插入容器中的运动指令,即现有的插件方法存在计算量大的问题。

因此,现有技术有待改进和发展。

发明内容

鉴于上述现有技术的不足之处,本申请的目的在于提供一种基于强化学习的机械臂插件控制方法、装置、设备及介质,能够有效地减少插件方法的数据计算量。

第一方面,本申请提供一种基于强化学习的机械臂插件控制方法,用于控制机械臂插件,该方法包括步骤:

根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;

基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;

基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;

部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

本申请提供的一种基于强化学习的机械臂插件控制方法,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略在移动过程中无需考虑插件的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

优选地,基于随机的第一初始化位姿和中间点信息训练第一强化学习模型的训练过程为:

基于随机的第一初始化位姿、中间点信息、第一奖励函数和惩罚函数训练第一强化学习模型,第一奖励函数用于根据机械臂模型的末端与位于容器模型正上方的预设点之间的距离输出第一奖励输出值,惩罚函数用于根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值。

该技术方案分别利用第一奖励函数和惩罚函数生成第一奖励输出值和惩罚输出值,并根据第一奖励输出值和惩罚输出值优化第一强化网络模型的网络参数,因此该技术方案能够尽可能地使插件模型的朝向与第一目标朝向接近和减少机械臂的动作量,从而有效地降低将插件模型插入容器模型中的难度和避免出现机械臂模型过量运动的情况,进而有效地提高机械臂的运动效率和降低机械臂的能耗。

优选地,位于容器模型的正上方的预设点的数量为两个,第一奖励函数公式为:

其中,r

优选地,基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型的训练过程为:

基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息、容器位姿信息、第二奖励函数和惩罚函数训练第二强化学习模型,第二奖励函数用于根据机械臂模型的末端与容器模型之间的距离和方向输出第二奖励输出值,惩罚函数用于根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值。

该技术方案分别利用第二奖励函数和惩罚函数生成第二奖励输出值和惩罚输出值,并根据第二奖励输出值和惩罚输出值优化第二强化网络模型的网络参数,因此该技术方案能够尽可能地使插件模型的朝向与第二目标朝向接近和减少机械臂的动作量,从而有效地降低将插件模型插入容器模型中的难度和避免出现机械臂模型过量运动的情况。

优选地,第二奖励函数公式为:

其中,r

优选地,惩罚函数和惩罚函数的公式为:

其中,r

优选地,第一强化学习模型、第二强化学习模型均为基于强化学习算法构建的模型。

第二方面,本申请提供一种基于强化学习的机械臂插件控制装置,用于控制机械臂插件,该装置包括:

设定模块,用于根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;

第一训练模块,用于基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;

第二训练模块,用于基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;

部署模块,用于部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

本申请提供的一种基于强化学习的机械臂插件控制装置,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该装置能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该装置能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

第三方面,本申请还提供一种电子设备,包括处理器以及存储器,存储器存储有计算机可读取指令,当计算机可读取指令由处理器执行时,运行如上述第一方面提供的方法中的步骤。

第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时运行如上述第一方面提供的方法中的步骤。

由上可知,本申请提供了一种基于强化学习的机械臂插件控制方法、装置、设备及介质,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

附图说明

图1为本申请实施例提供的基于强化学习的机械臂插件控制方法的流程图。

图2为本申请实施例提供的基于强化学习的机械臂插件控制装置的结构示意图。

图3为本申请实施例提供的电子设备的结构示意图。

附图标记:201、设定模块;202、第一训练模块;203、第二训练模块;204、部署模块;31、处理器;32、存储器;33、通信总线。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参阅图1,本申请实施例提供的一种基于强化学习的机械臂插件控制方法,用于控制机械臂插件,该方法包括步骤:

A1.根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;

A2.基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;

A3.基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;

A4.部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

其中,机械臂为可以多自由度移动的机械臂,本申请实施例的机械臂优选为六自由度机械臂,具体地,该六自由度机械臂为UR5机械臂。在训练第一强化学习模型和第二强化学习模型前,分别将第一强化学习模型和第二强化学习模型的超参数设置为预设参数。由于超参数可以包括多个参数,而预设参数为预设值,因此本领域技术人员能够根据超参数改变预设参数包含的参数类型,并根据实际需要改变各参数的大小,优选地,该实施例的超参数包括总步数和迭代步长,预设参数包括预设总步数和预设迭代步长,预设总步数为200,预设迭代步长为0.01,在第一强化学习模型和第二强化学习模型的训练过程中,实际迭代次数初始为0,Actor网络和Critic网络每优化一次就相当于完成一次网络迭代,此时实际迭代次数自动+1,当实际迭代次数大于总步数时,则视第一强化学习模型和第二强化学习模型完成一次训练。

步骤A1中,容器为用于容纳插件的器件,容器位姿信息包括容器的位置(相当于目标位置)和姿态,容器的姿态可以为直立式或倾斜式(即容器的插入端口可以为竖直向上或倾斜向上),本申请实施例的容器的姿态优选为直立式,即容器的插入端口竖直向上。预设距离为预设值,本领域技术人员可以根据容器的深度和/或插件的尺寸来调整预设距离的大小,中间点信息到容器的最小距离等于预设距离。应当理解的是,中间点信息相当于一个虚拟点,为了满足数学计算要求,在仿真环境中,至少需要两个预设点才能表示一个虚拟点,具体地,中间点信息由位于容器模型正上方的至少两个预设点表示,这两个预设点以容器模型的中心为对称中心对称设置。

步骤A2中,第一初始化位姿为随机生成的,第一初始化位姿为机械臂模型在开始插件前的初始位姿,第一初始化位姿能反映机械臂模型在开始训练第一学习强化模型前的位置和姿态。第一强化学习模型为本申请实施例在计算机的仿真环境中基于强化学习算法构建的模型,本申请实施例的第一强化学习模型优选为基于Soft Actor-Critic(SAC)算法构建的模型。具体地,Soft Actor-Critic(SAC)算法包括Actor网络和Critic网络,Actor网络用于根据中间点信息、机械臂模型的关节角度、机械臂模型的末端位置和插件模型的位置等参数生成第一移动策略,以使机械臂模型根据第一移动策略移动插件模型,Critic网络用于根据移动后的插件模型的位姿信息和中间点信息生成第一评估结果,该第一评估结果能反映第一移动策略的好坏。第一强化学习模型的训练过程为:先利用Actor网络生成第一移动策略,再利用Critic网络生成第一评估结果,然后利用第一评估结果对Actor网络和Critic网络进行优化,并利用优化后的Actor网络和Critic网络重复执行上述步骤,直至Actor网络生成的第一移动策略能使机械臂模型将插件模型移动至中间点信息处。步骤A2相当于在仿真环境中对第一强化学习模型进行训练,以优化第一强化学习模型。

步骤A3中,第二初始化位姿为随机生成的,第二强化学习模型为本申请实施例在计算机的仿真环境中基于强化学习算法构建的模型,本申请实施例的第二强化学习模型优选为基于Soft Actor-Critic(SAC)算法构建的模型。具体地,Soft Actor-Critic(SAC)算法包括Actor网络和Critic网络,Actor网络用于根据中间点信息、机械臂模型的关节角度、机械臂模型的末端位置和插件模型的位置等参数生成第二移动策略,以使机械臂模型根据第二移动策略移动插件模型,Critic网络用于根据移动后的插件模型的位姿信息和容器位姿信息生成第二评估结果,该第二评估结果能反映第二移动策略的好坏。步骤A3的工作流程为:先将机械臂模型的位姿调节为第二初始化位姿,再利用步骤A2训练好的第一强化学习模型根据中间点信息生成第一移动策略,以将插件模型移动至中间点信息处,再对第二强化学习模型进行训练,以使第二强化学习模型生成的第二移动策略能用于控制机械臂模型将插件模型插入容器模型中。第二强化学习模型的训练过程为:先利用Actor网络生成第二移动策略,再利用Critic网络生成第二评估结果,然后利用第二评估结果对Actor网络和Critic网络进行优化,并利用优化后的Actor网络和Critic网络重复执行上述步骤,直至Actor网络生成的第二移动策略能使机械臂模型将插件模型插入至容器模型中。步骤A3相当于在仿真环境中先基于训练后的第一强化学习模型控制机械臂模型预运动至中间点信息处,再对第二强化学习模型进行训练,以优化第二强化学习模型,以使第二强化学习模型生成的第二移动策略相当于调整插件模型的朝向角度,以将插件模型竖直插入容器模型中。应当理解的是,仿真环境中包含机械臂模型、插件模型、第一强化学习模型、第二强化学习模型和容器模型,机械臂模型、插件模型和容器模型相当于实体模型,插件模型位于机械臂模型的末端,第一强化学习模型和第二强化学习模型相当于机械臂模型的控制模型,第一强化学习模型和第二强化学习模型均用于控制机械臂模型进行仿真运动,以移动插件模型。

步骤A4中,将训练后的第一强化学习模型及训练后的第二强化学习模型部署到机械臂控制端以控制机械臂进行插件属于现有技术,此处不再进行详细论述。应当理解的是,机械臂模型对应于机械臂,插件模型对应于插件,容器模型对应于容器,因此在将第一强化学习模型和第二强化学习模型部署到机械臂控制端后,第一强化学习模型生成的第一移动策略能使机械臂将插件移动至中间点信息处,第二强化学习模型生成的第二移动策略能使机械臂将其末端上的插件由中间点信息处插入容器中。还应当理解的是,由于机械臂先将插件由初始位置移动至中间点信息,再将插件由中间点信息插入容器中,即机械臂先执行第一移动策略再执行第二移动策略,因此第一强化学习模型的优先级优选高于第二强化学习模型的优先级。

该实施例的工作原理为:先利用第一强化学习模型生成第一移动策略,并根据第一移动策略控制机械臂将插件移动至中间点信息处,再利用第二强化学习模型生成第二移动策略,并根据第二移动策略控制机械臂将插件插入容器中,即该实施例相当于将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地避免出现由于逆运动学求解具有不确定性而导致计算量大的问题,即该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度(即在插件移动至中间点信息处的过程中无需考虑插件的姿态),且第二移动策略仅用于将插件插入容器中,第二移动策略仅需要考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。此外,由于第一强化学习模型基于随机的第一初始化位姿进行训练,而第二强化学习模型基于随机的第二初始化位姿进行训练,因此该实施例能够有效地提高第一强化学习模型和第二强化学习模型的鲁棒性,且本申请采用多段强化学习策略能弥补第一强化学习模型和第二强化学习模型存在的不足,从而有效地提高机械臂的移动精度和运动效率。该实施例相当于将现有的插件方法的复杂计算过程拆分成分别侧重于插件的位移精度和插件的朝向精度的两个计算过程。

本申请提供的一种基于强化学习的机械臂插件控制方法,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

在一些实施方式中,基于随机的第一初始化位姿和中间点信息训练第一强化学习模型的训练过程为:

基于随机的第一初始化位姿、中间点信息、第一奖励函数和惩罚函数训练第一强化学习模型,第一奖励函数用于根据机械臂模型的末端与位于容器模型正上方的预设点之间的距离输出第一奖励输出值,惩罚函数用于根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值。

其中,第一奖励函数根据机械臂模型的末端与位于容器模型正上方的预设点的距离输出第一奖励输出值,由于机械臂模型的末端与位于容器模型正上方的预设点之间的距离的绝对值越小,插件模型的朝向与第一目标朝向(插件模型移动至中间点信息处的理想朝向,理想朝向优选与容器模型的朝向一致)越接近,而插件模型的朝向与第一目标朝向越接近,插件模型越易于插入容器模型中,因此机械臂模型的末端和位于容器模型正上方的预设点之间的距离的绝对值越小越好,即第一奖励输出值与机械臂模型的末端和位于容器模型正上方的预设点之间的距离的绝对值负相关。惩罚函数根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值,由于机械臂模型的关节角的运动速度与机械臂模型的动作量正相关,而将插件模型移动至中心点信息处的机械臂模型的动作量越少,则对应的第一移动策略越优,因此机械臂模型的关节角的运动速度越小越好,即机械臂模型的关节角的运动速度与惩罚输出值正相关。

该实施例训练第一强化学习模型的过程为:1、Actor网络根据中间点信息、机械臂模型的关节角度、机械臂模型的末端位置和插件模型的位置等参数生成第一移动策略;2、Actor网络根据第一移动策略控制机械臂模型移动;3、Critic网络利用第一奖励函数根据机械臂模型的末端与位于容器模型正上方的预设点之间的距离输出第一奖励输出值,并利用惩罚函数根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值;4、分别根据第一奖励输出值和惩罚输出值优化Actor网络和Critic网络的网络参数;5、利用优化后的Actor网络和优化后的Critic网络重复执行上述步骤,直至第一强化学习模型的总步数大于预设的最大步数。应当理解的是,根据第一奖励输出值优化Actor网络和Critic网络的网络参数相当于对插件模型的朝向进行预调整,以使插件模型在移动至中间点信息处后的朝向尽可能与容器模型的朝向一致,根据惩罚输出值优化Actor网络和Critic网络的网络参数相当于优化第一移动策略对应的机械臂动作,以减小机械臂不必要的移动,从而使机械臂能够更快速地将插件移动至中间点信息处,进而有效地提高机械臂的运动效率和降低机械臂的能耗。

该实施例分别利用第一奖励函数和惩罚函数生成第一奖励输出值和惩罚输出值,并根据第一奖励输出值和惩罚输出值优化第一强化网络模型(即Actor网络和Critic网络)的网络参数,因此该实施例能够尽可能地使插件模型的朝向与第一目标朝向接近和减少机械臂的动作量,从而有效地降低将插件模型插入容器模型中的难度和避免出现机械臂模型过量运动的情况,进而有效地提高机械臂的运动效率和降低机械臂的能耗。

在一些优选的实施方式中,位于容器模型的正上方的预设点的数量为两个,第一奖励函数如式(1)所示:

(1);

其中,r

在一些优选的实施方式中,基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息、容器位姿信息训练第二强化学习模型的训练过程为:

基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息、容器位姿信息、第二奖励函数和惩罚函数训练第二强化学习模型,第二奖励函数用于根据机械臂模型的末端与容器模型之间的距离和方向输出第二奖励输出值,惩罚函数用于根据机械臂模型在仿真运动过程中的关节角的运动速度输出惩罚输出值。

在训练第二强化学习模型前,第二强化学习模型的Actor网络和Critic网络随机生成网络参数。第二奖励函数根据机械臂模型的末端与容器模型之间的距离和方向输出第二奖励输出值,由于机械臂模型的末端与容器模型之间的距离和方向越小,插件模型的朝向与第二目标朝向(将插件模型成功插入容器模型中的理想朝向)越接近,而插件模型的朝向与第二目标朝向越接近,插件模型越易于插入容器模型中,因此机械臂模型的末端和容器模型之间的距离和方向越小越好,即第二奖励输出值与机械臂模型的末端和容器模型之间的距离的绝对值负相关。该实施例的惩罚函数与上述实施例中内的惩罚函数相同,此处不再进行详细论述。

该实施例训练第二强化学习模型的过程为:1、Actor网络根据容器位姿信息、中间点信息、机械臂模型的关节角度、机械臂模型的末端位置和插件模型的位置等参数生成第二移动策略;2、Actor网络根据第二移动策略控制机械臂模型移动;3、Critic网络利用第二奖励函数根据机械臂模型的末端与容器模型之间的距离和方向输出第二奖励输出值,并利用惩罚函数根据机械臂模型在训练过程中的关节角的运动速度输出惩罚输出值;4、分别根据第二奖励输出值和惩罚输出值优化Actor网络和Critic网络的网络参数;5、利用优化后的Actor网络和优化后的Critic网络重复执行上述步骤,直至第二强化学习模型的总步数大于预设的最大步数。应当理解的是,根据第二奖励输出值优化Actor网络和Critic网络的网络参数相当于对插件模型的朝向进行预调整,根据惩罚输出值优化Actor网络和Critic网络的网络参数相当于优化第二移动策略对应的机械臂动作,以减小机械臂不必要的移动,从而使机械臂能够更快速地将插件移动至中间点信息处,进而有效地提高机械臂的运动效率和降低机械臂的能耗。

该实施例分别利用第二奖励函数和惩罚函数生成第二奖励输出值和惩罚输出值,并根据第二奖励输出值和惩罚输出值优化第二强化网络模型(即Actor网络和Critic网络)的网络参数,因此该实施例能够尽可能地使插件模型的朝向与第二目标朝向接近和减少机械臂的动作量,从而有效地降低将插件模型插入容器模型中的难度和避免出现机械臂模型过量运动的情况,进而有效地提高机械臂的运动效率和降低机械臂的能耗。

在一些优选的实施方式中,第二奖励函数如式(2)所示:

(2)

其中,r

在一些优选的实施方式中,惩罚函数如式(3)所示:

(3)

其中,r

由上可知,本申请提供的一种基于强化学习的机械臂插件控制方法,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

请参阅图2,本申请实施例提供一种基于强化学习的机械臂插件控制装置,用于控制机械臂插件,该装置包括:

设定模块201,用于根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;

第一训练模块202,用于基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;

第二训练模块203,用于基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;

部署模块204,用于部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

本申请实施例提供了一种基于强化学习的机械臂插件控制装置,该装置的工作原理与上述第一方面提供的一种基于强化学习的机械臂插件控制方法的工作原理相同,此处不再进行详细论述。

本申请提供的一种基于强化学习的机械臂插件控制装置,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该装置能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该装置能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

第三方面,参照图3,图3所示为本申请提供的一种电子设备,包括:处理器31和存储器32,处理器31和存储器32通过通信总线33和/或其他形式的连接机构(未标出)互连并相互通讯,存储器32存储有处理器31可执行的计算机可读取指令,当电子设备运行时,处理器31执行该计算机可读取指令,以执行上述实施例的任一项可选的实现方式,以实现以下功能:根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器31执行时,执行上述实施例的任一项可选的实现方式中的方法,以实现以下功能:根据容器位姿信息及预设距离设定中间点信息,中间点信息为位于容器模型的正上方的预设点的信息;基于随机的第一初始化位姿和中间点信息训练第一强化学习模型,第一强化学习模型用于生成第一移动策略,第一移动策略用于控制机械臂模型移动使其末端上的插件模型移动至中间点信息处;基于随机的第二初始化位姿、训练后的第一强化学习模型、中间点信息和容器位姿信息训练第二强化学习模型,第二强化学习模型用于生成第二移动策略,第二移动策略用于在第一移动策略控制机械臂模型将其末端上的插件模型移动至中间点信息处时控制机械臂模型将其末端上的插件模型插入容器模型中;部署训练后的第一强化学习模型及第二强化学习模型到机械臂控制端以控制机械臂进行插件。

由上可知,本申请提供了一种基于强化学习的机械臂插件控制方法、装置、设备及介质,将插件方法拆分成将插件移动至中间点信息处和将插件由中间点信息处插入容器中,由于第一强化学习模型和第二强化学习模型均为基于强化学习构建的模型,而使用强化学习算法控制机械臂时无需进行逆运动学求解,因此该方法能够有效地减少插件方法的数据计算量,且由于第一移动策略仅用于将插件移动至中间点信息处,第一移动策略仅需要考虑插件的位移精度,第一移动策略无需考虑插件在移动过程中的朝向精度,而第二移动策略仅用于将插件插入容器中,第二移动策略仅需要侧重于考虑插件的朝向精度,因此该方法能够进一步地减少第一强化学习模型生成第一移动策略和第二强化学习模型生成第二移动策略的数据计算量,从而进一步地降低插件方法的数据计算量。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多组单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多组网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 机械臂标定方法、装置、系统、介质、控制器及机械臂
  • 机械臂示教方法、装置、系统、介质、控制器及机械臂
  • 机械臂的手眼标定方法、标定板、装置、设备和存储介质
  • 基于强化学习的机械臂控制方法、装置、电子设备及存储介质
  • 基于机械臂的柔顺控制方法、装置、电子设备及存储介质
技术分类

06120115920764