1.一种基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,方法包括:构建刚性机械臂在不确定环境下的阻抗模型;
基于所述刚性机械臂在不确定环境下的阻抗模型,获取所述刚性机械臂的当前状态数据集;所述当前状态数据集用于表征所述刚性机械臂与不确定环境接触时,所述刚性机械臂末端位置变化与接触力的动态映射关系;
所述刚性机械臂在不确定环境下的阻抗模型为:
;
;
;
其中, 分别表示初始惯性参数和初始阻尼参数,ef表示刚性机械臂在力约束方向上的力跟踪偏差量, 表示由于接触力不确定性造成的估计误差, 表示由于环境位置不确定性造成的估计误差的导数, 表示由于环境位置不确定性造成的估计误差的二次导数, 和 分别表示阻尼调整参数和刚度调整参数; 表示刚性机械臂在力约束方向上的位置估计偏差,e表示刚性机械臂的位置偏差量,表示刚性机械臂的位置偏差量的二次导数, 表示刚性机械臂在力约束方向上的位置估计偏差的导数, 表示由于环境位置不确定性造成的估计误差;
预设机械臂动作策略为: ;其中,A表示刚性机械臂的动作;
基于强化学习算法和预设机械臂动作策略,根据所述刚性机械臂的当前状态数据集,确定所述刚性机械臂的当前动作以及对应的奖励值;
所述刚性机械臂的当前动作对应的奖励值的计算公式为:
;
;
;
;
其中,reward表示刚性机械臂的当前动作对应的奖励值, 为动态奖励;为稳态奖励;
为任务完成奖励; 为分配权重; , 为设定的最大区间数, 为到达每一区间的固定奖励值, 表示刚性机械臂在力约束方向上的力跟踪偏差量的值, 为每一区间对 的缩放系数,区间是以所述力跟踪偏差量的值 为基准划分得到的; 表示预设常数值, 和 分别表示任务完成获得的固定奖励值以及任务失败获得的固定奖励值,所述任务表示所述刚性机械臂在所述不确定环境下执行所述当前动作;
基于所述刚性机械臂的当前动作对所述刚性机械臂的当前状态数据集进行更新,以得到下一状态数据集;所述刚性机械臂的当前状态数据集、当前动作、当前动作对应的奖励值以及下一状态数据集构成经验四元组;多个经验四元组构成机械臂动作经验池;
从所述机械臂动作经验池中选取多个经验四元组作为训练样本,对DDPG模型中Actor‑Critic神经网络进行训练,以得到最优的Actor‑Critic神经网络;所述最优的Actor‑Critic神经网络用于根据所述刚性机械臂在不确定环境下的状态数据集,确定对应最优的动作。
2.根据权利要求1所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,所述刚性机械臂的当前状态数据集为: ;
其中,S表示刚性机械臂的当前状态数据集, 表示刚性机械臂在力约束方向上与环境的接触力; 表示刚性机械臂在力约束方向上的力跟踪偏差量、力跟踪偏差量的导数以及力跟踪偏差量的积分; 表示刚性机械臂在力约束方向的实际位置及实际速度; 表示刚性机械臂在力约束方向上的位置偏差量及位置偏差量的导数。
3.根据权利要求1所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,所述任务完成奖励中任务完成或任务失败的判断,具体包括:对于每一任务进程中的时间步,获取所述当前动作对应的位置命令;
当所述位置命令存在逆解时,判断所述位置命令的逆解对应的刚性机械臂的关节角,是否处于预设关节角范围内;
若刚性机械臂的关节角未处于预设关节角范围,则表明任务失败;
若刚性机械臂的关节角处于预设关节角范围,则判断所述位置命令的逆解对应的刚性机械臂的关节角,与不确定环境的接触力,是否处于预设接触力范围内;
若刚性机械臂的关节角与不确定环境的接触力处于预设接触力范围,则表明任务完成;
若刚性机械臂的关节角与不确定环境的接触力未处于预设接触力范围,则表明任务失败。
4.根据权利要求1所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,从所述机械臂动作经验池中选取多个经验四元组作为训练样本,对DDPG模型中Actor‑Critic神经网络进行训练,以得到最优的Actor‑Critic神经网络,具体包括:构建Actor神经网络和Critic神经网络;
将任一训练样本中刚性机械臂的当前状态数据集输入至所述Actor神经网络,以输出当前预测动作;所述当前预测动作用于控制所述刚性机械臂与不确定环境交互,以确定对应的下一状态数据和奖励值;
将所述训练样本中刚性机械臂的当前状态数据集对应的下一状态数据集以及所述当前预测动作,输入至所述Critic神经网络进行学习,基于最小化损失函数更新Critic神经网络参数,并输出预测动作价值函数值;
基于确定性梯度策略,根据所述预测动作价值函数值,对所述Actor神经网络参数进行更新;
基于多个训练样本,采用软更新方式,分别对所述Actor神经网络和所述Critic神经网络进行参数更新,以得到最优的Actor‑Critic神经网络。
5.根据权利要求4所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,所述最小化损失函数为:;
;
其中, 表示最小化损失函数的值,N表示训练样本的个数,yi表示时序差分目标,表示Critic神经网络, 表示Critic神经网络的参数, 表示输入至Critic神经网络的第i个状态, 表示输入至Critic神经网络的第i个状态对应的预测动作;ri表示i状态对应动作的奖励值, 表示折扣因子, 表示当前预测动作对应的下一状态,表示依据当前预测动作对应的下一状态更新后的Actor神经网络的动作输出,表示当前预测动作对应的下一状态对应的Critic神经网络的价值输出。
6.根据权利要求4所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,基于确定性梯度策略,根据所述预测动作价值函数值,对所述Actor神经网络参数进行更新,具体包括:根据公式
;
对所述Actor神经网络参数进行更新;
其中, 表示Actor神经网络 的参数,N表示训练样本的个数, 表示当前的策略梯度方向, 表示当前状态下,由当前动作引起的Q值变化,用以计算策略梯度从而确定 的更新方向。
7.一种基于深度强化学习的机械臂智能阻抗控制系统,用于实现权利要求1‑6任一项所述的基于深度强化学习的机械臂智能阻抗控制方法,其特征在于,系统包括:阻抗模型构建模块,用于构建刚性机械臂在不确定环境下的阻抗模型;
机械臂状态获取模块,用于基于所述刚性机械臂在不确定环境下的阻抗模型,获取所述刚性机械臂的当前状态数据集;所述当前状态数据集用于表征所述刚性机械臂与不确定环境接触时,所述刚性机械臂末端位置变化与接触力的动态映射关系;
机械臂动作确定模块,用于基于强化学习算法和预设机械臂动作策略,根据所述刚性机械臂的当前状态数据集,确定所述刚性机械臂的当前动作以及对应的奖励值;
机械臂动作经验池构建模块,用于基于所述刚性机械臂的当前动作对所述刚性机械臂的当前状态数据集进行更新,以得到下一状态数据集;所述刚性机械臂的当前状态数据集、当前动作、当前动作对应的奖励值以及下一状态数据集构成经验四元组;多个经验四元组构成机械臂动作经验池;
最优动作模型构建模块,用于从所述机械臂动作经验池中选取多个经验四元组作为训练样本,对DDPG模型中Actor‑Critic神经网络进行训练,以得到最优的Actor‑Critic神经网络;所述最优的Actor‑Critic神经网络用于根据所述刚性机械臂在不确定环境下的状态数据集,确定对应最优的动作。