《2013-Finding Locally Optimal, Collision-Free Trajectories with Sequential Convex Optimization》

non-convex optimization problems




(一)Sequential convex optimization通过构造凸的子问题来解 非凸问题,主要有两部分
(1)一个使得约束步骤变小的方法  (2)一个将不可行约束转化为惩罚的策略
对于(1),用了信任区域  对于(2), 用到了 ` l1   penalties

用到了 ` l1   penalties

算法如下


(2)penalizing collisions基于 minimum translation distance,一种普遍的碰撞检测方法


轨迹优化方法分两类:1.优化用其它方法得到的轨迹,使其光滑和变短  2.从头开始规划
轨迹优化的两个主要组成部分:1.数值优化 sequential convex
optimization, with `1 penalties for equality and inequality
constraints

无碰撞的配置是高度非凸的

2.碰撞检测和惩罚  compute signed distances using convex-convex
collision detection

碰撞检测往往是计算昂贵的

优点:1.速度快,因为奇异的碰撞惩罚原则 2.可靠性高,比基于采样的规划解决更大部分的问题 3.轨迹质量高,因为将避免碰撞作为刚性约束  4.灵活性高,新的约束和成本项可以很容易的加入到问题中,因为该数值优化方法是数值鲁棒的


2.碰撞检测和惩罚
用了最小平移距离的方法,两个集合A,B的距离定义如下:

是由 Gilbert-Johnson-Keerthi (GJK)算法计算得到的


同理,定义集合A,B的穿透深度为


是由 Expanding  Polytope Algorithm (EPA)算法计算得到的


符号距离定义如下:
sd(A, B) = dist(A, B) penetration(A, B)



要使机器人没有碰撞,要满足一下约束,定义安全界限 dsafe,有


该约束可以放松到 `1 penalty


如图所示:



带符号的距离函数是由以下规则得到的



求解过程如下:
首先作线性近似


然后求导




以上的工作是在离散轨迹的情形,这些离散的路径点最后要转化成连续时间的轨迹。
下面考虑连续时间情形下的约束:
以上得到的离散轨迹由线性插值或样条插值转化成连续轨迹有可能会碰撞,如下图:



计算如下:
扫描体A的体积:


扫描体A和障碍物B的有符号的距离:


我们不需要去计算扫描体A的凸包,因为有符号的距离成本可以由支撑映射计算得到。
支撑映射:


下面计算碰撞成本的梯度,连续时间的比离散时间的稍微复杂。
首先,令



从而,我们做一个近似


我们计算这些顶点的雅克比


关于时间t和t+1 作线性化有符号的距离sd


说明如图:


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WX Chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值