蜜蜂算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
propagating)。 • 基于蜜蜂采蜜Βιβλιοθήκη Baidu理的蜂群算法(BC0 on
gathering)。
基于蜜蜂繁殖行为的蜜蜂算法
• 蜂群的运行主要包括 以下几个方面:蜂后 的选优过程;蜂后选 择雄蜂的过程;
• 新幼蜂群体的局部搜 索过程
1蜂后的选优过程
• 完整的蜂群由蜂王、雄蜂和工蜂组成 • 蜂后能保留最优基因到下一代种群中。 • 蜂后的基因优劣对算法的收敛速度与最终
• 中的S线);b)在蜂巢内等待,通过观察 采蜜蜂的摇摆舞后,被招募并根据获得的 信息寻找蜜源如图2中的R线。
• 当待采蜜蜂发现新蜜源后,它会记住蜜源 的相关信息并开始采蜜,
• 此时,待采蜜蜂变成了采蜜蜂。蜜蜂采蜜 回到蜂巢并卸载花蜜后,它有以下三种基 本的行为模式[31]:a)放弃原先找到的 蜜源,成为待采蜜蜂,如图2中的UF;
• 的循环搜索过程。专业工蜂在其记忆中依赖于局 部
• 信息(视觉信息)产生一个对位置(解)的修正,并检 • 测新的食物源(新解)的花粉量(适应度值) 。
• 。如果花 • 粉量值比前一个高,那么这只蜜蜂记忆新解,
忘掉旧 • 的,否则,仍记忆旧解。在蜜蜂完成搜索过程
后,它们 • 在跳舞区与守望蜂分享关于食物源花粉量
• 虢机地旋蜂舌的受精囊中选出精子.通过将E选 的精子s蜂后的基因型交
• 叉而产生幼蜂; • 变异幼蜂的基函型;
• endfor • 耨幼蜂群体局部搜索 • H最垂}的幼蜂的适应瘦比蜂后高then • 甬最好的幼蜂取代蜂后 • 杀死瞬有的幼蜂
• end while
基于蜜蜂采蜜行为的蜜蜂算法
• 生物学机理 • 自然界中的蜂群总能较快地找到优质蜜源。蜂巢中的一 • 部分蜜蜂作为采蜜蜂,它们不断并随机地在蜂巢附近寻找
• 代过程。从而,形成了一种具有“生成+检验’’特征的迭代搜索算法f2】o • 群体智能算法本质上是一种概率搜索,它不需要问题的梯度信息,具有以下
不同于 • 传统优化算法的特点f3】:①群体中相互作用的个体是分布式的,不存在直
接的中心控制, • 不会因为个别个体出现故障而影响群体对问题的求解,具有较强的鲁棒性;
• 来的; 人工蜂群算法是2005 年土耳其学者 Dervis
• Karaboga给出的。两算法模型都比较简单 易用,且有
• 相似之处。
蜂群算法
• BA是一个受启发于蜜蜂寻找食物过程用于 寻找
• 最优解的智能优化算法。算法中食物源位 置代表优
• 化问题的解。由食物源位置及其邻域会形 成一个小
• 的搜索区域,可进行邻域搜索,称为花丛。
• 行邻域搜索,称为搜索邻域的半径
• 蜂群算法的伪码 • 如下: • (1)由随机值初始化种群; • (2)评价群体适应度值; • (3)While (停止准则不满足) / /产生新的群体; • (4)为邻域搜索选取地址; • (5)派遣蜜蜂到选取的地址(最好的e个地址更多的蜜 • 蜂) ,并评价其适应度值; • (6)从每个花丛中选出适应度最好的蜜蜂; • (7)委任其它蜜蜂进行随机搜索,并评估其适应度; • (8) EndWhile。
• t=O • 髓枧魄初始化E(t)和s(t) • 初始化能量衰减的步长r=0.s’E(t)/M • 随机产生雄蜂 • whileE“)>e • 评估雄蜂的基因型 • if该雄蜂超过7概率选择的条件式f2.2)and蜂后的受精囊未满 • then雄蜂的精子翻入飘受精囊 • end矿 • t=t+』? • Em=Em—r: • sm=o.9’Sm: • 以sm概率对雄蜂基因型每一位取反; • endwh妇 • 而rbroods=l toM
人工蜂群算法
• ABC算法中,同样由食物源位置代表优化问 题
• 的解。蜂群具有3种类型的工蜂:专业工蜂、 守望蜂
• 和侦察蜂。专业工蜂专门进行采集,守望蜂 等待在蜂
• 巢中观看同伴表演的摇摆舞,侦察蜂进行随 机搜索。
• 其中,专业工蜂和守望蜂的数量(BN)相等,且 都等于
• 食物源的数量SN。这样,解的群体由SN 个 D维向
• 跟随采蜜蜂的蜜蜂数量取决于蜜源质量。 以这种方式,蜂群能快速且有效地找到花 蜜。蜜蜂采蜜通常要先判断蜜源质量。如 果在采集该蜜源之后,其花蜜质量仍然很 高
• ,它们会回到蜂巢继续通过摇摆舞招募更 多的同伴去采蜜[11]。蜜蜂采蜜的群体 智能通过不同角色之间的交流、转换及协 作来实现,其机理如图2所示。
• 被蜜蜂放弃的食物源将会由侦察蜂找到的新食物 • 源所取代。ABC算法中,如果一个位置不能被预先
• 蜂群实现采蜜行为包括蜜源、采蜜蜂与待 采蜜蜂三个基本部分。蜜源取决于多种因 素,可用
• 蜜源质量来衡量。假设蜂群已找到两个蜜 源A和B。采蜜蜂与当前正在采集的蜜源联 系在一起它们携带了具体的蜜源信息,并 通过摇摆舞和蜂巢中的其他蜜蜂分享这些 信息。待采蜜
• 蜂是准备去采蜜的蜜蜂。
• 刚开始时,待采蜜蜂没有任何关于蜂巢附 近蜜源的信息,它有两种可能的选择:a) 由于蜂巢内部或外部因素刺激,自发地随 机搜索蜂巢附近的蜜源(如图2
②每个个体 • 只能感知局部信息,个体的能力或遵循规则非常简单,所以群体智能的实现
简单、方便; • ③系统用于通信的丌销较少,以非直接的信息交流方式实现个体协作,易于
扩充;④自
•1
常常见的群体智能算法
• 模拟蚂蚁行为的蚁群算法 • 模拟鸟类行为的微粒群算法 • 模拟青蛙觅食的混合蛙跳算法 • 模拟鱼类生存习性的人工鱼群算法 • 模拟蜜蜂觅食的人工蜂群算法
• 群体智能算法是从某种由大量个体表现出来的群 体行为出发,从它们的群体行为中提取模型,为 这些行为建立一些规则,从而提出优化算法。
• 群体智能算法将搜索和优化过程模拟成个体的进化或觅食过程,用搜索空间 中的点
• 模拟自然界中的个体,将求解问题的目标函数度量成个体对环境的适应能力, 将个体的
• 优胜劣汰过程或觅食过程类比为搜索和优化过程中用好的可行解取代较差可 行解的迭
• 数决定整个算法的优化方向
• 到目前为止,利用蜜蜂的采集行为模型和群 智能特征设计的智能算法、智能优化算法 和人工系统已有十几种之多。
• 下面给出两个发展较成熟的基于蜜蜂采集 模型的智能优化算法,蜂群算法和人工蜂群 算法,并简述了收集到的其它一些算法。
• BA /ABC
• 蜂群算法是2005年由英国学者D T Pham提 出
结果影响很大。而在初始时如果能给蜂后 赋予较优的基因,也将大大加快算法的收 敛,提高系统的效能
蜂后选择雄蜂的过程
• 在蜂群繁殖过程中,蜂后的婚飞起着关键的作用 • 蜂后以一定的速率穿梭于空间中的不同区域,并
在各个区域内随机地与碰到的雄蜂交配。 • 在婚飞的开始时刻,给蜂后赋予一定量的能量和
速度,在能量消耗至接近于零或在受精囊装满时, 蜂后返回蜂巢。 • 总的来 • 说,算法由蜂后根据概率公式选择雄蜂开始,并 通过与雄蜂基因谱的交叉,产生 • 新的幼蜂(brood)。
• 该算法首先初始化蜜蜂群和评估这一群体的适 • 应度值,之后进行蜂群寻找最优解的迭代过程。迭代 • 过程中先选取一些较好的解,即食物源的位置(也是 • 蜜蜂当前所处的位置) 。然后,在这些较好解中选取 • 精英解,并分别对这些好解进行增援。精英解周围会 • 被指派更多的蜜蜂进行增援。增援的蜜蜂对这些较 • 好解的邻域进行了更加细致的搜索,有更大的可能性 • 得到一些更好的解。这种有分别的指派是该算法的 • 重要操作。每次迭代后最好的m个解被保留进入下 • 一次循环迭代。
• 这一算法需要设置几个参数:侦察蜂数量( n) 、
• 已访问地址当中被选中地址数(m) 、被选中地址 当中
• 最好地址数( e) 、访问最好e个地址的蜜蜂数 ( nep ) 、
• 访问其它(m2e)个地址的蜜蜂数( nsp ) 、花丛的 初始
• 大小( ngh) 。其中ngh值能给出地址的邻域,用以 进
最优适应值; • Step5:判断终止条件是否满足?如果满足,结束
迭代:否则,转Step3。
蜜蜂算法
• 蜂群算法(BCO,Bee Colony Optimization) 是受到自然界的蜜蜂行为启发而
• 提出的一种新颖的元启发式优化算法。根 据所受启发的生物机理的不同,蜂群算
• 法可分为两大类: • 基于蜜蜂繁殖机理的蜂群算法(BCO on
蜜蜂算法
现代设计技术 机自1005班
任永武
群体智能
• 自然界中的群居昆虫,如蚂蚁、蜜蜂、鱼群等, 个体结构都十分简单。 个体之问通过合作表现出来的行为能力却十分复 杂。
• 群居昆虫个体无智能,但通过合作从一定程度上 体现出较高的“智能”。 受社会性昆虫群体行为的启发,研究人员通过对 它们的模拟产生了一系列解决传统优化问题的新 方法,这些研究就是所谓的群体智能。
• 为在记忆中产生一个旧的位置的竞争食物位置, • ABC使用表达式(2) :
• vij = xij + <
• ij ( xij - xkj ) (2) • 这里,指数k随机选取,其中k∈{1, 2, ⋯,BN} , j • ∈{1, 2, ⋯,D}。尽管k被随机决定,它必须与i不 • 同。< • ij是[ 21, 1 ]间的随机数。它控制了xi 位置邻近 • 食物源的产生,这一修正代表了蜜蜂视觉上对邻近食 • 物源的比较,也即邻域搜索过程。
3对幼蜂群体的局部搜索
• 在局部搜索后的幼蜂种群中,选择适应度 最好的幼蜂作为候选蜂后,与蜂后
• 的适应度进行比较,若适应度大,则取代 蜂后;否则,保留原蜂后。
• 蜂王是优化过程中待求解问题的最优解
• 定义受精囊的大小M • 虢机地产生幼蜂.扶中选出最优的为蜂后 • 秘甬蜂后的选优策略优化蜂后豹基因型 • wh弛未达翔停止的限壹
• 群体智能指的是“简单智能的主体通过合作表现 出复杂智能行为的特性”。
• 特点:分布式控制、全局信息传播、非直接通讯 模式和自组织
突出了群体中个体之间通过协作而表现出复杂行 为的涌现现象。
为寻找复杂的分布式问题的解决方案提供了新的 思路。
群体智能算法
• 群体智能算法是模拟自然界生物的群体行为而构 造的随机优化算法。
• 量表示,其中第i个解可表示为xi = ( xi1 , xi2 , ⋯, xiD ) ,
• i = 1, 2, ⋯, SN,食物源花粉量对应解的质量 (适应度
• 值) 。
• 算法开始时,首先随机产生初始解的群体P (G = • 0) ,并评估其适应度值。初始化后,开始一个由专

• 工蜂、守望蜂和侦察蜂进行的对位置(解)进行改 进
• b)返回同一蜜源前,跳摇摆舞招募其他蜜 蜂,如图2中的EF1;
• c)不招募其他蜜蜂,继续返回同一蜜源采 蜜,如图2中的EF2
• 蜜蜂采蜜的过程 • (即寻找高质量的蜜源)类似于进化计算
中的搜索待求解问题最优解的过程。
• 在采蜜模型中,蜜源代表可能的解,采蜜 相当于搜索最优解,蜜源质量可视为适应 度函
• 成功应用于很多领域,如函数优化、神经网络训 练、寻找最优路径、调度问题、结构优化、机器 人学习、图像处理等。
群体智能算法统一框架模式
• Stepl:设置参数,初始化种群; • Step2:随机生成一组解,并计算其适应值; • Step3:按照某种更新规则,生成新的解; • Step4:通过比较得到个体的最优适应值和群体的
蜜源[]。如果这些采蜜蜂发现了花蜜超过某个阈值的蜜 源,则飞回蜂巢并用摇摆舞告知其他蜜蜂。摇摆舞是蜜蜂 之间交流信息的一种基本形式,它传达了有关蜂巢周围蜜 源的重要信息(如蜜源方向及离巢距离等) • [11,13],其他蜜蜂利用这些信息准确评价蜂巢周围的 蜜源质量 • 。当采蜜蜂跳完摇摆舞之后,就与巢中的一些同伴一起飞 回原先找到的蜜源采蜜。
及其位置
• 的信息。守望蜂评估来自所有专业工蜂的 花粉信息,
• 并以相关于花粉量的概率值选取食物源。
• 正如专业
• 工蜂的情形,守望蜂也在其记忆中产生一个 对于位置
• 的修正,并检测这一竞争位置的花粉量。假 如其花粉
• 量高于前一个,此蜜蜂记忆新位置,将旧的忘 却
• 一只人工守望蜂选取食物源依赖于一个相关于 • 食物源的概率值,由表达式(1)计算:pi = • fiti •Σ • SN • n=1 • fitn • (1) • 其中, fiti 为食物源位置的适应度值。
相关文档
最新文档