基于多目标搜索的两群多向机器人路径规划方法与流程

文档序号:12589094阅读:1168来源:国知局
基于多目标搜索的两群多向机器人路径规划方法与流程
本发明涉及一种基于多目标搜索的两群多向机器人路径规划方法,属于计算机
技术领域

背景技术
:路径规划问题是机器人研究领域内的核心问题之一。其研究关键是在一个充满障碍物的工作空间中发现一条避障的安全路径,并且要求机器人行进的代价(通常指路径长度)最低。该领域已经产生很多算法,如:A*算法,人工势场算法、Dijkstra算法、Floyed等等。近些年,一些基于群智能思想的路径规划算法相继被提出,例如:蚁群算法、粒子群算、鱼群算法等等。机器人路径规划领域中,栅格法是一种较为常用的环境建模方法。通过栅格法,可以把复杂的空间信息转换为一个简单的栅格地图,进而把路径规划问题转化为图搜索问题。传统蚁群算法的提出主要是为了求解图搜索问题(具体为TSP问题)。据此,把蚁群算法应用到机器人路径规划问题可以得到很好的效果。蚁群算法主要基于概率搜索,不能保证一定搜索到最优路径,可以以较高概率计算出最优或相对最优路径,大部分工程应用中这样的计算结果是可以接受的。但现有的蚁群算法存在着搜索目标单一,信息素存储、计算复杂,搜索路径不够平滑等问题。技术实现要素:本发明要解决的技术问题是:针对现有技术采用蚁群算法规划路径时存在搜索效率低、搜索目标单一、信息素存储和计算复杂的不足,设计一种基于多目标搜索的两群多向机器人路径规划方法,该方法使用栅格法进行环境建模,引入多目标搜索、多向行进、动态信息素生成等策略,提高发现最优解的效率和最终优化的路径的平滑度。本发明的技术解决方案是基于多目标搜索的两群多向机器人路径规划方法包括如下具体步骤:步骤1:以密度为M×N栅格对工作空间进行建模,生成栅格地图;栅格地图中障碍物区域的单元格被标记为“0”,称为“障碍物单元格”;可行区域单元格被标记为“1”称为“可行单元格”;所有单元格信息素浓度都被初始化为1;步骤2:在栅格地图中标记起点S和终点T,分别以S和T为原点,以16向射线方式,向外探测可行单元格,起点S探测到的可行单元格标记为“起点搜索目标”,终点T探测到的可行单元格标记为“终点搜索目标”;步骤3:在起点和终点各生成一个子群,分别称为起点子群和终点子群;起点子群中第i个蚂蚁个体用符号asi表示,终点子群中第j个蚂蚁个体用atj表示;起点子群个体依次向终点生成的搜索目标和终点单元格T爬行;终点子群个体依次向起点生成的搜索目标和起点单元格S爬行;asi的当前移动轨迹用禁忌表RSi记录,atj的当前移动轨迹用禁忌表RTj记录;禁忌表中同一单元格不允许重复出现;爬行过程中,蚂蚁个体选择搜索域内的直线可达单元格建立可行域集合;通过启发信息和随机策略选择可行域内的一个单元格作为蚂蚁下一步行进位置;当发现第一条可行路径后,步骤3执行结束;步骤4:当发现第一条可行路径后,可行路径被Rbest记录,Rbest路径上的单元格在栅格地图中被标记,Rbest中所有单元格信息素被动态更新为步骤5:起点子群和终点子群,继续相向搜索;搜索过程中每个蚂蚁个体通过启发信息和轮盘赌算法完成可行域内的下一步行进的单元格选择;步骤6:当发现更优的路径后,Rbest被更新;Rbest路径上的单元格在栅格地图中被重新标记并且信息素值被动态赋值为地图中其他单元格的信息素值被动态设置为1;步骤7:重复步骤5和步骤6,最后Rbest中记录了算法计算的最后路径。更具体地,所述步骤1中,用M×N的栅格为工作空间建模生成栅格地图,还包括:栅格地图的单元格表示为这里(x,y)表示单元格坐标,其中x=1,…,M,y=1,…,N;α是一个二值变量,α=1表示单元格为可行单元格,α=0表示单元格为障碍物单元格;θ记录了单元格的信息素浓度值,初始值被设置为θ=1。更具体地,所述步骤3中,将整个蚂蚁种群划分为两个子群,以起点子群为例进行描述,终点子群的搜索过程与此类似,还包括:起点中每个蚂蚁体asi向所有终点生成的搜索目标进行搜索,最后对目标点栅格T进行搜索;搜索过程中,asi每一步移动前先建立搜索域,搜索域由asi所在单元格的周围两层单元格构成,每个asi有16个行进方向;删除搜索域中的障碍单元格和asi当前移动路径RSi所经过的单元格,剩下单元格中asi通过直线方式到达的单元格,构成asi的可行域集合;蚂蚁个体选择下一步单元格的公式为:Min(K)r0≤0.5Rand(K)r0>0.5]]>其中,K表示asi的可行域集合;r0是一个阈值,具体为一个随机数,且r0~U(0,1),asi每行进一步r0都重新被计算;Min(K)表示可行域集合中距离当前搜索目标直线距离最短的单元格;Rand(K)表示在可行域集合中以随机方式选择一个单元格;当asi的可行域中,发现被标记为“终点搜索目标”的单元格或发现终点单元格T,则一条可行路径被建立,发现的第一条可行路径由Rbest存储。更具体地,在步骤4中,栅格地图中单元格的信息素浓度已经发生变化,Rbest上的单元格拥有较高的信息素浓度。更具体地,所述步骤5中,两个子群相向搜索,蚂蚁个体通过启发信息和轮盘赌算法的综合作用完成下一个单元格选择;蚂蚁个体选择下一步单元格的公式为:Min(K)r0≤0.5Roulette(K)r0>0.5]]>其中,K表示asi的可行域集合;r0是一个阈值,具体为一个随机数,且r0~U(0,1),asi每行进一步r0都重新被计算;Min(K)表示可行域集合中距离终点位置直线距离最短的单元格;Roulette(K)表示以信息素作为赌盘面积,通过轮盘赌的方法选择下一个单元格;拥有较大信息素的单元格则容易被蚂蚁个体选中作为下一步的行进单元格。本发明具有以下优点:1、以起点种群为例,当种群个体搜索域中包含终点生成的搜索目标、终点单元栅格T,则本路径规划方法均可建立可行路径。由于栅格地图中已经被标记大量搜索目标,因此种群个体一次爬行可以发现多条可行路径,提高了种群个体发现可行路径的效率。2、搜索域包括24个单元格,蚂蚁个体的一步移动距离包括1、2、蚂蚁个体搜索范围增加,一步移动距离增大,则最终形成的可行路径将更加平滑。3、吸引种群个体行进的不止是起点或终点单元格,还包括大量搜索目标,进一步增加了种群个体发现可行路径解的多样性和效率。4、信息素动态更新策略考虑了当前最优路劲最短,同时也兼顾了随机性选择,增加了可行路径解的多样性;最优路径上的单元格拥有较大的信息素值,可以吸引大量蚂蚁个体沿其爬行,对当前最优路径的继续优化。5、本发明将是蚁群算法进行改进,在继承了蚁群算法启发搜索策略的基础上,引入了多目标搜索策略和多向行进策略,特别是改进了信息素生成和计算策略,提高了发现最优解的效率,增加了优化路径的平滑度。附图说明图1是栅格地图建立;图2是起点单元格生成搜索目标,并做标记;图3是以16向方式建立搜索域;图4是蚂蚁个体发现可行路径过程;图5是栅格地图信息素更新。具体实施方式下面结合附图和实施例,对本发明的技术方案进行详细地说明,但不应理解为是对技术方案的限制。图1至图5为本发明的机器人路径规划过程示意图;现结合图1至图5所示内容,对本发明所提供的蚁群算法优化机器人行走路径的过程进行说明,整体来说,包括了如下几个步骤:步骤一:如图1所示,将一个充满障碍物的工作空间用栅格建模形成栅格地图,栅格地图的左上角为原点,这样每个单元格都用其右下角的一组坐标(x,y)来标记;在栅格地图中用0标记出障碍物单元格200、1标记出可行单元格300、S为起点单元格100、T为终点单元格400;步骤二:如图2所示,生成搜索目标500,并在栅格地图中做好标记;图2展示了以起点单元格100为原点,以16向射线方式探测搜索目标500;以终点为原点的过程与此相类似;步骤三:在起点和终点单元格各建立一个子群;以起点子群为例,起点子群中每个蚂蚁个体向终点搜索目标和终点单元格依次爬行完成搜索;如图3所示,蚂蚁个体600以16向建立搜索域700,搜索域中的可行单元格组成蚂蚁个体当前的可行域;如图4所示,蚂蚁个体通过启发信息和随机选择综合作用对下一步行进栅格进行选择;以起点蚂蚁为例,当蚂蚁可行域中发现终点或终点搜索目标则第一条路径被发现,被Rbest800记录;步骤四:如图5所示,当第一条路径被发现后,路径上的单元格信息素值被设置为而其他单元格信息素值为1;来至两个子群的蚂蚁继续搜索,蚂蚁个体通过启发信息和轮盘赌综合作用选择下一步行进单元格;步骤六:当发现更优的路径后Rbest800被更新,同时所有单元格的信息素值被更新;保证当前Rbest800上的单元格信息素为而其他单元格信息素值为1;步骤七:重复步骤五和步骤六,Rbest800不断被更新,最后输出Rbest800为机器人最终规划路径。综上所述,本发明将多目标搜索,两群搜索、轮盘赌等多种方法合理引入到蚁群算法中,并扩大了蚂蚁个体的搜索范围和方向;动态信息素的生成和存储方法,使当前最优路径保持较高的信息素水平,以吸引部分蚂蚁沿最优路径移动,对当前最优路径不断优化;本发明综合考虑了整个种群中随机分流部分蚂蚁完成全局随机搜索,同时也考虑了利用蚁群算法的正反馈策略完成对当前最短路径的局部优化,提高了路径搜索效率和发现最优路径的概率。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1