【技术实现步骤摘要】
本专利技术属于智能移动机器人领域,涉及一种前沿目标点的生成方法,尤其涉及一种用于移动机器人自主探索的前沿目标点生成方法。
技术介绍
随着人工智能技术和计算机技术的飞速发展,移动机器人的研究取得了重大突破。未知环境下的移动机器人自主探索技术作为移动机器人领域的一项关键技术,已引起了众多学者的关注,该技术在机器人搜救、行星探测和水下探测等领域均得到了广泛应用,具有巨大的应用需求。移动机器人自主探索的目的是为了在有限的时间内尽可能多的获取未知环境的信息,而前沿(Frontier)作为区分已探索区域与未知区域的分界线,它附近具有较多不确定的环境信息。因此,在现存的自主探索方法中,基于前沿的探索策略备受瞩目。基于前沿的探索策略可简要的概括为如下过程:首先检测前沿,然后在前沿附近生成目标点,再结合评价函数选择最具有探索价值的目标点作为最佳的目标点,最后控制机器人向最佳的目标点运动。针对前沿检测问题,一种较为常见的方法是借用数字图像技术来处理整个地图信息,进而检测出前沿区域。然而,随着地图数据的增大,这种前沿检测算法的时间和空间复杂度也会急剧增加。这是制约移动机器人自主探索效率的一个重要因素。为提高前沿检测的效率,研究者们提出了多种有效的前沿检测算法。Matan Keidar提出了一种波阵面前沿检测(Wavefront Frontier Detector,WFD)算法。WFD通过处理已探索区域的地图信息来检测前沿,而不是直接处理整个地图信息。然而,当已探索的区域增大时,需要处理的地图信息量随之较大,那么WFD算法的计算量也会急剧膨胀。P.G.C.N.Senarathn ...
【技术保护点】
一种用于移动机器人自主探索的前沿目标点生成方法,其特征在于:在移动机器人探索的过程中,根据采集到的最新激光数据生成当前时刻的局部前沿目标点,再结合全局拓扑地图信息和已生成的前沿目标点,对所有的前沿目标点进行全局更新,以保证前沿目标点全局最优;本方法包括以下内容:第一,提出一种基于几何规则的初始前沿目标点生成方法,根据当前激光数据,提取出局部环境的前沿,再结合几何规则生成当前局部环境下的初始前沿目标点;第二,引入可通行空间的概念,对初始的前沿目标点进行调整,保证前沿目标点是安全的、可到达的;第三,沿着移动机器人的运动轨迹,创建当前时刻的拓扑节点,进而更新全局拓扑地图,用以标记移动机器人已探测到的区域;第四,结合全局拓扑地图和已生成的前沿目标点,对前沿目标点进行全局更新,保证前沿目标点全局最优;本方法提供的方法包括以下步骤:步骤一,原始激光数据的预处理;在本方法中,激光测距仪被用于感知外界环境信息;然而,激光测距仪对环境中某些特殊材质或者颜色是不敏感的,这些材质或者颜色为玻璃、黑色等,这些均会导致原始激光数据中存在inf或者nan等无效数据;为提高本方法的鲁邦性,首先对原始的激光数据进行预 ...
【技术特征摘要】
1.一种用于移动机器人自主探索的前沿目标点生成方法,其特征在于:在移动机器人探索的过程中,根据采集到的最新激光数据生成当前时刻的局部前沿目标点,再结合全局拓扑地图信息和已生成的前沿目标点,对所有的前沿目标点进行全局更新,以保证前沿目标点全局最优;本方法包括以下内容:第一,提出一种基于几何规则的初始前沿目标点生成方法,根据当前激光数据,提取出局部环境的前沿,再结合几何规则生成当前局部环境下的初始前沿目标点;第二,引入可通行空间的概念,对初始的前沿目标点进行调整,保证前沿目标点是安全的、可到达的;第三,沿着移动机器人的运动轨迹,创建当前时刻的拓扑节点,进而更新全局拓扑地图,用以标记移动机器人已探测到的区域;第四,结合全局拓扑地图和已生成的前沿目标点,对前沿目标点进行全局更新,保证前沿目标点全局最优;本方法提供的方法包括以下步骤:步骤一,原始激光数据的预处理;在本方法中,激光测距仪被用于感知外界环境信息;然而,激光测距仪对环境中某些特殊材质或者颜色是不敏感的,这些材质或者颜色为玻璃、黑色等,这些均会导致原始激光数据中存在inf或者nan等无效数据;为提高本方法的鲁邦性,首先对原始的激光数据进行预处理,以剔除原始数据中的无效数据;预处理方法如下:(1)顺序遍历原始激光数据,记录第一个满足预设的有效数据;(2)若首尾的激光数据出现无效数据,则将该数据赋值为激光数据的最大量程值;(3)从(1)中记录的有效数据开始,向下和向上顺序访问每一个原始激光数据,若该数据为有效数据,跳转到第(4)步,否则跳转到第(5)步;(4)顺序访问下一个数据,若遍历完原始激光数据,则预处理结束,否则跳转到第(3)步;(5)若与该数据相邻的激光数据均为有效数据,则将较小的数据值赋给该数据,跳转到第(3)步,否则将与之相邻的有效数据值赋给该数据,跳转到第(3)步;步骤二,检测局部环境前沿;本方法将局部环境前沿分为A、B两类前沿;A类前沿是由激光测距仪的量程制约而产生的,位于激光测距仪最大量程处;B类前沿是由障碍物遮挡而产生的;本方法定义两类前沿的长度均大于所用移动机器人的宽度,以保证移动机器人能够穿越该前沿;检测局部环境前沿的方法如下:顺序遍历预处理后的激光数据,若出现连续的激光数据略小于激光测距仪的最大量程,且该连续的激光数据扫描的弧长大于所用移动机器人的宽度,则认为检测出了一个A类前沿;若出现相邻两激光数据距离差值的绝对值大于所用移动机器人的长度,则认为检测出了一个B类前沿;保存本步骤中检测出的A、B两类前沿;步骤三,提取当前局部环境的前沿目标点;本方法将前沿目标点分成A、B两类,分别产生于A、B两类前沿附近;提取当前局部环境前沿目标点的方法如下:(1)针对步骤二中检测出的不同类型的前沿,构建不同的几何规则集以提取对应的初始前沿目标点;(2)为保证前沿目标点是安全的,且可到达的,构建两类前沿目标点各自成立的条件,进而对初始的前沿目标点进行调整,使其满足各自成立的条件;调整后的前沿目标点即为本步骤提取的当前局部环境的前沿目标点;步骤四,全局拓扑地图更新;为方便前沿目标点的全局更新,本方法构建全局拓扑地图,以此来标记移动机器人已探测到的区域;在移动机器人运动的过程中,沿着移动机器人的运动轨迹构建一系列拓扑节点,并按构建节点的先后顺序构建拓扑树,进而创建全局拓扑地图;全局拓扑地图更新的方法如下:在移动机器人探索的过程中,每当移动机器人运动一段距离时,采集一次激光数据,按步骤一、二、三中的方法生成当前局部环境的前沿目标点;再结合当前移动机器人的位姿构建当前时刻的拓扑节点,并将该拓扑节点添加到全局拓扑地图中以完成全局拓扑地图的更新操作;在本方法中,全局拓扑地图用来标记移动机器人已探索过的区域;步骤五,前沿目标点全局更新;在移动机器人探索的过程中,由于新的前沿目标点的产生和移动机器人的运动,可能会导致某些前沿目标点出现在已探索的区域,也可能会出现前沿目标点之间过于接近的情况,此时需利用前沿目标点的全局更新规则对所有的前沿目标点进行添加、绑定与删除更新操作,以保证前沿目标点全局最优。2.根据权利要求1所述的一种用于移动机器人自主探索的前沿目标点生成方法,其特征在于:本方法包括以下几个步骤:步骤一,原始激光数据的预处理;本方法所述方法中利用激光测距仪来感知环境信息,然而激光测距仪对环境中某些特殊材质或者颜色是不敏感的,这些材质或者颜色为玻璃和黑色等,会导致原始激光数据中存在inf或者nan无效数据,其中,inf表示距离值为无限大,nan表示没有数据;为提高本方法所述方法的鲁邦性,本方法首先对原始的激光数据进行预处理,以剔除原始数据中的无效数据;令d[i]表示原始激光数据中的第i个距离值,dmax和dmin分别表示激光测距仪的最远和最小的有效距离值,size表示原始激光数据的个数;预处理方法如下:(1)顺序遍历每个原始激光数据d[i],若d[i]小于dmin,则将dmax赋值给d[i];记录第一个有效数据的索引号j;(2)令i等于j,若原始激光数据中第0个数据d[0]为无效数据,则将d[0]赋值为dmax;若原始数据中最后一个数据d[size-1]为无效数据,则将d[size-1]赋值为dmax;(3)令i等于i+1,若d[i]为无效数据,且i小于size-1,则跳转到第(4)步;若d[i]为有效数据,且i小于size-1,则重复第(3);若i等于或者大于size-1,则令i等于j,跳转到第(5)步;(4)若与d[i]相邻的两个数据均为有效数据,则将两个数据中较小的值赋给d[i];若与d[i]相邻的两个数据中仅有一个有效数据,则将该有效数据赋给d[i];若i大于j,则跳转到第(3)步,否则跳转到第(5)步;(5)令i等于i-1,若d[i]为无效数据,且i大于0,则跳转到第(4)步;若d[i]为有效数据,且i大于0,则重复第(5);若i等于或者小于0,则预处理结束;步骤二,检测局部环境前沿;本方法将局部环境前沿分为A、B两类前沿;A类前沿是由激光测距仪的量程制约而产生的,位于激光测距仪最大量程处;B类前沿是由障碍物遮挡而产生的;本方法认为两类前沿的长度均大于所用移动机器人的宽度,以保证移动机器人能够穿越该前沿;令当前局部环境下的前沿集合Fc=<F0,…,Fi>,针对每个前沿Fi有Fi=<idxs,idxe,type>,其中,idxs表示该前沿起始端点在激光数据中对应的索引号,idxe表示该前沿终止端点在激光数据中对应的索引号,type表示该前沿的类型;令fmax表示略小于dmax的一个数,length表示前沿的长度,angle_inc表示激光测距仪的分辨率;针对A类前沿有length=fmax·angle_inc·(idxe-idxs) (1)检测局部环境下A类前沿的方法如下:顺序遍历预处理后的激光数据,对于每个距离值均大于fmax的激光数据段,分别用idxs和idxe激光该数据段的开始和终止的索引号,利用公式(1)计算参数length,若length大于所用移动机器人的宽度,则检测出了A类前沿,并将<idxs,idxe,A>添加到Fc集合中;继续遍历预处理后的激光数据,直至遍历完所有的激光数据;针对局部环境下B类前沿有length=|d[idxe]-d[idxs]|, (2)其中,idxe与idxs是相邻的两个数;检测局部环境下B类前沿的方法如下:顺序遍历预处理后的激光数据,对于任意两个相邻的激光数据,分别用idxe和idxs记录其索引号,利用公式(2)计算参数length,若length大于所用移动机器人的宽度,则检测出了B类前沿,并将<idxs,idxe,B>添加到Fc集合中;继续遍历预处理后的激光数据,直至遍历完所有的激光数据;步骤三,提取当前局部环境的前沿目标点;本方法将前沿目标点类型分为A、B两类,前沿目标点分别产生于A、B两类前沿附近;考虑到A、B两类前沿产生的原因不同,本方法利用不同的几何规则集来提取对应的前沿目标点;假设当前时刻为t,令当前时刻的局部前沿目标点集合为则有 P c t = < p 0 , ... , p i > , ]]>针对每个前沿目标点pi有pi=<position,d,idx,typep>,其中,position=<x,y>为前沿目标点pi的全局坐标,d表示pi与激光测距仪中心的距离,idx表示该目标点在激光数据中方向的索引号,typep表示该前沿目标点的类型;提取当前局部环境前沿目标点的方法如下:(1)初始前沿目标点提取;针对步骤二中检测出的不同类型的前沿,构建不同的几何规则集以提取对应的初始前沿目标点;(2)初始前沿目标点调整;为保证前沿目标点是安全的,且可到达的,针对不同类型的初始前沿目标点设定不同的成立条件,进而对初始的前沿目标点进行调整,使其满足各自成立的条件;调整后的前沿目标点即为本步骤提取的当前局部环境的前沿目标点;(1)初始前沿目标点提取对A类初始前沿目标点的提取规则如下:a.将A类前沿的中点与激光测距仪的中心相连;b.在连线上取一点pi作为当前的一个初始的前沿目标点,使pi与激光测距仪的距离为fmax;则pi的各个元素分别为 ...
【专利技术属性】
技术研发人员:李秀智,邱欢,贾松敏,龚月,
申请(专利权)人:北京工业大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。