STOMP
Stochastic Trajectory Optimization for Motion Planning进阶在初始轨迹附近撒一批带噪声的轨迹、按代价加权更新的无梯度轨迹优化器。
STOMP 是 Kalakrishnan、Chitta、Theodorou、Pastor、Schaal 在 ICRA 2011 提出的运动规划方法,属于轨迹优化。它从一条初始轨迹(可以直接穿过障碍物)出发,每轮在周围加噪声生成若干条候选轨迹,逐个路点计算碰撞、约束违反、平滑度等代价,再按代价越低权重越大的方式把噪声加权合成更新量,迭代出平滑、无碰撞的轨迹。它源自强化学习里的路径积分方法 PI²,不需要代价函数的梯度,所以能加入力矩、能耗、末端姿态这类难求导的代价。和依赖代价梯度的 CHOMP 相比,STOMP 借助随机性更不易卡在局部最优,调参也更少;和 OMPL 里的采样式规划器相比,它通常更慢,但轨迹更平滑,往往不需要再做平滑后处理。
例子MoveIt 把 STOMP 做成规划器插件,配置里的 num_rollouts(每轮生成多少条噪声轨迹)、stddev(各关节噪声幅度)以及 CollisionCheck、ObstacleDistanceGradient 等代价函数决定它的行为。
- 也叫
- 随机轨迹优化运动规划、STOMP 规划器
- 相关
- CHOMP、TrajOpt、轨迹优化、运动规划、MoveIt、模型预测路径积分控制
- 来源
- MoveIt 2 文档:STOMP Planner
MoveIt 1 教程:STOMP Planner(引用 Kalakrishnan et al. ICRA 2011)