蜜蜂算法30(包含实例)

上传人:今*** 文档编号:112779297 上传时间:2019-11-07 格式:PPT 页数:16 大小:90KB
返回 下载 相关 举报
蜜蜂算法30(包含实例)_第1页
第1页 / 共16页
蜜蜂算法30(包含实例)_第2页
第2页 / 共16页
蜜蜂算法30(包含实例)_第3页
第3页 / 共16页
蜜蜂算法30(包含实例)_第4页
第4页 / 共16页
蜜蜂算法30(包含实例)_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《蜜蜂算法30(包含实例)》由会员分享,可在线阅读,更多相关《蜜蜂算法30(包含实例)(16页珍藏版)》请在金锄头文库上搜索。

1、蜜蜂算法,现代设计技术 机自1005班 任永武,群体智能,自然界中的群居昆虫,如蚂蚁、蜜蜂、鱼群等,个体结构都十分简单。 个体之间通过合作表现出来的行为能力却十分复杂。 群居昆虫个体无智能,但通过合作从一定程度上体现出较高的“智能”。 群体智能:受社会性昆虫群体行为的启发,研究人员通过对它们的模拟产生了一系列解决传统优化问题的新方法。 群体智能算法:模拟自然界生物的群体行为而构造的随机优化算法。,蜜蜂算法,蜂群算法(BCO)是受到自然界的蜜蜂行为启发而提出的一种新颖的元启发式优化算法。 根据所受启发的生物机理的不同,蜂群算 法可分为两大类: 基于蜜蜂繁殖机理的蜂群算法 基于蜜蜂采蜜机理的蜂群算

2、法,基于蜜蜂繁殖行为的蜜蜂算法,蜂群的运行主要包括: 蜂后的选优过程 蜂后选择雄蜂的过程 新幼蜂群体的局部搜索过程,算法实现,定义受精囊的大小M 随机地产生幼蜂从中选出最优的为蜂后 利用蜂后的选优策略优化蜂后的基因型 while未达到停止的限度 t=0 随机初始化E(t)和s(t) 初始化能量衰减的步长r=0.5E(t)M 随机产生雄蜂 whileE(t)0 评估雄蜂的基因型 if该雄蜂超过了概率选择的条件式(22)and蜂后的受精囊未满 then雄蜂的精子加入到受精囊 endif t=t+1; E(t)=E(t)r: S(t)=0.9S(t);,以S(t)概率对雄蜂基因型每一位取反; end

3、while for broods=l toM 随机地从蜂后的受精囊中选出精子通过将已 选选的精子与蜂后的基因型交叉而产生幼蜂; 变异幼蜂的基函型; end for 新幼蜂群体局部搜索 if最好的幼蜂的适应度比蜂后高then 用最好的幼蜂取代蜂后 杀死所有的幼蜂 end while,基于蜜蜂采蜜行为的蜜蜂算法,蜂巢中的一部分蜜蜂作为采蜜蜂,它们不断并随机地在蜂巢附近寻找蜜源。 如果这些采蜜蜂发现了花蜜超过某个阈值的蜜源,则飞回蜂巢并用摇摆舞告知其他蜜蜂。(如蜜源方向及离巢距离等) 其他蜜蜂利用这些信息准确评价蜂巢周围的蜜源质量找到的蜜源采蜜。 采蜜行为包括蜜源、采蜜蜂与待采蜜蜂三个基本部分。,蜂

4、群算法,蜜蜂采蜜的过程(即寻找高质量的蜜源)类似于进化计算中的搜索待求解问题最优解的过程。 在采蜜模型中,蜜源代表可能的解,采蜜相当于搜索最优解,蜜源质量可视为适应度函数大小。,人工蜂群算法,蜂群具有3种类型的工蜂:引领蜂、跟随蜂和侦察蜂。 引领蜂寻找食物源并记录花粉数量; 跟随蜂在舞蹈区等待引领蜂带回食物信息,并选择食物源;当某个食物源被放弃时,生成侦察蜂,随机寻找新的食物源。,首先随机产生新解,即初始化解(食物源) 引领蜂首先对邻域搜索,如果找到的食物源适应度值优于之前,则用新食物源位置代替旧位置;反之,保持旧的蜜源位置。 引领蜂用摇摆舞与跟随蜂交流蜜源信息,跟随蜂根据信息以一定概率选择食

5、物源。跟随蜂选中食物源后,也进行一次邻域搜索,采用贪婪准则,保持较好的解。ABC算法就是通过如此重复搜索,最终找到最优解。,每个食物源位置代表优化问题一个可能解 食物源的花蜜量对应解的适应度(fiti) fiti=1/(1+f(x) f0 =1+abs(f) f0 引领蜂的个数=跟随蜂的个数=种群中的解的个数 ABC算法中有SN个初始解(食物源数目) 蜜蜂对食物源循环搜索,循环次数C=(1,2,MCN) 循环限制次数Limit,跟随蜂按照概率Pi选择食物源 Pi=fiti/fiti 引领蜂和跟随蜂根据下式搜索: Vij = Xij + ij ( Xij - Xkj ) 如果某个解连续经过lim

6、it次循环之后仍没改善,放弃改解。与该解相应的引领蜂变为侦察蜂。侦察蜂通过下式随机产生一个新解替代Xi; Xij =Xminj + rand (0, 1) (Xmaxj - Xminj ) 综上。 引领蜂保留最优路径,可以加快收敛,减小震荡。 跟随蜂根据适应度大小按概率转移。 侦察蜂保持一部分蜜蜂随机寻径,保证解的多样性,有利于跳出局部最优。 三者共同作用是该算法具有全局搜索能力,收敛速度更快。,算法过程,(1)初始化解的群体P (G = 0) ; (2)评估该群体适应度; (3) cycle = 1; (4)循环; (5)引领蜂对解xi 和产生新解(食物源位置) vi ,进行评估; (6)对

7、vi 和xi 使用贪心选择过程;,(7)求解xi 计算概率值Pi ; (8)跟随蜂按概率Pi 选取的引领蜂,并由解xi 产生新解vi ,并进行评估; (9)对vi 和xi 使用贪心选择过程; (10)为侦察蜂算出放弃的解,如果存在,由随机产生的新解将其替换;,求解非线性方程,例1 初始化种群: 种群个数=10;Xi=(i=1,2,3,4)SN=4;limit=5;MSN=20 解:由Vij = Xij + ij ( Xij - Xkj ) 产生新解与初始化的解,做适应度值得比较,将适应度值大的解保留;这里省略上步,直接简化选取X1=-3,X2=-1,X3=2,X4=4; 函数值:f(X1)=9

8、+6+1=16 f(X2)=1+2+1=4 f(X3)=4-4+1=1 f(X4)=16-8+1=9,各个解的适应度值,由fiti=1/(1+f(x) , f0 fit1=1/(1+16)=0.059; fit2=1/(1+4)=0.2; fit3=1/2=0.5; fit4=1/10=0.2; 适应度值越大,食物源越丰富,被跟随蜂选择概率就大。 跟随蜂选择引领蜂概率公式:Pi=fiti/fiti P1=0.059/(0.059+0.2+0.5+0.1)=0.0685 同理,P2=0.233;P3=0.582;P4=0.116; 由贪心原则,跟随蜂在自己周围搜索 Vij = Xij + ij

9、( Xij - Xkj ), 如果食物源好于引领蜂提供的,则由Vij 替代Xij; 如果产生了一个优解,迭代limit次都不能改进,则是局部优解,则放弃改解,重新产生新解。,两种思想各有其独特的实现原理和发展轨迹。,对于基于繁殖的蜂群算法: 用于离散变量的水库优化问题 三种数学问题的测试平台上进行了应用 蜜蜂的采蜜行为: 一种虚拟蜜蜂理论来解决数值优化问题 对于多变量数值优化问题,集中在人工神经网络的训练上,总结,蜂群算法是一种全局优化算法,与具体问题无关,算法对初值选择不敏感,具有较强的鲁棒性和收敛性能。 对蜂群采集行为机制的进一步挖掘及论证,结合其它有效机制来进一步改进各算法的性能,以及扩展对该类算法的进一步应用,应当是进一步的研究方向。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号