一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于改进的蝴蝶优化算法的机器人多目标路径规划的制作方法

2021-10-27 20:26:00 来源:中国专利 TAG:人多 算法 路径 改进 蝴蝶


1.本发明具体涉及一种基于改进的蝴蝶优化算法的机器人多目标路径规划。


背景技术:

2.近年来一种新型优化算法—蝴蝶优化算法得到了应用,它由sankalap arora和 satvir singh等于2019年提出,该算法的灵感来源于蝴蝶的觅食和交配行为。蝴蝶寻找食物和伴侣主要依靠嗅觉、视觉、味觉、触觉和听觉,其中嗅觉是最重要的,它帮助蝴蝶寻找食物或者最佳的交配对象。
3.1算法简介
4.1.1基本原理
5.蝴蝶的嗅觉对其周围的气味非常敏感,科学研究表明,蝴蝶对这些气味来源的位置有着非常准确的判断。同时每只蝴蝶均能释放出一种具有特殊味道和浓度的香气,当蝴蝶感觉到另一只蝴蝶在这个区域散发出更多的香味时,就会去靠近,这个阶段相当于算法的全局搜索阶段。另外,当蝴蝶感知不到大于它自己的香味时,就会随机移动,相当于算法的局部搜索阶段。
6.将香味建模为刺激物的物理强度的函数,如下式(1);
7.f=ci
a
ꢀꢀ
(1)
8.上式中,f是感知到的其它蝴蝶香味强度,c表示感知形态,取值范围是[0,1], i、a分别表示刺激强度和幂指数,它们取值范围都是[0,1]。参数a控制着算法的行为,当其取最大值1时,表示一只特定蝴蝶发出的香气量被其它蝴蝶以同样的能力感知到,意味着在这个区域的任何位置都可以感觉到一只散发香味的蝴蝶,算法达到了全局的最优值。若参数,取值为0,则表示任何一只蝴蝶散发的香味都不会被其它蝴蝶感觉到。
[0009]
1.2算法流程
[0010]
基本的蝴蝶优化算法流程如下步骤所示:
[0011]
(1)初始化蝴蝶种群,明确所求问题目标函数、问题的解空间,随机初始化第一代蝴蝶;
[0012]
(2)根据适应度函数计算出每只蝴蝶在其解空间中的适应度值,找出当前最优蝴蝶的位置;
[0013]
(3)计算每只蝴蝶发出香味的浓度函数。利用随机函数生成数决策该蝴蝶执行全局搜索还是局部搜索,以尽可能减少外部环境的影响;
[0014]
(4)全局搜索阶段,低浓度香味的蝴蝶个体受浓度最佳的蝴蝶吸引并向其移动,其全局搜索移动公式如下:
[0015][0016]
表示解向量xx对应的第i只蝴蝶在第d次迭代,g
best
是当前最优蝴蝶,第i只蝴蝶的香味浓度表示为f
i
,rnd取值范围是[0,1]的随机数;
[0017]
(5)局部搜索阶段,蝴蝶个体进行随机搜索,其局部搜索移动公式如下:
[0018][0019]
其中分别表示在问题解空间中第d次迭代随机选取的两只蝴蝶,rnd取值范围是[0,1]的随机数;
[0020]
(6)判断是否满足迭代次数要求或精度要求,则停止计算并输出最优解及相应的参数,否则转向(2)继续循环。
[0021]
蝴蝶的位置更新对种群的寻优取决定性作用,在蝴蝶算法初期,种群中的个体模式集中在适应度值较低的个体上,需要种群尽快能够在整个空间进行“搜索”,但是到了算法后期,个体模式朝高适应度的个体集中,会造成种群的“开发”能力有限,进而出现早熟收敛,无法跳出局部极值。
[0022]
目前蝴蝶算法被广泛应用在机器人领域,现有技术在采用这种蝴蝶算法对机器人进行多目标路径规划,在实际应用中机器人在运动过程中也会存在上述说明的技术问题。


技术实现要素:

[0023]
为解决现有技术中存在的问题,本发明提供了一种基于改进的蝴蝶优化算法的机器人多目标路径规划,具体的技术方案如下所述:
[0024]
一种基于改进的蝴蝶优化算法,其特征在于:包括有如下步骤:
[0025]
s1、参数初始化设置:
[0026]
初始化蝴蝶优化算法的各项基本参数;
[0027]
s2、初始化种群,并计算各个解的是适应度值:
[0028]
初始化种群,根据适应度函数计算出每只蝴蝶在其解空间中的适应度值;
[0029]
s3、计算每只蝴蝶发出香味的浓度函数:
[0030]
利用随机函数生成数决策该蝴蝶执行全局搜索还是局部搜索,以尽可能减少外部环境的影响;
[0031]
s4、判断p>rand:
[0032]
若p>rand,则利用式(2)进行全局搜索:
[0033]
低浓度香味的蝴蝶个体受浓度最佳的蝴蝶吸引并向其移动;
[0034]
若p<rand,则按照式(7)进行局部搜索:
[0035]
引入动态自适应t分布变异策略:
[0036]
给出进化离散度的定义,以便描述种群整体适应度的变化,设o(d)为第d代种群与第 d

1代种群的适应度值标准差的比值:
[0037][0038]
在神经网络理论中,神经元的激活函数采用sigmoid函数来构造,其定义:
[0039]
[0040]
点(0,0.5)为其中心对称点,当自变量x在[

10,10]之间时函数值域变化,且变化范围为(0,1),函数在线性与非线性之间具有良好的平衡性,作为阈值函数使用,结合进化离散度o(d)和sigmoid函数,提出一种非线性动态惯性权重因子:
[0041][0042]
依据公式(6)生成的非线性动态惯性权重因子,在常规蝴蝶算法中进行t分布变异操作,其变异程度由非线性动态惯性权重因子ω进行控制,最终通过引入这种动态自适应 t分布变异策略,对算法中蝴蝶局部搜索阶段的移动公式改进如下:
[0043][0044]
其中,t
dis
(d)表示当迭代次数为d时,以其作为参数自由度的t分布,公式(7)在蝴蝶当前位置基础上增加了自适应t分布的变异干扰项ω
·
t
dis
(d);
[0045]
s5、更新蝴蝶个体和全局最优解;
[0046]
s6、越界处理;
[0047]
s7、判断是否满足迭代次数要求或精度要求,则停止计算并输出最优解及适应度值,否则转向s3继续循环。
[0048]
进一步地,在公式(6)中,其中ω
max
为最大惯性权重,取值为0.9,ω
min
为最小惯性权重,取值为0.4。
[0049]
进一步地,在公式(6)中,d、d
max
分别表示当前迭代次数与最大进化代数,o(d)为种群进化离散度参数,e是阻尼因子,取值为[0,1]。
[0050]
进一步地,在步骤s4中,在算法的运行初期,由于d值较小,变异干扰项ω
·
t
dis
(d)视为柯西变异,在算法的运行后期,变异干扰项ω
·
t
dis
(d)视为高斯分布变异。
[0051]
一种基于改进的蝴蝶优化算法的机器人多目标路径规划,其特征在于:包括有如下步骤:
[0052]
1)进行坐标系变换,且利用式(8)对起点、终点、障碍物位置的坐标进行变换:
[0053]
起点b与终点e的连线为x'轴构建坐标系bx'y',然后将坐标系oxy中的点变换到 bx'y'中,变换公式如下:
[0054][0055]
其中,(x
b
,y
b
)是坐标系oxy中起点b的坐标,(x',y')是点(x,y)在坐标系bx'y'中对应的点,θ是x轴与直线be的夹角;
[0056]
2)建立m条平行簇l1,l2,

,l
m
将be平均为m 1段,每每相邻的两条平时直线的距离设为δl=||be||/(m 1);
[0057]
3)初始化参数;
[0058]
4)在每条平行线l
j
(0<j≤m)上随机生成一个点,组成点集合得到蝴蝶共计初始化n个蝴蝶;
[0059]
5)利用适应度函数式(12),对蝴蝶进行评估,获得蝴蝶的适应度s;
[0060]
长度指标
[0061]
设起点b和终点e的坐标为b(x
b
,y
b
)、e(x
e
,y
e
),任意路径节点坐标设为p
i
(x
i
,y
i
),i的取值为[1,m],设路径长度为f
distance
,将其标准化表示如下式:
[0062][0063]
安全度指标
[0064]
设机器人在三次样条插值节点处与障碍物无碰撞,假设已知m个路径结点的坐标 (x1,y1),(x2,y2),

,(x
m
,y
m
)以及起点坐标(x
b
,y
b
)和终点坐标(x
e
,y
e
),通过三次样条差值分别得到d个插值点,其横坐标为(x1,x2,

,x
d
),其纵坐标为(y1,y2,

,y
d
),需要所生成的 d个插值点是否有碰撞情况发生,将d设置为100,设路径安全度指标为f
secure
,将其如下式表示:
[0065][0066]
上式中η表示安全因子,取值为100,d
j,k
表示第j个插值点到第k个障碍物中心距离, r(k)表示第k个障碍物的半径,h表示路径中障碍物的数量;
[0067]
光滑度指标
[0068]
设路径节点为(b,p1,p2,

,p
m
,e),相邻路段之间的夹角表示为ψ
i
,建立的路径平滑度指标为:
[0069][0070]
ψ
i
越小表示路径光滑程度越优;
[0071]
将以上指标进行融合后得到机器人路径规划的综合指标s:
[0072]
s=f
distance
f
secure
f
flatness
ꢀꢀ
(12);
[0073]
6)利用公式(1)计算每只蝴蝶发出香味的浓度函数,利用随机函数生成数决策该蝴蝶执行全局搜索还是局部搜索,减少外部环境的影响:
[0074]
全局搜索:
[0075]
利用公式(2)进行全局搜索,低浓度香味的蝴蝶个体受浓度最佳的蝴蝶吸引并向其移动;
[0076]
局部搜索:
[0077]
引入动态自适应t分布变异策略利用公式(7)进行局部搜索,蝴蝶个体进行随机搜索;
[0078]
7)更新蝴蝶个体和全局最优解;
[0079]
8)越接处理;
[0080]
9)判断是否满足迭代次数要求或精度要求,若是满足进入11),否则返回5)继续循环;
[0081]
10)输出最优个体适应度值。
[0082]
本发明的有益效果为:
[0083]
本发明在算法的运行初期,由于当前迭代次数d值较小,此时该干扰项可以视为柯西变异,使得算法保持了蝴蝶种群的多样性,因而可以最大程度的发挥干扰项的作用,使其具有良好的全局探索能力,有助于算法避免陷入局部最优;但在算法的运行后期,变异干扰项变为高斯分布变异,这将加快其收敛速度及提高搜索的精度,算法具有较强的局部搜索能力,同时变异干扰项的作用随着迭代次数的增加不断减小;
[0084]
基于改进的蝴蝶优化算法应用在机器人路径规划中,会提高机器人搜索的精度,使机器人具有较强得到局部搜索能力,使得机器人能够快速在起始点和终止点之间找到一条最短的、较平滑的、且避开所有障碍物的路径。
附图说明
[0085]
图1为本发明实施例中sigmoid函数图;
[0086]
图2为本发明实施例中基于改进的蝴蝶优化算法流程图;
[0087]
图3为本发明实施例中的机器人在环境中的路径表示函数图。
具体实施方式:
[0088]
为了加深对本发明的理解,下面结合附图对本发明的实施例做详细的说明。
[0089]
须知,本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
[0090]
实施例
[0091]
参见图1至图3,
[0092]
1自适应t分布策略
[0093]
t分布是数理统计和概率论理论中一种重要的分布类型,在很多领域都得到了广泛应用。该种分布的参数自由度决定着曲线形态:当自由度越大,曲线的形态越加高耸,同时越接近标准正态分布曲线;若参数取无限大值,则该分布就是高斯分布,即当自由度越小,曲线的形态会越加低平;若参数取值为1时,则该分布就是柯西分布,即
[0094]
2动态惯性权重因子
[0095]
蝴蝶的位置更新对种群的寻优取决定性作用,在蝴蝶算法初期,种群中的个体模式集中在适应度值较低的个体上,需要种群尽快能够在整个空间进行“搜索”。但是到了算法后期,个体模式朝高适应度的个体集中,会造成种群的“开发”能力有限,进而出现早熟收敛,无法跳出局部极值。因此,在蝴蝶的位置更新中引入一种动态惯性权重因子,以便在算法的前期能够尽快达到较优区域,在算法的后期对较优区域进一步开发以尽快找到最优解。
[0096]
首先给出进化离散度的定义,以便描述种群整体适应度的变化,设o(d)为第d代种群与第d

1代种群的适应度值标准差的比值:
[0097][0098]
在神经网络理论中,神经元的激活函数常采用sigmoid函数来构造,其定义:
[0099][0100]
图1给出了sigmoid函数图像,为一连续光滑且严格单调曲线,点(0,0.5)为其中心对称点,当自变量x在[

10,10]之间时函数值域变化,且变化范围为(0,1)。该函数在线性与非线性之间具有良好的平衡性,因此常作为阈值函数使用。结合进化离散度o(d)和sigmoid 函数,提出一种非线性动态惯性权重因子:
[0101][0102]
其中ω
max
为最大惯性权重,一般取值为0.9,ω
min
为最小惯性权重,一般取值为0.4,
[0103]
d、d
max
表示当前迭代次数与最大进化代数。o(d)为种群进化离散度参数,e是阻尼因子,一般取值为[0,1]。
[0104]
3动态自适应t分布变异策略
[0105]
依据公式(6)生成的非线性动态惯性权重因子,在常规蝴蝶算法中进行t分布变异操作,其变异程度由非线性动态惯性权重因子ω进行控制,最终通过引入这种动态自适应 t分布变异策略,对算法中蝴蝶局部搜索阶段的移动公式改进如下:
[0106][0107]
其中,t
dis
(d)表示当迭代次数为d时,以其作为参数自由度的t分布,公式(7)在蝴蝶当前位置基础上增加了自适应t分布的变异干扰项ω
·
t
dis
(d)。在算法的运行初期,由于d 值较小,此时该干扰项可以视为柯西变异,使得算法保持了蝴蝶种群的多样性,因而可以最大程度的发挥干扰项的作用,使其具有良好的全局探索能力,有助于算法避免陷入局部最优;但在算法的运行后期,变异干扰项变为高斯分布变异,这将加快其收敛速度及提高搜索的精度,算法具有较强的局部搜索能力,同时变异干扰项的作用随着迭代次数的增加不断减小。
[0108]
4算法流程
[0109]
一种基于改进的蝴蝶优化算法,包括有如下步骤:
[0110]
s1、参数初始化设置:
[0111]
初始化蝴蝶优化算法的各项基本参数;
[0112]
s2、初始化种群,并计算各个解的是适应度值:
[0113]
初始化种群,根据适应度函数计算出每只蝴蝶在其解空间中的适应度值;
[0114]
s3、计算每只蝴蝶发出香味的浓度函数:
[0115]
利用随机函数生成数决策该蝴蝶执行全局搜索还是局部搜索,以尽可能减少外部
环境的影响;
[0116]
s4、判断p>rand:
[0117]
若p>rand,则利用式(2)进行全局搜索:
[0118]
低浓度香味的蝴蝶个体受浓度最佳的蝴蝶吸引并向其移动;
[0119]
若p<rand,则按照式(7)进行局部搜索:
[0120]
引入动态自适应t分布变异策略:
[0121]
给出进化离散度的定义,以便描述种群整体适应度的变化,设o(d)为第d代种群与第 d

1代种群的适应度值标准差的比值:
[0122][0123]
在神经网络理论中,神经元的激活函数采用sigmoid函数来构造,其定义:
[0124][0125]
点(0,0.5)为其中心对称点,当自变量x在[

10,10]之间时函数值域变化,且变化范围为(0,1),函数在线性与非线性之间具有良好的平衡性,作为阈值函数使用,结合进化离散度o(d)和sigmoid函数,提出一种非线性动态惯性权重因子:
[0126][0127]
依据公式(6)生成的非线性动态惯性权重因子,在常规蝴蝶算法中进行t分布变异操作,其变异程度由非线性动态惯性权重因子ω进行控制,最终通过引入这种动态自适应 t分布变异策略,对算法中蝴蝶局部搜索阶段的移动公式改进如下:
[0128][0129]
其中,t
dis
(d)表示当迭代次数为d时,以其作为参数自由度的t分布,公式(7)在蝴蝶当前位置基础上增加了自适应t分布的变异干扰项ω
·
t
dis
(d);
[0130]
s5、更新蝴蝶个体和全局最优解;
[0131]
s6、越界处理;
[0132]
s7、判断是否满足迭代次数要求或精度要求,则停止计算并输出最优解及适应度值,否则转向s3继续循环。
[0133]
5机器人路径规划
[0134]
假设机器人工作环境为二维空间,在空间中分布着有限数量的静态障碍物(凸多边形),机器人路径规划的任务是在起始点和终止点之间找到一条最短的、较平滑的、且避开所有障碍物的路径。本发明采用导航点模型来构建机器人工作环境,如图3所示。
[0135]
6路径编码
[0136]
起点b与终点e的连线为x'轴构建坐标系bx'y',如图3所示。然后将坐标系oxy中的点变换到bx'y'中,变换公式如下:
bx'y'中,变换公式如下:
[0158][0159]
其中,(x
b
,y
b
)是坐标系oxy中起点b的坐标,(x',y')是点(x,y)在坐标系bx'y'中对应的点,θ是x轴与直线be的夹角;
[0160]
2)建立m条平行簇l1,l2,

,l
m
将be平均为m 1段,每每相邻的两条平时直线的距离设为δl=||be||/(m 1);
[0161]
3)初始化参数d、c、i、a等;
[0162]
4)在每条平行线l
j
(0<j≤m)上随机生成一个点,组成点集合得到蝴蝶共计初始化n个蝴蝶以及它们的初始位置等;
[0163]
5)利用适应度函数式(12),对蝴蝶进行评估,获得蝴蝶的适应度s;
[0164]
长度指标
[0165]
设起点b和终点e的坐标为b(x
b
,y
b
)、e(x
e
,y
e
),任意路径节点坐标设为p
i
(x
i
,y
i
),i的取值为[1,m],设路径长度为f
distance
,将其标准化表示如下式:
[0166][0167]
安全度指标
[0168]
设机器人在三次样条插值节点处与障碍物无碰撞,假设已知m个路径结点的坐标 (x1,y1),(x2,y2),

,(x
m
,y
m
)以及起点坐标(x
b
,y
b
)和终点坐标(x
e
,y
e
),通过三次样条差值分别得到d个插值点,其横坐标为(x1,x2,

,x
d
),其纵坐标为(y1,y2,

,y
d
),需要所生成的d个插值点是否有碰撞情况发生,将d设置为100,设路径安全度指标为f
secure
,将其如下式表示:
[0169][0170]
上式中η表示安全因子,取值为100,d
j,k
表示第j个插值点到第k个障碍物中心距离, r(k)表示第k个障碍物的半径,h表示路径中障碍物的数量;
[0171]
光滑度指标
[0172]
设路径节点为(b,p1,p2,

,p
m
,e),相邻路段之间的夹角表示为ψ
i
,建立的路径平滑度指标为:
[0173][0174]
ψ
i
越小表示路径光滑程度越优;
[0175]
将以上指标进行融合后得到机器人路径规划的综合指标s:
[0176]
s=f
distance
f
secure
f
flatness
ꢀꢀ
(12);
[0177]
6)利用公式(1)计算每只蝴蝶发出香味的浓度函数,利用随机函数生成数决策该蝴蝶执行全局搜索还是局部搜索,减少外部环境的影响:
[0178]
全局搜索:
[0179]
利用公式(2)进行全局搜索,低浓度香味的蝴蝶个体受浓度最佳的蝴蝶吸引并向其移动;
[0180]
局部搜索:
[0181]
引入动态自适应t分布变异策略利用公式(7)进行局部搜索,蝴蝶个体进行随机搜索;
[0182]
7)更新蝴蝶个体和全局最优解;
[0183]
8)越接处理;
[0184]
9)判断是否满足迭代次数要求或精度要求,若是满足进入11),否则返回5)继续循环;
[0185]
10)输出最优个体适应度值。
[0186]
本发明方案所公开的技术手段不仅限于上述技术手段所公开的技术手段,还包括由以上技术特征等同替换所组成的技术方案。本发明的未尽事宜,属于本领域技术人员的公知常识。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜