强化学习求解逆运动学,这五类方案值得重点关注! 为何以及如何将强化学习应用于机器人运动学特别是逆运动学的求解中本文出自《具身智能基础》专栏。是本栏目下的第七篇文章前面我们分享过强化学习的基础原理、逻辑闭环今天这篇将重点关注【强化学习的应用层】聚焦它在「机器人运动学」中的落地实践。全文5000余字建议收藏阅读。目录01 机器人正运动学与逆运动学基础定义正运动学逆运动学强化学习02 两类运动学模块对强化学习的适配倾向03 强化学习求解逆运动学经典研究与落地工作第一类是基于DDPG深度确定性策略梯度算法的单体机械臂逆运动学求解工作第二类是基于PPO、MAPPO算法的多约束机械臂逆运动学优化工作第三类是基于强化学习匹配逆运动学组合工作第四类是针对底层数学的强化学习融合传统伪逆矩阵的混合IK求解工作第五类是分层强化学习人形机器人全身逆运动学工作04 怎么用的更好什么是“逆运动学”简单说就是告诉机械臂你的末端要到达这个位置然后反算出每个关节该转多少度。听起来不复杂但实际算起来也不简单同一个末端位置可能对应好几种关节角度组合关节还不能转超限手臂自身也不能和障碍物碰上。传统方法在这些问题上非常吃力。强化学习这几年被越来越多地用来干这个活。思路很简单让算法不断试错根据偏差调整输出慢慢练出一套靠谱的策略。既然提到了“逆”那“正”运动学呢强化学习是否也是必要的本文聚焦于强化学习与运动学的耦合机理首先厘清正、逆运动学的数学定义从算法适配性层面系统论证逆运动学更依赖强化学习的深层原因最后梳理五类代表性研究工作涵盖DDPG、PPO/MAPPO、模型基学习、混合IK架构及分层强化学习到底它们是如何破解逆运动学难题的后续本专栏还将推出两篇专项内容分别详解正向运动学与逆向运动学的完整理论与实操欢迎持续关注。01 机器人正运动学与逆运动学基础定义正运动学正运动学是机器人领域基础运动计算模块正运动学是以机器人全部关节转动角度作为输入参数求解机器人末端执行器空间位置与姿态的运算过程。正运动学基础数学表达式为式中是全部机器人关节角度集合是机器人末端执行器空间位姿代表固定几何映射函数。以机械臂设备为例机械臂每一个关节拥有独立转动角度参数输入全部关节角度数值后正运动学可以推算出机械臂夹具末端在三维空间内所处位置、朝向状态。这套运算原理依托机械臂连杆长度、关节夹角做空间坐标叠加计算手臂每一节杆件的空间坐标依次累加最终得到末端点位坐标。正运动学具备固定映射规律一组确定的关节角度对应一组唯一的末端位姿结果。逆运动学逆运动学Inverse kinematics简称IK是匹配正运动学的反向运算模块逆运动学是以机器人末端执行器目标位置、目标姿态作为输入参数反推机器人所有关节需要调整的转动角度的运算过程。逆运动学基础数学表达式为式中是预设末端目标位姿为正向映射的逆求解函数该函数不存在固定唯一解析式。以日常手臂动作为例设定手部落点位置后逆运动学可以匹配肩膀、手肘、手腕各个关节的转动幅度。这套运算原理需要反向拆解末端坐标拆分每一段连杆所需旋转角度同一个末端坐标能够拆分出多套连杆角度组合。▲图| 分层强化学习全身逆运动学架构强化学习强化学习是智能体通过和环境持续交互、不断试错迭代依据环境反馈奖励信号调整自身行为策略逐步完成指定目标的算法框架。强化学习基础迭代公式为式中为累计总奖励值为单步动作即时奖励算法以最大化累计奖励为运行目标。对应运动学求解原理机器人输出一组关节角度比对末端实际位置和目标位置差距生成奖励数值算法根据奖励数值修改下一轮关节角度输出方案反复迭代优化结果。正运动学正向推理就好但是逆运动学需要反向推算比较困难这时候就比较适合神经网络本身是一个大函数了。而强化学习用神经网络来记录各种状态对应用强化方式自动学习和巩固学习成果自然就适合逆运动学的推算了。02 两类运动学模块对强化学习的适配倾向顺着前面的直觉更具体的来说。正运动学适配传统矩阵运算、几何参数建模方法完成求解刚性结构工业机械臂、协作机械臂场景中行业内较少选用强化学习完成正运动学运算。常规工况下正运动学依托机器人DH几何参数、空间矩阵公式即可完成快速运算算法运行流程吻合正向固定映射逻辑。逆运动学整体更倾向结合强化学习完成求解工作冗余自由度机械臂、柔性机器人、多障碍物作业场景中强化学习的落地应用数量更多。常规数值迭代、解析求解算法适配场景存在局限强化学习的交互迭代模式可以满足逆运动学复杂求解需求。部分特殊机器人设备存在例外软体连续体机器人、结构磨损非标机械臂无精准几何建模参数这类设备的正运动学也会小范围搭配强化学习来完成模型拟合工作。▲图| 晶圆机器人逆运动学解算示意图逆运动学更依赖强化学习的主要原因如下第一逆运动学存在多组可行解的固有属性。传统求解算法仅能输出局部范围内的关节角度方案强化学习依托环境试错搜索可以遍历空间内多组可行关节解适配冗余七轴机械臂、双臂协同机器人的求解需求。冗余自由度机器人指代关节数量多于末端位姿控制所需最小关节数量的机器人设备设备拥有更多关节调节空余空间。第二逆运动学求解需要叠加多项运行约束条件。约束条件包含关节最大转动限位、机械臂自身碰撞规避、作业环境障碍物避让、关节运动平滑度控制。约束通用数学表达为左侧公式代表关节角度上下限位约束右侧公式代表机械臂与障碍物安全距离约束。传统算法需要人工拆分约束、叠加数学公式完成计算流程工作量偏大强化学习可以将各类约束写入奖励信号对应惩罚公式为超出约束范围就扣除奖励数值同步完成多类条件适配求解。第三传统逆运动学数值算法容易过拟合机器人奇异点位陷入运算停滞状态。奇异点对应雅可比矩阵数学特征为代表雅可比矩阵矩阵行列式数值归零时关节速度和末端速度失去线性对应关系。代表雅可比矩阵矩阵行列式数值归零时关节速度和末端速度失去线性对应关系。奇异点指代机械臂手臂结构夹角临界位置该位置下关节运动调控灵敏度大幅下降。强化学习依托前期环境学习经验可以自主绕行奇异点位降低运算卡顿、机械臂抖动问题出现概率。第四工业机器人长期运行会出现结构标定偏差、部件轻微形变。固定公式类传统逆运动学算法适配性下降强化学习可以在线微调运动策略适配机器人设备工况变化无需重新拆解设备完成参数标定。第五正运动学为单向固定数学映射无复杂约束、多解、工况扰动问题。传统数学运算耗时短、运行成本低强化学习样本训练、模型推理的运行特点无法为正运动学带来明显增益。如果说得更直白一些神经网络作为一种数学工具它把大量的精确数学计算简化成了权重计算从而有更强的鲁棒性计算简化性。这也是为什么现在从事算法研究工作的人基础数学的要求没有以前那么高的一个潜在原因。03 强化学习求解逆运动学经典研究与落地工作当前将强化学习应用于逆运动学求解的研究已形成若干主流范式其差异主要体现在对运动学模型依赖程度、算法架构以及应用场景的不同考量上。根据算法与运动学模型的耦合方式及任务复杂度可大致归为以下五类。第一类是基于DDPG深度确定性策略梯度算法的单体机械臂逆运动学求解工作该类工作依托深度确定性策略梯度算法搭建连续型运动控制智能体比较贴近机械臂关节角度连续可控、无离散跳变的硬件运动属性符合机械臂运动学连续流形空间理论。▲图| DDPG算法架构图算法动作更新基础公式依托策略梯度沿着奖励上升方向微调关节角度输出规避离散算法带来的关节抖动问题。工作将末端位姿误差、关节限位惩罚纳入奖励函数奖励函数表达式依靠位姿二范数误差衡量末端定位偏差结合软约束惩罚项平衡定位精度与关节运动边界。从运动学理论层面分析该方案规避传统数值IK雅可比矩阵迭代梯度爆炸问题以端到端策略拟合关节角-末端位姿隐式映射无需实时求解雅可比伪逆矩阵是早期深度强化学习脱离解析运动学模型、落地固定自由度工业机械臂IK求解的代表性方案。DDPG算法是适配连续动作输出的经典深度强化学习算法依托双网络架构拆分策略更新与价值评估流程适合机器人关节连续角度调控任务理论层面降低高维关节动作空间的训练发散概率。第二类是基于PPO、MAPPO算法的多约束机械臂逆运动学优化工作该系列工作依托近端策略裁剪约束理论限制单次策略更新幅度解决DDPG算法训练梯度震荡、策略易崩溃的理论缺陷整体算法训练稳定性得到优化。▲图| MAPPO算法原理图单机械臂PPO-IK方案依托优势函数约束关节动作更新区间同步叠加自碰撞规避、能耗调控、运动加减速平滑多项耦合约束符合工业机械臂运动学二阶动力学联动约束理论双臂协同场景采用MAPPO多智能体框架拆分双臂两组关节控制智能体构建分布式运动学求解架构匹配双臂耦合逆运动学强耦合、变量维度翻倍的理论特征。传统双臂IK需要联立两组运动学方程求解耦合变量方程维度叠加后求解复杂度指数上升该类多智能体强化学习方案拆解耦合运动学约束通过多智能体奖励博弈完成协同IK求解适配桌面级协作机械臂实物调试。部分方案采用分层分步训练逻辑拆分机械臂小臂、大臂运动学子空间学习流程拆解高维运动学解空间降低模型收敛难度与求解算力消耗。MAPPO算法为多智能体近端策略优化算法依托集中式价值评估、分布式动作输出理论适配双臂机器人、分体式移动机械臂协同运动求解。第三类是基于强化学习匹配逆运动学组合工作该类工作依托机器人运动学系统辨识理论先用浅层神经网络拟合非标机器人、柔性机器人隐式正运动学模型替代传统DH参数、POE指数积显式建模体系。拟合模型满足模型拟合公式为网络预测末端位姿。针对软体连续体机器人连杆形变、弹性耦合、无刚性连杆几何参数的运动学建模难题该类方案放弃刚体机器人正向几何建模理论依托数据驱动完成柔性杆件形变、关节弹性位移的隐式拟合再依托学习到的可微分前向运动模型搭建模型基强化学习框架借助模型反向梯度传播直接完成目标位姿到关节角的梯度推演摆脱无模型强化学习海量环境采样的理论短板。从运动学理论来看该架构实现「数据驱动正模型梯度驱动逆求解」闭环完成无精准DH参数、非线性形变设备的逆运动学求解适配软体连续体机器人、磨损非标工业机械臂作业场景。模型基强化学习指代提前学习环境、设备运动模型再开展策略训练的强化学习分支理论层面压缩运动学求解交互样本量提升IK求解收敛速率。如果硬要对比这种很类似于“端到端”方案。第四类是针对底层数学的强化学习融合传统伪逆矩阵的混合IK求解工作该类工作依托冗余机械臂零空间运动学分解理论保留传统雅可比伪逆矩阵主空间求解框架主空间负责完成末端目标位姿精准定位对应基础IK核心求解逻辑利用强化学习优化冗余自由度零空间关节姿态零空间运动学通用公式为公式内第一项为末端轨迹任务关节速度第二项为零空间冗余关节自运动分量。传统算法依靠固定权重矩阵调配零空间关节姿态约束权衡灵活性较低该混合架构通过强化学习策略自适应调整零空间自运动权重动态平衡机械臂障碍物避让、关节能耗、机械臂杆件内应力多项次级目标兼顾传统数值IK固有求解精度与强化学习多约束自适应优化能力。该类理论方案补齐传统零空间加权法权重参数人工调参的缺陷多用于工业避障抓取、流水线物料转运高实时、高精度双需求场景。其中零空间指代冗余机械臂不改变末端位姿前提下关节可自由调节的运动空间属于冗余自由度运动学核心理论概念。第五类是分层强化学习人形机器人全身逆运动学工作该类工作依托全身运动学解耦理论与层级强化学习马尔可夫决策过程拆分理论拆分顶层末端轨迹规划、底层关节角度求解双层策略构建跨尺度全身IK求解体系。顶层高层智能体以躯干、四肢末端笛卡尔空间位姿为状态变量输出全局躯体运动基准轨迹解决人形机器人多肢体联动、基座浮动、躯干形变耦合运动学难题底层低层智能体以单肢体关节状态为输入完成单分支肢体精细化逆运动学映射拆分浮动基座下耦合运动学方程。相较于机械臂固定基座运动学人形机器人基座无约束浮动整体运动学方程新增基座位姿耦合变量方程非线性程度大幅提升传统全身IK极易出现解空间坍塌问题。▲图| 分层强化学习是从躯干到四肢到关节逐层分而治之分层强化学习通过层级奖励函数解耦全局躯体平衡奖励、局部关节定位奖励完成人形机器人躯干、四肢联动逆运动学计算适配人形机器人行走、上肢抓取复合任务也是当下仿生机器人运动学结合强化学习的前沿理论工作。04 怎么用的更好所以逆运动学那些多解、限位、避障的麻烦事强化学习到底解决得怎么样梳理完五类方案可以得出一个基本判断确实能解决而且已经形成了针对不同场景的成熟路径。单臂场景用DDPG多约束场景上PPO双臂协同走MAPPO非标设备考虑模型基方法兼顾精度和灵活性就选混合架构人形机器人这类高自由度系统则靠分层强化学习逐级拆解。但也需要说清楚强化学习不是来替代传统方法的。雅可比矩阵该用还得用精度和效率靠它兜底强化学习真正发挥作用的地方是传统方法不擅长处理的环节冗余自由度怎么利用多目标怎么权衡非标设备怎么适配两者各司其职混搭着用反而是目前最务实的做法。从工业机械臂到人形机器人强化学习在运动学求解上的角色也会从能不能用逐渐变成怎么用得更好。