预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

.2鲸鱼群算法为了开发用来解决函数优化问题的鲸鱼群算法,我们对鲸鱼的一些行为进行了假设。为了简便地描述鲸鱼群算法,我们假设以下四个抱负化规则:1)所有鲸鱼在搜索区域中通过超声波进行交流;2)每条鲸鱼可以计算出自身与其它鲸鱼的距离;3)每条鲸鱼发现的食物的优劣限度通过适应度值表达;4)鲸鱼的移动由比它好(由适应度值判断)的鲸鱼中离它最近的鲸鱼进行引导,这种引导鲸鱼在本文中被称为“较优且最近”的鲸鱼。1)迭代公式无线电波和光波都是电磁波,它们可以在没有任何介质的情况下传播。假如在水中传播,由于水具有强大的导电性,它们的强度会快速衰减。声波是一种需要通过介质传播的机械波,介质可以是水、空气、木材和金属等。超声波属于声波,其传输速度和距离很大限度上取决于介质的属性,例如,超声波在水中的传播速度约1450m/s,这比在空气中的传播速度(约340m/s)更快。此外,一些具有预先指定强度的超声波在空气中只能传播2米,但是在水下可以传播约100米,这是由于机械波的强度会通过介质分子连续地衰减,并且超声波在空气中传播的强度比在水中衰减得更快。距离波源d的超声波强度ρ可以由如下公式表达[29]:(1)其中ρ0指超声波源的强度,e为自然对数,η为衰减系数,它取决于介质的物理化学性质和超声波自身的属性(例如超声波频率)[29]。如公式1所示,当η恒定期,ρ随着d的增长呈指数减小,这意味着当超声波的传播距离变得相称远时,鲸鱼传送的超声波所携带的消息很有也许失真。所以,当一条鲸鱼接受到来自相称远的鲸鱼的信息时,它不拟定自己理解是否对的,这时,我们假设鲸鱼将悲观地朝着离自己相称远的“较优且最近”的鲸鱼随机移动。根据上述可以知道,在捕食的时候,假如距离“较优且最近”的鲸鱼较近,鲸鱼将积极地向它随机移动;假如距离较远,鲸鱼会悲观地向其随机移动。因此,通过一段时间,就会形成一些独立的种群。这种基于超声波衰减的随机移动规则启发了我们获得一种新的位置迭代公式,该公式使得算法不会过早陷入局部最优,并且可以增强种群多样性和全局搜索能力,也有助于求解多个全局最优解。鲸鱼X在它的“较优且最近”的鲸鱼Y引导下的随机移动可以由如下公式表达:(2)其中,和分别指X的第i个元素在t步与t+1步迭代的位置;指Y的第i个元素在t步迭代的位置;指X与Y之间的距离;表达0到之间产生的随机数,根据大量实验的结果,对于几乎所有的实例,ρ0都可以设立为2。衰减系数η取决于介质的物理化学性质和超声波自身的属性。对于函数优化问题,影响η的因素与目的函数的特性相关,涉及函数的维数、定义域和峰值分布。因此,需要针对不同的目的函数设立适当的η值。根据大量的实验结果,为了方便工程师应用鲸鱼群算法,我们可以按照如下方法设立η的初始近似值。一方面,令,即,指在搜索区域内两只鲸鱼之间也许的最大距离,可由计算得到,其中n为目的函数的维数,与分别表达第i个变量的下限与上限。这个公式表达假如鲸鱼X与其“较优且最近”的鲸鱼Y之间的距离是时,应设立为0.5,它影响着鲸鱼X的移动范围。因此,基于该近似初始值,很容易将η调整为最优值或近似最优值。图2由“较优且最近”的鲸鱼引导的随机移动示意图根据公式2可知,假如一条鲸鱼与它的“较优且最近”的鲸鱼之间的距离很小,该条鲸鱼将会积极地朝其“较优且最近”的鲸鱼随机移动;否则,它将悲观地朝着其“较优且最近”的鲸鱼随机移动,正如图2所示。图2中的目的函数维数为2,红色五角星表达全局最优解,圆圈表达鲸鱼,用虚线标记的矩形区域是当前迭代中鲸鱼的可达区域。2)WSA总体框架基于上述规则,WSA的总体框架如图3所示。其中,第6行中的|Ω|表达鲸鱼群Ω中的个体数,即种群大小;第7行中的Ωi是Ω中的第i条鲸鱼。从图3可以看出,与其它大多数元启发式算法类似,迭代计算之前的环节是一些初始化环节,涉及参数的初始化配置、初始化个体的位置以及对每个个体的评价。这里,所有的鲸鱼个体的位置是采用随机初始化的方式。WSA的核心环节是鲸鱼的移动(第5-13行),每条鲸鱼通过与群体中其它鲸鱼合作向更好的位置移动。一方面,鲸鱼需要拟定它的“较优且最近”的鲸鱼(第7行)。假如它的“较优且最近”的鲸鱼存在,那么它将根据公式2向其“较优且最近”的鲸鱼移动(第9行);否则,它将保持原地不动。寻找“较优且最近”的鲸鱼的伪代码如图4所示,其中,f(Ωi)表达鲸鱼Ωi的适应度值,dist(Ωi,Ωu)表达Ωi与Ωu之间的距离。WSA的总体框架输入:适应度函数,鲸鱼群Ω。输出:全局最优解。1:开始2:初始化参数;3:初始化鲸鱼位置;4:评价鲸鱼(计算其适应度值);5:while终止条件不满足do6:fori=1to|Ω|do7:寻找Ωi的“较优且最近”的鲸鱼Y;8:ifY存在then9:Ωi在Y的引导下根据公式(2)进行移动;10:评价Ω