中国地质大学(武汉)-计算几何课程报告-文库版资料.doc

中国地质大学(武汉)-计算几何课程报告-文库版资料.doc

中 国 地 质 大 学 研究生课程论文封面 课程名称 计算几何 教师姓名 研究生姓名 研究生学号 研究生专业 软件工程 所在院系 信息工程学院 类别: A.博士 √B.硕士 C.进修生 日期: 2015 年 12 月 29 日 评 语 对课程论文的评语: 平时成绩: 课程论文成绩: 总 成 绩: 评阅人签名: 注:1、无评阅人签名成绩无效; 2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效; 3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。 机器人运动规划背景 运动规划 机器人运动规划的重点在于设计出一条从起点到终点、沿途不与障碍物发生碰撞的有效路径。无论是哪种机器人,只要希望它在真实的世界移动,就必须求解运动规划问题。 简化假设 运动的环境是一个平面区域;障碍物与机器人的外形都是多边形;环境是静态的,不会改变;机器人事先对周围环境已知。 工作空间与机器人表示 机器人所处的环境工作空间(work space),由一组障碍物S = {P1, …, Pt}组成设为在二维环境中移动的一个机器人C-空间(configuration space) Minkowski和 对于任何两个集合S1 ? R2 和S2 ? R2 ,其Minkowski和(记作S1 ⊕ S2)定义为: S1 ⊕ S2 := {p + q | p ∈ S1, q ∈ S2} 其中,p + q 表示两个向量p 和q 的向量和。也就是说,若p = (px, py),q = (qx, qy),则有 p + q := (px + qx , py + qy) Minkowski和 对于任何点p = (px, py),定义-p := (-px, -py);而对于任何集合S,定义-S := {-p | p ∈ S}。也就是说,-S 是S 相对于坐标原点的对称镜像。这样,就可以得出如下定理: 设R为沿平面做平移运动的一个机器人,P为任一障碍物。则P所对应的C-障碍物为P ⊕ (-R(0, 0))。 计算两个凸多边形的Minkowski和 首先,对于每一对顶点v ∈ P和w ∈ R,计算出v + w。然后,根据这些通过加法而得到的点,构造出它们的凸包。虽然这个算法非常简单,但是由于它需要把所有可能的顶点对相加,所以一旦多边形含有很多顶点,效率就会很低。以下将给出另一种算法,而且这种算法也同样易于实现。在该算法中,用记号angle(pq)来表示向量pq与x-轴正向所成的夹角算法MINKOWSKISUM(P, R) 算法MINKOWSKISUM需要运行线性的时间,这是因为在repeat循环的每一轮中,i和j中至少有一个会增加一(这不难证明),而且一旦它们分别达到n + 1 和m + 1,就不再会增加任意两个凸多边形的Minkowski 和,都可以在O(n + m)时间内构造出来,其中n 和m 分别为这两个多边形各自所含的顶点数。 (nlog2 n),其中n 为所有障碍物所含边的总数 构建梯形图 可以采用梯形图的形式对整个图形进行分区,作为辅助。 对于散布于某个包围框中的一组互不相交的线段,为了构造对应的梯形图,只要从每个线段端点各引出两条垂直射线:一条垂直向上,直到撞上某条线段(或者包围框);另一条垂直向下,直到撞上某条线段(或者包围框) 点定位(第六章)中介绍了一个随机算法TRAPEZOIDALMAP,可在O(nlogn)的期望运行时间内,构造出n条线段的梯形图。 梯形图构建算法COMPUTEFREE_SPACE(S) 梯形图(a)经处理后得到点机器人运动的自由空间梯形图(b)。 梯形图构建算法时间复杂度分析 对于算法的第3步,只要看看这条边究竟是属于该障碍物的上边界还是下边界,就可以判断出是否应该删除这个梯形。每一次这样的测试只需常数时间因为每个障碍物的边都是沿着其边界有序存放的,所以障碍物相对每一条(有向)边是处于左侧还是右侧,都是确定而且已知的对于一个点机器人,若它运动的环境中包含一组互不相交的多边形障碍物,且障碍物总共包含n 条边,则可以借助随机算法,在O(nlogn)期望运行时间内构造出一幅描述其自由C-空间的梯形图。 这种情况在同一个梯形中都直接通视,可以直接连接。 情况②:起点与终点在不同的梯形中 在每个梯形的中心、每条垂直边的中点各放置一个节点。两个节点之间有一条弧相联,当且仅当其中一个节点处于某个梯形的中心,而另一个处于该梯形的边界上。 只要对描述T(Cfree)的双向链接边表进行遍历,就可以在

文档评论(0)

1亿VIP精品文档

相关文档