一种基于可变维粒子群膜算法的移动机器人路径规划方法

文档序号:6551788阅读:136来源:国知局
一种基于可变维粒子群膜算法的移动机器人路径规划方法
【专利摘要】本发明属于智能机器人与控制【技术领域】,尤其涉及一种基于可变维粒子群膜算法的移动机器人路径规划方法。本发明步骤主要为:环境建模、输入路径参数、设置适应度函数、初始化有效路径母粒子和子粒子、路径粒子分类和重归类、对适应度函数进行评价、更新d维粒子的位置、判断当前粒子是否有无效维、对存在无效维的粒子进行修正和去除冗维信息等。本发明能利用复杂环境全局已知或者复杂环境局部位置的信息以及待定移动机器人的状态参数快速规划处适合此类机器人行走的最优路径。
【专利说明】一种基于可变维粒子群膜算法的移动机器人路径规划方法

【技术领域】
[0001] 本发明属于智能机器人与控制【技术领域】,尤其涉及一种基于可变维粒子群膜算法 的移动机器人路径规划方法。

【背景技术】
[0002] 机器人技术无论是在工业化时代还是在信息化时代都备受关注,无论是在民用工 业还是在国防军事都有着十分广泛的应用。移动机器人路径规划问题是智能机器人技术的 一个重要分支,其主要任务是在充满着静止障碍物、移动物体以及危险区域的复杂环境中, 为移动机器人提供从起始位置到目标位置免碰撞并合理的离线或在线工作方式的全局或 局部性规划。随着应用背景的不断复杂化以及应用领域的不断扩大,机器人技术一直向着 更高层次的人工智能化目标发展,因此,一直是国内外的热门研究主题。作为移动机器人导 航技术重要组成部分,路径规划结果的优劣直接决定着机器人的实用性及总体性能。路径 规划问题已经被证明是一种NP难问题,传统的优化方法对这类复杂非线性NP优化问题具 有计算耗时、环境自适应性差、缺乏鲁棒性以及可扩展性等诸多弊端,因此,采用现代智能 优化方法是解决路径规划问题的趋势。
[0003] 移动机器人的路径规划问题需要考虑因数众多。环境方面诸如:障碍物之间的距 离,障碍物形状,随机出现的危险区域或动态障碍物及其移动方向和移动速度等;机器人的 自身特性方面诸如:机器的最小转弯半径,速度及加速度大小,距离传感器范围等;优化目 标选择:路径最短、最平滑,安全性最高(尽量远离障碍物或危险区域),最小耗能或耗时 等。因此,在复杂环境中要找到一条适合特定机器人行走的合理路径需要综合分析环境搭 建方法、优化目标函数以及相匹配的智能优化方法三大方面,以便规划出来的路径能够兼 顾合理性、实时性、实用性、自适应性、可扩展性等多方面的要求。虽然目前用于路径规划的 环境建模方法很多,例如:可视图法、单元分解法、构造空间法、势力场法、栅格法等。优化方 法也众多,例如:遗传算法、蚁群算法、神经网络、粒子群算法、模拟退火法等。但这些方法并 没有有效解决所搭建环境中最大限度兼顾合理性,即最短路径、安全性、平滑性等多目标同 时考虑,实时性,即算法要求尽量简单可行计算效率高,实用性,即既能用于静态离线路径 规划又能将其扩展用于在线动态路径规划,自适应性,即既能用于简单环境中仅考虑单个 优化对象的情况又能用于复杂环境中同时兼顾多个优化对象的情况多方面平衡的问题。因 此,发明一种既适用于静态已知环境的移动机器人离线全局路径规划,又可扩展用于静态 或动态未知环境中的移动机器人在线实时局部路径规划的高效的基本方法,具有十分重要 的实际意义,而且有利于未来智能移动机器人控制系统的不断完善。


【发明内容】

[0004] 本发明针对现有技术的不足,提供了一种基于可变维粒子群膜算法的移动机器人 路径规划方法。该方法能利用复杂环境全局已知或者复杂环境局部位置的信息以及待定移 动机器人的状态参数快速规划处适合此类机器人行走的最优路径。
[0005] 本发明的目的是通过如下步骤实现的:
[0006] S1、环境建模,具体为:
[0007] S101、将物理环境信息映射为η · η的栅格型虚拟环境,对所述η · η个栅格进行标 号,其中,η为不为零的自然数,所述栅格为正方形,所述栅格的边长SoG = NX机器人直径, N彡2且N为自然数;
[0008] S102、对S101所述带有标号的栅格进行分类,分为障碍物栅格和自由栅格;
[0009] S103、对S102所述障碍物栅格的外凸顶点外围栅格进行标记,其中,外凸顶点外 围栅格为自由栅格;
[0010] S104、对S103所述外凸顶点外围栅格进行分类,分为对角顶点外围栅格和侧边外 围栅格,定义所述对角顶点外围栅格的随机选择概率系数为^,定义所述侧边外围栅格的 随机选择概率系数为其中,〇彡Υι彡1,〇彡h彡1,Yi+y 2= i;
[0011] S105、实际环境的物理坐标到虚拟环境栅格序号之间的映射关系表示为ρ =

【权利要求】
1. 一种基于可变维粒子群膜算法的移动机器人路径规划方法,其特征在于,包括以下 步骤: 51、 环境建模,具体为: 5101、 将物理环境信息映射为η · η的栅格型虚拟环境,对所述η · η个栅格进行标号, 其中,η为不为零的自然数,所述栅格为正方形,所述栅格的边长SoG = NX机器人直径, N彡2且N为自然数; 5102、 对S101所述带有标号的栅格进行分类,分为障碍物栅格和自由栅格; 5103、 对S102所述障碍物栅格的外凸顶点外围栅格进行标记,其中,外凸顶点外围栅 格为自由栅格; 5104、 对S103所述外凸顶点外围栅格进行分类,分为对角顶点外围栅格和侧边外围栅 格,定义所述对角顶点外围栅格的随机选择概率系数为Y i,定义所述侧边外围栅格的随机 选择概率系数为其中,〇彡Υι彡1,〇彡h彡1,Υι+Υ2 = ι; 5105、 实际环境的物理坐标到虚拟环境栅格序号之间的映射关系表示为p = u ·Ν〇(:+ν, iv= fix(x / SoG) 一 {μ - //'Y(1" 5oG),$ P x,y 3辦里辦示,S〇G AH?削她fix @1制氐 整位取整函数; 52、 输入路径规划参数,具体包括:机器人状态参数,起止位置及安全范围; 53、 设置适应度函数f = Kd · Dis+Kf · S+Ks · SD,其中,Kd,Kf,Ks为权重系数,Kd用来调 节最短距离Dis目标函数在最优路径中所占的比重,1^用来调节平滑度S目标函数在最优 路径中所占的比重,&用来调节安全度SD目标函数在最优路径中所占的比重,其中,Dis是 从起始点到终止点的h个节点之间的距离之和; 54、 初始化有效路径母粒子和子粒子,具体为: 5401、 在表层膜中创建m个子膜,在每个子膜中产生1个有效路径母粒子,共产生m个 有效路径母粒子,对m个子膜进行标号,记作%,i = 1,2,. . .,m ; 5402、 在S401所述m个有效路径母粒子的基础上利用随机和特殊方向指导相结合的方 式在所述m个有效路径母粒子对应的子膜Mi中产生c个有效路径子粒子,共产生m · c个 有效路径粒子的初始种群; 55、 路径粒子分类与重归类,具体为: 5501、 根据S401所述每个子膜%中的粒子维度的不同,将粒子分为&组; 5502、 构建第i个子膜中的第j个基本膜,将S501所述分类后的粒子放入所述基本 膜< 中,其中,Μ?中粒子均为同维粒子,j = l,2,...,ki; 5503、 运用粒子运动方向重调整方法对粒子速度进行重新初始化; 56、 对S502所述基本膜中路径粒子的适应度函数进行评价,具体为: 5601、 在S502所述基本膜中根据S3所述适应度函数f = Kd · Dis+Kf · S+Ks · SD计 算基本膜中每个粒子对应的适应度函数值,找到每个粒子的个体最优值; 5602、 在S502所述基本膜中找到局部最优,其中,j = 1,2,. . .,kp t为子粒子代 数; 5603、 将第i个子膜里的局部最优g⑴送出到表层膜; 5604、 比较S603所述G#),得出同维的全局最优解G>),其中,de {1,2,...,D}; 5605、 将S604所述G,)(〇送回维数相匹配的基本膜中; VU1 (^ + 1) = f>i · {p vhi {t ) + <-',!] (P/^ (t) - Xh. (〇) + r2 /-, (G'. (t) - Xh. (t)) 57、 利用公式 计算d + c3 i\ (G(/(t) - Xid(〇)) + d2 ; (i) 维粒子的速度,利用公式xid(t+l) =Vid(t+l)+Xid(t)更新d维粒子的位置,其中,vid(t)为 粒子在第t代的速度,Vid(t+1)是粒子在t+ι代的速度,是粒子在第t代的个体最优, xid(t)是粒子在第t代的位置,Gj(i)是第t代同维数粒子的局部最优,(?⑴是第t代同维 粒子的全部最优,G⑴是第t代粒子经方向调整方法处理后的速度,δ δ 2是比例系数, Ρ是惯性权重系数,A, r2, r3是0和1间的随机数,Ci, c2, c3为加速度系数,Xid⑴是第t代 粒子的位置,xid(t+l)是第t+Ι代粒子的位置,Vid(t+1)第t+Ι代粒子的速度; 58、 判断当前粒子是否有无效维,即对S7所述更新位置后的d维粒子进行判断,若所述 更新位置后的d维粒子存在无效维则进入S9,若所述更新位置后的d维粒子不存在无效维 则进入S10 ; 59、 对S8所述存在无效维的粒子进行修正,修正后判断其无效性,直至不存在无效维 转至S10 ; S10、判断当前粒子是否有冗维信息,如存在冗维信息则转入S11,如不存在冗维信息则 转入S12 ; 311、去除冗维信息: 51101、 对一条有效路径从起点到终点的所有节点依次排序并放入序列表L中,令起点 为首节点,终点为尾节点; 51102、 取出S1101所述首节点,从第3个节点开始,判断第3个节点是否与首节点能无 障碍连接,如果能链接则依次取下一节点,继续判断此节点与首节点的无障碍连接性,直至 找到与首节点不能直接相连接的节点a,如果首节点与第3个节点不能无障碍连接,则说明 第2个节点不是冗余维节点,再令第2个为首节点; 51103、 从序列表L中删除首节点和第a-Ι个节点之间的所有节点; 51104、 令第a-Ι个节点为首节点,重复S1102依次取其后的节点进行判断并去除冗余 信息,直至尾节点出现; 512、 在基本膜中得到不同维数的最优路径粒子:各基本膜Μ丨中的路径粒子经过 S9的无效维路径粒子修正和S11的去冗余维信息处理后,每次得到的新路径粒子向较优或 最优路径接近,其维数已经和初始状态的维数不同,同一子膜%内各基本膜溶解,去掉基本 膜的封装,将新粒子重新释放回各自所属的子膜内,等待下一次迭代的分类; 513、 判断算法满足终止条件:如果循环次数t > T,则循环结束,输出包含最优路径的 解集Φ,否则t = t+Ι,算法跳转到S5。
2.根据权利要求1所述的一种基于可变维粒子群膜算法的移动机器人路径规划方法, 其特征在于:S2所述机器人状态参数包括:机器人尺寸大小、机器人行进速度、机器人最小 转弯半径、机器人起点位置坐标信息和机器人期望到达的目标终点位置信息。
3. 根据权利要求1所述的一种基于可变维粒子群膜算法的移动机器人路径规划方法, 其特征在于: S3所述最短距离Dis目标函数为」
,其中,L(a,a+1)是节点a和节点 a+Ι之间的距离,
,xa是节点a的X轴坐标值,xa+1是节 点a+Ι的X轴坐标值,ya是节点a的Y轴坐标值,ya+1是节点a+Ι的Y轴坐标值; S3所述平滑度S目标函数为S = α · S。- β · Sp,其中,α和β是权重系数,
> Nf是有效路径的总片段数,Dl是线段之间夹角大于期望值 阈值的数量,所述期望值阀值为机器人最小转弯半径夹角,是最小路径片段数; S3所述安全度SD目标函数为
· 4是第r条路径 片段与其最近障碍物之间的最小距离,λ是安全度阀值,(;为第r条路径片段的安全性罚 值。
4. 根据权利要求3所述的一种基于可变维粒子群膜算法的移动机器人路径规划方法, 其特征在于:所述安全度阀值λ为机器人与障碍物的最小欧几里得距离。
5. 根据权利要求1所述的一种基于可变维粒子群膜算法的移动机器人路径规划方法, 其特征在于:S9所述对S8所述存在无效维的粒子进行修正,具体方法如下: 5901、 判断S8所述存在无效维的粒子的情况,若存在无效维的粒子的某一维陷入障碍 物中则为类型Τ1,若存在无效维的粒子的某两维跨越障碍物则为类型Τ2,其中,类型Τ1即 存在无效维的粒子的节点陷入障碍物中,类型Τ2即存在无效维的粒子的节点之间的线段 跨越障碍物; 5902、 对类型Τ1进行无效维修正,包括: 59021、 计算S901所述陷入障碍物的节点到对应障碍物所有外凸顶点的点到点之间的 直线距离; 59022、 对S9021计算所得直线距离进行从大到小排序,选出与陷入障碍物的节点的直 线距离最小的外凸顶点; 59023、 将S9022选出的外凸顶点外围栅格作为将要修改至的备选栅格,删去无效维节 占 . 59024、 将新节点插入S9023所述被删去无效维节点的位置,其中,所述新节点为S9023 所述备选栅格; 5903、 对类型Τ2进行无效维修正,包括: 59031、 计算S901所述节点之间跨越障碍物的线段到对应障碍物所有外凸顶点的距 离,即点到线之间的直线距离; 59032、 对S9031计算所得点到线之间的直线距离进行从大到小排序,选出直线距离最 小的所对应的外凸顶点; 59033、 将S9032选出的外凸顶点外围栅格作为将要修改至的备选栅格; 59034、 将新节点插入S901所述跨越障碍物的线段两头的节点之间,其中,所述新节点 为S9033所述备选栅格。
6.根据权利要求1所述的一种基于可变维粒子群膜算法的移动机器人路径规划方法, 其特征在于:S13所述T = 200。
【文档编号】G06F19/00GK104050390SQ201410307935
【公开日】2014年9月17日 申请日期:2014年6月30日 优先权日:2014年6月30日
【发明者】张葛祥, 王学渊, 赵俊博 申请人:西南交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1