群体智能

群体智能

1.概念:

群体智能是指在集体层面表现的分散的,去中心化的自组织的行为。

比如蚁群,封群构成的复杂的社会系统,鸟群,鱼群等

群体智能不是简单的多个体的集合,而是超越个体行为的一种更高级表现,这种从个体行为到群体行为的演变过程往往极其复杂,以至于无法预测

新一代人工智能发展规划 了四个方面的研究任务 :

  1. 群体智能激励机制与涌现机理
  2. 群体智能的结构理论与组织方法
  3. 群体智能通用计算范式与模型
  4. 群体智能学习理论与方法

蚂蚁寻食过程:

每只蚂蚁只遵循两条基本的规则:

  • 寻找到食物的蚂蚁会在更高品质的路线上留下更强的生物信息素
  • 蚂蚁总是倾向加入信息素更强的路线,并在不断的往返过程中与其他蚂蚁进行反馈,从而让更短的路线被不断加强

使用樟脑丸在蚂蚁经过的路线上涂抹会导致蚂蚁迷路,干扰了蚂蚁对信息素的识别。

科学家们从蚁群依赖信息获取最优路径的方法上获得启发,创建了AOC算法(Ant colony optimization),即蚁群优化算法,广泛应用于车辆、店铺、人员等各种资源的调度和分配中。

鱼群算法:把一直鱼分离出来,这只鱼就会变得情绪激动,紧张,群体游行不仅可以更有效利用水动力减少成员个体消耗,而且更有利于觅食和生殖,以及躲避捕食者的猎杀。

鱼群中的绝大多数成员都不知道自己正在游向哪里。鱼群使用共识决策机制,个体的决策会不断地参照周边个体的行为进行调整,从而形成集体方向。

蜂群算法

最优化算法:求解问题的最优解

启发式算法:基于直观或经验构造的算法。

模仿蜜蜂行为提出的优化算法。

不需要了解问题的特殊信息,只需要对问题进行优劣的比较,通过各人工蜂群个体的局部寻优行为,最终在群体中使全局最优值凸显出来。

蜂群转换

人工蜂群算法:模拟蜂蜜采蜜过程

食物源,雇佣蜂,非雇佣蜂三部分组成。

食物源的好坏是用蜜源花蜜量的大小衡量。

术语介绍

蜜源:蜂群算法需要求解的基本对象

蜜蜂采蜜行为 具体问题
蜜源位置 具体问题的可行解
蜜源的丰富程度 可行解的质量
寻找和采集蜜源的速度 求解的速度
最大适应度的蜜源 问题的最优解

雇佣蜂(引领蜂):与食物源的位置相对应(有多少个蜜源就有多少个引领蜂)。引领蜂有记忆功能,将自己搜索到的蜜源进行信息存储,引领蜂的任务是发现食物源信息并以一定的概率与跟随蜂分享。食物源枯竭之后转变为侦查蜂。

非雇佣蜂:包括跟随蜂,侦查蜂。跟随蜂在蜂巢的招募区内根据引领蜂提供的蜜蜂源信息来选择食物源,

侦查蜂:找不到新的蜜源,自己去找

跟随蜂:跟随引领蜂,跟随蜂的数量=引领蜂的数量,也可能在引领蜂周围找,在邻域内寻找解

跟随蜂根据引领蜂传递的信息,在食物源附近搜索新的食物源,并进行贪婪选择。若一个食物源在经过数次后仍然为更新,则引领蜂变成侦查蜂。侦查蜂寻找新的食物源来代替原拉的食物源。

采蜜机制

蜜蜂之间的信息交流环节。舞蹈区是蜂巢中最重要的信息交换地。

采蜜蜂在舞蹈区通过跳舞与其他蜜蜂共享食物信息,

观察蜂通过采蜜蜂跳的舞来获得食物源信息,进行比较来选择到哪个食物源采蜜。因此,蜜蜂被招募到某个食物源的概率与食物源的受益率成正比。

蜜蜂采蜜过程

初始时刻,蜜蜂以侦查蜂身份进行搜索,搜索根据自己的先验知识决定,也可以完全随机的搜索。

蜜蜂有两种选择”

  1. 变成侦查蜂,由于一些内部动机,或可能的外部环境自发的在蜂巢附近寻找食物源。
  2. 或者受之前的舞蹈影响,被招募到某个食物源,变成跟随蜂,开始采集食物。

侦查完一轮之后,若找到食物源,蜜蜂利用自己本身的存储能力记录位置信息,开始采蜜。此时蜜蜂称为“引领蜂”,蜜蜂采蜜完之后,回到蜂巢有以下选择:

  1. 放弃食物源成为非雇佣蜂。
  2. 跳舞为对应的食物源招募更多的蜜蜂,然后回到食物源采蜜。
  3. 继续在同一个食物源采蜜而不进行招募。

非雇佣蜂(侦查蜂,跟随蜂)有以下的选择:

  1. 转变成侦查蜂搜索蜂巢附近的食物源
  2. 在观察蜂跳完舞之后成为跟随蜂,开始搜索对应食物源领域,并进行采蜜。

蜜蜂在采蜜时表现出的基本性质:

  • 正反馈性:食物源的花蜜量与食物源被选择的可能性成正比。
  • 负反馈性:蜜蜂停止对较差食物源的开采过程。
  • 波动性:在某个食物源被放弃时,随机搜索一个食物源代替原食物源。
  • 互动性:蜜蜂在舞蹈区与其他蜜蜂共享食物源的相关信息。

其目标是为了寻找最大的食物源

采蜜蜂利用蜜源信息寻找新的蜜源,与观察蜂分享蜜源信息,观察蜂在蜂房中等待并依据采蜜蜂分享的信息寻找新的蜜源,侦查蜂的任务是寻找一个新的有价值的蜜源,在蜂房附近随机的寻找蜜源。

如果蜜源多次更新没有改进(蜜源有开采的次数),则放弃该蜜源,,雇佣蜂转变为侦查蜂进行随机搜索新蜜源。转变为采蜜蜂。

img

​ 图 转换过程

鱼群算法

定义

在一片水域中,鱼往往能自行或尾随其他鱼找到营养物质多的地方,因而鱼生存数目最多的地方一般就是这片水域中营养物质最丰富的地方。

典型行为:

  1. 觅食行为:一般情况下,鱼在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。
  2. 聚群行为:鱼在游动的过程中会为了保证自身的生存和躲避危害会自然的聚集成群。鱼群聚集成群时有三条规则:
    1. 分隔规则:尽量避免与邻近伙伴过于拥挤;
    2. 对准规则:尽量与邻近伙伴的平均方向一致;
    3. 内聚规则:尽量朝邻近伙伴的中心移动。
  3. 追尾行为:当鱼群中的一条或几条鱼发现食物时,其邻近的伙伴会尾随其快速到达食物点。
  4. 随机行为:单独的鱼在水中通常都是随机移动,这是为了更大范围地寻找食物或身边的伙伴。

算法具体过程

1.人工鱼群算法实现步骤:

与其他算法区别

ABC算法独有的角色转换。

蜂群算法中观察蜂才是解,粒子群中所有粒子都是可行解。

粒子群算法与蚁群算法区别:

粒子群所有粒子都是解空间中的可行解,蚁群算法的解是所有蚂蚁走过之后的解。

猜你喜欢

转载自blog.csdn.net/gubeiqing/article/details/116665436