一种基于烟花爆炸行为的改进的狼群算法的制作方法

文档序号:17938447发布日期:2019-06-18 22:50阅读:507来源:国知局
一种基于烟花爆炸行为的改进的狼群算法的制作方法

本发明属于机器人路径规划技术领域,特涉及一种基于烟花爆炸行为的改进的狼群算法。



背景技术:

路径规划是移动机器人实现自主导航的关键技术,移动机器人路径规划是在移动环境中寻找一条可行的且无碰撞路径问题的方法。目前路径规划方法主要可分为传统的路径规划方法和应用群智能算法的路径规划算法。传统的路径规划算法,如a*算法、d*算法和人工势场法等;群智能算法包括如遗传算法,蚁群算法、人工鱼群算法、粒子群算法和狼群算法等。由于群体智能算法是基于概率搜寻的算法,在求解线性、非线性和高维解空间具有简单、高效、鲁棒性强等优点。群体智能算法逐渐成为复杂环境下机器人路径规划研究的热点,为大量复杂优化问题的求解提供了更好的解决方案。本发明将在分析狼群的协作捕猎活动特点的基础上,针对传统的狼群算法存在探寻方向和探寻半径固定导致寻优效率低,更新规则容易陷入局部最优的等缺点进行改进。



技术实现要素:

有鉴于此,本发明的目的在于提供一种具有较快的收敛速度、较高的收敛精度以及更高的寻优精度路径规划方案,该方案可广泛应用于移动机器人的室内导航系统当中。

为达到上述目的,本发明提供如下技术方案:

一种基于烟花爆炸行为的改进的狼群算法,包括以下步骤:

s1:游走行为:引入烟花算法烟花爆炸行为,根据各个探狼所在位置猎物浓度的值来决定探索的精细程度h;

s2:召唤行为:根据头狼位置与当前狼的位置决定狼的奔走行为步长;

s3:根据探狼感受猎物的浓度决定下一次探寻半径的距离;

s4:围攻行为:猛狼与头狼距离小于围攻半径dis的猛狼进行位置更新,执行围攻行为;

s5:更新规则:采用轮盘赌的方法选择淘汰狼。

进一步,其中步骤s1包括以下步骤:

s11:求取每只探狼i的探索半径式中,ymax与ymin分别是狼群中最大和最小目标函数值,a是一个常数用来限制探索步长的长度,ε是一个极小的常数用以避免出现零的情况;

s12:求取探索方向数目h是一个常数用来限制探狼游走的方向数目;

s13:为了避免游走的方向过多或者过少,采用以下限制公式来限制探狼游走的方向数目:

式中,表示探狼i最终的游走方向,round(·)为四舍五入取整函数,a,b是两个常数;

s14:探狼i向第p个方向前进后在第d维空间所在的位置表示为:

由探狼i根据上述公式进行游走,距离猎物近时h'值大stepa'小进行精细游走提高搜索最优值的精度,距离猎物近时h'值小stepa'大,提高狼群的探寻效率有利于探狼i寻找全局最优解。

进一步,步骤s2中,引入召唤因子,根据探狼i头狼与发起召唤行为的头狼间的距离进行自适应奔袭,以头领狼与猛狼当前目标浓度为向导计算自适应奔走步长:

式中,λ表示[0,1]之间的随机数,||xid-xleadd||2表示猛狼i与头狼s间的欧式距离,得到自适应奔走步长表示为:

xid=xid+stepb'd×(xleadd-xid)/|xleadd-xid|。

进一步,步骤s4中,按照公式对与头狼距离小于围攻半径的猛狼进行位置更新,执行围攻行为,若目标函数值f(i)>ylead时则该狼取代头狼位置ylead=f(xi)发起召唤行为。

进一步,步骤s5中,采用轮盘赌的方法选择淘汰狼,根据信息素值,依概率选择被淘汰的r狼,让目标有机会不被淘汰,因此,针对第i匹狼,其被选中的概率表示为

本发明的有益效果在于:本发明提供了提出了一种基于改进探寻步长和探寻半径、改进回奔步长和狼群更新规则的改进狼群算法(fwpa)。通过引入烟花算法的爆炸烟花的探寻规则,使靠近猎物的探狼探索步伐变小,提高局部探索的能力,远离猎物的探狼增加,从而搜索半径提高全局搜索能力。改进奔袭行为的移动步长,根据每头狼所在的位置自动调整步长,提高奔走行为效率。改进狼群算法的更新规则,通过按概率选择淘汰狼群个体,以增强算法的全局寻优能力。通过测试函数性能测试与路径规划仿真结果表明,改进的狼群算法具有较快的收敛速度和较高收敛精度。该方案可应用到移动机器人的路径规划中。

本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

附图说明

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:

图1为本发明所述的基于烟花爆炸行为的改进的狼群算法流程图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。

如图1所述,一种基于烟花爆炸行为的改进的狼群算法,包括以下步骤:

s1:狼群初始化。初始化人工狼的数目n及所在的位置xi,狼群最大迭代次数tmax,探狼比例因子α,最大游走次数tmax,步长因子s,狼群的更新比例因子β,探狼探索半径因子a,探狼游走方向因子h。

s2:计算所有狼的目标函数值f(xi),选择目标函数值最大的狼作为头狼。选择去除头狼外,目标函数值最好的s_num只狼作为探狼执行游走行为,根据公式分别计算出探狼探寻半径stepai和探寻方向hi'按照公式更新探狼位置

s3:当探狼i在所在位置的目标函数值f(xi)大于头狼的目标函数值ylead或者奔走的次数达到tmax,进入step3。

s4:召唤行为。头狼发出召唤行为时,猛狼根据公式xid=xid+stepb'd×(xleadd-xid)/|xleadd-xid|向头狼奔走

s5:奔走过程中若目标函数值f(i)>ylead时则该狼取代头狼位置ylead=f(xi)发起召唤行为。

s6:若f(i)<ylead则猛狼继续奔袭直到dis≤dnear,进入围攻行为。

s7:围攻行为。按照公式(5)对与头狼距离小于围攻半径的猛狼进行位置更新,执行围攻行为。若目标函数值f(i)>ylead时则该狼取代头狼位置ylead=f(xi)发起召唤行为。

s8:更新头狼的位置。

s9:从除头狼以外的狼群中根据公式(13)计算每只狼淘汰的概率,选取r只狼淘汰,同时随机生成r只狼加入狼群,进入围捕行为。

s10:根据判断是否达到寻优精度或者最大迭代次数tmax。如果是则输出头狼位置,即所求解的最优值,否则转向step2继续执行围捕行为。

最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1