31、组合运动规划:原理、算法与应用

组合运动规划:原理、算法与应用

1. 计算分解

在不考虑效率的情况下,计算分解的问题看似简单,可以通过暴力计算完成所有必要步骤。若障碍物空间 (C_{obs}) 有 (n) 个顶点,由于要对每条垂直射线和每条线段进行相交测试,这种方法至少需要 (O(n^2)) 的时间,而且还未考虑查找包含查询点的单元格以及构建保存连通性信息的路线图时涉及的数据结构问题。

通过精心组织计算,可以很好地处理这些问题,最终运行时间仅为 (O(n \lg n))。具体采用的是计算几何中的平面扫描(或线扫描)原理,许多组合运动规划算法以及其他算法都以此为基础。

2. 平面扫描原理

平面扫描原理可想象为一条线(或平面等)扫过空间,仅在信息发生关键变化的地方停止,但算法中并不显式表示这条扫描线。为构建垂直分解,假设一条垂直线从 (x = -\infty) 扫到 (x = \infty),用 ((x, y)) 表示 (C = R^2) 中的点。

2.1 具体步骤

  1. 排序顶点 :将 (C_{obs}) 顶点集 (P) 按 (X) 坐标升序排序,假设处于一般位置,即没有两个点的 (X) 坐标相同。按 (x) 值递增顺序访问 (P) 中的点,每次访问一个点称为一个事件。
  2. 维护列表 (L) :在每个事件之前、之后和之间,维护一个 (C_{obs}) 边的列表 (L),该列表需始终按垂直扫描线刺穿边的顺序排列,从下到上。

2.2 算法执行流程


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值