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

一种多机器人协同室内味源搜索方法与流程

2021-10-24 08:39:00 来源:中国专利 TAG:协同 多机 室内 方法


1.本发明涉及一种多机器人协同室内味源搜索方法。


背景技术:

2.在灾害、反恐、探险等工作条件恶劣场景中,用机器人代替人类进行危险作业已成为趋势。用机器人主动嗅觉来自动寻找和定位毒气泄漏、火灾等气味源,与传统的动物搜寻比,不存在嗅觉适应,可以长时间工作,而且稳定性和一致性高,已受到学者的重视。
3.一般气味源定位有固定传感器网络法和主动嗅觉法两类。前者依靠提前在特定区域安装固定传感器来获取信息进而定位气味源,典型的方法包括贝叶斯算法预先模拟、计算流体力学方程反解等。
4.主动嗅觉法利用移动机器人进行气味源定位,通常分为单机器人定位法和多机器人定位法。相较于单机器人定位法,多机器人定位法的搜索用时更少,鲁棒性更好。
5.由于多机器人相对于单机器人具有一定优势,近年来的研究也多以多机器人算法为主。粒子群算法(partical swarm optimization,pso)及其改进算法是较为主流的方案,改进算法比如有结合风向的wu

pso算法和结合带电粒子的cpso算法等。随着多机器人气味源定位研究的深入,其他更多定位算法被提出。
6.主动嗅觉算法一般分为烟羽发现、烟羽追踪、气味源确认三个部分。其中烟羽追踪是核心部分,而烟羽发现用于在低浓度情况下搜索烟羽,当检测到浓度高于阈值后搜索策略切换为烟羽追踪,最后进行气味源确认。但是不同的扩散环境可能具有不同浓度的烟羽,浓度阈值的取值存在不确定性。因此,若浓度阈值设定不合理,则可能会出现机器人在低浓度区域跳过烟羽发现,执行烟羽追踪,这种情况也可以看作是执行烟羽追踪策略的机器人初始位置设定在低浓度区域,是一种劣势的初始位置。传统算法遇到此种情况时就会出现搜索效率下降。
7.人工生态系统优化算法(artificial ecosystem

based optimization,aeo)基于“生态系统”这个概念。生态系统是指特定空间中的生物和非生物及其相互关系的复合体。能量流动是维持生态系统正常生态秩序的主要驱动力,而所有生物的行动推动了生态系统的运转。生态系统中的生物可分为生产者、消费者和分解者,它们相互交互构成了一条食物链。食物链决定了能量转移,能量总是从高能生物流向低能生物。通常,生态系统将这种能量转移机制作为维持物种稳定的策略,并且能够长期保持生态平衡。因此,有理由相信这种维持稳定的能量转移机制用于优化算法具有巨大的潜能。
8.人工生态系统优化算法采用了三个算子,包括生产者、消费者和分解者。生产者用于保持探索和利用之间的平衡,消费者用于改进探索,分解者用于促进利用。在一个种群中,只有一个生产者和一个分解者,其他个体都是消费者,消费者又分为食草动物、食肉动物和杂食动物三种。种群中个体的能量水平通过适应度评估,按照能量水平对种群个体进行排序,最终个体的排序信息反映着个体的适应度。
9.生产者:在人工生态系统优化算法中,生产者通过搜索限制范围内的所有空间,以
及依据分解者中的最佳个体,来更新种群中的生产者。随着迭代次数增加,生产者会向最优位置漂移,指引消费者探索。生产者的数学模型如下:
10.x1(t 1)=(1

a)x
n
(t) ax
rand
(t),
11.a=(1

t/t)r1,
12.x
rand
=r(u

l) l,
13.式中,x1为第一个机器人,n为机器人总数目,t为最大迭代次数,a为线性权重系数,u和l为机器人可移动位置的上限和下限,r为0到1的均匀分布随机数,x
rand
为搜索空间内随机产生的位置,t为当前的迭代次数,r1为0到1的均匀分布随机数;
14.消费者:生产者完成算子工作后,所有消费者执行下一步操作,消费者具有三种消费策略,即成为食草动物、食肉动物或杂食动物。消费者会从三者中随机选择一种策略。同时,为了避免陷于局部最优,aeo算法引入了一个简单的无参数随机值,叫做消耗因子。消耗因子的数学模型如下:
[0015][0016]
v1~n(0,1),v2~n(0,1),
[0017]
式中,c为消耗因子,v1和v2都为标准正态分布。
[0018]
食草动物消费策略:如果被选为草食动物,则它只会吃掉生产者。食草动物的数学模型如下:
[0019][0020]
食肉动物消费策略:如果被选为食肉动物,则它随机选择吃掉能量较高的消费者。食肉动物的数学模型如下:
[0021][0022]
杂食动物消费策略:如果被选为杂食动物,则它会同时吃掉生产者和能量较高的消费者。杂食动物的数学模型如下:
[0023][0024]
式中,r2为0到1之间的均匀分布随机数。
[0025]
分解者:就生态系统的功能而言,分解是一个非常重要的过程,它为生产者的生长提供了必要的营养。
[0026]
分解者对于所有现存的生物进行分解。分解者从所有生物中寻找最优方案。分解者的数学建模如下:
[0027]
x
i
(t 1)=x
n
(t) d
·
(e
·
x
n
(t)

h
·
x
i
(t)),
[0028]
i=[1,...,n]
[0029]
d=3u,u~n(0,1),
[0030]
e=r3·
randi([1 2])

1,
[0031]
h=2
·
r3‑
1,
[0032]
式中,d为分解因子,e和h为权重系数,r3为0到1之间的均匀分布随机数。
[0033]
人工生态系统算法可用于解决适应度最大值搜索问题,气味源搜索可以看作一个寻找适应度(浓度)最大值问题。同时,人工生态系统算法所设计的生产者、消费者和分解者,可以映射成气味源搜索所使用的多机器人。因此,可以尝试将人工生态系统算法进行改进以用于气味源搜索。


技术实现要素:

[0034]
本发明的目的在于克服现有技术中主动嗅觉算法的策略切换阈值敏感问题,而提供一种多机器人协同室内味源搜索方法,将人工生态系统算法进行改进以用于气味源搜索,使得在常规情况下具有良好搜索效率的同时,在机器人初始位置劣势情况下也能有较为稳定的表现。
[0035]
本发明解决上述问题所采用的技术方案是:一种多机器人协同室内味源搜索方法,基于人工生态系统优化算法对味源进行搜索,其特征在于:包括如下步骤:
[0036]
(1)、对所有机器人个体进行初始化,即给每个机器人在范围内随机选择一个位置,检测该位置的风向和浓度信息;
[0037]
(2)、根据浓度信息对机器人进行排序;
[0038]
(3)、选择浓度最大的机器人个体作为最优个体,并确定生产者预移动位置,生产者的数学模型如下:
[0039]
x1(t 1)=(1

a)x
n
(t) ax
rand
(t),
[0040]
a=(1

t/t)r1,
[0041]
x
rand
=r(u

l) l,
[0042]
式中,x1为第一个机器人,n为机器人总数目,t为最大迭代次数,a为线性权重系数,u和l为机器人可移动位置的上限和下限,r为0到1的均匀分布随机数,x
rand
为搜索空间内随机产生的位置;
[0043]
(4)、将剩下的机器人作为消费者,分配为食草动物、食肉动物和杂食动物,并确定食草动物、食肉动物和杂食动物预移动位置,同时引入消耗因子;
[0044]
消耗因子的数学模型如下:
[0045][0046]
v1~n(0,1),v2~n(0,1),
[0047]
式中,c为消耗因子,v1和v2都为标准正态分布;
[0048]
食草动物的数学模型如下:
[0049][0050]
食肉动物的数学模型如下:
[0051][0052]
杂食动物的数学模型如下:
[0053][0054]
式中,r2为0到1之间的均匀分布随机数;
[0055]
(5)、对比所有机器人个体预移动位置和原位置的浓度和风向信息,若预移动位置浓度大于原位置则进行移动并更新风向信息,反之则不动并不更新风向信息;
[0056]
(6)、分解者对所有机器人个体进行分解操作,分解操作中所有机器人个体确定预移动位置;分解者数学模型如下:
[0057]
x
i
(t 1)=x
n
(t) d
·
(e
·
x
n
(t)

h
·
x
i
(t))
[0058][0059]
d=3u,u~n(0,1),
[0060]
e=r3·
randi([1 2])

1,
[0061]
h=2
·
r3‑
1,
[0062]
wor=1

(t/t)2,
[0063]
式中,r
d
为分解者风向因子,r4为0到1之间的均匀分布随机数,w
i
为在当前机器人处的风速向量,w
ix
和w
iy
为在当前机器人处的x轴风速分向量和y轴风速分向量,wor为自适应步长因子,d为分解因子,e和h为权重系数,r3为0到1之间的均匀分布随机数;
[0064]
(7)、从现存所有机器人个体中挑选能量较高的个体作为追风者,并确定追风者预移动位置,追风者数学模型如下:
[0065][0066][0067]
式中,r
w
为追风者风向因子,r5和r6为0到1之间的均匀分布随机数,p
w
为成为追风者的机器人数目,c
w
为追风者在全部机器人中所占比例,le为分层系数;
[0068]
(8)、对比所有机器人个体预移动位置和原位置的浓度和风向信息,若预移动位置浓度大于原位置则进行移动并更新风向信息,反之则不动并不更新风向信息;
[0069]
(9)、对所有机器人个体根据浓度信息进行排序,并选择浓度最高的机器人个体作
为最优个体,获取最优个体的位置信息;
[0070]
(10)、判断最优个体与气味源的距离是否满足要求,如果是的话,则搜索完成,反之则回到步骤(2)。
[0071]
本发明在步骤(1)前,需要设定以下参数:机器人数目、最大迭代次数、最大搜索时间、追风者比例、分解者风向影响系数、追风者风向影响系数、分层系数。
[0072]
本发明生产者的预移动位置根据自身位置、自适应系数和随机位置进行确定。
[0073]
本发明食草动物的预移动位置根据自身位置、生产者位置和消耗因子进行确定。
[0074]
本发明食肉动物的预移动位置根据自身位置、高能量消费者位置和消耗因子进行确定。
[0075]
本发明杂食动物的预移动位置根据自身位置、生产者位置、高能量消费者位置和消耗因子进行确定。
[0076]
本发明在步骤(9)之后,先进行如下步骤:判断是否超过最大迭代次数和最大搜索时间,超过则搜索失败,搜索结束,不超过就进入下一步。
[0077]
本发明在分解操作中,所有机器人个体的预移动位置根据最优位置、自身位置、分解因子、权重系数、分解者风向影响系数和风向信息进行确定。
[0078]
本发明所有追风者进行分层操作,选择部分追风者作为高层追风者,再次根据自身位置和风向信息进行预移动。
[0079]
本发明追风者的预移动位置根据自身位置、追风者风向影响系数和风向信息进行确定。
[0080]
本发明与现有技术相比,具有以下优点和效果:
[0081]
气味源的扩散存在顺风流动的规律,生态环境中的猎食者也有逆风搜索猎物的行为,同时,室内环境中的气体流向也极为复杂,存在许多特殊的状况,由此,本发明改进了人工生态系统优化算法以用于气味源搜索,将机器人看作生产者、消费者或者分解者,通过三者的能量传递机制进行算法的优化。改进方案主要体现在两方面,一是对aeo算法中的分解者的改进,二是在分解者之后新增了追风者。第一方面,在aeo算法中,分解者的功能是分解现存的所有生物来获取有效信息。而本发明中,分解者的功能除了分解生物获得信息(浓度和位置信息),还能得到风向信息。分解者通过这些信息更新机器人位置。以此,从全局上机器人会向逆风方向偏移,并且通过迭代次数自适应调整步长。第二方面,本发明在分解者之后又增加了追风者。追风者是从现存所有个体中挑选能量较高的生物成为追风者。所有追风者再进行分层操作,不同层次追风者具有不同执行策略,低层次具有较低的风趋向性,高层次具有较高的风趋向性。
[0082]
由此,本发明增强了烟羽追踪部分的适应性,在低浓度区域执行烟羽追踪策略,或者说出现劣势初始位置时,依然能保持稳定的搜索效率。算法中生产者、消费者、分解者和追风者对浓度信息和风向信息在全局层面阶段分享,在个体层面多层利用,最后算法结合个体随机性和消耗因子,使得在常规情况下具有良好性能的同时,在机器人初始位置劣势情况下也能有较为稳定的表现。
附图说明
[0083]
图1是本发明实施例的流程图。
[0084]
图2是本发明实施例气味扩散浓度图。
[0085]
图3是本发明实施例环境风向图。
[0086]
图4是本发明实施例三种算法在不同机器人数情况下的搜索成功率图。
[0087]
图5是本发明实施例三种算法在不同机器人数情况下的搜索时间图。
[0088]
图6是本发明实施例低浓度区域和高浓度区域参考图。
[0089]
图7是不同机器人数情况下,waeo算法在三种初始位置区域的搜索时间图。
[0090]
图8是不同机器人数情况下,cpso算法在三种初始位置区域的搜索时间图。
[0091]
图9是不同机器人数情况下,wu

pso算法在三种初始位置区域的搜索时间图。
具体实施方式
[0092]
下面结合附图并通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
[0093]
一、本发明基于人工生态系统优化算法(aeo)对味源进行搜索,包括如下步骤:
[0094]
(1)、开始,设定以下参数:机器人数目、最大迭代次数、最大搜索时间、追风者比例、分解者风向影响系数、追风者风向影响系数、分层系数。
[0095]
(2)、对所有机器人个体进行初始化,即给每个机器人在范围内随机选择一个位置,检测该位置的风向和浓度信息。
[0096]
(3)、根据浓度信息对机器人进行排序。
[0097]
(4)、选择浓度最大的机器人个体作为最优个体,并选择最优个体作为生产者,根据自身位置、自适应系数和随机位置进行预移动;预移动位置即确定将要移动的位置,但是尚未真正移动;
[0098]
生产者的数学模型如下:
[0099]
x1(t 1)=(1

a)x
n
(t) ax
rand
(t),
[0100]
a=(1

t/t)r1,
[0101]
x
rand
=r(u

l) l,
[0102]
式中,x1为第一个机器人,n为机器人总数目,t为最大迭代次数,a为线性权重系数,u和l为机器人可移动位置的上限和下限,r为0到1的均匀分布随机数,x
rand
为搜索空间内随机产生的位置,t为当前的迭代次数,r1为0到1的均匀分布随机数;
[0103]
(5)、将剩下的机器人作为消费者,平均分配为食草动物、食肉动物和杂食动物,并引入无参数随机值——消耗因子;消耗因子的数学模型如下:
[0104][0105]
v1~n(0,1),v2~n(0,1),
[0106]
式中,c为消耗因子,v1和v2都为标准正态分布。
[0107]
食草动物吃掉生产者,获取和处理排序信息以及位置信息,根据自身位置、生产者位置和消耗因子进行预移动;食草动物的数学模型如下:
[0108][0109]
食肉动物随机选择吃掉能量较高的消费者,获取和处理排序信息以及位置信息,
根据自身位置、高能量消费者位置和消耗因子进行预移动;食肉动物的数学模型如下:
[0110][0111]
杂食动物同时吃掉生产者和能量较高的消费者,获取和处理排序信息以及位置信息,根据自身位置、生产者位置、高能量消费者位置和消耗因子进行预移动;杂食动物的数学模型如下:
[0112][0113]
式中,r2为0到1之间的均匀分布随机数。
[0114]
(6)、对比所有机器人个体预移动位置和原位置的浓度和风向信息,根据浓度判断是否进行位置更新和风向更新,若预移动位置浓度大于原位置则进行移动并更新风向信息,反之则不动并不更新风向信息;
[0115]
(7)、分解者对所有机器人个体进行分解操作,分解者获得最优个体位置信息,整合位置信息、排序信息和风向信息,使所有机器人个体根据最优位置、自身位置、分解因子、权重系数、分解者风向影响系数和风向信息进行预移动;分解者数学模型如下:
[0116][0117]
d=3u,u~n(0,1),
[0118]
e=r3·
randi([1 2])

1,
[0119]
h=2
·
r3‑
1,
[0120]
wor=1

(t/t)2,
[0121]
式中,r
d
为分解者风向因子,r4为0到1之间的均匀分布随机数,w
i
为在当前机器人处的风速向量,w
ix
和w
iy
为在当前机器人处的x轴风速分向量和y轴风速分向量,wor为自适应步长因子,d为分解因子,e和h为权重系数,r3为0到1之间的均匀分布随机数。
[0122]
(8)、根据追风者比例,从现存所有个体中挑选能量较高的个体作为追风者,执行追风策略,逆风搜索,根据自身位置、追风者风向影响系数和风向信息进行预移动;追风者数学模型如下:
[0123][0124]
[0125]
式中,r
w
为追风者风向因子,r5和r6为0到1之间的均匀分布随机数,p
w
为成为追风者的机器人数目,c
w
为追风者在全部机器人中所占比例,le为分层系数。
[0126]
所有追风者再进行分层操作,根据分层系数选择部分追风者作为高层追风者,执行更为激进的追风策略,再次根据自身位置和风向信息进行预移动;不同层次追风者具有不同执行策略,低层次具有较低的风趋向性,高层次具有较高的风趋向性。
[0127]
(9)、对比所有机器人个体预移动位置和原位置的浓度和风向信息,根据浓度判断是否进行位置更新和风向更新,若预移动位置浓度大于原位置则进行移动并更新风向信息,反之则不动并不更新风向信息。
[0128]
这边预移动位置有两种,一种是分解者把所有机器人分解后得到的预移动位置,另外一种是从所有机器人中选出几个作为追风者,通过追风者公式得到的预移动位置就会顶替掉之前分解得到的预移动位置。追风者相较于分解,能够更好的忽略其他因素,执着的追寻风向。
[0129]
(10)、对所有机器人个体根据浓度信息进行排序,并选择浓度最高的机器人个体作为最优个体,获取最优个体的位置信息。
[0130]
(11)、判断是否超过最大迭代次数和最大搜索时间,超过则搜索失败,搜索结束,不超过就进入下一步;
[0131]
(12)、判断最优个体与气味源的距离是否小于0.2米,如果是的话,则味源搜索完成,反之则回到步骤(3)。
[0132]
二、以下是对本发明的实验与分析,以下将本发明简称为waeo。为了更清晰的对比不同算法对策略切换阈值敏感程度,以及营造烟羽发现劣势初始位置的环境,本发明和对比算法均不启用烟羽发现部分,气味源确认部分直接采用距离判断,以此更好的观察烟羽追踪部分的表现。
[0133]
1、环境信息和前提信息。
[0134]
气味源扩散环境采用fluent仿真,场地尺寸取12m
×
12m,左侧两个进风口,上进风口风速0.2m/s,下进风口风速0.1m/s,右侧一个出风口。气味源半径0.1m,浓度0.5kg/m2。气味扩散和风向情况如图2和图3所示。
[0135]
实验默认机器人的测量浓度所需时间为2秒。成功找到气味源定义为,存在机器人移动到距离气味源0.2米以内。找寻气味源失败定义为,超过300秒且机器人仍未移动到距离气味源0.2米以内。
[0136]
实验运行处理器为intel酷睿i5

9400f,内存为16gb,操作系统为windows 10。运行软件为pycharm 2018。下文所有实验的结果是独立运行100次后的平均值。
[0137]
2、实验方法与结果分析。
[0138]
2.1、随机初始位置味源搜寻性能及比较。
[0139]
为了对比waeo和cpso以及wu

pso在通常情况下的性能和特点,设计了三种算法的对比实验,机器人数目分别为2、3、4、6、8、10,机器人的初始位置为场地内所有随机区域,通过搜索时间、搜索成功率来评价算法性能和特点。
[0140]
图4和图5分别是三种算法在不同机器人数情况下的搜索成功率和搜索时间对比。从图可知,在机器人数目较少时,waeo算法搜索成功率很高,而cpso算法和wu

pso算法的搜索成功率偏低。同时,waeo算法在机器人数目较少时相较于其他算法,搜索时间上也具有极
大的优势。但随着机器人数目的增加,三种算法的效率差距也随之缩小。
[0141]
2.2不同初始位置味源搜寻性能及比较。
[0142]
为了对比waeo和cpso以及wu

pso在烟羽追踪初始位置极端情况下的适应性,设计了三种算法在烟羽追踪机器人初始位置分别在低浓度区域、对照浓度区域和高浓度区域机器人的对比实验。机器人数目分别为2、3、4、6、8、10。场地的左下角定义为坐标原点(0,0),低浓度区域定义为(0,8),(0,12),(12,8),(12,12)所围成的矩形区域。对照浓度区域定义为场地内所有区域。高浓度区域定义为(4,2),(8,2),(4,4),(8,4)所围成的矩形区域,如图6所示。实验通过搜索时间、高浓度和低浓度区域相对于对照区域的偏差值来评价算法的适应性。偏差值计算基于三条曲线积分的误差计算,如下所示:
[0143]
δ

=(∫f

(x)dx

∫f
对照
(x)dx)/∫f
对照
(x)dx
[0144]
δ

=(∫f

(x)dx

∫f
对照
(x)dx)/∫f
对照
(x)dx
[0145]
图7、图8和图9分别是waeo、cpso和wu

pso算法在不同机器人数情况下,在三种初始位置区域的搜索时间对比。从图可知,以对照区域为基准值,waeo算法在低浓度区域和高浓度区域搜索时间偏差分别为16.88%和

38.52%,cpso算法在低浓度区域和高浓度区域偏差分别为87.04%和

29.39%,wu

pso算法在低浓度区域和高浓度区域偏差分别为84.54%和

29.52%。机器人初始位置选在低浓度区域对waeo算法影响较小,对cpso算法和wu

pso算法影响较大。对于主动嗅觉而言,由于策略切换阈值的不确定性,烟羽追踪机器人的初始位置也不能自由地判断和控制,同样处于劣势初始位置时,waeo算法相较于cpso和wu

pso算法具有更为稳健的表现。机器人初始位置选在高浓度区域时,waeo算法效率相较于其它算法依然更高。这也意味着,假若在这三种烟羽追踪算法前加入烟羽发现算法,使得烟羽追踪初始位置始终为高浓度区域,那么waeo算法依然会保持优势。
[0146]
3、结论。
[0147]
针对室内环境中的气味源定位的策略切换阈值敏感问题,本发明改进了人工生态系统优化算法,同时利用浓度和风向信息进行多机器人气味源定位。生态系统算法中的生产者、消费者、分解者之间的能量传递机制很好地兼顾了低浓度和高浓度区域的气味源搜索。根据气体扩散和自然界猎食者的搜索策略,将逆风搜索策略融合到人工生态系统算法中,从全局上使得机器人向逆风方向偏移,从局部上使追风者层次化执行不同级别的逆风搜索策略。实验结果表明,waeo能够快速准确地定位气味源,在机器人数量较少时相较于cpso和wu

pso等对比算法优势更大,并且在机器人初始位置较差时也能有快速稳定的发挥,这意味着waeo算法对于策略切换阈值的设定具有不错的宽容性。而waeo在初始位置为高浓度区域时具有的高性能表现,也意味着三种烟羽追踪算法配置相同的烟羽发现算法时,waeo依旧能获得显著的优势。
[0148]
此外,需要说明的是,本说明书中所描述的具体实施例,其零、部件的形状、所取名称等可以不同,本说明书中所描述的以上内容仅仅是对本发明结构所作的举例说明。凡依据本发明专利构思所述的构造、特征及原理所做的等效变化或者简单变化,均包括于本发明专利的保护范围内。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离本发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜