精读笔记

Problem Setting

论文标题:Co-designing hardware and control for robot hands(Science Robotics / 2021)。

这篇文章关心的不是单个机器人手控制器的性能,而是机器人操作系统中一个更根本的设计分解问题:硬件和控制是否应该被分开优化。传统流程默认硬件是给定平台,控制器在其上学习或规划;但在机器人手尤其是欠驱动、柔顺、接触密集的 manipulation 中,硬件结构本身决定了可达力空间、接触稳定性、误差吸收能力和策略复杂度。此时把硬件固定住,本质上是在一个可能很差的 action parameterization 上做控制优化。

真正困难点在于 co-design 同时面对两个不同性质的搜索空间:控制策略是高维、连续、可大量仿真的计算对象;硬件设计则受制造、材料、几何、传动、成本约束,并且一次真实迭代代价高。以前方法卡在两端:人工 sequential design 依赖专家经验且容易局部最优;进化算法/黑盒形态搜索概念上自然但样本效率和 scalability 差;经典 concurrent design optimization 通常局限于较低维、较结构化的机器人系统,难处理复杂接触 manipulation。

关键矛盾是:灵巧操作需要硬件参与“计算”,但优化工具长期主要服务于软件策略;如果硬件不进入同一个任务损失,控制器学到的只是对既定机械缺陷的补偿,而不是与身体共同形成可实现行为。

Motivation

已有路线不够的地方不是没有优化硬件,而是没有把硬件作为策略的一部分放进同一个闭环目标中。机器人领域一直承认 embodied intelligence,但工程实践上常把 embodied intelligence 固化为先验设计:人设计机械顺应性、欠驱动传动和手指布局,然后控制算法在这个结构上工作。这样的问题是,机械结构承载的 inductive bias 与最终任务目标之间没有直接梯度或统一优化信号。

作者的核心观察是:硬件和 computational policy 在功能形式上高度相似。神经网络 policy 接收 observation 并输出 motor command;硬件接收 motor command,再通过机构、传动、柔顺性、接触动力学输出对环境的实际作用。二者都是输入-输出映射,二者都有可调参数,只是一个是软件权重,一个是机械设计参数。

关键缺口在于此前 co-design 缺少一组同时满足三件事的工具:足够通用的接触动力学仿真、能承受仿真误差的 sim-to-real 机制、以及能优化复杂 motor skill 的策略优化方法。作者认为近年的 MuJoCo/Bullet、domain randomization、deep RL 刚好补上了这个缺口,因此 co-design 不再只是进化机器人学里的概念演示,而可以变成 manipulation hardware design 的实际优化范式。

Core Idea

核心思想是把“硬件作为环境”改写为“硬件作为 policy”。在传统 RL 建模中,policy 输出 action,环境包括机器人身体、传动、接触和外界物体;作者主张至少对于可设计的机械子系统,例如欠驱动手的传动机构,应把它从 environment 中剥离出来,作为 mechanical policy 与 computational policy 串联。计算策略决定 motor-level command,机械策略决定这些 command 如何变成 joint torque/contact force。二者共同定义 embodied agent 的有效动作分布。

这个重建模引入的 inductive bias 是:策略不必完全通过高频控制去补偿不合适的身体,而可以通过改变身体的 action transformation 来降低控制难度。对于接触丰富的机器人手,柔顺性、欠驱动耦合和力分配本身就是一种低维、物理实现的反馈/滤波/协调机制。把这些机制纳入优化,相当于把一部分 policy complexity 从神经网络转移到稳定、被动、实时的机械结构中。

和 prior 的本质区别不是“也优化了 morphology”,而是把 morphology 形式化为 policy graph 的一段,并尝试用现成 policy gradient 直接优化 joint policy。这使得机械参数可以接受与控制权重一致的任务级 credit assignment,而不是在外层黑盒搜索中被粗粒度评估。可扩展性的希望来自复用 deep RL 的采样、并行仿真和随机策略优化基础设施,而不是为硬件设计单独发明搜索算法。

Method

方法的关键机制可以压缩为以下几层。

第一,机械 policy 参数化。它解决的是硬件如何进入优化图的问题。欠驱动手的传动机构被看成从 motor force/setpoint 到 joint torque 的映射,其行为由可调机械参数控制。这样做的必要性在于,没有显式参数化就无法给硬件分配任务级 credit;核心变化是硬件从固定约束变成可学习的 action transformation。

第二,computational policy 与 mechanical policy 组合成 joint policy。它解决的是软件控制与机械响应分离优化导致的错配问题。控制器输出并不是最终环境作用,最终作用由身体继续处理;因此 joint policy 才是环境实际看到的策略。核心变化是优化目标直接作用在“观察到环境作用”的完整 embodied mapping 上,而不是只优化 motor command 生成器。

第三,用 policy gradient 做联合优化。它解决的是复杂接触任务中难以手写目标分解或解析控制律的问题。policy gradient 不要求显式求解接触模式序列,也能处理 stochastic outcome 和 partial observability;因此适合把硬件参数和神经网络参数一起放进任务回报中优化。这里的重点不是某个具体 RL 算法,而是把硬件参数也放进同一类 credit assignment 机制。

第四,训练在仿真中进行,并用 extensive domain randomization 支撑真实部署。它解决的是真实硬件迭代不可承受的问题。domain randomization 的作用不是提升 benchmark 分数,而是让 joint policy 不依赖单一仿真模型的细节,尤其在接触、摩擦、柔顺性这些误差大的区域保留鲁棒性。核心变化是 co-design 的评估从“优化一个精确仿真世界”转为“优化一个仿真分布下稳定工作的身体-控制组合”。

Key Insight / Why It Works

最重要的 insight 是:在机器人操作里,硬件不是中性的执行器,而是 policy 的物理后半段。这个观点如果成立,会改变 credit assignment 的边界。很多 manipulation policy 看似需要复杂控制,实际可能是因为 action space 被不合适的手部机构扭曲了;如果传动、柔顺性和欠驱动耦合被共同优化,控制器面对的是一个更“任务对齐”的低维动作接口。

它有效的直觉基础有三点。第一,机械结构提供强 inductive bias。欠驱动和柔顺传动天然实现力分配、接触适应和被动稳定,能把高维接触控制问题压缩成更可学习的 motor command。第二,联合优化减少 sequential mismatch。先设计硬件再学控制会把硬件目标设成代理指标,例如抓取力、包络能力、刚度等;端到端任务回报能直接奖励那些真正让 policy 成功的机械响应。第三,domain randomization 与机械顺应性天然互补:随机化训练让控制器不要过拟合仿真,机械顺应性则在真实接触中吸收误差,两者都在扩大可容忍模型偏差的 basin。

我认为实质贡献主要是建模视角,而不是某个优化算法。policy gradient 是工具,关键是把机械参数放进 policy class。这里的创新更像 representation alignment:让硬件参数、控制权重和任务回报处在同一个优化表述中。它不是 retrieval,不是 planning,也不是长期状态建模;核心是 better inductive bias + end-to-end credit assignment。

需要警惕的是,文中对增益归因不够充分。联合优化优于交替优化可能说明 co-design 有效,也可能部分来自更大的搜索预算、更好的随机化、更适合当前参数化的任务,或交替 baseline 本身较弱。由于本文是 Focus 短文,缺少充分 ablation,无法判断 hardware-as-policy 中哪些机械自由度真正贡献最大,哪些只是扩大了可调参数量。某些收益可能主要来自 scaling / simulation data,而不是 policy-gradient 对机械参数有特别深的理论优势。

Relation To Prior Work

这篇工作处在三条谱系的交汇处:早期 evolutionary robotics 的 morphology-controller co-evolution,经典机器人中的 concurrent mechanical/control design optimization,以及近年 deep RL for morphology/controller co-adaptation。它不是第一个提出共同优化身体和控制,也不是第一个用仿真搜索机器人形态;它的新意在于把这件事明确接到现代 deep policy optimization 和 sim-to-real pipeline 上,并把硬件抽象成 policy 的可学习组成部分。

和 Sims、Lipson/Pollack 这类进化路线相比,本质差异是优化基础设施和 credit granularity。进化方法通常把 morphology/controller 作为整体个体黑盒评估,搜索代价高且难利用梯度式策略学习的 scaling;本文强调可以借助 policy gradient 和 GPU-scale simulation,把机械参数纳入现代 RL 的更新框架。

和传统 concurrent design optimization 相比,差异在任务复杂度和建模对象。经典方法多针对结构化机器人、高速运动或可解析控制指标;这里瞄准接触-rich manipulation,承认动力学不完美、接触模式复杂,并用随机策略优化和 domain randomization 承担不确定性。

和近期 morphology RL/BO 工作相比,本文的概念差异是“hardware as policy”这个组织方式。许多 prior 已经做了 morphology + controller optimization,但往往仍把 morphology 视为环境参数或 agent design variable;作者把机械传动明确当成 motor command 到 torque/action 的 policy layer。这是一个表述上的实质推进,因为它提示哪些硬件部件最适合纳入 policy:不是所有几何形态都一样,而是那些直接参与 observation/action transformation 的部件,例如传动、柔顺性、传感器布局和执行器特性。

Dataset / Evaluation

本文本身没有提供完整数据集式评测,也没有大规模 benchmark;它主要引用已有工作,尤其是作者自己的 CoRL 2020 underactuated manipulation 案例。评估覆盖的核心 claim 是:在仿真中联合优化机械传动和控制策略,并制造真实原型进行操作,可以优于硬件/软件交替优化或仅优化控制的路线。

从支持力度看,真实世界原型是重要证据,因为 co-design 如果只停留在仿真形态搜索,很容易被仿真漏洞放大。但本文没有展开足够多的跨任务、跨物体、跨硬件类别评估,因此它更能支持“这个范式可行”,不能充分支持“这是通用机器人手设计方法”。

任务覆盖范围看起来集中在欠驱动手的 manipulation/control,而不是广义灵巧操作全谱系。benchmark 是否真正验证核心 claim,取决于 baseline 是否足够强:如果 sequential/alternating baseline 没有充分调优,联合优化的优势可能被高估。文中未充分说明评估是否能排除搜索预算、参数数量、domain randomization 范围带来的混杂因素。

Limitation

最大限制是该范式强依赖仿真可信度,但又恰好应用在最难仿真的接触 manipulation 上。domain randomization 能缓解模型误差,但不能免费解决所有 sim-to-real gap;随机化范围太窄会过拟合,太宽会使优化目标过保守。文中没有充分讨论如何系统选择随机化分布,也没有说明当真实失败时如何区分是硬件设计错、控制策略错,还是仿真分布错。

第二个限制是硬件参数空间必须被人为压缩。policy gradient 可以优化连续参数,但真实机械设计常包含离散拓扑、制造工艺、材料非线性、装配误差、耐久性和成本约束。把传动机构写成 mechanical policy 是优雅的,但它只覆盖那些已经被设计者预先参数化的自由度。换句话说,方法没有消除设计者的 bias,只是把一部分可调 bias 暴露给优化器。

第三,scalability 上限不清楚。欠驱动传动这类低维机械参数适合 co-optimization;但如果扩展到整只手的连杆拓扑、触觉传感器布局、多材料软体结构,搜索空间会迅速变成混合离散-连续、强约束、昂贵验证的问题。此时 off-the-shelf policy gradient 未必仍然是合适工具。

第四,增益归因不清。联合优化优于交替优化并不自动证明机械 policy 表述是核心原因;可能主要来自更大的联合搜索空间、更长训练、更丰富 domain randomization 或特定任务对柔顺欠驱动结构特别友好。本文没有提供足够证据区分这些因素。

第五,所谓 intelligence in hardware 不应被过度解读。这里的硬件“智能”更像被优化出的物理 inductive bias 和被动反馈,不是 reasoning/planning。它能降低控制复杂度,但不会替代任务级规划、长期记忆或语义理解。

Takeaway

  • 1. 最值得迁移的不是具体机器人手结构,而是建模边界:凡是位于 command 到 environment action 之间、可参数化且影响任务成功的物理部件,都可以考虑从 environment 移到 policy 内部。
  • 2. Co-design 的核心价值在于改变 action space,而不只是提高 hardware quality。
  • 好的机械设计本质上是在给控制器提供更可学习、更鲁棒、更任务对齐的动作参数化。
  • 3. 未来真正重要的问题不是再证明 morphology + controller 能一起优化,而是如何做可制造、可验证、跨任务的硬件参数化,以及如何把真实硬件迭代纳入 sample-efficient 的闭环。

一句话总结

这篇文章在机器人手 co-design 方向中的位置,是把“硬件形态优化”重新表述为“policy 的物理层优化”,其真正贡献是将机械设计参数纳入现代 policy optimization 的端到端 credit assignment,而不是提出一个新的控制算法。