运动规划(Motion Planning),在机器人领域一般指:给机器人从起始状态到目标状态生成一条满足约束的运动轨迹

比如你的天轶人形机器人抓瓶子:

已知机器人当前姿态 → 目标抓取位姿 → 生成机械臂关节轨迹 → 避障 → 平滑执行

这整个过程就是运动规划。

运动规划算法大体分为几类:


1. 基于搜索的规划(Search-based Planning)

适合:

  • 移动机器人

  • 栅格地图

  • 低维空间

① A* 算法

最经典路径规划。

思想:

总代价 = 已经走过的代价 + 预计距离

f(n)=g(n)+h(n)

其中:

  • g(n):当前位置到当前节点成本

  • h(n):当前位置到目标估计距离

例如:

机器人

S  □ □ □
□  ■ ■ □
□  □ □ G


A*:
S → → ↓ ↓ → G

优点:

✅ 保证最优

缺点:

❌ 高维机械臂不适合

应用:

ROS Nav2:

  • Global Planner

  • Smac Planner


② Dijkstra

A* 的前身。

区别:

Dijkstra:

f(n)=g(n)

不知道目标在哪里,全部搜索。

优点:

保证最短路径

缺点:

慢。


2. 采样规划(Sampling-based Planning)

这是机械臂最常用的一类。

因为机械臂空间:

例如7自由度:

q=[q1,q2,q3,q4,q5,q6,q7]

搜索空间巨大。

所以:

随机采样。


① RRT(Rapidly-exploring Random Tree)

机器人领域非常经典。

思想:

随机长树。

例如:

          *
        *
      *
S----*
      \
       *
        *
          G

步骤:

  1. 随机生成一个点

  2. 找最近节点

  3. 朝它扩展

  4. 碰撞检测

  5. 连到树

优点:

✅ 快
✅ 高维有效

缺点:

❌ 路径比较乱


② RRT*

RRT优化版。

核心:

重新连接。

让路径:

RRT:

S------*---*---G


RRT*:

S-----------G

特点:

随着采样增加:

越来越接近最优。

目前机械臂规划非常常用。


③ Informed RRT*

进一步优化。

不是全空间随机:

而是在:

起点-终点椭球区域

采样。

速度更快。


④ PRM(Probabilistic Roadmap)

适合:

固定环境。

先建地图:

随机点:

*  *    *
   *
*      *

连接:

*---*---*
 \     /
  *---*

然后搜索。


3. 优化类运动规划(Optimization-based)

现在机器人研究热点。

核心:

把运动规划变成优化问题。

目标:

最小:

[
Cost=
距离+
碰撞+
能量+
平滑
]


① CHOMP

Covariant Hamiltonian Optimization for Motion Planning

优化轨迹:

原始:

---------
    \
     \
      G

优化:

-----------
          \
           G

特点:

轨迹平滑。


② STOMP

基于随机优化。

特点:

不需要梯度。


③ TrajOpt

工业机器人常用。

优势:

速度快。

目标:

min:
轨迹长度
+
碰撞代价
+
动力学约束

4. MPC(Model Predictive Control)

这个现在非常火。

不是一次规划到底。

而是:

滚动规划。

例如:

机器人走路:

预测未来:

现在

|
|----未来2秒预测
|
执行0.1秒

重新规划

循环。

优势:

✅ 动态环境
✅ 机器人控制结合

应用:

  • 自动驾驶

  • 四足机器人

  • 人形机器人


5. 速度规划(Time Parameterization)

规划路径后:

还需要:

"什么时候到哪里"

例如:

路径:

A-------------B

变成:

t=0     t=1     t=2

A------M-------B

常用:

TOPP

Time Optimal Path Parameterization

Ruckig

现在工业机器人非常火。

作用:

限制:

  • 速度

  • 加速度

  • jerk

MoveIt2 默认大量使用。


6. 人形机器人/机械臂常用组合

视觉
 |
目标抓取位姿
 |
IK逆运动学
 |
运动规划
 |
轨迹优化
 |
控制执行

具体:

MoveIt2:

OMPL
 |
RRTConnect
 |
RRT*
 |
PRM
 |
TrajOpt
 |
Ruckig

7. 不同场景对应算法

场景 算法
二维地图导航 A*、Dijkstra
ROS导航 A*、D*、Smac
机械臂避障 RRTConnect
高自由度机械臂 RRT*
工业机械臂 TrajOpt
动态环境 MPC
人形机器人 MPC+优化
抓取规划 RRT+IK
腿式机器人 MPC

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐