本发明涉及机器人动力学控制与强化学习领域,具体为一种基于matd3算法的双臂机器人协同运动控制方法。
背景技术:
1、随着机器人任务种类的多样化,双机械臂协同操作逐渐成为机器人领域的新发展趋势,也面临着众多研究难点和挑战。由于双臂机器人存在多个自由度,如何在多自由度空间中规划运动轨迹,使双臂能够实现高效、平滑地协同操作,是一个复杂且具有挑战性的问题。
2、目前已有的双臂协同控制方法主要分为基于运动学的控制方法和基于动力学的控制方法。基于运动学的控制方法主要针对双臂机器人运动中的各种约束条件、协同工作中的臂间干涉以及运动路径规划等问题进行深入分析。基于动力学的控制方法需要建立双臂机器人的动力学模型,通过控制机器人的关节力矩来实现协同运动。传统的基于运动学的方法不仅要求机器人能够准确地跟踪轨迹,还需要进行大量繁琐的逆运动学解算工作,其过程复杂且容易引起误差。基于动力学进行运动控制的方法往往对模型的精度要求较高,对模型误差和不确定性较为敏感。
技术实现思路
1、针对上述提出的技术问题,本发明提供一种基于matd3算法的双臂机器人协同运动控制方法,基于matd3(multi-agent twin delayed deep deterministic policygradient)算法,通过控制机器人关节力矩,实现对双臂机器人的协同运动控制。该算法以“集中训练,分散执行”的思路为基础,充分利用双臂系统之间的状态信息交互,实现更加高效和稳定的双臂协同运动。
2、一种基于matd3算法的双臂机器人协同运动控制方法,包括以下步骤:
3、步骤1,针对双臂机器人系统,建立机械臂模型,包括机器人运动学及动力学方程。
4、步骤2,设计了一个多智能体matd3算法:建立matd3算法网络,设计网络结构及参数更新规则,具体的,对一个智能体分别建立一组策略-评价网络,策略网络根据状态信息选择动作组成动作对,采用cem算法对动作对进行搜索,选择价值最高的动作作为当前时刻智能体所执行的动作,评价网络根据智能体的状态信息评估动作价值,网络根据以上信息更新网络参数。
5、步骤3,将步骤2设计的算法用于双臂机器人协同运动控制,结合双臂机器人协同运动控制问题给出网络训练流程,具体的:训练面向双臂机器人协同控制的matd3网络模型,网络包括两个智能体,选择每个智能体的状态空间、动作空间和奖励函数,并给出网络训练流程。
6、步骤4,基于matd3的双臂机器人协同运动控制,基于已训练的模型进行双臂机器人协同运动控制。
7、有益效果
8、(1)本发明采用多智能体强化学习算法,每个机械臂分别设计一个控制器,可有效降低每个控制器计算时间,从而实现高效实时的双臂协同运动。
9、(2)本发明采用基于动力学的力矩控制策略有效地避免了繁琐的逆运动学解算过程,提高了控制效率和可靠性。
10、(3)本发明使用强化学习算法,机器人能够从与环境的互动中进行自主学习,从而优化关节力矩控制策略,降低模型不确定性的影响,提高控制精度。
1.一种基于matd3算法的双臂机器人协同运动控制方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,所述步骤1中的双臂机器人系统模型,包括机械臂1的运动学模型:,机械臂2的运动学模型:,其中,表示机械臂j从第i-1个连杆变换到第i个连杆所要经过的转移矩阵,表示第j个机械臂的第i个关节,i=1,…,6,j=1,2;
3.根据权利要求1所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤2中,所述matd3算法网络为:对每一个智能体分别建立一组策略-评价网络,包括一个策略网络、一个目标策略网络、两个评价网络、两个目标评价网络,设计网络参数包括策略网络参数、目标策略网络参数、两个评价网络参数、两个目标评价网络参数;步骤2.1.1,对于第n个智能体,其策略网络会根据自身采样观察到的状态信息,根据策略选择y个动作组成动作对:;
4.根据权利要求3所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤2中,所述matd3算法网络参数更新规则为:
5.根据权利要求4所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤2.2.2中,所述目标动作价值表示为:
6.根据权利要求4所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤2.2.3中,基于计算评价网络的loss 函数,更新评价网络的网络参数包括:
7.根据权利要求4所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤2.2.3中,软更新表示为:,τ为固定值。
8.根据权利要求1所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤3中,选择每个智能体的状态空间、动作空间和奖励函数具体为:选择机械臂1的状态空间,选择机械臂2的状态空间,设计机械臂1动作空间,设计机械臂2动作空间,设计奖励值:
9.根据权利要求8所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤3中,matd3算法网络训练具体步骤为:
10.根据权利要求1所述的基于matd3算法的双臂机器人协同运动控制方法,其特征在于,步骤4中,基于已训练的模型进行双臂机器人协同运动控制具体步骤如下: