2025-11-11T09:10:09.674062

CCDP: Composition of Conditional Diffusion Policies with Guided Sampling

Razmjoo, Calinon, Gienger et al.
Imitation Learning offers a promising approach to learn directly from data without requiring explicit models, simulations, or detailed task definitions. During inference, actions are sampled from the learned distribution and executed on the robot. However, sampled actions may fail for various reasons, and simply repeating the sampling step until a successful action is obtained can be inefficient. In this work, we propose an enhanced sampling strategy that refines the sampling distribution to avoid previously unsuccessful actions. We demonstrate that by solely utilizing data from successful demonstrations, our method can infer recovery actions without the need for additional exploratory behavior or a high-level controller. Furthermore, we leverage the concept of diffusion model decomposition to break down the primary problem, which may require long-horizon history to manage failures, into multiple smaller, more manageable sub-problems in learning, data collection, and inference, thereby enabling the system to adapt to variable failure counts. Our approach yields a low-level controller that dynamically adjusts its sampling space to improve efficiency when prior samples fall short. We validate our method across several tasks, including door opening with unknown directions, object manipulation, and button-searching scenarios, demonstrating that our approach outperforms traditional baselines.
academic

CCDP: Composition of Conditional Diffusion Policies with Guided Sampling

基本信息

  • 论文ID: 2503.15386
  • 标题: CCDP: Composition of Conditional Diffusion Policies with Guided Sampling
  • 作者: Amirreza Razmjoo (Honda Research Institute Europe & Idiap Research Institute & EPFL), Sylvain Calinon (Idiap Research Institute & EPFL), Michael Gienger (Honda Research Institute Europe), Fan Zhang (Honda Research Institute Europe)
  • 分类: cs.RO (Robotics), cs.AI (Artificial Intelligence)
  • 发表时间: 2025年10月10日 (arXiv v2)
  • 论文链接: https://arxiv.org/abs/2503.15386

摘要

模仿学习提供了一种直接从数据中学习的有前途方法,无需显式模型、仿真或详细任务定义。在推理过程中,从学习到的分布中采样动作并在机器人上执行。然而,采样的动作可能因各种原因失败,简单地重复采样步骤直到获得成功动作可能效率低下。本文提出了一种增强的采样策略,通过改进采样分布来避免先前不成功的动作。通过仅利用成功演示的数据,该方法可以推断恢复动作,无需额外的探索行为或高级控制器。此外,利用扩散模型分解的概念,将可能需要长期历史来管理失败的主要问题分解为多个更小、更易管理的子问题,从而使系统能够适应可变的失败计数。该方法产生了一个低级控制器,当先前的样本不足时,动态调整其采样空间以提高效率。

研究背景与动机

问题定义

该研究要解决的核心问题是:当机器人从学习到的策略分布中采样的动作失败时,如何有效地进行恢复?

问题重要性

  1. 实际应用需求:在真实环境中,机器人经常遇到部分约束或不确定的情况,如摸索床头灯开关、推门方向不确定等
  2. 效率问题:传统方法简单重复采样相同分布,忽略了已知失败区域的信息,导致效率低下
  3. 实用性限制:现有失败恢复方法通常需要额外资源(仿真环境、高级推理模型、专家指导),在实际应用中可能不可用

现有方法局限性

  1. 两级规划方法
    • 高级规划器选择动作原语,低级控制器执行
    • 存在次优结果和组合爆炸问题
    • 随着选项增加,决策变得计算昂贵
  2. 鲁棒策略学习
    • 类似鲁棒强化学习的方法
    • 只能处理部分类型失败(如环境参数变化)
    • 对于更广泛的失败类型(如按钮搜索),单一鲁棒策略可能不存在
  3. 历史感知策略
    • 需要失败数据进行训练,增加数据收集复杂性
    • 需要长期历史记忆,计算复杂度高

核心贡献

  1. 提出了分解扩散策略框架:增强了扩散策略的模块化和可控性,并分析了各模块的影响
  2. 设计了基于负向引导的恢复策略:与传统方法不同,使用失败案例作为负向引导,引导策略远离失败区域
  3. 实现了无需数据标注的失败恢复:仅使用成功演示数据,通过离线分析识别恢复动作
  4. 验证了方法有效性:在多个任务上与最先进基线进行了全面比较

方法详解

任务定义

给定M个成功演示的数据集 D={(at,xt,htH)i}i=1M\mathcal{D} = \{(a_t, x_t, h^H_t)_i\}_{i=1}^M,目标是学习一个扩散策略来建模条件分布 pπD(atxt,htH)p_\pi^{\mathcal{D}}(a_t | x_t, h^H_t),其中:

  • atRdua_t \in \mathbb{R}^{d_u}:时刻t的动作
  • xtRdsx_t \in \mathbb{R}^{d_s}:状态
  • htH=[atH:t1T,xtH:t1T]Th^H_t = [a_{t-H:t-1}^T, x_{t-H:t-1}^T]^T:前H个动作和状态的历史

当动作失败时,系统需要条件化到失败特征集合: atpπ(atxt,htH,z1:Nf)a_t \sim p_\pi(a_t | x_t, h^H_t, z^f_{1:N})

其中 zif=z(aif,xif)z^f_i = z(a^f_i, x^f_i) 提取第i次失败的关键特征。

模型架构

扩散模型分解

将条件分布分解为多个简单子问题的乘积:

pπ(atxt,htH,z1:Nf)ps(atxt)pa(at)ph(athtH)pa(at)i=1Npz(atzif)pa(at)p_\pi(a_t | x_t, h^H_t, z^f_{1:N}) \propto \frac{p_s(a_t | x_t)}{p_a(a_t)} \cdot \frac{p_h(a_t | h^H_t)}{p_a(a_t)} \cdot \prod_{i=1}^N \frac{p_z(a_t | z^f_i)}{p_a(a_t)}

对应的去噪项分解为: ε^(atk,k)=εa(at,k)+ws(εs(at,xt,k)εa(at,k))+wh(εh(at,htH,k)εa(at,k))+i=1Nwzi(εz(at,zif,k)εa(at,k))\hat{\varepsilon}(a^k_t, k) = \varepsilon_a(a_t, k) + w_s(\varepsilon_s(a_t, x_t, k) - \varepsilon_a(a_t, k)) + w_h(\varepsilon_h(a_t, h^H_t, k) - \varepsilon_a(a_t, k)) + \sum_{i=1}^N w^i_z(\varepsilon_z(a_t, z^f_i, k) - \varepsilon_a(a_t, k))

各模块功能

  1. εa(at,k)\varepsilon_a(a_t, k):鼓励采样与演示相似的动作
  2. εs(at,xt,k)\varepsilon_s(a_t, x_t, k):引导动作匹配当前状态
  3. εh(at,htH,k)\varepsilon_h(a_t, h^H_t, k):促进时间连续性
  4. εz(at,zif,k)\varepsilon_z(a_t, z^f_i, k):负向引导,远离失败区域

恢复模型设计

恢复动作定义

定义恢复动作集合: aR(zf) if {z(a,x)z(af,xf)2>δzxxf2<δxa \in \mathcal{R}(z^f) \text{ if } \begin{cases} \|z(a,x) - z(a^f, x^f)\|_2 > \delta_z \\ \|x - x^f\|_2 < \delta_x \end{cases}

其中 δz\delta_z 定义失败特征空间中的足够差异性,δx\delta_x 定义状态空间中的相似性。

数据合成策略

为解决恢复数据稀疏问题,执行数据合成: Ds(xs)={(a,xs)apˉD(ax),xxs+ξx,ξxN(0,σ2I)}\mathcal{D}_s(x_s) = \{(a, x_s) | a \sim \bar{p}_{\mathcal{D}}(a|x), x \in x_s + \xi_x, \xi_x \sim \mathcal{N}(0, \sigma^2 I)\}

对应的噪声估计器: εˉ(a,x,k)=εa(a,k)+ws(εs(a,x,k)εa(a,k))\bar{\varepsilon}(a, x, k) = \varepsilon_a(a, k) + w_s(\varepsilon_s(a, x, k) - \varepsilon_a(a, k))

失败关键特征

提出三种实用的失败特征提取方法:

  1. 直接使用失败动作z(af,xf)=afz(a^f, x^f) = a^f
  2. 使用最终状态z(af,xf)=xTfz(a^f, x^f) = x^f_T
  3. 动作原语z(af,xf)=mz(a^f, x^f) = m(离散标签)

实验设置

实验任务

论文设计了5个不同类型的任务来验证方法有效性:

  1. Door Opening (DO):开门任务,方向未知(向上、滑动、拉动)
  2. Button Pressing (BP):在预定义区域内按压未知位置的按钮
  3. Object Manipulation (OM):根据物体重量选择操作策略(单手、双手、推动)
  4. Object Packing (OP):将物体放入指定篮子,篮子满后选择最近可用篮子
  5. Bartender (BT):填充多个杯子,优先选择最近的杯子

评价指标

  1. 任务成功率:完成任务的百分比
  2. 隐式目标达成率:符合演示数据中隐含偏好的百分比

对比方法

  1. DP (Diffusion Policy):标准扩散策略基线
  2. DP*:增强版扩散策略,使用拒绝采样和区域分割

实验配置

  • 历史长度H:0-2
  • 预测长度L:1-8
  • 应用步数p:1-8
  • 批量大小:32-1024
  • 训练轮数:100
  • 去噪步数:100

实验结果

主要结果

任务CCDPDPDP*
Door Opening99%76%100%
Button Pressing96%73%86%
Object Manipulation70%40%72%
Object Packing94%10%100%
Bartender100%27%100%

隐式目标达成率

任务CCDPDPDP*
Object Manipulation66%88%38%
Object Packing73%62%48%
Bartender97%100%12%

关键发现

  1. CCDP在任务成功率上显著优于DP,在大多数任务上接近或超过DP*
  2. CCDP更好地保持了演示数据的隐式目标,而DP*在这方面表现较差
  3. 负向引导策略比正向约束更灵活,允许系统利用更广泛的上下文信息

方法对比分析

  • CCDP vs DP:CCDP通过考虑历史失败信息,显著提高了成功率
  • CCDP vs DP*:
    • DP*需要预先分类,CCDP无需标注
    • DP*使用正向强制(限制采样区域),CCDP使用负向引导(避开失败区域)
    • CCDP的负向引导策略提供更大灵活性

相关工作

模仿学习

  • 传统方法:ProMP、TP-GMM等概率运动原语
  • 现代方法:Implicit Behavior Cloning、扩散策略、流匹配策略
  • 局限性:不保证单次采样成功,重复采样效率低

引导策略推理

  • 参数条件化方法:基于系统特征更新策略参数
  • 层次化方法:使用高级决策变量控制低级策略
  • 拒绝采样:丢弃失败样本,生成新样本

多模型组合

  • 专家乘积(PoE):将复杂问题分解为简单子问题
  • 能量模型:在高维复杂分布中的应用
  • 约束模型组合:在任务和运动规划中的成功应用

结论与讨论

主要结论

  1. 分解策略有效:将复杂的失败恢复问题分解为多个可管理的子问题
  2. 负向引导优于正向约束:提供更大的探索灵活性
  3. 无需额外数据:仅使用成功演示即可实现失败恢复
  4. 模块化设计:支持可变数量的失败案例

局限性

  1. 手工设计的失败特征:目前需要人工定义失败关键特征,缺乏自动提取机制
  2. 权重调节问题:组合权重的最优调节策略尚未充分研究
  3. 静态失败假设:假设失败原因在时间上保持静态
  4. NOT操作不稳定:尝试的NOT操作方法存在稳定性问题

未来方向

  1. 自动特征提取:开发基于潜在空间的自动失败特征提取方法
  2. 权重优化:研究组合权重的自适应调节策略
  3. 离线探索机制:集成离线探索机制以提取更有效的恢复数据
  4. 动态失败处理:扩展到处理时变失败原因的场景

深度评价

优点

  1. 创新性强:首次提出基于负向引导的扩散策略组合方法
  2. 实用价值高:无需额外标注或仿真环境,仅使用成功演示数据
  3. 理论基础扎实:基于概率论和扩散模型的坚实数学基础
  4. 实验全面:在多个不同类型任务上验证了方法有效性
  5. 模块化设计:分解策略提高了方法的可解释性和可控性

不足

  1. 失败检测依赖:需要外部失败检测系统,增加了系统复杂性
  2. 特征工程:失败关键特征需要人工设计,限制了方法的通用性
  3. 静态假设:失败原因静态的假设在某些动态环境中可能不成立
  4. 计算开销:多模型组合可能增加推理时的计算复杂度
  5. 超参数敏感性:权重参数的选择对性能影响较大

影响力

  1. 学术贡献:为机器人失败恢复提供了新的理论框架和实用方法
  2. 实际应用:在服务机器人、工业自动化等领域具有广阔应用前景
  3. 方法启发:负向引导的思想可推广到其他生成模型和控制问题
  4. 可复现性:提供了详细的实现细节和超参数设置

适用场景

  1. 部分约束环境:适用于环境参数部分未知的机器人任务
  2. 交互式任务:需要根据反馈调整策略的任务
  3. 多模态任务:存在多种有效解决方案的任务
  4. 安全关键应用:需要避免重复失败的安全敏感场景

参考文献

论文引用了35篇相关文献,涵盖了模仿学习、扩散模型、机器人控制等多个领域的重要工作,为本研究提供了坚实的理论基础和技术支撑。


总体评价:这是一篇高质量的机器人学习论文,提出了创新的失败恢复策略,在理论贡献和实际应用价值方面都表现出色。方法设计巧妙,实验验证充分,为机器人智能控制领域做出了重要贡献。