Home / 机器人学习 / ProMP:把动作技能表示为轨迹分布

008|ProMP:把动作技能表示为轨迹分布

系列首页 · 上一篇 · 下一篇

原论文:Probabilistic Movement Primitives,Paraschos、Daniel、Peters、Neumann,NIPS 2013。原文。

先接住前作的问题

DMP用吸引结构保留终点,却没有把多条成功示范之间的跨关节相关性本身作为学习对象。ProMP从联合轨迹分布回答“允许哪里变化、哪些变化要一起发生”,不继承DMP的同一稳定性证明。

五个前置概念

五个前置概念是基函数、协方差、高斯条件分布、概率乘积与相位。基函数压缩轨迹,协方差表达协调,条件化注入要求,乘积寻找共同支持,相位组织时间伸缩。

一、问题设定:多条成功轨迹怎样保留跨关节的协调

两次伸手动作看起来略有不同,却都准确抓住杯子:肩膀往左一点,手肘就可以往右补偿。若只保留每个关节的平均曲线,就会丢掉这种协调;若分别对每个关节加独立噪声,原本互相抵消的变化又可能让手偏离杯口。

二、以权重协方差条件化整段运动

ProMP 将技能表示为轨迹分布,尤其保留跨时间和跨关节的相关性。条件化可以调整目标或中间点,概率分布的乘积可以表达多个要求的共同满足。原文 §2、表 1

从轨迹回归到权重分布

对某个时间点,用基函数写运动:

yt=Φt⊤w+ϵy,w∼N(μw,Σw).y_t=\Phi_t^\top w+\epsilon_y,\qquad w\sim\mathcal N(\mu_w,\Sigma_w).

ww 控制整条运动,Φt\Phi_t 选择当前相位对应的形状组合。将位置与速度堆叠、把多个自由度的权重连接起来,可以在一个分布里表达整机协调。

由线性高斯关系:

p(yt)=N(Φt⊤μw, Φt⊤ΣwΦt+Σy).p(y_t)=\mathcal N (\Phi_t^\top\mu_w,\, \Phi_t^\top\Sigma_w\Phi_t+\Sigma_y).

均值给出典型运动,协方差描述哪些变化一起发生。它不是简单给每个时刻放一个互不相关的高斯,因为不同时间共享同一个 ww。

要素 ProMP 的角色
数据 多条运动示范及其阶段对齐
学习目标 拟合轨迹/权重分布
输出 可采样、条件化与组合的运动模型
奖励 基础模仿过程不需要环境奖励
控制 根据目标分布推导或实现反馈跟踪
任务参数 中间点、终点、速度等条件

多个示范里的方差也不一定全部代表“允许偏差”。它可能混有测量误差、不同目标和操作员习惯。建模前必须判断哪些变化属于同一种技能,哪些应作为条件或不同模式分开。

如何用一个新目标调整整条运动

假设要求某个阶段满足观测 y∗y^*,其允许误差协方差为 RR,对应矩阵为 HH。条件化后的权重均值为:

μw′=μw+ΣwH⊤(HΣwH⊤+R)−1(y∗−Hμw).\mu'_w=\mu_w+ \Sigma_wH^\top(H\Sigma_wH^\top+R)^{-1} (y^*-H\mu_w).

协方差相应收缩。这个形式与高斯条件概率相同:目标误差通过先验相关性传播到整条轨迹,而不是只把最后一个点硬改过去。

若 RR 很小,模型更强地满足目标;若较大,则只温和偏向目标。过分自信的条件可能迫使轨迹离开真实可行区域,因此小 RR 并不天然更好。

乘积不是“把两个技能任选一个”

两个高斯的乘积会偏向两者共同有概率的区域,精度矩阵相加:

Σ−1=Σ1−1+Σ2−1.\Sigma^{-1}=\Sigma_1^{-1}+\Sigma_2^{-1}.

混合分布则表示“选择技能 1 或技能 2”。前者类似同时满足两个软约束,后者类似保留两个行为选项。将两者混淆,会错误解释技能组合的结果。

把条件化算到一维就能看清“软目标”。设权重先验 w∼N(0,1)w\sim\mathcal N(0,1)、目标观测模型为 y∗=Hw+ϵy^*=Hw+\epsilon,独立噪声 ϵ∼N(0,R)\epsilon\sim\mathcal N(0,R);取 y∗=2y^*=2、观测系数 H=1H=1、噪声方差 R=3R=3,增益为 1/(1+3)=1/41/(1+3)=1/4,后验均值变为 0.50.5、方差为 3/43/4。若 RR 降到 1/31/3,均值变为 1.51.5、方差为 1/41/4。这些是教学数值,并非机器人结果。

这个推导也规定了怎样读原文条件化图:更窄阴影表示在所建概率模型下的不确定性收缩,未必表示真实跟踪误差同样缩小。若示范权重估计有系统偏差,小 RR 只会使一个偏移分布更自信;所以应另外检验真实到达位置与控制约束。原文条件化段

一个协调的手算例子

教学构造:两关节位置 q1,q2q_1,q_2 都有方差 1,协方差为 −0.9,而手端关键方向近似为 x=q1+q2x=q_1+q_2。则:

Var⁡(x)=1+1+2(−0.9)=0.2.\operatorname{Var}(x)=1+1+2(-0.9)=0.2.

各关节变化很大,末端却很稳定。若把相关性丢掉,方差变成 2,增加了一个数量级。这说明协方差不是只用来画漂亮阴影,而是控制任务中真实的协调信息。

再假设原权重分布很窄,新目标却离所有示范很远。高斯条件公式仍会给出答案,但可能需要极端参数。这是数学可计算与物理可执行的区别,不能因为矩阵可逆就认为新轨迹合理。

三、拟合联合权重分布并按新约束条件化

条件化改变整组相关权重,而不是逐个时刻独立改位置。实现时先从多条示范估计联合分布,再把目标或中间点作为观测加入,最后生成一致的轨迹。

输入:相同技能的多条示范、相位定义、基函数
对每条示范:
    对齐相位与时间尺度
    回归整条轨迹的权重 w_i
估计权重均值 mu_w 与协方差 Sigma_w
构成轨迹分布 p(y_t)

指定新任务时:
    将目标/中间点写成线性观测或合适近似
    对权重分布做条件化
    若多个运动要求同时激活,按概率乘积组合
    由新分布生成参考轨迹或反馈控制
输出:调整后的运动分布及执行轨迹

采样时应先采一个权重向量,再生成完整轨迹;每时刻独立采样边缘分布会破坏时间相关性。使用概率反馈控制时还需要相应模型和执行条件,不能把离线分布拟合直接等同于闭环稳定证明。

四、把轨迹变异与目标条件化分开验证

关节各自变化很大但末端仍准确的算例说明了协方差的作用。原图应检验这种协调与条件化效果,而不是只看平均轨迹是否平滑。

原图怎么读: 图3,PDF第7页。先比较直线射门与转角射门各自的样本,再看联合数据训练和分布乘积:前者保留多样性,后者只强调两种分布共同支持的区域。

Probabilistic Movement Primitives,图3:先比较直线射门与转角射门各自的样本,再看联合数据训练和分布乘积:前者保留多样性,后者只强调两种分布共同支持的区域。
实验图原图摘引:Paraschos、Daniel、Peters、Neumann,NIPS 2013,PDF第7页,图3。核对原文。原版权保留。
位置 任务与设置 支持的结论 不能证明
表1、§2 概率操作与技能性质对应 条件化、乘积、相位等操作有明确含义 所有概率组合都物理可行
图2 七连杆到达与中间点 关节变化可协调保持任务点准确 任意碰撞场景自动满足约束
图3 真实机器人击冰球 方向/距离变化可建模和条件化 未见物体与摩擦的普遍泛化
图4 真实机器人沙锤节律 调速与连续混合可产生相应运动 所有速度下满足执行器约束

Probabilistic Movement Primitives,图2:每列是一个时刻,三排分别约束早期、晚期与两个经由点;灰色采样轨迹展示分布变化。
原图摘引:Paraschos、Daniel、Peters、Neumann,NIPS 2013,PDF第7页,图2。核对原文。每列是一个时刻,三排分别约束早期、晚期与两个经由点;灰色采样轨迹展示分布变化。
Probabilistic Movement Primitives,图4:图(b)对照期望与反馈生成分布,图(c)展示两个节律动作的混合,速度调节与动作组合是两项操作。
原图摘引:Paraschos、Daniel、Peters、Neumann,NIPS 2013,PDF第8页,图4。核对原文。图(b)对照期望与反馈生成分布,图(c)展示两个节律动作的混合,速度调节与动作组合是两项操作。

真实实验使用七自由度 KUKA 机械臂。冰球两组示范各有 10 条,分别改变射程与角度;七连杆中间点示例使用 0.25 秒与 0.75 秒的要求。这些数字描述实验设置,不是 10 条示范即可完成所有机器人任务的样本复杂度保证。

图3 特别适合比较“合并数据训练”与“相乘两个模型”:前者保留更广变化,后者聚焦共同区域。图4 说明相位与分布控制可以实现节律调整,但不能从单组轨迹阴影推出跨机器人置信区间。

五、单高斯分布不能替代闭环可行性检查

DMP 强调动态结构与目标吸引性,ProMP 强调分布、相关性和概率操作。它们都使用紧凑运动表示和相位思想,但并非简单地把 DMP 参数加个高斯就继承所有性质。

ProMP 的改进使“哪个阶段必须精确、哪个阶段允许变化”成为分布的一部分。若任务点附近方差小,中间运动方差大,控制就可以利用这种结构,而不是在全程维持同样刚性。然而把示范方差直接解释成最优反馈强度,也需要相应控制推导与环境假设。

当左右绕行形成两个分离模式时,单高斯可能平均出中间穿过障碍的轨迹。可以考虑条件模型或混合分布,但那是进一步扩展,不应在原文基础方法中默认已经解决。

追问:新目标与示范分布相距很远,条件化结果为何仍可能看起来很确定?

参考答案:高斯条件化是在既定均值、协方差和观测噪声模型内推断,较小的后验方差只表达这套模型的自洽程度。它不会自动检查新目标是否超出关节、接触或示范支持范围。应同时查看目标相对原分布的位置和实际运动可行性;把窄后验直接解释成安全保证,会混淆统计不确定性与物理约束。

六、沿机制关系继续读

与DMP属于平行表示:DMP强调吸引子,ProMP强调联合轨迹分布。与后来的Diffusion Policy可建立教学联系:都要描述动作分布,但单高斯权重与条件扩散的多模态表示、运行接口和训练规模不同,不能将二者的可靠性保证互借。

七、自测题与参考答案

问题 1:每个关节的方差都大,末端位置是否必然不准确?

参考答案:不必然。不同关节变化可以负相关并互相补偿,末端误差取决于联合协方差及运动学映射。只看各关节独立误差会遗漏协调结构。

问题 2:两个技能分布的乘积与混合有什么区别?

参考答案:乘积偏向两个技能共同认可的区域,适合表达共同约束;混合保留“这个或那个”的选择。两个完全不兼容的技能相乘可能得到不合理的折中,不能把它当作万能组合。

问题 3:为什么不能每个时刻独立采样轨迹位置?

参考答案:ProMP 的时间相关性来自共享权重。独立采样边缘分布虽然每一时刻统计看似正确,整条轨迹可能抖动并违反速度关系。应采样权重后生成整段运动,或使用一致的反馈生成过程。