一种基于最大最小蚂蚁系统优化的SLAM数据关联方法转让专利

申请号 : CN201610908481.5

文献号 : CN106529678B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 康升征吴洪涛杨小龙李耀

申请人 : 南京航空航天大学

摘要 :

本发明公开了一种基于最大最小蚂蚁系统优化的SLAM数据关联方法,首先采用检验门限过滤来缩小数据关联的解空间范围,提高算法的搜索效率;然后将数据关联问题转化为最优路径求解问题,并利用解释树模型表示关联路径节点;最后将最大最小蚂蚁系统与联合最大似然准则相结合,将数据关联假设的联合最大似然值作为目标函数进行路径搜索。本发明缩小了数据关联的关联解空间,提高了算法的搜索效率;有效地弥补了蚁群算法收敛速度慢、搜索停滞及易陷入局部最优的缺陷。

权利要求 :

1.一种基于最大最小蚂蚁系统优化的SLAM数据关联方法,其特征在于,包括以下步骤:步骤1),在移动机器人的工作环境中布置若干静态的路标特征点,并设定移动机器人的运动初始位置和速度;

步骤2),利用移动机器人自带的声呐传感器采集环境路标特征信息,令已存的环境路标特征集合为x=(x1,x2,…,xn),新观测到的环境路标特征集合为z=(z1,z2,…,zm),建立观测到的环境路标特征集合z与已存的环境路标特征集合x之间的数据关联假设Hm:Hm={h1,…,hi,…,hm}

其中,n为已存路标特征点的个数,m为新观测到的路标特征点的个数;hi为新观测到的路标特征zi的关联取值,若新观测到的路标特征zi在已存的环境路标特征集合x中存在与其一致的路标特征xj,取值为j,此时(zi,xj)为hi对应的关联匹配对;否则取值为0;i为大于等于1小于等于m的自然数,j为大于等于1小于等于n的自然数;

步骤3),采用下式中的检验门限条件对所有的关联匹配对进行检验,并滤除不满足检验条件的关联匹配对:式中, 为新观测到的路标特征zi与已存的环境路标特征xj在t时刻的马氏距离,γ为置信度为1-α时的卡方分布值,其中α为预先设定的阈值;

然后用解释树模型表示满足检验条件的关联匹配对,其中每个节点视为蚂蚁游走的路径节点;

步骤4),令蚂蚁的数目为M,迭代最大次数为N,将每只蚂蚁的禁忌表都设置为空集,将蚂蚁最短路径集合设置为空集,将每只蚂蚁选择的次数设置为0,将迭代次数Ne设置为0,将信息素初始值τij(0)设置为预设的信息素初始最大值τmax;

步骤5),对于M只蚂蚁中的每一只蚂蚁:

步骤5.1),获得该蚂蚁在当前节点下可以游走的所有节点的集合A;

步骤5.2),在集合A中剔除掉该蚂蚁在禁忌表中的节点,得到集合B;

步骤5.3),针对集合B中的每一个节点,按照下列公式计算该蚂蚁从当前节点游走到其的概率式中,i、j、r均为大于等于1小于等于m的自然数,k为大于等于1小于等于M的自然数,Bk为该蚂蚁的禁忌表,β1为信息启发因子、β2为期望启发因子,启发式信息ηij和ηir值分别为1/Nij和1/Nir,Nij为当前节点与已存的环境路标特征集合x中第j个节点的路径长度,Nir为当前节点与集合B中除该节点以外其他任一节点的路径长度;τij为当前节点到已存的环境路标特征集合x中第j个节点之间路径上的信息素,τir为当前节点与集合B中除该节点以外其他任一节点之间路径上的信息素;

步骤5.4),在集合B中选择游走到其概率最高的节点作为该蚂蚁的下一个节点,将此节点加入到该蚂蚁的禁忌表后向其进行游走;

步骤5.5),根据下式计算该蚂蚁的信息素最小值τmin:式中,pbest为步骤5.4)中该蚂蚁从当前节点游走到下一个节点的概率,num为该蚂蚁选择的次数;

步骤5.6),对该蚂蚁选择的次数num进行加1;

步骤6),反复执行步骤5),直至所有蚂蚁都到达最底层叶节点;

步骤7),计算每只蚂蚁游走的路径总长度,并选出路径总长度最短的蚂蚁,将该蚂蚁的路径和路径总长度作为一个元素添加至蚂蚁最短路径集合中,并将该蚂蚁经过的路径的信息素按照下式进行更新:τij=ρ·τij+1/f(sbest)

式中,ρ为信息素挥发因子,f(sbest)表示最短路径总长度的值,当τij的值小于τmin时将其设置为τmin,当τij的值大于τmax时将其设置为τmax;

步骤8),对迭代次数Ne进行加1,将每只蚂蚁的禁忌表都设置为空集,将每只蚂蚁选择的次数设置为0,将信息素初始值设置为预设的信息素初始最大值τmax;

步骤9),反复执行步骤5)至步骤8),直到当Ne大于最大迭代次数N;

步骤10),在蚂蚁最短路径集合中筛选出路径总长度最短的蚂蚁,将其路径作为最佳路径,并将该路径中的节点作为最优数据关联假设进行输出。

2.根据权利要求1所述的基于最大最小蚂蚁系统优化的SLAM数据关联方法,其特征在于,步骤3)中确定新观测到的路标特征zi与已存的环境路标特征xj之间的马氏距离 的具体过程包括:步骤3.1),建立移动机器人在t时刻的观测模型:

zt,i=ht,j(xt|t-1)+ωt,i

式中,ht,j()为移动机器人在t时刻的第i个观测量zt,i与系统状态xt|t-1之间的非线性观测函数,ωt,i是均值为零、协方差为Rt,i的随机测量噪声;

步骤3.2),将上式中的非线性观测模型在当前估计值 处对其线性化处理:式中,雅克比矩阵

步骤3.3),分别计算t时刻的第i个观测量zt,i和系统状态xt|t-1的估计值 间的距离信息向量νt,ij及其协方差St,ij如下:式中,Pt|t-1为估计值 的方差矩阵;

步骤3.4),按下式计算马氏距离 为:

3.根据权利要求1所述的基于最大最小蚂蚁系统优化的SLAM数据关联方法,其特征在于,步骤7)中将蚂蚁的经过的路径的信息素更新后采用下式对该信息素进行平滑处理:τij=τij+δ·(τmax-τij)

式中,0≤δ≤1。

说明书 :

一种基于最大最小蚂蚁系统优化的SLAM数据关联方法

技术领域

[0001] 本发明涉及机器人自主导航领域,尤其涉及一种基于最大最小蚂蚁系统优化的SLAM数据关联方法。

背景技术

[0002] 同时定位与地图构建(Simultaneous Localization and Mapping,SLAM)的问题可以描述为在未知先验信息环境中,移动机器人利用所安装的传感器构建增量式地图,同时根据地图与位置估计进行自身定位,是机器人实现完全自主导航的关键技术问题,也是当前移动机器人领域研究的重点和热点。数据关联作为SLAM问题的重要组成部分,建立了不同时刻、不同地段所获得的传感器量测与特征地图之间的对应关系。然而,在实际SLAM过程中,数据关联算法的关联正确率和计算复杂度直接影响着SLAM的精确性和实时性。
[0003] 数据关联通常是由统计估计的方法来确定。目前,在SLAM问题中常用的数据关联算法有单匹配最近邻(Individual Compatibility Nearest Neighbor,ICNN)算法、联合相容分支定界(Joint Compatibility Branch and Bound,JCBB)算法以及多假设跟踪(Multiple Hypothesis Tracking,MHT)算法等。其中,ICNN算法计算存储量小,简单易行,但由于仅考虑单一最近环境特征间的关联匹配,因此只适合小规模SLAM环境,而对于特征分布密度或环境规模较大的情况,其抗干扰能力较差;JCBB算法虽然考虑了各量测特征匹配对的相关性,关联正确率高,但由于需要不断利用联合相容检验准则来检验所有观测值和地图特征之间的相容性,以及分支定界算法来搜索解空间,导致计算复杂度非常高,实际应用受到限制;MHT算法通过综合考虑相邻几帧的观测来进行关联决策,适用于初始化及观测噪声较大的场合,但由于假设数目会随着时间成指数增长,故不适合实时的应用。此外,在《Dementia&Geriatric Cognitive Disorders》中2004年发表的文献《Towards Lazy Data Association in SLAM》中,提出了一种惰性数据关联(Lazy Data Association,LDA)算法,能够回溯修正过去错误关联,但需要计算维数较大矩阵的逆,难以在实际中应用;在《计算机应用》中2009年发表的文献《一种基于蚁群算法的SLAM数据关联方法》中,提出了一种将联合最大似然准则与蚁群优化算法相结合的数据关联方法,显著地提高了最大似然算法的关联正确率,但由于蚁群算法收敛速度慢、搜索停滞及易陷入局部最优的缺陷,使得其关联正确率和运行时间需要进一步的改善。

发明内容

[0004] 本发明所要解决的技术问题是针对背景技术中所涉及到的缺陷,提供一种基于最大最小蚂蚁系统优化的数据关联方法,使得数据关联在正确率和实时性上都有所提高,有效地解决移动机器人的SLAM数据关联问题。
[0005] 本发明为解决上述技术问题采用以下技术方案:
[0006] 一种基于最大最小蚂蚁系统优化的SLAM数据关联方法,包括以下步骤:
[0007] 步骤1),在移动机器人的工作环境中布置若干静态的路标特征点,并设定移动机器人的运动初始位置和速度;
[0008] 步骤2),利用移动机器人自带的声呐传感器采集环境路标特征信息,令已存的环境路标特征集合为x=(x1,x2,…,xn),新观测到的环境路标特征集合为z=(z1,z2,…,zm),建立观测到的环境路标特征集合z与已存的环境路标特征集合x之间的数据关联假设Hm:
[0009] Hm={h1,…,hi,…,hm}
[0010] 其中,n为已存路标特征点的个数,m为新观测到的路标特征点的个数;hi为新观测到的路标特征zi的关联取值,若新观测到的路标特征zi在已存的环境路标特征集合x中存在与其一致的路标特征xj,取值为j,此时(zi,xj)为hi对应的关联匹配对;否则取值为0;i为大于等于1小于等于m的自然数,j为大于等于1小于等于n的自然数;
[0011] 步骤3),采用下式中的检验门限条件对所有的关联匹配对进行检验,并滤除不满足检验条件的关联匹配对:
[0012]
[0013] 式中, 为新观测到的路标特征zi与已存的环境路标特征xj在t时刻的马氏距离,γ为置信度为1-α时的卡方分布值,其中α为预先设定的阈值;
[0014] 然后用解释树模型表示满足检验条件的关联匹配对,其中每个节点视为蚂蚁游走的路径节点;
[0015] 步骤4),令蚂蚁的数目为M,迭代最大次数为N,将每只蚂蚁的禁忌表都设置为空集,将蚂蚁最短路径集合设置为空集,将每只蚂蚁选择的次数设置为0,将迭代次数Ne设置为0,将信息素初始值τij(0)设置为预设的信息素初始最大值τmax;
[0016] 步骤5),对于M只蚂蚁中的每一只蚂蚁:
[0017] 步骤5.1),获得该蚂蚁在当前节点下可以游走的所有节点的集合A;
[0018] 步骤5.2),在集合A中剔除掉该蚂蚁在禁忌表中的节点,得到集合B;
[0019] 步骤5.3),针对集合B中的每一个节点,按照下列公式计算该蚂蚁从当前节点游走到其的概率
[0020]
[0021] 式中,i、j、r均为大于等于1小于等于m的自然数,k为大于等于1小于等于M的自然数,Bk为该蚂蚁的禁忌表,β1为信息启发因子、β2为期望启发因子,启发式信息ηij和ηir值分别为1/Nij和1/Nir,Nij为当前节点与已存的环境路标特征集合x中第j个节点的路径长度,Nir为当前节点与集合B中除该节点以外其他任一节点的路径长度;τij为当前节点到已存的环境路标特征集合x中第j个节点之间路径上的信息素,τir为当前节点与集合B中除该节点以外其他任一节点之间路径上的信息素;
[0022] 步骤5.4),在集合B中选择游走到其概率最高的节点作为该蚂蚁的下一个节点,将此节点加入到该蚂蚁的禁忌表后向其进行游走;
[0023] 步骤5.5),根据下式计算该蚂蚁的信息素最小值τmin:
[0024]
[0025] 式中,pbest为步骤5.4)中该蚂蚁从当前节点游走到下一个节点的概率,num为该蚂蚁选择的次数;
[0026] 步骤5.6),对该蚂蚁选择的次数num进行加1;
[0027] 步骤6),反复执行步骤5),直至所有蚂蚁都到达最底层叶节点;
[0028] 步骤7),计算每只蚂蚁游走的路径总长度,并选出路径总长度最短的蚂蚁,将该蚂蚁的路径和路径总长度作为一个元素添加至蚂蚁最短路径集合中,并将该蚂蚁经过的路径的信息素按照下式进行更新:
[0029] τij=ρ·τij+1/f(sbest)
[0030] 式中,ρ为信息素挥发因子,f(sbest)表示最短路径总长度的值,当τij的值小于τmin时将其设置为τmin,当τij的值大于τmax时将其设置为τmax;
[0031] 步骤8),对迭代次数Ne进行加1,将每只蚂蚁的禁忌表都设置为空集,将每只蚂蚁选择的次数设置为0,将信息素初始值设置为预设的信息素初始最大值τmax;
[0032] 步骤9),反复执行步骤5)至步骤8),直到当Ne大于最大迭代次数N;
[0033] 步骤10),在蚂蚁最短路径集合中筛选出路径总长度最短的蚂蚁,将其路径作为最佳路径,并将该路径中的节点作为最优数据关联假设进行输出。
[0034] 作为本发明一种基于最大最小蚂蚁系统优化的SLAM数据关联方法进一步的优化方案,步骤3)中确定新观测到的路标特征zi与已存的环境路标特征xj之间的马氏距离 的具体过程包括:
[0035] 步骤3.1),建立移动机器人在t时刻的观测模型:
[0036] zt,i=ht,j(xt|t-1)+ωt,i
[0037] 式中,ht,j()为移动机器人在t时刻的第i个观测量zt,i与系统状态xt|t-1之间的非线性观测函数,ωt,i是均值为零、协方差为Rt,i的随机测量噪声;
[0038] 步骤3.2),将上式中的非线性观测模型在当前估计值 处对其线性化处理:
[0039]
[0040] 式中,雅克比矩阵
[0041] 步骤3.3),分别计算t时刻的第i个观测量zt,i和系统状态xt|t-1的估计值 间的距离信息向量νt,ij及其协方差St,ij如下:
[0042]
[0043]
[0044] 式中,Pt|t-1为估计值 的方差矩阵;
[0045] 步骤3.4),按下式计算马氏距离 为:
[0046]
[0047] 作为本发明一种基于最大最小蚂蚁系统优化的SLAM数据关联方法进一步的优化方案,步骤7)中将蚂蚁的经过的路径的信息素更新后采用下式对该信息素进行平滑处理:
[0048] τij=τij+δ·(τmax-τij)
[0049] 式中,0≤δ≤1。
[0050] 本发明采用以上技术方案与现有技术相比,具有以下技术效果:
[0051] 1.采用检验门限过滤极小可能的关联假设,缩小了数据关联的关联解空间,提高了算法的搜索效率;
[0052] 2.利用解释树模型将关联匹配对表示成路径节点,以联合最大似然值作为优化目标,从而将联合最大似然数据关联问题转变为求解最优路径问题;
[0053] 3.将联合最大似然准则和最大最小蚂蚁系统相结合,改善了最大似然算法数据关联正确率低以及定位精度差的问题,并有效地弥补了蚁群算法收敛速度慢、搜索停滞及易陷入局部最优的缺陷,在一定程度上本方法提高了数据关联正确率并缩短了运行时间。

附图说明

[0054] 图1(a)、图1(b)分别为检验门限、不确定数据关联的示意图;
[0055] 图2为本发明解释树模型结构示意图;
[0056] 图3为本发明数据关联流程图;
[0057] 图4(a)、图4(b)、图4(c)、图4(d)分别为仿真环境地图、最大似然算法数据关联结果、基于蚁群算法的联合最大似然数据关联结果、本发明数据关联结果;
[0058] 图5(a)、图5(b)、图5(c)、图5(d)分别为数据关联正确率随时间步变化图、X轴定位误差随时间步变化图、Y轴定位误差随时间步变化图、方向角定位误差随时间步变化图。

具体实施方式

[0059] 下面结合附图对本发明的技术方案做进一步的详细说明:
[0060] 本发明主要由三部分组成:第一部分,采用检验门限过滤来缩小数据关联的解空间范围,提高算法的搜索效率;第二部分,将数据关联问题转化为最优路径求解问题,并利用解释树模型表示关联路径节点;第三部分,将最大最小蚂蚁系统与联合最大似然准则相结合,将数据关联假设的联合最大似然值作为目标函数进行路径搜索。
[0061] 本实施方式中,为描述方便,用MMAS-JML表示最大最小蚂蚁系统优化的联合最大似然数据关联方法,用ML表示最大似然数据关联方法,用ACO-JML表示蚁群算法优化的联合最大似然数据关联方法。
[0062] 本发明一种基于最大最小蚂蚁系统优化的SLAM数据关联方法,如图3所示具体实施方式包括以下步骤:
[0063] 步骤1),在MATLAB软件平台下搭建如图4(a)所示的仿真环境地图。地图为10m×10m的正方形区域,并在路径内外侧均匀分布168个静态路标特征点。其中,曲线表示运动轨迹,圆圈表示运动路径节点,点表示环境特征,十字表示特征估计,三角形表示搭载有声呐传感器的移动机器人系统。声呐传感器测量距离为3m,测量角度范围为[-90°,90°],角度测量误差为0.125°,距离测量误差为0.01m。机器人系统在X和Y方向上的测量噪声均为0.1m,方向角的测量噪声为0.3°。机器人从原点位置开始出发,以0.25m/s的速度沿曲线逆时针运动,并采用扩展卡尔曼滤波SLAM方法进行闭环实验。
[0064] 步骤2),利用移动机器人自带的声呐传感器采集环境路标特征信息,令已存的环境路标特征集合为x=(x1,x2,…,xn),新观测到的环境路标特征集合为z=(z1,z2,…,zm),建立观测到的环境路标特征集合z与已存的环境路标特征集合x之间的数据关联假设Hm:
[0065] Hm={h1,…,hi,…,hm}
[0066] 其中,n为已存路标特征点的个数,m为新观测到的路标特征点的个数;
[0067] hi为新观测到的路标特征zi的关联取值,若新观测到的路标特征zi在已存的环境路标特征集合x中存在与其一致的路标特征xj,取值为j,此时(zi,xj)为hi对应的关联匹配对;否则取值为0;其中,i为大于等于1小于等于m的自然数,j为大于等于1小于等于n的自然数;
[0068] 数据关联算法需要从关联假设Hm中选出一种最优关联假设匹配对,这不仅要把观测值与地图中已有特征正确地关联上,还需要能够识别新特征和排除虚假观测。然而,随着观测数目的增加,数据关联算法的计算复杂度会呈指数增长。考虑到移动机器人在实际运动过程中每个时间步的运动范围是有限的,故不需要将每个观测量与已存特征进行数据关联。为了排除极小可能的关联假设,减小关联解空间,数据关联算法需要对每个特征设定检验门限。
[0069] 步骤3),建立移动机器人在t时刻的观测模型为:
[0070] zt,i=ht,j(xt|t-1)+ωt,i
[0071] 式中,ht,j()为移动机器人在t时刻的第i个观测量zt,i与系统状态xt|t-1之间的非线性观测函数,ωt,i是均值为零、协方差为Rt,i的随机测量噪声。
[0072] 将上式中的非线性观测模型在当前估计值 处对其线性化处理:
[0073]
[0074] 式中,雅克比矩阵
[0075] 分别计算t时刻的第i个观测量zt,i和系统状态xt|t-1的估计值 间的距离信息向量νt,ij及其协方差St,ij如下:
[0076]
[0077]
[0078] 式中,Pt|t-1为估计值 的方差矩阵;
[0079] 按下式计算马氏距离 为:
[0080]
[0081] 采用下式中的检验门限条件对所有的关联匹配对进行检验,并滤除不满足检验条件的关联匹配对:
[0082]
[0083] 式中, 为新观测到的路标特征zi与已存的环境路标特征xj在t时刻的马氏距离,γ为置信度为1-α时的卡方分布值,其中α为预先设定的阈值;
[0084] 如图1(a)所示,检验门限可看作在观测空间中以 为中心的超椭圆,其中和 分别表示新观测到的路标特征zi与已存的环境路标特征xj的估计值,只有位于该椭圆中的观测才有可能被接受为有效观测。当存在多个新观测到的路标特征同时位于一个已存的环境路标特征的检验门限中,如图1(b)所示,则会产生不确定性数据关联,因此就需要依据数据关联准则来从多个关联假设中选择出最符合实际情况的一个。
[0085] 最大似然准则(Maximum Likelihood,ML),通常是用来考虑系统所获取到的每个新观测到的路标特征与已存的环境路标特征集合中单个特征相关联的可能性。假定真实观测量均匀分布,且观测噪声服从高斯分布,利用最大似然准则计算t时刻第i个新观测到的路标特征zi与第j个已存的环境路标特征xj之间的关联概率值fij:
[0086]
[0087]
[0088] 式中hl表示关联概率最大的第i个新观测到的路标特征zi与第j个已存的环境路标特征xj之间的关联关系,n表示信息向量的维数。
[0089] 对关联概率值fij取对数,并整理得:
[0090]
[0091]
[0092] 式中,Nij表示关联概率值相对应的规范距离。
[0093] 利用下式将求取最大关联概率的问题等价转化为求取最小规范距离的问题:
[0094]
[0095] 虽然ML方法简单易行,但由于仅考虑单个观测和特征间的独立关联,使得在环境不确定度增大时,关联正确率会迅速下降。为增强系统的稳定性,联合最大似然准则(Joint Maximum Likelihood,JML)考虑了数据关联的整体匹配最大可能性,利用该准则求取每个关联匹配对的关联概率值的总乘积,并将其作为最大的关联假设:
[0096]
[0097] 利用下式将求取整体最大关联概率的问题等价转化为求取最小规范距离的问题:
[0098]
[0099] 为了直观地描述数据关联问题的解空间,在满足唯一性约束条件下构建了如图2所示的解释树模型,在本实施方式中,图2只绘制了部分的解释树节点以方便描述解释树模型,而在实际算法中解释树节点数目按具体的关联匹配对数目。树的根节点为空节点Φ,每一层对应一个新观测到的路标特征zi,若zi与xj关联匹配,则节点表示一个相应的关联匹配对(zi,xj);若zi不与任何特征关联,则为空节点。从根节点到低层叶节点的一条路径即表示新观测到的环境路标特征集合z与已存的环境路标特征集合x间可能的关联假设,如图中的路径:Φ→(z1,x2)→Φ→(z3,x4)。用该解释树模型表示满足检验条件的关联匹配对,其中每个节点视为蚂蚁游走的路径节点,这样就可以利用最大最小蚂蚁系统(Max-Min Ant System,MMAS)来搜索出最佳路径,并作为最优数据关联假设。
[0100] 步骤4),令蚂蚁的数目为M,迭代最大次数为N,将每只蚂蚁的禁忌表都设置为空集,将蚂蚁最短路径集合设置为空集,将每只蚂蚁选择的次数设置为0,将迭代次数Ne设置为0,将信息素初始值τij(0)设置为预设的信息素初始最大值τmax;其它参数设置如表1所示。
[0101] 步骤5),对于M只蚂蚁中的每一只蚂蚁:
[0102] 步骤5.1),获得该蚂蚁在当前节点下可以游走的所有节点的集合A;
[0103] 步骤5.2),在集合A中剔除掉该蚂蚁在禁忌表中的节点,得到集合B;
[0104] 步骤5.3),针对集合B中的每一个节点,按照下列公式计算该蚂蚁从当前节点游走到其的概率
[0105]
[0106] 式中,i、j、r均为大于等于1小于等于m的自然数,k为大于等于1小于等于M的自然数,Bk为该蚂蚁的禁忌表,β1为信息启发因子、β2为期望启发因子,启发式信息ηij和ηir值分别为1/Nij和1/Nir,Nij为当前节点与已存的环境路标特征集合x中第j个节点的路径长度,Nir为当前节点与集合B中除该节点以外其他任一节点的路径长度;τij为当前节点到已存的环境路标特征集合x中第j个节点之间路径上的信息素,τir为当前节点与集合B中除该节点以外其他任一节点之间路径上的信息素;
[0107] 步骤5.4),在集合B中选择游走到其概率最高的节点作为该蚂蚁的下一个节点,将此节点加入到该蚂蚁的禁忌表后向其进行游走;
[0108] 步骤5.5),根据下式计算该蚂蚁的信息素最小值τmin:
[0109]
[0110] 式中,pbest为步骤5.4)中该蚂蚁从当前节点游走到下一个节点的概率,num为该蚂蚁选择的次数;
[0111] 步骤5.6),对该蚂蚁选择的次数num进行加1;
[0112] 步骤6),反复执行步骤5),直至所有蚂蚁都到达最底层叶节点;
[0113] 步骤7),计算每只蚂蚁游走的路径总长度,并选出路径总长度最短的蚂蚁,将该蚂蚁的路径和路径总长度作为一个元素添加至蚂蚁最短路径集合中,并将该蚂蚁经过的路径的信息素按照下式进行更新:
[0114] τij=ρ·τij+1/f(sbest)
[0115] 式中,ρ为信息素挥发因子,f(sbest)表示最短路径总长度的值,当τij的值小于τmin时将其设置为τmin,当τij的值大于τmax时将其设置为τmax;
[0116] 步骤8),对迭代次数Ne进行加1,将每只蚂蚁的禁忌表都设置为空集,将每只蚂蚁选择的次数设置为0,将信息素初始值设置为预设的信息素初始最大值τmax;
[0117] 步骤9),反复执行步骤5)至步骤8),直到当Ne大于最大迭代次数N;
[0118] 步骤10),在蚂蚁最短路径集合中筛选出路径总长度最短的蚂蚁,将其路径作为最佳路径,并将该路径中的节点作为最优数据关联假设进行输出。
[0119] 为了验证本文所提数据关联算法的有效性,将MMAS-JML与ML、ACO-JML进行了对比试验,并分别得到各算法在环境地图中的实际仿真结果,如图4(b)、图4(c)、图4(d)所示。相应的关联正确率及定位误差随时间步的变化结果如图5和表2所示。
[0120] 表1 MMAS-JML算法中的仿真参数
[0121]符号 描述 参数值
α 检验门限 0.05
ρ 信息素挥发因子 0.1
β1 信息启发因子 1.0
β2 期望启发因子 5.0
M 蚂蚁的数目 50
N 迭代最大次数 100
δ 信息素平滑参数 0
τmax 初始最大信息素 1.0
[0122] 表2不同数据关联算法性能对比
[0123]关联算法 运行时间/s 平均关联正确率/% 总运行时间步数
ML 81.8304 0.8064 168
ACO-JML 117.5198 0.9089 168
MMAS-JML 110.8654 0.9117 168
[0124] 根据图4、图5以及表2的仿真结果,进行如下分析:
[0125] (1)从全程路标估计及关联正确率结果来看:图4(b)中真实路标红点与路标估计蓝色十字的距离相比图4(c)和图4(d)较远,偏差较大;由于ML算法仅考虑单个量测与特征相关联的可能性,所以平均关联正确率远低于ACO-JML和MMAS-JML;相比ACO-JML,MMAS-JML克服了ACO算法搜索过程中易陷入局部最优解的不足,因而在关联正确率上有所提升。
[0126] (2)从机器人定位误差结果来看:在运行初始阶段,ML算法的定位精度与ACO-JML和MMAS-JML接近,但随着时间步数的增加,其累积误差明显增大,导致定位精度下降,而ACO-JML和MMAS-JML能够较好地抑制机器人累积误差的增长,定位效果较好。
[0127] (3)从运行时间来看:由于考虑了数据关联的整体匹配最大可能性,以及避免了搜索过程中停滞和收敛速度慢的缺陷,MMAS-JML算法虽然运行时间较ML算法长,但相比ACO-JML却有所降低。
[0128] 综合考虑数据关联正确率和实时性两个方面,MMAS-JML算法具有更大的优势。
[0129] 本技术领域技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
[0130] 以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。