第5期 伍永健,等:量子粒子群优化下的RBPF-SLAM算法研究 ·833· 由图2和表2可知,改进的RBPF算法在进行 子数获得更好的估计结果,使得算法整体运行时 轨迹和路标估计时所用粒子数和运行时间比RBPF 间降低。整体而言,改进的RBPF算法具有更好 算法和文献[15]算法少。在轨迹估计方面,改进 的有效性和优越性。 的RBPF算法得到的轨迹与机器人实际轨迹误差 200 较小,而RBPF算法和文献[15]算法得到的轨迹波 150 动较大;在路标估计方面,利用改进的RBPF算法 得到的路标估计与实际路标较为接近,而RBPF 100 算法和文献[15]算法得到的路标估计则在一定程 50 度上远离实际路标。因此,与RBPF算法和文献15) 算法相比,改进的RBPF算法在机器人轨迹估计 和路标估计方面能够得到更加满意的效果。 50 表23种算法的对比数据 -100 Table 2 Comparison data of three algorithms 200 -150-100-50 050100 x/m 算法 轨迹RMSE路标RMSE粒子数运行时间/s (a)RBPF仿真结果 RBPF 1.293 1.451 50 3.962 文献15] 0.976 1.154 36 2.471 200 改进的RBPF 0.737 1.047 25 1.363 150 下面利用维多利亚公园数据集对RBPF算 100 法、文献[15]算法和改进的RBPF算法的性能进一 50 步验证。由于悉尼维多利亚公园数据集并未提供 相关噪声参数的信息,故将噪声参数设置为:车 辆速度控制噪声为1.0m/s,驾驶角控制噪声为2.0°; 50 路标观测的角度噪声为2.5°,测距噪声为1.6m。 3种算法分别采用20个粒子、15个粒子和10个 -100 粒子来描述车辆轨迹和环境地图。 -200-150-100-50 050100 x/m RBPF算法、文献[15]算法和改进的RBPF算 b)文献15]仿真结果 法的仿真结果如图3所示。其中,灰色粗线表示GPS 200 路径(即真实路径),黑色细线表示估计路径,黑点 150 表示估计路标。 由图3可知,3种算法在不同程度上估计出GS 100 路径,但RBPF算法采用20个粒子得到的轨迹在 50 部分区域出现明显的不匹配现象,偏差较大;文 献[15]算法采用15个粒子得到的轨迹相比RBPF 算法不匹配现象减少:而改进的RBPF算法采用 -50 10个粒子得到的轨迹与GPS路径之间的误差较小, -100 。 吻合度更高。同时,RBPF算法和文献[I5]算法出现 -200-150-100-50050100 x/m 粒子匮乏问题而导致估计的路标个数不完全,而改 (C)改进的RBPF仿真结果 进的RBPF算法能精确地估计所有设定的路标。 由上述仿真可知,RBPF算法的提议分布缺少 图3维多利亚公园数据集仿真结果 Fig.3 Simulation results based on Vitoria Park data 观测信息且所有粒子都有参与重采样,算法整体 计算过程简单但效果不佳,会出现粒子退化现象 3.2实际验证 导致最后创建的地图精度不高;文献[15]对提议 为了验证本文改进算法的实际性,在室内环 分布进行改进,引入粒子群算法更新粒子集,并 境下利用旅行家2号移动机器人进行实际验证, 对所有权重较低粒子进行重采样,计算复杂度有 完成同时定位与地图构建。该机器人内部有里程 所提升;而改进的RBPF算法通过量子粒子群算 计,并随身携带URG-hokuyo激光传感器。在 法,只考虑粒子的位置量,且针对部分粒子进行 PC机上运行Liunx((Ubuntu12.04)的ROS系统。 重采样,整体计算复杂度介于RBPF算法和文献[15] 选取安徽工程大学电气工程学院实验室部分 算法之间,但由于改进的RBP℉算法能以较少粒 区域作为本次实验的室内环境。如图4所示,选由图 2 和表 2 可知,改进的 RBPF 算法在进行 轨迹和路标估计时所用粒子数和运行时间比 RBPF 算法和文献[15]算法少。在轨迹估计方面,改进 的 RBPF 算法得到的轨迹与机器人实际轨迹误差 较小,而 RBPF 算法和文献[15]算法得到的轨迹波 动较大;在路标估计方面,利用改进的 RBPF 算法 得到的路标估计与实际路标较为接近,而 RBPF 算法和文献[15]算法得到的路标估计则在一定程 度上远离实际路标。因此,与 RBPF 算法和文献[15] 算法相比,改进的 RBPF 算法在机器人轨迹估计 和路标估计方面能够得到更加满意的效果。 表 2 3 种算法的对比数据 Table 2 Comparison data of three algorithms 算法 轨迹 RMSE 路标 RMSE 粒子数 运行时间/s RBPF 1.293 1.451 50 3.962 文献[15] 0.976 1.154 36 2.471 改进的 RBPF 0.737 1.047 25 1.363 下面利用维多利亚公园数据集对 RBPF 算 法、文献[15]算法和改进的 RBPF 算法的性能进一 步验证。由于悉尼维多利亚公园数据集并未提供 相关噪声参数的信息,故将噪声参数设置为:车 辆速度控制噪声为 1.0 m/s,驾驶角控制噪声为 2.0°; 路标观测的角度噪声为 2.5°,测距噪声为 1.6 m。 3 种算法分别采用 20 个粒子、15 个粒子和 10 个 粒子来描述车辆轨迹和环境地图。 RBPF 算法、文献[15]算法和改进的 RBPF 算 法的仿真结果如图 3 所示。其中,灰色粗线表示 GPS 路径 (即真实路径),黑色细线表示估计路径,黑点 表示估计路标。 由图 3 可知,3 种算法在不同程度上估计出 GPS 路径,但 RBPF 算法采用 20 个粒子得到的轨迹在 部分区域出现明显的不匹配现象,偏差较大;文 献[15]算法采用 15 个粒子得到的轨迹相比 RBPF 算法不匹配现象减少;而改进的 RBPF 算法采用 10 个粒子得到的轨迹与 GPS 路径之间的误差较小, 吻合度更高。同时,RBPF 算法和文献[15]算法出现 粒子匮乏问题而导致估计的路标个数不完全,而改 进的 RBPF 算法能精确地估计所有设定的路标。 由上述仿真可知,RBPF 算法的提议分布缺少 观测信息且所有粒子都有参与重采样,算法整体 计算过程简单但效果不佳,会出现粒子退化现象 导致最后创建的地图精度不高;文献[15]对提议 分布进行改进,引入粒子群算法更新粒子集,并 对所有权重较低粒子进行重采样,计算复杂度有 所提升;而改进的 RBPF 算法通过量子粒子群算 法,只考虑粒子的位置量,且针对部分粒子进行 重采样,整体计算复杂度介于 RBPF 算法和文献[15] 算法之间,但由于改进的 RBPF 算法能以较少粒 子数获得更好的估计结果,使得算法整体运行时 间降低。整体而言,改进的 RBPF 算法具有更好 的有效性和优越性。 −200 −150 −100 −50 0 50 100 −50 0 50 100 150 200 −100 x/m y/m (a) RBPF 仿真结果 −200 −150 −100 −50 0 50 100 −50 0 50 100 150 200 −100 x/m y/m −200 −150 −100 −50 0 50 100 −50 0 50 100 150 200 −100 x/m y/m (b) 文献[15]仿真结果 (c) 改进的 RBPF 仿真结果 图 3 维多利亚公园数据集仿真结果 Fig. 3 Simulation results based on Vitoria Park data 3.2 实际验证 为了验证本文改进算法的实际性,在室内环 境下利用旅行家 2 号移动机器人进行实际验证, 完成同时定位与地图构建。该机器人内部有里程 计,并随身携带 URG-hokuyo 激光传感器。在 PC 机上运行 Liunx(Ubuntu 12.04) 的 ROS 系统。 选取安徽工程大学电气工程学院实验室部分 区域作为本次实验的室内环境。如图 4 所示,选 第 5 期 伍永健,等:量子粒子群优化下的 RBPF-SLAM 算法研究 ·833·