具身智能导论
中文纯享复习网页
这一版尽量用中文讲清楚课程主线,把英文术语压到最低,但关键术语和公式仍保留必要的原始写法,方便你对照考试中的英文题面。
如果你想先把整门课“读懂”,再去对照英文术语和原课件,这一版更顺手。
如果你想最大限度贴近课件术语与考试题面,请切回左上角的 术语增强版。
期中考试信息
- 期中考试占总评 40%
- 允许携带 一张 A4 双面 cheat sheet
- 题目 全部用英文
- 课堂讲过的术语,考试时不再额外解释
- 不允许 使用字典或计算器
- 多选题规则非常严格:选错一个错误项直接记 $0$ 分;每漏选一个正确项扣 $1$ 分;最低为 $0$ 分
整门课到底在讲什么
具身智能愿景 $\to$ 机器人学基础 $\to$ 视觉抓取 $\to$ 策略学习。
前四讲解决“机器人怎么表示、怎么运动、怎么规划、怎么控制”,中间两讲解决“怎么感知和抓东西”,最后两讲解决“怎么让机器人学会决策和动作”。
建议复习顺序
先吃透第 2-4 讲
这三讲是整门课的机器人学底座。不会刚体变换、旋转表示、规划与控制,后面很多内容都会看得发飘。
再看第 7-8 讲
策略学习是概念密集区,考试也很容易出定义辨析、因果推导和方法对比。
补上第 5-6 讲
视觉抓取部分要重点理解 6D 位姿、抓取表示、力闭合、手眼标定这些“从看见到抓住”的中间环节。
回到第 1 讲
第 1 讲是整门课的价值观和总路线,最后回看一遍,最容易把知识串起来。
复习路线图
第 1 讲:总览
什么是机器人,为什么传统机器人不够“智能”,什么叫具身智能,未来为什么指向通用机器人。
第 2 讲:机器人学 I
学会用坐标系、旋转和平移来描述机器人与末端执行器的位置姿态,理解正逆运动学。
第 3 讲:机器人学 II
理解三维旋转的几种常见表示:欧拉角、轴角、四元数,各自的优点和坑点是什么。
第 4 讲:机器人学 III
解决“怎么安全地动过去”与“怎么稳定地跟踪运动”:规划、轨迹、控制。
第 5 讲:视觉与抓取 I
从图像/点云中估计物体 6D 位姿,再把物体位姿转成抓取位姿。
第 6 讲:视觉与抓取 II
抓取检测、抓取数据、力闭合、相机模型、PnP、手眼标定。
第 7 讲:策略 I
状态、观测、动作、策略、模仿学习、行为克隆、DAgger。
第 8 讲:策略 II
强化学习、奖励、策略梯度、降方差、actor-critic、折扣因子与 GAE。
第 1 章 · 第 1 讲 总览
1.1 课程目标
- 这是一门 具身智能前沿课程
- 课程会覆盖机器人学基础,以及基于深度学习的视觉与机器人系统
- 目标是为后续做具身智能研究打基础
1.2 什么是机器人
- 机器人是能够自动执行一系列复杂动作的机器
- 它可以接受外部控制,也可以把控制机制内置在系统内部
- 机器人不一定非得长得像人,但也可以被设计成人形
1.3 传统工业机器人为什么不够
- 传统专用机器人通常先把轨迹预先设计好、算好
- 真正运行时,本质上是在重复执行那条轨迹
- 这样做的两个大问题是:部署耗时、难以灵活处理多任务
1.4 具身智能在补什么
这就是课里反复出现的 感知-行动闭环。
1.5 未来方向:通用机器人
- 过去代表是工业机器人
- 现在代表是自动驾驶
- 未来愿景是 通用机器人,尤其是人形机器人
- 课件把它们概括为:既能跨任务,也能跨环境
1.6 机器人“大脑”如何分层
| 部分 | 作用 |
|---|---|
| 大脑皮层式部分 | 负责高层策略,决定做什么;包括感知、规划、决策、语言 |
| 小脑式部分 | 负责低层运动策略,决定怎么稳定、快速、准确地做出来 |
1.7 为什么 simulation 很重要
- 真实遥操作采数据太贵,难以扩展
- 具身基础模型预训练可能需要海量轨迹
- 仿真和高质量渲染的优点是:不需要人工标注、时间效率高、还能迁移到真实世界
本章重点表达汇总
感知-行动闭环:感知 $\to$ 形成假设 $\to$ 采取动作 $\to$ 再次感知
VLA:输入是语言、视觉和其他传感器信号;输出是机器人动作
两层 robot brain:上层决定做什么,下层决定怎么稳、准、快地做
第 2 章 · 第 2 讲 机器人学 I
2.1 运动学和动力学的区别
- 运动学 只描述怎么动:位置、速度、加速度这些量
- 动力学 研究的是力和力矩如何导致运动
- 一句话:运动学不问“为什么能这么动”,动力学专门回答这个问题
2.2 关节、连杆、自由度
- 连杆是顺次连接起来的刚体
- 关节是连杆之间的连接结构
- 自由度就是描述系统构型所需的独立参数个数
2.3 刚体位姿怎么表示
- 一个刚体的位置姿态由两部分组成:旋转 和 平移
- 常写成 $(R, t)$
- 点坐标的变换关系是:$p^s = R_{s\to b} p^b + t_{s\to b}$
2.4 为什么要用齐次坐标
- 因为带平移的刚体变换不是普通线性变换
- 引入齐次坐标后,可以把旋转和平移统一写进一个矩阵
- 标准形式:$T = \begin{bmatrix}R & t \\ 0 & 1\end{bmatrix}$
2.5 两个必须会的矩阵规则
- 连续变换可以直接相乘:$T_{3\to1}=T_{3\to2}T_{2\to1}$
- 换观察坐标系就是取逆:$T_{2\to1}=(T_{1\to2})^{-1}$
2.6 正运动学与逆运动学
- 正运动学:已知关节角,求末端位姿
- 逆运动学:已知目标末端位姿,反过来求关节角
- 逆运动学可能多解,也可能无解
- 解析法快,但只适合较简单机构;数值法通用,但更耗时
2.7 为什么很多机械臂是 6 自由度或 7 自由度
7 自由度则通常带来冗余,能换来更灵活的姿态和避障空间。
2.8 Pieper 判据
- 这是判断一个 6 自由度机械臂是否存在闭式逆运动学解的重要充分条件
- 满足条件的典型情形包括:连续三个转动关节共点,或者连续三个转动关节平行
本章公式汇总
点坐标变换:$p^s = R_{s\to b} p^b + t_{s\to b}$
齐次变换矩阵:$T = \begin{bmatrix}R & t \\ 0 & 1\end{bmatrix}$
连续变换复合:$T_{3\to1}=T_{3\to2}T_{2\to1}$
换参考系:$T_{2\to1}=(T_{1\to2})^{-1}$
正运动学:$T_{s\to e}=f(\theta)$
第 3 章 · 第 3 讲 机器人学 II
3.1 三维旋转为什么麻烦
- 旋转本质上只有 $3$ 个自由度
- 但旋转矩阵需要 $9$ 个数来表示
- 而且连续做矩阵运算时,数值误差会破坏正交性
3.2 欧拉角
- 欧拉角最大的优点是直观、好理解
- 但它会出现不唯一,还会出现万向节锁问题
- 万向节锁的本质是:某些姿态下会丢掉一个自由度
3.3 轴角表示
- 任何旋转都可以看成绕某个固定单位轴转过一个角度
- 这个表示很符合几何直觉
- 但在零旋转和 $\pi$ 附近会出现不唯一和不连续问题
3.4 Rodrigues 公式
- 它把轴角表示和旋转矩阵联系起来
- 最需要记住的公式是:$e^{[\omega]\theta}=I+[\omega]\sin\theta+[\omega]^2(1-\cos\theta)$
3.5 四元数
- 四元数比旋转矩阵更紧凑
- 它计算快、数值稳定、适合做连续旋转组合
- 两个旋转复合时,四元数直接做乘法就行
- 缺点是:同一个旋转对应两个符号相反的四元数
3.6 什么时候用哪种表示
| 表示法 | 适合干什么 |
|---|---|
| 旋转矩阵 | 下定义、讲理论 |
| 欧拉角 | 看姿态、做直观解释 |
| 轴角 | 做几何理解、算导数 |
| 四元数 | 写代码、做高效计算 |
本章公式汇总
旋转矩阵条件:$RR^T=I, \det(R)=1$
欧拉角组合:$R = R_z(\gamma)R_y(\beta)R_x(\alpha)$
Rodrigues 公式:$e^{[\omega]\theta}=I+[\omega]\sin\theta+[\omega]^2(1-\cos\theta)$
四元数旋转:$x' = qxq^*$
第 4 章 · 第 4 讲 机器人学 III
4.1 机器人执行链条
- 先有目标
- 再做运动规划,找出一条无碰撞路径
- 然后给路径加上时间,变成轨迹
- 最后由控制器去稳定跟踪这条轨迹
4.2 为什么要在构型空间里规划
- 因为机器人不是点,而是有形状、有连杆、有关节限制的复杂结构
- 碰撞是否发生,取决于整个机器人构型
- 所以规划通常在 构型空间 而不是工作空间里做
4.3 碰撞检测为什么重要
- 规划过程会反复调用碰撞检测
- 它必须足够快,同时又不能太不准
- 真实几何通常太复杂,所以常用简化后的碰撞模型
4.4 PRM、RRT、RRT-Connect
- 这些都是高维空间里常见的采样式规划方法
- PRM 更偏全局路网思路
- RRT 更偏随机扩展树
- RRT-Connect 是特别常用的单次查询规划器
4.5 路径和轨迹不是一回事
- 路径 只回答“去哪里”
- 轨迹 回答“什么时候到、以多快的速度到”
- 真实机器人有关节速度和加速度极限,所以路径不能直接拿来执行
4.6 控制:开环与闭环
- 开环控制只看参考输入,不看当前误差
- 闭环控制会根据误差随时修正控制信号
- 因此闭环控制更抗扰动,也更适合真实机器人
4.7 P、PD、PID 该怎么理解
| 控制器 | 直观理解 |
|---|---|
| P | 像弹簧,误差越大,拉回去越用力 |
| PD | 在 P 的基础上再加阻尼,减少振荡和超调 |
| PID | 再把过去误差累计起来,用来消除稳态误差 |
4.8 为什么现代机器人常用 PD
- PD 往往已经足够稳定、足够好调
- 很多机器人更在乎动作快且稳,而不是把极小的稳态误差也消到零
- 在有接触的任务里,积分项可能积累出危险的力
本章公式汇总
路径参数化:$q(s), s\in[0,1]$
时间参数化:$s=s(t) \Rightarrow q(t)=q(s(t))$
跟踪误差:$x_e=x_{ref}-x$
P 控制:$u=K_p x_e$
PD 控制:$u=K_p x_e + K_d \dot{x}_e$
PID 控制:$u=K_p x_e + K_i \int x_e dt + K_d \dot{x}_e$
第 5 章 · 第 5 讲 视觉与抓取 I
5.1 抓取管线的基本思路
- 先看见物体
- 再估计物体的 6D 位姿
- 再从物体位姿推导抓取位姿
- 最后通过规划和控制把手送过去
5.2 什么是抓取位姿
- 抓取位姿定义了手的位置、朝向,以及手本身的关节展开方式
- 4 自由度抓取常见于自上而下抓取
- 6 自由度抓取则完整描述三维位置和三维朝向
5.3 两条 open-loop 抓取路线
- 已知物体:先估计物体 6D 位姿,再推出抓取位姿
- 未知或泛化物体:直接预测抓取位姿
5.4 6D 物体位姿
- 本质上就是“物体坐标系到相机坐标系”的刚体变换
- 包括三维平移和三维旋转
5.5 ICP 在做什么
- ICP 是点云配准方法
- 目标是找到一个旋转和平移,让两组点云尽量对齐
- 它简单好用,但特别依赖初始位姿够不够准
5.6 为什么旋转回归难
- 旋转空间本身不是普通欧氏空间
- 欧拉角、轴角、四元数都可能出现奇异性、不连续性或双覆盖问题
- 所以深度学习里会设计连续的旋转表示,例如 6D 表示
5.7 NOCS 在做什么
- NOCS 是标准化物体坐标空间
- 它把不同实例先统一到一个规范参考系里
- 这样就能做类别级别的 6D 位姿与尺寸估计,而不必依赖某一个具体 CAD 模型
本章公式 / 表达汇总
6D 位姿:三维平移 + 三维旋转
ICP:求一组 $R,T$,使两组点云尽量对齐
连续 6D 旋转表示:取旋转矩阵前两列,再映射回 $SO(3)$
类别级位姿:从 NOCS 到相机坐标系的变换
第 6 章 · 第 6 讲 视觉与抓取 II
6.1 抓取检测 vs 条件生成
- 抓取检测:从观测里直接找出多个可行抓取
- 条件生成:给定观测,生成抓取位姿
- 因为抓取天然是多峰分布,所以课里强调把它表述成 detection problem
6.2 输入表示:体素还是点云
- 体素网格更规则,显式表示几何,但受分辨率限制
- 点云更省内存、分辨率更高,也是抓取里非常常见的输入形式
6.3 抓取成功到底怎么判断
- 实践上会看成功率、清空率、规划时间
- 理论上会引入力闭合作为重要的最低要求
6.4 力闭合
- 如果接触点施加的力能够抵消任意外部 wrench,就称为力闭合
- 抓取规划里,力闭合通常被当作一个“合格抓取”的最低门槛
- 形闭合更严格,往往要求过多接触点
6.5 手眼标定为什么关键
- 视觉算法看到的是相机坐标系里的物体位置
- 机器人执行动作需要的是机器人坐标系里的目标位姿
- 手眼标定就是把这两个世界接起来
6.6 相机内参与外参
- 内参描述相机成像本身
- 外参描述相机相对于外部世界的位置和姿态
- PnP 的核心就是根据已知对应关系恢复相机位姿
6.7 两类手眼标定
| 类型 | 意思 |
|---|---|
| 眼在手上 | 相机装在机械臂末端 |
| 眼在手外 | 相机固定在外部看机器人 |
6.8 必记方程
本章公式 / 关系汇总
力闭合:接触 wrench cones 的正张成覆盖整个 wrench space
抓取质量关系:successful grasp $\le$ force closure $\le$ form closure
相机模型:内参 + 外参
手眼标定核心方程:$AX = XB$
第 7 章 · 第 7 讲 策略 I
7.1 什么是策略
- 策略就是从输入信息到动作的映射
- 可以是确定性的,也可以是随机的
7.2 状态和观测不要混
- 状态 是对环境的完整描述,理论上足以预测未来
- 观测 是传感器实际收到的东西,往往不完整、有噪声、有歧义
- 所以真实机器人通常只能基于观测行动,而不是直接拿到状态
7.3 MDP 在说什么
- 每一步:看当前状态,选动作,环境跳到下一个状态
- 关键假设是 Markov 性:下一步只和当前状态、当前动作有关
7.4 模仿学习
- 如果有专家演示,就可以直接学“模仿专家”
- 行为克隆就是把这个问题当成监督学习:输入观测,输出动作
7.5 行为克隆为什么会翻车
一旦犯一个小错,就会偏离专家轨迹,进入训练时没见过的状态,后面错误会越来越大。
7.6 DAgger 与 HG-DAgger
- DAgger 的想法是:把学生策略真实会走到的状态也加入训练集
- 但在机器人上,给每个状态人工标动作太难
- HG-DAgger 的做法是:机器人执行时,人只在它犯错时接管纠正
- 这样更省标注,也更符合真实机器人训练方式
本章公式 / 表达汇总
随机策略:$a \sim \pi(a|s)$
确定性策略:$a = \pi(s)$
Markov 性:$P(s_{t+1}|s_t,a_t,\ldots)=P(s_{t+1}|s_t,a_t)$
基于观测的策略:$\pi_\theta(a_t|o_t)$
遥操作数据集:$\mathcal{D}=\{(o_t,a_t)\}_{t=1}^T$
第 8 章 · 第 8 讲 策略 II
8.1 强化学习的核心目标
- 通过与环境交互来学习策略
- 目标是让长期累计奖励尽量大
8.2 奖励是什么
- 奖励是环境给出的标量反馈
- 它只评价当前动作在当前状态下“立刻好不好”
- 奖励可以稀疏,也可以稠密
8.3 稀疏奖励为什么难
- 如果只有最后成功/失败时才有奖励,中间几乎没反馈
- 这时最难的是 credit assignment:到底前面哪一步动作导致了最后结果
8.4 在线、离线、on-policy、off-policy
- 在线 RL:训练时可以继续和环境交互
- 离线策略学习:只用现成数据,不再继续交互
- on-policy:用当前最新策略采到的数据训练
- off-policy:可以反复利用历史数据,更省样本
8.5 策略梯度为什么噪声大
- REINFORCE 是无偏的
- 但它方差很大,样本一少就非常不稳
8.6 reward-to-go 在干什么
- 一个动作只能影响未来,不会影响已经过去的奖励
- 所以在时间步 $t$ 上,只保留从 $t$ 往后的回报更合理
- 这能降低方差
8.7 baseline 在干什么
- baseline 的作用也是降方差
- 减去 baseline 不会引入偏差,只要这个 baseline 本身不依赖当前动作
8.8 actor-critic
| 模块 | 作用 |
|---|---|
| Actor | 负责输出动作策略 |
| Critic | 负责估计价值,帮助 actor 降方差 |
8.9 折扣因子和 GAE
- 折扣因子越大,看得越远
- 折扣因子越小,就越看重眼前回报
- 在这门课的语境里,discount 还可以理解为一种降方差技巧
- GAE 是在偏差和方差之间做权衡的常用方法
- 常见超参数:$\gamma \approx 0.99, \lambda \approx 0.95$
本章公式汇总
奖励函数:$r(s,a) \in \mathbb{R}$
POMDP 中的策略:$\pi_\theta(a_t|o_t)$
Reward-to-go:$G_t = \sum_{t'=t}^{T} r_{t'}$
State-based baseline:$V(s_t)$
常见 GAE 超参数:$\gamma \approx 0.99, \lambda \approx 0.95$
第 11 章 · 互动自测
具身智能导论期中自测
第 12 章 · 中文考前速查
最该会的 10 个点
1. 刚体变换:$T = \begin{bmatrix}R & t \\ 0 & 1\end{bmatrix}$
2. 正运动学:已知关节,求末端
3. 逆运动学:已知末端,求关节
4. Rodrigues:$e^{[\omega]\theta}=I+[\omega]\sin\theta+[\omega]^2(1-\cos\theta)$
5. 路径回答“去哪”,轨迹回答“何时到、怎么到”
6. PD 比 P 更稳,比 PID 更安全、常用
7. 6D 位姿 = 三维平移 + 三维旋转
8. 力闭合是抓取规划的重要最低要求
9. 行为克隆最大问题是分布漂移
10. actor-critic = 策略网络 + 价值网络
考试题面是英文,所以中文读懂之后,最好再切回 术语增强版,把这些核心概念对应的英文说法过一遍:state、observation、policy、reward、force closure、hand-eye calibration、trajectory、actor-critic、GAE。