为何以及如何:将强化学习应用于机器人运动学,特别是逆运动学的求解中?

本文出自《具身智能基础》专栏。是本栏目下的第七篇文章,前面我们分享过强化学习的基础原理、逻辑闭环,今天这篇将重点关注【强化学习的应用层】,聚焦它在「机器人运动学」中的落地实践。

全文 5000 余字,建议收藏阅读。

目录

01    机器人正运动学与逆运动学基础定义

正运动学

逆运动学

强化学习

02    两类运动学模块对强化学习的适配倾向

03    强化学习求解逆运动学经典研究与落地工作

第一类是基于DDPG深度确定性策略梯度算法的单体机械臂逆运动学求解工作

第二类是基于PPO、MAPPO算法的多约束机械臂逆运动学优化工作

第三类是基于强化学习匹配逆运动学组合工作

第四类是针对底层数学的强化学习融合传统伪逆矩阵的混合IK求解工作

第五类是分层强化学习人形机器人全身逆运动学工作

04    怎么用的更好


什么是“逆运动学”?

简单说,就是告诉机械臂"你的末端要到达这个位置",然后反算出每个关节该转多少度。

听起来不复杂,但实际算起来也不简单:同一个末端位置,可能对应好几种关节角度组合;关节还不能转超限;手臂自身也不能和障碍物碰上。传统方法在这些问题上非常吃力。

强化学习这几年被越来越多地用来干这个活。思路很简单:让算法不断试错,根据偏差调整输出,慢慢练出一套靠谱的策略。

既然提到了“逆”,那“正”运动学呢?强化学习是否也是必要的?

本文聚焦于强化学习与运动学的耦合机理:

首先厘清正、逆运动学的数学定义;

从算法适配性层面系统论证逆运动学更依赖强化学习的深层原因;

最后梳理五类代表性研究工作:涵盖DDPG、PPO/MAPPO、模型基学习、混合IK架构及分层强化学习,到底它们是如何破解逆运动学难题的?

后续本专栏还将推出两篇专项内容,分别详解正向运动学与逆向运动学的完整理论与实操,欢迎持续关注。

01    机器人正运动学与逆运动学基础定义

正运动学

正运动学是机器人领域基础运动计算模块:

正运动学是以机器人全部关节转动角度作为输入参数,求解机器人末端执行器空间位置与姿态的运算过程。

正运动学基础数学表达式为:

P = F(\theta)

式中$\theta$是全部机器人关节角度集合,$P$是机器人末端执行器空间位姿,$F()$代表固定几何映射函数。

以机械臂设备为例,机械臂每一个关节拥有独立转动角度参数:

输入全部关节角度数值后,正运动学可以推算出机械臂夹具末端在三维空间内所处位置、朝向状态。

这套运算原理依托机械臂连杆长度、关节夹角做空间坐标叠加计算,手臂每一节杆件的空间坐标依次累加,最终得到末端点位坐标。正运动学具备固定映射规律,一组确定的关节角度,对应一组唯一的末端位姿结果。

逆运动学

逆运动学(Inverse kinematics,简称IK)是匹配正运动学的反向运算模块:

逆运动学是以机器人末端执行器目标位置、目标姿态作为输入参数,反推机器人所有关节需要调整的转动角度的运算过程。

逆运动学基础数学表达式为:

\theta = F^{-1}\left(P_{target}\right)

式中$P_{target}$是预设末端目标位姿,$F^{-1}()$为正向映射的逆求解函数,该函数不存在固定唯一解析式。

以日常手臂动作为例:

设定手部落点位置后,逆运动学可以匹配肩膀、手肘、手腕各个关节的转动幅度。

这套运算原理需要反向拆解末端坐标,拆分每一段连杆所需旋转角度,同一个末端坐标能够拆分出多套连杆角度组合。

▲图| 分层强化学习全身逆运动学架构

强化学习

强化学习是智能体通过和环境持续交互、不断试错迭代,依据环境反馈奖励信号调整自身行为策略,逐步完成指定目标的算法框架。

强化学习基础迭代公式为:

$R = \sum_{t=0}^{T} r_t$

式中$R$为累计总奖励值,$r_t$为单步动作即时奖励,算法以最大化累计奖励为运行目标。

对应运动学求解原理:

机器人输出一组关节角度,比对末端实际位置和目标位置差距,生成奖励数值,算法根据奖励数值修改下一轮关节角度输出方案,反复迭代优化结果。

正运动学正向推理就好,但是逆运动学需要反向推算比较困难,这时候就比较适合神经网络(本身是一个大函数)了。

而强化学习用神经网络来记录各种状态对应,用强化方式自动学习和巩固学习成果,自然就适合逆运动学的推算了。

02    两类运动学模块对强化学习的适配倾向

顺着前面的直觉,更具体的来说。

正运动学适配传统矩阵运算、几何参数建模方法完成求解,刚性结构工业机械臂、协作机械臂场景中,行业内较少选用强化学习完成正运动学运算

常规工况下,正运动学依托机器人DH几何参数、空间矩阵公式即可完成快速运算,算法运行流程吻合正向固定映射逻辑。

逆运动学整体更倾向结合强化学习完成求解工作,冗余自由度机械臂、柔性机器人、多障碍物作业场景中,强化学习的落地应用数量更多。

常规数值迭代、解析求解算法适配场景存在局限,强化学习的交互迭代模式,可以满足逆运动学复杂求解需求。

部分特殊机器人设备存在例外,软体连续体机器人、结构磨损非标机械臂无精准几何建模参数,这类设备的正运动学,也会小范围搭配强化学习来完成模型拟合工作。

▲图| 晶圆机器人逆运动学解算示意图

逆运动学更依赖强化学习的主要原因如下:

  • 第一,逆运动学存在多组可行解的固有属性

传统求解算法仅能输出局部范围内的关节角度方案,强化学习依托环境试错搜索,可以遍历空间内多组可行关节解,适配冗余七轴机械臂、双臂协同机器人的求解需求。

冗余自由度机器人指代关节数量多于末端位姿控制所需最小关节数量的机器人设备,设备拥有更多关节调节空余空间。

  • 第二,逆运动学求解需要叠加多项运行约束条件

约束条件包含关节最大转动限位、机械臂自身碰撞规避、作业环境障碍物避让、关节运动平滑度控制。约束通用数学表达为:

\theta_{min} \le \theta \le \theta_{max},\quad d_{obs} > d_{safe}

左侧公式代表关节角度上下限位约束,右侧公式代表机械臂与障碍物安全距离约束。

传统算法需要人工拆分约束、叠加数学公式完成计算,流程工作量偏大;

强化学习可以将各类约束写入奖励信号,对应惩罚公式为:

r_{penalty} = -\lambda \cdot \left| \theta - \theta_{limit} \right|

超出约束范围就扣除奖励数值,同步完成多类条件适配求解。

  • 第三,传统逆运动学数值算法容易过拟合机器人奇异点位陷入运算停滞状态。

奇异点对应雅可比矩阵数学特征为:

\det(J) = 0

$J$代表雅可比矩阵,矩阵行列式数值归零时,关节速度和末端速度失去线性对应关系。

代表雅可比矩阵,矩阵行列式数值归零时,关节速度和末端速度失去线性对应关系。

奇异点指代机械臂手臂结构夹角临界位置,该位置下关节运动调控灵敏度大幅下降。强化学习依托前期环境学习经验,可以自主绕行奇异点位,降低运算卡顿、机械臂抖动问题出现概率。

  • 第四,工业机器人长期运行会出现结构标定偏差、部件轻微形变

固定公式类传统逆运动学算法适配性下降,强化学习可以在线微调运动策略,适配机器人设备工况变化,无需重新拆解设备完成参数标定。

  • 第五,正运动学为单向固定数学映射,无复杂约束、多解、工况扰动问题。

传统数学运算耗时短、运行成本低,强化学习样本训练、模型推理的运行特点,无法为正运动学带来明显增益。

如果说得更直白一些,神经网络作为一种数学工具,它把大量的精确数学计算简化成了权重计算,从而有更强的鲁棒性,计算简化性。

这也是为什么现在从事算法研究工作的人,基础数学的要求没有以前那么高的一个潜在原因。

03    强化学习求解逆运动学经典研究与落地工作

当前,将强化学习应用于逆运动学求解的研究已形成若干主流范式,其差异主要体现在对运动学模型依赖程度、算法架构以及应用场景的不同考量上

根据算法与运动学模型的耦合方式及任务复杂度,可大致归为以下五类。

第一类是基于DDPG深度确定性策略梯度算法的单体机械臂逆运动学求解工作

该类工作依托深度确定性策略梯度算法搭建连续型运动控制智能体,比较贴近机械臂关节角度连续可控、无离散跳变的硬件运动属性,符合机械臂运动学连续流形空间理论。

▲图| DDPG算法架构图

算法动作更新基础公式:

\theta_{new} = \theta_{old} + \nabla_{\theta} J

依托策略梯度沿着奖励上升方向微调关节角度输出,规避离散算法带来的关节抖动问题。

工作将末端位姿误差、关节限位惩罚纳入奖励函数,奖励函数表达式:

r = -\left\| P_{real} - P_{target} \right\|_2 + r_{limit}

依靠位姿二范数误差衡量末端定位偏差,结合软约束惩罚项平衡定位精度与关节运动边界。

从运动学理论层面分析,该方案规避传统数值IK雅可比矩阵迭代梯度爆炸问题:

以端到端策略拟合关节角-末端位姿隐式映射,无需实时求解雅可比伪逆矩阵,是早期深度强化学习脱离解析运动学模型、落地固定自由度工业机械臂IK求解的代表性方案。

DDPG算法是适配连续动作输出的经典深度强化学习算法,依托双网络架构拆分策略更新与价值评估流程,适合机器人关节连续角度调控任务,理论层面降低高维关节动作空间的训练发散概率。

第二类是基于PPO、MAPPO算法的多约束机械臂逆运动学优化工作

该系列工作依托近端策略裁剪约束理论,限制单次策略更新幅度,解决DDPG算法训练梯度震荡、策略易崩溃的理论缺陷,整体算法训练稳定性得到优化。

▲图| MAPPO算法原理图

  • 单机械臂PPO-IK方案

依托优势函数约束关节动作更新区间,同步叠加自碰撞规避、能耗调控、运动加减速平滑多项耦合约束,符合工业机械臂运动学二阶动力学联动约束理论;

  • 双臂协同场景采用MAPPO多智能体框架

拆分双臂两组关节控制智能体,构建分布式运动学求解架构,匹配双臂耦合逆运动学强耦合、变量维度翻倍的理论特征。

传统双臂IK需要联立两组运动学方程求解耦合变量,方程维度叠加后求解复杂度指数上升,该类多智能体强化学习方案拆解耦合运动学约束,通过多智能体奖励博弈完成协同IK求解,适配桌面级协作机械臂实物调试。

部分方案采用分层分步训练逻辑,拆分机械臂小臂、大臂运动学子空间学习流程,拆解高维运动学解空间,降低模型收敛难度与求解算力消耗。

MAPPO算法为多智能体近端策略优化算法,依托集中式价值评估、分布式动作输出理论,适配双臂机器人、分体式移动机械臂协同运动求解。

第三类是基于强化学习匹配逆运动学组合工作

该类工作依托机器人运动学系统辨识理论,先用浅层神经网络拟合非标机器人、柔性机器人隐式正运动学模型,替代传统DH参数、POE指数积显式建模体系。

拟合模型满足 $\hat{P} = F_{NN}(\theta)$模型拟合公式,$\hat{P}$ 为网络预测末端位姿。

针对软体连续体机器人连杆形变、弹性耦合、无刚性连杆几何参数的运动学建模难题,该类方案放弃刚体机器人正向几何建模理论,依托数据驱动完成柔性杆件形变、关节弹性位移的隐式拟合;

再依托学习到的可微分前向运动模型搭建模型基强化学习框架,借助模型反向梯度传播直接完成目标位姿到关节角的梯度推演,摆脱无模型强化学习海量环境采样的理论短板。

从运动学理论来看,该架构实现「数据驱动正模型+梯度驱动逆求解」闭环,完成无精准DH参数、非线性形变设备的逆运动学求解,适配软体连续体机器人、磨损非标工业机械臂作业场景。

模型基强化学习指代提前学习环境、设备运动模型,再开展策略训练的强化学习分支,理论层面压缩运动学求解交互样本量,提升IK求解收敛速率。

如果硬要对比,这种很类似于“端到端”方案。

第四类是针对底层数学的强化学习融合传统伪逆矩阵的混合IK求解工作

该类工作依托冗余机械臂零空间运动学分解理论,保留传统雅可比伪逆矩阵主空间求解框架,主空间负责完成末端目标位姿精准定位,对应基础IK核心求解逻辑;

利用强化学习优化冗余自由度零空间关节姿态,零空间运动学通用公式为:

\dot{\theta} = \dot{\theta}_{task} + \left(I - J^+ J\right)\dot{\theta}_{null}

公式内第一项为末端轨迹任务关节速度,第二项为零空间冗余关节自运动分量。

传统算法依靠固定权重矩阵调配零空间关节姿态,约束权衡灵活性较低,该混合架构通过强化学习策略自适应调整零空间自运动权重,动态平衡机械臂障碍物避让、关节能耗、机械臂杆件内应力多项次级目标,兼顾传统数值IK固有求解精度与强化学习多约束自适应优化能力。

该类理论方案补齐传统零空间加权法权重参数人工调参的缺陷,多用于工业避障抓取、流水线物料转运高实时、高精度双需求场景。

其中零空间指代冗余机械臂不改变末端位姿前提下,关节可自由调节的运动空间,属于冗余自由度运动学核心理论概念。

第五类是分层强化学习人形机器人全身逆运动学工作

该类工作依托全身运动学解耦理论与层级强化学习马尔可夫决策过程拆分理论:

拆分顶层末端轨迹规划、底层关节角度求解双层策略,构建跨尺度全身IK求解体系。

  • 顶层高层智能体以躯干、四肢末端笛卡尔空间位姿为状态变量,输出全局躯体运动基准轨迹,解决人形机器人多肢体联动、基座浮动、躯干形变耦合运动学难题;
  • 底层低层智能体以单肢体关节状态为输入,完成单分支肢体精细化逆运动学映射,拆分浮动基座下耦合运动学方程。

相较于机械臂固定基座运动学,人形机器人基座无约束浮动,整体运动学方程新增基座位姿耦合变量,方程非线性程度大幅提升,传统全身IK极易出现解空间坍塌问题。

▲图| 分层强化学习是从躯干到四肢到关节逐层分而治之

分层强化学习通过层级奖励函数解耦全局躯体平衡奖励、局部关节定位奖励,完成人形机器人躯干、四肢联动逆运动学计算,适配人形机器人行走、上肢抓取复合任务,也是当下仿生机器人运动学结合强化学习的前沿理论工作

04    怎么用的更好

所以,逆运动学那些多解、限位、避障的麻烦事,强化学习到底解决得怎么样?

梳理完五类方案,可以得出一个基本判断:

确实能解决,而且已经形成了针对不同场景的成熟路径。

单臂场景用DDPG,多约束场景上PPO,双臂协同走MAPPO,非标设备考虑模型基方法,兼顾精度和灵活性就选混合架构,人形机器人这类高自由度系统则靠分层强化学习逐级拆解。

但也需要说清楚:强化学习不是来替代传统方法的。

雅可比矩阵该用还得用,精度和效率靠它兜底;强化学习真正发挥作用的地方,是传统方法不擅长处理的环节:

冗余自由度怎么利用?多目标怎么权衡?非标设备怎么适配?

两者各司其职,混搭着用,反而是目前最务实的做法。

从工业机械臂到人形机器人,强化学习在运动学求解上的角色,也会从"能不能用"逐渐变成"怎么用得更好"。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐