一种基于带有移动基站的分布式粒子群优化算法

文档序号:33799980发布日期:2023-04-19 11:03阅读:63来源:国知局
一种基于带有移动基站的分布式粒子群优化算法

本发明涉及优化算法,尤其涉及一种基于带有移动基站的分布式粒子群优化算法。


背景技术:

1、在实际的生活中,有时候会存在多个目标,并且必须对这多个目标同时开始进行搜索。这时候,传统的目标搜索方法将不再适用,因为大多数的传统的目标搜索方法都难以通过一次算法运行同时对多个目标展开搜索。传统的算法在处理多个目标的搜索任务时,通常是采用顺序的方法来逐个地对多个目标展开搜索。一些文献中的研究已经讨论了对多个目标搜索的问题。但大多数文献都忽略了机器人系统的有限通信能力和通讯行为造成的能耗问题。zheng虽然考虑到了机器人系统的通信限制问题,但是zheng提出的算法与pso算法相比较,机器人个体的状态更新方法并不十分有效。

2、在2009年,derr将dpso算法用于控制群机器人系统去执行单个目标和多个目标的同时搜索任务。在对多个目标的同时搜索过程中,每个机器人都是在部署之前就经过了编程而被分成不同的子群来寻找特定的目标。机器人是根据从每个目标处接收到的信号的强度(received signal strength,rss)来跟踪这些目标的。这个搜索方法的缺点是:子群中的每个机器人只能将所属子群中的最佳适应值发送给同一子群中的其它机器人,不同的子群之间不存在任何合作。另外,机器人系统的通信限制问题并没有被考虑。zhang在2014年利用多机器人系统同时并行地搜索多个目标[3],并且提出了基于响应阈值分配模型的群机器人系统闭环动态的分配方法。然而,这个动态调节的过程太过于复杂,zhang没有考虑每个子群中的机器人的通信限制问题。

3、tang在2018年提出了一种控制群机器人系统同时地搜索多个目标的方法,该方法是基于一种改进的pso算法和一种改进的分组策略(improved group strategy,igs)的。在该方法的第一阶段,机器人随机地分布在整个搜索区域中。在该方法的第二阶段,群机器人系统被分组,每个机器人组都只是专注于搜索一个特定的目标,每个分组中的机器人都是根据一种基于收缩因子的粒子群优化(constriction factor-based particle swarmoptimization,cfpso)算法进行移动的。机器人分组的结构是通过若干个搜索辅助点来确定的,这些搜索辅助点都是从信号强度取值大于阈值的各个历史的最佳位置中选择的。选择搜索辅助点时,将对信号强度取值不小于阈值的单个历史的最佳位置进行排序。搜索辅助点的选择完成以后,相对接近同一个搜索辅助点的机器人便组成了一个小组。但是,该方法没有考虑机器人系统的通信限制问题。因此,该方法的顺利实现需要具有一个拥有强大的通信能力的中央单元来完成单个历史的最佳位置的排序和机器人个体之间距离的计算。另外,该方法不能保证对搜索资源的平衡利用。可能出现有太多的机器人靠近同一搜索辅助点并且搜索同一个目标,而其它的目标却只有很少的机器人参与搜索的现象。此外,该方法也没有考虑每个小群体中的机器人个体的多样性,这会导致子群容易出现陷入局部极优的情况。

4、在2014年,zheng提出了一种改进的群体爆炸策略(improved group explosionstrategy,iges)来执行多目标的搜索任务,该策略的灵感来自于自然界中的爆炸现象。在iges中,机器人群被自适应地分为若干个小团体,这些小团体将独立地寻找不同的目标,第i个机器人的速度以及位置的更新方程表示如下:

5、

6、

7、

8、其中,vsi(t)是速度的更新矢量,ωc是在zheng的研究中被详细定义的因子,rp是一个单位随机矢量,2rt是速度的最大值,t代表迭代次数,vi和xi分别代表第i个机器人的速度及位置。iges的优点是:简单易用且适应性较强,iges还具有小组内合作所导致的快速收敛优势和小组间合作所导致的并行搜索优势。此外,iges还考虑了机器人系统存在的通信限制问题。但是,在机器人系统的更新过程中,仅考虑了最近的十个历史状态,这可能会导致一些以前出现的良好的历史解被直接丢弃。而且,机器人小组的中心以及最好的适应位置的中心间的相对位置作为每个机器人的速度更新的主要指导因素,并不能有效地利用不同的目标的个体最优适应位置,导致算法的搜索效率降低,为了解决上述问题,本发明提出了一种基于带有移动基站的分布式粒子群优化算法。


技术实现思路

1、本发明的目的是为了解决现有技术中存在在机器人系统的更新过程中,仅考虑了最近的十个历史状态,这可能会导致一些以前出现的良好的历史解被直接丢弃。而且,机器人小组的中心以及最好的适应位置的中心间的相对位置作为每个机器人的速度更新的主要指导因素,并不能有效地利用不同的目标的个体最优适应位置,导致算法的搜索效率降低的缺点,而提出的一种基于带有移动基站的分布式粒子群优化算法。

2、为了实现上述目的,本发明采用了如下技术方案:

3、一种基于带有移动基站的分布式粒子群优化算法,包括以下步骤:

4、s1、群机器人系统的动态分组:群机器人系统中所有的机器人个体被动态的分成一些小子群为之后的目标搜索做准备,一旦这些小子群分组完成,不同的子群将独立地对不同的目标进行搜索;

5、s2、机器人代表的选择:从整个机器人群体中动态地选择出若干机器人代表;

6、s3、基站的定位:基站的定位可以被分为:基站的初始部署和基站的重新定位两个部分;

7、s4、数据的传输:在数据的传输阶段,选定的机器人代表们将自己所了解到的最优数据信息传输给基站,基站执行汇总与分析,然后在必要的时候,将在它的通信范围内向所有的机器人广播新发现的最佳解,与单目标搜索情况不同的是基站的广播对象发生了改变,基站的广播对象不再是它通信范围内的所有机器人。

8、优选的,所述s3中,其中,在第一次迭代中,需要决定引入合适数量的基站并且将这些基站进行初始地部署,在第二次迭代及以后的所有迭代中,基站会进行重新进行定位,这个重新定位的行为是在考虑了机器人系统的通信限制问题和机器人的通讯能量消耗的前提下进行位置更新的,为了以后的数据交流及传输做准备工作,与单目标搜索情况不同的是基站进行重新定位时的依据因素不只限于对一个目标的考量。

9、优选的,所述s1中,为了在搜索过程中同时且有效地处理多个目标,将机器人群动态地分为若干个小的机器人子群,一旦机器人分组完成,每个机器人子群将会独立地搜索特定的目标,每一次迭代开始时都会进行一次分组,这样能够克服在分组完成后各个子群独立地进行目标搜索过程中互相没有合作的缺陷,机器人ri能够响应目标tj的概率计算方法如下:

10、

11、其中,i(tjri)是机器人ri能够检测到目标tj发出信号的强度,nd表示机器人ri能够检测到目标的数量,响应阈值(prt)用于确定每个机器人要搜寻的目标,但是,仅利用响应阈值作为决定因素可能会导致出现太多的机器人被划分为相同的子群并搜索同一个目标,而很少有机器人尝试搜索其它目标的现象,首先是根据响应阈值prt将机器人分成若干个小子群,具体来说,如果p(tjri)≥prt,则将机器人ri分到搜索目标tj的子群sj中,其次,如果子群si中的机器人的数量大于n/nt,则将在子机器人群si中的对目标tk具有较高的响应概率的机器人添加到子机器群sk中,为了保持每个子群中机器人的个体的多样性并避免困于局部的极优解中,定义了机器人的质量相似度如下:

12、

13、

14、其中,表示第k个子群中所有机器人的集合,从公式(13)可以看出,在一个子群中的某个机器人的邻域机器人数量越多,这个机器人对应的目标函数取值和子群中的其它机器人的目标函数取值越接近,那么这个机器人的qsd的值越大,具有对目标足够大的响应概率和低的质量相似度的机器人应该被分在相同的子群中,由于机器人的位置随着迭代次数的增加而不断地变化,因此机器人对目标的响应概率也是动态变化的。

15、优选的,所述s2中,为了从群机器人系统中选择合适数量的机器人代表来代替所有的机器人,将自己发现的最优信息数据传输给基站,提出rrs-mt算法。

16、优选的,所述rrs-mt算法是在rrs算法的基础上提出的,在rrs-mt算法中,在选择机器人代表的时候仍然是考虑了机器人所处的位置对应的目标函数取值和机器人的能量水平,最好的当然是选择处在更优的位置和具有更高的剩余能量的机器人作为机器人代表,另外,机器人代表所具有的邻居机器人数目越多,该机器人代表也就越具有代表性,和rrs算法不同的是,在rrs-mt算法中机器人代表的选择过程是在每个子群中独立地展开和进行的,在不同的子群中,采用的目标函数是不同的,因为不同子群中的机器人所搜索的目标对象是不同的,作为目标函数的搜索误差的计算公式也是不同的,

17、为了保持足够数量的机器人代表以有效地代表所有的机器人,将hti(t)设置为的下限,是t时刻在搜索目标ti的子群中被选择为机器人代表的数量,显然,的取值是动态变化的,为了保证rrs-mt算法在前期阶段中种群的多样性和后期阶段中的收敛速度,将的取值设计为动态的,具体表示如下:

18、

19、其中,和分别是的上限值和下限值,的取值与机器人的数量和密度有关系,如果系统当中的机器人个体位置过于集中,则的取值应该较小,因为太多的彼此非常接近的机器人代表将会导致冗余的信息,并且增加数据传输的数量和系统的计算负担,和rrs算法不同的是:rrs-mt算法是将每个子群对应的的取值设置为子群中机器人总数量的五分之四,而将的取值设置为子群中机器人总数量的五分之一。

20、优选的,所述s3中,基站的重新定位具体如下:为了减短数据信息的传输距离并提高算法搜索的精度,基站也需要在每一次迭代中进行重新定位,对于每一个基站,选择这个基站通信范围内最有价值的机器人代表,并利用这个选定的机器人代表指导基站重新进行定位,所谓最有价值指的是具有最优的目标函数取值和足够高的剩余能量,机器人代表与基站之间的距离应该尽可能的短,目的是减小机器人在通讯过程所需要消耗的能量,考虑到在同时搜索多个目标时,一个基站的通信范围内可能存在着多个最有价值的机器人代表(针对不同的目标而言),此时,基站的更新需要照顾到不同的目标,基站bsi的速度与位置的更新方式用数学公式表示如下:

21、

22、

23、nri(t)={rrj′∈rm(t)∣d(bsi,rrj′)≤rc+rbc} (20)

24、

25、其中,c5和c6都是学习系数,c5的取值决定了基站向可通讯范围内所有最有价值的机器人代表在当前时刻的平均经验学习的能力,c6的取值决定了基站向可通讯范围内所有最有价值的机器人代表在下一时刻的平均经验学习的能力;r5和r6是在[0,1]范围内的随机数;代表基站bsi在t时刻第j维的速度;基站bsi在t时刻第j维的位置;rm(t)表示最有价值的机器人代表的集合;是在t时刻基站bsi的可以通讯范围内的所有最有价值的机器人代表第j维位置的平均值;是对在t+1时刻取值的估计值。

26、优选的,公式(18)中之所以考虑最有价值的机器人代表的平均值是因为基站的移动需要照顾到对所有目标的搜索,这种方式可以尽可能地缩短搜索每一个目标的最有价值的机器人代表和基站之间的数据传输距离,最终达到节省机器人在搜寻目标过程中的通讯能量消耗,从公式(18)中可以看到有三个因素影响着基站速度的更新,其中,第一个因素是基站本身的惯性速度,第二个因素是基于该基站的可通讯范围内的所有最有价值的机器人代表的平均位置信息的,通过这种方式,基站可以朝它的通信范围内的所有最有价值的机器人代表的平均位置移动,这样做的目的是尽可能地缩短基站和各个最有价值的机器人代表之间数据传输的距离,从而降低机器人在通讯过程所需要耗费的能量,第三个因素是基于对该基站的可通讯范围内的所有最有价值的机器人代表的平均位置下一时刻状态的预测估计的,所有的机器人代表在下一次迭代中的位置都可以通过公式(7)和公式(8)进行预测和估计,唯一的区别就是公式(7)中的kbestt被替换为kbestt-1,这样估计的方法是可行的,原因是kbestt+1的取值还是未知的,且本文对所有机器人的运动步长有所限定,通过这样的方式,每个基站都可以动态地与其通信范围内最有价值的机器人代表保持一种相对稳定的连接关系,基站的这种重新定位的方法能够大大地减轻机器人通信限制的问题。

27、从实质上来看,基站重新定位的目的就是减短数据的传输距离,数据的传输距离是指基站与它的通讯范围内所有最有价值的机器人代表之间的欧式距离,为了保证该提出的基站重新定位方法在实时的任务中是可行的,在初始化时,将基站的速度取值设置为比机器人的初始速度大得多的值,这样,基站就能够非常快地到达它的目标更新位置,另外在rrs-mt算法的后续迭代中,对于每一个子群,都是优先从先前的迭代中已经选择成为机器人代表的机器人中选择产生新的机器人代表,在上一次的迭代中被选择作为机器人代表的机器人有很大的可能性会被选择作为下一次迭代中新的机器人代表,考虑到在基站的重新定位方法中,把处于基站通讯范围内的所有最有价值的机器人代表的当前所处位置的平均值以及在下一次迭代即将处的位置的平均值用于指导基站的重新定位,能够动态地保持一种高质量的机器人代表与基站之间的良好连接关系;

28、在基站的重新定位过程中,并非是要求所有的机器人都将数据信息发送到基站,而是只要求一部分最有价值的机器人代表必须将数据信息发送到基站,这样一来,机器人和基站之间数据传输的距离之和能够大大地减少,最终达到减少机器人在通讯过程中能量消耗的目的。

29、优选的,所述s4中,首先,基站从选择的最优机器人代表处接收数据信息;然后,基站汇总并分析这些数据信息以确定已知的最佳位置是否有所更新;之后,如果已知的最佳位置有更新,则基站向基站通信范围内部的所有机器人广播新的已知最佳位置信息,反之,则基站不发生任何广播行为,值得注意的是,在每一次迭代中,一旦机器人群的群划分完成,每一个机器人子群将独立地搜索不同的目标,在数据的传输阶段,每个基站仅向位于自己通讯范围内的搜索ti的所有机器人广播目标ti的新的已知最佳位置,表示为kbesti,i=1,2,...,nt,也只有当基站找到已知最佳位置的新的更新时才进行广播,否则没有任何广播行为,例如,机器人r1,机器人r2,机器人r6和机器人r7组成一个子群并且搜索目标t1,机器人r3,机器人r4,机器人r5和机器人r8组成一个子群并且搜索目标t2,机器人r2,机器人r4,机器人r5,机器人r6,机器人r7和机器人r8均位于基站bs2的通信范围内,假设机器人r2是针对目标t1最有价值的机器人,那么机器人r2将自己发现的关于目标t1的最优信息传递给基站bs2,此时,如果基站bs2经过分析发现了kbest1有新的更新,则基站bs2将新的kbest1信息广播给位于它通讯范围内的搜索目标t1的机器人r6和机器人r7。因为机器人r1在基站bs2的通讯范围之外,因此机器人r1无法获知新的kbest1信息,假设机器人r5是针对目标t2最有价值的机器人,那么机器人r5将自己发现的关于目标t2的最优信息传递给基站bs2,此时,如果基站bs2经过分析发现了kbest2有新的更新,则基站bs2将新的kbest2信息广播给位于它通讯范围内的搜索目标t2的机器人r4和机器人r8,因为机器人r3在基站bs2的通讯范围之外,因此机器人r3无法获知新的kbest2信息。

30、本发明中,所述一种基于带有移动基站的分布式粒子群优化算法的有益效果:

31、本发明利用提出的动态分组方法对群机器人系统进行分组,目的是在每一次迭代时都能使最合适的机器人子群去搜索不同的目标,帮助群机器人系统在搜索的过程中能够有效地同时处理多个目标,动态地从机器人群中选择适量的机器人代表,目的是代表所有的机器人将最优的数据信息传输到基站,引入了适当数量的可移动基站以减轻机器人系统的通信限制问题,此外,还提出了基站的初始部署和重新定位方法,目的是缩短数据信息的传输距离,从而降低机器人系统在通讯过程中的能量耗费,还提出了处理具有不同重要性等级目标同时搜索的方法,实验的结果表明,在考虑存在机器人系统通信限制和通讯能量消耗问题的前提下,在控制群机器人系统同时搜索多个目标任务中展现出了优于其它算法的性能;

32、本发明在每一次迭代时都能使最合适的机器人子群去搜索不同的目标,帮助群机器人系统在搜索的过程中能够有效地同时处理多个目标,代表所有的机器人将最优的数据信息传输到基站,引入了适当数量的可移动基站以减轻机器人系统的通信限制问题,缩短数据信息的传输距离,从而降低机器人系统在通讯过程中的能量耗费。

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