一种基于烟花算法的气味源定位方法技术

技术编号:12818612 阅读:207 留言:0更新日期:2016-02-07 10:48
本发明专利技术涉及一种基于烟花算法的气味源定位方法,其特征在于所述方法包括以下步骤:1)烟羽发现和烟羽跟踪:基于烟花算法的爆炸机制,烟花在一定的范围内(爆炸半径                                                 )爆炸产生火花,每次爆炸都包括其位置更新阶段和浓度信息更新阶段;2)气味源确认:重复烟花爆炸的过程,当检测到当前烟花的气味浓度值大于预先设定阈值或者当算法实际运行的迭代次数大于设定的参数时,算法终止,确定机器人最后的位置即为气味源的位置。该方法不需要参考风向信息,兼备烟羽发现、烟羽跟踪和气味源定位的功能,在原有烟花算法爆炸半径公式的基础上做了修正,可有效地避免机器人陷入局部最优状态,准确迅速地定位到气味源的位置,大大提高了搜索效率。

【技术实现步骤摘要】
一种基于烟花算法的气味源定位方法
本专利技术涉及机器人主动嗅觉领域,特别涉及基于烟花算法来完成对气味源定位的方法。
技术介绍
目前,由于现有的传统的固定(无线)传感器网络和生物检测法在有毒气体检测、火灾建筑物搜索、以及反恐排险等领域的应用效果不好,浪费大量的人力、财力和物力,具有一定的局限性。移动机器人可以主动地寻找目标化学物质并确定其所在位置,覆盖范围更大,灵活性更好,并且可以克服生物易疲劳和注意力易分散等缺点。近年来,机器人技术迅速发展,使机器人在一些恶劣的环境下完成任务成为了可能。机器人主动嗅觉(ActiveOlfaction)成为了当今机器人领域研究的热点之一,又称之为机器人气味源定位(OdorSourceLocalization),Hayes将气味源定位的过程分为三个子任务:烟羽发现、烟羽跟踪和气味源确认。现有的研究成果大都利用Zigzag遍历法或Sprial遍历法进行烟羽发现,依靠风向信息结合一些智能算法(如蚁群算法、萤火虫算法以及模拟退火算法等)逆风搜索来跟踪烟羽,根据算法的终止条件进行气味源确认。虽然这些方法都可以定位到气味源,但是它们都不兼备烟羽发现、烟羽跟踪和气味源定位的功能,且实际风速和风向的波动幅度较大,气味源在空气中的扩散受其影响较大,这时参考风向信息,利用风趋向性进行气味源定位,搜索效果差,易使搜索过程中的机器人陷入局部最优,搜索效率低。若能够利用烟花算法让机器人解决现有气味源定位过程中存在的问题,将会给我们的生活带来很大的便利。本专利技术的目的是为了针对现有气味源定位问题存在的不足,提出一种基于烟花算法的机器人气味源定位方法,它可以兼备烟羽发现、烟羽跟踪和气味源定位的功能,而且在不依赖风向信息的情况下,有效地避免机器人在搜索过程中陷入局部最优,准确迅速地定位到气味源的位置。
技术实现思路
为了解决现有的机器人气味源定位方法对环境已知信息要求较高、功能单一且易陷入局部最优状态的缺点,本专利技术提出了一种基于烟花算法的机器人气味源定位方法,机器人能够在不依靠风向信息的情况下,可以充分利用其位置和浓度信息来发现烟羽、跟踪烟羽并避免其在搜索过程中陷入局部最优,最后准确地定位到气味源位置,大大地提高了搜索效率。本专利技术解决其技术问题所采用的技术方案是:烟羽发现和烟羽跟踪:基于烟花算法的爆炸机制,烟花在一定的范围内(爆炸半径)爆炸产生火花。每次爆炸都包括其位置更新阶段和浓度信息更新阶段。首先在搜索空间随机放置一个烟花,即问题的初始解。烟花在爆炸的同时有一个爆炸半径,产生的火花散落在这一半径范围内。在算法中我们对搜索空间的边界区域进行了限制,若烟花在爆炸过程中产生的火花超出了边界区域,则将此火花随机地映射到搜索空间内。重复烟花爆炸产生火花这一过程,随着迭代次数的增加,烟花和火花的位置会逐渐地朝着优化问题的最优解位置收敛。在室内通风环境中,由于搜索过程中会有一部分搜索区域几乎没有浓度信息,算法在初始阶段可能会接触不到烟羽,因此在算法运行初期,烟花的适应度值会比较差。为了使烟花算法可以更好的应用在机器人主动嗅觉这个领域,本专利技术在原有烟花算法爆炸半径公式的基础上对其进行了修正,烟花爆炸半径可根据当前烟花的目标函数值与阈值的差值的大小进行自适应的变化,其大小由式(1)决定:(1)其中,为常数,是为了使爆炸半径与浓度差值保持在一个数量级上。表示预先设定阈值与当前烟花的浓度值的差值,即。在机器人刚进入到目标环境时,初始位置随机选择,很有可能该位置的浓度值比较小,但此时爆炸半径大,全局搜索能力很强,加强在整个搜索空间的搜索。当烟花位置收敛到全局最优解附近的时候,其爆炸半径接近于零,加强局部搜索能力,快速地定位到气味源位置。而当烟花陷入局部最优解的时候,此时当前烟花的浓度值会比较小,即,则可以立即跳出局部最优状态。气味源确认:重复烟花爆炸的过程,当检测到当前烟花的气味浓度值大于预先设定阈值或者算法实际运行的迭代次数大于设定的参数时,算法终止,确认烟花最后的位置即为气味源位置。附图说明下面结合附图和实施例对本专利技术作进一步说明。图1是本专利技术方法的流程图。具体实施方式1.初始化。1.1设定初始参数:在搜索空间随机地选择一个边界位置放置烟花,作为初始解。1.2设定算法终止条件:浓度阈值和迭代次数。2.烟羽发现及烟羽跟踪:烟花在一定的范围内(爆炸半径)爆炸产生火花。2.1计算烟花爆炸半径:烟花的爆炸半径根据当前烟花的目标函数值与阈值的差值的大小,进行自适应的变化,其大小由式(1)决定:(1)其中,为常数,是为了使爆炸半径与浓度差值保持在一个数量级上。表示预先设定阈值与当前烟花的浓度值的差值,即。机器人刚进入到目标环境时,随机选择一个位置作为其初始位置,由于机器人刚进入到目标环境时,搜索空间会有一部分区域浓度值几乎为零,所以初始位置的浓度值一般比较小,但是此时烟花爆炸半径会相对较大,全局搜索能力很强,机器人会加强在整个搜索空间的搜索。当机器人位置收敛到全局最优解附近的时候,其爆炸半径接近于零,加强局部搜索能力,快速地定位到气味源位置。2.2机器人跳出局部最优状态:当烟花陷入局部最优解的时候,此时当前烟花的浓度值会比较小,即,其爆炸半径比较大,机器人会立即跳出局部最优状态。2.3火花位置更新:烟花爆炸产生火花,每个火花的位置根据式(2)或式(3)进行更新:(2)(3)其中,表示烟花的当前位置,为火花的位置。为爆炸半径,为爆炸的方向向量,为烟花爆炸总的方向数。式(2)和式(3)分别表示规定爆炸方向和随机爆炸方向产生的火花的位置更新公式。2.4产生火花后,算法在候选者集合(包括烟花和火花)中选择一个适应度值最好的个体作为下一代的烟花。2.5烟羽再发现:由于烟羽分布具有随机性和间歇性,若在烟羽跟踪阶段出现跟踪烟羽丢失的情况,此时烟花根据其自身的适应度值调节爆炸半径大小,则机器人会迅速地进行烟羽再发现,从而继续跟踪烟羽。3气味源确认重复步骤2,当检测到当前烟花的气味浓度值大于预先设定阈值或者算法实际运行的迭代次数大于设定的参数时,此时算法终止,确定机器人最后的位置即是气味源的位置。本文档来自技高网
...
一种基于烟花算法的气味源定位方法

【技术保护点】
一种基于烟花算法的气味源定位方法,其特征在于该方法包括的步骤为:1) 基于烟花算法的爆炸式的搜索策略:采用烟花爆炸式的搜索策略,即机器人随机地进入到搜索空间,随机地选择初始位置并在该位置处释放一个烟花,烟花在一定的范围内(爆炸半径)爆炸产生火花,机器人根据各个火花的适应度值选择最好的个体作为下一代烟花,每次爆炸都包括其位置更新阶段和浓度信息更新阶段;2) 基于烟花算法的烟羽跟踪策略:机器人可根据当前烟花的目标函数值(即当前位置的气体浓度值)与预先设定阈值的差值的大小自适应地调节烟花爆炸半径的大小;3) 避免陷入局部最优:当机器人陷入局部最优解的时候,此时当前位置的气味浓度值相比阈值会小得多,即此时,则机器人会立即跳出局部最优状态,继续进行搜索,表示预先设定阈值与当前烟花的浓度值的差值,即;4)气味源确认当机器人检测到当前烟花的气味浓度值大于预先设定阈值或者当算法实际运行的迭代次数大于设定的参数时,算法终止,确认机器人最后的位置即为气味源位置。

【技术特征摘要】
1.一种基于烟花算法的气味源定位方法,其特征在于该方法包括的步骤为:1)基于烟花算法的爆炸式的搜索策略:采用烟花爆炸式的搜索策略,即机器人随机地进入到搜索空间,随机地选择初始位置并在该位置处释放一个烟花,烟花在一定的范围内爆炸产生火花,机器人根据各个火花的适应度值选择最好的个体作为下一代烟花,每次爆炸都包括其位置更新阶段和浓度信息更新阶段;2)基于烟花算法的烟羽跟踪策略:机器人可根据当前烟花的目标函数值C(xi)与预先设定阈值C_max的差值的大小自适应地调节烟花爆炸半径的大小;3)避免陷入局部最优:当机器人陷入局部最优解的时候,此时当前位置的气味浓度值C(xi)相比阈值C_max会小得多,即此时ΔC>>0,则机器人会立即跳出局部最优状态,继续进行搜索,ΔC表示预先设定阈值C_max与当前烟花的浓度值C(xi)的差值,即ΔC=C_max-C(xi);4)气味源确认当机器人检测到当前烟花的气味浓度值C(xi)大于预先设定阈值C_ma...

【专利技术属性】
技术研发人员:缪燕子金慧杰孙苏园许红盛金鑫卜淑萍李晓东周笛
申请(专利权)人:中国矿业大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1