论文部分内容阅读
随着科学技术的不断发展,人们对机器人的需求日益增加,尽管单个机器人执行任务能够满足绝大部分的需求,仍然存在一些场景需要多个机器人协作完成任务,多机器人的编队控制问题作为协同控制中的一个典型问题也成为国内外研究的热门课题,对移动机器人智能化发展起着至关重要的作用。
本文考虑在外界辅助定位失效时,对一种基于SLAM(Simultaneous Localization and Mapping)技术的多机器人编队控制展开了研究,即机器人利用自身携带的传感器完成环境地图构建及定位,再通过控制机器人的位置完成编队任务。为了提高SLAM建图效率,采用一种基于SA-PSO(Simulated Annealing-Particle Swarm Optimization)的地图融合算法,能够帮助机器人快速完成地图构建,获取自身位姿信息。在此基础上,又着重研究一种基于CVT(Centroidal Voronoi Tessellation)的编队控制方法,能够解决真实室内环境下的多机器人编队问题。本文主要研究内容如下:
(1)在地图融合过程中,利用PSO(Particle Swarm Optimization)算法计算各自地图间的转换矩阵,但该方法通常由于重叠区域较小或算法过早收敛导致地图拼接错位,为了解决这一问题,本文研究了一种基于SA-PSO算法的多机器人构建地图方法,能够准确的找到局部地图之间的最优转换矩阵来进行地图融合。首先,单个机器人负责建立不同区域的局部地图,根据局部地图之间重叠区域的相似度设计适应度函数Z(x,y);其次,利用粒子群优化算法搜索最优的旋转和平移矩阵,使得局部地图间能够匹配到最大重叠区域;最后,设计自适应概率函数Q(x,y)对局部地图进行重新配准。实验结果证明改进的算法提高了地图融合的成功率。
(2)针对传统的刚性编队算法中队形冗余小,难以动态适应外部环境等问题,本文设计了一种利用CVT算法控制多机器人形成期望队形的方法,该方法显著增加了多机器人系统的结构冗余及内部承载能力。首先需要利用CVT算法完成对全局地图Voronoi划分,其次通过调整密度函数改变Voronoi单元的质心位置,当算法收敛时,能够保证生成点所在位置为每个Voronoi单元的质心,最后控制机器人追踪生成点的位置形成期望的队形。实验结果证明CVT算法能够控制机器人快速形成编队,且队形易于切换。
(3)考虑到机器人执行任务的真实场景中存在障碍物,因此我们针对常规的障碍物均匀分布场景,对动态CVT编队算法进行了验证。在保证全局密度函数均匀分布的前提下,利用特定的约束形状来指定期望的队形,通过降低障碍物位置对应密度值大小,以确保质心不会被划分在障碍物区域,即利用CVT算法的特性实现了驱使机器人避障的斥力场,不需要设置额外的势场函数来完成机器人的避碰与避障控制,降低了算法的复杂度。仿真结果证明本文使用的算法能够解决障碍物场景下的编队控制问题。
综上所述,本文通过对多机器人构建场景地图方法的深入研究,改进并优化了地图融合算法,有效提高了多机器人建图效率。在此基础上,采用一种编队控制算法,能够解决真实场景下多机器人编队生成与保持问题,并在ROS机器人平台上验证了算法的灵活性与鲁棒性。
本文考虑在外界辅助定位失效时,对一种基于SLAM(Simultaneous Localization and Mapping)技术的多机器人编队控制展开了研究,即机器人利用自身携带的传感器完成环境地图构建及定位,再通过控制机器人的位置完成编队任务。为了提高SLAM建图效率,采用一种基于SA-PSO(Simulated Annealing-Particle Swarm Optimization)的地图融合算法,能够帮助机器人快速完成地图构建,获取自身位姿信息。在此基础上,又着重研究一种基于CVT(Centroidal Voronoi Tessellation)的编队控制方法,能够解决真实室内环境下的多机器人编队问题。本文主要研究内容如下:
(1)在地图融合过程中,利用PSO(Particle Swarm Optimization)算法计算各自地图间的转换矩阵,但该方法通常由于重叠区域较小或算法过早收敛导致地图拼接错位,为了解决这一问题,本文研究了一种基于SA-PSO算法的多机器人构建地图方法,能够准确的找到局部地图之间的最优转换矩阵来进行地图融合。首先,单个机器人负责建立不同区域的局部地图,根据局部地图之间重叠区域的相似度设计适应度函数Z(x,y);其次,利用粒子群优化算法搜索最优的旋转和平移矩阵,使得局部地图间能够匹配到最大重叠区域;最后,设计自适应概率函数Q(x,y)对局部地图进行重新配准。实验结果证明改进的算法提高了地图融合的成功率。
(2)针对传统的刚性编队算法中队形冗余小,难以动态适应外部环境等问题,本文设计了一种利用CVT算法控制多机器人形成期望队形的方法,该方法显著增加了多机器人系统的结构冗余及内部承载能力。首先需要利用CVT算法完成对全局地图Voronoi划分,其次通过调整密度函数改变Voronoi单元的质心位置,当算法收敛时,能够保证生成点所在位置为每个Voronoi单元的质心,最后控制机器人追踪生成点的位置形成期望的队形。实验结果证明CVT算法能够控制机器人快速形成编队,且队形易于切换。
(3)考虑到机器人执行任务的真实场景中存在障碍物,因此我们针对常规的障碍物均匀分布场景,对动态CVT编队算法进行了验证。在保证全局密度函数均匀分布的前提下,利用特定的约束形状来指定期望的队形,通过降低障碍物位置对应密度值大小,以确保质心不会被划分在障碍物区域,即利用CVT算法的特性实现了驱使机器人避障的斥力场,不需要设置额外的势场函数来完成机器人的避碰与避障控制,降低了算法的复杂度。仿真结果证明本文使用的算法能够解决障碍物场景下的编队控制问题。
综上所述,本文通过对多机器人构建场景地图方法的深入研究,改进并优化了地图融合算法,有效提高了多机器人建图效率。在此基础上,采用一种编队控制算法,能够解决真实场景下多机器人编队生成与保持问题,并在ROS机器人平台上验证了算法的灵活性与鲁棒性。