历要毛子代枝七” 人工蜂群算法 XIDIAN UNIVERSITY >蜜蜂种群行为描述 >人工蜂群算法 >群体智能产生机理研讨 2
蜜蜂种群行为描述 人工蜂群算法 群体智能产生机理研讨 人工蜂群算法 2
历些毛子代枝大学 蜜蜂种群行为描述 XIDIAN UNIVERSITY 群体智能 群体智能是具有社会性的生物,比如蜜蜂、蚂蚁、鱼群、鸟群等,或者其 它个体,通过相互作用、相互协同而成为一个群体所涌现出的智能。群体 智能是社会学领域长期研究的一个问题,目前也是人工智能领域研究的问 题。 群体智能研究方向 ◆群体智能产生的机理研究:萤火虫的同步闪亮,蝉的同步鸣叫 ◆模仿群体智能的行为:模仿鸟群的飞行,模仿鱼群的行为,模仿雁群的 编队方式。 ◆模仿群体智能的算法设计:通过模拟群体智能而解决复杂问题的优化算 法设计。 3
群体智能 群体智能是具有社会性的生物,比如蜜蜂、蚂蚁、鱼群、鸟群等,或者其 它个体,通过相互作用、相互协同而成为一个群体所涌现出的智能。群体 智能是社会学领域长期研究的一个问题,目前也是人工智能领域研究的问 题。 群体智能研究方向 群体智能产生的机理研究:萤火虫的同步闪亮,蝉的同步鸣叫 模仿群体智能的行为:模仿鸟群的飞行,模仿鱼群的行为,模仿雁群的 编队方式。 模仿群体智能的算法设计:通过模拟群体智能而解决复杂问题的优化算 法设计。 蜜蜂种群行为描述 3
面些毛子种技大皇 蜜蜂种群行为描述 XIDIAN UNIVERSITY 1. 蜂群的群体智能 蜜蜂种群属于群体智能的一种,其个体行为极其简单,但其个体之间 通过相互协作能表现出宏观智能的行为特征,它不是简单的个体集合,而 是一种超越个体行为的更高级的表现。蜜蜂种群能够在任何环境下,以极 高的效率从食物源(花朵)中采集花蜜,同时它们还能适应环境的改变。 2.蜜蜂分类及职责 分类:蜜蜂分为雇佣蜂(引领蜂)和非雇佣蜂,非雇佣蜂又分为侦查 蜂和跟随蜂 职责: ①雇佣蜂:也称为引领蜂,其与所采集的食物源一一对应。引领蜂储存 有某一个食物源的相关信息(相对于蜂巢的距离、方向、食物源的丰富 程度等)并且将这些信息以一定的概率与其他蜜蜂分享。 ②非雇佣蜂:又分为侦查蜂、跟随蜂。侦查蜂探测蜂巢周围的新蜜源, 而跟随峰在蜂巢等待并通过与引领蜂分享相关信息找到食物源
1. 蜂群的群体智能 蜜蜂种群属于群体智能的一种,其个体行为极其简单,但其个体之间 通过相互协作能表现出宏观智能的行为特征,它不是简单的个体集合,而 是一种超越个体行为的更高级的表现。蜜蜂种群能够在任何环境下,以极 高的效率从食物源(花朵)中采集花蜜,同时它们还能适应环境的改变。 2 . 蜜蜂分类及职责 分类:蜜蜂分为雇佣蜂(引领蜂)和非雇佣蜂,非雇佣蜂又分为侦查 蜂和跟随蜂 职责: • ①雇佣蜂:也称为引领蜂,其与所采集的食物源一一对应。引领蜂储存 有某一个食物源的相关信息(相对于蜂巢的距离、方向、食物源的丰富 程度等)并且将这些信息以一定的概率与其他蜜蜂分享。 • ②非雇佣蜂:又分为侦查蜂、跟随蜂。侦查蜂探测蜂巢周围的新蜜源, 而跟随峰在蜂巢等待并通过与引领蜂分享相关信息找到食物源。 蜜蜂种群行为描述 4
要毛子代枚大多 蜜蜂种群行为描述 XIDIAN UNIVERSITY 3. 信息交换 通过跳摇摆舞的形式进行信息的交流,它传达了有关蜂巢 周围蜜源的重要信息。 4. 采蜜过程 蜜粉采蜜时,蜂巢中的一部分蜜蜂作为侦查蜂,不断随 机地在蜂巢附近寻找蜜源,如果发现了花蜜量超过某个阈值 的蜜源,则此侦查蜂变为雇佣蜂开始采蜜,采蜜后飞回蜂巢 ,此时该雇佣蜂有三种选择: ①放弃食物源成为非雇佣蜂; ②跳摇摆舞将食物源的信息与跟随蜂交流,并招募一些跟随 蜂一起返回原食物源采蜜,跟随蜂数量取决于蜜源质量; ③继续在同一个食物源采蜜而不进行招募。 通过该方式,蜂群能快速且有效地找到花蜜量最高的蜜源。5
3. 信息交换 通过跳摇摆舞的形式进行信息的交流,它传达了有关蜂巢 周围蜜源的重要信息。 4. 采蜜过程 蜜粉采蜜时,蜂巢中的一部分蜜蜂作为侦查蜂,不断随 机地在蜂巢附近寻找蜜源,如果发现了花蜜量超过某个阈值 的蜜源,则此侦查蜂变为雇佣蜂开始采蜜,采蜜后飞回蜂巢 ,此时该雇佣蜂有三种选择: ①放弃食物源成为非雇佣蜂; ②跳摇摆舞将食物源的信息与跟随蜂交流,并招募一些跟随 蜂一起返回原食物源采蜜,跟随蜂数量取决于蜜源质量; ③继续在同一个食物源采蜜而不进行招募。 通过该方式,蜂群能快速且有效地找到花蜜量最高的蜜源。 蜜蜂种群行为描述 5
历安毛子代枚七等 人工蜂群算法 XIDIAN UNIVERSITY 人工蜂群算法概述 人工蜂群算法(artificial bee colony algorithm,ABC算法 )是一种模拟实际蜜蜂的采蜜机制的算法。 由三部分组成:食物源、雇佣蜂和非雇佣蜂,其中整个蜂 群的目标是寻找花蜜量最大的蜜源(即食物源)。 ①食物源:蜜源,一个食物源就是一个解向量,蜜源的优 劣程度即为可行解的好坏程度。 ②雇佣蜂:雇佣蜂(引领蜂)与食物源的位置相对应,一 个食物源对应一个引领蜂。在ABC算法中,食物源的个数 与引领蜂的个数相等。其任务是发现食物源信息,并根据食 物源的优劣程度(适应值的大小)采用轮盘赌的方式雇佣跟 随蜂采蜜(搜索最优解)。 6
1 人工蜂群算法概述 • 人工蜂群算法(artificial bee colony algorithm,ABC算法 )是一种模拟实际蜜蜂的采蜜机制的算法。 • 由三部分组成:食物源、雇佣蜂和非雇佣蜂,其中整个蜂 群的目标是寻找花蜜量最大的蜜源(即食物源)。 ①食物源:蜜源,一个食物源就是一个解向量,蜜源的优 劣程度即为可行解的好坏程度。 ②雇佣蜂:雇佣蜂(引领蜂)与食物源的位置相对应,一 个食物源对应一个引领蜂。在ABC算法中,食物源的个数 与引领蜂的个数相等。其任务是发现食物源信息,并根据食 物源的优劣程度(适应值的大小)采用轮盘赌的方式雇佣跟 随蜂采蜜(搜索最优解)。 人工蜂群算法 6
历安毛子代枚大” 人工蜂群算法 XIDIAN UNIVERSITY 1 人工蜂群算法概述 人工蜂群算法(artificial bee colony algorithm,ABC算法 )是一种模拟实际蜜蜂的采蜜机制的算法。 由三部分组成:食物源、雇佣蜂和非雇佣蜂,其中整个蜂 群的目标是寻找花蜜量最大的蜜源(即食物源)。 ①食物源: ②雇佣蜂: ③非雇佣蜂:包括侦查蜂、跟随蜂。侦查蜂是在蜂巢附近 寻找新的食物源,跟随蜂在蜂巢的招募区内根据引领蜂提供 的蜜源信息来选择食物源。若一个食物源多次更新没有改进 ,则放弃该食物源,此食物源对应的引领蜂变成侦查蜂,随 机搜索新的食物源
1 人工蜂群算法概述 • 人工蜂群算法(artificial bee colony algorithm,ABC算法 )是一种模拟实际蜜蜂的采蜜机制的算法。 • 由三部分组成:食物源、雇佣蜂和非雇佣蜂,其中整个蜂 群的目标是寻找花蜜量最大的蜜源(即食物源)。 ①食物源: ②雇佣蜂: ③非雇佣蜂:包括侦査蜂、跟随蜂。侦查蜂是在蜂巢附近 寻找新的食物源,跟随蜂在蜂巢的招募区内根据引领蜂提供 的蜜源信息来选择食物源。若一个食物源多次更新没有改进 ,则放弃该食物源,此食物源对应的引领蜂变成侦査蜂,随 机搜索新的食物源。 人工蜂群算法 7
面些毛子种技大皇 人工蜂群算法 XIDIAN UNIVERSITY 人工蜂群算法原理 2 (1)食物源初始化 食物源,=1.N,的质量对应于解的适应度,N为食物源的 个数。设求解问题的维数为D,在第次迭代食物源的位置 表示为: X=[xX22.X] 其中,xa∈(L4,U),Ld和Ua分别代表搜索空间的下限。食物 源的初始位置按照(2-1)式在搜索空间随机产生: xid La +rand(0,1)(Ua-La), (2-1) 8
2 人工蜂群算法原理 (1)食物源初始化 食物源 i, i=1. .N, 的质量对应于解的适应度, N为食物源的 个数。设求解问题的维数为 D,在第t次迭代食物源i的位置 表示为: 其中, , Ld和Ud分别代表搜索空间的下限。食物 源i的初始位置按照(2-1)式在搜索空间随机产生: (2-1) 人工蜂群算法 8 1 2 [ , ,. ] t t t t X x x x i i i iD ( , ) id d d x L U (0,1)( ), id d Ud Ld x L rand
历要毛子代枝大学 人工蜂群算法 XIDIAN UNIVERSITY 人工蜂群算法原理 2 (2)食物源的更新 在开始搜索阶段,引领蜂在食物源的周围根据(2-2)式搜索 一个新的食物源。 Vid=xid +p(id-xid), (2-2) 其中是N个食物源不同于的任意一个食物源,p是一个在 [1,1]均匀分布的随机数,决定扰动程度。当新食物源的适 应度优于X时,用新的食物源代替原来的食物源,否则保 留原来食物源。所有引领蜂完成2-2式的运算后,飞回蜂巢 跳摇摆舞招募跟随蜂。 9
2 人工蜂群算法原理 (2)食物源的更新 在开始搜索阶段,引领蜂在食物源i的周围根据(2-2)式搜索 一个新的食物源。 (2-2) 其中j是 N个食物源不同于i的任意一个食物源, 是一个在 [-1,1]均匀分布的随机数,决定扰动程度。当新食物源的适 应度优于Xi 时,用新的食物源代替原来的食物源,否则保 留原来食物源 。所有引领蜂完成2-2式的运算后,飞回蜂巢 跳摇摆舞招募跟随蜂。 人工蜂群算法 9 ( ), id id id jd v x x x
面些毛子种技大皇 人工蜂群算法 XIDIAN UNIVERSITY 人工蜂群算法原理 2 (3)跟随蜂选择引领蜂的概率 跟随蜂根据引领蜂跳的摇摆舞(即分享的食物源信息),按 照2-3式计算概率并进行跟随。 p,=f/∑f (2-3) 然后在区间-1,11内随机产生一个数,如果解的概率值大于 该随机数,则跟随蜂由式(2-1)产生一个新解,并检验新解 的fti,若新解的ft比之前好,则跟随蜂将记住新解忘掉旧 解;反之,它将保留旧解。 10
2 人工蜂群算法原理 (3)跟随蜂选择引领蜂的概率 跟随蜂根据引领蜂跳的摇摆舞(即分享的食物源信息),按 照2-3式计算概率并进行跟随。 (2-3) 然后在区间[-1,1]内随机产生一个数,如果解的概率值大于 该随机数,则跟随蜂由式(2-1)产生一个新解,并检验新解 的fiti,若新解的fiti比之前好,则跟随蜂将记住新解忘掉旧 解;反之,它将保留旧解。 人工蜂群算法 10 1 / N i i i i p fit fit
历柴毛子代枝大学 人工蜂群算法 XIDIAN UNIVERSITY 人工蜂群算法原理 2 (4)解适宜度值的计算 所求解优化问题的目标函数记为,日标函数有可能越大越好 ,也可能越小越好。 若优化问题是目标函数越大越好,适应度值即用目标函数。 fiti-f 若优化问题是目标函数值越小越好,适应度函数一般用式(2 4)计算。 1/1+f), f≥0 fit, 1+abs(f), otherwise (2-4) 其中,absO函数是绝对值函数。 11
2 人工蜂群算法原理 (4)解适宜度值的计算 所求解优化问题的目标函数记为fi,目标函数有可能越大越好 ,也可能越小越好。 若优化问题是目标函数越大越好,适应度值即用目标函数。 fiti =fi 若优化问题是目标函数值越小越好,适应度函数一般用式(2- 4)计算。 (2-4) 其中,abs()函数是绝对值函数。 人工蜂群算法 11 abs f otherwise f f fit i i i i 1 ( ), 1 (1 ), 0